Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5.Специальные классы булевских функций.doc
Скачиваний:
7
Добавлен:
23.11.2019
Размер:
542.72 Кб
Скачать

4.14. Критерий функциональной полноты

ТЕОРЕМА 4.9

Класс BP2 является полной системой тогда и только тогда, когда он целиком не содержится ни в одном из классов Т0, Т1, S, L, M.

Доказательство

Необходимость. Пусть [B] = P2. Тогда B целиком не содержится ни в одном из классов Т0, Т1, S, L, M, поскольку в противном случае всякий из перечисленных классов, содержащий B, являлся бы полной системой, что неверно.

Достаточность. Пусть B целиком не содержится ни в одном из классов Т0, Т1, S, L, M. Выделим из B пять функций f0, f1, fS, fL, fM, которые не содержатся в перечисленных классах Т0, Т1, S, L, M соответственно. При этом не исключается совпадение некоторых из выделенных функций.

Покажем, что через выделенные функции системы B выражаются функции полной системы x1& x2 и .

4.14.1. Построение функций-констант

Рассмотрим функцию f0. По определению f0(0,..., 0) = 1.

Если f0(1,..., 1) = 1, то h(x) = f0(x,..., x) = 1, т.е. это функция, получаемая из f0 отождествлением всех переменных, является константой 1. В противном случае f0(1, . . . , 1) = 0. Поэтому f0(x,...,x) = . Тогда по лемме о несамодвойственной функции из f0 с помощью функции отрицания и тождественной функции можно получить одну из констант.

Вторая константа получается из первой константы с помощью отрицания (т.е. является отрицанием первой константы).

Значит, из f0 можно получить либо одну из констант, либо обе константы и отрицание.

Рассмотрим функцию f1. По определению этой функции f1(1,...,1) = 0. Если f1(0, . . . , 0) = 0, то f1(x, . . . , x) = 0, т.е. это функция-константа 0.

В противном случае f1(0, . . . ,0) = 1 и f1(x, . . . , x) = . Тогда из леммы о несамодвойственной функции следует, что из f1 можно получить одну из констант. Вторая константа получается из первой константы с помощью функции .

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

4.14.2. Построение отрицания

Рассмотрим функцию fM. По лемме о немонотонной функции через fM с помощью функций-констант и тождественной функции x можно выразить отрицание .

4.14.3. Построение конъюнкции

Рассмотрим функцию fL. По лемме о нелинейной функции из fL с помощью уже полученных функций 0, 1, и обозначений переменных можно выразить конъюнкцию x1&x2.

Следовательно, через функции системы B можно выразить функции полной системы . Тогда на основании теоремы редукции можно утверждать, что B  это полная система.

Доказательство окончено.

Упражнение.

Используя доказательство критерия полноты, выразить функции x1&x2 и через функции полной системы .

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

При этом если система B является конечной, то такая проверка может быть проведена за конечное время.

Для проверки полноты произвольной конечной системы B можно построить таблицу со строками, соответствующими функциям системы B, и пятью столбцами, соответствующими пяти классам: Т0, Т1, S, L и M.

Таблица заполняется символами "+" и "". Некоторый элемент таблицы это "+", если функция, соответствующая строке, содержится в классе функций, соответствующем столбцу. В противном случае элемент таблицы равен "".

Если в каждом столбце полученной таблицы имеется хотя бы один минус, то B  это полная система.

Если в таблице имеется столбец, содержащий только символы "+", то B  это неполная система.

Например. Для системы B = {x1 x2, x1 + x2} таблица имеет вид:

Т0

Т1

S

L

M

x1 x2

+

x1 + x2

+

+

Следовательно, множество функций {x1 x2, x1 + x2}  это полная система.

Классы Т0, Т1, S, L и M объединяет одно общее свойство, которое состоит в том, что всякий из них является "почти" полным.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]