Euh...
Si on réécrit ta fonction de changement de seed, c'est
f(x) = (x<<7) + (x&1) - 127
autrement dit, modulo 1024,
f(x) = ((x&7)<<7) + (x&1) - 127
Modulo 8, on a :
f(x) = (x&1) - 127 = (x&1) + 1 = (x&1)+1
Et modulo 2 :
f(x) = ((x+1)&1)
Autrement dit :
f(f(x)) = (((x&1)+1)<<7) + ((x+1)&1) - 127 modulo 1024
(modulo 8, ((x+1)&1)+1 ; modulo 2, (x&1))
f(f(f(x))) = ((((x+1)&1)+1)<<7) + (x&1) - 127 modulo 1024
et ainsi de suite :
f(f(f(f(x)))) = (((x&1)+1)<<7) + ((x+1)&1) - 127 modulo 1024
Et, ô comme c'est bizarre, on reconnaît f(f(x)) ...
Donc en gros la suite fait x,f(x),f(f(x)),f(f(f(x))),f(f(x)),f(f(f(x))),f(f(x)),f(f(f(x))),...
Et plus important encore, ça ne dépend que de la parité de x à partir du rang 2
Ne me fais pas croire que c'est équiprobable
