Abstract
This paper has a practical aim. For a long time, implementations of pseudorandom number generators in standard libraries of programming languages had poor quality. The situation started to improve only recently. Up to now, a large number of libraries and weakly supported mathematical packages use outdated algorithms for random number generation. Four modern sets of statistical tests that can be used for verifying random number generators are described. It is proposed to use command line utilities, which makes it possible to avoid low-level programming in such languages as C or C++. Only free open source systems are considered.
Similar content being viewed by others
REFERENCES
I. I. Drozdova and V. V. Zhilin, “Random and pseudorandom number generators,” Proceedings of the 7th International Scientific Conference on Engineering Sciences in Russia and Abroad (Buki-Vedi, Moscow, 2017), pp. 13–15. https://moluch.ru/conf/tech/archive/286/13233
V. F. Kolchin, B. A. Sevast’yanov, and V. P. Chistyakov, Random Arrangements (Nauka, Moscow, 1976) [in Russian].
M. I. Tikhomirova and V. P. Chistyakov, “Statistical tests designed for detecting some kinds of dependences between random sequences,” Trudy Discr. Mat. 3, 357–376 (2006). http://mi.mathnet.ru/tdm153
M. I. Tikhomirova and V. P. Chistyakov, “Statistical empty cells-like test,” Mat. Vopr. Kriptograf. 1 (1), 101–108 (2010). http://mi.mathnet.ru/mvk.
L. O. Kirichenko, R. I. Tsekhmistro, O. Ya. Krug, and A. V. Storozhenko, “Comparative analysis of pseudorandom number generators in modern wireless data transmission technologies,” Sist. Obrab. Inf. 4 (48), 70–74 (2009). http://www.hups.mil.gov.ua/periodic-app/article/6508
Yu. N. Tyurin and A. A. Makarov, Statistical Computer Data Analysis (INFRA, Moscow, 1998) [in Russian].
D. E. Knuth, The Art of Computer Programming, Vol. 2: Semi-numerical Algorithms (Addison–Wesley, Reading, Mass., 1968).
Maple home site, 2019. https://www.maplesoft.com/products/maple/
Mathematica home site, 2018. https://www.wolfram.com/mathematica/
SymPy home site, 2019. http://www.sympy.org/ru/index. html.
M. Matsumoto and T. Nishimura, “Mersenne Twister: A 623-dimensionally equidistributed uniform pseudo-random number generator,” ACM Trans. Model. Comput. Simul. 8, 3–30 (1998). http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/ ARTICLES/mt.pdf
F. Panneton and P. L’Ecuyer, “On the Xorshift random number generators,” ACM Trans. Model. Comput. Simul. 15, 346–361 (2005). https://doi.org/10.1145/1113316.1113319
M. E. O’Neill, PCG: A Family of Simple Fast Space-Efficient Statistically Good Algorithms for Random Number Generation, Report No. HMC-CS-2014-0905, Harvey Mudd College, Claremont, CA, 2014. https://www.cs.hmc.edu/tr/hmc-cs-2014-0905.pdf
P. Boldi and S. Vigna, “On the lattice of antichains of finite intervals,” Order 35 (1), 57–81 (2018). https://doi.org/10.1007/s11083-016-9418-8
G. Marsaglia, The Marsaglia Random Number CDROM including the Diehard Battery of Tests of Randomness, 1995. https://web.archive.org/web/20160125103112/http://stat.fsu.edu/pub/diehard/
P. L’Ecuyer and R. Simard, TestU01—Empirical Testing of Random Number Generators, 2009. http://simul. iro.umontreal.ca/testu01/tu01.html
P. L’Ecuyer and R. Simard, “TestU01: A C library for empirical testing of random number generators,” ACM Trans. Math. Software (TOMS) 33 (4), 22 (2007). http://www.iro.umontreal.ca/~lecuyer/myftp/papers/testu01.pdf
C. Doty-Humphrey, PractRand official site, 4-2018. http://pracrand.sourceforge.net/
Gjrand random numbers official site, 2014. http://gjrand. sourceforge.net/
R. G. Brown, D. Eddelbuettel, and D. Bauer, Dieharder: A Random Number Test Suite, 2017. http://www.phy.duke.edu/~rgb/ General/rand_rate.php
M. Galassi, B. Gough, G. Jungman, et al. GSL GNU Scientific Library, 2019. https://www.gnu.org/software/gsl/
Funding
This publication was prepared with the support of the RUDN University Program 5-100.
Author information
Authors and Affiliations
Corresponding authors
Additional information
Translated by A. Klimontovich
Rights and permissions
About this article
Cite this article
Gevorkyan, M.N., Demidova, A.V., Korol’kova, A.V. et al. A Practical Approach to Testing Random Number Generators in Computer Algebra Systems. Comput. Math. and Math. Phys. 60, 65–73 (2020). https://doi.org/10.1134/S096554252001008X
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1134/S096554252001008X