Пусть a — какое-то целое число.
Мы хотим разделить с остатком a на целое число m.
Разделить с остатком a на m — значит найти два таких целых числа c и r, что
a=c⋅m+rиприэтом0⩽r<m
Число c называется неполным частным, а число r называется остатком при делении a на m.
c=⌊ma⌋иr=a−⌊ma⌋
Для остатка r такую громоздкую запись r=a−⌊a/m⌋ заменяют
обозначением r=defamodm.
Сравнение по модулю
Возьмем множество целых чисел Z.
Зафиксируем какой-то модуль m.
Отношение «иметь один остаток при делении на m» является отношением эквивалентности.
Обозначается ≡m.
То есть, если a и b имеют один и тот же остаток при делении на m,
пишут a≡mb или a≡b(modm).
Действительно, это отношение рефлексивно, так как a≡ma,
симметрично, так как a≡mb⇔b≡ma и транзитивно, так как a≡mb∧b≡mc⇒a≡mc.
Поскольку ≡m — отношение эквивалентности на Z,
то оно делит множество Z на классы эквивалентности [r].
[r]=def{x⋅m+r∣∀x∈Z}
Класс эквивалентности [r] содержит все числа,
имеющие остаток r при делении на m.
Эти классы эквивалентности ещё называют вычетами по модулю m.
Всего таких классов m: от 0 до m−1.
Значит, фактормножество
Z/≡m={[0],[1],[2],…,[m−2],[m−1]}
Сравнимость по модулю и делимость тесно связаны
a≡b(modm)⟺m\(a−b)
Отсюда выводятся очень важные свойства.
Пусть a≡a′иb≡b′(modm).
Тогда
a+b≡a′+b′(modm)иa⋅b≡a′⋅b′(modm)
Более того, для любого многочлена P(x,y)
P(a,b)≡P(a′,b′)(modm)
Китайская теорема об остатках
Можно составлять и решать уравнения по модулю, например x≡r(modm).
Такие уравнения называются сравнениями (говорят, соответственно, решать сравнение, система сравнений и так далее).
Решать сравнения гораздо сложнее, чем обычные уравнения, потому что большинство операций у нас урезано.
Например, решением тривиального сравнения x≡r(modm) служат все числа вида r+nm, где n — любое целое число.
А вот сравнение x2≡rmodp уже не решается стандартными методами.
Давайте пока посмотрим на системы тривиальных сравнений.
О том, как выглядят все решения систем сравнений говорит китайская теорема об остатках:
Китайская теорема об остатках
Пусть m1,m2,…mn — попарно простые натуральные числа, то есть
mi⊥mjдлявсехi=j
Система из n модулярных уравнений
⎩⎨⎧x≡r1(modm1)x≡r2(modm2)⋮x≡rn(modmn)
имеет ровно одно решение по модулю m1m2⋯mn
x=k=1∑nrk⋅Mk⋅Mk−1
где Mk=j=1∏nmj/mk, и Mk−1 — мультипликативно обратный к Mkmodmk в кольце Zmk.
Доказательство здесь конструктивное. Точнее, достаточно проверить,
что такие x действительно являются решением системы сравнений.
Подставив x=k=1∑nrk⋅Mk⋅Mk−1 в j-ое сравнение системы,
получим, что все члены суммы, кроме rj⋅Mj⋅Mj−1 обнулятся,
так как в каждом Mk будет множитель mj.
А оставшийся член rj⋅Mj⋅Mj−1 по модулю mj даст rj,
ведь Mj и Mj−1 мультипликативно взаимнообратны в кольце вычетов Zmj,
и Mj⋅Mj−1=1(modmj)