Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Шемякин лекции 2023 / Л10. Элементы теории чисел. Ред.1 - копия

.pdf
Скачиваний:
13
Добавлен:
30.05.2023
Размер:
1.26 Mб
Скачать

Обозначение поля Галуа: GF(2n) или

GF(q).

n –степень образующего полинома, q = 2n

Пример 4.

Зададим примитивный полином f(x) = x8+x6+x5+x+1.

Тогда все элементы поля Галуа GF(28) состоят из полиномов не выше степени

7.

11

Основная теорема теории чисел

n p

a

p

a

 

p

a

s

1

 

2

 

 

 

 

 

 

1

 

2

 

 

s

 

pi - различные простые числа

ai - положительные целые числа

Пример 5.

n = 90 = 2•32 •5

Число p называется простым, если оно не имеет делителей кроме тривиальных (1,-1, p, -p).

12

• Функция Эйлера

φ(1) = 1

φ(n) – количество натуральных чисел в ряду

0, 1, 2, 3, … n – 1

которые взаимно просты с числом n. Для простого числа p

φ(p) = p – 1.

Для произведения двух простых чисел

φ(p*q) = (p – 1)(q - 1).

13

Теорема Эйлера

a φ(n) = 1 (mod n).

Малая теорема Ферма

Для любого простого числа p

a p -1 = 1 (mod p).

14

Наибольший общий делитель

Наибольшим общим делителем (НОД) двух чисел v и u называется наибольшее целое число, которое делит оба числа.

Прямой метод - разложение чисел на множители.

u = 210 = 2•3•5•7, v = 135=3•3•3•5. НОД(210,135)=15

Два числа взаимно просты, если их НОД равен единице.

15

Алгоритм Евклида.

u = a1v + b1

v= a2b1+b2

···

bk-3 = ak-1bk-2 + bk-1

bk-2 = akbk-1 + bk

Если bk = 1, то НОД(u,v) =1, если bk = 0, то НОД(u,v) = bk-1

16

Пример 6.

Определение НОД(210, 145)

210 = 1*145 + 75

145 = 1*75 + 70

75 = 1*70 + 5

60 = 12*5

(210, 145) = 5.

17

Обращение чисел в классах вычетов

Для вычисления обратного в кольце Z(m)

применяется расширенный алгоритм Евклида или т. Эйлера.

В поле GF(p) используют тот же алгоритм Евклида или малую т. Ферма.

18

Расширенный алгоритм Евклида

Дано:

x*a = 1 (mod m ).

Найти:

x = a-1 (mod m).

Находим (m, a) = 1 и методом восхождения определяем числа z1, z2 так, чтобы (условие необходимое)

x* z1 + a* z2 = 1 (mod m).

Получаем

x = a-1 (mod m).

19

Пример 7.

m = 17 a = 13 17 = 1*13 + 4 13 = 3*4 + 1

Восхождение

1 = 13 – 3*4

1 = 13 – 3*(17 – 1*13)

1 = 4*13 – 3*17

x = 4 = 13-1 (mod 17)

20