The Lehmer Generator Family



History

D. H. Lehmer was an American mathematician who made many contributions to computational number theory. One of these contributions was a pseudo random number generator, which he discussed during a confrence in September 1949. This generator is also sometimes known as the Park-Miller generator, as they published papers citing Lehmer's design as the standard for random number generation.

This generator is implemented using a simple equation:

X1 = aX0 mod M

In this equation, X0 is the generator's Seed, a and M are constants provided by the person implementing the function, and X1 is both the next random number and the Seed of the next iteration.

Later on, this generator became the basis for Linear Congruential Generators.

Tested Variants

Lehmer Generator
D. H. Lehmer's originally proposed design, using his constants for a and M.

MINSTD
A revised verson of the original generator, with a new a constant, currently featured as C++11's minstd_rand function.

RANDU
RANDU was once a popular PRNG - but once flaws in its design became apparent, it was dropped from common use.



A WFTID Website