MIXMAX generator

The MIXMAX generator is a family of pseudorandom number generators (PRNG) and is based on Anosov C-systems (Anosov diffeomorphism) and Kolmogorov K-systems (Kolmogorov automorphism). It was introduced in a 1986 preprint by G. Savvidy and N. Ter-Arutyunyan-Savvidy and published in 1991.

A fast implementation in C/C++ of the generator was developed by Konstantin Savvidy. It is genuine 64-bit generator. The period of the generator is $$10^{4389}$$ and the Kolmogorov entropy is $$8679.2$$ for the matrix size $$N = 240$$. That generator occupies less than 2 kb, and if a smaller generator state is required, a N = 17 version with less than 200 bytes memory requirement also exists.

The generator works on most 64-bit systems, including 64-bit Linux flavors and Intel Mac. It has also been tested on PPC and ARM architectures. The latest version also runs on 32-bit systems and on Windows. The generator is equally usable with C++ programs, has been chosen as the default generator in CLHEP  for use in Geant4  and  there exists a ROOT interface and a PYTHIA interface. It has been recently tested extensively on very wide variety of platforms, as part of the CLHEP/Geant4 release. EU-funded MIXMAX project

An analysis by L’Ecuyer, Wambergue and Bourceret, see also, showed that MIXMAX generators has a lattice structure when the produced random numbers are considered in n - dimensional space larger than the dimension N of the matrix generator, and only in that high dimensions n > N they lie on a set of parallel hyperplanes and determined the maximum distance between the covering hyperplanes.