The Linear Congruential Generator LCG, introduced by D.H. Lehmer in 1949, was the first Pseudo Random Number Generator (PRNG) available for practical use. The fact that the generated numbers are looking at first view like random numbers, but in fact are missing the true nature of random numbers, is the reason to add the expression "Pseudo".

If we use a 32-bit integer to run the LCG, we have to wait 4.294.768.296 generated numbers before we get the same as the first number. With true random numbers the second number may be the same with a probability of 1/4294768296. The LCG produces once all possible values before the same stream starts again. The produced numbers appear of course in a random-like order, depending of the parameters we choose.

Nonetheless we selected the LCG as propulsion for our mixing aggregates. The reason is that on 64-bit computing the big failures disappear if we split the 64-bit element in one left portion for taking the data, and in a right portion to have a long cycle to run. We use the left 16 bits for our needed value, and the right portion of 48 bits is enough for the generation of over 281.474 billion bits before a repetition begins on the last bit of our data. If more random bits are required, we are able to reseed the LCG with different parameters.

We must remember that the difference between 2exp32 and 2exp64 is very large, and the fact that 64 is only 2 times 32 is misleading because it is an exponent. On a today’s CPU we need only around 5 seconds to run the complete set of available random numbers from a 32-bit LCG. But to run a complete set of a 64-bit LCG at the same speed around 680 years would be needed!