English

The Size-Change Principle for Mixed Inductive and Coinductive types

Logic in Computer Science 2025-09-10 v4

Abstract

This paper shows how to use Lee, Jones and Ben Amram's size-change principle to check correctness of arbitrary recursive definitions in an ML / Haskell like programming language with inductive and coinductive types. Naively using the size-change principle to check productivity and termination is straightforward but unsound when inductive and coinductive types are nested. We can however adapt the size-change principle to check ``totality'', which corresponds exactly to correctness with respect to the corresponding (co)inductive type.

Cite

@article{arxiv.2407.05715,
  title  = {The Size-Change Principle for Mixed Inductive and Coinductive types},
  author = {Pierre Hyvernat},
  journal= {arXiv preprint arXiv:2407.05715},
  year   = {2025}
}
R2 v1 2026-06-28T17:32:30.785Z