Explicit substitution calculi with de Bruijn indices and intersection type systems

2014 ◽  
Vol 23 (2) ◽  
pp. 295-340 ◽  
Author(s):  
D. L. Ventura ◽  
F. Kamareddine ◽  
M. Ayala-Rincon
Author(s):  
DANIEL FRIDLENDER ◽  
MIGUEL PAGANO

AbstractWe introduce a new formulation of pure type systems (PTSs) with explicit substitution and de Bruijn indices and formally prove some of its meta-theory. Using techniques based on Normalisation by Evaluation, we prove that untyped conversion can be typed for predicative PTSs. Although this equivalence was settled by Siles and Herbelin for the conventional presentation of PTSs, we strongly conjecture that our proof method can also be applied to PTSs with η.


2002 ◽  
Vol 45 (2) ◽  
pp. 187-201 ◽  
Author(s):  
F. Kamareddine

1998 ◽  
Vol 09 (03) ◽  
pp. 321-349
Author(s):  
FAIROUZ KAMAREDDINE

We show the soundness of a λ-calculus ℬ where de Bruijn indices are used, substitution is explicit, and reduction is step-wise. This is done by interpreting ℬ in the classical calculus where the explicit substitution becomes implicit and de Bruijn indices become named variables. This is the first flat semantics of explicit substitution and step-wise reduction and the first clear account of exactly when α-reduction is needed.


2001 ◽  
Vol 11 (1) ◽  
pp. 169-206 ◽  
Author(s):  
RENÉ DAVID ◽  
BRUNO GUILLAUME

Since Melliès showed that λσ (a calculus of explicit substitutions) does not preserve the strong normalization of the β-reduction, it has become a challenge to find a calculus satisfying the following properties: step-by-step simulation of the β-reduction, confluence on terms with metavariables, strong normalization of the calculus of substitutions and preservation of the strong normalization of the λ-calculus. We present here such a calculus. The main novelty of this calculus (given with de Bruijn indices) is the use of labels that represent updating functions and correspond to explicit weakening. A typed version is also presented.


10.37236/8579 ◽  
2019 ◽  
Vol 26 (4) ◽  
Author(s):  
Bernhard Gittenberger ◽  
Isabella Larcher

We consider two special subclasses of lambda-terms that are restricted by a bound on the number of abstractions between a variable and its binding lambda, the so-called De-Bruijn index, or by a bound on the nesting levels of abstractions, i.e., the number of De Bruijn levels, respectively. We show that the total number of variables is asymptotically normally distributed for both subclasses of lambda-terms with mean and variance asymptotically equal to $Cn$ and $\tilde{C}n$, respectively, where the constants $C$ and $\tilde{C}$ depend on the bound that has been imposed. For the class of lambda-terms with bounded De Bruijn index we derive closed formulas for the constant. For the other class of lambda-terms that we consider, namely lambda-terms with a bounded number of De Bruijn levels, we show quantitative and distributional results on the number of variables, as well as abstractions and applications, in the different De Bruijn levels and thereby exhibit a so-called "unary profile" that attains a very interesting shape.  Our results give a combinatorial explanation of an earlier discovered strange phenomenon exhibited by the counting sequence of this particular class of lambda-terms. 


2012 ◽  
Vol 22 (4-5) ◽  
pp. 614-704 ◽  
Author(s):  
NICOLAS POUILLARD ◽  
FRANÇOIS POTTIER

AbstractAtoms and de Bruijn indices are two well-known representation techniques for data structures that involve names and binders. However, using either technique, it is all too easy to make a programming error that causes one name to be used where another was intended. We propose an abstract interface to names and binders that rules out many of these errors. This interface is implemented as a library in Agda. It allows defining and manipulating term representations in nominal style and in de Bruijn style. The programmer is not forced to choose between these styles: on the contrary, the library allows using both styles in the same program, if desired. Whereas indexing the types of names and terms with a natural number is a well-known technique to better control the use of de Bruijn indices, we index types with worlds. Worlds are at the same time more precise and more abstract than natural numbers. Via logical relations and parametricity, we are able to demonstrate in what sense our library is safe, and to obtain theorems for free about world-polymorphic functions. For instance, we prove that a world-polymorphic term transformation function must commute with any renaming of the free variables. The proof is entirely carried out in Agda.


2001 ◽  
Vol 11 (1) ◽  
pp. 3-19 ◽  
Author(s):  
ROEL BLOO

We define an extension of pure type systems with explicit substitution. We show that the type systems with explicit substitution are strongly normalizing iff their ordinary counterparts are. Subject reduction is shown to fail in general but a weaker, though still useful, subject reduction property is established. A more complicated extension is proposed for which subject reduction does hold in general.


2017 ◽  
Vol 28 (9) ◽  
pp. 1541-1577 ◽  
Author(s):  
ROLY PERERA ◽  
JAMES CHENEY

We present a formalisation in Agda of the theory of concurrent transitions, residuation and causal equivalence of traces for the π-calculus. Our formalisation employs de Bruijn indices and dependently typed syntax, and aligns the ‘proved transitions’ proposed by Boudol and Castellani in the context of CCS with the proof terms naturally present in Agda's representation of the labelled transition relation. Our main contributions are proofs of the ‘diamond lemma’ for the residuals of concurrent transitions and a formal definition of equivalence of traces up to permutation of transitions.In the π-calculus, transitions represent propagating binders whenever their actions involve bound names. To accommodate these cases, we require a more general diamond lemma where the target states of equivalent traces are no longer identical, but are related by abraidingthat rewires the bound and free names to reflect the particular interleaving of events involving binders. Our approach may be useful for modelling concurrency in other languages where transitions carry meta-data sensitive to particular interleavings, such as dynamically allocated memory addresses.


Sign in / Sign up

Export Citation Format

Share Document