Results 1  10
of
20
Proofassistants using Dependent Type Systems
, 2001
"... this article we will not attempt to describe all the dierent possible choices of type theories. Instead we want to discuss the main underlying ideas, with a special focus on the use of type theory as the formalism for the description of theories including proofs ..."
Abstract

Cited by 47 (4 self)
 Add to MetaCart
this article we will not attempt to describe all the dierent possible choices of type theories. Instead we want to discuss the main underlying ideas, with a special focus on the use of type theory as the formalism for the description of theories including proofs
Embedding pure type systems in the lambdaPicalculus modulo
 TLCA
, 2007
"... The lambdaPicalculus allows to express proofs of minimal predicate logic. It can be extended, in a very simple way, by adding computation rules. This leads to the lambdaPicalculus modulo. We show in this paper that this simple extension is surprisingly expressive and, in particular, that all fu ..."
Abstract

Cited by 19 (5 self)
 Add to MetaCart
The lambdaPicalculus allows to express proofs of minimal predicate logic. It can be extended, in a very simple way, by adding computation rules. This leads to the lambdaPicalculus modulo. We show in this paper that this simple extension is surprisingly expressive and, in particular, that all functional Pure Type Systems, such as the system F, or the Calculus of Constructions, can be embedded in it. And, moreover, that this embedding is conservative under termination hypothesis.
Pure Type Systems in Rewriting Logic
 In Proc. of LFM’99: Workshop on Logical Frameworks and MetaLanguages
, 1999
"... . The logical and operational aspects of rewriting logic as a logical framework are illustrated in detail by representing pure type systems as object logics. More precisely, we apply membership equational logic, the equational sublogic of rewriting logic, to specify pure type systems as they can be ..."
Abstract

Cited by 10 (2 self)
 Add to MetaCart
. The logical and operational aspects of rewriting logic as a logical framework are illustrated in detail by representing pure type systems as object logics. More precisely, we apply membership equational logic, the equational sublogic of rewriting logic, to specify pure type systems as they can be found in the literature and also a new variant of pure type systems with explicit names that solves the problems with closure under conversion in a very satisfactory way. Furthermore, we use rewriting logic itself to give a formal operational description of type checking, that directly serves as an ecient type checking algorithm. The work reported here is part of a more ambitious project concerned with the development in Maude [7] of a proof assistant for OCC, the open calculus of constructions, an equational extension of the calculus of constructions. 1 Introduction This paper is a detailed case study on the ease and naturalness with which a family of higherorder formal systems, namely...
The Open Calculus of Constructions: An Equational Type Theory with Dependent Types for Programming, Specification, and Interactive Theorem Proving
"... The open calculus of constructions integrates key features of MartinLöf's type theory, the calculus of constructions, Membership Equational Logic, and Rewriting Logic into a single uniform language. The two key ingredients are dependent function types and conditional rewriting modulo equational t ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
The open calculus of constructions integrates key features of MartinLöf's type theory, the calculus of constructions, Membership Equational Logic, and Rewriting Logic into a single uniform language. The two key ingredients are dependent function types and conditional rewriting modulo equational theories. We explore the open calculus of constructions as a uniform framework for programming, specification and interactive verification in an equational higherorder style. By having equational logic and rewriting logic as executable sublogics we preserve the advantages of a firstorder semantic and logical framework and especially target applications involving symbolic computation and symbolic execution of nondeterministic and concurrent systems.
Typed selfrepresentation
 IN PLDI
, 2009
"... Selfrepresentation – the ability to represent programs in their own language – has important applications in reflective languages and many other domains of programming language design. Although approaches to designing typed program representations for sublanguages of some base language have become ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Selfrepresentation – the ability to represent programs in their own language – has important applications in reflective languages and many other domains of programming language design. Although approaches to designing typed program representations for sublanguages of some base language have become quite popular recently, the question whether a fully metacircular typed selfrepresentation is possible is still open. This paper makes a big step towards this aim by defining the F ∗ ω calculus, an extension of the higherorder polymorphic lambda calculus Fω that allows typed selfrepresentations. While the usability of these representations for metaprogramming is still limited, we believe that our approach makes a significant step towards a new generation of reflective languages that are both safe and efficient.
Canonical typing and Πconversion in the Barendregt Cube
, 1996
"... In this article, we extend the Barendregt Cube with \Piconversion (which is the analogue of betaconversion, on product type level) and study its properties. We use this extension to separate the problem of whether a term is typable from the problem of what is the type of a term. ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
In this article, we extend the Barendregt Cube with \Piconversion (which is the analogue of betaconversion, on product type level) and study its properties. We use this extension to separate the problem of whether a term is typable from the problem of what is the type of a term.
Safe proof checking in type theory with Y
 IN CSL
, 1999
"... We present an extension of type theory with a fixed point combinator Y. We are particularly interested in using this Y for doing unbounded proof search in the proof system. Therefore we treat in some detail a typed λcalculus for higher order predicate logic with inductive types (a reasonable subsy ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
We present an extension of type theory with a fixed point combinator Y. We are particularly interested in using this Y for doing unbounded proof search in the proof system. Therefore we treat in some detail a typed λcalculus for higher order predicate logic with inductive types (a reasonable subsystem of the theory implemented in [Dowek e.a. 1991]) and show how bounded proof search can be done in this system, and how unbounded proof search can be done if we add Y. Of course, proof search can also be implemented (as a tactic) in the meta language. This may give faster results, but asks from the user to be able to program the implementation. In our approach the user works completely in the proof system itself. We also provide the meta theory of type theory with Y that allows to use the fixed point combinator in a safe way. Most importantly, we prove a kind of conservativity result, showing that, if we can generate a proof term M of formula ' in the extended system, and M does not contain Y, then M is already a proof of ' in the original system.
Pure type systems in rewriting logic: Specifying typed higherorder languages in a firstorder logical framework
 In Essays in Memory of OleJohan Dahl, volume 2635 of LNCS
, 2004
"... ..."
Typechecking Injective Pure Type Systems
, 1993
"... Injective Pure Type Systems form a large class of Pure Type Systems for which one can compute by purely syntactic means two sorts elmt(\GammajM ) and sort(\GammajM ), where \Gamma is a pseudocontext and M is a pseudoterm, and such that for every sort s, \Gamma ` M : A \Gamma ` A : s ) elmt(\Gamm ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
Injective Pure Type Systems form a large class of Pure Type Systems for which one can compute by purely syntactic means two sorts elmt(\GammajM ) and sort(\GammajM ), where \Gamma is a pseudocontext and M is a pseudoterm, and such that for every sort s, \Gamma ` M : A \Gamma ` A : s ) elmt(\GammajM ) = s \Gamma ` M : s ) sort(\GammajM ) = s By eliminating the problematic clause in the (abstraction) rule in favor of constraints over elmt(:j:) and sort(:j:), we provide a sound and complete typechecking algorithm for injective Pure Type Systems. In addition, we prove Expansion Postponement for a variant of injective Pure Type Systems where the problematic clause in the (abstraction) rule is replaced in favor of constraints over elmt(:j:) and sort(:j:). 1
A Correspondence between MartinLöf Type Theory, the Ramified Theory of Types and Pure Type Systems
 Journal of Logic, Language and Information
, 2001
"... In Russell's Ramified Theory of Types rtt, two hierarchical concepts dominate: orders and types. The use of orders has as a consequence that the logic part of rtt is predicative. The concept of order however, is almost dead since Ramsey eliminated it from rtt. This is why we find Church's simple the ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
In Russell's Ramified Theory of Types rtt, two hierarchical concepts dominate: orders and types. The use of orders has as a consequence that the logic part of rtt is predicative. The concept of order however, is almost dead since Ramsey eliminated it from rtt. This is why we find Church's simple theory of types (which uses the type concept without the order one) at the bottom of the Barendregt Cube rather than rtt. Despite the disappearance of orders which have a strong correlation with predicativity, predicative logic still plays an influential role in Computer Science. An important example is the proof checker Nuprl, which is based on MartinLöf's Type Theory which uses type universes. Those type universes, and also degrees of expressions in Automath, are closely related to orders. In this paper, we show that orders have not disappeared from modern logic and computer science, rather, orders play a crucial role in understanding the hierarchy of modern systems. In order to achieve our goal, we concentrate on a subsystem of Nuprl. The novelty of our paper lies in: 1) a modest revival of Russell's orders, 1 2) the placing of the historical system rtt underlying the famous Principia Mathematica in a context with a modern system of computer mathematics (Nuprl) and modern type theories (MartinLöf's type theory and PTSs), and 3) the presentation of a complex type system (Nuprl) as a simple and compact PTS.