A simpler encoding of indexed types
Tesla Zhang

TL;DR
This paper introduces a simplified approach to indexed types in functional programming, making pattern matching easier by explicitly specifying constructor selection, and analyzes its expressiveness and limitations.
Contribution
It proposes a simplified version of indexed types with explicit constructor selection, reducing complexity in pattern matching and exploring its theoretical properties.
Findings
Simplified indexed types facilitate easier pattern matching.
Explicit constructor selection clarifies the type system.
The approach has specific expressiveness limitations.
Abstract
In functional programming languages, generalized algebraic data types (GADTs) are very useful as the unnecessary pattern matching over them can be ruled out by the failure of unification of type arguments. In dependent type systems, this is usually called indexed types and it's particularly useful as the identity type is a special case of it. However, pattern matching over indexed types is very complicated as it requires term unification in general. We study a simplified version of indexed types (called simpler indexed types) where we explicitly specify the selection process of constructors, and we discuss its expressiveness, limitations, and properties.
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 · Logic, Reasoning, and Knowledge · Formal Methods in Verification
