Results 1 - 10
of
18
Comparing and Implementing Calculi of Explicit Substitutions with Eta Reduction
- Annals of Pure and Applied Logic
, 2005
"... The past decade has seen an explosion of work on calculi of explicit substitutions. Numerous work has illustrated the usefulness of these calculi for practical notions like the implementation of typed functional programming languages and higher order proof assistants. It has also been shown that e ..."
Abstract
-
Cited by 6 (5 self)
- Add to MetaCart
The past decade has seen an explosion of work on calculi of explicit substitutions. Numerous work has illustrated the usefulness of these calculi for practical notions like the implementation of typed functional programming languages and higher order proof assistants. It has also been shown that eta reduction is useful for adapting substitution calculi for practical problems like higher order uni cation. This paper concentrates on rewrite rules for eta reduction in three dierent styles of explicit substitution calculi: , se and the suspension calculus. Both and se when extended with eta reduction, have proved useful for solving higher order uni cation. We enlarge the suspension calculus with an adequate eta-reduction which we show to preserve termination and conuence of the associated substitution calculus and to correspond to the eta-reductions of the other two calculi. We prove that and se as well as and the suspension calculus are non comparable while se is more adequate than the suspension calculus in simulating one step of beta-contraction.
Writing PVS proof strategies
- Design and Application of Strategies/Tactics in Higher Order Logics (STRATA 2003), number CP-2003-212448 in NASA Conference Publication
, 2003
"... Abstract. PVS (Prototype Verification System) is a comprehensive framework for writing formal logical specifications and constructing proofs. An interactive proof checker is a key component of PVS. The capabilities of this proof checker can be extended by defining proof strategies that are similar t ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
Abstract. PVS (Prototype Verification System) is a comprehensive framework for writing formal logical specifications and constructing proofs. An interactive proof checker is a key component of PVS. The capabilities of this proof checker can be extended by defining proof strategies that are similar to LCF-style tactics. Commonly used proof strategies include those for discharging typechecking proof obligations, simplification and rewriting using decision procedures, and various forms of induction. We describe the basic building blocks of PVS proof strategies and provide a pragmatic guide for writing sophisticated strategies. 1
A Compendium of Continuous Lattices in MIZAR - Formalizing recent mathematics
, 2002
"... This paper reports on the Mizar formalization of the theory of continuous lattices as presented in A Compendium of Continuous Lattices, [25]. By the Mizar formalization we mean a formulation of theorems, de nitions, and proofs written in the Mizar language whose correctness is veri ed by the Mizar ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
This paper reports on the Mizar formalization of the theory of continuous lattices as presented in A Compendium of Continuous Lattices, [25]. By the Mizar formalization we mean a formulation of theorems, de nitions, and proofs written in the Mizar language whose correctness is veri ed by the Mizar processor. This eort was originally motivated by the question of whether or not the Mizar system was suciently developed for the task of expressing advanced mathematics. The current state of the formalization|57 Mizar articles written by 16 authors| indicates that in principle the Mizar system has successfully met the challenge. To our knowledge it is the most sizable eort aimed at mechanically checking some substantial and relatively recent eld of advanced mathematics. However, it does not mean that doing mathematics in Mizar is as simple as doing mathematics traditionally (if doing mathematics is simple at all). The work of formalizing the material of [25] has: (i) prompted many improvements of the Mizar proof checking system; (ii) caused numerous revisions of the the Mizar data base; and (iii) contributed to the \to do" list of further changes to the Mizar system.
Strategies for Simply-Typed Higher Order Unification via lambda se-Style of Explicit Substitution
"... . An eective strategy for implementing higher order unication (HOU) based on the se - style of explicit substitution is proposed. The strategy is based on a se-unication method recently developed by the authors. A pre-cooking translation for applying the se -style of unication to HOU in the pure -ca ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
. An eective strategy for implementing higher order unication (HOU) based on the se - style of explicit substitution is proposed. The strategy is based on a se-unication method recently developed by the authors. A pre-cooking translation for applying the se -style of unication to HOU in the pure -calculus is presented. Correctness and completeness of the proposed strategy and of the pre-cooking translation are shown and their applicability to HOU in the pure -calculus is illustrated. 1 Introduction In [DHK00], a higher order unication (HOU) method was based on the -style of explicit substitution [ACCL91]. In [ARK00], HOU was studied in the s e -style of explicit substitution [KR97]. It is claimed in [ARK00] that s e -unication has the advantages of enabling quicker detection of redices and of having a clearer semantics. In this paper, we set out to provide an eective strategy for implementing s e -unication and a pre-cooking translation for applying it to HOU in the ...
Explicit Substitutions and All That
, 2000
"... Explicit substitution calculi are extensions of the lambda-calculus where the substitution mechanism is internalized into the theory. This feature makes them suitable for implementation and theoretical study of logic based tools as strongly typed programming languages and proof assistant systems. In ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Explicit substitution calculi are extensions of the lambda-calculus where the substitution mechanism is internalized into the theory. This feature makes them suitable for implementation and theoretical study of logic based tools as strongly typed programming languages and proof assistant systems. In this paper we explore new developments on two of the most successful styles of explicit substitution calculi: the lambdasigma- and lambda_se-calculi.
Reviewing the classical and the de Bruijn notation for λ-calculus and pure type systems
- Logic and Computation
, 2001
"... This article is a brief review of the type free λ-calculus and its basic rewriting notions, and of the pure type system framework which generalises many type systems. Both the type free λ-calculus and the pure type systems are presented using variable names and de Bruijn indices. Using the presentat ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
This article is a brief review of the type free λ-calculus and its basic rewriting notions, and of the pure type system framework which generalises many type systems. Both the type free λ-calculus and the pure type systems are presented using variable names and de Bruijn indices. Using the presentation of the λ-calculus with de Bruijn indices, we illustrate how a calculus of explicit substitutions can be obtained. In addition, de Bruijn's notation for the λ-calculus is introduced and some of its advantages are outlined.
Unification via the ...-Style of Explicit Substitutions
, 2001
"... A unication method based on the se -style of explicit substitution is proposed. This method together with appropriate translations, provide a Higher Order Unication (HOU) procedure for the pure -calculus. Our method is inuenced by the treatment introduced by Dowek, Hardin and Kirchner using the -sty ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
A unication method based on the se -style of explicit substitution is proposed. This method together with appropriate translations, provide a Higher Order Unication (HOU) procedure for the pure -calculus. Our method is inuenced by the treatment introduced by Dowek, Hardin and Kirchner using the -style of explicit substitution. Correctness and completeness properties of the proposed se-unication method are shown and its advantages, inherited from the qualities of the se -calculus, are pointed out. Our method needs only one sort of objects: terms. And in contrast to the HOU approach based on the -calculus, it avoids the use of substitution objects. This makes our method closer to the syntax of the -calculus. Furthermore, detection of redices depends on the search for solutions of simple arithmetic constraints which makes our method more operational than the one based on the -style of explicit substitution. Keywords: Higher order unication, explicit substitution, lambda-calculi. 1
An Abstract Syntax for a Formal Language of Mathematics
, 2001
"... This paper provides an abstract syntax for a formal language of mathematics. We call our language Weak Type Theory (abbreviated WTT ). WTT will be as faithful as possible to the mathematician 's language yet will be formal and will not allow ambiguities. WTT can be used as an intermediary between ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper provides an abstract syntax for a formal language of mathematics. We call our language Weak Type Theory (abbreviated WTT ). WTT will be as faithful as possible to the mathematician 's language yet will be formal and will not allow ambiguities. WTT can be used as an intermediary between the natural language of the mathematician and the formal language of the logician. As far as we know, this is the rst extensive formalization of an abstract syntax of a formal language of mathematics. We compare our work with existing formalizations of languages of mathematics. 1
Intersection Type System with de Bruijn Indices
, 2008
"... λ-calculus in de Bruijn notation is relevant because it avoids variable names using instead indices which makes it more adequate computationally; in fact, several calculi of explicit substitutions are written in de Bruijn notation because it simplifies the formalization of the atomic operations invo ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
λ-calculus in de Bruijn notation is relevant because it avoids variable names using instead indices which makes it more adequate computationally; in fact, several calculi of explicit substitutions are written in de Bruijn notation because it simplifies the formalization of the atomic operations involved in β-reductions. Intersection types provide finitary type polymorphism which is of principal interest. Moreover, intersection types characterize normalizable λ-terms, that is a term is normalizable if and only if it is typable. Versions of explicit substitutions calculi without types and with simple type systems are well investigated in contrast to versions with more elaborated type systems such as intersection types. In this paper λ-calculus in de Bruijn notation with an intersection type system is introduced and it is proved that this system satisfies the basic property of subject reduction, that is λ-terms preserve theirs types under β-reduction. 1
Principal Typings in a Restricted Intersection Type System for Beta Normal Forms with de Bruijn Indices
, 2009
"... The λ-calculus with de Bruijn indices assembles each α-class of λ-terms in a unique term, using indices instead of variable names. Intersection types provide finitary type polymorphism and can characterise normalisable λ-terms, that is a term is normalisable if and only if it is typeable. To be clos ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The λ-calculus with de Bruijn indices assembles each α-class of λ-terms in a unique term, using indices instead of variable names. Intersection types provide finitary type polymorphism and can characterise normalisable λ-terms, that is a term is normalisable if and only if it is typeable. To be closer to computations and to simplify the formalisation of the atomic operations involved in β-contractions several calculi of explicit substitution were developed and some of them are written with de Bruijn indices. Versions of explicit substitutions calculi without types and with simple type systems are well investigated in contrast to versions with more elaborated type systems such as intersection types. In previous work, we introduced a de Bruijn version of the λ-calculus with an intersection type system and proved it preserves the subject reduction, a basic type system property. In this paper a version with de Bruijn indices of an intersection type system originally introduced to characterise principal typings for β-normal forms (β-nf for short) is presented. We present the characterisation in this new system and the corresponding versions for the type inference and the reconstruction of normal forms from principal typings algorithms. We briefly discuss about the failure of the subject reduction property and some possible solutions for it. ∗ Supported by a PhD scholarship at the Universidade de Brasília. † Supported by the Fundação de Apoio à Pesquisa do Distrito Federal [FAPDF 8-004/2007] 1 1

