Найдите сокращенную, все тупиковые и минимальные ДНФ булевых функций
1) fx,y,z=x⋁y→z⊕x;
2) fx,y,z=x→y⊕z;
3) f0,1,0=f1,0,0=f1,0,1;
4) (1101110100110011)
двумя способами:
а) методом Квайна;
б) с помощью карт Карно.
Каким классам Поста принадлежат эти функции?
Решение
1) Строим таблицу истинности функции
fx,y,z=x⋁y→z⊕x.
x y z x⋁y
z⊕x
fx,y,z
0 0 0 1 0 0
0 0 1 1 1 1
0 1 0 0 0 1
0 1 1 0 1 1
1 0 0 1 1 1
1 0 1 1 0 0
1 1 0 1 1 1
1 1 1 1 0 0
а) Составим таблицу склеиваний. На месте отсутствующей переменной будем ставить прочерк.
xyz*
xyz*
xyz*
x-z
xy-
-yz
x-z
xyz*
xyz*
Получили сокращенную ДНФ:
fx,y,z=xy⋁xz⋁xz⋁yz.
Строим таблицу покрытий Квайна.
001 010 011 100 110
xy
⋁ ⋁
xz
⋁ ⋁
xz
⋁
⋁
yz
⋁
⋁
Импликанты xz,xz являются ядровыми, т.е. входят во все тупиковые ДНФ. Из таблицы Квайна следует, что имеются две возможности покрыть все единицы заданной функции:
fx,y,z=xy⋁xz⋁xz
fx,y,z=xz⋁xz⋁yz.
Это будут все тупиковые и минимальные ДНФ функции.
б) Построим карту Карно.
x\yz
00 01 11 10
0 0 -63500-6985233680-69851 1 1
260985158751 1 0 0 -7620158751
Исходя из анализа таблицы истинности, находим, что рассматриваемая функция:
* сохраняет константу 0, т.к. f(0,0,0)=0;
* не сохраняет константу 1, т.к. f(1,1,1)=0;
* не монотонная, т.к., например, f(1,0,0)>f(1,0,1);
* не самодвойствення, т.к. (01111010)→(01011110)→(10100001), т.к. переворот вектора истинности функции и его инверсия не приводит к получению исходной функции;
* не линейная, т.к
. учитывая, что a⋁b=a⊕b⊕ab, имеем
fx,y,z=xy⋁xz⋁xz=xy⋁(x⊕z)=
=xy⊕x⊕y⊕xyx⊕z=
=y⊕xy⊕x⊕z⊕xyz=x⊕y⊕z⊕xy⊕yz ⊕xyz.
2) Строим таблицу истинности функции
fx,y,z=x→y⊕z.
x y z y⊕z
fx,y,z
0 0 0 0 1
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 0 0
1 0 1 1 1
1 1 0 1 1
1 1 1 0 0
а) Составим таблицу склеиваний. На месте отсутствующей переменной будем ставить прочерк.
xyz*
xy-*
x-z*
x--
xyz*
xyz*
x-z*
xy-*
-yz
-yz
xyz*
xyz*
xyz*
Получили сокращенную ДНФ:
f=x⋁yz⋁yz.
Строим таблицу покрытий Квайна.
000 001 010 011 101 110
x
⋁ ⋁ ⋁ ⋁
yz
⋁
⋁
yz
⋁
⋁
Все импликанты ядровые. Поэтому полученная ДНФ является сокращенной, тупиковой и минимальной ДНФ:
fx,y,z=x⋁yz⋁yz.
б) Построим карту Карно.
x\yz
00 01 11 10
0 22860015875-68580158751 1 238760158751 1
1 0 1 0 1
Выделенные области простых импликант дают уже полученную формулу:
fx,y,z=x⋁yz⋁yz.
Исходя из анализа таблицы истинности, находим, что рассматриваемая функция:
* не сохраняет константу 0, т.к. f(0,0,0)=1;
* не сохраняет константу 1, т.к. f(1,1,1)=0;
* не монотонная, т.к., например, f(1,1,0)>f(1,1,1);
* не самодвойственная, т.к. (11110110)→(01101111)→(10010000);
* не линейная, т.к