Section: New Results
Labeled Lambda-Calculus and Variants
Participants : Tomasz Blanc, Jean-Jacques Lévy, Luc Maranget.
We introduced a new property of the labeled lambda-calculus:
context irreversibility . We have
if and only
if
. This property shows that when a (labeled) context
disappears at one point of a reduction, this disappearance is
irreversible: the context cannot be rebuilt in the reduction that
follows. In the (unlabeled) lambda-calculus, this property is false:
we have (
x.xy)y
yy and
x.xy¬
y . Lévy
had put in light in his thesis that syntactic coincidences might occur
in the lambda-calculus [36] . These coincidences are
responsible for the loss of context irreversibility in the unlabeled
calculus. Context irreversibility is similar to time irreversibility:
labeled contexts can be used to time-stamp a reduction.
We examined two variants of the lambda-calculus. In the lambda-calculus by value, only redexes whose right part is a value (i.e. an abstraction) are contracted. The labels express the property of stability in the lambda-calculus but not in the lambda-calculus by value. We adapted the labels to recover this property. The lambda-calculus by value and the labeled lambda-calculus by value are confluent and verify the theorems of finite developments and standardization (although the definition of a standard reduction is adapted). To prove finite developments, we used an elegant, intuitive technique based on a notion of future redex imbrication .
We also examined the weak lambda-calculus. Although its syntactic
properties did not receive great attention in the past decades, this
theory is more relevant for the implementation of programming
languages than the usual theory of the strong
lambda-calculus. Contrary to the latter and similarly to lazy
functional languages, the weak lambda-calculus does not validate the
-rule i.e. the reduction under a lambda-abstraction. Without this
rule, the weak lambda-calculus is not confluent. We based our labeled
language on a variant of the weak lambda-calculus by the
Çağman and Hindley for Combinatory
Logic [30] . In this variant, a new
-rule is
valid: it allows reductions under lambda-abstraction in sub-terms that
do not contain a bound variable. This variant enjoys confluence. We
proposed a labeling of this language that expresses a confluent
theory of reductions with sharing, independent of the reduction
strategy. If the sub-terms of a term are initially labeled with
distinct letters, then, after some steps of reduction, two sub-terms
that have the same label are equal. This formal setting corresponds to
the shared evaluation strategy by Wadsworth defined with dags in
1971. This work was published on the occasion of Jan Willem Klop's
60th birthday [13] . A slightly simplified version of this
work, context irreversibility and the labeled lambda-calculus by
value are presented in Tomasz Blanc's thesis [11] .