Results 1 - 10
of
36
Explicit Substitution: on the Edge of Strong Normalization
- Theoretical Computer Science
, 1997
"... We use the Recursive Path Ordering (RPO) technique of semantic labelling to show the Preservation of Strong Normalization (PSN) property for several calculi of explicit substitution. Preservation of Strong Normalization states that if a term M is strongly normalizing under ordinary fi-reduction (us ..."
Abstract
-
Cited by 28 (2 self)
- Add to MetaCart
We use the Recursive Path Ordering (RPO) technique of semantic labelling to show the Preservation of Strong Normalization (PSN) property for several calculi of explicit substitution. Preservation of Strong Normalization states that if a term M is strongly normalizing under ordinary fi-reduction (using `global' substitutions), then it is strongly normalizing if the substitution is made explicit (`local'). There are different ways of making global substitution explicit and PSN is a quite natural and desirable property for the explicit substitution calculus. Our method for proving PSN is very general and applies to several known systems of explicit substitutions, both with named variables and with De Bruijn indices: AE of Lescanne et al., s of Kamareddine and R'ios and x of Rose and Bloo. We also look at two small extensions of the explicit substitution calculus that allow to permute substitutions. For one of these extensions PSN fails (using the counterexample in [Melli`es 95]). For the...
Confluence and Preservation of Strong Normalisation in an Explicit Substitutions Calculus
, 1996
"... Explicit substitutions calculi are formal systems that implement fi-reduction by means of an internal substitution operator. In that calculi it is possible to delay the application of a substitution to a term or to consider terms with partially applied substitutions. The oe -calculus of explicit s ..."
Abstract
-
Cited by 20 (4 self)
- Add to MetaCart
Explicit substitutions calculi are formal systems that implement fi-reduction by means of an internal substitution operator. In that calculi it is possible to delay the application of a substitution to a term or to consider terms with partially applied substitutions. The oe -calculus of explicit substitutions, proposed by Abadi, Cardelli, Curien andL evy, is a first-order rewriting system that implements substitution and renaming mechanism of -calculus. However, oe does not preserve strong normalisation of -calculus and it is not a confluent system. Typed variants of oe without composition are strongly normalising but not confluent, while variants with composition are confluent but do not preserve strong normalisation. Neither of them enjoys both properties. In this paper we propose the i -calculus. This is, as far as we know, the first confluent calculus of explicit substitutions that preserves strong normalisation. 1. Explicit substitutions The -calculus is a higher-order theor...
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 N-systems, 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 N-systems, 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 left-introduction and right-introduction rules for the logical connectives. Although others have called these systems "sequent calculi", we call them L-systems 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 L-systems. The advantage of N-systems is that they seem closer to actual reasoning, while L-systems on the other hand seem to have an easier proof theory. L-systems are often extended with a "cut" rule as part of showing that for a given L-system and N-system, 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
Nominal rewriting
- Information and Computation
"... Nominal rewriting is based on the observation that if we add support for alphaequivalence to first-order syntax using the nominal-set approach, then systems with binding, including higher-order reduction schemes such as lambda-calculus betareduction, can be smoothly represented. Nominal rewriting ma ..."
Abstract
-
Cited by 15 (6 self)
- Add to MetaCart
Nominal rewriting is based on the observation that if we add support for alphaequivalence to first-order syntax using the nominal-set approach, then systems with binding, including higher-order reduction schemes such as lambda-calculus betareduction, can be smoothly represented. Nominal rewriting maintains a strict distinction between variables of the objectlanguage (atoms) and of the meta-language (variables or unknowns). Atoms may be bound by a special abstraction operation, but variables cannot be bound, giving the framework a pronounced first-order character, since substitution of terms for variables is not capture-avoiding. We show how good properties of first-order rewriting survive the extension, by giving an efficient rewriting algorithm, a critical pair lemma, and a confluence theorem
Intersection types for explicit substitutions
, 2003
"... We present a new system of intersection types for a composition-free calculus of explicit substitutions with a rule for garbage collection, and show that it characterizes those terms which are strongly normalizing. This system extends previous work on the natural generalization of the classical inte ..."
Abstract
-
Cited by 13 (4 self)
- Add to MetaCart
We present a new system of intersection types for a composition-free calculus of explicit substitutions with a rule for garbage collection, and show that it characterizes those terms which are strongly normalizing. This system extends previous work on the natural generalization of the classical intersection types system, which characterized head normalization and weak normalization, but was not complete for strong normalization. An important role is played by the notion of available variable in a term, which is a generalization of the classical notion of free variable.
Linear Explicit Substitutions
- In Proc. of Westapp'98
, 1998
"... The oe-calculus adds explicit substitutions to the -calculus so as to provide a theoretical framework within which the implementation of functional programming languages can be studied. This paper generalises the oe-calculus to provide a linear calculus of explicit substitutions, called xDILL, which ..."
Abstract
-
Cited by 11 (8 self)
- Add to MetaCart
The oe-calculus adds explicit substitutions to the -calculus so as to provide a theoretical framework within which the implementation of functional programming languages can be studied. This paper generalises the oe-calculus to provide a linear calculus of explicit substitutions, called xDILL, which analogously describes the implementation of linear functional programming languages. Our main observation is that there are non-trivial interactions between linearity and explicit substitutions and that xDILL is therefore best understood as a synthesis of its underlying logical structure and the technology of explicit substitutions. This is in contrast to the oe-calculus where the explicit substitutions are independent of the underlying logical structure. Keywords: -calculus, explicit substitutions, linear logic 1 Introduction This paper combines the technologies of explicit substitutions and linearity in a mathematically consistent way. We start by describing these technologies and the...
Computation with classical sequents
- MATHEMATICAL STRUCTURES OF COMPUTER SCIENCE
, 2008
"... X is an untyped continuation-style formal language with a typed subset which provides a Curry-Howard isomorphism for a sequent calculus for implicative classical logic. X can also be viewed as a language for describing nets by composition of basic components connected by wires. These features make X ..."
Abstract
-
Cited by 10 (10 self)
- Add to MetaCart
X is an untyped continuation-style formal language with a typed subset which provides a Curry-Howard isomorphism for a sequent calculus for implicative classical logic. X can also be viewed as a language for describing nets by composition of basic components connected by wires. These features make X an expressive platform on which algebraic objects and many different (applicative) programming paradigms can be mapped. In this paper we will present the syntax and reduction rules for X and in order to demonstrate the expressive power of X, we will show how elaborate calculi can be embedded, like the λ-calculus, Bloo and Rose’s calculus of explicit substitutions λx, Parigot’s λµ and Curien and Herbelin’s λµ ˜µ.
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 ff-conversion 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 ff-conversion 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 well-tied 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 t-calculus: 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...
Proof-Term Synthesis on Dependent-type Systems via Explicit Substitutions
, 1999
"... Typed #-terms are used as a compact and linear representation of proofs in intuitionistic logic. This is possible since the Curry-Howard isomorphism relates proof trees with typed #-terms. The proofs-as-terms principle can be used to check a proof by type checking the #-term extracted from the compl ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
Typed #-terms are used as a compact and linear representation of proofs in intuitionistic logic. This is possible since the Curry-Howard isomorphism relates proof trees with typed #-terms. The proofs-as-terms principle can be used to check a proof by type checking the #-term extracted from the complete proof tree. However, proof trees and typed #-terms are built differently. Usually, an auxiliary representation of unfinished proofs is needed, where type checking is possible only on complete proofs. In this paper we present a proof synthesis method for dependent-type systems where typed open terms are built incrementally at the same time as proofs are done. This way, every construction step, not just the last one, may be type checked. The method is based on a suitable calculus where substitutions as well as meta-variables are first-class objects.
On Explicit Substitutions and Names (Extended Abstract)
- In Proc. of ICALP'97, LNCS 1256
, 1997
"... ) Eike Ritter and Valeria de Paiva ? School of Computer Science, University of Birmingham Abstract. Calculi with explicit substitutions have found widespread acceptance as a basis for abstract machines for functional languages. In this paper we investigate the relations between variants with de Br ..."
Abstract
-
Cited by 6 (5 self)
- Add to MetaCart
) Eike Ritter and Valeria de Paiva ? School of Computer Science, University of Birmingham Abstract. Calculi with explicit substitutions have found widespread acceptance as a basis for abstract machines for functional languages. In this paper we investigate the relations between variants with de Bruijnnumbers, with variable names, with reduction based on raw expressions and calculi with equational judgements. We show the equivalence between these variants, which is crucial in establishing the correspondence between the semantics of the calculus and its implementations. 1 Introduction Explicit substitution calculi (or oe-calculi for short) first appeared in a seminal paper by Abadi et al. [1]. The basic idea is that instead of having substitutions as a meta-level operation, as in traditional -calculus, we should make them part of the object-level calculus. The advantages of this approach are twofold. Firstly, it makes it possible to design much more efficient abstract machines as we a...

