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

Основные математические принципы в реализации некоторых алгоритмов информационной безопасности. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
1
x
x
Определение. Алгебра
;,,, ,0,1KK

типа < 2, 1, 2, 1, 0, 0 >
называется полем, если
1
1) алгебры
;,,0KK  
и
\{0}; , ,1KK

являются абеле-
выми группами;
2) выполнены тождества:
,,,( ) ,
yz x yz xz yz

xx
.
,00 0
Хорошо известные примеры полей – это числовые поля рациональ­ных чисел Q, вещественных чисел R.
2.2. Делимость в кольце целых чисел
Определение. Пусть K – коммутативное кольцо и a, b K. Гово-
рят, что элемент b делится на а, если существует такой элемент с K, что b = ac.
Тот факт, что а делит b, кратко записывают в виде a|b. Факт того, что а не делит b, будем записывать в виде a|b.
Теорема 2.1. Для любых элементов a, b, c коммутативного кольца K
справедливы импликации:
1) a|b, b|c→ a|c;
2) a|b, b|c→ a|(b ± c);
3) a|b→ a|bc.
Если K – коммутативное кольцо с единицей е, то оно обладает так­же свойствами:
4)
5)
,:(|,|),aK rR raara 
,,, :(|,|)ab K r r R abar br 
*
*
12 1 2
где R* = R\{0};
.
Доказательство
Импликации 1−3 следуют непосредственно из определения.
Докажем импликацию 4.
Рассматриваем множество R* = R\{0} − значит, у нас есть обрати­мый элемент, удовлетворяющий свойствам:
11


.rr r r e
11
Получим:
11
aearr arr a
 

();
aaearr arr
  
11
().
Значит, r делится на а, ar делится на a.
Докажем импликацию 5.
У нас a|b. Тогда b = a c при с K.
,br acr
22


 
11 2 1 1 2
|,ar br
12
11
() ,arr cr ar rcr
что и требовалось доказать.
Теорема 2.2. Для любых элементов a, b
Z:
1) a|b→ ±a| ± b;
2) a|b, b ≠ 0→|a| ≤ |b|;
3) a|b, b|a → a= ±b.
Доказательство
Свойство 1 является уточнением свойства 5 теоремы 2.1, поскольку обратимые элементы кольца Z исчерпываются числами +1, 1.
Свойство 2. Из условия a|b следует, что b = a c при некотором с Z. Отсюда по свойству модулей имеем: |b|=|a| · |c|.
Так как b ≠ 0, то |c| > 0, т. е. |c| = 1 + х, где х
. Следовательно,
N
0
|b|=|a|(1 + х) = |a| + |a| х.
Значит, |b| ≥ |a|.
Свойство 3.
Дано:
|,
ab b aq

 
|.
ba a bx

Данная система имеет решение только в случае q = x = t.
12
Получим:
>
<
>
 
,
.
ba
ab b a
bat
 
abt
Разделим первое уравнение на второе:
ab
ab.
Свойство 1 сводит описание всех делителей и всех кратных для данного числа к описанию лишь положительных (натуральных) дели­телей и кратных. Из свойства 2 следует конечность числа различных делителей у любого отличного от нуля целого числа, что дает принци­пиальную возможность нахождения всех делителей числа.
В том случае, когда одно натуральное число не делится на другое, ал­горитм деления «уголком» приводит к неполному частному и остатку от деления. Оказывается, что понятие деления с остатком можно обобщить на любые целые числа.
Определение. Разделить с остатком целое число а на целое число b –
это значит найти целые числа q (неполное частное) и r (остаток), удо­влетворяющие условиям:
q + r,
a = b
0 ≤ r < |b|.
Теорема 2.3. Если a, b Z и b ≠ 0, то а можно разделить на и b
остатком, причем неполное частное и остаток определяются одно-
значно.
Доказательство
Сначала докажем существование чисел q и r, удовлетворяющих условиям a = b q + r, 0 ≤ r < |b|.
Рассмотрим отдельно три случая.
12 3
A ≥ 0,
b
A
0
b
a – любое,
0,
0
b<0
а) a ≥ 0, b > 0.
Аксиома Архимеда утверждает, что
a <
bq
.
1
13
, , ab N q N 
верно при
1
По принципу наименьшего числа в каждом непустом множестве М
из множества целых неотрицательных чисел P существует наименьшее число q, что
bq a b q
bq a bq b
0.
 
Обозначим abq r abqr
(1),
   
abqb
,
 . То есть требуемые условия вы-
полняются.
б) a < 0, b > 0.
Пусть a < 0 → –a > 0. По доказанному ранее в пункте а) существу­ют такие числа
Если
qq
где
= 0, то
r
1
, r = 0. Если же
1
1,qq 
1
, что
,qr
11
abq
() ( 1)( ) ,abq r b q br bqr

1
 
и требуемые условия выполняются при
1
, то
0r
1
11 1 1
Так как
.rbr
,0 .abq r r b
11 1
0,rb
1
то
.
0 rb
, и для чисел q, r
требуемые условия выполнены.
в) a – любое, b < 0.
По уже доказанному в пунктах а) и б) найдутся такие числа что
() ,0 ||abqrrbb

11 1
.
,qr
11
,
Отсюда имеем
() ,0 ||abq r r b
 
11 1
.
Таким образом, существование неполного частного и остатка дока­зано во всех случаях.
Докажем единственность. Допустим, что для целых чисел a, b, q, r,
выполняются соотношения из определения и соотношения:
,qr
11
,0 | |abq r r b

11 1
14
.
Тогда имеем

,bq r bq r
11
и потому
.
qq
. Значит,
||||rr b
из последнего равен-
1
1
qq
1
→
rr
.
,
1
Так как
||| || |bqq rr
неотрицательные числа, меньшие |b|, то
,rr
1

Предположим противное, т. е. что при ства и теоремы 2.2 (2) следует, что
11
||||rr b
1
что и требовалось доказать.
Ниже остаток от деления а на b будем обозначать через rba.
Следствие. Если a, b
Z и b ≠ 0, то
ba ra
b
.|0
Задания для самостоятельного решения
1. Число а = 42 157 при делении на некоторое целое положительное
число b дало в частном q = 231. Найти делитель b и остаток r.
2. Показать, что если пятизначное число делится на 41, то и все
числа, получаемые путем круговой перестановки цифр этого числа, делятся на 41.
3. Показать, что m
5
– m, где m – натуральное число, делится на 30.
4. Некоторое шестизначное число оканчивается цифрой 5; если эту
цифру переставить на первое место слева, то получится новое число, в 4 раза большее первоначального. Найти это число.
5. Показать, что n (n + 1) (2n + 1), где n – натуральное число, делит-
ся на 6.
6. Показать, что n (n
2
+ 5), где n – натуральное число, делится на 6.
7. Показать, что если числитель дроби есть разность квадратов
двух нечетных чисел, а знаменатель – сумма квадратов тех же чисел, то такая дробь всегда сократима на 2, но несократима на 4.
8. Найти четырехзначное число, являющееся точным квадратом,
у которого цифра тысяч одинакова с цифрой десятков, а цифра сотен на единицу больше цифры единиц.
9. Показать, что сумма квадратов пяти последовательных целых
чисел не может быть точным квадратом.
10. Если остаток от деления некоторого числа на 9 есть одно из чи-
сел 2, 3, 5, 6, 8, то это число не может быть точным квадратом.
15
2.3. Наибольший общий делитель
Определение. Наибольшим общим делителем (НОД) чисел
, ...,aanZ
1
виям:
а) d есть общий делитель чисел
б) d делится на любой общий делитель чисел a1, …, an, т. е.
называют любое целое число d, удовлетворяющее усло-
,..., ,
aa
1
: | , ..., | | .
d Z da da dd
1111 1
т. е.
n
n
, ..., ;||
da da
1
n
Множество всех наибольших делителей чисел через
НОД , ..., .{}
aa
1
Теорема 2.4. Если целые числа
существует хотя бы один НОД
n
, ...,
aa
1
НОД , ..., ,{}
daa
, ...,
aa
1
, не все равны 0 и для них
n
1
то они имеют ров-
n
обозначают
n
но два НОД, которые отличаются только знаком.
Доказательство
Пусть целые числа
aa

1 n
не все равны 0, и
НОД , ..., ,{}
daa
1
n
т. е. d удовлетворяет условиям определения. Тогда d ≠ 0, и из теоре­мы 2.2 1) следует, что этим условиям удовлетворяет также число d.
Если целое число d1 также является НОД чисел условию б) определения
ем
,dd т. е.
1
или
dd
1
1
|dd
1
и
, а тогда по теореме 2.2 3) име-
|dd
1
.dd
Таким образом, в рассматриваемом случае
,..., ,
aa
1
НОД ,. ,{..}
то по
n
aa
1
n
, ,{}dd что и требовалось доказать.
Из теоремы 1.4 следует, что если множество
aa
1
не
}НОД ,..{.,
n
пусто, то в нем содержится единственное неотрицательное число. Условимся обозначать его через
, ..., .()
aa
1
Для решения вопроса о существовании НОД чисел
n
, ...,
aa
1
огра-
n
ничимся сначала рассмотрением случая n = 2. В этом случае для нахождения НОД существует известный алгоритм, описанный на гео­метрическом языке Евклидом1.
1
Евклид – древнегреческий математик (365300 лет до н. э.), впервые
осуществивший систематизацию и аксиоматическое изложение накопившихся геометрических знаний.
16
Пусть даны два целых числа а, b. Если b = 0, то, очевидно,
a = НОД{а, b}. Поэтому будем считать, что b ≠ 0.
Алгоритм Евклида для целых чисел а, b при условии b ≠ 0 заключа-
ется в следующем. Сначала делим с остатком а на b:
.
Если
,0 | |abq r r b

11 1
= 0, то алгоритм окончен. В этом случае b|а, и, очевидно,
r
1
b = НОД {а, b}.
Если же
Если
≠ 0, то делим с остатком b на
r
1
,0brq r r r

12 2 2 1
= 0, то алгоритм окончен. Иначе делим с остатком
r
2
:
r
1
.
на
r
r
1
и т.д. до тех пор, пока не получим остаток, равный нулю. Данный ал­горитм конечен, так как остатки образуют убывающую последователь­ность.
Запишем алгоритм в общем виде:
 
abq r r b

brq r r r
12 2 2 1

rrq r r r
1233 3 2
,0 | |,
11 1
,0 | |,
,0 | |,
(2.1)
...........................................
rrqrrr
21 1
nnnnnn

rrq
nnn
,0 | |,

11

.
2
Прослеживая систему равенств снизу вверх, нетрудно заметить по­следовательно, что
но,
есть общий делитель чисел а, b. Если d1 какой-либо другой их
r
n
делит числа
r
n
,
,…,
r
r
1n
2n
, b, а. Следователь-
r
1
общий делитель, то, прослеживая систему равенств сверху вниз, полу­чим последовательно: d1 делит
r
1
, …,
. Следовательно,
r
n
= (a, b).
r
n
Отсюда по теореме 2.4 можно сделать вывод о том, что справедлива следующая теорема.
17
Теорема 2.5. Для любых целых чисел a, b существует единствен-
ный неотрицательный наибольший общий делитель (a, b). При этом, если а|b или b|а, то соответственно (а, b) = а или (а, b) = b, в против- ном случае (а, b) совпадает с последним не равным нулю остатком в алгоритме Евклида для чисел а, b.
Пример. Найдем НОД для чисел 2346, 646.
Применим способ последовательного деления, называемый алго­ритмом Евклида (2.1). В данном случае будем иметь:
2346 646
1938 3 646 408
408 1 408 238
238 1 238 170
170 1 170 68
136 2
68 68 2
0
34
Последний отличный от нуля остаток равен 34, следовательно, (2346, 646) = 34.
Теорема 2.6. Для любого натурального числа n ≥ 2 и любых целых
чисел
, ...,
aa
1
ный НОД чисел
существует НОД, причем единственный неотрицатель-
n
находится по формуле
, ...,
aa
1
n
aa aaa aa
11231
nnn
.( , ..., ... , , , ...)) ,(,
Доказательство
Доказательство ведем по индукции по n.
База индукции при n = 2 следует из теоремы 2.5.
18
Допустим, что выражение верно для n = k ≥ 2 и докажем его для
n = k + 1.
По теореме 2.5
( , ..., ) ... , , , ...,() ,,
da a aaa a a

11 123 1
kkk
da a aaa aa

21 1 123 1
kkk
являются вполне определенными числами из теоремы достаточно показать, что
(( , ..., ) ... , , , ..., ,)
и для доказательства
,N
0
НОД , ..., , .{}
daaa
11
kk
Из определения чисел d1, d2 и из предположения индукции получа­ем равенства
da ad da
, ..., , , .()()
11 2 1 1
kk
Очевидно, d2 удовлетворяет условиям определения НОД чисел
,..., ,
aa
11
что и требовалось доказать.
k
Используя алгоритм Евклида, нетрудно представить любой НОД чисел
, ...,
aa
1
в виде целочисленной линейной комбинации этих чи-
n
сел. Сделаем это сначала для n = 2.
Теорема 2.7. Если
, ..., ,
rr
1
, ...,
qq
n
1
последовательности остат-
n
ков и неполных частных в алгоритме Евклида для чисел а, b, то вы­полняются равенства:
где
raubvk n
kkk
целые числа, определяемые рекуррентными соотношени-
,ku
v
k
, 1, ..., .

(2.2)
ями:
uu uqvv vq
kk kkkk kk

21 21
 
,
(2.3)
и начальными условиями:
01011

(2.4)
.0, 1, 1,uuvvq
Доказательство
Сначала заметим, что числа
, ..., ,
rr
1
, ...,
qq
n
1
однозначно опре-
n
деляются рекуррентными и начальными условиями (2.3)(2.4).
19
Докажем индукцией по k, что они удовлетворяют соотношениям (2.2).
При k = 1 получим равенство:
1111 1

.abqr
1
,raubv rabq
А это первая строка в алгоритме Евклида (2.1).
Допустим, что соотношение (2.2) выполняется для
1,km
, где
1 ≤ m < n, и докажем его для k = m + 1. Из m + 1-го равенства системы соотношений (2.1), используя предположение индукции, получим при
m + 1 > 2:
r r r q au bv au bv q
  
11 1 1 1 1
mm mm m m m mm
  
()( )
( )( ) .
au u q bv v q au bv
  
Аналогично при m + 1 = 2 получим
111111
mmm mmm m m

222
что и требова-
,raubv
лось доказать.
Следствие. Если a, b
Z и d = (a, b), то существуют такие целые
числа u, v, что выполняется равенство
.au bv d
Доказательство
Сначала заметим, что если d = a или d = b, то утверждение очевидно.
Если d ≠ a или d ≠ b, то по теореме 2.5
dr
и искомыми целыми
,
n
числами u и v могут служить un, vn из (2.2), что и требовалось доказать.
Процесс вычисления чисел uk, vk из (2.2) удобно проводить в виде табл. 2.1.
Таблица 2.1
Вычисление uk, v
k 0 1 2 … m … n
qk q1 q2 … qm … qn
uk 0 1 u2 = u0 – u1q2… um = u
vk 1
q
v
= v0 – v1q2 … vm = v
2
1
k
m–2
m–2
– u
– v
m–1qm
m–1qm
… u = un
… v = vn
20
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]