Pseudo-random numbers are statistically random values that are derived from a known starting point and can be repeated. They are useful for processes that require randomness. PN sequences are generated using a linear feedback shift-register circuit with M registers. At each clock pulse, the data shifts one position and a PN datum is output from the last register. The sequence is defined by a generator polynomial where the coefficients determine which registers are used to generate the next value. Autocorrelation and cross-correlation can be used to measure the similarity between a time series and lagged or shifted versions of itself.