Полные системы функций. Теорема Поста о полной системе функций
Формулировка теоремы
F называется полной системой функций тогда и только тогда, когда она содержит функцию, несохраняющую 1, функцию, несохраняющую 0, немонотонную, несамодвойственную и нелинейную функции.
Доказательство
I. Докажем прямую теорему.
Предположим, что F не содержит функцию, обладающую одним из перечисленных выше свойств, но тогда мы не сможем через функции, входящие в F выразить функции, обладающие этим свойством, и следовательно F не будет полной системой функций, что противоречит условию, следовательно F должна содержать все вышеперечисленные функции.
II. Докажем обратную теорему.
У нас есть 5 функций: несохраняющая 1 - , несохраняющая 0 - , несамодвойственная - , немонотонная - , нелинейная - .
Возьмем функцию, несохраняющую 0 - . (0) = 1. (1) может принимать два значения:
а) (1) = 1, тогда (x, x, x, ..., x) = .
б) (1) = 0, тогда (x, x, x, ..., x) = ¬x.
Возьмем функцию, несохраняющую 1 - . (1) = 0. (0) может принимать два значения:
а) (0) = 0, тогда (x, x, x, ..., x) = .
б) (0) = 1, тогда (x, x, x, ..., x) = ¬x.
Возможны 4 варианта:
1) Мы получили функцию НЕ. Используем несамодвойственную функцию .
По определению найдется такой вектор , что () = (¬). = ().
Возьмем (), где = x, при = 1 и = ¬x, при = 0.
Нетрудно заметить, что (0) = (1) => = const. Таким образом мы получили одну из констант.
2)Мы получили НЕ и . ¬ = .
3)Мы получили НЕ и . ¬ = .
4)Мы получили и .
Рассмотрим немонотонную функцию . Существуют такие , что = 1, = 0, зафиксируем все , тогда = ¬x.
В итоге мы имеем три функции: НЕ, , .
Используем нелинейную функцию . Среди нелинейных членов , выберем тот, в котором минимальное количество элементов, все элементы, кроме двух, в этом члене, сделаем равными 1, оставшиеся 2 назавем и , а все элементы, не входящие в данный член, сделаем равными 0. Тогда = ^ ⊕ [] ⊕ [] ⊕ [], где в квадратных скобках указаны члены, которые могут и не присутствовать.
Рассмотрим несколько вариантов:
1) Присутствует член . Возьмем отрицание от и член уберется.
2) Присутствуют 3 члена, без : = ^ ⊕ ⊕ . Составив таблицу истинности для этой функции, нетрудно заметить, что она эквивалентна функции ИЛИ.
3) Присутствуют 2 члена, без . Посторив две таблицы истинности, для двух различных вариантов, видим, что в обоих случаях функция истинна только в одной точке => СДНФ будет состоять только из одного члена, а если это так, то не составляет труда выразить И, через НЕ и .
4) Присутствует 1 член. Выразим И, через НЕ и .
Получается, что у нас есть функция НЕ, а также либо функция И, либо функция ИЛИ, но НЕ образует базис и с той и с другой функциями. Из того, что через функции F можно выразить базис, следует, что F - полная система функций.