2.3.2. Основные замкнутые классы

А). Обозначим через К0 множество булевых функций F(X1, X2, …, Xn), сохраняющих константу 0, т. е. таких, что F(0, 0, … , 0) = 0.

Такими функциями являются, например, сама константа 0, конъюнкция Х1Х2, дизъюнкция , сумма по модулю два и др..

Не принадлежат классу К0 функции 1, , , и т. д.

Предложение. Класс функций К0 является замкнутым.

Доказательство. Действительно, пусть функция -- является композицией функций F0, F1, … , Fs. Тогда , что и требовалось доказать.

Б). Пусть К1 – класс функций F(X1, X2, …, Xn), сохраняющих константу 1, т. е. таких, что F(1, 1, …, 1) = 1.

Например, константу 1 сохраняют функции 1, Х1Х2, , Х, и другие. Не сохраняют константу 1 функции , и т. д..

Предложение. Класс функций К1 является замкнутым.

Доказательство такое же, как и для класса К0.

В). Пусть KS – класс Самодвойственных функций F(X1, X2, …, Xn), т. е. таких, что .

Примеры.

Очевидно, функции и являются самодвойственными. Рассмотрим также . Тогда

-- самодвойственная.

В общем случае, самодвойственность функции легко проверять по таблице истинности: если столбец значений, после замены нулей на единицы, единиц на нули и переворачивания, не меняется, то функция – самодвойственная (см. пример в 3).

Предложение. Класс KS является замкнутым.

Доказательство. Пусть функция является композицией самодвойственных функций F0, F1, …, FS. Применяя принцип двойствен-ности, находим

,

Что и требовалось доказать.

Г). Многочлены Жегалкина первой степени, т. е. функции вида , где , называются Линейными функциями. В действительности, линейная функция представляет собой сумму нескольких различных переменных и, возможно, константы

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

Предложение. Класс KL – линейных функций является замкнутым.

Д). Введём на множестве (Z2)n следующее отношение частичного порядка (свойства рефлексивности, антисимметричности и транзитивности легко проверяются). Если и -- два упорядоченных бинарных набора, то положим , если . Если и , то ( как это и принято для отношения частичного порядка) будем писать: <.

Например, (1,0,1,0) < (1,0,1,1); (0,0,1,0) < (1,0,1,0); (1,0,1,0) ù< (1,1,0,1).

Определение. Булева функция F(X1, X2, …, Xn) называется монотонной, если для любых бинарных наборов и таких, что < выполняется .

Монотонными являются, например функции 0, 1, Xy, . В общем случае, монотонность, функции легко проверить по диаграмме Хассе данного отношения, которая представляет собой N-мерный куб. В вершинах куба запишем соответствующие значения функции. Если найдётся хотя бы одно ребро, в верхней вершине которого записан 0 а в нижней 1, то функция – не монотонная; в противном случае, если, поднимаясь по рёбрам, значение функции не уменьшается, то она – монотонная. Ниже приведены примеры немонотонной функции F(X, Y) (ребро, на котором не выполняется условие монотонности, выделено) и монотонной функции G(X, Y, Z).


X

Y

F(X, y)

0

0

0

0

1

1

1

0

0

1

1

1


X

Y

Z

G(X,Y,Z)

0

0

0

0

0

0

1

1

0

1

0

0

0

1

1

1

1

0

0

0

1

0

1

1

1

1

0

1

1

1

1

1

Предложение. Класс KM – монотонных функций является замкнутым.

Доказательство. Пусть функция F(…) = F0(F1(…), F2(…), …, FS(…)) является композицией монотонных функций. Если увеличить (в смысле введённого отношения частичного порядка) аргументы функции f(…), то увеличатся аргументы функций F1(…), F2(…), …, FS(…). Значения этих функций в силу их монотонности также увеличатся или не изменятся. Эти значения служат аргументами внешней функции F0(…), которая, будучи монотонной, также не уменьшится. Таким образом, F(…) обладает свойством монотонности, что и требовалось доказать.

подпись: k0 k1 ks km kl
0 + + +
1 + + +
 
 + +

Замечание. Классы K0, K1, KS, KM и KL не являются полными (для каждого класса можно указать булеву функцию, которая ему не принадлежит). Все перечисленные пять замкнутых классов различны. Это видно, например, из следующей таблицы, в которой знак “ + “ означает, что соответствующая функция принадлежит данному классу (отсутствие знака – не принадлежит). Если бы какие-то два класса совпадали, то конечно расстановки знаков в соответствующих данным функциям строчках также совпадали бы.

© 2011-2024 Контрольные работы по математике и другим предметам!