There are a number of situations in which it is desirable to have a random number generator that is machine independent. In general, it is useful if a program written in a high-level language produces results which are the same from machine to machine as long as the input to the program is the same. For example, the pseudorandom number generator used by the Control Data Corporation in its GPSS simulation program is the same as in IBM's GPSS, even though the generator is known to have defective statistical behavior. Apparently, compatibility is more valuable than statistical goodness. The program described here is an implementation of the generator described by Lewis et al. [6] and indirectly attributed to D.H. Lehmer. The code for the program appears in Figure 1. The generator produces a sequence of positive integers, IX, by the recursion:

[1]
David W. Hutchinson.
A new uniform pseudorandom number generator
,
1966,
CACM.

[2]
William R. Henry.
Hierarchical Structure for Data Management
,
1969,
IBM Syst. J..

[3]
Joseph B. Kruskal,et al.
Extremely portable random number generator
,
1969,
CACM.

[4]
W. H. Payne,et al.
Coding the Lehmer pseudo-random number generator
,
1969,
CACM.

[5]
P. A. W. Lewis,et al.
A Pseudo-Random Number Generator for the System/360
,
1969,
IBM Syst. J..

[6]
Darwin Klingman,et al.
NETGEN: A Program for Generating Large Scale Capacitated Assignment, Transportation, and Minimum Cost Flow Network Problems
,
1974
.