Results 1 - 10
of
73
Multi-Stage Programming: Its Theory and Applications
, 1999
"... MetaML is a statically typed functional programming language with special support for program generation. In addition to providing the standard features of contemporary programming languages such as Standard ML, MetaML provides three staging annotations. These staging annotations allow the construct ..."
Abstract
-
Cited by 79 (18 self)
- Add to MetaCart
MetaML is a statically typed functional programming language with special support for program generation. In addition to providing the standard features of contemporary programming languages such as Standard ML, MetaML provides three staging annotations. These staging annotations allow the construction, combination, and execution of object-programs. Our thesis is that MetaML's three staging annotations provide a useful, theoretically sound basis for building program generators. This dissertation reports on our study of MetaML's staging constructs, their use, their implementation, and their formal semantics. Our results include an extended example of where MetaML allows us to produce efficient programs, an explanation of why implementing these constructs in traditional ways can be challenging, two formulations of MetaML's semantics, a type system for MetaML, and a proposal for extending ...
A lambda-calculus à la de Bruijn with explicit substitutions
, 1995
"... The aim of this paper is to present the s-calculus which is a very simple -calculus with explicit substitutions and to prove its confluence on closed terms and the preservation of strong normalisation of -terms. We shall prove strong normalisation of the corresponding calculus of substitution by tra ..."
Abstract
-
Cited by 72 (24 self)
- Add to MetaCart
The aim of this paper is to present the s-calculus which is a very simple -calculus with explicit substitutions and to prove its confluence on closed terms and the preservation of strong normalisation of -terms. We shall prove strong normalisation of the corresponding calculus of substitution by translating it into the oe-calculus [ACCL91], and therefore the relation between both calculi will be made explicit. The confluence of the s-calculus is obtained by the "interpretation method" ([Har89], [CHL92]). The proof of the preservation of normalisation follows the lines of an analogous result for the AE-calculus (cf. [BBLRD95]). The relation between s and AE is also studied.
Preservation of Strong Normalisation in Named Lambda Calculi with Explicit Substitution and Garbage Collection
- IN CSN-95: COMPUTER SCIENCE IN THE NETHERLANDS
, 1995
"... In this paper we introduce and study a new lambda-calculus with explicit substitution, lambda-xgc, which has two distinguishing features: first, it retains the use of traditional variable names, specifying terms modulo renaming; this simplifies the reduction system. Second, it includes reduction rul ..."
Abstract
-
Cited by 54 (7 self)
- Add to MetaCart
In this paper we introduce and study a new lambda-calculus with explicit substitution, lambda-xgc, which has two distinguishing features: first, it retains the use of traditional variable names, specifying terms modulo renaming; this simplifies the reduction system. Second, it includes reduction rules for explicit garbage collection; this simplifies several proofs. We show that lambda-xgc is a conservative extension which preserves strong normalisation (PSN) of the untyped lambda-calculus. The result is obtained in a modular way by first proving it for garbage-free reduction and then extending to `reductions in garbage'. This provides insight into the counterexample to PSN for lambda-sigma of Melliès (1995); we exploit the abstract nature of lambda-xgc to show how PSN is in conflict with any reasonable substitution composition rule (except for trivial composition rules of which we mention one). Key words: lambda calculus, explicit substitution, strong normalisation, garbage collection.
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...
lambda-calculi with explicit substitutions and composition which preserve beta -strong normalization (Extended Abstract)
, 1996
"... ) Maria C. F. Ferreira 1 and Delia Kesner 2 and Laurence Puel 2 1 Dep. de Inform'atica, Fac. de Ciencias e Tecnologia, Univ. Nova de Lisboa, Quinta da Torre, 2825 Monte de Caparica, Portugal, cf@fct.unl.pt. 2 CNRS & Lab. de Rech. en Informatique, Bat 490, Univ. de Paris-Sud, 91405 Orsay Cede ..."
Abstract
-
Cited by 26 (3 self)
- Add to MetaCart
) Maria C. F. Ferreira 1 and Delia Kesner 2 and Laurence Puel 2 1 Dep. de Inform'atica, Fac. de Ciencias e Tecnologia, Univ. Nova de Lisboa, Quinta da Torre, 2825 Monte de Caparica, Portugal, cf@fct.unl.pt. 2 CNRS & Lab. de Rech. en Informatique, Bat 490, Univ. de Paris-Sud, 91405 Orsay Cedex, France, fkesner,puelg@lri.fr. Abstract. We study preservation of fi-strong normalization by d and dn , two confluent -calculi with explicit substitutions defined in [10]; the particularity of these calculi is that both have a composition operator for substitutions. We develop an abstract simulation technique allowing to reduce preservation of fi-strong normalization of one calculus to that of another one, and apply said technique to reduce preservation of fi-strong normalization of d and dn to that of f , another calculus having no composition operator. Then, preservation of fi-strong normalization of f is shown using the same technique as in [2]. As a consequence, d and dn become the fir...
Confluence Properties of Extensional and Non-Extensional lambda-Calculi with Explicit Substitutions (Extended Abstract)
- in Proceedings of the Seventh International Conference on Rewriting Techniques and Applications
, 1996
"... ) Delia Kesner CNRS and LRI, B at 490, Universit e Paris-Sud - 91405 Orsay Cedex, France. e-mail:Delia.Kesner@lri.fr Abstract. This paper studies confluence properties of extensional and non-extensional #-calculi with explicit substitutions, where extensionality is interpreted by #-expansion. For ..."
Abstract
-
Cited by 22 (5 self)
- Add to MetaCart
) Delia Kesner CNRS and LRI, B at 490, Universit e Paris-Sud - 91405 Orsay Cedex, France. e-mail:Delia.Kesner@lri.fr Abstract. This paper studies confluence properties of extensional and non-extensional #-calculi with explicit substitutions, where extensionality is interpreted by #-expansion. For that, we propose a general scheme for explicit substitutions which describes those abstract properties that are sufficient to guarantee confluence. Our general scheme makes it possible to treat at the same time many well-known calculi such as ## , ## # and ## , or some other new calculi that we propose in this paper. We also show for those calculi not fitting in the general scheme that can be translated to another one fitting the scheme, such as #s , how to reason about confluence properties of their extensional and non-extensional versions. 1 Introduction The #-calculus is a convenient framework to study functional programming, where the evaluation process is modeled by #-reduction. The...
Strong Normalization of Explicit Substitutions via Cut Elimination in Proof Nets
, 1997
"... In this paper, we show the correspondence existing between normalization in calculi with explicit substitution and cut elimination in sequent calculus for Linear Logic, via Proof Nets. This correspondence allows us to prove that a typed version of the #x-calculus [30, 29] is strongly normalizing, as ..."
Abstract
-
Cited by 21 (4 self)
- Add to MetaCart
In this paper, we show the correspondence existing between normalization in calculi with explicit substitution and cut elimination in sequent calculus for Linear Logic, via Proof Nets. This correspondence allows us to prove that a typed version of the #x-calculus [30, 29] is strongly normalizing, as well as of all the calculi isomorphic to it such as # # [24], # s [19], # d [21], and # f [11]. In order to achieve this result, we introduce a new notion of reduction in Proof Nets: this extended reduction is still confluent and strongly normalizing, and is of interest of its own, as it correspond to more identifications of proofs in Linear Logic that differ by inessential details. These results show that calculi with explicit substitutions are really an intermediate formalism between lambda calculus and proof nets, and suggest a completely new way to look at the problems still open in the field of explicit substitutions.
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...
Preservation of Strong Normalisation for Explicit Substitution
, 1995
"... this paper is different and has been invented independently of the proofs in [Kamareddine & Rios 95] and [BBLR 95]. We show by means of a counterexample that an extension of exp with certain interaction between substitutions does not preserve strong normalisation. In appendix A we use a more common ..."
Abstract
-
Cited by 15 (2 self)
- Add to MetaCart
this paper is different and has been invented independently of the proofs in [Kamareddine & Rios 95] and [BBLR 95]. We show by means of a counterexample that an extension of exp with certain interaction between substitutions does not preserve strong normalisation. In appendix A we use a more common notation trying to determine the borderline between preservation of strong normalisation and interaction of substitutions. 2 The calculus
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

