Revisiting Iso-Recursive Subtyping
summary
Presents a new declarative finite unfolding specification that says two mu-types are subtypes iff all same-depth finite unfoldings are subtypes, proves the classic Amber rules sound relative to it, and derives a double unfolding algorithm (and an equivalent nominal unfolding) that is sound, complete and decidable. All metatheory — equivalence proofs, reflexivity derivation, easier transitivity proofs and extensions to polymorphism — is mechanized in Coq, targeting unrestricted iso-recursive types.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 0:23Recursive types background
- 3:16Recursive subtyping history
- 6:25Issues with ISO Amber rules
- 8:34Intuitions behind subtyping
- 9:40Unfolding rule specification
- 12:29Comparison with active subtyping
- 12:50Advantages of new spec
- 13:11Double unfolding rule
- 14:36Nominal unfolding rule
- 15:39Positive subtyping rule
- 16:00Equivalence and extensibility
- 16:20Follow-up works
- 17:11Acknowledgments
- 18:03Q&A
- 18:32Generic recursive types
- 20:42Polymorphic systems
- 21:24Mutually recursive types
- 22:26Closing remarks
