Fully Abstract Encodings of $λ$-Calculus in HOcore through Abstract Machines
Małgorzata Biernacka, Dariusz Biernacki, Sergueï Lenglet, Piotr Polesiuk, Damien Pous, Alan Schmitt
TL;DR
The paper addresses faithfully encoding the call-by-name and call-by-value $\lambda$-calculus into the minimal higher-order process calculus $HOcore$, despite its lack of name restriction. It fixes the evaluation strategy and internalizes three core notions of equivalence—normal-form bisimilarity, applicative bisimilarity, and contextual equivalence—via extended abstract machines (KAM/CK and their nf/bisimilarity variants) and then translates these machines into $HOcore$, proving full abstraction in each case. The technique scales to the $\lambda\mu$-calculus with control operators by extending the machines and translations accordingly, including handling of continuations and named binders. This shows that a compact process calculus with a finite set of hidden names suffices to faithfully encode essential operational and observational aspects of $\lambda$-calculus, including continuation-related features, and points toward automated derivations and cross-pollination with process-calculus proof techniques.
Abstract
We present fully abstract encodings of the call-by-name and call-by-value $λ$-calculus into HOcore, a minimal higher-order process calculus with no name restriction. We consider several equivalences on the $λ$-calculus side -- normal-form bisimilarity, applicative bisimilarity, and contextual equivalence -- that we internalize into abstract machines in order to prove full abstraction of the encodings. We also demonstrate that this technique scales to the $λμ$-calculus, i.e., a standard extension of the $λ$-calculus with control operators.
