Focusing on Refinement Typing (TOPLAS)
summary
A logically principled system that combines value-determined indices, focalized call-by-push-value, bidirectional typing and polarized subtyping generates SMT constraints for refinement types without leaving unsolvable existential unification variables; the algorithm solves all evars by the end of focusing stages, is decidable, and is proved sound and complete. Declarative typing is given a denotational CBPV semantics, yielding type soundness, logical consistency and total correctness (including pattern cover); examples show it synthesizes concrete sum and length indices for lists.
AI-written summary · about
chapters (12)
- 0:00Introduction to refinement typing
- 0:46Manual refinements to measures
- 2:32Challenges with fancy types
- 3:59Append function with indices
- 4:41Filter function with refinements
- 6:28Refinement type grammar
- 8:31Index solving system
- 10:18Denotational semantics
- 12:25Logical consistency
- 13:08Empirical evidence FLUX
- 13:30Summary and future
- 14:35Q&A
