Results 1  10
of
24
Cut Rules and Explicit Substitutions
, 2000
"... this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call Nsystems, are symbolic logics generally given via introduction and elimination rules for the l ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call Nsystems, are symbolic logics generally given via introduction and elimination rules for the logical connectives which operate on the right, i.e., they manipulate the succedent formula. Examples are Gentzen's NJ and NK (Gentzen 1935). Logical deduction systems are given via leftintroduction and rightintroduction rules for the logical connectives. Although others have called these systems "sequent calculi", we call them Lsystems to avoid confusion with other systems given in sequent style. Examples are Gentzen's LK and LJ (Gentzen 1935). In this paper we are primarily interested in Lsystems. The advantage of Nsystems is that they seem closer to actual reasoning, while Lsystems on the other hand seem to have an easier proof theory. Lsystems are often extended with a "cut" rule as part of showing that for a given Lsystem and Nsystem, the derivations of each system can be encoded in the other. For example, NK proves the same as LK + cut (Gentzen 1935). Proof Normalization. A system is consistent when it is impossible to prove false, i.e., derive absurdity from zero assumptions. A system is analytic (has the analycity property) when there is an e#ective method to decompose any conclusion sequent into simpler premise sequents from which the conclusion can be obtained by some rule in the system such that the conclusion is derivable i# the premises are derivable (Maenpaa 1993). To achieve the goals of consistency and analycity, it has been customary to consider
Calculi of Generalised βReduction and Explicit Substitutions: The TypeFree and Simply Typed Versions
, 1998
"... Extending the λcalculus with either explicit substitution or generalized reduction has been the subject of extensive research recently, and still has many open problems. This paper is the first investigation into the properties of a calculus combining both generalized reduction and explicit substit ..."
Abstract

Cited by 14 (7 self)
 Add to MetaCart
Extending the λcalculus with either explicit substitution or generalized reduction has been the subject of extensive research recently, and still has many open problems. This paper is the first investigation into the properties of a calculus combining both generalized reduction and explicit substitutions. We present a calculus, gs, that combines a calculus of explicit substitution, s, and a calculus with generalized reduction, g. We believe that gs is a useful extension of the  calculus, because it allows postponement of work in two different but complementary ways. Moreover, gs (and also s) satisfies properties desirable for calculi of explicit substitutions and generalized reductions. In particular, we show that gs preserves strong normalization, is a conservative extension of g, and simulates fireduction of g and the classical calculus. Furthermore, we study the simply typed versions of s and gs, and show that welltyped terms are strongly normalizing and that other properties,...
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 10 (8 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 etareduction which we show to preserve termination and conuence of the associated substitution calculus and to correspond to the etareductions 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 betacontraction.
Tradeoffs in the Intensional Representation of Lambda Terms
 Rewriting Techniques and Applications (RTA 2002), volume 2378 of LNCS
, 2002
"... Higherorder representations of objects such as programs, specifications and proofs are important to many metaprogramming and symbolic computation tasks. Systems that support such representations often depend on the implementation of an intensional view of the terms of suitable typed lambda calculi. ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
Higherorder representations of objects such as programs, specifications and proofs are important to many metaprogramming and symbolic computation tasks. Systems that support such representations often depend on the implementation of an intensional view of the terms of suitable typed lambda calculi. Refined lambda calculus notations have been proposed that can be used in realizing such implementations. There are, however, choices in the actual deployment of such notations whose practical consequences are not well understood. Towards addressing this lacuna, the impact of three specific ideas is examined: the de Bruijn representation of bound variables, the explicit encoding of substitutions in terms and the annotation of terms to indicate their independence on external abstractions. Qualitative assessments are complemented by experiments over actual computations using the lambdaProlog language.
Bridging de Bruijn indices and variable names in explicit substitutions calculi
 Logic Journal of the Interest Group of Pure and Applied Logic (IGPL
, 1996
"... Calculi of explicit substitutions have almost always been presented using de Bruijn indices with the aim of avoiding ffconversion and being as close to machines as possible. De Bruijn indices however, though very suitable for the machine, are difficult to human users. This is the reason for a renew ..."
Abstract

Cited by 9 (6 self)
 Add to MetaCart
Calculi of explicit substitutions have almost always been presented using de Bruijn indices with the aim of avoiding ffconversion and being as close to machines as possible. De Bruijn indices however, though very suitable for the machine, are difficult to human users. This is the reason for a renewed interest in systems of explicit substitutions using variable names. Formal systems of explicit substitutions using variable names is a new area however and we believe, it should not develop without being welltied to existing work on explicit substitutions. The aim of this paper is to establish a bridge between explicit substitutions using de Bruijn indices and using variable names. In our aim to do so, we provide the tcalculus: a calculus `a la de Bruijn which can be translated into a calculus with explicit substitutions written with variables names. We present explicitly this translation and use it to obtain preservation of strong normalisation for t. Moreover, we show several prope...
Sequent Combinators: A Hilbert System for the Lambda Calculus
 MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE
, 1999
"... This paper introduces a Hilbert system for lambda calculus called sequent combinators. Sequent combinators address many of the problems of Hilbert systems, which have led to the more widespread adoption of natural deduction systems in computer science. This suggests that Hilbert systems, with the ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
This paper introduces a Hilbert system for lambda calculus called sequent combinators. Sequent combinators address many of the problems of Hilbert systems, which have led to the more widespread adoption of natural deduction systems in computer science. This suggests that Hilbert systems, with their more uniform approach to metavariables and substitution, may be a more suitable framework than lambda calculus for type theories and programming languages.
The Suspension Notation for Lambda Terms and its Use in Metalanguage Implementations
 Proc. 9th Workshop on Logic, Language, Information and Computation (WoLLIC 2002), volume 67 of ENTCS
, 2003
"... Many metalanguages and logical frameworks have emerged in recent years that use the terms of the lambda calculus as data structures. A common set of questions govern the suitability of a representation for lambda terms in the implementation of such systems: convertibility must be easily recognizabl ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Many metalanguages and logical frameworks have emerged in recent years that use the terms of the lambda calculus as data structures. A common set of questions govern the suitability of a representation for lambda terms in the implementation of such systems: convertibility must be easily recognizable, sharing in reduction steps, term traversal and term structure must be possible, comparison and unification operations should be eciently supported and it should be possible to examine terms embedded inside abstractions. Explicit substitution notations for lambda calculi provide a basis for realizing such requirements. We discuss here the issues related to using one such notation  the suspension notation of Nadathur and Wilson  in this capacity. This notation has been used in two significant practical systems: the Standard ML of New Jersey compiler and the Teyjus implementation of Prolog. We expose the theoretical properties of this notation, highlight pragmatic considerations in its use in implementing operations such as reduction and unification and discuss its relationship to other explicit substitution notations.
Two equivalent calculi of explicit substitution with confluence on metaterms and preservation of strong normalization (one with names and one firstorder) (Extended Abstract)
 In Proceedings of the 1st Int. Workshop on Explicit Substitutions: Theory and Applications to Programs and Proofs
, 1998
"... We propose a solution to the standing open problem of finding a calculus of explicit substitution with the following four properties: 1. simulates onestep βreduction, 2. is confluent on metaterms (also known as "open terms"), 3. has a strongly normalizing substitution subcalculus, and 4. prese ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
We propose a solution to the standing open problem of finding a calculus of explicit substitution with the following four properties: 1. simulates onestep βreduction, 2. is confluent on metaterms (also known as "open terms"), 3. has a strongly normalizing substitution subcalculus, and 4. preserves βstrong normalization. Our solution, λxci, is based on insights gained by studying the critical pair between two metaterms that makes calculi without substitution composition nonconfluent (on metaterms). The insight is closely tied to the fact that this critical pair is essentially an explicit representation of the "substitution lemma" of λcalculus, and the missing link in the solution is to express finiteness of all reductions starting from any reachable development of the source term. We give an encoding of the system as a first order system using de Bruijn's explicit variable indexing idea, and show that it enjoys the same properties by an easy equivalence.
Explicit Substitutions and All That
, 2000
"... Explicit substitution calculi are extensions of the lambdacalculus 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 3 (3 self)
 Add to MetaCart
Explicit substitution calculi are extensions of the lambdacalculus 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_secalculi.