(Leftmost-Outermost) Beta Reduction is Invariant, Indeed
Beniamino Accattoli (INRIA), Ugo Dal Lago (University of Bologna &, INRIA)

TL;DR
This paper proves that leftmost-outermost beta reduction in lambda calculus is an invariant cost model, establishing a machine-independent measure of computational complexity based on derivation length, and introduces useful reductions to handle size explosion.
Contribution
It introduces a new invariant cost model for lambda calculus based on leftmost-outermost derivations and develops useful reductions to manage size explosion issues.
Findings
Leftmost-outermost beta reduction is invariant under reasonable machine models.
The linear substitution calculus (LSC) provides a suitable framework for invariant evaluation.
Useful reductions prevent size explosion, ensuring linear relation between evaluation steps and output size.
Abstract
Slot and van Emde Boas' weak invariance thesis states that reasonable machines can simulate each other within a polynomially overhead in time. Is lambda-calculus a reasonable machine? Is there a way to measure the computational complexity of a lambda-term? This paper presents the first complete positive answer to this long-standing problem. Moreover, our answer is completely machine-independent and based over a standard notion in the theory of lambda-calculus: the length of a leftmost-outermost derivation to normal form is an invariant cost model. Such a theorem cannot be proved by directly relating lambda-calculus with Turing machines or random access machines, because of the size explosion problem: there are terms that in a linear number of steps produce an exponentially long output. The first step towards the solution is to shift to a notion of evaluation for which the length and the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
