Results 1  10
of
10
SUBSEXPL: a Tool for Simulating and Comparing Explicit Substitutions Calculi
 Proc. 6th IEEE Symp
, 2006
"... Abstract In this tutorial we present the system SUBSEXPL that is used for simulating and comparing explicit substitutions calculi. This framework was developed in Ocaml, a language of the ML family, and it allows the manipulation of expressions of the λcalculus and of several styles of explicit su ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract In this tutorial we present the system SUBSEXPL that is used for simulating and comparing explicit substitutions calculi. This framework was developed in Ocaml, a language of the ML family, and it allows the manipulation of expressions of the λcalculus and of several styles of explicit substitutions calculi. Applications of this framework include: the visualisation of the contractions of the λcalculus, and of guided onestep reductions and normalisation via each of the associated substitution calculi. Many useful facilities are available: reductions can be easily recorded and stored into files, latex output and useful examples for dealing with, among other things, arithmetic operations and computational operators such as conditionals and repetitions in the λcalculus. The current implementation of SUBSEXPL includes treatment of three different calculi of explicit substitutions: the λσ, the λs e , the suspension calculus and a refinement of the suspension calculus called combining suspension calculus which allows for combination of steps of βcontraction; other explicit substitutions calculi can be easily incorporated into the system. An implementation of the ηreduction is provided for each of these explicit substitutions calculi. This system has been of great help for systematically comparing explicit substitutions calculi, as well as for understanding properties of explicit substitutions such as the Preservation of Strong Normalisation. In addition, it has been used for teaching basic properties of the λcalculus such as: computational adequacy, the importance of de Bruijn's notation and of making explicit substitutions in real implementations based on the λcalculus.
SUBSEXPL: A Framework for Simulating and Comparing Explicit Substitutions Calculi A Tutorial
, 2005
"... In this paper we present a framework, called SUBSEXPL, for simulating and comparing explicit substitutions calculi. This framework was developed in Ocaml, a language of the ML family, and it allows the manipulation of expressions of the λcalculus and of several styles of explicit substitutions calc ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
In this paper we present a framework, called SUBSEXPL, for simulating and comparing explicit substitutions calculi. This framework was developed in Ocaml, a language of the ML family, and it allows the manipulation of expressions of the λcalculus and of several styles of explicit substitutions calculi. Applications of this framework include: the visualisation of the contractions of the λcalculus, and of guided onestep reductions and normalisation via each of the associated substitution calculi. Many useful facilities are available: reductions can be easily recorded and stored into files, latex output and useful examples for dealing with, among other things, arithmetic operations and computational operators such as conditionals and repetitions in the λcalculus. The current implementation of SUBSEXPL includes treatment of three different calculi of explicit substitutions: the λσ, the λse and the suspension calculus; other explicit substitutions calculi can be easily incorporated into the system. An implementation of the ηreduction is provided for each of these explicit substitutions calculi. This system has been of great help for systematically comparing explicit substitutions calculi, as well as for understanding properties of explicit substitutions such as the Preservation of Strong Normalisation. In addition, it has been used for teaching basic properties of the λcalculus such as: computational adequacy, the importance of de Bruijn’s notation and of making explicit substitutions in real implementations based on the λcalculus. Keywords: λCalculus, Explicit Substitutions, Visualisation of β and ηContraction and Normalisation. 1
A Flexible Framework for Visualisation of Computational Properties of General Explicit Substitutions Calculi
, 2010
"... SUBSEXPL is a system originally developed to visualise reductions, simplifications and normalisations in three important calculi of explicit substitutions and has been applied to understand and explain properties of these calculi and to compare the different styles of making explicit the substitutio ..."
Abstract
 Add to MetaCart
(Show Context)
SUBSEXPL is a system originally developed to visualise reductions, simplifications and normalisations in three important calculi of explicit substitutions and has been applied to understand and explain properties of these calculi and to compare the different styles of making explicit the substitution operation in implementations of the λcalculus in de Bruijn notation. The system was developed in OCaml and now it can be executed inside the Emacs editor within a new mode which allows a very easy interaction. The use of special symbols makes its application very useful for students because the notation on the screen is as close as possible to that on the papers. In addition to λcalculus and explicit substitutions calculi in de Bruijn notation, now it is possible to work with the λcalculus with variables as names and with several calculi of explicit substitutions using also representation of variables with names. Moreover, in contrast to the original version of the system, that was restricted to three specific calculi of explicit substitution, the new version allows the inclusion of new calculi by giving as input their grammatical descriptions. SUBSEXPL has been used with success for teaching basic properties of the λcalculus and for illustrating the computational impact of selecting one kind of representation of variables (either names or indices) and a specific style of making explicit substitutions in real implementations based on the λcalculus. Keywords: Term rewriting systems, calculi of explicit substitutions, λcalculi
Explicit Substitutions Calculi with One Step Etareduction Decided Explicitly
"... It has long been argued that the notion of substitution in the λcalculus needs to be made explicit. This resulted in many calculi have been developed in which the computational steps of the substitution operation involved in βcontractions have been atomised. In contrast to the great variety of dev ..."
Abstract
 Add to MetaCart
It has long been argued that the notion of substitution in the λcalculus needs to be made explicit. This resulted in many calculi have been developed in which the computational steps of the substitution operation involved in βcontractions have been atomised. In contrast to the great variety of developments for making explicit formalisations of the Beta rule, less work has been done for giving explicit definitions of the conditional Eta rule. In this paper constructive Eta rules are proposed for both the λσ and the λsecalculi of explicit substitutions. Our results can be summarised as follows: 1) we introduce constructive and explicit definitions of the Eta rule in the λσ and the λsecalculi, 2) we prove that these definitions are correct and preserve basic properties such as subject reduction. In particular, we show that the explicit definitions of the eta rules coincide with the Eta rule for pure λterms and that moreover, their application is decidable in the sense that Eta redices are effectively detected (and contracted). The formalisation of these Eta rules involves the development of specific calculi for explicitly checking the condition of the proposed Eta rules while constructing the Eta contractum.
HigherOrder Unification: A structural relation between Huet’s
"... method and the one based on explicit substitutions ⋆ ..."
† Supported by the Brazilian Ministry Educational Council CAPES.
"... SUBSEXPL: a tool for simulating and comparing explicit substitutions calculi 1 ..."
Abstract
 Add to MetaCart
SUBSEXPL: a tool for simulating and comparing explicit substitutions calculi 1
ThirdOrder Matching via Explicit Substitutions
"... Abstract. We show how Dowek’s thirdorder matching decision procedure can be adapted to the simply typed λσcalculus of explicit substitutions. The advantages of this approach include being closer to lowlevel implementations based on the λcalculus, where substitution has to be made explicit. The ..."
Abstract
 Add to MetaCart
Abstract. We show how Dowek’s thirdorder matching decision procedure can be adapted to the simply typed λσcalculus of explicit substitutions. The advantages of this approach include being closer to lowlevel implementations based on the λcalculus, where substitution has to be made explicit. The work is done by, firstly, reducing matching problems to interpolation problems in the language of the λσcalculus and, secondly, showing that if an interpolation problem has a solution then it is possible to find a solution which depends only on a measure of the structure of the initial matching problem, where this measure is based on the notion of λσBöhm trees. 1
Explicit Substitutions Calculi with Explicit Eta Rules
"... It has been argued that the notion of substitution in the λcalculus needs to be made explicit and many calculi have been developed in which the computational steps of the substitution operation involved in βcontractions have been atomised. In contrast to the great variety of developments for makin ..."
Abstract
 Add to MetaCart
It has been argued that the notion of substitution in the λcalculus needs to be made explicit and many calculi have been developed in which the computational steps of the substitution operation involved in βcontractions have been atomised. In contrast to the great variety of developments for making explicit formalisations of the Beta rule, less work has been done for giving explicit definitions of the conditional Eta rule. In this paper constructive Eta rules are proposed for both the λσ and the λsecalculi of explicit substitutions. Our results can be summarised as follows: 1) we introduce constructive and explicit definitions of the Eta rule in the λσ and the λsecalculi, 2) we prove that these definitions are correct and preserve basic properties such as subject reduction. In particular, we show that the explicit definitions of the eta rules coincide with the Eta rule for pure λterms and that moreover, their application is decidable in the sense that Eta redexes are effectively detected (and contracted). The formalisation of these Eta rules involves the development of specific calculi for explicitly checking the condition of the proposed Eta rules while constructing the Eta contractum.
SecondOrder Matching via Explicit Substitutions ⋆
"... Abstract. Matching is a basic operation extensively used in computation. Secondorder matching, in particular, provides an adequate environment for expressing program transformations and pattern recognition for automated deduction. The past few years have established the benefit of using explicit su ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Matching is a basic operation extensively used in computation. Secondorder matching, in particular, provides an adequate environment for expressing program transformations and pattern recognition for automated deduction. The past few years have established the benefit of using explicit substitutions for theorem proving and higherorder unification. In this paper, we will make use of explicit substitutions to facilitate matching: we develop a secondorder matching algorithm via the λσstyle of explicit substitutions. We introduce a convenient notation for matching in the λσcalculus. This notation keeps the matching equations separated from the incremental graftings. We characterise an important class of secondorder matching problems which is essential to prove termination of the algorithm. In addition, we illustrate how the algorithm works through some examples.
Principal Typings for Explicit Substitutions Calculi ⋆
"... Abstract. Having principal typings (for short PT) is an important property of type systems. In simply typed systems, this property guarantees the possibility of a complete and terminating type inference mechanism. It is wellknown that the simply typed λcalculus has this property but recently J.B. ..."
Abstract
 Add to MetaCart
Abstract. Having principal typings (for short PT) is an important property of type systems. In simply typed systems, this property guarantees the possibility of a complete and terminating type inference mechanism. It is wellknown that the simply typed λcalculus has this property but recently J.B. Wells has introduced a systemindependent definition of PT, which allows to prove that some type systems, e.g. the Hindley/Milner type system, do not satisfy PT. Explicit substitutions address a major computational drawback of the λcalculus and allow the explicit treatment of the substitution operation to formally correspond to its implementation. Several extensions of the λcalculus with explicit substitution have been given but some of which do not preserve basic properties such as the preservation of strong normalization. We consider two systems of explicit substitutions (λse and λσ) and show that they can be accommodated with an adequate notion of PT. Specifically, our results are as follows: • We introduce PT notions for the simply typed versions of the λse and the λσcalculi and prove that they agree with Wells ’ notion of PT. • We show that these versions satisfy PT by revisiting previously introduced type inference algorithms. Key Words: lambdacalculus, explicit substitution, principal typings 1