Дипломнаяработанатему - alexey gronskiyгдеa;ai1;:::;i k 2e. Пусть n...
TRANSCRIPT
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙУНИВЕРСИТЕТ
имени М.В.ЛОМОНОСОВА
Механико-математический факультет
Кафедра дискретной математики
Дипломная работа на тему:
О некоторых метрических свойствах
булевых функций
Выполнил:студент 510 группы
Гронский А.Ю.
Научный руководитель:проф. Угольников А.Б.
Москва, 2011 год
Содержание
Введение 2
1 Определения и обозначения 41.1 Обозначения и сокращения . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Общие замечания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3 Основные определения . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Необходимое и достаточное условие полноты 72.1 Матричная терминология . . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Необходимое и достаточное условие ρ-полноты . . . . . . . . . . . . 8
3 Некоторые общие утверждения 93.1 Примеры векторов расстояний . . . . . . . . . . . . . . . . . . . . . . 93.2 Свойства векторов расстояний . . . . . . . . . . . . . . . . . . . . . . 123.3 Свойства систем функций . . . . . . . . . . . . . . . . . . . . . . . . 13
4 Структура множества полных систем функций в P2(2) 144.1 Теорема о классификации сильно полных систем P2(2) . . . . . . . . 154.2 Эквивалентность понятий полноты и сильной полноты в P2(2) . . . 224.3 Теорема о классификации полных систем в P2(2) . . . . . . . . . . . 23
5 О соотношении понятий полноты и сильной полноты 245.1 О неэквивалентности понятия полноты и сильной полноты в про-
странстве P2(3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245.2 О неэквивалентности понятия полноты и сильной полноты в про-
странстве P2(n), n > 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 255.3 Примеры слабо полных систем . . . . . . . . . . . . . . . . . . . . . . 28
6 Связь с матрицами Адамара 28
7 Замечания о дальнейших путях исследований,постановки задач 327.1 О «проекциях» полных систем из P2(n + 1) в P2(n) . . . . . . . . . . 327.2 Примеры получения полных систем более высоких порядков . . . . 32
Заключение 37
Приложение 38
1
Введение
О значимости метрических свойств булевых функций в дискретной математи-ке и её приложениях говорит большое количество применений этого понятия вразных разделах, в частности, в теории кодирования. Понятие ρ-полной системыбулевых функций (см. определение 1.4), исследуемое в работе, связано с метриче-ской структурой пространства булевых функций.
Данная работа является дальнейшем развитием темы, начало разработки ко-торой содержится в дипломной работе В.В. Малыхина «О некоторых метрическихсвойствах булевых функций»([3]).
Основной объект — ρ-полная система булевых функций в пространстве P2(n),а также связанное с ним понятие вектора расстояний от системы булевых функ-ций до заданной булевой функции — определяются в разделе 1 (также см. [3]).
С введенными понятиями связаны следующие направления исследований:
1. Рассмотрение свойств ρ-полных систем и векторов расстояний.
2. Установление необходимых и достаточных условий ρ-полноты системы.
3. Классификация ρ-полных систем по различным факторам.
4. Установление связей введенных объектов с другими математическими объ-ектами.
В разделе 2 описываются необходимые и достаточные условия ρ-полноты, атакже даются новые по сравнению с [3] определения сильно ρ-полной и слабо ρ-полной систем, играющие существенную роль в дальнейших рассмотрениях.
В разделе 3 даются примеры полных систем, векторов расстояний, рассматри-ваются их простейшие свойства.
В разделе 4 в качестве классифицирующего фактора для множества полныхсистем выбирается некоторый набор операций над системами булевых функций,относительно которого множество полных систем распадается на классы подобия,которые описываются полностью для случая P2(2). В этом же разделе описанасвязь понятий сильной и слабой ρ-полноты в P2(2).
Для случаев P2(n), n > 3, делаются попытки аналогичной классификации, да-ющие направление для дальнейших исследований, также рассматривается связьсильной и слабой ρ-полноты. Этой тематике посвящен раздел 5.
2
Связь изучаемых математических объектов с другими математическими объ-ектами, которая в какой-то мере раскрывает потенциальные применения рассмат-риваемых объектов, отражена в разделе 6.
Замечания о дальнейших путях исследований, носящие незавершенный харак-тер, вынесены в раздел 7.
3
1. Определения и обозначения
1.1. Обозначения и сокращения
В данной работе применяются следующие обозначения и сокращения:P2(n) — пространство булевых функций, зависящих от n переменных (по
поводу функций алгебры логики см. также [6])E , E k — множество 0, 1 и 0, 1k соответственно (k > 1)f (n)(x ) — n-местная (принимающая n аргументов) булева функцияZ+ — множество неотрицательных целых чиселα, x — упорядоченные наборы элементов из E (булевы векторы)γ, r — векторы (множество, над которым они определяются, ясно из кон-
текста или оговаривается явно)γi , ri — обозначают i -ые координаты векторов γ, r, если из контекста ясно,
что речь идет о векторахA, B — конечные упорядоченные наборы (системы) булевых функцийA∗ — система, состоящая из функций, двойственных к функциям систе-
мы A
AA, AB — матрицы систем булевых функций A и B (см. стр. 7)rkA — ранг матрицы A
C kn — количество неупорядоченных выборок k элементов из n элементов
L(n) — класс линейных булевых функций n переменных (см. 1.2)T
(n)a — класс булевых функций n переменных, сохраняющих константу a
(см. 1.2)‖α‖ — вес Хэмминга булева вектора α, равный количеству единичных
компонент в α¤ — конец доказательстваA :=B
B =:A
— «A по определению полагается равным B»
Подробнее о стандартных операциях, принятых в алгебре логики (⊕, &, ∨ ит.д.) см. [6].
1.2. Общие замечания
Полиномом Жегалкина n-местной функции f (x1, . . . , xn) (представлением буле-вой функции в виде полинома Жегалкина) называется ее представление в базисе&,⊕, 1:
f (x1, . . . , xn) = a ⊕⊕
06i1<...<ik6n16k6n
ai1,...,ik xi1 & . . . & xik ,
4
где a, ai1,...,ik ∈E .Пусть n > 1. Линейной функцией n переменных называется функция
f (x1, . . . , xn), представление которой в виде полинома Жегалкина имеет вид
f (x1, . . . , xn) = a0 ⊕ a1x1 ⊕ . . .⊕ anxn ,
где ai ∈E , 06 i 6n. Класс линейных функций n переменных в работе обозначаетсякак L(n).
Пусть n > 1, a ∈ E . Функция n переменных f (x1, . . . , xn) сохраняет констан-ту a, если выполняется равенство f (a, . . . , a) = a. Класс функций n переменных,сохраняющих константу a, будем обозначать T
(n)a .
Пусть n > 1, 16 i 6n. Селекторной функцией переменной xi называется функ-ция exi (x ) ∈ P2(n) такая, что на любом наборе α ∈ E n выполняется равенствоexi (α) =αi .
1.3. Основные определения
Рассматриваются булевы функции от n переменных. Пусть f , g ∈P2(n). Длятаких функций можно ввести понятие расстояния между ними следующим обра-зом:
Определение 1.1. Будем называть величину
ρ(f , g) =∑
α∈En
(f (α)⊕ g(α)) ∈ Z+
расстоянием от функции f до функции g .
Отметим, что внешняя сумма — обыкновенная, не по модулю 2. Таким образом,для любых f , g расстояние ρ(f , g) между ними удовлетворяет неравенству 0 66 ρ(f , g) 6 2n .
Например, в P2(2) расстояние между функциями f (x1, x2)=1 и g(x1, x2)=x1⊕x2
равно ρ(f , g) = 1 + 0 + 0 + 1 = 2.Если упорядочить в лексикографическом порядке все наборы вида α∈E n : α1 =
= (0, . . . , 0), . . . , α2n = (1, . . . , 1), то можно ввести вектора значений χf функции f :
χf = (f (α1), . . . , f (α2n ))T
5
Напомним, что расстоянием Хэмминга между булевыми векторами x , y ∈E n
называется величина
d(x , y) =n∑
i=1
(xi ⊕ yi) = ‖x ⊕ y‖
Введенное расстояние ρ(f , g) между функциями f и g есть расстояние Хэм-минга между векторами значений χf и χg . Ввиду этого мы иногда будем допускатьиспользование записи
ρ(f , g) = d(χf , χg)
Вышеприведенное понятие естественно распространить на случай несколькихфункций.
Определение 1.2. Пусть A ⊂ P2(n) — система из k булевых функцийg1, . . . , gk , тогда вектор, имеющий компонентами расстояния от f до всех gi ∈A,будем обозначать
ρ(A, f ) =(ρ(g1, f ), . . . , ρ(gk , f )
)T ∈ Zk+
и называть расстоянием от f до системы A.
Замечание 1.3. Мы будем рассматривать системы булевых функций с точ-ностью до перестановки в ней функций, поэтому и вектор расстояний определен сточностью до перестановки компонент. В работе не рассматриваются вопросы, длякоторых порядок элементов в векторе расстояний важен, поэтому данное ослаб-ление не критично для дальнейших рассмотрений.
Очевидны свойства (следуют из аналогичных свойств расстояния Хэмминга):1° Для любых f , g ∈P2(n), выполняется ρ(f , g)>0. Равенство достигается тогда
и только тогда, когда f и g равны. Равенство функций f и g следует понимать всмысле равенства их векторов значений.
2° Для любых f , g ∈P2(n) верно ρ(f , g) = ρ(g , f ).3° Для любых f , g , h ∈P2(n) выполняется неравенство треугольника:
ρ(f , g) + ρ(g , h) 6 ρ(f , h)
Определение 1.4. Система функций A⊂P2(n), состоящая из k функций, на-зывается ρ-полной для системы B⊂ P2(n), если не существует пары функцийf1, f2 ∈B таких, что ρ(A, f1) = ρ(A, f2). Другими словами, система A ρ-полна длясистемы B, если отображение из B в Zk
+, действующее по правилу
f 7→ ρ(A, f ), где f ∈ B
6
инъективно.В частности, будем называть систему функций ρ-полной (без указания второй
системы), если она полна для всего множества P2(n).
Замечание 1.5. В дальнейшем, если не оговорено иное, будем такие системыназывать просто полными. Термин «полнота» в смысле, используемом в теориифункицональных систем, будем оговаривать особо.
2. Необходимое и достаточное условие полноты
В этом разделе будут рассмотрены вопросы, связанные с необходимым и до-статочным условием полноты заданной системы булевых функций.
Для рассмотрения вопроса о необходимом и достаточном условии полноты си-стемы булевых функций полезной оказывается матричная терминология.
2.1. Матричная терминология
Пусть дана система из k булевых функций A = f1(x ), . . . , fk(x ) ⊂ P2(n), гдеk >1. Упорядочим всевозможные наборы длины n в лексикографическом порядкепо возрастанию: α1, . . . , α2n и рассмотрим матрицу B = (bij ), такую, что
bij = fi(αj ), (2.1)
где 1 6 i 6 k , 1 6 j 6 2n . Определим отображение τ : E →−1, 1, действующеепо правилу
τ(x ) =
−1, x = 1
1, x = 0
Для определенной выше системы A определим матрицу AA:
AA = (aij ), 1 6 i 6 k , 1 6 j 6 2n , aij = τ(bij )
Будем говорить, что системе A соответствует матрица AA.Таким образом, AA — матрица размера k × 2n , состоящая из ±1.Докажем техническое утверждение.
Предложение 2.1. В введенных выше терминах справедливо представление
ρ(A, f ) = AA · χf + rA (2.2)
7
где
rA = (Ik×2n − AA)
1/2
1/2...
1/2
,
а Ik×2n — матрица размера k × 2n , состоящая из единиц.
Доказательство. Очевиден тот факт, что (rA)i — количество чисел (−1) вi -ой строке матрицы AA. Пусть k+ и k− — количество соответственно (+1) и (−1)
в i -ой строке. Тогда, решая систему
k+ + k− = 2n
k+− k− =(A · (1, . . . , 1)T
)i
получим
(rA)i = k− =1
2(2n − A · (1, . . . , 1)T )i
откуда
rA = (Ik×2n − AA)
(1
2,1
2, . . . ,
1
2
)T
¤
2.2. Необходимое и достаточное условие ρ-полноты
В работе [3] приводится самая общая формулировка необходимого и доста-точного условия полноты системы функций с матрицей A. Приведем его здесь сдоказательством.
Предложение 2.2. A — полна тогда и только тогда, когда не существуетвектора γ∈0, 1,−12n , γ 6=0, такого, что
AA · γ = 0
Доказательство. Пусть найдутся такие f , g ∈P2(n), что
ρ(A, f ) = ρ(A, g)
Это эквивалентно (в силу представления (2.2)) следующему равенству
AAχf + rA = AAχg + rA,
или, что равносильно,AA · (χf − χg) = 0
8
Откуда, положив γ= (χf − χg), получаем требуемый критерий. ¤
Таким образом, получаем следующее достаточное условие полноты:
Следствие 2.3. Если rkAA = 2n , то система A — полна.
Из вышесказанного не следует, что rkAA < 2n влечет неполноту системы A,поэтому целесообразно ввести понятия сильно полной и слабо полной систем.
Определение 2.4. Система A ⊂ P2(n) называется сильно ρ-полной, еслиrkAA = 2n . Система A назывется слабо ρ-полной, если она является ρ-полной, ноrkAA < 2n .
Из определений видно, что сильно полные системы должны содержать самоеменьшее 2n различных функций и в этом случае иметь квадратную матрицу, вто время как для слабо полных допускается и меньшее, чем 2n , количество функ-ций (равное рангу матрицы). В дальнейшем, говоря о сильно полных системах,будем подразумевать, что в них содержится 2n различных функций и матрицаквадратная.
Вопрос о необходимом условии полноты системы в общем случае открыт. Ча-стично его решение дано в теоремах 4.8 и 5.5.
3. Некоторые общие утверждения
В данном разделе будут пречислены утверждения, носящие общий характер.Примеры регулярно устроенных векторов расстояний рассмотрены в разде-
ле 3.1. Они играют следующую роль: такие примеры указывают на существова-ние просто устроенных векторов расстояний, что при дальнейшем рассмотренииможет дать некоторые правила, описывающие произвольные вектора расстояний.
Простейшие свойства векторов расстояний описаны в разделе 3.2. Отметим,что помимо самостоятельного значения свойств, помещенные в этот раздел утвер-ждения играют роль технических утвреждений для дальнейших рассмотрений.
Некоторые свойства полных систем функций перечислены в разделе 3.3. Этисвойства понадобятся в дальнейшем, при выборе классифицирующего набора опе-раций для описания классов полных систем в P2(n).
3.1. Примеры векторов расстояний
Пусть A0 = L(n) ∩T(n)0 ⊂P2(n) — линейные функции n переменных, сохраняю-
щие константу 0. Из сказанного в 1.2 следует, что в систему A0 входят в точностифункции, имеющие вид a1x1⊕ . . . anxn , ai ∈E , значит, количество функций в си-стеме A0 равно 2n . В работе [3] доказано, что система A0 полна.
9
Обозначим функции системы A0 как gi , 16 i 62n и установим нумерацию функ-ций g1, g2, . . . , g2n следующим образом: сначала — по возрастанию количества су-щественных переменных, а среди групп с одинаковым количеством существенныхпеременных — в лексикографическом порядке по x1, x2, . . . , xn (это можно сделать,т.к. каждая функция из A0, существенно зависящая от m переменных xi1 , . . . , xim ,ik 6= il при k 6= l , имеет вид g(xi1 , . . . , xim ) = xi1 ⊕ . . .⊕ xim ).
Пусть n > 1. Справедливы следующие утверждения.
Предложение 3.1. Пусть f (x1, . . . , xn)= x1⊕ . . .⊕ xn есть n-местная булевафункция. Тогда вектор расстояний от f до системы A0 имеет вид
ρ(A0, f ) = (2n−1, . . . , 2n−1, 0)T
Доказательство. а) Для функции g2n (x ) = x1 ⊕ . . .⊕ xn , g2n ∈A0, очевидно,выполнено равенство ρ(g2n , f ) = 0.б) Пусть теперь номер функции gk удовлетворяет неравенству 1 6 k < 2n . Длялюбой такой функции gk(x ) = xi1 ⊕ . . .⊕ xim из A0, зависящей от m переменных(предполагается, что все i1, . . . , im различны) выполнено соотношение
ρ(gk , f ) =∑
α
[(α1 ⊕ . . .⊕ αn)⊕ g(α)] =∑
α
[αj1 ⊕ . . .⊕ αjn−m ],
где j1, . . . , jn−m — номера переменных, от которых gk не зависит существенно. По-следняя сумма есть количество наборов α, в которых среди αj1 , . . . , αjn−m содер-жится нечетное число единиц, т.е.
ρ(gk , f ) = 2m(C 1n−m + C 3
n−m + . . . + C ln−m) = 2m · 2n−m−1 = 2n−1
где l = max2i+16n−m
(2i + 1), что доказывает предложение. ¤
Предложение 3.2. Пусть f (x1, . . . , xn) = x1 ∨ . . .∨ xn есть n-местная булевафункция. Тогда вектор расстояний от f до системы A0 имеет вид
ρ(A0, f ) = (2n − 1, 2n−1 − 1, . . . , 2n−1 − 1)T
Доказательство. Доказательство почти аналогично предложению 3.1:а) Для функции g1(x )=0, g1∈A0, очевидно, выполнено равенство ρ(g1, f )=2n − 1,т.к. в этом случае расстояние — это в точности количество различных ненулевыхнаборов длины n
б) Пусть теперь номер функции gk удовлетворяет неравенству 1 < k 6 2n . Длялюбой такой функции gk(x ) = xi1 ⊕ . . .⊕ xim из A0, зависящей от m переменных
10
(все i1, . . . , im различны) выполнено соотношение
ρ(gk , f ) =∑
α
[(α1 ∨ . . . ∨ αn)⊕ g(α)] =∑
α6=0
[αi1 ⊕ . . .⊕ αim ⊕ 1],
но последняя сумма есть количество наборов α, в которых среди αi1 , . . . , αim со-держится четное число единиц, т.е.
ρ(g , f ) = (2n−m − 1)(C 0m + C 2
m + . . . + C lm) = 2n−1 − 1
где l = max2i6n−m
(2i), что доказывает предложение. ¤
Предложение 3.3. Пусть f (x1, . . . , xn) = x1 & . . . & xn — n-местная булевафункция. Тогда вектор расстояний от f до системы A0 имеет вид
ρ(A0, f ) = (1, 2n−1− 1, . . . , 2n−1− 1︸ ︷︷ ︸C 1
n
, 2n−1 + 1, . . . , 2n−1 + 1︸ ︷︷ ︸C 2
n
,
2n−1− 1, . . . , 2n−1− 1︸ ︷︷ ︸C 3
n
, . . . , 2n−1 + (−1)n , . . . , 2n−1 + (−1)n︸ ︷︷ ︸Cn
n
)T
Доказательство. Доказательство почти аналогично предыдущим:а) Для функции g1(x ) = 0, g1 ∈A0 очевидно, что ρ(g1, f ) = 1, т.к. в таком случаерасстояние — это в точности количество единичных наборов длины n.б) Пусть теперь номер функции gk удовлетворяет неравенству 1 < k 6 2n . Длялюбой такой функции gk(x )= xi1 ⊕ . . .⊕ xim , зависящей от m переменных (предпо-лагается, что все i1, . . . , im различны), выполнено соотношение (здесь (m +1)(2) —остаток (m + 1) по модулю 2):
ρ(gk , f ) =∑
α
[α1α2 . . .αn ⊕ g(α)] =∑
α6=1
[αi1 ⊕ . . .⊕ αim ] + (m + 1)(2)
Заметим, что первое слагаемое есть количество наборов, кроме единичного, содер-жащих нечетное число единиц среди αi1 , . . . , αim . Рассмотрим два случая:
1) m — четное:
ρ(g , f ) = 2n−m(C 1m + C 3
m + . . . + Cm−1m ) + 1 = 2m−1 + 1
2) m — нечетное:
ρ(g , f ) = 2n−m(C 1m + C 3
m + . . . + Cm−2m ) + (2n−m − 1)Cm
m + 0 = 2n−1 − 1
11
Таким образом, вектор ρ(A0, f ) составляют группы, состоящие из чисел (2n−1 +
+1) и (2n−1− 1), идущие поочередно друг за другом (исключение составляет 1-аякоордината вектора ρ(A0, f ), представляющая собой группу, состоящую из однойединицы). Длина m-ой группы равна количеству функций функций от m пере-менных в A0 т.е. Cm
n . ¤
3.2. Свойства векторов расстояний
В этом разделе приведем ряд предложений, имеющих как самостоятельное зна-чение, так и необходимых для дальнейших рассмотрений. Далее в разделе рас-сматриваются функции и системы функций, принадлежащие P2(n).
Связь ρ(A, f ) и ρ(A, f ) проясняется следующим фактом.
Предложение 3.4. Для любых функций g , f выполняется равенство
ρ(g , f ) + ρ(g , f ) = 2n (3.1)
Доказательство. Действительно, выражение
ρ(g , f ) =∑
α
(f (α)⊕ g(α)) =: A
есть количество наборов α, на которых f (α)⊕ g(α) = 1, а выражение
ρ(g , f ) =∑
α
(f (α)⊕ g(α)) =∑
α
(f (α)⊕ g(α)⊕ 1) =∑
α
(f (α)⊕ g(α)) =: B
есть количество наборов α, для которых f (α)⊕ g(α) = 1, или, что то же самое,f (α)⊕ g(α) = 0. Но других наборов, кроме учтенных в A и B , нет, следовательно,A+B = 2n , что и требовалось доказать. ¤
Следствие 3.5. Для любой системы A и любой булевой функции f выполненосоотношение
ρ(A, f ) + ρ(A, f ) = (2n , . . . , 2n)T (3.2)
Доказательство. Равенство (3.1) верно для каждой компоненты вектораρ(A, f ), откуда следует равенство (3.2). ¤
Предложение 3.6. Если A=gi, B=hi, причем gi =h i , то для произволь-ной функции f выполняется равенство
ρ(A, f ) + ρ(B, f ) = (2n , . . . , 2n)T
12
Доказательство. Доказательство аналогично следствию 3.5. ¤
3.3. Свойства систем функций
Здесь будут приведены утверждения, которые важны для выбора операций F
(см. стр. 14).
Предложение 3.7. Замена произвольной функции в полной системе на ееотрицание сохраняет полноту.
Доказательство. Замена k -ой функции gk ∈A на ее отрицание gk экивалентнадомножению k -ой строки матрицы AA на (−1). Обозначим полученную системуA′.
Воспользуемся критерием полноты системы из предложения 2.2 и предполо-жим, что для AA′ нашелся вектор γ из предложения 2.2. Учитывая связь AA иAA′ , нетрудно видеть, что из AA′ · γ= 0 следует AA · γ= 0. Противоречие с полно-той системы A. ¤
Предложение 3.8. Замена всех вхождений произвольной переменной xi вполной системе A⊂P2(n) на ее отрицание сохраняет полноту.
Доказательство. Из построения матрицы AA следует, что замена переменнойна ее отрицание эквивалентна некоторой перестановке σ ее столбцов.
Предположим, что для AA′ существует вектор γ′ из предложения 2.2. Рас-смотрим вектор γ= σ−1(γ′) (с переставленными компонентами). Тогда, очевидно,AA · γ=0. Противоречие с полнотой A. ¤
Простым следствием предложений 3.7 и 3.8 является следуюшщее уствержде-ние.
Следствие 3.9. Система A полна тогда и только тогда, когда полна двой-ственная ей система A∗.
Предложение 3.10. Прибавление по модулю 2 некоторой функции g одно-временно ко всем функциям системы сохраняет ее полноту.
Доказательство. Операция эквивалентна прибавлению по модулю 2 вектораχg ко всем векторам χf , f ∈A. Это, в свою очередь, равносильно покомпонентномуумножению каждой строки матрицы AA на вектор v=τ(χg), или, другими словами,умножению на −1 столбцов матрицы с номерами из некоторого набора индексовJ = j : vj =−1.
Тогда, предполагая, что для A′ нашелся вектор γ′ из предложения 2.2, рассмот-рим вектор γ, γi = vi · γ′i , у которого на −1 домножены компоненты с номерами из
13
J . Очевидно, что AA · γ=AA′ · γ′ =0, т.е. система A не полна. Противоречие дока-зывает утверждение. ¤
Предложение 3.11. Транспозиция любой пары переменных в системе сохра-няет ее полноту.
Доказательство. Достаточно заметить, что операция эквивалентна некото-рой перестановке σ столбцов матрицы системы. Далее доказательство дословноповторяет доказательство предложения 3.8. ¤
Из доказательств предложений данного раздела получаем два следующихутверждения.
Предложение 3.12. Вышеперечисленные операции, а именно: замена функ-ции на ее отрицание, замена переменной на ее отрицание, одновременное сло-жение функций системы с некоторой функцией, транспозиция переменных —сохраняют ранг матрицы системы, и, следовательно — тип полноты (сильная,слабая) для полных систем.
Следствие 3.13. Вышеперечисленные операции, а именно: замена функциина ее отрицание, замена переменной на ее отрицание, одновременное сложениефункций системы с некоторой функцией, транспозиция переменных — сохраня-ют неполноту.
Доказательство. Следует из утверждений 3.7, 3.8, 3.10, 3.11 и того, что всечетыре операции обратимы. ¤
4. Структура множества полных систем функций в
P2(2)
В разделе будет определен набор классифицирующих операций и проведенаклассификация полных систем булевых функций от двух переменных.
Определение 4.1. Определим набор операций F = Nf , Nv, S, T над систе-мой функций A⊂P2(n) следующим образом
1. Замена любой функции f ∈A на ее отрицание f . Обозначение операции: Nf(f )
(первые буквы от negation, function). Обозначение для преобразованной та-ким образом системы: Nf(A, f ).
2. Замена всех вхождений произвольной переменной xi в функции системы наее x i . Обозначение для операции: Nv(xi) (первые буквы от negation, variable).Обозначение для преобразованной таким образом системы: Nv(A, xi).
14
3. Прибавление по модулю 2 одновременно ко всем функциям системы A неко-торой функцииf . Обозначение для операции: S(f ) (первая буква sum). Обо-значение для перобразованной таким образом системы: S(A, xi1xi2 . . . xik ) илиA⊕ xi1xi2 . . . xik .
4. Транспозиция переменных xi и xj . Обозначение для операции: T(xi , xj ) (пер-вая буква transposition). Обозначение для преобразованной таким образомсистемы: T(A, xi , xj ).
В разделе 3.3 были приведены утверждения, показывающие, что данные опе-рации сохраняют сильную полноту (сильную неполноту) системы, следовательно,могут рассматриваться в качестве отношения эквивалентности на множестве всехсильно (слабо) полных систем, разбивая его на классы эквивалентности.
Системы A и B назовем подобными, или эквивалентными, если B может бытьполучена из A конечным количеством применений операций из F . Класс систем,подобных A, обозначим [A]F .
Будем рассматривать сильно полные системы в P2(2). Такие системы имеютквадратные матрицы порядка 22 = 4 (см стр. 9) и состоят из 4 функций. Дляудобства в данном разделе переобозначим переменные: x := x1, y := x2.
4.1. Теорема о классификации сильно полных систем P2(2)
Одним из основных результатов, полученных в данной работе, является сле-дующая теорема.
Теорема 4.2. Относительно набора операций F = Nf , Nv, S, T множествосильно полных систем в P2(2) разбивается на четыре попарно непересекающихсякласса подобных систем B1,B2,B3,B4, где
B1 =[0, x , y , xy
]F
, B2 =[0, x , y , x ⊕ y
]F
,
B3 =[0, x , xy , y ⊕ xy
]F
, B4 =[0, x , xy , x ⊕ y ⊕ xy
]F
Лемма 4.3. Пусть A⊂P2(2) — сильно полная система, A = f1, f2, f3, f4, гдеf1 =0 и fi ∈T0, i =2, 3, 4. Тогда найдется пара номеров i 6= j , 16 i , j 64 такая, чтолибо fi = x ⊕ fj , либо fi = y ⊕ fj .
Для удобства в данном разделе установим следующие обозначения для селек-торных функций: ex1 = x , ex2 = y .
Доказательство. Если среди f2, f3, f4 есть селекторные функции, то леммаочевидным образом выполняется в силу наличия тождественного нуля в системеA.
15
Пусть селекторных функций в системе нет. Если среди f2, f3, f4 нашлась парафункций из утверждения доказываемой леммы, то лемма доказана.
Допустим, что таких пар нет. На графе для наглядности показаны пары функ-ций от двух переменных, сохраняющих константу 0, не обладающих свойствомfi = exk ⊕ fj :
xy
MMMMMMMMMMMM y ⊕ xy
ttttttttt
x ⊕ y
JJJJJJJJJ
x ⊕ y ⊕ xy
qqqqqqqqqqqx ⊕ xy
Из графа видно, что тройками функций, среди которых нет искомых пар, яв-ляются xy , x ⊕ y , x ⊕ y ⊕ xy и y ⊕ xy , x ⊕ xy , x ⊕ y. В первом случае матрицасистемы вырождена:
1 1 1 1
1 1 1 −1
1 −1 −1 1
1 −1 −1 −1
−→
1 1 1 1
0 0 0 −2
0 −2 −2 0
0 −2 −2 −2
Во втором случае, аналогично:
1 1 1 1
1 −1 1 1
1 1 −1 1
1 −1 −1 1
−→
1 1 1 1
0 −2 0 0
0 0 −2 0
0 −2 −2 0
Противоречие с сильной полнотой доказывает невозможность предположения онесуществовании искомых пар, и, следовательно, лемму. ¤
Справедливо следующее утверждение
Лемма 4.4. Пусть A⊂P2(2) — сильно полная система. Тогда A принадле-жит одному из четырех множеств
B1 =[0, x , y , xy
]F
B2 =[0, x , y , x ⊕ y
]F
B3 =[0, x , xy , y ⊕ xy
]F
B4 =[0, x , xy , x ⊕ y ⊕ xy
]F
(4.1)
Доказательство. Шаг 1. Операциями 1 и 3 мы можем преобразовать систе-
16
му к системе A1, в которой первая функция будет равна 0, а остальные три —сохранять 0. Системе A1 соответствует метрица
1 1 1 1
1
1 ∗1
Шаг 2. По лемме 4.3 среди оставшихся трех функций найдется пара функцийлибо вида (x ⊕ g , g), либо вида (y⊕ g , g). Если имеет место второе, путем переиме-нования переменных преобразуем к первому. Обозначим результат как A2.
Шаг 3. Прибавив ко всем функциям из A2 функцию g из предыдущего шага,получим систему A3 = 0, x , ∗, ∗ с матрицей
1 1 1 1
1 1 −1 −1
1 ∗1
В силу невырожденности матрицы среди оставшихся двух функций обязательносодержится одна из функций, равных 1 на наборе (x , y)= (0, 1) (что соответствует(−1) во втором столбце матрицы): y , x ⊕ y , y ⊕ xy , x ⊕ y ⊕ xy .
Рассмотрим подслучаи:1) Есть функция y : матрица имеет вид
1 1 1 1
1 1 −1 −1
1 −1 1 −1
1 ∗ ∗ ∗
учитывая невырожденность, заключаем, что для последней строки возможны сле-дующие случаи:
τ(χf ) f (x , y)
(1, 1, 1,−1) xy
(1,−1,−1, 1) x ⊕ y
(1, 1,−1, 1) x ⊕ xy
(1,−1, 1, 1) y ⊕ xy
(1,−1,−1,−1) x ⊕ y ⊕ xy
1.1) (1, 1, 1,−1), функция xy : система 0, x , y , xy лежит в B1.
17
1.2) (1,−1,−1, 1), функция x ⊕ y : система 0, x , y , x ⊕ y лежит в B2.1.3) (1, 1,−1, 1), функция x ⊕ xy , имеем цепочку замен
0, x , y , x ⊕ xy Nv(x)−−−→ 0, x , y , xy Nf(x)−−−→ 0, x , y , xy
исходная система лежит в B1.1.4) (1,−1, 1, 1), функция y ⊕ xy — аналогично, исходная система лежит в B1.1.5) (1,−1,−1,−1), функция x ⊕ y ⊕ xy :
0, x , y , x ⊕ y ⊕ xy ⊕y−→ 0, x , y , x ⊕ xy
и задача сведена к пункту 1.3), значит, исходная система лежит в B1.2) Есть функция x ⊕ y : матрица имеет вид
1 1 1 1
1 1 −1 −1
1 −1 −1 1
1 ∗ ∗ ∗
Для последней строки возможны следующие случаи (при которых матрицаневырождена):
τ(χf ) f (x , y)
(1,−1, 1,−1) y
(1, 1,−1, 1) x ⊕ xy
(1,−1, 1, 1) y ⊕ xy
(1, 1, 1,−1) xy
(1,−1,−1,−1) x ⊕ y ⊕ xy
2.1) (1,−1, 1,−1), функция y — случай разобран в 1.2)2.2) (1, 1,−1, 1), функция x ⊕ xy :
0, x , x ⊕ y , x ⊕ xy ⊕x−→ 0, x , y , xy
тем самым попали в множество B1.2.3) (1,−1, 1, 1), функция y ⊕ xy :
0, x , x ⊕ y , y ⊕ xy ⊕x−→ 0, x , y , x ⊕ y ⊕ xy
и задача сведена к 1.5), попали в B1.
18
2.4) (1, 1, 1,−1), функция xy :
0, x , x ⊕ y , xy ⊕x−→ 0, x , y , x ⊕ xy
и задача сведена к 1.3), попали в B1.2.5) (1,−1,−1,−1), функция x ⊕ y ⊕ xy :
0, x , x ⊕ y , x ⊕ y ⊕ xy ⊕x−→ 0, x , y , y ⊕ xy
и задача сведена к 1.4), множество B1.3) В системе есть функция x ⊕ xy . Матрица имеет вид
1 1 1 1
1 1 −1 −1
1 −1 1 1
1 ∗ ∗ ∗
Аналогично, из условия невырожденности следует, что оставшаяся строка можетпрнимать следующие значения:
τ(χf ) f (x , y)
(1,−1, 1,−1) y
(1,−1,−1, 1) x ⊕ y
(1, 1,−1, 1) x ⊕ xy
(1, 1, 1,−1) xy
3.1) (1,−1, 1,−1), функция y — разобрано в случае 1.4), попали в множествоB1.
3.2) (1,−1,−1, 1), функция x ⊕y — разобрано в случае 2.3), попали в множествоB1.
3.3) (1, 1,−1, 1), функция x ⊕ xy :
0, x , x ⊕ xy , y ⊕ xy ⊕x−→ 0, x , xy , x ⊕ y ⊕ xy
попали в множество B4.3.4) (1, 1, 1,−1), функция xy : система 0, x , y ⊕ xy , xy лежит в множестве B3.
19
4) В системе есть функция x ⊕ y ⊕ xy . Матрица имеет вид
1 1 1 1
1 1 −1 −1
1 −1 −1 −1
1 ∗ ∗ ∗
В силу невырожденности матрицы последняя строка может принимать следующиезначения:
τ(χf ) f (x , y)
(1,−1, 1,−1) y
(1,−1,−1, 1) x ⊕ y
(1, 1,−1, 1) x ⊕ xy
(1, 1, 1,−1) xy
4.1) (1,−1, 1,−1), функция y — случай разобран в 1.5), множество B1.4.2) (1,−1,−1, 1), функция x ⊕ y — случай разобран в 2.5), множество B1.4.3) (1, 1,−1, 1), функция x ⊕ xy :
0, x , x ⊕ y ⊕ xy , x ⊕ xy ⊕x−→ 0, x , xy , y ⊕ xy
система лежит в B3.4.4) (1, 1, 1,−1), функция xy : система 0, x , x ⊕ y ⊕ xy , xy лежит в B4.Разобраны все возможные случаи, лемма доказана. ¤
В доказанной лемме не утверждалось, что множества B1, B2, B3, B4 не пересе-каются. Имеет место следующий факт.
Лемма 4.5. Множества B1, B2 и C =B3 ∪B4 попарно не пересекаются.
Доказательство. Пусть 51(A) :=min(s , 2n − s), где s — суммарное количествоконъюнкций степени n (максимально возможной) во всех полиномах Жегалкинафункций из A⊂P2(n). Например, для системы A = x , xy , x ⊕ xy , y ⊕ xy⊂P2(2)
имеем 51(A) = min(3, 1) = 1.Покажем, что 51(A) является инвариантом множеств B1, B2, C относительно
операций из F .Действительно:а) Nf(f ) есть прибавление единицы к некоторой функции из A, и, следователь-
но, числа рассматриваемых конъюнкций не изменяет, а 51(A) тем более.б) Nv(xi) есть замена всех вхождений xi на (xi ⊕1). Очевидно, количества конъ-
юнкций макисмальной степени в полиноме Жегалкина она не изменяет (пользу-
20
емся максимальностью степени), 51(A) тем более.в) S(g) может изменить число конъюнкций максимальной степени только в
одном случае — если g содержит таковую в своем полиноме Жегалкина. Но тогдаесли в полиноме Жегалкина функций системы было s таких конъюнкций, то вновой системе их будет (2n − s), так что 51(A) = 51(A′).
г) T(xi , xj ), очевидно, не изменяет числа конъюнкций максимальной степени,а 51(A) — тем более.
Для случая A⊂P2(2) число 51(A) может принимать значения 0, 1, 2. Остаетсязаметить, что
51(A | A ∈ B1) = 1, 51(A | A ∈ B2) = 0, 51(A | A ∈ C ) = 2,
что доказывает лемму. ¤
Замечание 4.6. Из доказательства следует, что суммарное число конъюнк-ций xy в полиноме Жегалкина для систем из B3 и B4 всегда равно 2.
Лемма 4.7. B3 ∩B4 =∅.
Доказательство. Рассмотрим A⊂P2(2) с функциями в виде полиномов Же-галкина. Пусть 52(A) — четность суммарного числа p вхождений символов пере-менных в полиноме Жегалкина функций из A
52(A) =
1, если p нечетно
0, если p четно
Утверждается, что для множеств B3 и B4 эта величина инвариантна относительноопераций из F .
Действительно:а) Nf(f ) есть прибавление 1 к полиному Жегалкина функции f и, следователь-
но, количества символов переменных не изменяет.б) F (xi) есть замена вхождений xi на (xi ⊕1). Без ограничений общности пусть
xi = x . Число вхождений x в полиномах Жегалкина при такой операции не ме-няется. Число вхождений y меняется только за счет перехода конъюнкций xy в(x ⊕1)y = xy ⊕ y . По замечанию 4.6 число таких конъюнкций в полиномах Жегал-кина системы четно, значит, число вхождений переменной y изменится на четноечисло, так что 52(A) = 52(A′).
в) S(g) изменяет количество вхождений всех переменных на четное число, т.к.в системе A⊂P2(2) 4 функции.
г) T(x , y) есть замена вхождений x на y и наоборот, очевидно, сохраняет 52(A).
21
Для доказательства леммы осталось заметить, что
52(A |A⊂B3) = 0, 52(A |A⊂B4) = 1 ¤
Доказательство (Теоремы 4.2). Утверждения лемм 4.4, 4.5, 4.7 доказываюттеорему 4.2. ¤
4.2. Эквивалентность понятий полноты и сильной полноты
в P2(2)
Вопрос о соотношении понятий полноты и сильной полноты в пространствеP2(2) раскрывается следующей теоремой.
Теорема 4.8. Пусть A ⊂ P2(2). Для того, чтобы система A была полна,необходимо и достаточно, чтобы A была сильно полна.
Другими словами, это значит, что в пространстве P2(2) отсутствуют слабополные системы. Забегая вперед, скажем, что этот факт весьма примечателентем, что он в некотором смысле обособляет случай P2(n) для n = 2.
Доказательство. Достаточность. Очевидно.Необходимость. Операциями из F без изменения типа полноты (как показа-
но в разделе 3.3) можно привести систему A к эквивалентной ей системе A1 сматрицей
AA1 = A =
1 1 1 1
1 ∗ ∗ ∗...
...1 ∗ ∗ ∗
Необходимо проверить, что если матрица A вырождена, то система не слабо полна,т.е. существует вектор γ с компонентами из ±1, 0, такой что
A · γ = 0 (4.2)
Так как ранг вырожденной матрицы не превышает 3, возможны следующиеслучаи:
1) rkA=1: вектор γ=(1, 1,−1,−1)T , очевидно, удовлетворяет уравнению (4.2).2) rkA=2: вычитанием первой строки из остальных (и, возможно, перестанов-
22
кой столбцов) матрица системы (4.2) сводится к виду
A′ =
1 1 1 1
0 −2 α1 α2
0
где αi ∈ −2, 0. Нетрудно видеть, что если оба αi ненулевые, то вектор γ =
= (0, 0, 1,−1)T удовлетворяет уравнению (4.2).3) rkA=3: нетрудно видеть, вычитанием первой строки из последующих, затем
вычитанием второй строки из последующих можно получить следующие матрицы(0 в последней строке имеет смысл, если в матрице больше трех строк).
A′1 =
1 1 1 1
0 −2 α1 α2
0 0 0 ±2
0
A′2 =
1 1 1 1
0 −2 α1 α2
0 0 β1 β2
0
A′3 =
1 1 1 1
0 0 −2 α1
0 0 0 ±2
0
здесь αi ∈−2, 0, βi ∈2,−2, 0.В случае матрицы A′
1 в зависимости от значения α1 либо γ=(0, 1,−1, 0)T , либоγ= (1, 0,−1, 0)T удовлетворяют (4.2).
В случае матрицы A′2: если только один из βi равен нулю, то получаем случай,
аналогичный предыдущему. Если оба βi ненулевые и одного знака, то из постро-ения матрицы (вычитанием строк) очевидно, что α1 = α2, тогда γ= (0, 0, 1,−1)T
удовлетворяет (4.2). Если же βi разных знаков, то без ограничения общности изпостроения матрицы α1 = 0, α2 =−2 и γ= (1, 1,−1,−1)T удовлетворяет (4.2).
В случае матрицы A′3: γ= (1,−1, 0, 0)T удовлетворяет (4.2).
Необходимость доказана. ¤
4.3. Теорема о классификации полных систем в P2(2)
Следствием теоремы 4.2 и теоремы 4.8 является
Теорема 4.9. Относительно набора операций F = Nf , Nv, S, T множествополных систем в P2(2) разбивается на четыре попарно непересекающихся классаподобных систем B1,B2,B3,B4, где
B1 =[0, x , y , xy
]F
, B2 =[0, x , y , x ⊕ y
]F
,
B3 =[0, x , xy , y ⊕ xy
]F
, B4 =[0, x , xy , x ⊕ y ⊕ xy
]F
23
5. О соотношении понятий полноты и сильной
полноты
Теорема 4.8 дает ответ на вопрос, как связано понятие полноты и сильнойполноты в P2(2). Для пространств более высоких размерностей (n >3) ответ будетдан в этом разделе.
5.1. О неэквивалентности понятия полноты и сильной пол-
ноты в пространстве P2(3)
Приведем пример, показывающий, что в пространстве P2(3) существуют слабополные системы (или, что то же самое, что понятия полноты и сильной полнотыне тождественны в P2(3)).
Предложение 5.1. В пространстве P2(3) существуют слабо полные систе-мы функций.
Доказательство. Рассмотрим систему A, состоящую из 7 функций и имею-щую матрицу
A = AA =
−1 1 1 1 1 1 1 1
1 −1 1 1 1 1 1 1
1 1 −1 1 1 1 1 1
1 1 1 −1 1 1 1 1
1 1 1 1 −1 1 1 1
1 1 1 1 1 −1 1 1
1 1 1 1 1 1 −1 1
Такая система, очевидно, не сильно полна. Докажем, что она полна.Через A′ обозначим подматрицу матрицы A, которая образована первыми се-
мью столбцами, и докажем, что A′ невырождена.
detA′ = det
−1 1 1 1 1 1 1
1 −1 1 1 1 1 1
1 1 −1 1 1 1 1
1 1 1 −1 1 1 1
1 1 1 1 −1 1 1
1 1 1 1 1 −1 1
1 1 1 1 1 1 −1
= det
−1 1 1 1 1 1 1
0 0 2 2 2 2 2
0 2 0 2 2 2 2
0 2 2 0 2 2 2
0 2 2 2 0 2 2
0 2 2 2 2 0 2
0 2 2 2 2 2 0
24
Вопрос о невырожденности A′ сводится к аналогичному для главного минора 6-гопорядка, который, очевидно, невырожден, таким образом, невырождена матрицаA′.
Из только что доказанного следует, что rkA = 7, причем вектор-столбцы,составляющие A′, являются базисом в R7. Следовательно, вектор-столбец(1, 1, 1, 1, 1, 1, 1)T , стоящий в последнем столбце матрицы A, выражается через пер-вые семь однозначно.
Остается заметить, что
5 ·
1
1
1
1
1
1
1
=
−1 1 1 1 1 1 1
1 −1 1 1 1 1 1
1 1 −1 1 1 1 1
1 1 1 −1 1 1 1
1 1 1 1 −1 1 1
1 1 1 1 1 −1 1
1 1 1 1 1 1 −1
1
1
1
1
1
1
1
Таким образом, решениями однородной системы с матрицей A являются векторы
γ = β · (1, 1, 1, 1, 1, 1, 1,−5)T , β ∈ R
и только они, что исключает существование нетрививального вектора решений скомпонентами из 1,−1, 0. Условие критерия полноты (предложение 2.2) выпол-няется, следовательно, система A полна. ¤
В функциональном виде данный пример слабо полной системы будет представ-лен ниже (раздел 5.3), после рассмотрения общего случая.
5.2. О неэквивалентности понятия полноты и сильной пол-
ноты в пространстве P2(n), n > 3
Пример, представленный в предложении 5.1, является частным случаем бо-лее общей конструкции, которую мы приведем ниже. Предпошлем ей нескольковспомогательных утверждений.
Лемма 5.2. Квадратная матрица A= (aij )Ni ,j=1, такая, что
aij =
0, i = j
λ, i 6= j
где λ 6= 0, невырождена.
25
Доказательство. Не ограничивая общности положим λ= 1. Пусть матрицавырождена. Тогда одна из строк линейно выражается через остальные. Пусть, неограничивая общности, первая строка линейно выражается через последующие скоэффициентами k2, k3, . . . , kN . Рассматривая поочередно компоненты этих строк,получим
N∑i=2
ki = 0;N∑
i=3
ki = 1; . . .
N∑i=2i 6=j
ki = 1; . . .
N−1∑i=2
ki = 1
Вычитая из первого уравнения поочередно последующие, получаем ki =−1, i =
=2, . . . ,N , что, очевидно, неверно. Значит, решений не существует, что доказываетутверждение. ¤
Лемма 5.3. Пусть N >5. Тогда существует матрица A=(aij ) размера (N −−1)×N такая, что задаваемая ей однородная линейная система не имеет средирешений векторов с компонентами из 1,−1, 0.
Доказательство. Зададим A размера (N − 1)×N следующим образом:
aij =
−1, i = j
1, i 6= j
Таким образом, матрица A выглядит так:
A =
−1 1 . . . . . . . . . . . 1
1 −1 1 . . . . . . 1
· · · 1 −1 1 · · · 1
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . 1 −1 1︸ ︷︷ ︸N
(N − 1)
Обозначим через A′ подматрицу размера (N −1)× (N −1), образованную первыми(N − 1) столбцами матрицы A.
Матрица A′ невырождена. Действительно, после сложения с первой строкойкаждой из последующих, получим матрицу вида
26
−1 ∗ ∗ . . . ∗0
0...0
A′′
где подматрица A′′ размера (N −2)× (N −2) удовлетворяет условиям утверждения5.2 с λ= 2 и, следовательно, также невырождена. Невырожденность A′ доказана.
Таким образом, столбцы матрицы A′ образуют базис в RN−1, и, следовательно,последний столбец (единичный) матрицы A линейно выражается через первые(N − 1) столбцов единственным образом.
Осталось заметить, что коэффициенты такого представления одинаковы и рав-ны 1/(N − 3), откуда следует, что нетривиальной линейной комбинации столбцовматрицы A с коэффициентами из 1,−1, 0 не существует, так как все векторакоэффициентов такой линейной комбинации имеют вид
γ = β · (1, 1, . . . , 1,−(N − 3))T , N > 5, β ∈ R
Искомая матрица построена. ¤
Замечание 5.4. Отметим, что условие N > 5 существенно — без него невер-ным становится самый последний шаг рассуждения.
Теорема 5.5. Пусть n > 3. Тогда в пространстве P2(n) существуют слабополные системы булевых функций.
Доказательство. В условиях теоремы выполняется соотношение 2n > 8, сле-довательно, по лемме 5.3 (где N = 2n) можно построить матрицу с 2n стобцамии ранга меньшего, чем 2n , состоящую из ±1, для которой выполняется критерийполноты (предложение 2.2).
Система булевых функций, которой соответствует построенная матрица, слабополна по определению. Теорема доказана. ¤
Теоремы 4.8 и 5.5 дают ответ на вопрос, является ли достаточное условие пол-ноты системы в P2(n)
rkA = 2n
необходимым условием ее полноты. Для n =2, таким образом, ответ положитель-ный, для n > 3 ответ отрицательный.
27
5.3. Примеры слабо полных систем
Приведем пример слабо полной системы булевых функций.В пространстве P2(3) слабо полная система A, задаваемая матрицей из утвер-
ждения 5.1, имеет вид
A = xyz , xyz , xyz , xyz , xyz , xyz , xyz.
Операциями из набора операций F над приведенной выше системой можно полу-чить (см. предложение 3.12) целый класс подобных ей слабо полных систем.
В случае произвольного n > 3, как видно из примера, построенного при дока-зательстве теоремы 5.5, слабо полная система B в пространстве P2(n) состоит извсех всех конъюнкций n переменных, кроме одной:
B = x σ11 x σ22 . . . x σnn | (σ1, σ2, . . . , σn) 6= (1, . . . , 1)
6. Связь с матрицами Адамара
В разделе рассматривается связь полных систем булевых функций с так назы-ваемыми матрицами Адамара.
Квадратная матрица H =(hij )ki ,j=1, hij ∈−1, 1 называется матрицей Адамара,
если ее столбцы (или, что эквивалентно, строки) ортогональны, т.е.
HH T = kI
Подробнее о матрицах Адамара см. [4], [5].Матрицы Адамара играют важную роль в теории кодирования (см., напри-
мер, [4]), например, с их помощью строятся коды, лежащие на границе Плоткина([4], теорема 2.0.5).
Необходимым условием того, что квадратная матрца — Адамарова, являетсякратность ее порядка четырем (см. [5]). Тем не менее, к настоящему моментуне найдено методов построения адамаровых матриц любого порядка, кратногочетырем.
Ярковыраженная связь между матрицами некоторых сильно полных системи матрицами Адамара делает возможным предположение о существовании мето-дов построения новых матриц Адамара, использующих описание на языке сильнополных систем булевых функций.
Пусть n > 1. Приведем эквивалентное определение того, что матрица системыA, состоящей из 2n булевых функций из P2(n) — адамарова.
28
Предложение 6.1. Матрица AA размера 2n ×2n — адамарова тогда и толь-ко тогда, когда ρ(f1, f2) = 2n−1 для любой пары функций f1 6= f2, f1, f2 ∈A.
Доказательство. Заметим, что для любой пары v1,v2 (в том числе совпада-ющих) строк матрицы AA, соответствующих функциям f1, f2, справделиво выра-жение для их скалярного произведения
(v1,v2) = ‖χf1 ⊕ χf2‖ − ‖χf1 ⊕ χf2‖ = 2n − 2‖χf1 ⊕ χf2‖ = 2n − 2ρ(f1, f2),
откуда, используя свойство адамаровых матриц ((v1,v2)=0), получаем утвержде-ние. ¤
В силу определения адамаровых матриц, имеет смысл рассматривать их связьтолько с сильно полными системами, так как любая система, имеющая адамаровуматрицу, должна иметь полный ранг.
Предложение 6.2. Пусть A — система булевых функций с квадратнойматрицейразмера 2n × 2n . Тогда операции из F (см. определение 4.1) не изме-няют свойства адамаровости матрицы AA.
Доказательство. Операции Nf , Nv, S, T эквивалентны соответственно умно-жению некоторой строки AA на −1, некоторой перестановке столбцов AA, умно-жению некоторого набора столбцов AA на −1, некоторой перестановке столбцовAA.
Все упомянутые операции сохраняют свойство ортогональности строк. ¤
Следствие 6.3. В любом замкнутом относительно F классе систем вP2(n), n > 2 все системы одновременно имеют либо адамаровы матрицы, либоне адамаровы.
Напомним, что, согласно теореме 4.2 множество всех сильно полных систем вP2(2) разбивается на четыре класса эквивалентности относительно F :
B1 =[0, x , y , xy
]F
, B2 =[0, x , y , x ⊕ y
]F
,
B3 =[0, x , xy , y ⊕ xy
]F
, B4 =[0, x , xy , x ⊕ y ⊕ xy
]F
Так как этими классами описываются все сильно полные системы, то, в силутого, что адамарова матрица также описывает сильно полную систему, некотороыеиз этих классов обязаны иметь адамаровы матрицы. Нетрудно видеть, что этокласс
B2 =[0, x , y , x ⊕ y
]F
29
Тензорным (кронекеровым) произведением (см. [4]) A⊗B матриц An×m и Bk×l
называется блочная матрица
C = A⊗ B =
a11B a12B · · · a1mB
a21B a22B · · · a2mB
. . . . . . . . . . . . . . . . . . . . . . . .
an1B an2B · · · anmB
размера nk ×ml .Следующее предложение доказано в [4].
Предложение 6.4. Если A и B — матрицы Адамара, то A⊗ B — тожематрица Адамара.
В работе [3] было дано довольно сложное доказательство того факта, что си-стема L(n) ∩T
(n)0 — сильно полная. Дадим более простое доказательство.
Предложение 6.5. Система A0(n)=L(n)∩T(n)0 ⊂P2(n), n >2 является силь-
но полной.
Доказательство. Система A0(2), порождающая класс B2, удовлетворяетутверждению. Как отмечалось выше, она имеет адамарову матрицу (обозначимее A2). В силу утверждения 6.4 операция тензорного произведения ее матрицы сматрицей
X =
(1 1
1 −1
)
примененная k >0 раз, порождает адамарову матрицу C =X⊗k ⊗A2 размера 2k+2,и, следовательно, задает некоторую сильно полную систему в P2(n), n = k +2. До-кажем, что это система есть A0(n).
Для этого остается заметить, что операция тензорного произведения матрицыX с матрицей Ys любой системы B(s) функций s переменных x1, x2, . . . , xs даетматрицу, имеющую вид
Ys+1 =
(Ys Ys
Ys −Ys
)
которая соответствует системе функций (s + 1) переменных
B(s + 1) = B′(s + 1) ∪B′′(s + 1)
где B′(s + 1) = B(s) (не зависит от новой переменной x0) и B′′(s + 1) = x0⊕B(s).Очевидно, что, строя таким образом новые системы и начиная с A0(2), будем
на каждом шаге получать системы, состоящие из всех линейных функций, сохра-
30
няющих ноль. ¤
Возникает вопрос — только ли класс, порождаемый системой A0(n), обладаетадамаровыми матрицами.
Напомним, что нормализованной матрицей Адамара называется матрица Ада-мара с единичными первой строкой и первым столбцом. В терминах матриц систембулевых функций — это матрицы систем, состоящих из функций, сохраняющихноль, среди которых есть ноль.
Две адамаровы матрицы называются эквивалентными, если одна из них полу-чена из другой путем применения преобразования из группы G , которую опреде-лим как группу, состоящую из преобразований матриц, порождающихся инверси-ями (т.е. умножениями на −1) произвольной строки или столбца и перестановкамипары строк или пары столбцов.
В книге [5] указано, что, вообще говоря, среди нормализованных матриц Ада-мара есть неэквивалентные (начиная с порядка 16, пример дан в Приложении). На-пример, попарно неэквивалентных матриц Адамара порядка 16 существует пять(см. [2]).
Имеет место следующее утверждение.
Предложение 6.6. Пусть n >4, A0⊂P2(n) — система из утверждения 6.5.Существует система B⊂P2(n), не подобная системе A0 и имеющая адамаровуматрицу.
Доказательство. Заметим, что операции из F , будучи рассмотренными какпреобразования матриц систем, порождают некоторую подгруппу (обозначим ееF ) группы G . Также отметим, что, согласно условию, рассматриваемые матрицыимеют порядок 2n .
Докажем от противного. Пусть любая система B⊂P2(n), имеющая адамаровуматрицу, подобна A0. Тогда, по определению подобия, AB = fk . . . f1AA0 , где fi , 166 i 6k — операции из множества F , рассмотренные как операции над матрицами.
Но так как fk . . . f1∈F ⊂G , то fk . . . f1∈G . Значит, любая адамарова мат-рица порядка 2n , n > 4 эквивалентна матрице системы A0, что неверно, согласнозамечанию о количестве классов эквивалентности матриц Адамара, предваряю-щему доказываемое утверждение. ¤
Открыт вопрос о том, все ли матрицы Адамара порядка 23 порождаются систе-мами из класса
[L(3) ∩T
(3)0
]F. Известно (см., например, [2]), что существует ровно
один класс эквивалентности матриц Адамара порядка 8, однако пока неизвестно,равен ли этот класс классу подобия (в матричном виде) системы
[L(3) ∩T
(3)0
]F.
31
Таким образом, одна из задач на этом пути — определить, является ли груп-па F собственной подгруппой G (в этом случае эквивалентные матрицы Адамарамогут соответствовать неподобным системам), или же G =F (в этом случае экви-валентность в смысле матриц Адамара равносильна подобию в смысле систем).
7. Замечания о дальнейших путях исследований,
постановки задач
7.1. О «проекциях» полных систем из P2(n + 1) в P2(n)
Предложение 7.1. Пусть дана сильно полная система функций An+1 в про-странстве P2(n +1). Тогда подстановка константы вместо некоторой перемен-ной во все функции системы приведет к системе An ⊂P2(n), которая являетсясильно полной.
Доказательство. Без ограничения общности будем подставлять константу 0(для константы 1 рассуждения аналогичные).
Надо доказать, что прямоугольная подматрица матрицы AAn+1 , (имеющей поусловию полный ранг 2n+1), образованная первыми 2n ее столбцами, будет иметьмаксимальный возможный ранг 2n .
Представив строки матрицы AAn+1 как векторы в пространстве R2n+1 , образу-ющие его базис, получим, что строки описанной выше подматрицы суть проекцииэтих векторов на некоторое подпространство R2n .
Но очевидно, что проекции векторов базиса некоторого линейного простран-ства V на его подпространство W образуют систему векторов, линейная оболочкакоторых есть W . В нашем случае V =R2n+1 , W =R2n . Значит, в спроектированнойсистеме векторов можно выбрать 2n линейно независимых, то есть ранг рассмат-риваемой подматрицы равен 2n . ¤
7.2. Примеры получения полных систем более высоких по-
рядков
Предложение 7.2. Если система A⊂P2(n) сильно полна, то система A′ =
= A∪ (A⊕ xn+1)⊂P2(n + 1) также сильно полна. Под A⊕ xn+1 понимается си-стема, состоящая из функций, к каждой из которых прибавлена функция xn+1.
Доказательство. Доказательство очевидно, если рассмотреть матрицу полу-ченной системы. ¤
32
Таким образом, из порождающих систем классов B1,B2,B3,B4 получаем в P2(3)
сильно полные системы следующего вида:
0, x , y , z , xy , x ⊕ z , y ⊕ z , xy ⊕ z0, x , y , z , x ⊕ y , x ⊕ z , y ⊕ z , x ⊕ y ⊕ z0, x , z , x ⊕ z , xy , xy ⊕ y , xy ⊕ z , xy ⊕ y ⊕ z0, x , z , x ⊕ z , xy , xy ⊕ z , xy ⊕ x ⊕ y , xy ⊕ x ⊕ y ⊕ z
Нетрудно видеть, что эти системы, будучи полученными из неподобных системприбавлением новой переменной, порождают разные классы подобия в простран-стве P2(3).
Указанный способ — общий для любой сильно полной системы и любого числапеременных n. Специальный же вид системы B1 наводит на мысль о том, что ееможно распространить на более высокие размерности как K(n).
Действительно, система
0, x , y , z , xy , xz , yz , xyz
сильно полна, как доказано в [3].Для дальнейших замечаний введем определение которое уже использовалось
при доказательстве некоторых утсверждений (см. стр. 20), а именно, обозначим51(A) :=min(s , 2n − s), где s — суммарное количество конъюнкций степени n (мак-симально возможной) во всех полиномах Жегалкина функций из A⊂P2(n). На-пример, для системы A= x , xy , x ⊕ xy , y ⊕ xy⊂P2(2) имеем 51(A)=min(3, 1)=1.
В доказательстве утверждения 4.5 показано, что для любой системы из P2(n)
параметр 51 является инвариантным относительно преобразований из F .Обратим внимание, что из пяти указанных систем первые четыре имеют пара-
метр 51 = 0, пятая имеет 51 = 1.Систему с 51 =2 находим, отталкиваясь от системы, порождающей класс B3, с
помощью домножения ее на z , присоединения селекторной функции z и объеди-нения результата с исходной системой:
0, x , z , xy , y ⊕ xy , xz , xyz , yz ⊕ xyz
Другой пример сильно полной системы с 51 = 2 получаем, отталкиваясь отсистемы, порождающей класс B4:
0, x , z , xy , x ⊕ y ⊕ xy , xz , xyz , xz ⊕ yz ⊕ xyz
33
Замечание 7.3. Аналогичным образом порожденная из B2 система
0, x , y , z , xz , yz , x ⊕ y , xz ⊕ yz
также сильно полна.
Последние примеры наводят на гипотезу: если сильно полная система в A⊂⊂P2(n) содержит нуль, сохраняет нуль, то система A′ = A∪ (A & xn+1)∪ xn+1⊂⊂P2(n + 1) также сильно полна.
Замечание 7.4. Можно заметить, что в классе подобных систем всегда содер-жится система, сохраняющая нуль. Таким образом, для любой системы булевыхфункций найдется подобная ей такая система, что к ней применимо предложение7.5.
Назовем систему, содержащую нуль и сохраняющую нуль, нормализованной. Улюбой системы существует подобная ей нормализованная.
Предложение 7.5. Пусть система A⊂P2(n) сильно полна и является нор-мализованной. Тогда система A′=A∪A&xn+1∪xn+1⊂P2(n +1) также силь-но полна.
Доказательство. Проведем доказательство в матричном виде. Получим мат-рицу системы A′. Объединив матрицы для A, A&xn+1 и xn+1 в P2(n +1), получимматрицу:
B =
A A
0 A
1 . . . 1 −1 . . . −1
,
где невырожденная квадратная матрица A порядка 2n есть матрица системы A,содержащая строку (1, . . . , 1), так как система A нормализована и содержит функ-цию 0.
Матрица B имеет 2n+1 столбцов и 2n+1 + 1 строк, две из которых равны(1, . . . , 1) (они соответствуют двум функциям 0 в системе A′). Удалив одну изэтих функций без ущерба системе, получим матрицу системы A′, равную
A′ =
1 . . . 1 −1 . . . −1
1 . . . 1 1 . . . 1
A A
1 A
,
где A — результат удаления из матрицы A строки (1, . . . , 1). A имеет ранг 2n − 1.
34
Теперь докажем от противного, что A′ невырождена. Пусть существует на-бор коэффициентов µ1, . . . , µ2n+1 такой, что линейная комбинация вектор-строк ai
матрицы A′ с этими коэффициентами равна 0:
2n+1∑i=1
µiai = 0
Разобъем множество номеров строк матрицы A′ на три множества: Ω1 = 1, 2,Ω2 = 3, . . . , 3 + 2n и Ω3 = (3 + 2n) + 1, . . . , 2n+1. Обозначим за xi и yi подвек-торы вектора ai , образованные, соответственно, первыми 2n и последними 2n егокоординатами. Тогда очевидны следующие факты:
∑Ω2
µixi =∑Ω2
µiyi =: b, (7.1)
∑Ω1∪Ω3
µixi = (x , . . . , x ) =: x, x ∈ R. (7.2)
Наконец, если среди µi , i ∈Ω3 есть ненулевой коэффициент, то
∑Ω1∪Ω3
µiyi =: y 6= (y , . . . , y) ни для какого y ∈ R. (7.3)
Последнее следует из того, что каждый из векторов y1,y2 имеет попарно равныекомпоненты, а никакая линейная комбинация строк матрицы A не может бытьвектором с попарно одинаковыми компонентами, так как A — результат удаленияиз невырожденной матрицы A строки (1, . . . , 1).
Из выражений (7.1)–(7.3) следует, что если среди µi , i ∈Ω3 есть ненулевой ко-эффициент, то
2n+1∑i=1
µixi = b + x,
2n+1∑i=1
µiyi = b + y
Из предположения следует, что b + x = b + y = 0, откуда x = y. В силу того, чтов левой части стоит вектор с попарно одинаковыми координатами, а в правой —нет, получаем противоречие.
Значит, все коэффициенты µi , i ∈Ω3 равны нулю. Тогда, как нетрудно видеть,предположение о равенстве линейной комбинации строк матрицы A′ приводитсяк виду
(µ1 + µ2, . . . , µ1 + µ2) + b = (−µ1 + µ2, . . . ,−µ1 + µ2) + b = 0 ⇒ µ1 = −µ1 = 0,
35
тогда предположение сводится к равенству
(µ2, . . . , µ2) + b = 0 ⇔ (µ2, . . . , µ2) +∑Ω2
µixi = 0,
что влечет µ2 = 0, µi = 0, i ∈Ω2, так как в левой части последнего равенства стоитлинейная комбинация строк матрицы A, которая невырождена.
Мы доказали, что все µi = 0 и, таким образом, матрица A′ невырождена, чтоозначает сильную полноту системы A′. ¤
36
Заключение
Теоремы 4.2, 4.8, 4.9, раскрывают в полной мере устройство полных систем впространстве P2(2).
Сделаны попытки исследования структуры полных систем в пространствефункций n > 3 переменных.
Проведено исследование соотношения понятий сильной и слабой полноты, при-ведены примеры, доказывающие наличие слабо полных систем булевых функцийв P2(n), n > 3 (теорема 5.5). Этот результат вводит некоторые трудности на путидальнейшего описания полных систем, так как появляется необходимость отдель-ного описания сильно полных и слабо полных систем.
Направление поиска слабо полных систем представляется наиболее интерес-ным направлением, так как оно позволяет сопоставлять булевой функции векторрасстояний длины, меньшей, чем 2n .
Доказаны некоторые технические утверждения, касающиеся связи матрицАдамара и полных систем булевых функций.
С использованием инструментария, намеченного в данной работе, даны болеепростые доказательства некоторых утверждений, которые были доказаны в [3].
Найдены некоторые классы полных систем в пространстве P2(3). Способ ихпостроения выводит некоторые гипотезы, которые в случае подтверждения при-ведут к методам обобщения имеющейся структуры полных систем (в P2(2)) наслучаи n > 3.
Намечен спектр вопросов, требующих исследования на этом пути (о равно-сильности понятий эквивалентности матриц Адамара и подобия систем функций,о возможности распространения полученных результатов на случай более высокихразмерностей).
37
Приложение. Пример двух неэквивалентных
матриц Адамара порядка 16
A116 =
+ + + + + + + + + + + + + + + +
+ − + − + − + − + − + − + − + −+ + − − + + − − + + − − + + − −+ − − + + − − + + − − + + − − +
+ + + + − − − − + + + + − − − −+ − + − − + − + + − + − − + − +
+ + − − − − + + + + − − − − + +
+ − − + − + + − + − − + − + + −+ + + + + + + + − − − − − − − −+ − + − + − (+) (−) − + − + − + (−) (+)
+ + − − + + − − − − + + − − + +
+ − − + + − (−) (+) − + + − − + (+) (−)
+ + + + − − − − − − − − + + + +
+ − + − − + (−) (+) − + − + + − (+) (−)
+ + − − − − + + − − + + + + − −+ − − + − + (+) (−) − + + − + − (−) (+)
38
A216 =
+ + + + + + + + + + + + + + + +
+ − + − + − + − + − + − + − + −+ + − − + + − − + + − − + + − −+ − − + + − − + + − − + + − − +
+ + + + − − − − + + + + − − − −+ − + − − + − + + − + − − + − +
+ + − − − − + + + + − − − − + +
+ − − + − + + − + − − + − + + −+ + + + + + + + − − − − − − − −+ − + − + − (−) (+) − + − + − + (+) (−)
+ + − − + + − − − − + + − − + +
+ − − + + − (+) (−) − + + − − + (−) (+)
+ + + + − − − − − − − − + + + +
+ − + − − + (+) (−) − + − + + − (−) (+)
+ + − − − − + + − − + + + + − −+ − − + − + (−) (+) − + + − + − (+) (−)
39
Список литературы
[1] Логачев О.А., Сальников А.А., Ященко В.В. Булевы функции в теории коди-рования и криптологии // Москва, изд-во МЦНМО, 2004
[2] Ф.Дж.Мак-Вильямс, Н.Дж.А.Слоэн Теория кодов, исправляющих ошибки //Москва, изд-во «Связь», 1979
[3] Малыхин В.В. О некоторых метрических свойствах булевых функций.Дипломная работа. // Москва, МГУ им. М.В.Ломоносова, Механико-математический факультет, 2008
[4] Сидельников В.М. Теория кодирования // Москва, 2007
[5] Холл М. Комбинаторика // Москва, изд-во «Мир», 1970
[6] Яблонский С.В. Введение в дискретную математику // Москва, 1979
40