Solution (source code)

= Solution

Assume a <proper lazy list> with defined elements and terminating <equality tests>. If infinitely many distinct values occur, <first-occurrence duplicate removal> produces an infinite <list> of distinct values, in first-occurrence order. To produce the next new value after $k$ have appeared, the nested <list filters> need skip only a finite input prefix: an infinite collection of distinct values cannot all belong to the $k$ already seen. The next new value therefore occurs at a finite position and is reached in finite work. Consequently
$$
\boxed{\text{infinitely many distinct values}\ \Longrightarrow\ \text{productive infinite output}.}
$$
This is a <stream productivity> claim, not a bounded-delay claim: arbitrarily long runs of repetitions can make successive delays arbitrarily large. Undefined elements or diverging <equality tests> invalidate the stated assumptions.