A Graded Dependent Type System with a Usage-Aware Semantics
summary
Presents Grad, a dependent type calculus with natural-number grades and separate demand contexts for terms and types, plus a heap-based reduction using graded heaps that enforces substituting exactly q occurrences. Proves a usage-aware soundness theorem: if a heap meets a context then evaluation never gets stuck, letting the authors derive standard type soundness, safe erasure of 0-graded arguments, non-interference of irrelevant resources and a single-pointer property for linear resources; mechanization and the POPL 2021 paper provide full proofs and examples.
AI-written summary · about
chapters (22)
- 0:00Intro
- 0:49Making Sandwich
- 1:46Grades: Precise Description of Demands
- 2:50Graded Type Theory: A Brief Introduction
- 5:06Why Graded Dependent Type Theory? Linearity and Dependent Types
- 6:29Why Graded Dependent Type Theory? Erasure
- 7:29Why Graded Dependent Type Theory? Some "Free Theorems"
- 8:49A Graded Simple Calculus: What do we need?
- 9:53A Graded Simple Calculus: Type System
- 11:57Graded Type System: From Simple to Dependent
- 14:58Principles of Counting Demand: A Comparison
- 17:29GRAD: A Graded Dependent Type System
- 18:21GRAD: Type Soundness
- 19:13GRAD: Soundness of Demand Tracking?
- 20:26GRAD: A Graded Heap Semantics
- 21:51GRAD: Heap Reduction Relation
- 23:49GRAD: Formal Soundness Theorem
- 25:24GRAD: Soundness Example
- 26:42GRAD: A Free Theorem
- 28:54GRAD: Soundness Applications
- 29:40Summary: What and How is GRAD?
- 30:18Summary: Why GRAD?
