There are two well-known formulations of recursive types: iso-recursive and
equi-recursive types. Abadi and Fiore [1996] have shown that iso- and equi-recursive types have the same expressive power. However, their encoding of equi-recursive types in terms of iso-recursive types requires explicit coercions. These coercions come with significant additional computational overhead, and complicate reasoning about the equivalence of the two formulations of recursive types.
This paper proposes a generalization of iso-recursive types called full iso-recursive types. Full iso-recursive types allow encoding all programs with equi-recursive types without computational overhead. Instead of explicit term coercions, all type transformations are captured by computationally irrelevant casts, which can be erased at runtime without affecting the semantics of the program. Consequently, reasoning about the equivalence between the two approaches can be greatly simplified. We present a calculus called $\lambda^{\mu}{Fi}$, which extends the simply typed lambda calculus (STLC) with full iso-recursive types. The $\lambda^{\mu}{Fi}$ calculus is proved to be type sound, and shown to have the same expressive power as a calculus with equi-recursive types. We also extend our results to subtyping, and show that equi-recursive subtyping can be expressed in terms of iso-recursive subtyping with cast operators.
Fri 25 OctDisplayed time zone: Pacific Time (US & Canada) change
13:50 - 15:30 | Types and Gradual Typing 2OOPSLA 2024 at Pasadena Chair(s): Fabian Muehlboeck Australian National University | ||
13:50 20mTalk | Degrees of Separation: A Flexible Type System for Safe Concurrency OOPSLA 2024 DOI | ||
14:10 20mTalk | Full Iso-recursive Types OOPSLA 2024 Litao Zhou University of Hong Kong, Qianyong Wan The University of Hong Kong, Bruno C. d. S. Oliveira University of Hong Kong DOI | ||
14:30 20mTalk | Gradually Typed Languages Should Be Vigilant! OOPSLA 2024 Olek Gierczak Northeastern University, Lucy Menon Northeastern University, Christos Dimoulas Northwestern University, Amal Ahmed Northeastern University, USA DOI | ||
14:50 20mTalk | Merging Gradual Typing OOPSLA 2024 Wenjia Ye National University of Singapore, Bruno C. d. S. Oliveira University of Hong Kong, MatÃas Toro University of Chile DOI | ||
15:10 20mTalk | Persimmon: Nested Family Polymorphism with Extensible Variant Types OOPSLA 2024 Anastasiya Kravchuk-Kirilyuk Harvard University, Gary Feng University of Waterloo, Jonas Iskander Harvard University, Yizhou Zhang University of Waterloo, Nada Amin Harvard University DOI |