Новые разделы!
ИИ, квантовые вычисления и много других интересных тем
Существует довольно
эффективный способ убедиться, что заданное число является составным, не
разлагая это число на множители. Согласно малой теореме Ферма, если число
простое, то для любого целого
, не делящегося на
,
выполняется сравнение
| (9) |
К сожалению, такой подход не всегда дает то, что хотелось бы.
Имеются
составные числа
, обладающие свойством (9) для любого
целого
с условием
. Такие числа называются числами Кармайкла. Рассмотрим, например,
число
. Так как
делится на каждое
из чисел
,
,
, то с
помощью малой теоремы Ферма легко проверить, что
есть число Кармайкла.
Можно доказать (Carmichael, 1912), что любое из чисел Кармайкла имеет вид
,
, где все
простые
различны, причем
делится на каждую
разность
. Лишь недавно, см. [10], была решена проблема о бесконечности
множества таких чисел.
В 1976 г. Миллер предложил заменить проверку (9) проверкой несколько
иного условия. Детали последующего изложения можно найти в [8].
Если
-
простое число,
, где
нечетно, то согласно малой теореме Ферма для
каждого
с условием
хотя бы одна из скобок в произведении
Пусть
- нечетное составное число,
, где
нечетно. Назовем
целое число
,
, ``хорошим'' для
,
если нарушается одно из двух условий:
)
не делится на
;
)
или существует целое
,
,
такое, что
Из сказанного ранее следует, что для простого числа
не существует хороших
чисел
. Если же
составное число, то,
как доказал Рабин, их существует не менее
.
Теперь можно построить вероятностный алгоритм, отличающий составные числа от простых.
Next: 4.5. Как строить большие
Up: 4. Алгоритмические проблемы теории
Previous: 4.3. Сложность теоретико-числовых алгоритмов
Contents: Содержание