Cyclic Datatypes modulo Bisimulation based on Second-Order Algebraic Theories
Makoto Hamana

TL;DR
This paper develops a categorical and algebraic framework for cyclic datatypes based on second-order algebraic theories, establishing correctness, normalization, and decidability results for their computation rules.
Contribution
It introduces a novel approach using second-order algebraic theories and Bekic law to handle cyclic datatypes with strong normalization and decidability guarantees.
Findings
Correctness of fold rules derived from categorical semantics
Proven strong normalization using the General Schema
Decidability of the equational theory of cyclic data
Abstract
Cyclic data structures, such as cyclic lists, in functional programming are tricky to handle because of their cyclicity. This paper presents an investigation of categorical, algebraic, and computational foundations of cyclic datatypes. Our framework of cyclic datatypes is based on second-order algebraic theories of Fiore et al., which give a uniform setting for syntax, types, and computation rules for describing and reasoning about cyclic datatypes. We extract the "fold" computation rules from the categorical semantics based on iteration categories of Bloom and Esik. Thereby, the rules are correct by construction. We prove strong normalisation using the General Schema criterion for second-order computation rules. Rather than the fixed point law, we particularly choose Bekic law for computation, which is a key to obtaining strong normalisation. We also prove the property of…
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5Peer 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.
