Вычисление мультипликативных обратных элементов по заданному модулю — различия между версиями
Isaeva (обсуждение | вклад) |
Isaeva (обсуждение | вклад) |
||
(не показано 5 промежуточных версии этого же участника) | |||
Строка 1: | Строка 1: | ||
Рассмотрим вопрос о мультипликативных обратных элементов по заданному модулю в фактор-кольце <math>Z_p</math>. | Рассмотрим вопрос о мультипликативных обратных элементов по заданному модулю в фактор-кольце <math>Z_p</math>. | ||
+ | |||
+ | |||
+ | '''Теорема''' | ||
+ | |||
+ | Пусть <math>\bar a \in Z_p</math>, тогда класс <math>a</math> имеет мультипликативный обратный элемент по модулю <math>p</math> тогда и только тогда, когда <math>(a, p) = 1</math>. | ||
+ | |||
+ | |||
+ | '''Теорема''' | ||
+ | |||
+ | Характеристика <math>\lambda</math> конечного поля – простое число. | ||
+ | |||
Рассмотрим два способа вычисления обратных мультипликативных элементов. Первый способ основан на рассмотренном выше алгоритме Евклида, второй – на теореме Эйлера. | Рассмотрим два способа вычисления обратных мультипликативных элементов. Первый способ основан на рассмотренном выше алгоритме Евклида, второй – на теореме Эйлера. | ||
+ | |||
+ | ''Первый способ'' | ||
+ | |||
+ | Из условия <math>(a, p) = 1</math> получаем <math>a \cdot x + p \cdot y = 1</math> или <math>a \cdot x \equiv 1 \pmod{p}</math> и, следовательно, <math>x</math> – мультипликативный обратный к <math>a</math> по модулю <math>p</math>. | ||
+ | |||
+ | |||
+ | ''Второй способ'' | ||
+ | |||
+ | Напомним теорему Эйлера. | ||
'''Определение''' | '''Определение''' | ||
− | Функция Эйлера <math> | + | Функция Эйлера <math>\varphi (n)</math> — это количество чисел от <math>1</math> до <math>n</math>, взаимно простых с <math>n</math>. |
− | Т.е. это количество таких натуральных чисел из отрезка [1; n], наибольший общий делитель (НОД) которых с <math>n</math> равен единице. | + | Т.е. это количество таких натуральных чисел из отрезка <math>[1; n]</math>, наибольший общий делитель (НОД) которых с <math>n</math> равен единице. |
'''Tеоремa Эйлера''' | '''Tеоремa Эйлера''' | ||
− | Если <math>a</math> и <math>p</math> взаимно просты, то <math>a^{ | + | Если <math>a</math> и <math>p</math> взаимно просты, то <math>a^{\varphi(p)} \equiv 1 \pmod p</math>, где <math>\varphi (n)</math> - функция Эйлера. |
Доказательство теоремы достаточно простое, возможны различные варианты. Приведем здесь теоретико-числовое доказательство. | Доказательство теоремы достаточно простое, возможны различные варианты. Приведем здесь теоретико-числовое доказательство. | ||
− | Доказательство | + | ''Доказательство'' |
− | Пусть <math>x_1, \dots, x_{ | + | Пусть <math>x_1, \dots, x_{\varphi(p)}</math> — все различные натуральные числа, меньшие <math>p</math> и взаимно простые с ним. |
Рассмотрим все возможные произведения <math>x_i a</math> для всех <math>i</math> от <math>1</math> до <math>\varphi(p)</math>. | Рассмотрим все возможные произведения <math>x_i a</math> для всех <math>i</math> от <math>1</math> до <math>\varphi(p)</math>. | ||
Строка 34: | Строка 54: | ||
Так как <math>a</math> взаимно просто с <math>p</math>, то последнее равенство равносильно тому, что | Так как <math>a</math> взаимно просто с <math>p</math>, то последнее равенство равносильно тому, что | ||
: <math>x_{i_1} - x_{i_2} \equiv 0\pmod p</math> или <math>x_{i_1} \equiv x_{i_2}\pmod p</math>. | : <math>x_{i_1} - x_{i_2} \equiv 0\pmod p</math> или <math>x_{i_1} \equiv x_{i_2}\pmod p</math>. | ||
− | Это противоречит тому, что числа <math>x_1, \dots, x_{ | + | Это противоречит тому, что числа <math>x_1, \dots, x_{\varphi(p)}</math> попарно различны по модулю <math>p</math>. |
Перемножим все сравнения вида <math>x_i a \equiv x_j\pmod p</math>. Получим: | Перемножим все сравнения вида <math>x_i a \equiv x_j\pmod p</math>. Получим: | ||
− | : <math>x_1 \cdots x_{ | + | : <math>x_1 \cdots x_{\varphi(p)} a^{\varphi(p)} \equiv x_1 \cdots x_{\varphi(p)}\pmod p</math> |
или | или | ||
− | : <math>x_1 \cdots x_{ | + | : <math>x_1 \cdots x_{\varphi(p)} (a^{\varphi(p)}-1) \equiv 0\pmod p</math>. |
− | Так как число <math>x_1 \cdots x_{ | + | Так как число <math>x_1 \cdots x_{\varphi(p)}</math> взаимно просто с <math>p</math>, то последнее сравнение равносильно тому, что |
− | : <math>a^{ | + | : <math>a^{\varphi(p)}-1 \equiv 0\pmod p</math> |
или | или | ||
− | :<math>a^{ | + | :<math>a^{\varphi(p)} \equiv 1\pmod p</math>. |
Строка 51: | Строка 71: | ||
Если <math>p</math> - простое число и <math>a</math> - произвольное целое число, не делящееся на <math>p</math>, то <math>a^{p-1} \equiv 1 \pmod p </math>. | Если <math>p</math> - простое число и <math>a</math> - произвольное целое число, не делящееся на <math>p</math>, то <math>a^{p-1} \equiv 1 \pmod p </math>. | ||
+ | |||
+ | |||
+ | '''Следствие''' | ||
+ | |||
+ | В кольце <math>Z_p</math> классов вычетов по модулю <math>p</math> из <math>(\bar a, p) = 1</math> следует, что <math>a^{-1} = a^{-{\varphi}(p)-1}</math>. | ||
+ | |||
+ | |||
+ | Таким образом, для вычисления мультипликативного обратного к классу <math>a</math> по модулю <math>p</math> в случае, когда <math>(\bar a, p) = 1</math>, достаточно <math>\bar a</math> возвести в степень <math>k</math>, где <math>k = p-2</math>, если <math>p</math> – простое число, и <math>k = {{\varphi}(p)-1}</math> в противном случае. | ||
+ | |||
+ | |||
+ | При таком методе вычисления мультипликативного обратного элемента задача сводится к цепочке умножений и делений с остатком на модуль <math>p</math>. Эта задача решается без особых трудностей, если наименьший положительный вычет <math>a \in \bar a</math>, где <math>(\bar a, p) = 1</math>, представлен в СОК. | ||
+ | |||
+ | Однако, вообще говоря, <math>{{\varphi}(p)-1}</math> не является наименьшим показателем степени, для которого <math>(\bar a)^{-1} = (\bar a)^{{\varphi}(p)-1}</math>. | ||
+ | |||
+ | ''Разложение кольца вычетов'' | ||
+ | |||
+ | Из китайской теоремы об остатках следует | ||
+ | |||
+ | ''Утверждение'' | ||
+ | |||
+ | Пусть <math>p = n_{1}^{l_1} \cdot n_{2}^{l_2} \cdot \ldots \cdot n_{k}^{l_k}</math> - каноническое представление числа <math>p</math>. Тогда функция, которая каждому классу <math>\bar x \in Z_m</math> ставит в соответствие кортеж <math>(x_1, x_2, \ldots, x_k)</math>, где <math> x \equiv x_i \pmod {p_{i}^{l_i}}, i=1, \ldots, k</math>, является кольцевым изоморфизмом кольца <math>Z_p</math> класса вычетов по модулю <math>p</math> и кольца кортежей вида <math>(x_1, x_2, \ldots, x_k)</math>, где <math>\bar x \in Z_{p_i^k}, i=1, \ldots, k</math>. | ||
+ | |||
+ | Более того, если обозначить через <math>*</math> любую из кольцевых операций <math>+</math> или <math>\cdot</math> , то | ||
+ | |||
+ | :<math>(x_1, x_2, \ldots, x_k)*(y_1, y_2, \ldots, y_k) = (x_1 * y_1, x_2 * y_2, \ldots, x_k * y_k)</math>. | ||
+ | |||
+ | Таким образом, | ||
+ | |||
+ | :<math>Z_p \cong Z_{n_1}^{l_1} \times Z_{n_2}^{l_2} \times \ldots \times Z_{n_k}^{l_k}</math>, | ||
+ | |||
+ | т.е. кольцо классов вычетов по модулю <math>p</math> раскладывается в прямое произведение колец классов вычетов по модулям <math>n_{1}^{l_1}, n_{2}^{l_2}, \ldots, n_{k}^{l_k}</math>. Это разложение колец индуцирует разложение групп их обратимых элементов: | ||
+ | |||
+ | :<math>U_p \cong U_{n_1}^{l_1} \times U_{n_2}^{l_2} \times \ldots \times U_{n_k}^{l_k}</math>. | ||
+ | |||
+ | |||
+ | Можно сделать вывод о том, что произвольное целое положительное число <math>A, 0 < A < P</math>, где <math>p = p_1 \cdot p_2 \cdot \ldots \cdot p_k</math> и <math>(p_i,p_j) = 1</math> для <math>i \not = j</math>, однозначно представимо своими наименьшими неотрицательными остатками по модулям <math>p_i</math>, причём сложение (а, следовательно, и вычитание) и умножение выполняются покомпонентно. |
Текущая версия на 15:00, 24 июня 2015
Рассмотрим вопрос о мультипликативных обратных элементов по заданному модулю в фактор-кольце .
Теорема
Пусть , тогда класс имеет мультипликативный обратный элемент по модулю тогда и только тогда, когда .
Теорема
Характеристика конечного поля – простое число.
Рассмотрим два способа вычисления обратных мультипликативных элементов. Первый способ основан на рассмотренном выше алгоритме Евклида, второй – на теореме Эйлера.
Первый способ
Из условия получаем или и, следовательно, – мультипликативный обратный к по модулю .
Второй способ
Напомним теорему Эйлера.
Определение
Функция Эйлера — это количество чисел от до , взаимно простых с .
Т.е. это количество таких натуральных чисел из отрезка , наибольший общий делитель (НОД) которых с равен единице.
Tеоремa Эйлера
Если и взаимно просты, то , где - функция Эйлера.
Доказательство теоремы достаточно простое, возможны различные варианты. Приведем здесь теоретико-числовое доказательство.
Доказательство
Пусть — все различные натуральные числа, меньшие и взаимно простые с ним.
Рассмотрим все возможные произведения для всех от до .
Поскольку взаимно просто с и взаимно просто с , то и также взаимно просто с , то есть для некоторого .
Отметим, что все остатки при делении на различны. Действительно, пусть это не так, то существуют такие , что
или
- .
Так как взаимно просто с , то последнее равенство равносильно тому, что
- или .
Это противоречит тому, что числа попарно различны по модулю .
Перемножим все сравнения вида . Получим:
или
- .
Так как число взаимно просто с , то последнее сравнение равносильно тому, что
или
- .
В частном случае, когда простое, теорема Эйлера превращается в так называемую малую теорему Ферма:
Малая теорема Ферма
Если - простое число и - произвольное целое число, не делящееся на , то .
Следствие
В кольце классов вычетов по модулю из следует, что .
Таким образом, для вычисления мультипликативного обратного к классу по модулю в случае, когда , достаточно возвести в степень , где , если – простое число, и в противном случае.
При таком методе вычисления мультипликативного обратного элемента задача сводится к цепочке умножений и делений с остатком на модуль . Эта задача решается без особых трудностей, если наименьший положительный вычет , где , представлен в СОК.
Однако, вообще говоря, не является наименьшим показателем степени, для которого .
Разложение кольца вычетов
Из китайской теоремы об остатках следует
Утверждение
Пусть - каноническое представление числа . Тогда функция, которая каждому классу ставит в соответствие кортеж , где , является кольцевым изоморфизмом кольца класса вычетов по модулю и кольца кортежей вида , где .
Более того, если обозначить через любую из кольцевых операций или , то
- .
Таким образом,
- ,
т.е. кольцо классов вычетов по модулю раскладывается в прямое произведение колец классов вычетов по модулям . Это разложение колец индуцирует разложение групп их обратимых элементов:
- .
Можно сделать вывод о том, что произвольное целое положительное число , где и для , однозначно представимо своими наименьшими неотрицательными остатками по модулям , причём сложение (а, следовательно, и вычитание) и умножение выполняются покомпонентно.