A Theory of Explicit Substitutions with Safe and Full Composition
Many different systems with explicit substitutions have been proposed to implement a large class of higher-order languages. Motivations and challenges that guided the development of such calculi in functional frameworks are surveyed in the first part of this paper. Then, very simple technology in named variable-style notation is used to establish a theory of explicit substitutions for the lambda-calculus which enjoys a whole set of useful properties such as full composition, simulation of one-step beta-reduction, preservation of beta-strong normalisation, strong normalisation of typed terms and confluence on metaterms. Normalisation of related calculi is also discussed.
💡 Research Summary
The paper surveys the motivations behind explicit‑substitution calculi and the challenges that arise when trying to faithfully implement higher‑order languages. Traditional λ‑calculus treats substitution as a meta‑operation, which makes it difficult to control evaluation strategies, memory management, and optimisation in concrete implementations. Over the years many explicit‑substitution systems have been proposed (λσ, λs, λse, λυ, etc.), each targeting a subset of desirable properties such as delayed substitution propagation, confluence, or compositionality. However, none of the existing systems simultaneously enjoys full composition, a one‑step simulation of β‑reduction, preservation of β‑strong normalisation, strong normalisation for typed terms, and confluence at the meta‑term level.
The authors introduce a new calculus built on a named‑variable syntax rather than de Bruijn indices. Terms are formed from variables, abstractions λx.M, applications M N, explicit substitution applications
Comments & Academic Discussion
Loading comments...
Leave a Comment