Course-of-Value Induction in Cedille
Denis Firsov, Larry Diehl, Christopher Jenkins, Aaron Stump

TL;DR
This paper introduces a lambda-encoding of inductive datatypes in Cedille that supports course-of-value induction, enabling access to inductive hypotheses at arbitrary depths, with formal proofs of correctness.
Contribution
It extends Cedille with a novel lambda-encoding for course-of-value induction, providing a formal foundation and practical examples.
Findings
Successfully derived course-of-value datatypes in Cedille
Proved Lambek's lemma for the new datatypes
Characterized the computational behavior of the induction principle
Abstract
In the categorical setting, histomorphisms model a course-of-value recursion scheme that allows functions to be defined using arbitrary previously computed values. In this paper, we use the Calculus of Dependent Lambda Eliminations (CDLE) to derive a lambda-encoding of inductive datatypes that admits course-of-value induction. Similar to course-of-value recursion, course-of-value induction gives access to inductive hypotheses at arbitrary depth of the inductive arguments of a function. We show that the derived course-of-value datatypes are well-behaved by proving Lambek's lemma and characterizing the computational behavior of the induction principle. Our work is formalized in the Cedille programming language and also includes several examples of course-of-value functions.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Logic, Reasoning, and Knowledge · Formal Methods in Verification
