Evaluating functions as processes
Beniamino Accattoli (Carnegie Mellon University)

TL;DR
This paper explores the relationship between lambda-calculus evaluation strategies and their simulation in the pi-calculus, revealing a tight correspondence with linear weak head reduction and its call-by-value variant.
Contribution
It establishes a precise connection between environment-based abstract machine evaluation and linear weak head reduction in the pi-calculus context.
Findings
Evaluation via abstract machines aligns with linear weak head reduction.
The correspondence extends to call-by-value evaluation strategies.
The relation between lambda-calculus and pi-calculus simulations is as tight as possible.
Abstract
A famous result by Milner is that the lambda-calculus can be simulated inside the pi-calculus. This simulation, however, holds only modulo strong bisimilarity on processes, i.e. there is a slight mismatch between beta-reduction and how it is simulated in the pi-calculus. The idea is that evaluating a lambda-term in the pi-calculus is like running an environment-based abstract machine, rather than applying ordinary beta-reduction. In this paper we show that such an abstract-machine evaluation corresponds to linear weak head reduction, a strategy arising from the representation of lambda-terms as linear logic proof nets, and that the relation between the two is as tight as it can be. The study is also smoothly rephrased in the call-by-value case, introducing a call-by-value analogous of linear weak head reduction.
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.
