Back to Search
Start Over
Explicit Refinement Types
- Source :
- Proceedings of the ACM on Programming Languages, 2023, Volume 7, Issue ICFP, Article Number 195, pages 187-214
- Publication Year :
- 2023
-
Abstract
- We present {\lambda}ert, a type theory supporting refinement types with explicit proofs. Instead of solving refinement constraints with an SMT solver like DML and Liquid Haskell, our system requires and permits programmers to embed proofs of properties within the program text, letting us support a rich logic of properties including quantifiers and induction. We show that the type system is sound by showing that every refined program erases to a simply-typed program, and by means of a denotational semantics, we show that every erased program has all of the properties demanded by its refined type. All of our proofs are formalised in Lean 4.<br />Comment: 31 pages, published at ICFP 2023
- Subjects :
- Computer Science - Programming Languages
D.3.1
D.3.4
F.3.2
F.3.1
Subjects
Details
- Database :
- arXiv
- Journal :
- Proceedings of the ACM on Programming Languages, 2023, Volume 7, Issue ICFP, Article Number 195, pages 187-214
- Publication Type :
- Report
- Accession number :
- edsarx.2311.13995
- Document Type :
- Working Paper
- Full Text :
- https://doi.org/10.1145/3607837