А мне вот дополнительно интересна и сложность алгоритма.
Да ужасающая там сложность.Например, если мы хотим проверить на простоту число порядка
(это совсем небольшое число по современным понятиям; например, программа Primo, использующая метод эллиптических кривых, на моём компьютере за
секунды проверила, что число
является простым, и выдала сертификат простоты, который можно проверить; это число сгенерировала Wolfram Mathematica командой
за
секунды), то мы должны найти все простые числа, не превосходящие квадратный корень из проверяемого числа. Их нужно разбить на две группы (разбиение может быть произвольным) и перемножить числа в каждой группе (можно каждое взять в любой степени), что даст те самые
и
; произведение этих чисел никак не меньше, чем примориал
. Используя
оценку примориала , получаем, что произведение
есть, как минимум, число порядка
. Таким образом, нам придётся иметь дело с числами, в десятичной записи которых примерно
цифр. Я думаю, что дальнейшее обсуждение сложности рассматриваемого алгоритма проверки простоты (одного!) числа не имеет смысла.