Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основные математические принципы в реализации некоторых алгоритмов информационной безопасности. Учебное пособие
.pdf
4. ТЕОРЕМЫ ЭЙЛЕРА И ФЕРМА
4.1. Функция Эйлера
Определение. φ(m)
количество положительных чисел, не превос-
ходящих m и взаимно простых с m.
Примеры
1. Пусть m = 9. Полная система вычетов по модулю 9 состоит из
чисел 1, 2, 3, 4, 5, 6, 7, 8, 9. Из них взаимно просты с 9 числа 1, 2, 4, 5,
7, 8. Так как количество этих чисел равно 6, то φ(m) = 6.
2. Пусть m = 12. Полная система вычетов состоит из чисел 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12. Из них взаимно просты с 12 числа 1, 5, 7, 11.
Значит, φ(m) = 4.
При m = 1 полная система вычетов состоит из одного класса 1. Общим натуральным делителем чисел 1 и 1 является 1, (1, 1) = 1. На этом
основании полагают φ(1) = 1.
Основные свойства функции Эйлера
1) Если m = p простое число, то φ(p) = p − 1.
2) Если
mp
k
простое число, то
kk
mppp
)1() ( ( ).
1
3) Функция Эйлера мультипликативная, т. е. для взаимно простых
чисел () ()()mn m n
, т. е. (m, n) = 1.
Доказательство
1) Вычеты 1, 2, …, p − 1 и только они взаимно просты с простым
числом p. Поэтому .(1)pp
51

Например, найдем φ(7). Выписываем вычеты: 1, 2, 3, 4, 5, 6, 7. Вза-
p
p
p
имно просты все числа, кроме 7, т. е. φ(7) = 6. Свойство выполняется.
2) Полная система вычетов по модулю
1, . .. , 1,
kk
p
. Натуральные делители m являются степенями p.
mp
k
состоит из
k
чисел
Поэтому число а может иметь общий делитель с m, отличный от еди-
k
1
ницы, лишь в случае, когда a делится на p. Но среди чисел 1, …,
на p делятся лишь числа p, 2p, …,
kk
:.
ppp
но
Значит, взаимно просты с
1
mp
2
k
остальные
k
, ..., ,
p
количество которых рав-
kk k
pp p p
11
p
)1(
чисел. Тем самым второе свойство доказано.
3) Функция Эйлера определена для всех натуральных чисел, при-
чем φ(1) = 1. Нам надо лишь показать, что если m и n взаимно простые
числа, то φ(mn) = φ(m) φ(n).
Расположим полную систему вычетов по модулю mn в виде матрицы m×n:
1 2 …
m
m + 1 m + 2 … 2m
………………………………………....
(n – 1)m + 1 (n – 1)m + 2 …
nm
Поскольку т и n взаимно просты, то число х взаимно просто с тп
тогда и только тогда, когда х взаимно просто с m и x взаимно просто с n.
Но число km + t взаимно просто с т в том и только том случае, когда t
взаимно просто с т. Поэтому числа, взаимно простые с m, располагаются в тех столбцах, для которых t пробегает приведенную систему
вычетов по модулю т. Число таких столбцов равно φ(m). В каждом
столбце представлена полная система вычетов по модулю п. Из этих
вычетов φ(n) взаимно просты с n. Значит, общее количество чисел,
взаимно простых и с т и с n, равно φ(m) φ(n) (φ(m) столбцов, в каждом из которых берется φ(n) чисел). Эти числа, и только они взаимно
просты с тп. Тем самым доказано, что φ(mn) = φ(m) φ(n).
52

Примеры
p
p
p
p
1) φ(3) = 2, φ(10) = 4, φ(30) = 8, ведь (3, 10) = 1.
2) φ(5) = 4, φ(8) = 4, φ(40) = 16, ведь (5, 8) = 1.
3) φ(3) = 2, φ(6) = 2, φ(18) ≠ 4, ведь (3,6) = 2. Выписывая вычеты,
получим: φ(18) = 6.
Определение. Каноническое разложение целого числа m есть вы-
ражение вида
Например,
Теорема. Если
mp p p
12
, где
12
144 3 4 .m
22
mp p p
12
каноническое разложение
12
...
n
n
...
простые числа.
i
n
n
числа m, то
11
( ) ... ( 1)( 1) ... ( 1)
mp p p p p p
,
12
12
1
n
nn
12
или
mp p p
( ) ... 1 1 ... 1
12
12
n
n
11 1
12
pp
.
n
Доказательство
Если
взаимно простые числа, то
i
i
также взаимно простые.
i
Следовательно, по свойству мульпликативности функции Эйлера
(свойство 3) имеем:
( ) ... ...
mpp p p p p
12 1 2
12 1 2
nn
nn
.
Далее применим свойство 2. Получим:
12
( ) ( ) ... ( )
pp p
12
11
12
( 1) ( 1) ... ( 1)
ppp p p p
12
12
pp pp p p
12
pp p
12
12
11
12
... ( 1) ( 1) ... ( 1)
... 1 1 ... 1 ,
1
n
nn
n
n
12
11 1
pp p
12
n
n
1
n
nn
n
что и требовалось доказать.
53

Примеры
F
(270) (2 3 5) 2 3 5 2 1 3 1 .() 5()()172
1)
(700 000) (2 5 7) 2 5 7 2 1) 5 1 7 1(()()
2)
3113111
55 515111
240 000.
Тождество Гаусса. Сумма функции Эйлера от чисел, на которые
делится некоторое число m, равняется самому числу m.
()dmdm
|
Проверим теорему на примере. Пусть m = 20. Число 20 делится на 1,
2, 4, 5, 10, 20.
d 1 2 4 5 10 20
m 1 1 2 4 4 8
( ) (1) (2) (4) (5) (10) (20)
d
|20
d
112 4 4 8 20 m
.
Получили верное равенство.
Доказательство
Обозначим нашу сумму, значение которой зависит от т, через
F(m), так что
() ()
md
|
dm
.
Доказательство разобьем на три части. Сначала докажем, что F(m) −
k
мультипликативная функция, затем вычислим F(т) при
mp
и,
наконец, докажем, что F(m) = m.
1) Пусть (а, b) = 1; тогда для любых
будет
,1,()
так
||,а b
что, применяя правило умножения суммы на сумму, т. е. правило раскрытия скобок, получаем:
.
() () () ( ) () ( ) ( )
Fa Fb
|'| |'| |'|
a b ab ab
54
.

Полученная сумма равна
F
|
dab
()
d
. Действительно, произведение
равно некоторому определенному делителю d произведения ab.
С другой стороны, если взять некоторый делитель d произведения ab,
то мы имеем для данного d вполне определенное представление в виде
,d где
.||,а b
Равенство
(') ()
|'| |
ab dab
d
теперь непосредственно следует из того, что между равными слагаемыми левой и правой частей можно установить взаимно однозначное
соответствие, сопоставляя
~()d, если
.||,,d а b
Таким
()
образом, получаем:
() () ()().
ab d F a F b
|
dab
t
2) Пусть
mp
() () ()(1)()()...()
Fm F p d p p p
3) Пусть
.
Вычислим F(m):
tt
t
|
dp
1 ( 1) ( ) ... ( ) .
ppp ppp
mp p p
12
каноническое разложение m. То-
12
21
n
...
n
2
tt t
гда для мультипликативной функции F(m) выполняется:
( ) ... ...
Fm Fp p p Fp Fp Fp
12 1 2
12 1 2
nn
nn
12
pp p m
12
n
... ,
n
что и требовалось доказать.
55

4.2. Теоремы Эйлера и Ферма
s
Возьмем некоторое натуральное число а, взаимно простое с моду-
23
лем m, и рассмотрим последовательные степени а:
Все числа этого множества распределены в m классах, следовательно, по крайней мере, один из этих классов должен содержать бесчисленное множество степеней а. Взяв из этого класса две степени а и
обозначив их
Если (a, m) = 1, то
реписать в виде
k = s − t имеем
t
а и ,
а где s > t ≥ 1, будем иметь
am
st
а m
k
1mod .()
а m
k
()1mod
.(),1
Поэтому
. Таким образом, для некоторого
аа m
П. Ферма и Л. Эйлеру удалось указать значения k > 0, при которых
имеет место данное сравнение. Соответствующие теоремы являются
основой всей теории сравнении и находят широкое применение как в
теоретических исследованиях, так и в арифметических приложениях.
Теорема Ферма. Для любого простого р и любого а ≥ 1, не деля-
щегося на р, справедливо сравнение
pa
(1mo )d.
p
1
Теорема Эйлера. Для любого модуля m и любого а ≥ 1, взаимно
()
m
a
простого с m, справедливо сравнение
m
Легко видеть, что теорема Ферма является частным случаем теоремы Эйлера. Действительно, если в теореме Эйлера взять m = р, где р –
простое число, то условие (a, р) = 1 эквивалентно условию «а не де-
лится на р». А φ(m) = р – 1, так что при m = р теорема Эйлера сводится
к утверждению, что при «а не делится на р» справедливо сравнение
1
p
()1mod
, т. е. к теореме Ферма.
ap
, , , ...аа а
st
аа m
st
()mod
mod .()
можно пе-
.(o )1md
Доказательство теоремы Эйлера
Пусть
модулю m. При (а, m) = 1 числа
, , ...,
rr r некоторая приведенная система вычетов по
12 ()
m
, , ...,
аr аr аr
12 ()
также образуют при-
m
веденную систему вычетов. Установим взаимно однозначное соответствие между этими двумя системами, сопоставив каждому из чисел
, , ...,
аr аr аr так, что
12 ()
m
56

1
N
2
(mod ),
(mod ),
ar r m
ar r m
r
где
rr т. е. rr
, r, …,
, ..., ,
2()
m
r
ar r m
m
()
некоторым образом представленные числа
r
…
=
rr r
12 ( )
(mod ),
....
m
Перемножив все сравнения системы, получим:
()
m
arrr rrr m
(),1
Поскольку
rm
i
сравнения можно сократить на
... ... (mod )
12 ( )
для всех i, то
.
m
( ... 1),
rr r m
12 ( )
... ,
rr r
12 ( )
m
так что
m
и обе части
()
m
am
что и требовалось доказать.
Следствие из теоремы Ферма. Для любого простого р и любого
p
натурального числа а имеет место сравнение:
a а p
mod .()
Доказательство
Учитывая, что а не делится на р, помножим обе части сравнения
p–1
a
=1(mod p) на а. Получим a p=а(mod p).
Заметим, что если р|а, то p|a p – а, что и требовалось доказать.
Теоремы Эйлера–Ферма позволяют часто находить остатки от
деления на модуль больших степеней заданного числа.
Представим два алгоритма.
,r
1
,(o )1md
Алгоритм № 1
Нахождение остатка от деления аN на m при (a, m) = 1 и
N ≥ φ(m).
1. Найти φ(m).
2. Разделить N на φ(m). Результат представим в виде
mqr
,()
где r, q Z и 0 ≤ r < φ(m).
57

3. Вычислить
x
x
Х
N
N
x
Nr
aa m
(mod )
.
Вывод формулы:
Nmqrmqr mqrr
aa a aa aa m
() () ()
() (mod)
Замечание.
r
a вычислить легче по сравнению с Na .
Алгоритм № 2
Нахождение остатка от деления а
N
на m при (a, m) = d.
1. Найти d = (a, m). Применяем алгоритм Евклида для нахождения
НОД (последовательное деление + смотрим последний ненулевой
остаток).
2. Найти наименьшее k, такое что
.|kd а
3. Замена переменных:
k
a
a
1
d
m
d
x
d
(mod )
k
и
или
a
. Для отыскания остатка от деления
1
mmmd
11
x
1
Nk
a
k
aad
xd
1
1
.
4. Вычислить
может быть найдено путем вычисления произведения остатков
1
от деления на
k
a
m
на
можно использовать теорему Эйлера.
1
aa m
111
m
чисел
1
Замечание. Для дальнейшего решения можно также использовать
алгоритм № 1.
5. Обратная замена
xd
1
.
58

Вывод формулы к п. 4:
x
N Nkk Nk Nk
aa d a da ad md
1
dd
(все делим на )
Nk
aad md
x
dd d
Nk
xa a m
111
d
11
mod
mod
k
a
(mod )
11
Примеры
1) Вычислить остаток от деления 171
2147
на 52.
Проверим, что (171,52) = 1. Значит применим алгоритм № 1.
1. Найдем φ(52).
(52) (2 13) (2 ) (13) 2 13 2 .()( )1131 24
222111
2. Разделим 2147 на 24. Результат представим в виде
2147=24 89+11.
2147 11
3. Вычислим
Задача свелась к отысканию остатка от деления 171
171 171 (mod 52)
11 11
171 15 (mod 52)
.
11
на 52.
,
2
15 225 17(mod52)
где
15 15 15 17 15 5(mod52)
;
32
.
Тогда
11 3 3 2 3
15 (15 ) 15 ( 5) 17 21 17 7(mod52)
2) Вычислить остаток от деления 126
1020
на 138.
.
Проверим, что (126,138) ≠ 1. Значит, применим алгоритм № 2.
1. Найдем d = (126,138).
59

Применяем алгоритм Евклида для нахождения d.
х
Х
138 126
126 1
126 12
120 10
12
6
12 2
0
Последний ненулевой остаток равен 6, т. е. получили d = 6.
k
1|6 126 , .
2. Найдем наименьшее k, такое что
k
3. Замена переменных:
a
1
m
xxx
11
4. Вычислим
может быть найдено путем вычисления произведения остатков
1
от деления на 23 чисел
:
1
1020 1 1019
126 21 126 21(mod 23)x
1
1019
126 и 21.
4.1. Для нахождения остатка от деления
1
126
21,
6
138
1
23,
6
x
,6.
6
126 на 23 применим
алгоритм № 1, так как (126,23) = 1.
а) Найдем φ(23) = 23 − 1 = 22.
б) Разделим 1019 на 22. Результат представим в виде
1019 = 22 46 + 7.
60
.
1019
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
