Summary: "Termination and Productivity Checking
with Continuous Types"
19 May 2010
The last display before Section 5 characterizes the legal return types of
corecursive functions. The second example, Nat ◊ Y does not fit the grammar,
contrary to the claim in the paper. Consequently, the definition of fib from the
introduction is not legal according to the rules given in the paper. Indeed, if
Nat ◊ Y was legal, then the term
g. (fst g, fst g :: snd g) : Y Stream. Nat ◊ Y
would be accepted, but it is not productive.
The grammar for legal result types is correct, the fib example is wrong. The
old errata below no longer apply.
Old, erroneous errata (8 January 2005)
The reduction rule for fix
is strongly normalizing, but it does not have enough
reductions in case the result type of corecursion is not directly a coinductive
type. This problem arises in case of the unfolded stream of Fibonacci numbers