discr_math
.pdf40
Сначала сгруппируем «слагаемые». В первой паре выражений выне-
сем за скобки конъюнкцию xy , а в последней паре — xy :
f xy(z z) xyz xy(z z) xy 1 xyz xy 1 xy xyz xy
xy xy xy z y(x x) xyz y xy z (y x)(y y)(y z)
(y x) 1 (y z) y xz.
Пример 3.27. Упростить СДНФ функции
f x y z x y z xyz xyz.
f x y z x y z xyz xyz x y(z z) (y y)xz x y xz .
Упрощение переключательных схем
Предположим, что нам задана некоторая электрическая схема с пе-
реключателями. Каждая такая схема может быть представлена в ви-
де некоторой логической формулы. Два простейших случая после-
довательного и параллельного расположения переключателей реали-
зуются формулами конъюнкции и дизъюнкции. Схеме с последова-
тельным расположением переключателей (рис. 3.2) соответствует формула x y (когда включены переключатели x и y , в цепи AB
течет ток).
A B x y
Рис. 3.2
41
Схеме с параллельным расположением переключателей (рис. 3.3)
соответствует формула x y (в цепи AB течет ток, когда включен хотя бы один из переключателей x или y ).
x
A |
|
|
|
B |
|
|
y
Рис. 3.3
Отметим, что на рисунке (рис. 3.4) переключатели x , y могут изо-
бражаться в упрощенном виде.
x
A |
|
|
|
B |
|
|
y
Рис. 3.4
В более сложных схемах часть переключателей может дуб-
лировать друг друга, а некоторые переключатели могут быть уста-
новлены таким образом, что когда включен переключатель x, то
переключатель x выключен, и наоборот. Устанавливая соответствие между переключательной схемой и ее логической формулой, мы можем, анализируя формулу, переходить с помощью эквивалентных преобразований к формуле, содержащей меньшее число элементов, а
затем построить схему, соответствующую этой более простой фор-
муле.
42
Пример 3.28. Составить логическую формулу для схемы, представ-
ленной на рис. 3.5, и упростить данную схему.
y z
A |
x |
|
y |
|
z |
|
B |
|
|
|
x y z
Рис. 3.5
Переключательной схеме соответствует формула yz xyz x yz,
которая допускает следующее упрощение:
yz xyz x yz yz (x x) y z yz y z . |
(3.17) |
В результате данная схема может быть реализована более простой конструкцией (рис. 3.6):
A |
|
|
|
y |
|
|
z |
|
|
|
B |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
z |
|
|
||||
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
y |
|
|
|
|
||||
|
|
|
|
|
|
|
||||||
|
|
|
|
|
Рис. 3.6
Переключательные схемы важны еще и потому, что они до-
пускают различные интерпретации.
Рассмотрим схему на рис. 3.5 как упрощенную графическую модель некоторой автоматической сборочной линии, где каждый из элементов x, y , … соответствует работающему станку, а элементы
x, y , … отвечают таким же станкам, которые в данный момент на-
43
ходятся на профилактическом обслуживании (при этом, если вклю-
чают станок x, то профилактические работы проводят со станком x). Дублирование станков, очевидно, повышает надежность работы автоматической линии. Тогда результат (3.17) показывает, что без-
отказная работа автоматическй линии в целом в большей степени зависит от надежности работы станков y и z и в меньшей степе-
ни — от надежности работы станка x.
Пример 3.29. Рассмотрим одну из реализаций логической функции
— исследование содержимого так называемого «черного ящика».
Этот объект представляет собой закрытое (запаянное или запрессо-
ванное) устройство, внутренняя структура которого недоступна. Эту структуру необходимо исследовать, анализируя следующую проце-
дуру: на несколько «входов» (контактов) черного ящика подают им-
пульсный сигнал и анализируют сигнал на «выходах» устройства.
Рассмотрим один из простых «черных ящиков», имеющий три кон-
такта на «входе» ( x1 , x2 , x3 ) и один контакт на «выходе» –
f (x1,x2 ,x3 ) (рис. 3.7). Если, например, на «входы» x1 , x2 подается
импульсный сигнал, а на контакт x3 сигнал не подается, то такой ситуации соответствует последовательность (1,1,0) значений пере-
менных. Если при этом имеется сигнал на «выходе» устройства, то мы получаем соответствие (1,1,0) 1 f (1,1,0), а когда импульс на
«выходе» отсутствует, полагают, что f (1,1,0) 0.
44
x1
x2 |
f (x1,x2 ,x3 ) |
x3
Рис. 3.7
Теперь предположим, что результаты тестирования представлены таблицей сигналов на «входе» и «выходе» устройства (табл.3.22).
x1 |
x2 |
x3 |
f (x1,x2 ,x3) |
|
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
1 |
|
0 |
1 |
0 |
0 |
|
0 |
1 |
1 |
0 |
|
1 |
0 |
0 |
1 |
|
1 |
0 |
1 |
1 |
|
1 |
1 |
0 |
0 |
|
1 |
1 |
1 |
0 |
Табл. 3.22 |
|
|
|
|
Для «восстановления» структуры «черного ящика» запишем СДНФ
функции f (x1,x2 ,x3 ): |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
f (x1, x2 ,x3) |
x |
1 |
x |
2 x3 x1 |
x |
2 |
x |
3 |
x1 |
x |
2 x3 . |
(3.18) |
|||||||||||||||||||
Теперь упростим выражение (3.18): |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
f (x1,x2 ,x3) |
x |
1 |
x |
2 x3 x1 |
x |
2 |
x |
3 x1 |
x |
2 x3 |
x |
1 |
x |
2 x3 x1 |
x |
2 ( |
x |
3 x3 ) |
||||||||||||||||
|
x1 |
x |
2 x3 x1 |
x2 1 |
x1 |
x2 x3 x1 |
x |
2 |
|
x2 x3 x1 |
x2 . |
(3.19) |
|
|
|
|
|
|
45 |
Возможная переключательная схема «черного ящика» приведена на |
||||||
рис. 3.8. |
|
|
|
|
|
|
|
|
|
|
x3 |
|
|
|
|
x2 |
|
|
|
|
|
|
|
|
x1 |
|
|
|
|
|
Рис. 3.8 |
|
|
|
Геометрический метод минимизации булевых функций |
||||||
Отложим значения 0 или 1 переменных x, y, z логической |
||||||
функции f(x,y,z) на осях прямоугольной декартовых координат [7]. |
||||||
Выделим те места, где функция истинна (f=1). Например, |
функция |
|||||
z |
A |
z |
D |
z |
|
z |
A |
|
C |
|
C |
||
B |
B |
|
G |
B |
B |
D |
|
|
|
A |
|
|
|
y |
|
E |
y |
|
y |
|
|
y |
|
||||
xC |
xC |
F |
|
|
x |
A |
|
x |
|
||||
|
|
|
||||
Рис. 3.9 |
Рис. 3.10 |
|
Рис. 3.11 |
Рис. 3.12 |
||
в примере 3.29 |
в обозначениях x x1, y x2, |
z x3 изображается |
||||
тремя точками A, B, C |
(рис. 3.9). На рис. 3.10 изображена функция |
|||||
примера 3.25, на рис.3.11 и 3.12 |
— примеры 3.22 и 3.21. Каждая вы- |
|||||
деленная точка на кубе соответствует произведению (конъюнкции) |
46
трех переменных. В тех точках, где координата переменной u равна
1, в произведение входит переменная u, там, где координата u равна
0, в произведение входит u . На рис. 3.9 точка A соответствует
x y z, B x y z, C x y z . Упрощение булевой функции состоит в покрытии выделенных точек ребрами и гранями, не включающих невыделенные точки так, чтобы размерность покрытия была наи-
большей. Функция на рис. 3.9 покрывается двумя ребрами AB и BC.
Ребро AB является дизъюнкцией точек A и B, т.е. произведений x y z и x y z, следовательно, согласно закону склеивания (с.122),
ребро AB представляется произведением y z. Аналогично, ребро
BC это x y . Таким образом, заданная логическая функция упроща-
ется до суммы x y zy, что совпадает с выводом на с. 151.
Функция на рис. 3.10 покрывается тремя гранями. Грань |
ABCE |
||||||||||||
соответствует значению |
y |
, грань ADEG — |
x |
, грань CEGF— |
z |
. |
|||||||
Сумма этих величин дает тот же вывод, |
что и на с. |
144 — |
|||||||||||
f |
x |
|
y |
|
z |
. |
|
|
|
|
|
Функция на рис. 3.11 упрощению уже не подлежит. Здесь нет ребер или граней, покрывающих выделенные точки. Функция на рис. 3.12 покрывается тремя ребрами BD, DC, AD. Точка D покрыва-
ется трижды, что допустимо. В результате получаем f xz yz xy.
47
Булева алгебра и теория множеств
В этом разделе мы сначала напомним основные законы логики. Эти законы запишем в символах логических переменных, представляя логические тождества в виде формальных равенств:
1. |
|
x y y x , |
x y y x ; |
|||||||||||||||||||||
2. |
(x y) z x (y z), |
(x y) z x (y z); |
||||||||||||||||||||||
3. |
|
x (y z) (x y) (x z), x (y z) (x y) (x z); |
||||||||||||||||||||||
4. |
|
x x x, |
|
|
x x x; |
|
|
|
||||||||||||||||
5. |
|
x 1 x , |
|
x 0 0; |
|
|
|
|||||||||||||||||
|
|
|
|
|
x 1 1, |
|
x 0 x ; |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
1, |
|
|
|
|
|
|
|
|
|
0. |
||||
|
|
|
|
|
|
|
0 |
|
|
|
1 |
|||||||||||||
6. |
( x) x |
или |
|
|
|
|
|
|
x; |
|
|
|
||||||||||||
|
( |
x |
) |
|
|
|
||||||||||||||||||
7. |
|
x |
x |
0, |
|
|
x |
x |
1; |
|
|
|
||||||||||||
8. |
|
|
|
|
|
|
, |
|
|
|
|
|
|
. |
||||||||||
|
x y |
x |
y |
|
x y |
x |
y |
Любая алгебраическая структура, содержащая две бинарные
и одну унарную операцию, называется булевой алгеброй, если эти операции удовлетворяют соотношениям 1– 8.
Рассмотрим булеан B (U) некоторого «универсального» мно-
жества U и операции объединения, пересечения и дополнения, за-
данные на B (U). |
Теперь установим следующее соответствие: |
операции |
поставим в соответствие дизъюнкцию , |
48
операции – конъюнкцию ,
операции дополнения A U\ A поставим в соответствие
операцию отрицания .
Нетрудно заметить, что если мы перепишем законы 1– 8 в терминах операции теории множеств, то придем к соотношениям, которые известны как основные свойства операций теории множеств. Таким образом, мы можем вести речь о двух широко известных булевых алгебрах:
структура (P2(m), , , ) есть булева алгебра логи-
ческих функций m переменных;
структура (B (U), , , ) есть булева алгебра с опе-
рациями пересечения, объединения и дополнения.
Еще одну булеву алгебру можно задать следующим образом.
Пусть B 0,1 и Bn — декартово произведение Bn B B ... B
(n раз). Элементами Bn являются всевозможные упорядоченные наборы нулей и единиц (двоичные векторы). Определим операции
покомпонентного (поразрядного) логического «умножения» и логи-
ческого «сложения» двух таких последовательностей.
Для любых , Bn :
( 1, 2,..., n) ( 1, 2,..., n) ( 1 1,..., n n ) ,
( 1, 2,..., n) ( 1, 2,..., n) ( 1 1,..., n n) .
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
Операцию отрицания |
|
для элементов |
Bn |
зададим равенством |
|||||||||||
|
|
( |
|
, |
|
,..., |
|
), где |
|
|
1, если i 0 |
и |
|
0, если i |
1. |
|
|
1 |
2 |
n |
|
i |
i |
Нетрудно показать, что определенные выше операции удовлетворя-
ют свойствам 1–8, поэтому система (Bn, , , ) представляет собой
булеву алгебру двоичных векторов длины n.
Сходство основных законов алгебры логики и алгебры мно-
жеств отражают следующие теоремы, которые мы приводим без доказательства.
Теорема 3.6. Если Card U n , то булева алгебра множеств
(B(U), , , ) изоморфна булевой алгебре (Bn, , , ).
Теорема 3.7. Если Card U 2m , то булева алгебра множеств
(B (U), , , ) изоморфна булевой алгебре (P2(m), , , )
логических функций.
Отмеченные изоморфизмы позволяют в некоторых случаях заменять теоретико-множественные операции логическими, и на-
оборот.
Пример 3.30. Доказать для произвольных множеств A,B и C
справедливость равенства:
A \ (B C) (A \ B) (A\ C). |
(3.20) |
Переформулируем данное равенство в терминах логики. Заменим символы A, B,C на логические переменные x, y , z соответствен-