Gos2_02

advertisement
2-2. Теорема Поста.
Определение: Система функций {f1, f2, …, fn} из P2 называется полной, если любая булева функция
может быть записана в виде формулы через функции этой системы.
Теорема. Пусть даны две системы функций I и II. Система I - полна и любая функция из I может быть
записана в виде формулы через функции системы II. Тогда II - полна.
Определение: Замыкание множества M - это множество всех функций, представимых в виде формул
через функции множества M. (Обозначение [M])
[P2] = P2
Определение: Замкнутый класс : M = [M].
Определение 2 (полноты): M - полный, если M = [P2].
Классы функций:
1. T 0: f (0,0,...,0)  0
T 1: f (1,1,...,1)  1
3. S : f ( x1 , x 2 ,..., x n )  f ( x 1 , x 2 ,..., x n )
2.
4.
5.
M :  ,  :     f ( )  f (  )
L : f ( x1 , x 2 ,..., x n ) c 0 c1 x1 ... c n x n ; где c 0 ,c1 ,...,c n const
Лемма о несамодвойственной функции: пусть f –НСФ, тогда, подставляя вместо переменных x и ~x, из
нее можно получить const.
Док. Существует набор а1,…,an: f(а1,…,an)=f(~а1,…, ~an). G(x)=f(x^a1,…,x^an). G(1)=f(а1,…,an)=f(~а1,…,
~an)=G(0) => G(1)=G(0)=const.
Лемма о немонотонной функции: пусть f –НМФ, тогда, подставляя вместо переменных 0, 1 и x, из нее
можно получить ~x.
Док.
1). Существует пара соседних наборов  ,  :     f ( )  f (  )
Из определения: либо наборы соседние, либо они отличаются в t>1 разрядах (причем в первом наборе
они 0, а во втором - 1). Тогда между ними можно вставить последовательность из t-1 промежуточных
наборов
 1, t 1:   1 ...  t 1 
. Наборы, стоящие в цепочке рядом будут соседними. По
крайней мере для одной из пар соседних наборов будет справедливо
2). Пусть
  ( 1,..., j 1,0, j 1,..., n)
Возьмем
 ( x)  ( 1,..., j 1, x, j 1,..., n)
и
f ( i )  f ( i 1) .
  ( 1,..., j 1,1, j 1,..., n)
 (0)  f ( 1,..., j 1,0, j 1,..., n)  f ( )  f (  )  f ( 1,..., j 1,1, j 1,..., n)   (1)
  ( x)  x
Определение: Полином Жегалкина (ПЖ)
a
i1,..., i s
x i1 x i s
( i1,..., i s )
(сумма по модулю 2)
Лемма о нелинейной функции: Пусть f–НЛФ, тогда, путем подстановки констант 0,1 и функций x, ~x
можно получить xy или ~(xy)
Док. В ПЖ для f есть нелинейный член xi xj…( пусть x1 и x2 ). Тогда
f=x1 x2 P1(x3… xn)+x1 P2(x3… xn)+x2 P3(x3… xn)+ P4(x3… xn). Пусть a3… an: P1(a3…an)=1. Тогда
S(x1,x2)=f(x1,x2,a3,…,an)=x1 x2+x1 P2(a)+x2 P3(a)+P4(a)=x1 x2+b x1+c x2+d.
G(x, y)= S(x+c, y+b)+ bc+d = xy
Теор. Система ФАЛ полна if она не содержится в T0, T1, L, S, M.
Док. => очев. – о/п.
<=. Построим константы, отрицание, конъюнкцию => полная.
Пусть есть f0, f1, fl, fm, fs – не содержащиеся в соответствующих классах.
1.
Получение констант 0 и 1
Два варианта:
 f0(1,1,…,1)=1, тогда φ(x)= f0(x,x,…,x)=1, так как
φ(0)= f0(0,0,…,0)=1= φ(1).
из f1 получаем вторую константу: f1(1,1,…,1)=0
 f0(1,1,…,1)=0, тогда φ(x)= f0(x,x,…,x)=~x
По лемме о несамодвойственной функции получаем константу. С использованием ~x получаем и
вторую.
2.
3.
Получение отрицания из функции fm с помощью констант 0 и 1 (лемма о немонотонной функции).
[Для варианта 2 этот шаг можно пропустить.]
Конъюнкция. По лемме о нелинейной функции {xy или ~(xy)} содержится в [fl,0,1,~x].
Теперь имеем ~x, xy => полная система функций.
Download