O_o
No.
The abstraction I'm suggestion that you use to consume PRNG plays to three parts.
Code:
BIG NUMBER (The sample value of all possible state mutations strung together.) := 0123456789
SEED (The starting point in reading all sample values.) := 2
RESULT-0 (The sample value, which is the pseudo-random value, the interface returns.) := 2
RESULT-1 (The sampling algorithm has mutated the current state.) := 3
RESULT-2 (The sampling algorithm has mutated the current state.) := 4
The "BIG NUMBER" is always the same. Here, it is an exaggeration thanks to being just an example. It would not be a simple incremented string of decimal digits.
The "SEED" we initialize the algorithm with just decides where in the "BIG NUMBER" we start reading values. Here this is an exaggeration because the "SEED" isn't a simple index; the mathematics involved can be very sophisticated.
Code:
BIG NUMBER (The sample value of all possible state mutations strung together.) := 0123456789
SEED (The starting point in reading all sample values.) := 8
RESULT-0 (The sample value, which is the pseudo-random value, the interface returns.) := 8
RESULT-1 (The sampling algorithm has mutated the current state.) := 9
RESULT-2 (The sampling algorithm has mutated the current state.) := 0
The size of "BIG NUMBER" can be trillions of trillions of trillions of digits. (Some of the best algorithms navigate a number unfathomably large.)
The "SEED" can be tens or hundreds of thousands of digits. (The algorithm here is just a single value. There are other algorithms where the seed is an array hundreds of thousands of elements long.)
The "RESULT" is generally machine sized.
Soma