Полные системы булевских функций
Пусть B Í P2.
ОПРЕДЕЛЕНИЕ
Замыканием множества B называется множество, которое обозначается как [B], состоящее из всех таких функций, представимых формулами над B.
То есть [B] состоит из всех таких булевских функций, которые могут быть представлены формулами, составленными из функций, множества B. Например, если B = {x1 + x2, }, то[B] состоит из функций, представляющих либо суммы переменных со свободным членом, равным 1, либо такие суммы без свободного члена, либо нуль.
Действительно, так как = x + 1, то, раскрывая скобки в произвольной формуле U над B и удаляя из полученной суммы пары одинаковых слагаемых (по правилу x + x = 0), можно получить либо сумму указанного вида, либо пустую запись, когда сумма равна 0. В последнем случае формула записывается как 0.
Множество [B] для рассмотренного примера называется классом линейных функций.
Легко проверяются следующие свойства замыкания, справедливые для любых множеств функций в P2:
1) [[B]] = [B];
2) B1 Í B2 Þ [B1] Í [B2];
3) [B1 Ç B2] Í [B1] Ç [B2];
4) [B1 È B2 ] Ê [B1] È [B2];
5) B Í [B1].
Упражнение
1.Описать замыкания следующих классов булевских функций:
a) {x1& x2}, }; b) {{x1 & x2, x1 Ú x2}; c) { }.
2. Привести примеры таких множеств B1 и B2, для которых в соотношениях 1) – 4) имеют место строгие включения.
ОПРЕДЕЛЕНИЕ
Множество B Í P2 называется полной системой, если
[B] = P2.
Один пример полной системы в данной главе уже рассматривался. Поскольку всякая булевская функция представляется формулой над множеством функций
B = {x1& x2, x1Ú x2, }, то [B] = P2, а значит, система B является полной.
Другим примером полной системы является все множество булевских функций P2.
Определение полноты произвольной системы функций, осуществляемое в соответствии с определением полноты, предполагает доказательство возможности выражения всякой б.ф. через функции полной системы. Такой процесс можно упростить, если воспользоваться следующей теоремой.
ТЕОРЕМА 4.4 (теорема редукции)
Пусть B1 и B2 - некоторые системы булевых функций, для которых выполнены условия:
1) [B1] = P2;
2) " f Î B1 (f Î [B2]).
Тогда B2 является полной системой, т.е. если всякая функция некоторой полной системы выражается через функции другой системы, то другая система также является полной.
Доказательство
Пусть h(x1, . . ., xn) - произвольная булевская функция. Покажем, что h Î [B2]. Из этого будет следовать, что [B2] = P2.
Из полноты системы функций B1 следует, что существует формула U(f1, . . . , fk) над B1, которая представляет функцию h.
Здесь f1, . . . , fk - все различные функции из B1, которые входят в запись формулы U.
Из свойства 2 условий теоремы следует, что каждая функция fi Î B1 представляется некоторой формулой над множеством B2. Возьмем произвольные такие формулы и обозначим их как Ui, i = 1, . . . , k.
В формуле U произведем однократную замену каждого вхождения функций f1 , . . . , fk на соответствующие им формулы
U1, . . . , Uk. В результате получим формулу W, являющуюся формулой над B2.
По теореме о замене равных справедливо соотношение
U º W. Следовательно, W представляет h. Поскольку h - это произвольная булевская функция, то B2 является полной системой.