
- •Часть II
- •Алгебра двузначной логики
- •Функции алгебры логики
- •Способы задания функций алгебры логики
- •Эквивалентность функций
- •Реализация функций формулами
- •Эквивалентность формул и тождества
- •Упрощение формул
- •Двойственные функции и принцип двойственности
- •Применение принципа двойственности
- •Аналитическая запись функций алгебры логики
- •Аналитическое построение сднф и скнф
- •Теорема о тройке связок
- •Полные системы функций и полиномы Жегалкина
- •Замыкание систем функций алгебры логики
- •Важнейшие замкнутые классы
- •Теорема Поста о полноте
- •Минимизация булевых функций
- •Основные понятия
- •Метод неопределенных коэффициентов
- •Тупиковые днф и алгоритм наискорейшего спуска
- •Геометрическое представление функций алгебры логики
- •Аналитическое построение сокращенной днф
- •Локальные алгоритмы
- •Алгоритм Куайна
- •Диаграммы Вейча–Карно
- •Построение днф по карте Карно
- •Задачи и упражнения
- •Список литературы
- •Часть II
- •400131, Волгоград, просп. Им. В.И.Ленина, 28
- •400131, Волгоград, ул. Советская, 35
-
Теорема Поста о полноте
Следующая теорема является необходимым и достаточным условием полноты системы функций алгебры логики.
-
О полноте
Система функций алгебры логики является полной тогда, и только тогда, когда она целиком не содержится ни в одном из пяти замкнутых классов: Т0, Т1, S, M и L. Иными словами среди функций этой системы обязательно имеются функции, не сохраняющие ноль и единицу, а также несамодвойственная, немонотонная и нелинейная функции.
Доказательство:
1) Необходимость: итак, система функций F полна, покажем, что она не содержится целиком ни в одном из пяти замкнутых классов. Предположим обратное: F полная система и содержится в каком-нибудь из замкнутых классов. Обозначим этот класс Х. Таким образом, по предположению F Х. Тогда по свойствам замыканий [F] [Х]. Но Х – замкнутый класс, поэтому [Х]=Х. А F – полная система и [F]=Р2. Тем самым, Р2 Х, что невозможно. Полученное противоречие опровергает сделанное предположение, поэтому F не содержится целиком ни в одном из пяти замкнутых классов.
2) Достаточность: итак, система функций F не содержится целиком ни в одном из пяти замкнутых классов, покажем, что она является функционально полной системой функций. Поскольку F не содержится целиком ни в одном из классов Т0, Т1, S, M и L, то среди функций этой системы обязательно имеются функции, не сохраняющие ноль и единицу, а также несамодвойственная, немонотонная и нелинейная функции. Обозначим эти функции f0, f1, fS, fM и fL соответственно. Рассмотрим систему функций F ={f0, f1, fS, fM, fL}. Понятно, что система F является подсистемой системы F, т.е. F F, и если будет доказано, что F полна, то тоже самое можно будет сказать и о системе F. Можно считать, что все функции системы F ={f0, f1, fS, fM, fL} зависят от одних и тех же переменных х1,х2,…,хn. Покажем, что функции полной системы {,} могут быть выражены формулой через функции системы F .
Рассмотрим f0Т0, для этой функции возможны два случая: 1) f0(1,1,…,1)=1 и 2) f0(1,1,…,1)=0 (заметим также, что f0(0,0,…,0)=1).
Разберем случай 1):
т.к. f0(1,1,…,1)=1 и
f0(0,0,…,0)=1, то
выполнив замену всех переменных этой
функции на х, получим функцию от
одной переменной (х)=
f0(х,х,…,х)=1
при любых х, т.е. получили константу
1. Аналогичным способом с помощью функции
f1 можно получить
константу 0. Теперь с помощью немонотонной
функции fM
и констант 0 и 1 по лемме о немонотонной
функции можно получить функцию
.
И далее по лемме о нелинейной функции
с помощью констант 0, 1 и функций
и fL
получим . Таким
образом, любая из функций системы {,}
выражается формулой через функции
f0, f1, fM, fL
системы F .
И так как система {,}
является полной, то по теореме о полных
системах функций система F
также полна.
Теперь разберем случай
2): т.к. f0(1,1,…,1)=0
и f0(0,0,…,0)=1, то
выполнив замену всех переменных функции
f0 на х,
получим функцию от одной переменной
(х)=
f0(х,х,…,х)=
((0)=1, (1)=0).
Теперь из функций х,
и fS
по лемме о несамодвойственной функции
получим константы 0 и 1. И далее так же,
как и в первом случае из функций 0, 1,
и fL
получим . Тем самым,
любая из функций системы {,}
выражается формулой через функции
f0, f1, fS, fL
системы F .
Следовательно, F
полная система. И теорема доказана.
Следствие 1: из всякой полной в Р2 системы функций можно выделить полную подсистему, содержащую не более четырех функций.
Действительно, при доказательстве первого случая в теореме использовались только функции f0, f1, fМ, fL, а второго – функции f0, f1, fS, fL.
Следствие 2: всякий замкнутый класс функций алгебры логики, не совпадающий с множеством всех функций алгебры логики, содержится по крайней мере в одном из классов Т0, Т1, S, M или L.
В этом смысле классы Т0, Т1, S, M и L являются максимальными или предполными, поскольку добавление к любому из них любой истинностной функции, не принадлежащей классу, приводит к полной системе функций.
Следствие 3: в алгебре логики существует только пять предполных классов: Т0, Т1, S, M и L.
Полная система функций алгебры логики называется базисом в Р2, если никакая её собственная подсистема не является полной. Иными словами базис – это минимальная по числу функций полная система. Важно, что любая из функций алгебры логики записывается формулой через функции базиса.
Используя теорему о полноте, несложно установить, является ли полной заданная система функций и образует ли она базис? Рассмотрим решение этого вопроса на примере.
Пусть имеется система функций: {0, 1, }. Очевидно, что эта система является функционально полной, поскольку полна её собственная подсистема {, }. Понятно также, что исходная система функций не является базисом, т.к. из неё можно удалить функции 0, 1 и и оставшиеся функции все ещё составляют полную систему. Выясним теперь, имеются ли в заданной системе другие полные подсистемы, образующие базис. Для этого составим таблицу принадлежности функций {0, 1, } пяти замкнутым классам.
|
Т0 |
Т1 |
S |
M |
L |
0 |
+ |
– |
– |
+ |
+ |
1 |
– |
+ |
– |
+ |
+ |
|
– |
+ |
– |
– |
– |
|
+ |
– |
– |
– |
+ |
|
– |
– |
+ |
– |
+ |
Таблица 18 |
|