Теория чисел
.pdfТеорема 3. Любое решение линейного диофантова уравнения ax + by = c может быть записано в виде
{
x = x0 − k b
d , k Z y = y0 + k ad
ãäå d = (a, b),
àïàðà (x0, y0) одно из решений этого уравнения.
Äî ê à ç à ò å ë ü ñ ò â î
1.Изучим связь двух решений уравнения (x0, y0) è (x1, y1). Вычитая ax1 + by1 = c èç ax0 + by0 = c имеем
a(x0 − x1) + b(y0 − y1) = 0. |
, ãäå (a′, b′) = 1. |
Разделим выражение на d, учитывая, что {b = b′′d |
|
a = a d |
|
a′(x0 − x1) = b′(y1 − y0) |
( ) |
Правая часть ( ) делится на a′: b′(y1 − y0) . a′, à ò.ê. (a′, b′) = 1, то по теореме 3.3 (y1 − y0) . a′, Аналогично, (x0 − x1) . b′.
Значит |
|
(y1 − y0) . a′ |
, |
||
|
|
(x0 |
− |
x1) . b′ |
|
{x0 |
|
|
|
|
|
− x1 |
= b′k2 , k1, k2 Z. |
||||
y1 |
y0 |
= a′k1 |
|
||
|
− |
|
|
|
|
Подставляя последнюю систему в ( ), имеем a′b′k2 = b′a′k1 è k2 = k1 = k, ò.å.
{y1 − y0 = a′′k . x0 − x1 = b k
Выразим из этой системы x1 è y1
{x1 = x0 − b′k y1 = y0 + a′k
èполучим связь между двумя решениями системы
{
x1 = x0 − k db . y1 = y0 + k ad
2. Докажем, что если
11
{
x1 = x0 − k b
d , k Z, y1 = y0 + k ad
òî (x1, y1) будет решением ax + by = c.
Подставим x1 è y1 в исходное уравнение
ax1 +by1 = a(x0 −k db )+b(y0 +k ad ) = ax0 −k abd +by0 +k bad = ax0 +by0 = c. Теорема доказана.
8.Расширенный алгоритм Евклида
Найдем решение уравнения ax + by = (a, b), ãäå (a, b) наибольший
общий делитель.
Пусть a, b Z, (b ≠ 0) входные данные алгоритма, а (a, b) N; x, y Z выходные.
|
−1 |
r−1 |
= a |
|
r−1 = ax−1 + by−1 |
||
|
0 |
r0 |
= b |
|
r0 |
= ax0 |
+ by0 |
|
1 |
r−1 |
= bq0 |
+ r1 |
r1 |
= ax1 |
+ by1 |
|
2 |
r0 |
= r1q1 |
+ r2 |
r2 |
= ax2 |
+ by2 |
|
3 |
r1 |
= r2q2 |
+ r3 |
r3 |
= ax3 |
+ by3 |
|
· · · |
|
· · · |
|
|
· · · |
|
|
i |
ri−2 |
= ri−1qi−1 |
+ ri |
ri |
= axi |
+ byi |
|
· · · |
|
· · · |
|
|
· · · |
|
|
n |
rn−2 = rn−1qn−1 + rn |
rn |
= axn |
+ byn |
||
|
n + 1 |
rn−1 = rnqn |
+ 0 |
|
|
|
|
Øàã −1. Положим r−1 = a и представляем r−1 как линейную комби-
x |
1 = 1 |
|
нацию a è b. Очевидно, что {y |
−1 = 0 . |
|
|
− |
|
Шаг 0. Положим r0 |
= b и представляем r0 как линейную комбинацию |
|
a è b. Очевидно, что {y0 |
= 1 . |
|
|
x0 |
= 0 |
Шаг 1. Делим r−1 íà r0 с остатком r−1 = r0q0 + r1 и представляем r1 как линейную комбинацию a è b: r1 = a · 1 + b(−q0).
Для вычисления значений линейных коэффициентов xi è yi íà i-ì
шаге достаточно иметь линейные коэффициенты на двух предыдущих шагах.
Преобразования продолжаем до тех пор, пока rn ≠ 0.
12
Выведем рекуррентные формулы для линейных коэффициентов
ri = axi + byi = ri−2 − ri−1qi−1 = (axi−2 a(xi−2 − xi−1qi−1) + b(yi−2 − yi−1qi−1).
Итак, при начальных условиях
выполняем |
xi = xi 2 |
|
|
||
|
ri = ri−2 |
|
|
yi = yi |
−2 |
|
|
− |
x−1 = 1 y−1 = 0
x0 = 0
y0 = 1
− ri−1qi−1 − xi−1qi−1 , − yi−1qi−1
+ byi−2) − (axi−1 + byi−1)qi−1 =
ïîêà ri ≠ 0.
Как только rn+1 = 0, то последний ненулевой остаток есть наибольший общий делитель rn = (a, b), à x = xn è y = yn
коэффициенты.
9.Сравнения
Îп р е д е л е н и е. Если у двух целых чисел a è b остаток от деления на число m N одинаков, то такие числа называются равноостаточными или сравнимыми по модулю m
a ≡ b (mod m).
Теорема 1. Два числа будут сравнимы по модулю m тогда и только тогда, когда (a − b) . m.
Ä î ê à ç à ò å ë ü ñ ò â î
Пусть a = m · q + r, b = m · p + r. Вычтем из первого выражения второе a − b = m · q + r − m · p − r = m(q − p). Видно, что (a − b) . m.
Свойства сравнений
1. Рефлексивность, симметричность и транзитивность. a ≡ a (mod m).
Åñëè a ≡ b (mod m), òî b ≡ a (mod m).
13
Åñëè |
{b |
≡ c |
(mod m) , òî a ≡ c (mod m). |
|
a |
b |
(mod m) |
|
|
≡ |
Ä î ê à ç à ò å ë ü ñ ò â î |
|
|
|
(a − b) . m a − b = m · q
(b − c) . m b − c = m · p
Складывая две строки, имеем a − c = m · (q + p) (a − c) . m a ≡ c (mod m).
2. Сравнения можно почленно складывать, вычитать и перемножать.
2.1. Сложение. |
(mod m), òî a + c ≡ b + d (mod m). |
||
Åñëè |
{c |
≡ d |
|
|
a |
b |
(mod m) |
≡
Ä î ê à ç à ò å ë ü ñ ò â î
a = b + mq c = d + mp
Сложив две строки, получаем a + c = (b + d) + m(q + p). Видно, что a + c ≡ b + d (mod m).
2.2. Вычитание. |
|||
Åñëè |
{c |
≡ d |
(mod m), òî a − c ≡ b − d (mod m). |
|
a |
b |
(mod m) |
≡
Ä î ê à ç à ò å ë ü ñ ò â î
a = b + mq c = d + mp
Вычитая из первой строки вторую, имеем a − c = (b − d) + m(q − p). Видно, что a − c ≡ b − d (mod m).
2.3. Умножение. |
|||
Åñëè |
{c |
≡ d |
(mod m), òî ac ≡ bd (mod m). |
|
a |
b |
(mod m) |
≡
Ä î ê à ç à ò å ë ü ñ ò â î
a = b + mq c = d + mp
Перемножая две строки, получаем ac = (b + mq)(d + mp) = bd + bmp + dmq + m2pq = bd + m(bp + dq + mpq). Следовательно, (ac − bd) . m ac ≡ bd (mod m).
14
3.В сравнении можно переносить слагаемое из одной части в другую
ñзаменой знака на противоположный.
Åñëè a + b ≡ c (mod m), òî a ≡ c − b (mod m).
Ä î ê à ç à ò å ë ü ñ ò â î
a + b ≡ c |
(mod m) |
b ≡ b |
(mod m) |
Вычитая вторую строку из первой, имеем a ≡ c − b (mod m).
4. Обе части сравнения можно умножить на константу. Если a ≡ b (mod m), òî ac ≡ bc (mod m).
Ä î ê à ç à ò å ë ü ñ ò â î
a ≡ b (mod m)
c ≡ c (mod m)
Перемножая эти сравнения, имеем ac ≡ bc (mod m).
5. Обе части сравнения можно возводить в степень. Если a ≡ b (mod m), òî an ≡ bn (mod m).
Ä î ê à ç à ò å ë ü ñ ò â î
a ≡ b (mod m)
Умножив само на себя это сравнение n раз, имеем
a · a · a . . . · a ≡ b · b · b . . . · b (mod m). Ò.å. an ≡ bn (mod m).
6. Обе части сравнения можно разделить на их общий делитель, если он взаимно прост с модулем.
Åñëè a ≡ b (mod m), òî ac ≡ cb |
(mod m), |
ãäå c общий делитель a è b, |
|
(m, c) = 1. |
|
Ä î ê à ç à ò å ë ü ñ ò â î |
|
Èç a = a′c è b = b′c имеем |
|
a′c ≡ b′c |
(mod m) |
a′c − b′c = m · q
15
(a′ − b′)c = mq . c, íî m не может делиться на c, ò.ê. (m, c) = 1 q . c
a′ − b′ = mq′, ãäå q′ = qc
a′ ≡ b′ |
(mod m) |
|||
a |
≡ |
b |
(mod m). |
|
c |
c |
|
||
7. Обе части сравнения и модуль можно умножить на константу. Если a ≡ b (mod m), òî ac ≡ bc (mod mc).
Ä î ê à ç à ò å ë ü ñ ò â î
a − b = mq c(a − b) = c · m · q ac − bc = (mc)q
ac ≡ bc (mod mc).
8. Обе части сравнения и модуль можно разделить на их общий де-
литель. |
|
|
|
|
|
|
|
|
Åñëè a ≡ b (mod m), òî ac ≡ cb |
mod mc |
, |
||||||
ãäå c общий делитель a, b, m. |
( |
|
|
) |
||||
Ä î ê à ç à ò å ë ü ñ ò â î |
||||||||
Ò.ê. c общий делитель a, b, m, òî a = a′c, b = b′c, m = m′c. |
||||||||
|
|
a′c − b′c = m′cq |
|
|||||
|
|
a′ − b′ = m′q |
|
|||||
|
a′ ≡ b′ |
(mod m′) |
||||||
|
a |
|
b |
|
m |
|
||
|
|
≡ |
|
|
(mod |
|
). |
|
|
c |
c |
c |
|||||
9. Если сравнение выполняется по модулю m, то оно будет выпол-
няться по любому делителю этого модуля. |
) |
|
ãäå c делитель m. |
( |
|
Åñëè a ≡ b (mod m), òî a ≡ b |
mod mc |
, |
Ä î ê à ç à ò å ë ü ñ ò â î a − b = m · q
16
Умножим и разделим левую часть равенства на делитель c
a − b = cmc q
a − b . mc
a ≡ b |
(mod c ). |
|
|
|
m |
10. Если одна часть сравнения и модуль делятся на некоторое число, то и другая часть сравнения делится на то же число.
Åñëè a ≡ b (mod m), a . c è m . c, òî b . c. Ä î ê à ç à ò å ë ü ñ ò â î
|
|
|
|
|
|
|
a − b = m · q |
Ò.ê. a . c è m . c, òî è b . c. |
|
|
|||||
11. Если выполняется система сравнений |
|||||||
|
a |
≡ |
b |
(mod m1) |
|
|
b (mod M), ãäå M = [m1, m2, . . . , mn]. |
|
|
|
, òî a |
≡ |
|||
|
|
≡ b |
|
|
|
||
|
|
|
|
|
|
||
|
|
(mod m2) |
|
|
|
||
a |
|
|
|
||||
a· · |
≡· |
b |
(mod mk) |
Ä î ê à ç à ò å ë ü ñ ò â î |
|||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
Рассмотрим систему из двух сравнений
{a ≡ b (mod m1) . a ≡ b (mod m2)
Пусть m1 = m′1d, m2 = m′2d, ãäå d = (m1, m2), причем (m′1, m′2) = 1. Переписывая систему, имеем
{a − b = m1q1 = m′1dq1 a − b = m2q2 = m′2dq2
m′1q1 = m′2q2
m′1q1 . m′2 q1 = m′2q3
a − b = m′1dm′2q3 a ≡ b (mod m′1m′2d)
17
a ≡ b (mod M),
ãäå M = [m1, m2] = m′1m′2d.
Аналогичным образом доказывается система с произвольным числом сравнений.
10.Полная система вычетов
Îп р е д е л е н и е. Все числа, имеющие одинаковый остаток при делении на некоторое число m, образуют класс чисел по модулю m.
Пример. Пусть m = 5, тогда
. . . , −9, −4, 1, 6, 11, . . . класс чисел по модулю 5;
. . . , −8, −3, 2, 7, 12, . . . класс чисел по модулю 5;
. . . , −7, −2, 3, 8, 13, . . . класс чисел по модулю 5;
. . . , −6, −1, 4, 9, 14, . . . класс чисел по модулю 5;
. . . , −10, −5, 0, 5, 10, . . . класс чисел по модулю 5.
Общий вид класса чисел {mq + r | q Z}. Все числа из класса сравнимы по mod m. Всего имеется m классов чисел по mod m.
Îп р е д е л е н и е. Любое число из класса чисел называется вычетом по модулю m.
Îп р е д е л е н и е. Наименьший неотрицательный вычет наименьшее неотрицательное число, находящееся в данном классе чисел.
Îп р е д е л е н и е. Полной системой вычетов по некоторому модулю называется система чисел, взятых по одному из каждого класса по этому модулю.
Например, {6, 12, 3, −1, −5} образуют полную систему вычетов по mod 5. Каждое из множеств {0, 1, 2, 3, 4}; {−4, −3, −2, −1, 0}; {−2, −1, 0, 1, 2} также образует полную систему вычетов по mod 5.
Теорема 1. Любые m чисел, попарно несравнимые по модулю m, образуют полную систему вычетов по модулю m.
Ä î ê à ç à ò å ë ü ñ ò â î
Åñëè a ̸≡b (mod m), то числа a è b принадлежат разным классам. Если m чисел попарно несравнимы между собой, то все они принадлежат
18
разным классам. Т.к. всего имеется ровно m классов, то в каждый класс попадет по одному числу.
Теорема 2. Если по модулю m, òî ax систему вычетов.
(a, m) = 1, è x пробегает полную систему вычетов + b, ãäå b любое целое, тоже пробегает полную
Ä î ê à ç à ò å ë ü ñ ò â î
Докажем, что все m вычетов вида ax+b лежат в разных классах чисел
и, следовательно, пробегают полную систему вычетов. Пусть имеется два вычета, лежащие в одном классе
ax1 + b ≡ ax2 |
+ b (mod m); |
|
ax1 |
≡ ax2 |
(mod m). |
Тогда, учитывая (a, m) = 1, по свойству 9.6 |
||
x1 |
≡ x2 |
(mod m). |
Последнее невозможно, т.к. x1 è x2 лежат в разных классах. Следовательно, ax + b пробегает полную систему вычетов.
Пример. x {6, 7, −2, −1, 0} пробегает полную систему вычетов по модулю 5, тогда (3x + 2) {20, 23, −4, −1, 2} тоже пробегает полную систему вычетов по модулю 5.
11.Функция Эйлера
Îп р е д е л е н и е. Функцией Эйлера от натурального числа m называется число натуральных чисел, не превышающих m и взаимно
простых с ним.
Обозначение: φ(m) функция Эйлера от m N. Рассмотрим следующую таблицу.
19
|
m |
φ(m) |
{a | (a, m) = 1, a ≤ m} |
|
1 |
1 |
1 |
|
|
|
|
|
2 |
1 |
1 |
|
|
|
|
|
3 |
2 |
1, 2 |
|
4 |
2 |
1, 3 |
|
5 |
4 |
1, 2, 3, 4 |
|
|
|
|
|
6 |
2 |
1, 5 |
|
|
|
|
|
7 |
6 |
1, 2, 3, 4, 5, 6 |
|
|
|
|
|
8 |
4 |
1, 3, 5, 7 |
|
9 |
6 |
1, 2, 4, 5, 7, 8 |
|
10 |
4 |
1, 3, 7, 9 |
|
|
|
|
|
11 |
10 |
1, 2, 3, 4, 5, 6, 7, 8, 9, 10 |
|
|
|
|
|
12 |
4 |
1, 5, 7, 11 |
Из таблицы видно, что φ(10) = 4. Это означает, что с числом 10
взаимно просты четыре числа, не превышающие его самого это 1, 3, 7 и 9.
Теорема 1. Пусть p простое число, α N, тогда
|
|
|
φ(pα) = pα−1(p − 1). |
|
|||||||
|
|
|
Ä î ê à ç à ò å ë ü ñ ò â î |
|
|||||||
|
Если число не делится на p, то оно взаимно просто с pα. Всего чисел, |
||||||||||
меньших pα и делящихся на p ровно |
p |
|
|
|
|
p, |
|||||
p . Тогда чисел, не делящихся на |
|||||||||||
|
|
p |
|
|
|
||||||
ровно pα − |
= pα − pα−1 = pα−1(p − 1). |
|
|
|
|
||||||
p |
|
|
|
|
|||||||
2 |
2 Рассмотрим примеры φ(9) = φ(32) = 31(3 − 1) = 6; φ(8) = φ(23) = |
||||||||||
(2 − 1) = 4. |
|
|
|
|
|
|
|
|
|||
|
О п р е д е л е н и е. Функция f(n), n N называется мультиплика- |
||||||||||
тивной, если |
{ |
f(ab) = f(a) |
· |
f(b) |
|
|
|||||
|
|
|
. |
|
|||||||
|
|
|
(a, b) = 1 |
|
|
|
|
||||
|
Пример. Пусть f(n) = nα, ãäå α N. Тогда f(ab) = (ab)α = aαbα = |
||||||||||
f(a) · f(b). Т.е. рассмотренная функция мультипликативна. |
|
||||||||||
|
Теорема 2. Функция Эйлера мультипликативна. |
|
|||||||||
|
|
|
{ |
φ(ab) = φ(a) |
· |
φ(b) |
. |
|
|||
|
|
|
(a, b) = 1 |
|
|
|
|
||||
20
