Bootstrapping Inductive and Coinductive Types in HasCASL
Lutz Schr\"oder

TL;DR
This paper explores how inductive and coinductive types can be constructed within HasCASL, using type class mechanisms and categorical methods to ensure their consistency and support for finite and infinite structures.
Contribution
It introduces a novel approach to defining datatypes and process types in HasCASL via bootstrapping, extending categorical results to quasitoposes and avoiding the need for unique choice.
Findings
Types of finite and infinite trees are constructed within HasCASL.
Constructions support initial algebras and final coalgebras in quasitoposes.
Results generalize known topos theory constructions to broader categorical contexts.
Abstract
We discuss the treatment of initial datatypes and final process types in the wide-spectrum language HasCASL. In particular, we present specifications that illustrate how datatypes and process types arise as bootstrapped concepts using HasCASL's type class mechanism, and we describe constructions of types of finite and infinite trees that establish the conservativity of datatype and process type declarations adhering to certain reasonable formats. The latter amounts to modifying known constructions from HOL to avoid unique choice; in categorical terminology, this means that we establish that quasitoposes with an internal natural numbers object support initial algebras and final coalgebras for a range of polynomial functors, thereby partially generalising corresponding results from topos theory. Moreover, we present similar constructions in categories of internal complete partial orders…
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.
