English

Interaction Equivalence

Logic in Computer Science 2024-11-26 v3 Programming Languages

Abstract

Contextual equivalence is the de facto standard notion of program equivalence. A key theorem is that contextual equivalence is an equational theory. Making contextual equivalence more intensional, for example taking into account the time cost of the computation, seems a natural refinement. Such a change, however, does not induce an equational theory, for an apparently essential reason: cost is not invariant under reduction. In the paradigmatic case of the untyped λ\lambda-calculus, we introduce interaction equivalence. Inspired by game semantics, we observe the number of interaction steps between terms and contexts but -- crucially -- ignore their own internal steps. We prove that interaction equivalence is an equational theory and we characterize it as BB, the well-known theory induced by B\"ohm tree equality. Ours is the first observational characterization of BB obtained without enriching the discriminating power of contexts with extra features such as non-determinism. To prove our results, we develop interaction-based refinements of the B\"ohm-out technique and of intersection types.

Keywords

Cite

@article{arxiv.2409.18709,
  title  = {Interaction Equivalence},
  author = {Beniamino Accattoli and Adrienne Lancelot and Giulio Manzonetto and Gabriele Vanoni},
  journal= {arXiv preprint arXiv:2409.18709},
  year   = {2024}
}

Comments

Version with proof Appendix of the POPL 2025 paper with the same title