English

Extensional and Non-extensional Functions as Processes

Logic in Computer Science 2025-09-17 v4 Programming Languages

Abstract

Following Milner's seminal paper, the representation of functions as processes has received considerable attention. For pure λ\lambda-calculus, the process representations yield (at best) non-extensional λ\lambda -theories (i.e., β\beta rule holds, whereas η\eta does not). In the paper, we study how to obtain extensional representations, and how to move between extensional and non-extensional representations. Using Internal π\pi, Iπ\mathrm{I}\pi (a subset of the π\pi-calculus in which all outputs are bound), we develop a refinement of Milner's original encoding of functions as processes that is parametric on certain abstract components called wires. These are, intuitively, processes whose task is to connect two end-point channels. We show that when a few algebraic properties of wires hold, the encoding yields a λ\lambda-theory. Exploiting the symmetries and dualities of Iπ\mathrm{I}\pi, we isolate three main classes of wires. The first two have a sequential behaviour and are dual of each other; the third has a parallel behaviour and is the dual of itself. We show the adoption of the parallel wires yields an extensional λ\lambda-theory; in fact, it yields an equality that coincides with that of B\"ohm trees with infinite η\eta. In contrast, the other two classes of wires yield non-extensional λ\lambda-theories whose equalities are those of the L\'evy-Longo and B\"ohm trees.

Keywords

Cite

@article{arxiv.2405.03536,
  title  = {Extensional and Non-extensional Functions as Processes},
  author = {Ken Sakayori and Davide Sangiorgi},
  journal= {arXiv preprint arXiv:2405.03536},
  year   = {2025}
}
R2 v1 2026-06-28T16:18:11.465Z