@peter.ludemann Thanks.
I tried this
s_ssu(0, Ast) => Ast = [].
s_ssu(I, Ast), I >= 1 => true_or_false(Ast).
true_or_false(true).
true_or_false(false).
s_ssu(I0,Ast), I0 > 1 =>
succ(I,I0),
s_ssu(I,T1),
s_ssu(I,T2),
s_ssu(I,T3),
Ast = if(T1,T2,T3).
It gave me a different answer but did not duplicate what the normal example did with 10 results.
̯?- s_ssu(2,Ast).
Ast = true ;
Ast = false
Jan W. gave me the information I needed which is that in this post where the idea of generators is conveyed, I was thinking of generators as noted in “The Craft of Prolog” but he noted that the word serialize is more appropriate.
The nice thing is that I will now try to use SSU where appropriate now that I tried them the first time.