Results 1 -
7 of
7
A Linear Logical Framework
, 1996
"... We present the linear type theory LLF as the forAppeared in the proceedings of the Eleventh Annual IEEE Symposium on Logic in Computer Science --- LICS'96 (E. Clarke editor), pp. 264--275, New Brunswick, NJ, July 27--30 1996. mal basis for a conservative extension of the LF logical framework. LLF c ..."
Abstract
-
Cited by 203 (44 self)
- Add to MetaCart
We present the linear type theory LLF as the forAppeared in the proceedings of the Eleventh Annual IEEE Symposium on Logic in Computer Science --- LICS'96 (E. Clarke editor), pp. 264--275, New Brunswick, NJ, July 27--30 1996. mal basis for a conservative extension of the LF logical framework. LLF combines the expressive power of dependent types with linear logic to permit the natural and concise representation of a whole new class of deductive systems, namely those dealing with state. As an example we encode a version of Mini-ML with references including its type system, its operational semantics, and a proof of type preservation. Another example is the encoding of a sequent calculus for classical linear logic and its cut elimination theorem. LLF can also be given an operational interpretation as a logic programming language under which the representations above can be used for type inference, evaluation and cut-elimination. 1 Introduction A logical framework is a formal system desig...
Dependently Typed Functional Programs and their Proofs
, 1999
"... Research in dependent type theories [M-L71a] has, in the past, concentrated on its use in the presentation of theorems and theorem-proving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs ..."
Abstract
-
Cited by 61 (13 self)
- Add to MetaCart
Research in dependent type theories [M-L71a] has, in the past, concentrated on its use in the presentation of theorems and theorem-proving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs may readily be specified and established. In particular, it develops technology for programming with dependent inductive families of datatypes and proving those programs correct. It demonstrates the considerable advantage to be gained by indexing data structures with pertinent characteristic information whose soundness is ensured by typechecking, rather than human effort. Type theory traditionally presents safe and terminating computation on inductive datatypes by means of elimination rules which serve as induction principles and, via their associated reduction behaviour, recursion operators [Dyb91]. In the programming language arena, these appear somewhat cumbersome and give rise to unappealing code, complicated by the inevitable interaction between case analysis on dependent types and equational reasoning on their indices which must appear explicitly in the terms. Thierry Coquand’s proposal [Coq92] to equip type theory directly with the kind of
A Calculus of Substitutions for Incomplete-Proof Representation in Type Theory
, 1997
"... : In the framework of intuitionnistic logic and type theory, the concepts of "propositions" and "types" are identified. This principle is known as the Curry-Howard isomorphism, and it is at the base of mathematical formalisms where proofs are represented as typed lambda-terms. In order to see the pr ..."
Abstract
-
Cited by 14 (1 self)
- Add to MetaCart
: In the framework of intuitionnistic logic and type theory, the concepts of "propositions" and "types" are identified. This principle is known as the Curry-Howard isomorphism, and it is at the base of mathematical formalisms where proofs are represented as typed lambda-terms. In order to see the process of proof construction as an incremental process of term construction, it is necessary to extend the lambda-calculus with new operators. First, we consider typed meta-variables to represent the parts of a proof that are under construction, and second, we make explicit the substitution mechanism in order to deal with capture of variables that are bound in terms containing meta-variables. Unfortunately, the theory of explicit substitution calculi with typed meta-variables is more complex than that of lambda-calculus. And worse, in general they do not share the same properties, notably with respect to confluence and strong normalization. A contribution of this thesis is to show that the pr...
Equivalences between Logics and their Representing Type Theories
, 1992
"... We propose a new framework for representing logics, called LF + and based on the Edinburgh Logical Framework. The new framework allows us to give, apparently for the first time, general definitions which capture how well a logic has been represented. These definitions are possible since we are abl ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
We propose a new framework for representing logics, called LF + and based on the Edinburgh Logical Framework. The new framework allows us to give, apparently for the first time, general definitions which capture how well a logic has been represented. These definitions are possible since we are able to distinguish in a generic way that part of the LF + entailment which corresponds to the underlying logic. This distinction does not seem to be possible with other frameworks. Using our definitions, we show that, for example, natural deduction first-order logic can be well-represented in LF + , whereas linear and relevant logics cannot. We also show that our syntactic definitions of representation have a simple formulation as indexed isomorphisms, which both confirms that our approach is a natural one and provides a link between type-theoretic and categorical approaches to frameworks. 1 Introduction Much effort has been devoted to building systems for supporting the construction of f...
Proof-search in type-theoretic languages: an introduction
- Theoretical Computer Science
, 2000
"... We introduce the main concepts and problems in the theory of proof-search in type-theoretic languages and survey some specific, connected topics. We do not claim to cover all of the theoretical and implementation issues in the study of proof-search in type-theoretic languages; rather, we present som ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
We introduce the main concepts and problems in the theory of proof-search in type-theoretic languages and survey some specific, connected topics. We do not claim to cover all of the theoretical and implementation issues in the study of proof-search in type-theoretic languages; rather, we present some key ideas and problems, starting from well-motivated points of departure such as a definition of a type-theoretic language or the relationship between languages and proof-objects. The strong connections between different proof-search methods in logics, type theories and logical frameworks, together with their impact on programming and implementation issues, are central in this context.
\Pi-Calculus with Type Similarity
, 1995
"... Motivated by the problems of the undecidablity of higher-order unification and hence the undecidability of \Pi-unification, Pym and Elliott give a weaker notion of typing for \Pi-objects : type similarity. In this paper we present a new calculus giving a formal theory of type similarity that capture ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Motivated by the problems of the undecidablity of higher-order unification and hence the undecidability of \Pi-unification, Pym and Elliott give a weaker notion of typing for \Pi-objects : type similarity. In this paper we present a new calculus giving a formal theory of type similarity that captures this weaker notion of typing. We then apply a variant of Hardin's interpretation method to show that well-typed terms of this new calculus are confluent and normalizing for fij-reduction. This is done by defining two translations of the new calculus into the \Pi-calculus. We then use the results that well-typed \Pi-terms are confluent and strongly normalizing to get our results. 1 Introduction The \Pi-calculus is an extension of the simply-typed -calculus with dependent function types, that is types can depend on the value of terms. As a consequence a unification procedure for the \Pi-calculus must unify not only terms, but also their types. To the authors' knowledge there are two presen...

