English

Cyclic Datatypes modulo Bisimulation based on Second-Order Algebraic Theories

Logic in Computer Science 2019-03-14 v2

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 "Church-Rosser modulo bisimulation" for the computation rules. Combining these results, we have a remarkable decidability result of the equational theory of cyclic data and fold.

Keywords

Cite

@article{arxiv.1705.06430,
  title  = {Cyclic Datatypes modulo Bisimulation based on Second-Order Algebraic Theories},
  author = {Makoto Hamana},
  journal= {arXiv preprint arXiv:1705.06430},
  year   = {2019}
}

Comments

38 pages

R2 v1 2026-06-22T19:50:43.991Z