https://narvskaja.spb.ru отзывы о гинекологическая клиника прием гинеколога.

Целые числа Блюма

Если p и q - два простых числа, конгруэнтных 3 по модулю 4, то n = pq иногда называют целым числом Блюма. Если n - это целое число Блюма, у каждого квадратичного вычета ровно четыре квадратных корня, один из которых также является квадратом - это главный квадратный корень. Например, главный квадратный корень 139 mod 437 - это 24. Остальные три корня - это 185, 252 и 413.

Генераторы

Если p - простое число, и g меньше, чем p, то g называется генератором по модулю p, если для каждого числа b от 1 до p - 1 существует некоторое число a, что ga ? b (mod p).

Иными словами, g является примитивом по отношению к p. Например, если p = 11, то 2 - это генератор по модулю 11:

210 = 1024 ? 1 (mod 11)

21 = 2 ? 2 (mod 11)

28 = 256 ? 3 (mod 11)

22 = 4 ? 4 (mod 11)

24 = 16 ? 5 (mod 11)

29 = 512 ? 6 (mod 11)

27 = 128 ? 7 (mod 11)

23 = 8 ? 8 (mod 11)

26 = 64 ? 9 (mod 11)

25 = 32 ? 10 (mod 11)

Каждое число от 1 до 10 может быть представлено как 2a (mod p). Для p = 11 генераторами являются 2, 6, 7 и 8. Другие числа не являются генераторами. Например, генератором не является число 3, потому что не существует решения для

3a ? 2 (mod 11)

В общем случае проверить, является ли данное число генератором, нелегко. Однако задщача упрощается, если известно разложение на множители для p - 1. Пусть q1, q2, ... , qn - это различные простые множители p - 1. Чтобы проверить, является ли число g генератором по модулю p, вычислите

g(p-1)/q mod p

для всех значений q = q1, q2, ... , qn.

Если это число равно 1 для некоторого q, то g не является генератором. Если для всех значений q рассчитанное значение не равно 1, то g - это генератор.

Например, пусть p = 11. Простые множители p - 1 = 10 - это 2 и 5. Для проверки того, является ли число 2 генератором, вычислим:

2(11-1)/5 (mod 11) = 4

2(11-1)/2 (mod 11) = 10

Ни один из ответов не равен 1, поэтому 2 - это генератор.

Проверим, является генератором ли число 3:

3(11-1)/5 (mod 11) = 9

3(11-1)/2 (mod 11) = 1

Следовательно, 3 - это не генератор.

При необходимости обнаружить генератор по модулю p просто случайно выбирайте число от 1 до p - 1 и проверяйте, не является ли оно генератором. Генераторов достаточно, поэтому один из них вы, скорее всего, найдете быстро.