В началоСодержание

В начало
Введение
Содержание
Предметный указатель

О создателях

Предыдущая страница
Следующая страница


3.3. Метод Квайна

Метод минимизации Квайна У. (Quine W.V.) представляет собой локальный алгоритм, включающий определенную последовательность этапов [14]. Предполагается, что исходная минимизируемая функция задач, в СДНФ.

ЭТАП 1. Нахождение первичных импликант

Импликантой некоторой булевой функции называется другая булева функция, такая что множество нулевых значений импликанты Nимп.(0) пересекается со множеством нулевых значений функции Nf (0), а множество единичных значений Nимп.(1) принадлежит Nf (1).

Первичной импликантой булевой функции называется такая импликанта, никакая часть которой не является импликантой исходной функции. На данном этапе рассматриваются все элементарные конъюнкции (ЭК) ранга n, первоначально входящие в СДНФ. Они попарно сравниваются между собой с целью нахождения поглощений вида:

Fxi v Fxi = F,

при которых получаются ЭК ранга (n – 1). После получения всех возможных ЭК ранга (n – 1) они вновь сравниваются попарно между собою для получения ЭК ранга (n – 2) и т.д. ЭК, принявшие участие в поглощениях, отмечаются некоторым символом. Процесс заканчивается тогда, когда полученные ЭК ранга m не склеиваются между собою. Все не отмеченные ЭК будут являться первичными импликантами.

(Для данного построения целесообразно использовать квадратные таблицы, размерностью l x l, где l – число ЭК k-го ранга; k = n, n – 1, ..., m.)

Например:

f (x1, x2, x3, x4, x5) = x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5 v x1x2x3x4x5

(Таблица исходных ЭК ранга 5 примет вид (табл. ).)

Выписываем ЭК 5-го ранга:

*x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5, *x1x2x3x4x5

Образуем ЭК n-го ранга путем просмотра списка слева на право и попарного сравнения:

x1x2x3x5, x1x2x4x5, *x1x3x4x5, *x2x3x4x5, x1x2x4x5, x2x3x4x5, *x2x3x4x5, x1x2x3x4, *x1x2x3x4, *x1x3x4x5, *x1x3x4x5, *x1x2x3x4, *x1x2x3x5, *x1x2x3x5, *x1x2x3x4

ЭК принявшие участие в склеивании, помечаем знаком *.

Далее строим ЭК 3-го ранга:

x3x4x5, x3x4x5, x1x3x4, x1x2x3, x1x2x3

Повторяющиеся ЭК исключаем из дальнейшего рассмотрения:

x3x4x5, x1x3x4, x1x2x3

Образовать ЭК 2-го ранга невозможно, следовательно первичными импликантами являются:

x1x2x3x5, x1x2x4x5, x1x2x4x5, x2x3x4x5, x1x2x3x4, x3x4x5, x1x3x4, x1x2x3

ЭТАП 2. Расстановка меток и нахождение существенных импликант.

В результате выполнения первого этапа минимизируем функция оказалась представленной в виде:

f (x1, x2, ..., xn) =
где li – первичные импликанты.

Для нахождения минимальной формы необходимо исключить некоторые первичные импликанты. Поэтому составляется таблица, строки которой соответствуют первичным импликантам, а столбцы ЭК исходной функции. Если в некоторую ЭК входит одна из первичных импликант, то на пересечении соответствующей строки и столбца ставится метка. Если после заполнения всей таблицы в некотором столбце оказывается только одна метка, то первичная импликанта, находящаяся в данной строке, называется существенной. (Табл.)

В нашем случае существенными импликантами являются:

x1x2x3x5, x1x2x4x5, x1x2x3x4, x3x4x5, x1x3x4, x1x2x3

Из таблицы исключаются строки, соответствующие существенным импликантам, и столбцы ЭК, покрываемых этими существенными импликантами (Табл.).

ЭТАП 3. Вычеркивание избыточных столбцов и избыточных первичных импликант.

Если в таблице полученной на предыдущем этапе имеются столбцы, в которых метки расположены в одинаковых строках, то один из таких столбцов вычеркивается. Так как покрытие оставшегося столбца будет осуществлять покрытие удаленной ЭК.

Если после удаления избыточных столбцов в таблице появляются строки, в которых нет ни одной метки, то они вычеркиваются, так как первичные импликанты, соответствующие этим строкам не покрывают оставшиеся в рассмотрении ЭК.

В нашем примере избыточные строки и столбцы отсутствуют.

Таблица 3.1.

x1x2x3x5                      
x1x2x4x5                      
x1x2x4x5                      
x2x3x4x5                      
x1x2x3x4                      
x3x4x5                    
x1x3x4                  
x1x2x3                  

Таблица 3.2.

B1
x1x2x4x5
x2x3x4x5

A1 = x1x2x3x4x5; A2 = x1x2x3x4x5; A3 = x1x2x3x4x5;
A4 = x1x2x3x4x5; A5 = x1x2x3x4x5; A6 = x1x2x3x4x5;
A7 = x1x2x3x4x5; A8 = x1x2x3x4x5; A9 = x1x2x3x4x5;
A10 = x1x2x3x4x5; A11 = x1x2x3x4x5; A12 = x1x2x3x4x5;
A13 = x1x2x3x4x5;
B1 = x1x2x3x4x5.

ЭТАП 4. Выбор минимального покрытия максимальными интервалами.

Из таблицы, полученной в результате выполнения третьего этапа, выбирается такая совокупность первичных импликант, которая включает хотя бы по одной метке в каждом столбце. При нескольких возможных вариантах выбирается покрытие минимальной сложности.

В рассматриваемом примере остается выбрать одну из первичных импликант:

Результатом минимизации будет МДНФ:



Предыдущая страница | Следующая страница

В начало | Введение | Содержание | Предметный указатель | О создателях






© 1999 Vologda, VSTU

Hosted by uCoz