Results 1 
3 of
3
Preservation of Strong Normalisation in Named Lambda Calculi with Explicit Substitution and Garbage Collection
 IN CSN95: COMPUTER SCIENCE IN THE NETHERLANDS
, 1995
"... In this paper we introduce and study a new lambdacalculus with explicit substitution, lambdaxgc, 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 65 (7 self)
 Add to MetaCart
In this paper we introduce and study a new lambdacalculus with explicit substitution, lambdaxgc, 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 lambdaxgc is a conservative extension which preserves strong normalisation (PSN) of the untyped lambdacalculus. The result is obtained in a modular way by first proving it for garbagefree reduction and then extending to `reductions in garbage'. This provides insight into the counterexample to PSN for lambdasigma of Melliès (1995); we exploit the abstract nature of lambdaxgc 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.
Combinatory Reduction Systems with Explicit Substitution
 REWRITING TECHNIQUES AND APPLICATIONS (RTA), LECTURE NOTES IN COMPUTER SCIENCE
, 1996
"... We generalise the notion of explicit substitution from the lambdacalculus to higher order rewriting, realised by combinatory reduction systems (CRS). In this general framework this is achieved by identifying the "explicit" subclass of CRSs within which rewriting can be implemented efficiently.
Fo ..."
Abstract

Cited by 16 (2 self)
 Add to MetaCart
We generalise the notion of explicit substitution from the lambdacalculus to higher order rewriting, realised by combinatory reduction systems (CRS). In this general framework this is achieved by identifying the "explicit" subclass of CRSs within which rewriting can be implemented efficiently.
For every CRS R we show how to construct an explicit substitution variant, Rx, which is a conservative extension of R (and hence confluent when R is confluent). Furthermore we give a syntactic criterion on the rewrite rules that identifies a large subset of the CRSs, the redexpreserving CRSs, for which we show that Rx preserves strong normalisation of R.
We believe that this is a significant first step towards providing a methodology for reasoning about the operational properties of higherorder rewriting in general, and higherorder program transformations in particular, since confluence ensures correctness of such transformations and preservation of strong normalisation ensures that the transformations are always safe, in both cases independently of the used reduction strategy.