Я не знаю, что такое генератор Парка-Миллера, но ясно что
. Качество генератора прежде всего сводится к длине цикла, т.е. к показателю
по модулю
. Если
, то
- циклическая и максимальный цикл дает образующая
. Если
, то образующую
можно искать через критерий Лёмера (немного
тут есть, но это не то. Критерий простой - просто вычисляем порядок элемента:
- образующая группы
(ее порядок
)
). В случае составного
порядок группы равен
, где
-
функция Эйлера, но максимальный порядок элемента - это функция Кармайкла
при
, поэтому длина цикла будет меньше, но в принципе тоже можно юзать.
Читайте также рекомендованный Вам 2-й том Кнута Искусства программирования по ГСЧ. И линейный конгруэнтный генератор вроде круче.
Руст где-то тут утверждал, что если
- простое и в качестве
испытывать последовательные простые числа, то за
испытаний найдем образующую. Но это какой-то очень сложный недоказанный факт, я его не знаю.