Замкнутые классы булевых функций

Выше показано, что любая функция может быть выражена в виде ДНФ, те. формулой, использующей функциональные знаки &,v,-> и

символы переменных Еще один интересный пример дает система функций

Замкнутые классы булевых функций - student2.ru (1)

Выше показано, что Замкнутые классы булевых функций - student2.ru . Используя это равенство и закон

де Моргана (свойство 11), выразим дизъюнкцию Замкнутые классы булевых функций - student2.ru через функции

системы (1).

i

Замкнутые классы булевых функций - student2.ru

Поэтому в любой ДНФ можно выразить дизъюнкцию и отрицание через функции системы (1). Примеры:

1) Замкнутые классы булевых функций - student2.ru = [заменяем знак отрицания] = Замкнутые классы булевых функций - student2.ru -[заменяем знак дизъюнкции] = Замкнутые классы булевых функций - student2.ru = [раскрываем скобки] = Замкнутые классы булевых функций - student2.ru

2) Замкнутые классы булевых функций - student2.ru = [заменяем знак дизъюнкции] =

Замкнутые классы булевых функций - student2.ru

3) Замкнутые классы булевых функций - student2.ru

Замкнутые классы булевых функций - student2.ru То же преобразование можно выполнить проще, заменяя сначала знак дизъюнкции

Замкнутые классы булевых функций - student2.ru . Первое слагаемое равно 0, так как

содержит произведение Замкнутые классы булевых функций - student2.ru , и его можно из формулы удалить

Оставшуюся часть преобразуем, заменяя знак отрицания

Замкнутые классы булевых функций - student2.ru

Как видно из рассмотренных примеров, если в формуле после произведенных замен раскрыть скобки и выполнить умножения и

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

Полученная формула, порожденная логическими константами 0 и

1 и функциями Замкнутые классы булевых функций - student2.ru называется многочленом Жегалкина

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

В самом деле, пусть два многочлена Замкнутые классы булевых функций - student2.ru и

Замкнутые классы булевых функций - student2.ru равны как функции, т е на одинаковых наборах принимают одинаковые значения Тогда для какого-нибудь существенного переменного (пусть это Замкнутые классы булевых функций - student2.ru ), вынеся Замкнутые классы булевых функций - student2.ru за скобки из

всех содержащих его членов, Р и Q можно представить в виде

Замкнутые классы булевых функций - student2.ru

где Замкнутые классы булевых функций - student2.ru - многочлены, зависящие от переменных Замкнутые классы булевых функций - student2.ru

Достаточно показать, что Замкнутые классы булевых функций - student2.ru как многочлены Легко

проверить, что для п = 1 утверждение о единственности многочлена верно: все функции одной переменной - в табл 5. Тем самым выполнено базовое условие для применения метода математической индукции по числу переменных п . Выполним индукционный шаг: предположим, что

утверждение справедливо для функций (л —1) переменных и докажем его для п . Поскольку Р и Q тождественно равны, то при Замкнутые классы булевых функций - student2.ru они

также равны Но при этом Замкнутые классы булевых функций - student2.ru )

Значит, Замкнутые классы булевых функций - student2.ru совпадают как многочлены, по предположению

индукции, и, прибавив Замкнутые классы булевых функций - student2.ru к обеим частям (*) и, соответственно, Замкнутые классы булевых функций - student2.ru к (**), получим

Замкнутые классы булевых функций - student2.ru

Левые части этих равенств равны, следовательно, равны и правые,

в том числе, при X = \ , откуда Замкнутые классы булевых функций - student2.ru равны как функции. Тогда, по

предположению индукции, они совпадают и как многочлены, что завершает доказательство

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

Замыкание системы булевых функцийD - класс всех суперпозиций функций системы D .

Примеры:1) Если система D - множество из двух функций: конъюнкции и дизъюнкции, то ее замыкание - всевозможные ДНФ такие, что входящие в них элементарные конъюнкции не содержат

*»••

отрицаний переменных (например, Замкнутые классы булевых функций - student2.ru ). Любую

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

Замкнутые классы булевых функций - student2.ru

2) Если система D состоит из одной функции Замкнутые классы булевых функций - student2.ru то ее

замыкание - всевозможные суммы различных переменных.

Замкнутый класс булевых функций- множество функций К ,

любая суперпозиция которых принадлежит К , т.е. замкнутый класс представляет собой множество булевых функций, замкнутое относительно операции суперпозиции.1,

Примеры.1) Замыкание любой системы функций - замкнутый класс.

2) 4 функции одной переменной - замкнутый класс.

3) 2 функции Замкнутые классы булевых функций - student2.ru образуют замкнутый класс.

4) Множество сумм по модулю 2 нечетного числа переменных является замкнутым классом, поскольку подстановка в такую функцию вместо переменной функции этого класса увеличивает число вхождений переменных в формулу на четное число; при этом некоторые слагаемые

могут взаимно сократиться ввиду эквивалентности Замкнутые классы булевых функций - student2.ru , и число

переменных остается нечетным, поскольку при сокращениях в формуле переменные устраняются парами.

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

трех переменных Замкнутые классы булевых функций - student2.ru

Упражнение.Проверить, является ли замкнутым класс,

содержащий все дизъюнкции переменных, состоящие из нечетного числа членов (т.е Замкнутые классы булевых функций - student2.ru и т.д.).

Функционально полная система функций - система, замыкание которой составляет Замкнутые классы булевых функций - student2.ru - множество всех логических функций.

Как показано выше, системы функций Замкнутые классы булевых функций - student2.ru и

Замкнутые классы булевых функций - student2.ru полны.

Можно обобщить построения, примененные при рассмотрении полноты систем многочленов Жегалкина, и сформулировать следующее утверждение.

Пусть система Замкнутые классы булевых функций - student2.ru - полная и пусть каждая из функций Замкнутые классы булевых функций - student2.ru

может быть выражена суперпозицией через функции Замкнутые классы булевых функций - student2.ru

Тогда система Замкнутые классы булевых функций - student2.ru тоже полная, потому что в формуле,

составленной из функциональных знаков системы Замкнутые классы булевых функций - student2.ru , можно

заменить каждое вхождение символа функции Замкнутые классы булевых функций - student2.ru на ее выражение через

символы функций Замкнутые классы булевых функций - student2.ru

Вот несколько примеров.

(1) Система Замкнутые классы булевых функций - student2.ru полна, так как Замкнутые классы булевых функций - student2.ru (закон деМоргана).

(2) Аналогично показывается полнота системы Замкнутые классы булевых функций - student2.ru

(3) Система Замкнутые классы булевых функций - student2.ru полна, поскольку Замкнутые классы булевых функций - student2.ru

Наши рекомендации