Sciweavers

CSL
2008
Springer

Type-Based Termination with Sized Products

13 years 6 months ago
Type-Based Termination with Sized Products
Type-based termination is a semantically intuitive method that ensures termination of recursive definitions by tracking the size of datatype elements, and by checking that recursive calls operate on smaller arguments. However, many systems using type-based termination rely on a semantical anomaly to guarantee strong normalization; namely, they impose that non-recursive elements of a datatype, e.g. the empty list, have size 1 instead of 0. This semantical anomaly also prevents functions such as quicksort to be given a precise typing. The main contribution of this paper is a type system that remedies this anomaly, and still ensures termination. In addition, our type system features prenex stage polymorphism, a weakening of existential quantification over stages, and is precise enough to type quicksort as a non-size increasing function. Moreover, our system accomodate stage addition with all positive inductive types.
Gilles Barthe, Benjamin Grégoire, Colin Rib
Added 19 Oct 2010
Updated 19 Oct 2010
Type Conference
Year 2008
Where CSL
Authors Gilles Barthe, Benjamin Grégoire, Colin Riba
Comments (0)