Please use this identifier to cite or link to this item: doi:10.22028/D291-38175
Title: The weak call-by-value λ-calculus is reasonable for both time and space
Author(s): Forster, Yannick
Kunze, Fabian
Roth, Marc
Language: English
Title: Proceedings of the ACM on Programming Languages
Volume: 4
Issue: POPL
Pages: 1-23
Publisher/Platform: Association for Computing Machinery
Year of Publication: 2020
Free key words: invariance thesis
lambda calculus
weak call-by-value reduction
time and space complexity
abstract machines
DDC notations: 004 Computer science, internet
Publikation type: Journal Article
Abstract: We study the weak call-by-value 𝜆-calculus as a model for computational complexity theory and establish the natural measures for time and space Ð the number of beta-reduction steps and the size of the largest term in a computation Ð as reasonable measures with respect to the invariance thesis of Slot and van Emde Boas from 1984. More precisely, we show that, using those measures, Turing machines and the weak call-by-value 𝜆-calculus can simulate each other within a polynomial overhead in time and a constant factor overhead in space for all computations terminating in (encodings of) łtruež or łfalsež. The simulation yields that standard complexity classes like 𝑃, NP, PSPACE, or EXP can be defined solely in terms of the 𝜆-calculus, but does not cover sublinear time or space. Note that our measures still have the well-known size explosion property, where the space measure of a computation can be exponentially bigger than its time measure. However, our result implies that this exponential gap disappears once complexity classes are considered instead of concrete computations. We consider this result a first step towards a solution for the long-standing open problem of whether the natural measures for time and space of the 𝜆-calculus are reasonable. Our proof for the weak call-by-value 𝜆-calculus is the first proof of reasonability (including both time and space) for a functional language based on natural measures and enables the formal verification of complexity-theoretic proofs concerning complexity classes, both on paper and in proof assistants. The proof idea relies on a hybrid of two simulation strategies of reductions in the weak call-by-value 𝜆-calculus by Turing machines, both of which are insufficient if taken alone. The first strategy is the most naive one in the sense that a reduction sequence is simulated precisely as given by the reduction rules; in particular, all substitutions are executed immediately. This simulation runs within a constant overhead in space, but the overhead in time might be exponential. The second strategy is heap-based and relies on structure sharing, similar to existing compilers of eager functional languages. This strategy only has a polynomial overhead in time, but the space consumption might require an additional factor of log𝑛, which is essentially due to the size of the pointers required for this strategy. Our main contribution is the construction and verification of a space-aware interleaving of the two strategies, which is shown to yield both a constant overhead in space and a polynomial overhead in time.
DOI of the first publication: 10.1145/3371095
URL of the first publication: https://dl.acm.org/doi/10.1145/3371095
Link to this record: urn:nbn:de:bsz:291--ds-381755
hdl:20.500.11880/34466
http://dx.doi.org/10.22028/D291-38175
ISSN: 2475-1421
Date of registration: 23-Nov-2022
Description of the related object: Supplemental Material
Related object: https://dl.acm.org/action/downloadSupplement?doi=10.1145%2F3371095&file=a27-forster.webm
Faculty: MI - Fakultät für Mathematik und Informatik
Department: MI - Informatik
Professorship: MI - Prof. Dr. Gert Smolka
Collections:SciDok - Der Wissenschaftsserver der Universität des Saarlandes

Files for this record:
File Description SizeFormat 
3371095.pdf348,52 kBAdobe PDFView/Open


This item is licensed under a Creative Commons License Creative Commons