@gsagostinho said:
Just to be clear, what I wrote before has nothing to do with seeding, I was talking about patterns that would emerge regardless of which seed is selected, e.g. patterns that are intrinsic to certain algorithms and which are undesirable side effects of certain PRGN.
The problem I had was simply that at first sight you seem to be creating "information" out of nowhere, in your case taking a random numbers among 3 possibilities and transforming it into another one among 4 possibilities, which shouldn't be possible to do. Then I realized that actually there is nothing wrong in your case, since you can't repeat the previous number of the sequence, and therefore you are always having 3 options anyway, which is what the PRGN is giving you.
Stated differently, I think you were focusing on the four possibilities inside a single object of the OP's black box-- i.e., in the [random] object-- while overlooking the fact that the recursive selection process limits the output to three.
The only moment your algorithm still fails is for the very first number: it never outputs a 0! But if you use this trick below with a [loadbang], you feed a random starting value to the [+] and therefore the algorithm can have any value between 0 and 3 as first output:
Good catch. But where zero originally had 0% probability, now it is too lucky (1/3 chance instead of 1/4).
So try [loadbang]----[random 4] (and leave off the [+ 1])