Файл: Архаров В.И. Арифметические и логические основы цифровых вычислительных машин учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.07.2024
Просмотров: 104
Скачиваний: 1
Это выражение является СКНФ. Формула (5.12), как и (5.5), имеет практическое значение. Она позволяет строить СКНФ по таб личному заданию функции. Для этого необходимо отобрать все наборы аргументов, на которых табличная функция равна нулю, со
ставить для этих наборов дизъюнкцию вида х ^ У лг2(2V •••
а затем соединить их знаком конъюнкции.
Проиллюстрируем это правило на примерах, рассмотренных выше.
1. / (Xi, х^} = хг — х2.
На наборах (0,1) и (1,0) функция равна нулю, поэтому
x i ~ Х 2 —(я?V-4) (*1V4) (-^lV-^2) (*tV*2) (^i V^) (-^i V ^)’
2. Согласно таблице истинности (стр. 107) функция равна нулю на наборах (000) (001) (010) (101), поэтому
f(xlt х2, х3) = {хгу х 2у х 3) {хгу х 2У х3) {хгу х 2У х 3) {х^Ух2У х 3)
= (*1 У х 2\/ х 3) (хгУ х 2у х 3) {х1 У х 2У х 3) (хгу х 2у х 3).
Дизъюнктивные и конъюнктивные НФ называются совершен ными потому, что каждое сложное высказывание с точностью до конъюнктивных или дизъюнктивных членов может быть представ лено единственным способом. СДНФ и СКНФ одинаково приме нимы при преобразовании
, Т а б л и ц а 5-4 сложных высказываний.
--------------------------Остановимся еще на пре-
*х'х образовании связи Шеффера
_________________ в СДНФ и в СКНФ: / (xlt
0 |
” |
J |
х а) = |
задана |
функция |
Пусть |
|||||
0 |
|
j |
x j x 2 (х± |
несовместно с х 2). |
|
1 |
0 |
||||
1 |
1 |
о |
Составим таблицу 5-4 истин |
||
|
|
|
ности для связи |
Шеффера, а |
|
|
|
|
затем применим (5.5) и (5.12). |
Здесь имеется три набора векторов Буля, в которых связь Шеф
фера равна 1: (00) (01) |
(10). Применив (5.5), получим: |
|||
|
x j x 2= хгх2 |
У Хх - х2VХ \ Х 2; |
||
применив (5.12), |
получим: х11х2 |
= х±У х2. |
||
О п р е д е л е н и е . |
Совершенной |
конъюнктивной нормальной |
||
формой [СКНФ ] |
булевой функции называется конъюнкция тех кон- |
|||
ституент нуля, |
которые обращаются в нуль на тех же наборах |
|||
значений аргументов, что и данная функция. |
||||
Отсюда очевидно, что любая булева |
функция имеет лишь одну |
|||
СКНФ, причем |
количество ее |
членов |
(конституент нуля) равно |
112
количеству нулевых значений функции и на каждом наборе значе ний аргументов, обращающем функцию в нуль, только один из чле нов СКНФ принимает нулевое значение.
Булева функция, заданная табл. 4-1, обращается в нуль на 4 из 16 наборов значений аргументов. Ее СКНФ имеет следующий вид:
f = { x z\ j x 2\]x!V*о)(*8V*2 V* 1 V*о)(*8V*2 V*1V*о)X |
|
х (х3\Jx2\/*iV *о)- |
(5.13) |
На каждом из 4 наборов, на которых функция принимает значе ние 0, только один из членов формулы (5.13) обращается в нуль.
Сокращенная запись формулы (5.13) имеет вид:
f — f\df при /==8, 9, 11, 14.
Эта сокращенная запись СКНФ обозначает конъюнкцию (Д ) элементарных дизъюнкций (d) четвертого ранга (/ указывает номера наборов, на которых функция обращается в нуль).
СКНФ может быть получена и другим путем, для этого необхо димо взять дизъюнкцию элементарных конъюнкций максимальной длины, на которых функция обращается в нуль, и, применив к по лученному выражению правило де Моргана, получить СКНФ бу левой функции. Следуя выше изложенному правилу и используя табл. 4-1, будем иметь
f= ХЯХ2Х1Х0V Х-ЛХ2Х1Х(}V ХзХ^Х^У х3х2х1х0=
=(*sV*2 V*iV*o) {ХзМх2\/ хг\/ х0) {х3\ / X2\J хг\ / х 0) (x3\J X2\J x±\J хо)-
При таком способе нахождения СКНФ достигается взаимообразие нахождения как СДНФ, так и СКНФ булевых функций.
Для компактной записи совершенных форм возможно исполь зовать соответствующие числовые представления совершенных форм функции. Числовое представление СДНФ определяет номера всех наборов, на которых функция принимает значение 1.
Числовое представление СКНФ определяет номера всех набо ров, на которых функция принимает значение 0. Из табл. 5-2 чис ловое представление СКНФ имеет вид:
/4*1, *2 .*з)=Л(0, 1.2,5).
При минимизации булевых функций обычно используется СКНФ Поэтому, очевидно,необходимо уметь переходить от КНФ к СКНФ. Такой переход выполняется путем тождественных переобразований
КНФ с использованием законов (7, 9, 3, 1). |
|
|
|
Рассмотрим переход от КНФ к СКНФ |
на |
следующем приме |
|
ре. Выполним переход от КНФ, |
которая |
имеет следующий вид: |
|
(*1 V *2 V *з) (*о V *2 V *з) |
(*о V *1 V *2 |
V *з)- к СКНФ. |
8 З а к а з К * 2437 |
113 |
Вводим в каждую элементарную дизъюнкцию отсутствующие ар гументы. Это делается следующим образом:
(■У! V* 2 V*зИ* 0 V* 2 V*з) (*0 V* 1 V* 2 V*з) =
=(Лу V* 2 V*3 V0 ) (*oV*2 V*8 VO) (Хо У X l M Х 2 \ ] Х 3) =
=(-«1 VХ 2 VХ з VХ0■Х 0) (х0V* 2 V*3 Vх1 ■Х х) (*0 V* 1 Vх2 V*з) =
=(*sV*2V *iV -^о)(^3V *2V *iV x0)(xs\Jx2\ j xt \Jx0) { Х з У х г У х ^ х ^ Х
{хзУ х2У хгу x0) = (хзу х2У xxy x0) (хзу х2У xxy x0) X
X {x3y X 2\JXx\ l x0) (x3V x2\ l XiV*<>)• |
(5.14) |
Полученное выражение есть СКНФ.
Пример 4. Разложим нуль на конституенты. Представим 0 как
Q = x-x = xi -x1\ l х2-х2(гак как Xi-Xi = G). Применив распредели тельный закон сложения относительно умножения,
x-y\Jz = (x\Jz)-(y\Jz),
где положим х = х, у = лу, z = х 2-х2, тогда
Q = (x1\J x2-x2)-(xx\J х2-х2).
Теперь к каждому члену полученной конъюнкции применим
тот же распределительный закон, |
полагая, что хх |
= х 2 |
|
|
у = х2, |
г = лу, |
|
тогда первый член |
конъюнкции |
|
|
|
х1у х 2-х2 = (лу Vх2) (лу Vх2) . |
|
|
Аналогично преобразуется и второй член конъюнкции: |
|||
поэтому |
хх\1 х2-х2= (хх\1 х2) (xx\Jx2), |
|
|
(ЛГ! v х2) (xt V х2) (луV Х2) (лу VХ2). |
|
||
о = |
(5.15) |
Нуль можно представить как сумму не двух, а трех слагаемых, каждое из которых тождественно равно нулю:
О = лу■лу \Jх2 ■х2 У х3 ■х3.
Применив тот же распределительный закон сложения относи тельно умножения, получим:
0= ад Vх2■х2У х3х3 = (лу х2х2У х3■х3) (луу х2-х2у х3хй) =
= (ххУ х 2У х 3■х3) (луУх~Ух3х 3) ( £ V V*з ■* 7) (ххУ х 2у х 3х3) = = (Х1 УХ2 у Ха) (лу У х2 У лу) (лу Vх2у Ха) (луУ х 2У х3) X
X {хху х 2у х 3) {хгу х 2у х 3) {хху х 2у х 3) {хху х 2 Ух 3). (5.16)
114
В общем случае
0 = V XjXt ( i — 1 , 2 , . . . , п).
t=i
Тогда выражение для нуля через п переменных можно записать:
0 = ( * i V * 2 V * 8 V |
• • • х п ) ( x i V х 2 V - ^ з V • • • \ ! х п ) X |
|
||
х (*,V *2V • • ■W |
i |
У*пУ ■■• |
• • ■ У хп) X |
|
X (*iV *aV |
• •• |
V*n)(*iV*sV |
• • • Хп). |
(5.17) |
Сомножители (5.17) называются к о н с т и т у е н т а м и |
р а з |
|||
л о ж е н и я н у л я . |
|
|
|
|
§ 4. ГЕОМЕТРИЧЕСКАЯ ИНТЕРПРЕТАЦИЯ БУЛЕВЫХ ФУНКЦИЙ
При нахождении более простых форм булевых функций удобно прибегнуть к геометрической интерпретации функции.
Рассмотрим дизъюнкцию двух переменных на плоскости. От кладывая по оси ординат переменную у в виде единичного отрезка,
а на оси абсцисс х, получаем |
|
|
_ |
, |
_ _ |
||||
остальные три вершины, каж |
|
|
|
|
|
||||
дая из |
которых соответствует |
Номер |
|
|
|
|
|||
вполне определенному сочета |
X |
|
г |
f (X . у , г ) |
|||||
набора |
У |
||||||||
нию переменных |
(рис. 24, а). |
|
|
|
|
|
|||
Две вершины, принадлежащие |
0 |
0 |
0 |
0 |
0 |
||||
одному |
и |
тому |
же ребру, |
1 |
0 |
0 |
1 |
1 |
|
склеиваются |
по |
переменной, |
2 |
0 |
1 |
0 |
0 |
||
меняющейся |
вдоль |
ребра. |
3 |
0 |
1 |
1 |
0 |
||
Рассмотрим для |
примера |
4 |
1 |
0 |
0 |
1 |
|||
5 |
1 |
0 |
1 |
1 |
|||||
следующую функцию: |
6 |
1 |
1 |
0 |
1 |
||||
|
|
|
|
|
7 |
1 |
1 |
1 |
1 |
/(* . y) = xy\Jxy\J ху.
Эта функция геометрически изобразится в виде трех вершин квадрата (2, 1, 3). Найдем минимальную форму данной функции. Согласно закону для ребра 2—3 простая импликанта будет равна х, а для ребра 3—1 — у. Дизъюнкция простых импликант образует ми нимальную форму, а именно x \ J у. Отсюда очевидно, что вместо конституент, обозначающих две соседние вершины, возможно записать элементарную конъюнкцию, обозначающую ребро между этими
вершинами, то есть ребро поглощает вершины. |
|
|
||
Каждой булевой функции / (xlt х 2, . . . , |
хп) |
можно |
поставить |
|
в соответствие подмножество N f всех вершин (ах, |
а 2, . . |
. , ап) еди |
||
ничного n-мерного куба так, что |
|
|
|
|
|
f ( a x, а 2, . . . , « „ ) = !. |
|
|
|
Здесь |
а,- — координаты вершины куба; |
(ах, |
а 2, . . . , ап) — |
|
п-мерный |
вектор, определяющий точку «-мерного пространства. |
115
Пусть функция f (х, у, z) задана таблицей соответствия 5-5. Для данной функции можно поставить в соответствие подмно
жество Nf вершин трехмерного единичного куба. Отмечая точками
вершины, в которых функция имеет единичные значения, |
получают |
геометрическое представление булевой функции. |
|
Из таблицы соответствия видно, что функция равна |
единице |
на следующих наборах: |
|
1 — (001); 4 — (100); 5 — (101); 6 — (ПО); 7 — (111). |
Данная функция геометрически представляется кубом с вер шинами 1, 4, 5, 6, 7 (рис. 24, б). Подмножество вершин, на которых функция f (х , у, z) = 1, можно записать в виде
Nf(x, у, z)= V (001) (100) (101) (110) (1 1 1)= V 0 . 4 . 5 , 6, 7).
Подмножество вершин единичного «-мерного куба называется интервалом r-го ранга, если он совпадает с подмножеством N А, соответствующим некоторой элементарной конъюнкции г ранга:
A (xv хг
где A (xlt х 2, ■■• , хп) — функция алгебры логики, которой по ставлено в соответствие подмножество N А, совпадающее с подмно жеством вершин единичного «-мерного куба (а1( а 2, . . . , а„). Каждая вершина единичного «-мерного куба является интервалом «-го ранга, поскольку каждой вершине куба (а1; а 2, . . . , ап) можно поставить в соответствие элементарную конъюнкцию
А (х., х0, . . . , хп |
° 1 |
° 2 |
■ х . - х . 2 . . . X. |
||
|
Ч |
‘2 |
а множество всех' вершин единичного куба является интервалом нулевого ранга.
Проверим это для трехмерного куба. Множество его вершин суть:
М - = [(000), (001), (010), (011), (100), (101), (ПО), (111)].
116
Каждой вершине соответствуют элементарные конъюнкции
A x = xyz, A 2 — xyz, |
A s = xyz, |
A t = xyz, A 5 = xyz, |
A 6 = xyz, |
Ai = xyz, |
A &—xyz. |
Множеству M можно поставить в соответствие дизъюнктивную нормальную форму:
В^ А ^ А ^ А ъ У А ь Ч А ь У А ь Ч А ч Ч А ^
—xyz V xyz V xyz Ч xyz V xyz 4 xyz V xyz 4 xyz =
Xy {z 4z )4 ~x y{ z4 z) 4xy {z4z )4xy{z 4z ) = x y 4 x y 4 x y 4 x y =
|
|
|
|
= х(ЧЧу)\1х{уЧу) = х Ч х = 1. |
|
|
||||
Следовательно, |
множеству M можно поставить в соответствие 1, |
|||||||||
т. е . А (х, у, z) |
= |
1 — элементарная конъюнкция нулевого ранга. |
||||||||
Определим ранги ребер на единичном кубе (рис. 24, б). Возьмем |
||||||||||
ребра |
= |
(0 01) |
(1 01); |
М2 = |
(1 0 0) (1 0 1) и грань N s = (1 0 0) |
|||||
(1 0 1) (1 |
10) |
(1 |
1 |
1). Ребру jV2 соответствует ДНФ: |
|
|||||
|
|
|
|
А х (х, у, z) = xyzЧ xyz —yz, |
|
|
||||
а, следовательно, ребру |
соответствует конъюнкция 2-го ранга. |
|||||||||
Подмножество N А совпадает |
с |
интервалом N v |
поэтому |
ребро |
||||||
— интервал 2-го ранга. |
|
|
|
|
||||||
Ребру |
N 2 соответствует ДНФ: |
|
|
|
||||||
|
|
|
|
А 2(х , |
у, z) = x yz 4 xy z = xy. |
|
|
|||
Подмножество |
N А |
совпадает |
с интервалом N2, следовательно, |
|||||||
ребро N 2 — интервал 2-го ранга, |
грани N 3 соответствует дизъюнк |
|||||||||
тивная нормальная форма: |
|
|
|
|
||||||
|
|
|
А 3(х, |
у, |
z) = x yz 4 xy z V xyzV xyz = |
|
|
|||
|
= xy (z V2) |
xy (z4z) = xy V xy = x (у ч y) = *• |
|
|||||||
Элементарная конъюнкция 1-го ранга, соответствующая под |
||||||||||
множеству N a , |
совпадает с интервалом N3. Следовательно, |
грань |
||||||||
N 3 — интервал |
1-го ранга. |
|
|
|
|
|||||
Если задана некоторая совокупность интервалов, то говорят, |
||||||||||
что интервалы этой совокупности покрывают множество F, если |
||||||||||
каждая точка множества F содержится хотя бы в одном из интер |
||||||||||
валов данной совокупности. |
|
|
|
|
||||||
Нетрудно видеть, что СДНФ функции |
|
|
||||||||
|
f(xlt х2, Ад, |
. . . , |
хп) = АЧЧАъЧ ■• • |
У Л п |
|
|||||
связано с покрытием подмножества |
интервалами |
N Аг При |
этом |
каждый интервал целиком содержится в Nj, что можно записать:
N Aid N f ( i = l , 2 . . . т).
117