
книги из ГПНТБ / Василенко, Ю. А. Синтез дискретных структур учеб. пособие
.pdf19
§ 4. АЛГОРИТМЫ ВЫБОРА ПЕРИШШЫХ В ВЕРШИНАХ ЛОГИЧЕСКОГО ДЕРЕВА.
СЛОЖНОСТЬ ОКОбОЧНОЙ формы функции f ЗАМ сит от
расположения переменных в вершинах дерева. Ниже будет рассмотрен ал горитм, который в большинстве случаев дает оптимальный граф или
близкий |
к оптимальному. |
|
|
|
|
|
|
||
Рассмотрим выражение /1 4 |
/: |
|
|
|
|
||||
|
SZ~Sf - P - R ‘ Q. |
|
|
|
|
||||
Величина |
S f |
постоянная для данной |
функции и |
Q |
тоже. |
Чтобы по - |
|||
лучить оптимальный граф, |
надо уменьшить величины |
Р и R |
: В боль |
||||||
шинстве |
случаев |
R |
>P . |
Опишем алгоритм выбора |
переменных в вершинах |
||||
дерева. |
|
|
|
|
|
|
|
|
|
В |
верхнюю вершину дерева |
записываем паре меннус |
с мини - |
||||||
мальвой |
величиной |
S f |
. Если |
таких |
переменных несколько, то за |
писывается любая из них. |
|
|
|
|
|
|
|
|||
В вершины поддеревьев функций |
f ( x t |
jrtjf |
t і > х ы , , . . , х п ) |
* |
||||||
/ / з Г у , |
в |
п |
и с ы в а ю |
т с |
я |
, соответсвенно^, |
номера пе |
- |
||
ременных X j |
|
с |
минимальными |
величинами |
и |
5^ |
, где |
|
||
|
|
|
|
|
f t * |
, . . . , |
|
|
|
, |
J e ( l , 2, . . . , ^ |
j |
. Если минимальное |
значение |
этих |
величин одинаково |
|||||
для нескольких переменных, то вписывается любая из них. |
|
|
||||||||
Аналогичным образом находятся номера переменных для всех ос |
|
|||||||||
тальных вершин дерева. |
|
|
|
|
|
|
|
|||
Пример |
I, |
Минимизировать функцию, |
заданную деревом на рис. 12. |
|||||||
Логическое дерево на рис. |
12 изображает |
разложение функции, |
|
|||||||
аналитическое |
выражение которой |
содержит |
|
|
|
|
|
|||
U f ) |
* 2б ~ 2 - 28 * 64 - 30 - 34 |
|
|
|
|
|||||
вхождений, всех переменных. |
|
|
|
|
|
|
|
|||
Пользуемся |
алгоритмом выбора переменных в вершинах дерева. |
|
20
Цииималышии |
я вл я етс я |
в & s ~ |
В верхнюю вершину |
дерева впишем любус |
|
пример, Х е , |
|
|
сходяоe r« функции f .
из переменных ХЧ,Х Г , на
»
Рис. D .
Диагарамма Вейча для функции ft выглядит так
|
X/ |
|
|
|
I |
0 |
0 |
I |
*•/ |
I |
0 |
0 |
I |
V |
0 |
0 |
0 |
1 |
|
I |
0 |
0 |
I |
*/ |
|
|
|
|
|
I |
< |
|
V |
! |
|
^ |
Подсчитаем |
сходности |
функции |
ft |
|
|||
St * |
7 |
- |
X, |
- |
сходность |
фикции |
f , |
, |
|
S f t |
* |
7 |
- |
Хх |
- |
сходность функции |
J f |
, |
|
$ f t |
» |
7 |
- |
JT5 |
- |
СХОДНОСТЬ функции |
f t |
, |
|
|
* |
I |
- |
|
- |
сходность функции |
f t . |
- C L -
|
Х у - сходность |
|
функции |
f j |
является |
сапой минимальной . Гіо- |
|||||
этоцг в вершину дерева для функции |
|
впивеи переменную -2J, . |
|||||||||
|
Подсчитаем |
X --сходности |
функции |
^ . |
|||||||
|
|
|
а * / |
|
х / |
* • / |
|
x t d |
|
|
|
|
|
|
0 |
|
0 |
|
о |
|
o 3 |
x 3 |
|
|
|
|
I |
|
I |
|
I |
|
0 |
r |
^ |
|
|
|
|
|
|
|
|
|
|
||
|
ЛУ |
|
0 |
|
0 |
|
I |
|
I |
|
|
|
|
I |
|
I |
, |
1 |
|
0 |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
* / |
|
|
|
|
|
Ху |
’ |
Z * |
• n ' |
|
X 0 |
|
|
|
К |
2 |
|
|
|
|
|
|
|
** |
|
|
- |
-сходностьфункции |
£ |
, |
|
|
||||||
|
И |
|
|
||||||||
У |
2 |
- |
X, -сходность |
функции |
|
, |
|
|
|||
<ѵ |
б |
- |
-сходность |
функции |
|
. |
|
|
|||
|
|
|
|
||||||||
|
Для функции |
£ |
3 / |
- |
З І |
, |
поэтову |
в |
вершину графа для |
||
|
f |
и |
|
|
Гг |
|
гг |
|
переменных |
. Впишем, |
|
|
|
можно вписать любую из |
|||||||||
например, |
^ . |
|
|
|
|
|
|
|
|
||
|
Итак, |
наше дерево уже |
имеет |
|
вид |
|
|
Рис. 14.
22
PÄf |
* |
<*■ |
* |
|
» |
*> - л |
•$«•*,■*> . |
Подсчитаем л* -сходности функции Вейча для'них имев* вид
|
-г* |
л * ' |
|
|
|
|
___ ^ |
|
|
|
|
sc? |
I |
|
I |
* |
/ |
* |
I |
|
І |
|
■*/ |
|
|
х |
|||
|
О |
1 |
/ |
||
* / |
|
м і |
|||
I |
|
I |
|
||
|
|
а г / |
|||
|
Диаграмма |
Вейча |
|
|
|
|
для |
функции |
<ft . |
|
|
|
* |
/ |
*»* |
|
|
3« |
0 |
|
1 |
V |
|
О |
|
I |
|
* / |
|
|
|
|
|
||
|
О |
т |
I |
|
ЗС'І |
|
О |
|
о |
|
|
|
|
|
1 |
||
|
|
|
|
X♦* |
<*л ,<*, |
|
. Диаграмми |
|
я*«а |
V |
|
|
о |
о |
* / |
|
|
|
||
о |
о |
/ |
|
|
|
||
о |
О |
•V |
|
о |
О |
*>* |
|
Диаграмма |
Вейча |
||
|
|||
для функции |
. |
|
|
■ */ |
|
|
|
I |
О |
V |
|
I |
О |
ас * |
|
I |
I |
л |
|
|
|||
о |
I |
СГ о |
Диаграмма |
Вейча |
|
|
Диаграмма Вейча |
|||||
для фикции |
efj . |
|
|
для функции ef^ . |
|||||
5 |
. ‘, |
- |
з |
- |
л^-оходвооть функции |
** |
|||
& |
|
• |
3 |
- |
«^-сходность |
функции |
*л |
||
|
- |
Tj -о ходиость |
функции |
|
|||||
S « , - з |
|
||||||||
|
|
|
|
|
|
||||
|
В |
вершину графа для функции |
öf/ |
выпишем переменную JC3 |
|||||
Из диаграммы Зейча для функции |
|
ВИДНО, ЧТО «Х'г = о . |
|||||||
WіЗ |
|
|
|
^ -сходн ость |
функции |
OCj |
, |
||
* 3 |
- |
|
|||||||
Si, - |
I |
- |
|
&J -сходность |
функции |
оС3 . |
|||
s l - |
} |
- |
|
Х9 -сходность |
функции |
tfj |
• |
||
|
|
|
|
|
23
3 |
вершину графа |
для |
функции оС3 |
„впинеы переиеннув |
||||||
S t f |
т |
|
І-а ^ ш |
СХОДНОСТЬ функции |
öfj, |
, |
||||
S |
f |
• I |
|
- |
£3 -сходность |
функции |
o', |
, |
||
|
|
» |
3 |
- |
«ä£ -сходность |
функции |
|
. |
||
|
|
В |
вершину |
графа |
для функции |
впишем переиеннув аех . |
писать |
лвбув из |
переменных |
» |
|
О |
|
^ |
|
3 / |
для функции ^ |
: |
|
|
|
|||
|
|
З С |
|
|||||
|
|
■ь |
|
|||||
|
|
|
|
о |
|
|
о |
|
|
|
|
■е |
о |
|
|
о |
|
Ч/ |
для функции |
Зе |
|
|
•*»* |
|||
: |
Jr„ |
о |
||||||
|
|
|
|
I |
|
I |
|
|
|
|
|
Л* |
0 |
|
I |
|
|
5 ^ |
- |
I , |
|
* |
I. В |
вершину |
графа для функции |
|
мокко |
вписать |
|||||
лвбув из переменных |
|
; |
|
|
|
|
* |
|
|
|
|||||
|
5 / для функции А |
|
|
|
5 |
' |
V |
|
|
|
|
||||
|
|
|
|
|
|
|
|
5 1 |
I |
|
г |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
0 |
|
|
|
|
S |
|
|
|
2. В вершину графа для функции |
/ » |
|
впишем пере- |
||||||||
иен нус |
зг, |
; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
б / для ф у н к ц и и : |
|
|
|
V |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
5 ' |
0 |
|
I |
|
|
|
|
|
|
|
|
|
|
|
|
SJ |
I |
|
I |
|
|
|
|
|
|
|
|
|
|
|
|
J» |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
__ |
|
|
|
|
|
|
|
|
I, |
S|^« |
|
I. |
В вершину графа для функции |
|
можно вписать |
||||||||
лвбув из переменных |
|
|
|
|
|
|
|
|
|
|
|||||
|
Объединяя вое результаты |
, получим граф, |
изображенный на рис.Іб |
||||||||||||
|
Подсчитаем теперь |
Ш функции , |
изображенной деревом на рис. |
||||||||||||
16. |
Для этого |
сначала |
подсчитаем сходность дерева |
|
. |
|
|||||||||
|
s |
^ s |
* |
|
|
|
|
|
|
. ул-. *, г |
|
|
|||
|
-s‘л /sfÂ* ,i'.-i.sл;. |
Л |
|
|
|||||||||||
|
- е - s ; |
. s f ' . |
|
|
s f \ s f . у ^ |
б : 5 |
- |
||||||||
|
* £ *<?+ / |
* f S + f * f 4 - 2 + ’2 + 3 * / - * 2 m - b Z |
( |
|
|||||||||||
|
|
L f f } ~ Z €- Z ~ i z « 6Z - |
~ Z C |
|
|
|
|
|
|
||||||
Значит, |
дерево |
на рис. |
16 дает нам функцию, |
количество |
вхождений |
||||||||||
б у к /^ |
которую равно 20, тогда как |
дерево на |
рис. |
12 дает ту |
же функ |
||||||||||
цию, во с количеством вхождений букв равным 34. |
|
|
|
|
|||||||||||
|
Оптимальность дерева |
на рис.Іб |
является |
очевидной. |
|
|
я
26
Подсчитаем количество операций, которые входят в аналити -
ческое выражение функции |
f |
( x t , хг , г х, |
|
заданной логическим |
|||||||||||
деревом на рис.Іб |
в базисе |
штрих Шеффера. |
|
|
|
||||||||||
Четвертый /последний |
/ |
ярус |
содержит |
весть графов вида |
|||||||||||
/р и с .2 / И)два графа |
вида |
/р и о .З /, |
которые |
не даст ни одной опера* |
|||||||||||
ции. Граф с меткой |
/ х |
дает одну |
операцию. Значит, |
Ч-й ярус да |
|||||||||||
ет одну |
операцию. |
Третий |
ярус дает II операций. Второй ярус дает |
||||||||||||
8 операций. Первый ярус дает 7 |
операций |
и нулевой ярус, |
- Ч опе |
||||||||||||
рации. Если через Hf) обозначим количество вхождений^символов |
|||||||||||||||
операций |
штрих Шеффера в |
аналитическое выражение функции, то для |
|||||||||||||
функции, |
заданной графом на рис. Іб |
|
|
|
|
||||||||||
Hf) - |
I |
+ И |
+ 8 |
+ 7 |
Ч ■ 31, |
|
|
|
|||||||
Аналитическое |
|
выражение для |
этой функции |
записывать не |
будем. |
||||||||||
Пример 2. Минимизировать функции, |
заданную деревом на ри с.17. |
||||||||||||||
Диаграмма Вейча |
этой Функции имеет вид : |
|
|
|
|||||||||||
|
|
3 |
|
|
J |
|
|
|
|
|
|
|
|
|
|
|
|
|
: / |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
г / |
|
|
|
|
|
|
|
|
|
|
|
щ. |
I |
|
I |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
о |
|
0 |
I |
|
I |
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
0 |
|
0 |
0 |
|
I |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
I |
|
I |
I |
|
I |
|
г |
• |
|
|
|
|
|
|
С * |
$ |
|
|
|
|
|
|
♦ |
„ |
|
|
|
|
|
18 . . . |
|
|
' |
|
|
|
|
|
|
|
|
|
|
||
Число |
вхождений,букв |
в |
аналитическое выражение функции рав |
||||||||||||
но |
i f f ) |
|
25 - |
2 |
|
18 |
- 30 |
- 18 - |
12. |
|
|
||||
|
|
|
f |
|
|||||||||||
есть самая |
минимальная |
^ |
-сходность функции |
Поэтому |
|||||||||||
в вершину дерева |
поместим |
переменную |
|
|
|
|
27
Put. 17
2 8