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

Книги и конспекты / Горьковой Дискретная Математика

.pdf
Скачиваний:
154
Добавлен:
28.05.2022
Размер:
1.1 Mб
Скачать

α = (α1, ..., αi−1, αi, αi+1, ..., αn),

β = (α1, ..., αi−1, αiαi+1, ..., αn).

Лемма 8. ( о немонотонной функции). Если f (x1, ..., xn) / M ,

то из нее путем подстановки констант 0 и 1 и функции x можно

получить функцию x.

Д о к а з а т е л ь с т в о. Сначала покажем, что найдется пара

соседних наборов

α и

 

таких,

что

 

и

 

 

 

 

β,

α ¹ β

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (α) > f (β)

 

 

 

 

 

В самом деле,

так как

 

 

 

,

то существуют наборы

 

1

и

f

 

α

 

 

 

 

 

/ M

 

 

 

 

 

 

1

 

1

 

 

 

 

 

1

 

Если наборы α1

и

 

1

β , такие, что α1

¹ β

и f (α1 ) > f (β ).

 

β

 

 

 

 

 

 

 

 

 

 

 

 

 

 

соседние, то наша цель достигнута. Если 1 и 1 не являются

αβ

соседними, то набор

1

отличается от набора α1

в t координатах,

β

где t > 1, причем эти t координат в наборе α1

 

 

имеют значение 0, а

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

1

можно вставить t − 1

в наборе β — 1. В силу этого между α1 и β

 

 

 

 

 

 

 

 

 

 

 

 

 

2

3

t

, Таких,

что

 

промежуточных наборов α , α , ..., α

 

1

 

2

 

3

 

t

 

1

 

 

 

¹ ...

¹ β .

 

α

¹ α

¹ α

¹ α

 

Очевидно, что наборы, стоящие в этой цепочке рядом, будут со-

 

1

 

седними. Так как f (α1 ) > f (β ), то по крайней мере на одной из

 

 

 

 

 

 

этих пар соседних наборов — обозначим их через α и β(α ¹ β)

 

 

 

 

Предположим, что данные наборы имеют

— будет f (α) > f (β).

 

 

 

соседство по i-ой координате и, следовательно,

α = (α1, ..., αi−1, 0, αi+1, ..., αn),

β = (α1, ..., αi−1, 1, αi+1, ..., αn).

Рассмотрим функцию

ϕ(x) = f (α1, ..., αi−1, x, αi+1, ..., αn).

Мы имеем

ϕ(0) = f (α1, ..., αi−1, 0, αi+1, ..., αn) = f (α) > f (β) = = f (α1, ..., αi−1, 1, αi+1, ..., αn) = ϕ(1).

106

Последнее означает, что ϕ(0) = 1, а ϕ(1) = 0, т.е. ϕ(x) = x. Лемма доказана.

5. Последним классом является класс L всех линейных функ-

ций.

Он, очевидно, содержит константы 0, 1, тождественную функцию x, функции x, x1 + x2 и не содержит функции x1&x2 и x1 x2. Ранее было показано, что этот класс также замкнут.

Лемма 9. (о нелинейной функции). Если f (x1, ..., xn) / L, то из нее путем подстановки констант 0 и 1 и функции x и x, а также, может быть, путем навешивания отрицания над f ,

можно получить функцию x1&x2.

Д о к а з а т е л ь с т в о. Возьмем полином Жегалкина для f :

f (x1, ..., xn) =

(i1X )

 

· · · xis .

ai1

...is xi1

,...,is

В силу нелинейности полинома в нем найдется член, содержащий не менее двух множителей. Без ограничения общности можно считать, что среди этих множителей присутствуют x1 и x2. Тогда можно преобразовать полином следующим образом:

Pai1...is xi1 · · · xis = x1x2f1(x3, ..., xn)+

(i1,...,iis )

+x1f2(x3, ..., xn) + x2f3(x3, ..., xn) + f4(x3, ..., xn),

где, в силу единственности полинома, f1(x3, ..., xn) 6≡0. Пусть α3, ..., αn таковы, что f13, ..., αn) = 1. Тогда

ϕ(x1, x2) = f (x1, x2, α3, ..., αn) = x1x2 + αx1 + βx2 + γ,

где α, β, γ — константы, равные 0 или 1. Рассмотрим функцию ψ(x1, x2), получаемую из ϕ(x1, x2) следующим образом:

ψ(x1, x2) = ϕ(x1 + β, x2 + α) + αβ + γ.

Очевидно, что

ϕ(x1 + β, x2 + α) + αβ + γ = (x1 + β)(x2 + α)+

+α(x1 + β) + β(x2 + α) + γ + αβ + γ = x1x2.

Следовательно,

ψ(x1, x2) = x1&x2.

Лемма доказана.

107

Теорема 38. (о функциональной полноте). Для того, чтобы система функций P из P2 была полной необходимо и достаточно, чтобы она целиком не содержалась ни в одном из пяти замкну-

тых классов T0, T1, S, M и L.

Д о к а з а т е л ь с т в о. Н е о б х о д и м о с т ь. Пусть система P полна, т.е. [P] = P2. Допустим, что P содержится в одном из указанных классов — обозначим его через N, т.е. P N. Тогда в силу свойств замыкания и замкнутости N имеем

P2 = [P] [N] = N.

Значит N = P2, что не так. Необходимость доказана.

Д о с т а т о ч н о с т ь. Пусть P целиком не содержится ни в одном из пяти указанных классов. Тогда из P можно выделить подсистему P, содержащую не более пяти функций, которая также обладает этим свойством. Для этого возмем в P функции fi, fj , fk , fm, fl, которые не принадлежат соответственно классам T0, T1, S, M и L, и положим

P= {fi, fj , fk , fl, fm}.

Можно считать, что все эти функции зависят от одних и тех же переменных x1, ..., xn.

Доказательство достаточности будет проводится в три этапа. I. Построение при помощи функций fi, fj , и fk констант 0 и 1.

Рассмотрим функцию fi / T0. Возможны два случая:

1. fi(1, ..., 1) = 1. Тогда ϕ(x) = fi(x, ..., x) есть константа 1,

ибо

ϕ(0) = fi(0, ..., 0) = 1, ϕ(1) = fi(1, ..., 1) = 1.

Вторая константа получается из fj : fj (1, ..., 1) = 0.

2. fi(1, ..., 1) = 0. Тогда ϕ(x) = fi(x, ..., x) есть x, ибо

ϕ(0) = fi(0, ..., 0) = 1, ϕ(1) = fi(1, ..., 1) = 0.

Возьмем fk (fk / S). Так как мы имеем x, то в силу леммы 7 из fk мы можем получить константу. Поскольку мы располагаем x, то находим и вторую константу. Итак, в обоих случаях мы получаем константы 0 и 1.

II. Построение при помощи констант 0, 1 и функции fm функции x. Это осуществляется на основе леммы 8.

III. Построение при помощи констант 0, 1 и функции x и fl функции x1&x2. Это осуществляется на основе леммы 9.

108

Таким образом, мы при помощи формул над P(а значит и над P) реализовали функции x и x1&x2. Этим достаточность доказана.

С л е д с т в и е 1. Всякий замкнутый класс M функций из P2 такой, что M =6 P2, содержится по крайней мере в одном из

построенных классов.

П р и м е р 30. Покажем, что система функций

f1 = x1x2, f2 = 0, f3 = 1, f4 = x1 + x2 + x3( mod 2)

является полной.

Мы имеем: f3 / T0, f2 / T1, f2 / S, f4 / M, f1 / L. С другой сто-

роны, удаление любой из функций приводит к неполной системе:

{f2, f3, f4} L, {f1, f3, f4} T1,

{f1, f2, f4} T0, {f1, f2, f3} M.

С л е д с в и е 2. Из всякой полной в P2 системы P функций можно выделить полную подсистему, содержащую не более

четырех функций.

Д о к а з а т е л ь с т в о. Мы видели, что из P можно выделить полную подсистему P, содержащую не более пяти функций. Оказывается, что функция fi / T0, кроме того, либо не самодвойственна (случай 1)), так как fi(0, ..., 0) = f (1, ..., 1), либо не монотонна (случай 2)): fi(0, ..., 0) > fi(1, ..., 1). Поэтому полной будет либо система {fi, fj , fm, fl}, либо система {fi, fj , fk , fl}.

109

7

ПОЛЯ ГАЛУА

7.1.Идеалы. Классы вычетов

Оп р е д е л е н и е 64. Группой G называется совокупность элементов, над которой определена одна операция (сложения или умножения), такая, что

1.Для любых a, b G , a · b и b · a G – замкнутость.

2.a · (b · c) = (a · b) · c — ассоциативность.

3.Существует элемент e G, такой, что для любых a G, e · a = a · e = a.

4. Для любых a G существует b G, такой, что a · b =

b · a = e. Элемент b называется обратным, т.е. b = a−1.

Группа называется абелевой, если групповая операци коммутативна, т.е. a · b = b · a.

Подгруппой группы G называется подмножество GG, обладающее свойствами группы.

О п р е д е л е н и е 65. Кольцом R называется множество элементов, над которыми определены две операции сложение и умножение, такие, что

1.Множество R является абелевой группой относительно операции сложения, т.е. аддитивной абелевой группой.

2.Для любых a, b R произведение a · b R — замкнутость.

3. Для любых a, b, c R выполняется равенство a · (b · c) = (a · b) · c — ассоциативность.

4. Для любых a, b, c R справедливы равенства a · (b + c) =

a · b + a · c и (b + c) · a = b · a + c · a — дистрибутивность.

Кольцо называется коммутативным, если коммутативна операция умножения, т.е. если для любых a, b R выполняется равенство a · b = b · a.

Все действительные числа образуют колльцо относительно обычных операций сложени и умножения. Все положительные и отрицательные целые числа и нуль также образуют кольцо отно-

110

сительно обычных операций сложения и умножения. Оба эти кольца коммутативны. Совокупность всех квадратных матриц порядка n с целыми и действительными элементами является кольцом относительно матричного сложения и умножения. Совокупность всех многочленов с целыми коэффициентами и одним неизвестным является коммутативным кольцом.

Множество, состоящее только из одного нулевого элемента, является кольцом, операции в котором определяются правилами

0 + 0 = 0, 0 · 0 = 0.

О п р е д е л е н и е 66. Полем называется коммутативное кольцо с единичным элементом относительно умножения, в котором каждый ненулевой элемент имеет мультипликативный

обратный элемент.

Совокупность всех действительных чисел является полем, так же как и совокупность всех рациональных чисел и совокупность всех комплексных чисел.

О п р е д е л е н и е 67. Идеалом I называется подмножество элементов кольца R, обладающее следующими двумя свойствами:

1)I является подгруппой аддитивной группы кольца R,

2)для любого элемента a I и любого элемента r R

произведения a · r и r · a принадлежат I.

Так как I — подгруппа, то если r — произвольный элемент из R, тогда совокупность r + I всевозможных сумм вида r + i; i I называется левым смежным классом, или в нашем случае классом вычетов. Учитывая, что если r I, то r + I = I, получаем разложение аддитивной группы кольца R по подгруппе I, когда r пробегает все R. Введем обозначение r + I = {r} — класс вычетов.

В силу коммутативности групповой операции сложения, сложение классов вычетов обладают свойством:

{r} + {s} = {r + s}.

Действительно, {r} = I + r, {s} = I + s, а так как сложение коммутативно, то I + r + I + s = I + r + s = {r + s}.

Здесь {r} обозначает класс вычетов, содержащий r.

Таким образом, на множестве классов вычетов определена операция сложения и относительно этой операции множество классов вычетов образует аддитивную фактор-группу.

Пусть r и rпринадлежат одному классу вычетов, а s и sдругому, тогда K называется произведением классов вычетов {r} и

111

{s}, если rs и rsпринадлежат K.

Действительно, если r и r, s и sпринадлежат соответственно своим классам, то rs и rsпринадлежат одному и тому же классу тогда и только тогда, когда rs − rsпринадлежат идеалу, но

rs − rs= rs − rs+ rs− rs= r(s − s) + (r − r)s

так как s − sи r − rпринадлежат идеалу, то и оба слагаемых принадлежат идеалу, т.е. и rs − rsпринадлежат идеалу.

Имеет место дистрибутивность

{a}({b} + {c}) = {a}{b + c} = {a(b + c)} = {ab} + {ac} = ={a}{b} + {a}{c}.

Аналогично проверяется ассоциативность.

Таким образом, классы вычетов по идеалу I образуют кольцо

— кольцо классов вычетов.

Пусть R — кольцо целых чисел. Тогда

Теорема 39. Подмножество из R образует идеал тогда и только тогда, когда оно состоит из чисел кратных некоторому

целому числу.

Д о к а з а т е л ь с т в о. Действительно, пусть r наименьшее целое положительное число в идеале, а s — любое другое целое число идеала. Если d — наибольший общий делитель r и s, то

d = ar + bs

и d принадлежит идеалу, так как ar и bs принадлежат идеалу. Так как r — наименьшее целое положительное число идеала, то r ≤ d, а так как r делится на d, то r = d.

Следовательно, любое целое число из идеала делится на r.

И наоборот, любое число кратное r, принадлежит идеалу по определению идеала.

Идеал, состоящий из всех чисел, кратных положительному целому числу m, обозначается через (m). Кольцо классов вычетов, образованное классами вычетов по идеалу (m), называется кольцом целых чисел по модулю m.

Теорема 40. Кольцо классов вычетов по модулю m образует

поле тогда и только тогда, когда m — простое число.

Д о к а з а т е л ь с т в о. Если m — не простое число, то m = rs для некоторых целых чисел r и s, которые не кратны m.

112

Поэтому {r}{s} = {m} = 0, и если класс вычетов {r} обладает обратным {r−1}, то {r−1}{r}{s} = {s} = {r−1}0 = 0, что противоречит предположению. Поэтому класс вычетов {r} не может иметь обратного, и кольцо классов вычетов не является полем.

Остается доказать, что если m — простое число, то для каждого класса вычетов, кроме 0 (идеала), существует обратный. Каждый такой класс вычетов содержит целое число s, которое меньше чем m и не равно 0. Поскольку 1 совпадает с обратным к ней элементом, можно предполагать, что s > 1. Так как m по предположению

— простое число, то наибольший общий делитель s и m должен быть равен либо m, либо 1. Поэтому наибольший общий делитель m и s равен 1. Таким образом

1 = am + bs,

и отсюда следует, что {b}{s} = 1, т.е. класс вычетов {b}, является обратным к классу вычетов {s}. Что и требовалось доказать.

Построенные таким образом поля называются простыми полями или полями Галуа из p элементов GF (p).

7.2. Идеалы и классы вычетов многочленов

Рассмотрим теперь многочлены f (X) одного переменного X с коэффициентами из некоторого поля F :

f (X) = f0 + f1X + f2X2 + ... + fnXn.

Степенью многочлена называется наибольшая степень X в слагаемом с ненулевым коэффициентом. Степень нулевого многочлена равна 0.

Многочлен называется нормированным, если коэффициент при наибольшей степени X равен 1. Многочлены можно складывать и умножать обычным путем; они образуют кольцо.

Если r(X), s(X), t(X) — многочлены и r(X)s(X) = t(X), то говорят, что многочлен t(X) делится на многочлен r(X) или что r(X) является делителем многочлена t(X) или что многочлен r(X) является множителем для t(X). Многочлен p(X) степени n, который не делится ни на какой многочлен, степени меньшей чем n, но большей чем 0, называется неприводимым. Наибольшим общим делителем двух многночленов называется нормированный многочлен наибольшей степени, который является делителем для обоих

113

многочленов. Говорят, что два многочлена взимно просты, если их наибольший общий делитель равен 1.

Степень произведения двух многочленов равна сумме их степеней. Ненулевой многочлен степени 0 является элементом поля коэффициентов и поэтому имеет обратный элемент. Но многочленов более высоких степеней, которые имели бы обратный элемент, не существует. Если s(X) делится на r(X) и r(X) делится на s(X), то они отличаются самое большее множителем, который является элементом поля. Это утверждение можно проверить следующим образом. Пусть для неоторых многочленов a(X) и b(X) справедливы равенства r(X) = s(X)a(X) и s(X) = r(X)b(X). Тогда, так как степень r(X) равна сумме степеней s(X) и a(X), степень r(X) больше или равна степени s(X). Аналогично, степень s(X) больше или равна степени r(X), и, таким образом, степени s(X) и r(X) должны быть равны. Следовательно, многочлены a(X) и b(X) имеют степень 0 и должны быть элементами поля.

Для любой пары многочленов s(X) и d(X) существует, согласно алгоритму деления Евклида, единственная пара многочленов q(X)

— частное и r(X) — остаток, таких, что

s(X) = d(X)q(X) + r(X)

и степень r(X) меньше степени d(X).

Используя алгоритм деления Евклида, можно установить, что наибольший общий делитель d(X) двух многочленов r(X) и s(X) всегда может быть представлен в виде

d(X) = a(X)r(X) + b(X)s(X),

где a(X) и b(X) — многочлены.

Теорема 41. Совокупность многочленов образует идеал тогда и только тогда, когда она содержит все многочлены,

кратные некоторому многочлену.

Кольцо классов вычетов, образованное по идеалу, состоящему из всех многочленов, кратных f (X), называется кольцом многочленов по модулю f (X).

О п р е д е л е н и е 68. Множество A называется ассоциативной линейной алгеброй над полем F , если выполняются следующие аксиомы:

1. Множество A является векторным пространством над

F .

114

циенты ai
an−1X

2. Для любых двух элементов u и v из A произведение uv принадлежит A ( замкнутость ).

3. Для любых u, v, w A имеет место равенство (uv)w = u(vw) (ассоциативный закон).

4. Если c, d F , а u, v, w A, то u(cv + dw) = cuv + duw и

(cv + dw)u = cvu + dwu (билинейный закон).

Теорема 42. Классы вычетов многочленов по модулю многочлена f (X) степени n образуют коммутативную линейную ал-

гебру размерности n над полем коэффициентов.

Д о к а з а т е л ь с т в о. Умножение на скаляр определяется равенством a{r(X)} = {ar(X)}; легко проверить, что при этом выполняются все аксиомы векторного пространства и алгебры. Например, справедливость дистрибутивного закона проверяется следующим образом:

{r(X)}({s(X)} + {t(X)} = {r(X)(s(X) + t(X))} = ={r(X)s(X) + r(X)t(X)} = {r(X)}{s(X)} + {r(X)}{t(X)}.

То, что векторное пространство имеет размерность n, можно увидеть из того, что n классов вычетов {1}, {X}, {X2}, ..., {Xn−1} порождают все пространство, поскольку каждый класс вычетов содержит многочлен степени, меньшей чем n, и

{a0 + a1X + ... + an−1Xn−1} = a0{1} + a1{X} + ... + an−1{Xn−1}

Кроме того, эти n классов вычетов линейно независимы, потому что в правой части последнего соотношения стоит произвольная линейная комбинация классов вычетов {1}, {X}, {X2}, ..., {Xn−1}, а левая часть равна нулю, только если многочлен a0 + a1X + ... + n−1 делится на f (X), что невозможно, или если все коэффи-

равны 0. Что и требовалось доказать. Обозначим {X} = S.

Теорема 43. В алгебре многочленов по модулю многочлена f (X) степени n многочлен f (S) = 0, но не существует равного

нулю многочлена от S степени, меньшей чем n.

Д о к а з а т е л ь с т в о.

f (S) = f0 + f1S + ... + fnSn =

=f0 + f1{X} + ... + fn{Xn} =

={f0 + f1X + ... + fnXn} = {f (X)} = 0.

115