Results 1 
9 of
9
Syntax and Semantics of Dependent Types
 Semantics and Logics of Computation
, 1997
"... ion is written as [x: oe]M instead of x: oe:M and application is written M(N) instead of App [x:oe] (M; N ). 1 Iterated abstractions and applications are written [x 1 : oe 1 ; : : : ; x n : oe n ]M and M(N 1 ; : : : ; N n ), respectively. The lacking type information can be inferred. The universe ..."
Abstract

Cited by 40 (4 self)
 Add to MetaCart
ion is written as [x: oe]M instead of x: oe:M and application is written M(N) instead of App [x:oe] (M; N ). 1 Iterated abstractions and applications are written [x 1 : oe 1 ; : : : ; x n : oe n ]M and M(N 1 ; : : : ; N n ), respectively. The lacking type information can be inferred. The universe is written Set instead of U . The Eloperator is omitted. For example the \Pitype is described by the following constant and equality declarations (understood in every valid context): ` \Pi : (oe: Set; : (oe)Set)Set ` App : (oe: Set; : (oe)Set; m: \Pi(oe; ); n: oe) (m) ` : (oe: Set; : (oe)Set; m: (x: oe) (x))\Pi(oe; ) oe: Set; : (oe)Set; m: (x: oe) (x); n: oe ` App(oe; ; (oe; ; m); n) = m(n) Notice, how terms with free variables are represented as framework abstractions (in the type of ) and how substitution is represented as framework application (in the type of App and in the equation). In this way the burden of dealing correctly with variables, substitution, and binding is s...
The structure of nuprl’s type theory
, 1997
"... on the World Wide Web (\the Web") (www.cs.cornell.edu/Info/NuPrl/nuprl.html) ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
on the World Wide Web (\the Web") (www.cs.cornell.edu/Info/NuPrl/nuprl.html)
Encoding Natural Semantics in Coq
 In Proc. AMAST, LNCS 936
, 1995
"... . We address here the problem of automatically translating the Natural Semantics of programming languages to Coq, in order to prove formally general properties of languages. Natural Semantics [18] is a formalism for specifying semantics of programming languages inspired by Plotkin's Structural Opera ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
. We address here the problem of automatically translating the Natural Semantics of programming languages to Coq, in order to prove formally general properties of languages. Natural Semantics [18] is a formalism for specifying semantics of programming languages inspired by Plotkin's Structural Operational Semantics [22]. The Coq proof development system [12], based on the Calculus of Constructions extended with inductive types (CCind), provides mechanized support including tactics for building goaldirected proofs. Our representation of a language in Coq is inAEuenced by the encoding of logics used by Church [6] and in the Edinburgh Logical Framework (ELF) [15, 3]. 1 Introduction The motivation for our work is the need for an environment to help develop proofs in Natural Semantics. The interactive programming environment generator Centaur [17] allows us to compile a Natural Semantics speciøcation of a given language into executable code (typecheckers, evaluators, compilers, program t...
The Calculus of Constructions as a Framework for Proof Search with Set Variable Instantiation
, 2000
"... ..."
Proof Search with Set Variable Instantiation in the Calculus of Constructions
 Automated Deduction: CADE13, volume 1104 of Lecture Notes in Arti Intelligence
, 1996
"... . We show how a procedure developed by Bledsoe for automatically finding substitution instances for set variables in higherorder logic can be adapted to provide increased automation in proof search in the Calculus of Constructions (CC). Bledsoe's procedure operates on an extension of firstorder lo ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
. We show how a procedure developed by Bledsoe for automatically finding substitution instances for set variables in higherorder logic can be adapted to provide increased automation in proof search in the Calculus of Constructions (CC). Bledsoe's procedure operates on an extension of firstorder logic that allows existential quantification over set variables. The method finds maximal solutions for this special class of higherorder variables. This class of variables can also be identified in CC. The existence of a correspondence between higherorder logic and higherorder type theories such as CC is wellknown. CC can be viewed as an extension of higherorder logic where the basic terms of the language, the simplytyped terms, are replaced with terms containing dependent types. We adapt Bledsoe's procedure to the corresponding class of variables in CC and extend it to handle terms with dependent types. 1 Introduction Both higherorder logic and higherorder type theories serve as th...
A meta language for type checking and inference: An extended abstract
 Presented at the 1989 Workshop on Programming Logic
, 1989
"... We present a logic, Lλ, in which terms are the simply typed λterms and very restricted, secondorder quantification of functional variables is allowed. This logic can be used to directly encode the basic type judgments of a wide variety of typed λcalculi. Judgments such as “term M is of type A ” a ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
We present a logic, Lλ, in which terms are the simply typed λterms and very restricted, secondorder quantification of functional variables is allowed. This logic can be used to directly encode the basic type judgments of a wide variety of typed λcalculi. Judgments such as “term M is of type A ” and “M is a proof of formula A ” are represented by atomic propositions in Lλ while inference rules and axioms for such type judgments become simple quantified formulas. Theorem proving in Lλ can be described simply since the necessary unification of λterms is decidable and if unifiers exist, most general unifiers exist. Standard logic programming techniques can turn the specification of inference rules and axioms in Lλ into implementations of type checkers and inferrers. Several different typed λcalculi have been specified in Lλ and these specifications have been directly executed by a higherorder logic programming language. We illustrate such encoding into Lλ by presenting type checkers and inferrers for the simply typed λcalculus and the calculus of constructions.
Independence of the Computation Rule for SLDResolution with Delay
, 1993
"... For SLD resolution with delay we study the notion of floundering. A particular consequence of our main result is that the existence of a floundering does not depend on the computation rule. This particular result is very similar to already known results concerning concurrent logic programs. But o ..."
Abstract
 Add to MetaCart
For SLD resolution with delay we study the notion of floundering. A particular consequence of our main result is that the existence of a floundering does not depend on the computation rule. This particular result is very similar to already known results concerning concurrent logic programs. But our main result is an extension, for SLD resolution with delay, of the well known Independence of the Computation Rule : We prove that, given a definite program and a goal, two SLDtrees have, in some sense, the same success leaves and the same floundering leaves. We give a very accurate explanation of this independence in terms of proof trees. In particular the floundering leaves are associated with partial proof trees which are intrinsically defined by the program and the goal and do not depend on the computation rule. In order to express and to prove our result we first prove an independence result for systems of equations. Keywords : Definite Program, SLDResolution, Delay, Flound...