Flattening subtyping by eta expansion
Jana Dunfield

TL;DR
This paper explores how eta-expansion can replace deep subtyping in type systems, simplifying reasoning and design by transforming complex subtyping relations into more manageable forms.
Contribution
It provides a comprehensive tutorial, historical context, and formal proof for using eta-expansion to avoid deep subtyping in type system design.
Findings
Eta-expansion can effectively replace deep subtyping in type systems.
The paper offers a complete proof of the eta-expansion technique.
Discussion on how eta-expansion simplifies type system reasoning.
Abstract
To design type systems that use subtyping, we have to make tradeoffs. Deep subtyping is more expressive than shallow subtyping, because deep subtyping compares the entire structure of types. However, shallow subtyping is easier to reason about. By eta-expanding source programs, we can get the effect of deep subtyping with less of its complexity. An early paper on filter models (Barendregt et al. 1983) examined two similar intersection type systems. The first included a subsumption rule that used a rich subtyping relation, including multiple rules for the top type and a distributivity rule. Their second type system dropped the subsumption rule, but added a rule that allowed a term to be eta-expanded before typing it. This rule in their second type system compensated for the lack of subsumption: where their first type system used subtyping to manipulate intersections deep inside types,…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsManufacturing Process and Optimization
