Булевы алгебры и булевы функции. Дополнительные главы дискретной математики. Учебное пособие
.pdf
в) порядок клона равен двум.
Доказательство. a) В § 3.1 отмечено равенство
p 1, . . . , , . . . , q “ ^ p 1, . . . , ´1, 1, `1, . . . , q _
_^ p 1, . . . , ´1, 0, `1, . . . , q. (˚˚)
Всилу же монотонности имеет место неравенство
p 1, . . . , ´1, 0, `1, . . . , q ď p 1, . . . , ´1, 1, `1, . . . , q
и подформулу ^ p 1, . . . , ´1, 0, `1, . . . , q в равенстве (˚˚) можно заменить на формулу p 1, . . . , ´1, 0, `1, . . . , q.
б) Из равенств _ 1 “ 1, ^ 0 “ 0, 0 _ 0 “ 0 следует, что для монотонной функции , отличной от константы, функция
p 1, . . . , ´1, 0, `1, . . . , q
из равенства (˚) не равна константе 1 или хотя бы одна из функций
p 1, . . . , ´1, 0, `1, . . . , q, p 1, . . . , ´1, 1, `1, . . . , q не равна константе 0. С помощью равенств ^ 1 “ и _ 0 “ можно из правой части равенства (˚) исключить все константы 0, 1. К оставшимся монотонным функциям
p 1, . . . , ´1, 0, `1, . . . , q и p 1, . . . , ´1, 1, `1, . . . , q
опять применяем разложение (˚) и все последующие рассуждения. Итерируя эту процедуру должное число раз, получаем включение
P x ^ , _ y и, вследствие него, равенство x0, 1, ^ , _ y “ . в) В силу утверждения б) порядок клона не больше двух. А так как этот клон включает в себя функцию ^ ранга два, то, как это уже замечалось выше, он не может быть порожден системой функций
ранга один.
Существование полинома Жегалкина для булевых функций влечет
61
равенство x‘, ¨, 1y “ 2, а, так как функции ‘ и ¨ входят в клон 0 и
свободные члены полиномов Жегалкина для функций из 0 должны равняться 0, то x‘, ¨y “ 0 и порядок клона 0 равен двум. Равенство
1 “ 0˚ влечет равенство двум порядка клона 1. Равенство x‘, ¨, 1y “
и невозможность равенства единице порядка клона, включающего в себя функцию ранга два, влечет утверждение о том, что порядок и клона равен двум.
Заметим, что все клоны 0, 1, , , попарно различны, более того имеют место следующие непосредственно проверяемые включения:
(
, p ^ q ‘ p ^ q ‘ p ^ q P zp Y Y 0 Y 1q;
(
0, 1, _ P zp Y Y 0 Y 1q;
|
( |
(I) |
1, ‘ |
P zp Y Y 0 Y 1q; |
(
‘ , ^ P 0zp Y Y Y 1q;
(
‘ ‘ 1, _ P 1zp Y Y Y 0q.
Отметим еще пару необходимых нам в дальнейшем равенств
x ^ , _ y “ 0.
Действительно, включения ^ , _ в 0 очевидны, а, с другой стороны, x‘, ¨y “ 0 в то время как ‘ “ p ^ q _ p ^ q и
¨ “ p ^ q ^ .
Переходя к двойственным функциям, получаем равенство
x _ , ^ y “ 1.
ЛЕММА 3.3.2.
а) Если p 1, . . . , q не монотонная функция, то P x , 0, 1y;
б) если p 1, . . . , q не самодвойственная функция, то хотя бы одна из констант 0, и 1 входит в x , y;
62
в) если p 1, . . . , q не линейная функция, то хотя бы одна из функций ¨ или ¨ ‘ 1 входит в x , , 0y.
Доказательство. а) Пусть p 1, . . . , q не монотонная функция и,
значит, существуют кортежи x 1, . . . , y , x 1, . . . , y P t0, 1u такие, что ď для 1 ď ď , но p 1, . . . , q ą p 1, . . . , q. Для 1 ď ďопределим функции p q следующим образом:
$
’0, если “ “ 0,
’
&
p q “ 1, если “ “ 1,
’
’
% , если 1 “ 0, “ 1.
Всилу неравенств ď случай когда “ 1, а “ 0 невозможен.
`˘
Рассмотрим функцию p q “ 1p q, . . . , p q . Тогда
`˘
p0q “ 1p0q, . . . , p0q “ p 1, . . . , q и
`˘
p1q “ 1p1q, . . . , p1q “ p 1, . . . , q.
Но тогда p0q ą p1q и, значит, утверждение а) доказано.
б) Пусть p 1, . . . , q не самодвойственная функция. Тогда суще-
ствует кортеж “ x 1, . . . , y P t0, 1u такой, что p 1, . . . , q “ |
|
p 1, . . . , sq. Функции p q для 1 ď ď определим равенствами |
|
p q “ |
и положим p q “ ` 1p q, . . . , p q˘. Тогда |
p0q “ ` 1p0q, . . . , p0q˘ “ p0 1 , . . . , 0 q “ p 1, . . . , q,
и, в то же время,
p1q “ ` 1p1q, . . . , p1q˘ “ p1 1 , . . . , 1 q “
“ p 1, . . . , q “ p 1, . . . , q,
то есть p1q “ p0q и функция p q является константной. Утверждение б) леммы доказано.
63
в) Пусть p 1, . . . , q не линейная функция. Тогда в ее представлении полиномом Жегалкина есть не линейное слагаемое. Выберем подобное слагаемое имеющее наименьшую степень. Допустим, что оно имеет вид 1 ¨ 2 ¨ . . . ( ě 2). Заменяя аргумент 1 на , а аргументы 2, . . . , на и, подставляя вместо других аргументов константу 0, получаем функцию p , q. В силу выбора нелинейного слагаемого 1 ¨ 2 ¨ . . . наименьшей степени, для функции p , q имеет место равенство p , q “ ¨ ‘ ‘ ‘ для некоторых , , P t0, 1u.
Рассмотрим теперь функцию p , q “ p ‘ , ‘ q “ ¨ ‘ ‘ , то есть p , q либо равна ¨ , либо равна ¨ ‘ 1. А так как “ ‘ 1, то получаем включение в клон x , , 0y либо функции ¨ , либо функции ¨ ‘1. Утверждение в) леммы, а, вместе с ним, и вся лемма доказаны.
Перейдем, наконец, к формулировке и доказательству теоремы Поста — критерия полноты систем булевых функций.
ТЕОРЕМА ПОСТА. Совокупность булевых функций является полной тогда и только тогда, когда она включает в себя хотя бы по одной функции не входящей в следующие клоны: 0, 1, , , .
Доказательство. Необходимость следует из неравенств 0 ‰ 2,1 ‰ 2, ‰ 2, ‰ 2, ‰ 2, уже отмеченных ранее.
Докажем достаточность. Пусть некоторая совокупность функций такая, что Ę 0, Ę 1, Ę , Ę , Ę и пусть функции 1,2, 3, 4, 5 из таковы, что 1 R 0, 2 R 1, 3 R , 4 R , 5 R . Заметим, что сами эти функции не обязаны быть попарно различными. Рассмотрим клон Φ, порожденный этими функциями, то есть пусть Φ “ x 1, 2, 3, 4, 5y и покажем, что Φ “ 2.
Прежде всего заметим, что в Φ входят обе константы. Действительно, т. к. 2p 1, . . . , q P Φ и 2p1, . . . , 1q “ 0, то функция одного аргумента 2p , . . . , q либо есть константа 0, либо функция (так как существует всего четыре одноместных функции аргумента : ,
и константы 0 и 1). В первом случае с помощью функции 1, не сохра-
64
няющей 0, то есть такой, что 1p0, . . . , 0q “ 1 получаем, что функция
Во |
|
` |
2 |
˘ |
|
p q “ 1 |
2p , . . . , q, . . . , 2p , . . . , q |
является константой 1. |
|||
|
втором случае, когда |
|
, . . . , |
суперпозиция функций |
|
|
|
|
|
p |
q “ |
и 5p 1, . . . , q, по лемме 3.3.2 б), дает одну из констант 0, либо 1. Вторую константу в клоне Φ получим подстановкой уже полученной константы либо в функцию 1, либо в функцию 2.
Тем самым обе константы 0 и 1 входят в Φ, но тогда, по лемме 3.3.2 а), в Φ входит и функция . А по утверждению леммы 3.3.2 в)
вΦ входит одна из функций ¨ или ¨ ‘ 1. Но тогда, так как во втором случае в Φ входят и и ¨ ‘ 1, а p ¨ ‘ 1q “ ¨ , то в Φ
влюбом случае входит функция ¨ .
Сдругой стороны, как хорошо известно, и уже отмечалось ранее совокупность t ^ “ ¨ , u является полной и, значит Φ “ 2, что и доказывает теорему Поста.
Совокупность булевых функций Φ называется предполной, если клон 2
покрывает клон xΦy, то есть, если xΦy Ă 2 и не существует клонов лежащих между xΦy и 2.
Отмеченная выше непустота множеств zp Y Y 0 Y 1q, zp Y
Y 0 Y 1q, zp Y Y 0 Y 1q, 0zp Y Y Y 1q, 1zp Y Y Y
0q вкупе с утверждением теоремы Поста очевидным образом влечет следующее утверждение.
СЛЕДСТВИЕ 3.3.1. Любой клон булевых функций отличный от клона 2 всех булевых функций содержится в одном из пяти предполных клонов , , , 0, 1 и других предполных клонов не существует.
Изложение материала этого раздела в значительной мере следует монографии [8].
65
§ 3.4 Решетка Поста
Решеткой Поста называется решетка 2 всех булевых клонов. В работе [23] Е. Пост доказал счетность этой решетки, получил ее диаграмму Хассе и исчерпывающее описание входящих в нее клонов.
В предыдущем параграфе мы отметили, что наименьшим элементом этой решетки является клон 01, состоящий из всех селекторных функций p 1, . . . , q “ на множестве t0, 1u. Наибольшим же клоном является клон 2 всех булевых функций. В качестве следствия из доказанной в § 3.3 теоремы Поста мы получили описание верхней части решетки 2:
2
0 |
|
|
|
1 |
Рис. Верхняя часть пешетки 2
Не имея возможности здесь изложить в доказательной форме Постовское описание решетки 2, мы отсылаем читателя к современным доказательным изложениям этого материала в монографии [8] и в учебном пособии [12], отмечая, при этом, что в последнем описание Поста представлено как результат решения последовательности локальных задач (адресованных читателям) о различных булевых клонах и входящих в них функциях. В настоящем параграфе мы ограничимся лишь описанием булевых клонов (включая указания на примеры их базисов и на их порядок) и демонстрацией строения решетки Поста — решетки всех булевых клонов. В данном изложении мы используем более современные и удобные (по сравнению с оригинальным Постовским изложением) обозначения булевых клонов и более прозрачную для восприятия диаграмму Хассе решетки Поста (в том числе и по сравнению с изложением этого материала в предыдущем учебном пособии автора [15], посвященном дополнительным главам дискретной математи-
66
ки). В настоящем изложении этого материала мы следуем изложению |
|
|||||||||||||||||||||||||
его в монографии [8]. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
Отметим так же без доказательства, что все булевы клоны являют- |
|
|||||||||||||||||||||||
ся конечно порожденными, а, значит, обладают базисами и порядками. |
|
|||||||||||||||||||||||||
|
|
Напомним обозначения предполных клонов (коатомов решетки 2), |
|
|||||||||||||||||||||||
введенные в § 3.3: 0 ( 1) — клон всех булевых функций сохраняющих 0 |
|
|||||||||||||||||||||||||
(1), — клон всех монотонных булевых функций, — клон всех са- |
|
|||||||||||||||||||||||||
модвойственных функций, — клон всех линейных булевых функций. |
|
|||||||||||||||||||||||||
|
|
Напомним так же, что пересечение двух клонов и само является |
|
|||||||||||||||||||||||
клоном. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
Пусть 01 “ 0 X 1. Через обозначим клон всех булевых функций |
|
|||||||||||||||||||||||
ранга 1. Через ( ) обозначим клон всех булевых функций предста- |
|
|||||||||||||||||||||||||
вимых дизъюнкцией (конъюнкцией) своих аргументов или констант. |
|
|
||||||||||||||||||||||||
|
|
Под условием 0 (1 ) будем понимать следующее требование к бу- |
|
|||||||||||||||||||||||
. . . , |
|
1 , . . . , |
|
таких, что для |
|
1, . . . , |
@ |
0 ( |
|
D |
||||||||||||||||
левой функции p 1 |
, . . . , q: для любых кортежей 1 |
“ 11, . . . , |
1 |
|
, |
|||||||||||||||||||||
1 |
|
|
“ x |
|
|
|
y |
|
|
|
|
|
|
“ |
|
1 |
sp q “ |
p |
q “ |
|
||||||
|
) |
s |
|
|
ď |
( |
ď |
|
|
такое, что для любого |
|
ďs |
|
|
ď |
s“ |
|
|
||||||||
( |
“ 1). Через |
|
|
) обозначим совокупность всех булевых функ- |
|
|||||||||||||||||||||
ций, обладающих свойством 0 (1 ). Очевидно, что эти совокупно- |
|
|||||||||||||||||||||||||
сти являются клонами. Через 08 (18) обозначим условие для булевых |
|
|||||||||||||||||||||||||
функций : все кортежи значений аргументов , на которых она рав- |
|
|||||||||||||||||||||||||
на 0 (1) имеют общую нулевую (единичную) координату и пусть 8 |
|
|||||||||||||||||||||||||
( 8) — клон булевых функций удовлетворяющих условию 08 (18). При |
|
|||||||||||||||||||||||||
этом 8 “ P , 8 “ P . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
Через |
|
|
|
|
|
|
клон |
X |
, через |
|
X |
0. Пусть (для |
|
|||||||||||
|
|
Şобозначим |
|
Ş |
|
0 — клон |
|
|
|
|||||||||||||||||
“ 1, 2, . . . , 8) 1 “ X 1, 01 “ X 01, 0 “ X 0, 1 “ X 1, |
|
|||||||||||||||||||||||||
01 “ X 01, 0 “ X 0, 1 “ X 1, 01 “ X 01, 0 “ X 0, |
|
|||||||||||||||||||||||||
1 “ X 1, 01 “ X 01, “ X , “ X , “ X , |
|
|||||||||||||||||||||||||
0 “ X 0, 1 “ X 1, 01 “ X 01, 0 “ X 0, 1 “ X 1, |
|
|||||||||||||||||||||||||
01 “ X 01, |
0 “ X 0, |
1 “ X 1, “ X , |
|
|||||||||||||||||||||||
0 “ X 0 , “ X 1 “ X 1 . |
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
В следующем списке булевых клонов указаны примеры их базисов |
|
|||||||||||||||||||||||
67
и их порядки.
Таблица 3.1: Клоны, включающие в себя константы 0 и 1
|
|
|
Клон |
Пример базиса |
|
Порядок |
|||||||||
|
|
|
2 |
, _ |
|
|
|
|
2 |
|
|
|
|||
|
|
|
|
0, 1, _ , ^ |
|
|
|
2 |
|
|
|
||||
|
|
|
|
1, ‘ |
|
|
|
|
|
2 |
|
|
|
||
|
|
|
|
0, 1, _ |
|
|
|
|
2 |
|
|
|
|||
|
|
|
|
0, 1, ^ |
|
|
|
|
2 |
|
|
|
|||
|
|
|
|
1, |
|
|
|
|
|
1 |
|
|
|
||
|
|
|
|
0, 1, |
|
|
|
|
|
1 |
|
|
|
||
Таблица 3.2: Клоны, включающие в себя 1 и не содержащие 0 |
|||||||||||||||
|
|
|
Клон |
|
Пример базиса |
Порядок |
|||||||||
|
|
|
1 |
|
_ , ^ |
2 |
|
||||||||
|
|
|
1 |
|
1, _ , ^ |
2 |
|
||||||||
|
|
|
1 |
|
|
1, ‘ ‘ 1 |
|
2 |
|
||||||
|
|
|
1 |
|
|
|
1, _ |
|
|
2 |
|
||||
|
|
|
1 |
|
|
|
1, ^ |
|
|
2 |
|
||||
|
|
|
1 |
|
|
|
|
1, |
|
|
|
1 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
p “ 2, 3, . . .q |
_ , `1 |
` 1 |
|
||||||||||
|
|
|
p “ 2, 3, . . .q |
|
1, `1 |
|
|
` 1 |
|||||||
|
|
|
8 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
_ |
|
|
|
|
|
|
||
|
|
|
8 |
|
1, |
|
_ p |
|
^ |
|
q |
3 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
собственно, |
`1 |
|
|
|
`1 |
|
|
|
|
|
|
|
|
||
|
Ź |
|
|
. . . _ ´1 _ `1 _ . . . _ q, |
|||||||||||
Здесь `1p 1 |
, . . . , q “ |
p 1 _ |
2 _ |
||||||||||||
|
|
˚ |
|
“1 |
|
|
|
функция. |
|
|
|
||||
|
|
двойственная к |
|
|
|
|
|
||||||||
Наконец, приведем диаграмму Хассе решетки Поста, решетки — ре-
шетки всех булевых клонов.
68
Таблица 3.3: Клоны, включающие в себя 0 и не содержащие 1
|
|
|
|
|
|
|
|
|
|
Клон |
Пример базиса Порядок |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
0 |
|
^ , _ |
|
2 |
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
0 |
|
0, _ , ^ |
|
2 |
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
‘ |
|
|
|
|
|
2 |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
0 |
|
|
0, _ |
|
|
|
|
2 |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
0 |
|
|
0, ^ |
|
|
|
|
2 |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
0, |
|
|
|
|
|
|
|
1 |
|
|
|
||||
|
|
|
p |
|
“ |
2, 3, . . . |
|
^ |
, ˚ |
|
|
|
|
` |
1 |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
q |
|
|
|
|
|
|
`1 |
|
|
|
|
|||||||||||
|
|
|
p |
|
“ |
2, 3, . . . |
|
0, ˚ |
|
|
|
|
|
|
|
` |
1 |
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
q |
|
|
|
|
|
`1 |
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^ |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
8 |
0, |
|
|
|
|
|
|
|
q |
|
3 |
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
^ p _ |
|
|
|
|
|
|
|
|||||||
|
|
|
|
Таблица 3.4: Клоны, не содержащие 0 и 1 |
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
Клон |
|
|
Пример базиса |
Порядок |
||||||||||||||||||||
|
|
|
|
|
|
|
|
01 |
|
|
^ , _ p ^ q |
|
|
3 |
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
01 |
|
|
3p , , q |
|
|
3 |
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
01 |
|
|
_ , ^ |
|
|
2 |
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
01 |
|
|
|
‘ ‘ |
|
|
|
|
3 |
|
|
||||||||||||
|
|
|
|
|
|
|
|
01 |
|
|
|
|
|
_ |
|
|
|
|
|
|
2 |
|
|
||||||||
|
|
|
|
|
|
|
|
01 |
|
|
|
|
|
^ |
|
|
|
|
|
|
2 |
|
|
||||||||
|
|
|
|
|
|
|
|
01 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
, 3 |
|
|
|
|
|
|
3 |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
3 |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
‘ ‘ ‘ 1 |
|
|
3 |
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
p “ 22, 3, . . .q |
_ p ^ q, `1 |
|
` 1 |
||||||||||||||||||||||||||
|
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
_ , 3 |
|
|
|
|
|
3 |
|
|
||||||||||||||
|
|
p “ 3, 4, . . .q |
|
|
|
|
|
` 1 |
|||||||||||||||||||||||
|
|
|
|
|
`1 |
|
|
|
|
|
|||||||||||||||||||||
1 p “ 2, 3, . . .q |
^ p _ q, ˚ `1 |
|
` 1 |
||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
2 |
|
|
|
|
^ |
, ˚ |
|
|
|
|
3 |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|||
|
p |
|
“ |
3, 4, . . . |
|
|
|
˚ |
|
|
|
|
|
|
|
|
|
` |
1 |
||||||||||||
|
|
1 |
|
|
|
|
|
|
q |
|
|
|
|
`1 |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
8 |
|
|
|
_ p |
|
|
|
|
|
|
|
|
|
3 |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
^ q |
|
|
|
|
|
|||||||||
|
|
|
|
|
|
8 |
|
|
|
_ p |
|
^ |
|
q |
|
|
|
3 |
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
8 |
|
|
|
^ p |
|
|
|
|
|
|
|
|
|
3 |
|
|
|||||||
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
_ q |
|
|
|
|
|
||||||||||
|
|
|
|
|
|
8 |
|
|
|
^ p |
|
_ |
|
q |
|
|
|
3 |
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
69
Рис. Диаграмма Хассе решетки Поста
70
