Details

RANDU was a popular Lehmer generator. Once the flaws in its output became widely known, it was abandoned in favor of more reliable generators.

The biggest flaw with this generator is that the output tends to cluster in groups, as clearly evidenced by the lower resolution Plot test result. A 3D spetrum plot, which is not part of our tests, would make the output groupings extremely noticable.

Pseudocode


// This code is adapted from RANDU's implementation
// in the GNU Scientific Library.
//
// https://www.gnu.org/software/gsl/

			
// The current state value
state = 1138;

// Our constants
a = 65539;
M = 2147483647;

// random number generator
function RandomNumber() {

	// Run the math
	state := (a * state) % M;
	
	// And return it
	return state;

}
			


Test Results

Period Length Test

SeedPeriod LengthResult
113864000Passed
6553564000Passed
867530964000Passed
1677721664000Passed
12345678964000Passed
Minimum to Pass: 64,000

Plot Test

 

Count the 1s Test

Seed% Bits that are 1sResult
113849.93%Passed
6553550.07%Passed
867530949.96%Passed
1677721649.97%Passed
12345678950.01%Passed
Minimum to Pass: 45%

Dartboard Test

SeedDarts PlacedResult
11386961Passed
655356947Passed
86753096971Passed
167772167034Passed
1234567896992Passed
Minimum to Pass: 2,600

Crush Test

SeedCompression RateResult
1138101.14%Passed
65535101.14%Passed
8675309101.14%Passed
16777216101.14%Passed
123456789101.14%Passed
Minimum to Pass: 95%

Unique Bytes Test

SeedUnique High BytesUnique Low BytesResult
1138162162Passed
65535160165Passed
8675309167147Failed
16777216163177Passed
123456789164154Failed
Minimum to Pass: 160

High/Low Byte Test

SeedHigh After HighHigh After LowLow After HighLow After LowSpreadResult
11382460248324822574149Passed
65535254624872487247993Passed
86753092455248424852575151Passed
167772162615245324532478231Passed
1234567892586245924592495173Passed
Maximum to Pass: 500

Distribution Test

Seed113865535867530916777216123456789
0.0 to 0.196697696310481014
0.1 to 0.210371015101410521024
0.2 to 0.31029101110041014998
0.3 to 0.496399910101015991
0.4 to 0.594910339499411019
0.5 to 0.6995100710011008974
0.6 to 0.7101410611009969993
0.7 to 0.8102797810029951035
0.8 to 0.99949631038953966
0.9 to 1.0102795810111006987
Spread267253177285183
ResultPassedPassedPassedPassedPassed
Maximum to Pass: 500

Sample Output

1635393479114434850173748428756822015810669951951288055282272924118782465411910572892094089627
100760392283784311242706941539114546426316438159076960214128023746023387711636295033101753963
9162540182868366792064734038121700505916043914348208522541223008859209793204915805125631339105178
252534478200678507107880992137178566711113593051174601180134040616517660592006802488961071862464
3089347207967807362000271936535637696243764289936879300127997908413954444531147887792770843152
7365197291776562836188328134017530734611142518314707591331317935594388310451446844239436618733
33553248823117551251474432910079519001415077973156644991995796505323967563914063029491985769647
140537499012978068901580917375210027507052094322614030529101582344779116162531413186489991752298998
793502178187522397419623405951339544281111361857210683293806823764289217450931536631887924085485
30476051921017283411277590783163489151745851570492203799314056521561356365331047917216771872737


A WFTID Website