Results 1 - 10
of
13
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...
Five axioms of alpha-conversion
- Ninth international Conference on Theorem Proving in Higher Order Logics TPHOL
, 1996
"... Abstract. We present five axioms of name-carrying lambda-terms identified up to alpha-conversion—that is, up to renaming of bound variables. We assume constructors for constants, variables, application and lambdaabstraction. Other constants represent a function Fv that returns the set of free variab ..."
Abstract
-
Cited by 49 (0 self)
- Add to MetaCart
Abstract. We present five axioms of name-carrying lambda-terms identified up to alpha-conversion—that is, up to renaming of bound variables. We assume constructors for constants, variables, application and lambdaabstraction. Other constants represent a function Fv that returns the set of free variables in a term and a function that substitutes a term for a variable free in another term. Our axioms are (1) equations relating Fv and each constructor, (2) equations relating substitution and each constructor, (3) alpha-conversion itself, (4) unique existence of functions on lambda-terms defined by structural iteration, and (5) construction of lambda-abstractions given certain functions from variables to terms. By building a model from de Bruijn’s nameless lambda-terms, we show that our five axioms are a conservative extension of HOL. Theorems provable from the axioms include distinctness, injectivity and an exhaustion principle for the constructors, principles of structural induction and primitive recursion on lambda-terms, Hindley and Seldin’s substitution lemmas and
Structural Cut Elimination - I. Intuitionistic and Classical Logic
- Information and Computation
, 2000
"... this paper we present new proofs of cut elimination for intuitionistic and classical sequent calculi and give their representations in the logical framework LF [HHP93] as implemented in the Elf system [Pfe91]. Multi-sets are avoided altogether in these proofs, and termination measures are replaced b ..."
Abstract
-
Cited by 47 (17 self)
- Add to MetaCart
this paper we present new proofs of cut elimination for intuitionistic and classical sequent calculi and give their representations in the logical framework LF [HHP93] as implemented in the Elf system [Pfe91]. Multi-sets are avoided altogether in these proofs, and termination measures are replaced by three nested structural inductions. Parameters are treated as variables bound in derivations, thus naturally capturing occurrence conditions. A starting point for the proofs is Kleene's sequent system G 3 [Kle52], which we derive systematically from the point of view that a sequent calculus should be a calculus of proof search for natural deductions. It can easily be related to Gentzen's original and other sequent calculi. We augment G 3 with proof terms that are stable under weakening. These proof terms enable the structural induction and furthermore form the basis of the representation of the proof in LF. The most closely related work on cut elimination is Martin-Lo# f 's proof of admissibility [ML68]. In Martin-Lo# f 's system the cut rule incorporates aspects of both weakening and contraction which enables a structural induction argument closely related to ours. However, without the introduction of proof terms, the implicit weakening in the cut rule makes it difficult to implement this proof directly. Herbelin [Her95] restates this proof and proceeds by assigning proof terms only to restricted sequent calculi LJT and LKT which correspond more immediately to
Induction and co-induction in sequent calculus
- Post-proceedings of TYPES 2003, number 3085 in LNCS
, 2003
"... Abstract. Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles are based on a proof theoretic (rather than set-t ..."
Abstract
-
Cited by 18 (5 self)
- Add to MetaCart
Abstract. Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles are based on a proof theoretic (rather than set-theoretic) notion of definition [13, 20, 25, 51]. Definitions are akin to (stratified) logic programs, where the left and right rules for defined atoms allow one to view theories as “closed ” or defining fixed points. The use of definitions makes it possible to reason intensionally about syntax, in particular enforcing free equality via unification. We add in a consistent way rules for pre and post fixed points, thus allowing the user to reason inductively and co-inductively about properties of computational system making full use of higher-order abstract syntax. Consistency is guaranteed via cut-elimination, where we give the first, to our knowledge, cut-elimination procedure in the presence of general inductive and co-inductive definitions. 1
The Mechanisation of Barendregt-Style Equational Proofs (the Residual Perspective)
, 2001
"... We show how to mechanise equational proofs about higher-order languages by using the primitive proof principles of first-order abstract syntax over one-sorted variable names. We illustrate the method here by proving (in Isabelle/HOL) a technical property which makes the method widely applicable for ..."
Abstract
-
Cited by 7 (4 self)
- Add to MetaCart
We show how to mechanise equational proofs about higher-order languages by using the primitive proof principles of first-order abstract syntax over one-sorted variable names. We illustrate the method here by proving (in Isabelle/HOL) a technical property which makes the method widely applicable for the λ-calculus: the residual theory of β is renaming-free up-to an initiality condition akin to the so-called Barendregt Variable Convention. We use our results to give a new diagram-based proof of the development part of the strong finite development property for the λ-calculus. The proof has the same equational implications (e.g., confluence) as the proof of the full property but without the need to prove SN. We account for two other uses of the proof method, as presented elsewhere. One has been mechanised in full in Isabelle/HOL.
Combining higher-order abstract syntax with first-order abstract syntax in ATS
- In ACM Workshop on Mechanized Reasoning about Languages with Variable Binding
, 2005
"... Abstract Encodings based on higher-order abstract syntax represent the vari-ables of an object-language as the variables of a meta-language. Such encodings allow for the reuse of ff-conversion, substitutionand hypothetical judgments already defined in the meta-language and thus often lead to simple ..."
Abstract
-
Cited by 7 (1 self)
- Add to MetaCart
Abstract Encodings based on higher-order abstract syntax represent the vari-ables of an object-language as the variables of a meta-language. Such encodings allow for the reuse of ff-conversion, substitutionand hypothetical judgments already defined in the meta-language and thus often lead to simple and natural formalization. However,it is also well-known that there are some inherent difficulties with higher-order abstract syntax in supporting recursive definitions.We demonstrate a novel approach to explicitly combining higher-order abstract syntax with first-order abstract syntax thatmakes use of a (restricted) form of dependent types. With this combination, we can readily define recursive functions over first-orderabstract syntax while ensuring the correctness of these functions through higher-order abstract syntax. We present an implemen-tation of substitution and a verified evaluator for pure untyped call-by-value *-calculus. Categories and Subject Descriptors D.3 [Software]: Program-ming Languages
A Logic for Reasoning with Higher-Order Abstract Syntax
"... Logical frameworks based on intuitionistic or linear logics with higher-type quantification have been successfully used to give high-level, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natu ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Logical frameworks based on intuitionistic or linear logics with higher-type quantification have been successfully used to give high-level, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natural to consider proving properties about the specified systems in the framework: for example, given the specification of evaluation for a functional programming language, prove that the language is deterministic or that the subject-reduction theorem holds. One challenge in developing a framework for such reasoning is that higherorder abstract syntax (HOAS), an elegant and declarative treatment of object-level abstraction and substitution,is difficult to treat in proofs involving induction. In this paper, we present a meta-logic that can be used to reason about judgments coded using HOAS; this meta-logic is an extension of a simple intuitionistic logic that admits higher-order quantification over simply typed-terms (key ingredients for HOAS) as well as induction and a notion of definition. The latter concept of a definition is a proof-theoretic device that allows certain theories to be treated as “closed ” or as defining fixed points. The resulting meta-logic can specify various logical frameworks and a large range of judgments regarding programming languages and inference systems. We illustrate this point through examples, including the admissibility of cut for a simple logic and subject reduction, determinacy of evaluation, and the equivalence of SOS and natural semantics presentations of evaluation for a simple functional programming language. 1.
A Type-Theoretic Approach to Induction with Higher-Order Encodings
, 2001
"... Reasoning by induction is common practice in computer science and mathematics. In formal logic, however, standard induction principles exist only for a certain class of inductively defined structures that satisfy the positivity condition. This is a major restriction considering that many structures ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
Reasoning by induction is common practice in computer science and mathematics. In formal logic, however, standard induction principles exist only for a certain class of inductively defined structures that satisfy the positivity condition. This is a major restriction considering that many structures in programming languages and logics are best expressed using higher-order representation techniques that violate exactly this condition. In this paper we develop induction principles for higherorder encodings in the setting of first-order intuitionistic logic. They differ from standard induction principles in that they rely on the concept of worlds [Sch01] which admits reasoning about open terms in regularly formed contexts. The soundness of these induction principles follows from external termination and coverage considerations about a realizability interpretation of proofs.
Proving Correctness of the Translation from Mini-ML to the CAM with the Coq Proof Development System
- with the Coq Proof Development System. Research report RR-2536, INRIA, Rocquencourt
, 1995
"... In this article we show how we proved correctness of the translation from a small applicative language with recursive definitions (Mini-ML) to the Categorical abstract machine (CAM) using the Coq system. Our aim was to mechanise the proof of J. Despeyroux [10]. Like her, we use natural semantics to ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
In this article we show how we proved correctness of the translation from a small applicative language with recursive definitions (Mini-ML) to the Categorical abstract machine (CAM) using the Coq system. Our aim was to mechanise the proof of J. Despeyroux [10]. Like her, we use natural semantics to axiomatise the semantics of our languages. The axiomatisations of inferences systems and of the languages is nicely performed by the mechanism of inductive definitions in the Coq system. Unfortunately both the source and the target semantics involve nested structures that cannot be formalised inductively. We have overcome this problem by making some slight modifications of both the source and target semantics and show how the changes in the source and target semantics are related. For the remaining tranlation we explain how we can use the Coq system to formalize non-terminating programs and incorrect programs, objects that are impossible to explain with only the formalism of natural semantic...
Formalizing type operations using the “Image” type constructor
- Workshop on Logic, Language, Information and Computation (WoLLIC
, 2006
"... In this paper we introduce a new approach to formalizing certain type operations in type theory. Traditionally, many type constructors in type theory are independently axiomatized and the correctness of these axioms is argued semantically. In this paper we introduce a notion of an “image ” of a give ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
In this paper we introduce a new approach to formalizing certain type operations in type theory. Traditionally, many type constructors in type theory are independently axiomatized and the correctness of these axioms is argued semantically. In this paper we introduce a notion of an “image ” of a given type under a mapping that captures the spirit of many of such semantical arguments. This allows us to use the new “image ” type to formalize within the type theory a large range of type constructors that were traditionally formalized via postulated axioms. We demonstrate the ability of the “image ” constructor to express “forgetful ” types by using it to formalize the “squash ” and “set ” type constructors. We also demonstrate its ability to handle types with non-trivial equality relations by using it to formalize the union type operator. We demonstrate the ability of the “image ” constructor to express certain inductive types by showing how the type of lists and a higher-order abstract syntax type can be naturally formalized using the new type constructor. The work presented in this paper have been implemented in the MetaPRL proof assistant and all the derivations checked by MetaPRL.

