Solution (source code)

= Solution

For <proper lazy lists>, the generic condition is \b[a finite first <list>, or an empty second <list>]. A finite first <list> reaches its terminating constructor, after which <list concatenation> exposes the second one. An infinite first <list> never yields control to the second; it therefore cannot deliver occurrences originating there unless there are none. This concerns input occurrences, rather than an accidental overlap of the two inputs' value <sets>.

A first spine ending in the <bottom value> also prevents access to the second <list>. Such inputs require the partial-input qualification in part c; a visible prefix is different from a terminating finite <list>.