A system of hierarchical imperative types is extended to allow infinite values. The general structure of value assignments to types in the context of a hierarchy is considered, and it is shown that both a minimal and a maximal value assignment exist. We give two different characterizations of intermediate value assignments: In terms of the predicates that describe them as subsets of the maximal values, and in terms of computational stability. As an application we introduce rational infinite values in our system. Programs can then work on infinite imperative data structures which are allocated lazily during execution.
Theoretical Computer Science, 1992, Vol 106, Issue 1, p. 119-134