An algorithm for optimal lambda calculus reduction
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Machine models and simulations
Handbook of theoretical computer science (vol. A)
Optimality and inefficiency: what isn't a cost model of the lambda calculus?
Proceedings of the first ACM SIGPLAN international conference on Functional programming
On the complexity of beta-reduction
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On global dynamics of optimal graph reduction
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
What is an Efficient Implementation of the \lambda-calculus?
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
An invariant cost model for the lambda calculus
CiE'06 Proceedings of the Second conference on Computability in Europe: logical Approaches to Computational Barriers
Quantitative models and implicit complexity
FSTTCS '05 Proceedings of the 25th international conference on Foundations of Software Technology and Theoretical Computer Science
Sharing in the weak lambda-calculus
Processes, Terms and Cycles
Realizability models and implicit complexity
Theoretical Computer Science
ACM Transactions on Computational Logic (TOCL)
Hi-index | 5.23 |
We define a new cost model for the call-by-value lambda-calculus satisfying the invariance thesis. That is, under the proposed cost model, Turing machines and the call-by-value lambda-calculus can simulate each other within a polynomial time overhead. The model only relies on combinatorial properties of the usual beta-reduction, without any reference to a specific machine or evaluator. In particular, the cost of a single beta reduction is proportional to the difference between the size of the redex and the size of the reduct. In this way, the total cost of normalizing a lambda term will take into account the size of all intermediate results (as well as the number of steps to normal form).