Monotone recursive types and recursive data representations in Cedille
From MaRDI portal
Publication:5076393
Abstract: Guided by Tarksi's fixpoint theorem in order theory, we show how to derive monotone recursive types with constant-time roll and unroll operations within Cedille, an impredicative, constructive, and logically consistent pure typed lambda calculus. This derivation takes place within the preorder on Cedille types induced by type inclusions, a notion which is expressible within the theory itself. As applications, we use monotone recursive types to generically derive two recursive representations of data in lambda calculus, the Parigot and Scott encoding. For both encodings, we prove induction and examine the computational and extensional properties of their destructor, iterator, and primitive recursor in Cedille. For our Scott encoding in particular, we translate into Cedille a construction due to Lepigre and Raffalli that equips Scott naturals with primitive recursion, then extend this construction to derive a generic induction principle. This allows us to give efficient and provably unique (up to function extensionality) solutions for the iteration and primitive recursion schemes for Scott-encoded data.
Recommendations
- Efficient Mendler-style lambda-encodings in Cedille
- Efficient lambda encodings for Mendler-style coinductive types in Cedille
- Tarski's fixed-point theorem and lambda calculi with monotone inductive types
- Monotone (co)inductive types and positive fixed-point types
- scientific article; zbMATH DE number 1841846
Cites work
- A discrimination algorithm inside --calculus
- A fixpoint theorem for complete categories
- A lattice-theoretical fixpoint theorem and its applications
- Efficiency of lambda-encodings in total type theory
- Efficient Mendler-style lambda-encodings in Cedille
- Fixed point theorems and semantics: A folk tale
- From realizability to induction via dependent intersection
- Generic fibrational induction
- scientific article; zbMATH DE number 1722653 (Why is no real title available?)
- scientific article; zbMATH DE number 1722663 (Why is no real title available?)
- scientific article; zbMATH DE number 5852776 (Why is no real title available?)
- scientific article; zbMATH DE number 1342219 (Why is no real title available?)
- scientific article; zbMATH DE number 1343506 (Why is no real title available?)
- scientific article; zbMATH DE number 1354162 (Why is no real title available?)
- scientific article; zbMATH DE number 1956503 (Why is no real title available?)
- scientific article; zbMATH DE number 2087442 (Why is no real title available?)
- scientific article; zbMATH DE number 3304914 (Why is no real title available?)
- Innovations in computational type theory using Nuprl
- Iteration and coiteration schemes for higher-order and nested datatypes
- Lectures on the Curry-Howard isomorphism
- Recursive programming with proofs
- Safe zero-cost coercions for Haskell
- Syntax and semantics of quantitative type theory
- Tarski's fixed-point theorem and lambda calculi with monotone inductive types
- The calculus of dependent lambda eliminations
- Type fixpoints, iteration vs. recursion
- Types and programing languages
Cited in
(4)
This page was built for publication: Monotone recursive types and recursive data representations in Cedille
Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q5076393)