Определение. Пусть M Í Р2. Замыканием М называется множество всех функций из P2 , которые можно выразить формулами над М. Замыкание М обозначается [M].
Определение. Множество функций М называется замкнутым классом, если [M]=M.
Замечание. В терминах замыкания и замкнутого класса можно дать другое определение полноты, эквивалентное исходному: М – полная система, если [M] = P2.
Пример 18.
1) P2 – замкнутый класс.
2) A = {f(x1, ..., x n)|f(1, 1, ..., 1) = 0} – незамкнутый класс.
Возьмем формулу над этим множеством. Пусть f, g1, ..., g nÎA, т. е. f(1, 1, ..., 1) = 0, g1(1, 1, ..., 1) = 0, тогда f(g1, ..., g n)Î[A]. Посмотрим, принадлежит ли функция f(g1, ..., g n) множеству А.
f(g1(1, ..., 1), g2(1, ..., 1), ..., g n(1, ..., 1) = f(0, ..., 0)), но f(0, ..., 0) не обязано быть равным 0.
Пусть, например, g(x1, x2) = x1 Å x2, , т. е. и . Построим формулу , рассмотрим функцию на наборе , т. е. формула не входит в А и А – незамкнутый класс.
Важнейшие замкнутые классы в Р2
1) Т 0 – класс функций, сохраняющих константу 0
Т0 = { f(x1, ..., x n)|f(0, ..., 0) = 0}. Покажем, что Т0 является собственным подмножеством Р2, т. е. Т0 ¹ Æ и Т0 Ì (не совпадает с Р2). Для этого достаточно привести примеры функций, входящих в Т0, и примеры функций из Р2, не входящих в Т0: x1&x2, x1Úx2, xÎТ0 и x1|x2, x1 x2, ÏТ0. Покажем далее, что [Т0] = Т0. Вложение Т0Í [Т0] очевидно, так как по определению формулы любая функция из Т0 является формулой над Т0 и, следовательно, принадлежит [Т0]. Покажем, что [Т0]ÍТ0. Для этого надо показать, что = f(f1, ..., f m)Î Т0, если все функции f, f1, f2, f3, ..., f mÎТ0. Надо заметить, что в формуле в качестве функции могут быть взяты переменные, которые мы договорились считать тождественными функциями. Тождественная функция принадлежит классу Т0, поэтому достаточно показать, что если Ф = f (f1, ..., f m)Î [Т0], то Ф(0, ..., 0). Действительно, Ф = f (f1(0, ..., 0), (0, ..., 0), ... , ) = f (0, ..., 0) = 0, так как все функции .
Таким образом .
Число функций, зависящих от n переменных и принадлежащих Т0, будет равно
2) T1 – класс функций, сохраняющих константу 1
T1 = {f(x1, ...) |f(1, 1, ...) = 1}; x1&x2, x1Úx2, xÎT1, х1Åх2, x1 x2ÏT1, следовательно, Т1 – собственное подмножество Р2
Покажем, что [T1]Í T1, обратное включение следует из определения формулы и замыкания. Так как тождественная функция входит в Т1, достаточно показать Ф = f(f1, ..., f n)ÎT1, если f, f1, ..., f nÎT1. Найдем Ф(1, ..., 1) = f( f1(1, ..., 1), ..., f n(1, ..., 1)) = f(1, ..., 1) = 1, следовательно, Ф = f(f1, ..., f n)ÎT1, отсюда следует [T1] = T1.
3) S – класс самодвойственных функций
S = {f(x1, ...)|f* = f }; x, , x1Åx2Åx3ÎS, x1&x2, x1Úx2, x1Åx2ÏS, следовательно, S – собственное подмножество Р2. |S(n)| = . Покажем, что [S]ÍS. Ф = f (f1, ... ,f n) Î [S], если f, f1, ... , f nÎS, покажем, что ФÎS. По принципу двойственности, Ф* = f*(f1*, ..., f n*) = f(f1, ... , f n) = Ф, отсюда S – замкнутый класс.
4) L – класс линейных функций
L = {f(x1, ...)|f = c0Åc1x1Å...Åc n x n}; очевидно, L¹ Æ, с другой стороны L¹ P2, так как x1&x2ÏL. Заметим, что тождественная функция принадлежит L и |L(n)| = 2n+1. Покажем, что [L]ÍL. Рассмотрим Ф = f (f1, ..., f m), где f, f1, ..., f mÎL. Тогда Ф = а0Åа1(с10Åс11х1Å Å...Åc1n x n1)Åa2(c20 Åc21x1 Åc22x2Å...Åc2n x n2)Å...Åa m(c m0Åc m1x1Å...Åc mn x nm) =
= в0Åв1х1Å...Åв n х n , следовательно ФÎL.
5) М – класс монотонных функций
Определение. Набор = (a1, ..., an) предшествует набору = (b1, ..., bn ) и обозначается , если для , например: = (0010), = (0110), тогда .
Не любые два набора находятся в отношении предшествования, например, наборы (0110) и (1010) в таком отношении не находятся. Отношение предшествования ( ) является отношением порядка на множестве наборов длины n. Множество таких наборов будет частично упорядоченным множеством по отношению к операции предшествования.
Определение. Функция f(x 1 , ..., xn) называется монотонной, если для любых двух наборов и , таких что , выполняется f( ) f( ). Функции 0, 1, x, x1&x2, x 1 Ú x2Î M, x1Åx2, x1~x2Ï M.
Для числа монотонных функций, зависящих от n переменных, существуют оценки сверху и снизу, но точное число сосчитать не удается. Покажем, что М – замкнутый класс. Рассмотрим функцию ФÎ[M], Ф = f(f1, ..., f m), где f, f1, ..., f mÎM, причем можем считать, что все они зависят от n переменных. Пусть набор = (a1, ..., an),
= (b1, ..., bn) и . Рассмотрим
Ф(a1, ..., an) = f (f1(a1, ..., an), …, f m(a1, ..., an)),
Ф(b1, ..., bn) = f (f1(b1, ..., bn), ..., f m(b1, ..., bn));
, тогда набор (f1( ), ..., f m( )) , и так как , то , то есть Ф = f (f1, ..., ) – монотонная функция.
Классы T0, T1, L, S, M пересекаются, но не совпадают, что видно из табл. 3.21, где «+» означает, что функция принадлежит данному классу и «–» – не принадлежит.
Таблица 3.21
T0 | T1 | L | S | M | |
x | + | + | + | + | + |
– | – | + | + | – | |
0 | + | – | + | – | + |
1 | – | + | + | – | + |
x1x2 | + | + | – | – | + |
Теорема Поста о полноте
Для того чтобы система функций была полной, необходимо и достаточно, чтобы она не содержалась целиком ни в одном из классов T0, T1, L, S, M.
Рассмотрим использование теоремы Поста на некоторых примерах.
Пример 19. Покажем, что система функций {f1 = x1x2, f2 = 0, f3 = 1, f4 = x1Åx2Åx3} полна в Р2. Составим табл. 3.22, которая называется критериальной.
Таблица 3.22
Т0 | Т1 | L | M | S | |
x1x2 | + | + | – | + | – |
0 | + | – | + | + | – |
1 | – | + | + | + | – |
x1Åx2Åx3 | + | + | + | – | + |
Из табл. 3.22 видно, что какой бы класс мы ни взяли, всегда есть функция из данной системы, которая в этот класс не входит. Можно сформулировать следующее правило: для того чтобы система функций была полна, необходимо и достаточно, чтобы в каждом столбце критериальной таблицы был хотя бы один «минус».
Отметим еще одно обстоятельство, касающееся приведенной системы. Какую бы функцию из этой системы мы ни удалили, система станет неполной, действительно, {f2, f3, f4}ÌL, {f1, f3, f4}ÌT1, {f1, f2, f4}ÌT0, {f1, f2, f3}ÌM.
Пример 20. Мы знаем, что система {x1|x2} полна в Р2. Какова для нее критериальная таблица? x1|x2 = = x1x2Å1 (табл. 3.23).
Таблица 3.23
Т0 | Т1 | L | M | S | |
x1|x2 | – | – | – | – | – |
Пример 21. Cоставим критериальную таблицу для другой полной системы функций из Р2: {0, 1, x1x2, x1Åx2} (табл. 3.24).
Таблица 3.24
Т0 | Т1 | L | M | S | |
0 | + | – | + | + | – |
1 | – | + | + | + | – |
x1x2 | + | + | – | + | – |
x1Åx2 | + | – | + | – | – |
Cогласно критериальной таблице, полной является и система
{1, x1x2, x1Åx2}. Константа 0 введена в эту систему для удобства, тогда мы можем записать полином Жегалкина в общем виде, где а равны 0, если члены х х ... х в полиноме отсутствуют.
Пример 22. Выясним, полна ли система . Cоставим критериальную таблицу. Очевидно, . Чтобы показать, что , достаточно найти одну функцию и . Возьмем , удовлетворяющую требуемым условиям.
Если , то f (0, ..., 0) = 1, f (1, ..., 1)=0, следовательно, , f T1. Рассмотрим функцию h = x1x2 x2x3 x1x3 = 1, набор ее значений (11101000), , но . Cледовательно, критериальная таблица имеет вид (табл. 3.25) и А – полная система функций.
Таблица 3.25
Т0 | Т1 | L | M | S | |
L T1 | – | + | + | – | – |
S\T0 | – | – | – | + | – |
Определение. Cистема функций {f1, ..., fs, ...} называется базисом в Р2, если она полна в Р2, но любая ее подсистема не будет полной. Например, система функций {x1&x2, 0, 1, x1 x2 x3} – базис.
Дата: 2019-04-23, просмотров: 292.