Abstract
AbstractModern constructive type theory is based on pure dependently typed lambda calculus, augmented with user-defined datatypes. This paper presents an alternative called the Calculus of Dependent Lambda Eliminations, based on pure lambda encodings with no auxiliary datatype system. New typing constructs are defined that enable induction, as well as large eliminations with lambda encodings. These constructs are constructor-constrained recursive types, and a lifting operation to lift simply typed terms to the type level. Using a lattice-theoretic denotational semantics for types, the language is proved logically consistent. The power of CDLE is demonstrated through several examples, which have been checked with a prototype implementation called Cedille.
Publisher
Cambridge University Press (CUP)
Reference56 articles.
1. Norell U. (2007) Towards a Practical Programming Language Based on Dependent Type Theory. PhD Thesis, Department of Computer Science and Engineering, Chalmers University of Technology, SE-412 96 Göteborg, Sweden.
2. System Description: Twelf — A Meta-Logical Framework for Deductive Systems
3. Extensional models for polymorphism
Cited by
18 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Dependent Ghosts Have a Reflection for Free;Proceedings of the ACM on Programming Languages;2024-08-15
2. Some Remarks About Dependent Type Theory;The French School of Programming;2023-10-11
3. Impredicative Encodings of Inductive-Inductive Data in Cedille;Lecture Notes in Computer Science;2023
4. Monotone recursive types and recursive data representations in Cedille;Mathematical Structures in Computer Science;2021-06
5. Zero-Cost Constructor Subtyping;IFL 2020: Proceedings of the 32nd Symposium on Implementation and Application of Functional Languages;2020-09-02