Skip to main content
Log in

A Practical Approach to Testing Random Number Generators in Computer Algebra Systems

  • Published:
Computational Mathematics and Mathematical Physics Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

REFERENCES

  1. 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

  2. V. F. Kolchin, B. A. Sevast’yanov, and V. P. Chistyakov, Random Arrangements (Nauka, Moscow, 1976) [in Russian].

  3. 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

  4. 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.

  5. 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

  6. Yu. N. Tyurin and A. A. Makarov, Statistical Computer Data Analysis (INFRA, Moscow, 1998) [in Russian].

    Google Scholar 

  7. D. E. Knuth, The Art of Computer Programming, Vol. 2: Semi-numerical Algorithms (Addison–Wesley, Reading, Mass., 1968).

  8. Maple home site, 2019. https://www.maplesoft.com/products/maple/

  9. Mathematica home site, 2018. https://www.wolfram.com/mathematica/

  10. SymPy home site, 2019. http://www.sympy.org/ru/index. html.

  11. 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

    Article  Google Scholar 

  12. 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

    Article  MATH  Google Scholar 

  13. 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

    Google Scholar 

  14. 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

    Article  MathSciNet  MATH  Google Scholar 

  15. 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/

  16. P. L’Ecuyer and R. Simard, TestU01—Empirical Testing of Random Number Generators, 2009. http://simul. iro.umontreal.ca/testu01/tu01.html

  17. 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

  18. C. Doty-Humphrey, PractRand official site, 4-2018. http://pracrand.sourceforge.net/

  19. Gjrand random numbers official site, 2014. http://gjrand. sourceforge.net/

  20. 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

  21. M. Galassi, B. Gough, G. Jungman, et al. GSL GNU Scientific Library, 2019. https://www.gnu.org/software/gsl/

Download references

Funding

This publication was prepared with the support of the RUDN University Program 5-100.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to M. N. Gevorkyan, A. V. Demidova, A. V. Korol’kova or D. S. Kulyabov.

Additional information

Translated by A. Klimontovich

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1134/S096554252001008X

Keywords:

Navigation