Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_по_ДМ_2часть.doc
Скачиваний:
84
Добавлен:
17.12.2018
Размер:
1.72 Mб
Скачать
    1. Теорема Поста о полноте

Следующая теорема является необходимым и достаточным условием полноты системы функций алгебры логики.

      1. О полноте

Система функций алгебры логики является полной тогда, и только тогда, когда она целиком не содержится ни в одном из пяти замкнутых классов: Т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 соответственно. Рассмотрим систему функций ={f0f1fSfMfL}. Понятно, что система  является подсистемой системы F, т.е.  F, и если будет доказано, что  полна, то тоже самое можно будет сказать и о системе F. Можно считать, что все функции системы ={f0f1fSfMfL} зависят от одних и тех же переменных х1,х2,…,хn. Покажем, что функции полной системы {,} могут быть выражены формулой через функции системы .

Рассмотрим 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 получим . Таким образом, любая из функций системы {,} выражается формулой через функции f0f1fMfL системы . И так как система {,} является полной, то по теореме о полных системах функций система  также полна.

Теперь разберем случай 2): т.к. f0(1,1,…,1)=0 и f0(0,0,…,0)=1, то выполнив замену всех переменных функции f0 на х, получим функцию от одной переменной (х)= f0(х,х,…,х)=  ((0)=1, (1)=0). Теперь из функций х, и fS по лемме о несамодвойственной функции получим константы 0 и 1. И далее так же, как и в первом случае из функций 0, 1, и fL получим . Тем самым, любая из функций системы {,} выражается формулой через функции f0f1fSfL системы . Следовательно,  полная система. И теорема доказана.

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

Действительно, при доказательстве первого случая в теореме использовались только функции f0f1fМfL, а второго – функции f0f1fSfL.

Следствие 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

Из таблицы 18 видно, что базисами являются следующие множества функций: {, }, {0, }, { }. Других базисов в данной системе нет.