The Size-Change Principle for Mixed Inductive and Coinductive types
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 i...
Saved in:
| Published in: | Logical methods in computer science Vol. 21, Issue 3 |
|---|---|
| Main Author: | |
| Format: | Journal Article |
| Language: | English |
| Published: |
01.01.2025
|
| ISSN: | 1860-5974, 1860-5974 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | 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. |
|---|---|
| ISSN: | 1860-5974 1860-5974 |
| DOI: | 10.46298/lmcs-21(3:20)2025 |