Type-Based Termination, Inflationary Fixed-Points, and Mixed Inductive-Coinductive Types

Andreas Abel
(Department of Computer Science, Ludwig-Maximilians-University Munich)

Type systems certify program properties in a compositional way. From a bigger program one can abstract out a part and certify the properties of the resulting abstract program by just using the type of the part that was abstracted away. Termination and productivity are non-trivial yet desired program properties, and several type systems have been put forward that guarantee termination, compositionally. These type systems are intimately connected to the definition of least and greatest fixed-points by ordinal iteration. While most type systems use conventional iteration, we consider inflationary iteration in this article. We demonstrate how this leads to a more principled type system, with recursion based on well-founded induction. The type system has a prototypical implementation, MiniAgda, and we show in particular how it certifies productivity of corecursive and mixed recursive-corecursive functions.

Invited Presentation in Dale Miller and Zoltán Ésik: Proceedings 8th Workshop on Fixed Points in Computer Science (FICS 2012), Tallinn, Estonia, 24th March 2012, Electronic Proceedings in Theoretical Computer Science 77, pp. 1–11.
Published: 14th February 2012.

ArXived at: https://dx.doi.org/10.4204/EPTCS.77.1 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org