On the Semantic Expressiveness of Iso- and Equi-Recursive Types
Dominique Devriese, Eric Mark Martin, Marco Patrignani

TL;DR
This paper demonstrates that iso-recursive and equi-recursive types in simply-typed lambda calculus are equally expressive, both matching the expressiveness of term-level recursion through full abstraction proofs.
Contribution
It provides the first semantic comparison showing iso- and equi-recursive types are equally expressive, extending understanding beyond type inference implications.
Findings
Iso- and equi-recursive types are equally expressive.
Both formulations are as expressive as term-level recursion.
Results likely extend to more complex type systems like System F.
Abstract
Recursive types extend the simply-typed lambda calculus (STLC) with the additional expressive power to enable diverging computation and to encode recursive data-types (e.g., lists). Two formulations of recursive types exist: iso-recursive and equi-recursive. The relative advantages of iso- and equi-recursion are well-studied when it comes to their impact on type-inference. However, the relative semantic expressiveness of the two formulations remains unclear so far. This paper studies the semantic expressiveness of STLC with iso- and equi-recursive types, proving that these formulations are equally expressive. In fact, we prove that they are both as expressive as STLC with only term-level recursion. We phrase these equi-expressiveness results in terms of full abstraction of three canonical compilers between these three languages (STLC with iso-, with equi-recursive types and with…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Software Engineering Research · Logic, Reasoning, and Knowledge
