Сравнение по модулю: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Kucev (обсуждение | вклад) |
Kucev (обсуждение | вклад) |
||
Строка 198: | Строка 198: | ||
Методы теории сравнений используются в [[Теория чисел|теории чисел]], [[Теория групп|теории групп]], [[Теория колец|теории колец]], [[Теория узлов|теории узлов]], [[Общая алгебра|общей алгебре]], [[Криптография|криптографии]], [[Информатика|информатике]], [[Химия|химии]] и других областях. |
Методы теории сравнений используются в [[Теория чисел|теории чисел]], [[Теория групп|теории групп]], [[Теория колец|теории колец]], [[Теория узлов|теории узлов]], [[Общая алгебра|общей алгебре]], [[Криптография|криптографии]], [[Информатика|информатике]], [[Химия|химии]] и других областях. |
||
Например,сравнения часто применяются для вычисления контрольных сумм, используемых в идентификаторах. Так для определения ошибок при вводе [[IBAN (ISO 13616)|международного номера банковского счета]] используется сравнение по модулю 97<ref>{{книга |автор=Harald Niederreiter, Arne Winterhof |заглавие=Applied Number Theory |место= |издательство=«Springer» |год=2015|страницы=369 |страниц=442 | |
Например,сравнения часто применяются для вычисления контрольных сумм, используемых в идентификаторах. Так для определения ошибок при вводе [[IBAN (ISO 13616)|международного номера банковского счета]] используется сравнение по модулю 97<ref>{{книга |автор=Harald Niederreiter, Arne Winterhof |заглавие=Applied Number Theory |место= |издательство=«Springer» |год=2015|страницы=369 |страниц=442 |isbn=978-3-319-22321-6}} </ref>. |
||
В криптографии сравнения можно встретить в [[Криптосистема с открытым ключом|системах с открытым ключом]], использующих, например, [[RSA|алгоритм RSA]] или [[Протокол Диффи — Хеллмана|протокол Диффи — Хеллмана]].Также, модульная арифметика обеспечивает [[Конечное поле|конечные поля]],над которыми затем строятся [[Эллиптическая кривая|эллиптические кривые]], и используется в различных протоколах с симметричным ключем ([[Advanced Encryption Standard|AES]], [[IDEA|IDEA]])<ref>{{книга |автор=Венбо Мао |ответственный=пер. с англ. Д. А. Клюшина|заглавие=Современная криптография: теория и практика. |место=М. |издательство=Издательский дом «Вильямс» |год=2005 |страниц=768 |ссылка=}} </ref>. |
В криптографии сравнения можно встретить в [[Криптосистема с открытым ключом|системах с открытым ключом]], использующих, например, [[RSA|алгоритм RSA]] или [[Протокол Диффи — Хеллмана|протокол Диффи — Хеллмана]].Также, модульная арифметика обеспечивает [[Конечное поле|конечные поля]],над которыми затем строятся [[Эллиптическая кривая|эллиптические кривые]], и используется в различных протоколах с симметричным ключем ([[Advanced Encryption Standard|AES]], [[IDEA|IDEA]])<ref>{{книга |автор=Венбо Мао |ответственный=пер. с англ. Д. А. Клюшина|заглавие=Современная криптография: теория и практика. |место=М. |издательство=Издательский дом «Вильямс» |год=2005 |страниц=768 |ссылка=}} </ref>. |
Версия от 10:44, 10 ноября 2015
Сравнение[1] по модулю натурального числа n — в теории чисел отношение эквивалентности на кольце целых чисел, связанное с делимостью на n. Факторкольцо по этому отношению называется кольцом вычетов. Совокупность соответствующих тождеств и алгоритмов образует модульную[2] (или модулярную) арифметику.
История
Возникновение теории сравнений относится к концу XVIII — началу XIX веков и связано с изучением диофантовых уравнений. Например, одно из первых её применений можно обнаружить в трудах Лежандра, а именно в теореме о разрешимости диофантовых уравнений определенного вида[3]. Также сравнения применялись Эйлером и Лагранжем. Впоследствии Гаусс преобразовал все накопленные сведения в стройную теорию,которая впервые была изложена в его книге «Арифметические исследования», 1801 год. Он же предложил утвердившуюся в математике символику для сравнений[4].
Определения
Если два целых числа a и b при делении на n дают одинаковые остатки, то они называются сравнимыми (или равноостаточными) по модулю числа n[5]. Шаблон:/рамка Сравнимость чисел a и b записывается в виде формулы (сравнения): Число n называется модулем сравнения.
Доказательство
Пусть,
Тогда
И b представимо в виде:
Тогда
Таким образом
Доказана равносильность определения условию 2, которое эквивалентно условию 1.
Также, 32 и −10 сравнимы по модулю 7, так как их разность 42 делится на 7, и к тому же имеет место представление: СвойстваДля фиксированного натурального числа n отношение сравнимости по модулю n обладает следующими свойствами:
Таким образом, отношение сравнимости по модулю n является отношением эквивалентности на множестве целых чисел[7]. Кроме вышеперечисленных свойств, для сравнений справедливы следующие утверждения:
Доказательство
они сравнимы по модулю,равному наименьшему общему кратному модулей :[n1,n2,...,nk]. Доказательство Пусть, Следовательно, Так как разность a-b кратна каждому ni, то она кратна и их наименьшему общему кратному
необходимо и достаточно, чтобы
Операции со сравнениямиСравнения по одному и тому же модулю обладают многими свойствами обычных равенств. Например, их можно складывать, вычитать и перемножать: если числа a1, a2, …, an и b1, b2, …, bn попарно сравнимы по модулю n, то их суммы a1 + a2 + … + an и b1 + b2 + … + bn, а также произведения a1a2 … an и b1b2 … bn тоже сравнимы по модулю n. При этом нельзя выполнять эти операции со сравнениями, если их модули не совпадают[9]. Отдельно, следует отметить, что к обеим частям сравнения можно прибавить одно и то же число, также можно перенести число из одно части сравнения в другую со сменой знака. Если числа a и b сравнимы по модулю n, то их степени ak и bk тоже сравнимы по модулю n при любом натуральном k[10]. K любой из частей сравнения можно прибавить целое число, кратное модуля, то есть, если числа a и b сравнимы по модулю некоторого числа n, то и a+t1n сравнимо с b+t2n по модулю n (t1 и t2 — произвольных целые числа) .Также обе части сравнения и модуль можно умножить на одно и то же число, то есть, если числа a и b сравнимы по модулю некоторого целого числа n, то и числа aq и bq сравнимы по модулю числа nq,где q — целое. Сравнения, однако, нельзя, вообще говоря, делить друг на друга или на другие числа. Пример: , однако, сократив на 2, мы получаем ошибочное сравнение: . Правила сокращения для сравнений следующие.
Если число c не взаимно просто с модулем, то сокращать на c нельзя. Например,
если , то [11]. Связанные определенияКлассы вычетовМножество всех чисел, сравнимых с a по модулю n, называется классом вычетов a по модулю n, и обычно обозначается или . Таким образом, сравнение равносильно равенству классов вычетов [12]. Любое число класса называется вычетом по модулю n. Пусть для определенности r―остаток от деления любого из представителей выбранного класса на n, тогда любое число m из этого класса можно представить в виде m=nt+r, где t—целое. Вычет равный остатку ri называется наименьшим неотрицательным вычетом, а вычет , самый малый по абсолютной величине, называется абсолютно наименьшим вычетом.При r<n/2 =r,в противном случае =r-n.Если n-чётное и r=n/2, то =-r/2[13]. Поскольку сравнимость по модулю n является отношением эквивалентности на множестве целых чисел , то классы вычетов по модулю n представляют собой классы эквивалентности; их количество равно n. Множество всех классов вычетов по модулю n обозначается или [14]. Операции сложения и умножения на индуцируют соответствующие операции на множестве : Относительно этих операций множество является конечным кольцом, а для простого n — конечным полем.[15]. Системы вычетовСистема вычетов позволяет осуществлять арифметические операции над конечным набором чисел, не выходя за его пределы. Полная система вычетов по модулю n ― любой набор из n попарно несравнимых по модулю n целых чисел. Обычно в качестве полной системы вычетов по модулю n берутся наименьшие неотрицательные вычеты или абсолютно наименьшие вычеты, состоящие из чисел
в случае нечётного , и чисел в случае чётного . Максимальный набор попарно несравнимых по модулю n чисел, взаимно простых с n, называется приведённой системой вычетов по модулю n. Всякая приведённая система вычетов по модулю n содержит элементов, где — функция Эйлера[16]. Например, для числа n=42. Полная система вычетов может быть представлена числами: 0,1,2,3,...,21,22,23,...,39,40,41, а приведенная—1,5,11,13,17,19,23,25,29,31,37,41. Решение сравненийСравнения первой степениВ теории чисел, криптографии и других областях науки часто возникает задача поиска решений сравнения первой степени вида: Решение такого сравнения начинается с вычисления НОД(a, m) = d. При этом возможны 2 случая:
Практическое вычисление значения c можно осуществить разными способами: с помощью теоремы Эйлера, алгоритма Евклида, теории цепных дробей (см. алгоритм) и др. В частности, теорема Эйлера позволяет записать значение c в виде:
Для сравнения имеем , поэтому по модулю 22 сравнение имеет два решения. Заменим 26 на 4, сравнимое с ним по модулю 22, и затем сократим все 3 числа на 2: Поскольку 2 взаимно просто с модулем 11, то его можно обратить по модулю 11 и найти . Умножая сравнение на 6, получаем решение по модулю 11: , эквивалентное совокупности двух решений по модулю 22: и . Сравнения второй степениСравнения второй степени по простому модулю n имеет следующий общий вид: Это выражение можно привести к виду:
а при замене z=x+b упрощается максимально:
Решение этого сравнения сводится к выяснению, является ли данное число квадратичным вычетом (с помощью квадратичного закона взаимности) и последующему вычислению квадратного корня по данному модулю[18]. Для вычисления квадратного корня из квадратичного вычета существует вероятностный метод Берлекэмпа. Системы сравненийКитайская теорема об остатках утверждает, что система сравнений с попарно взаимно простыми модулями : всегда разрешима, и её решение единственно по модулю . Другими словами, китайская теорема об остатках утверждает, что кольцо вычетов по модулю произведения нескольких взаимно простых чисел является прямым произведением соответствующих множителям колец вычетов. ПрименениеМетоды теории сравнений используются в теории чисел, теории групп, теории колец, теории узлов, общей алгебре, криптографии, информатике, химии и других областях. Например,сравнения часто применяются для вычисления контрольных сумм, используемых в идентификаторах. Так для определения ошибок при вводе международного номера банковского счета используется сравнение по модулю 97[19]. В криптографии сравнения можно встретить в системах с открытым ключом, использующих, например, алгоритм RSA или протокол Диффи — Хеллмана.Также, модульная арифметика обеспечивает конечные поля,над которыми затем строятся эллиптические кривые, и используется в различных протоколах с симметричным ключем (AES, IDEA)[20]. В химии последняя цифра в регистрационном номере CAS является значением контрольной суммы, которая вычисляется путём сложения последней цифры номера, умноженной на 1, второй справа цифры, умноженной на 2, третьей, умноженной на три и так далее до первой слева цифры, завершаясь вычислением остатка от деления на 10. См. также
Примечания
Литература
|