Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по прикладной математике.doc
Скачиваний:
132
Добавлен:
02.05.2014
Размер:
3.66 Mб
Скачать

Импликантная матрица

Простые импли-канты

Конституенты единицы

X

X

X

X

X

X

X

X

X

X

Для каждой импликанты найдем конституенты еди­ницы, которые ею поглощаются, т. е. те конституенты, собственной частью которых является данная импликанта. Например, импликанта поглощает конституен­ты и, импликанта конституенты и и т. д. Клетки импликантной матрицы, образованные пересечением строк с импликантами и колонок с поглощаемыми ими конституентами, отметим какими-либо символами..

Чтобы получить минимальную дизъюнктивную нормальную форму заданной функции, достаточно найти минимальное число импликант, которые совместно накрывают крестиками все колонки импликантной матрицы.

Из табл. 2.3.1 следует, что в минимальную форму обя­зательно должны войти импликанты и, так как только они накрывают крестиками первую и шестую колонки импликантной матрицы.

Кроме того, имлликанта накрывает вторую, а импликантапятую колонки. Поэтому остается накрыть только третью и четвертую колонки. Для этого можно выбрать пары импликант:и; иили одну импликанту. Если выбрать указанные выше пары импликант, то импликантыиоказываются лишними, так как импликанта одна накрывает третью и четвертую колонки таблицы. Таким образом, выбрав импликанту, получим ми­нимальную дизъюнк­тивную нормальную форму задан­ной функции.

,

которая совпадает с первойтупиковой формой. Если дополнительно кивыбрать импликантыи, то лишних импликант не оказывает­ся, а полученное выражение

,

является второйтупиковой формой заданной функ­ции.

Пример.Найти минимальные формы переключатель­ной функции

. (2.3.1)

Проводя все операции склеивания и поглощения, по­лучим сокра­щен­ную дизъюнктивную нормальную форму:

(2.3.2)

. (2.3.3)

Составим импликаитную матрицу (табл. 2.3.2),выпи­сав из выражения (2.3.1)все конституенты единицы, а из выражения (2.3.3) - все простые импликанты. При заполнении импликантной матрицы удобно пользоваться формой записи (2.3.2): следует поставить крестики в тех колонках, номера которых совпадают с числами, стоящими в левой части формы (2.3.2).

Таблица 2.3.2

Импликантная матрица

Простые импли-канты

Конституенты единицы

X

X

X

X

X

X

X

X

X

X

X

X

Для импликанты крестиками отмечаются первая и вторая колон­ки; дляпервая и третья и т. д. Заметим, что каж­дая колонка табл. 2.3.2отмечена двумя крестиками. По­этому из выражения (2.3.3)можно исключитьлюбуюимпликанту. Минимальное количество импликант, накрывающих крестиками все колонки, равно трем:

накрывает первую и вторую колонки,

накрывает третью и четвертую колонки,

накрывает пятую и шестую колонки.

Поэтому минимальная дизъюнктивная нормальная форма заданной функции имеет вид

.

Можно накрыть все колонки табл. 3.9и другими импликантами:

накрывает первую и третью колонки,

накрывает вторую и шестую колонки,

накрывает четвертую и пятую колонки.

Таким образом, данная функция имеет вторуюминимальную форму

.

Переключательная функция имеет не­сколько других тупиковых форм, которые, однако, не являются минимальными. Например, тупиковыми будут следующие формы:

На основании изложенного сформулируем алгоритм получения минимальных дизъ­юнктивных нормальных форм переключательной функции.

1.Переключательную функцию представляют всовершенной дизъюнктивной нормальной форме. При этом, если функция задана таблицей, то ее следует запи­сать «по единицам»; если же функция задана в произ­вольной аналитической форме, то совершенную дизъ­юнктивную нормальную форму можно получить, при­меняя операции развертывания, правила де Моргана и другие формулы булевой алгебры.

2.В полученной совершенной дизъюнктивной нор­мальной форме проводятвсе операции неполного склеивания и поглощения. В результате этого получаетсясокращеннаядизъюнктивная нор­мальная форма заданной функции.

3.Находят минимальные дизъюнктивные нор­мальные формы по импликантной матрице. Если коли­чество импликант в сокращенной дизъюнктивной нормаль­ной форме невелико, то можно найти тупиковые формы методом испытания импликант и выбрать среди них мини­мальные.

Заметим, что в ряде случаев минимальная дизъюнк­тивная форма совпадает с сокращенной. Например, сокращенная дизъюнктивная нормальная форма любой переключательной функции двух аргументов совпадает с минимальной формой. Точно так же импликантные матрицы применяются для получения тупиковых и минимальных конъюнктивных нормальных форм переключательных функций.

2.4. Метод испытания импликант

Этот метод удобно использовать тогда, когда число импликант, входящих в сокращенную форму функции невелико.

Отметим следующее свойство произвольной, в частности, сокращенной дизъюнктивной нормальной формы переключательной функции импликант:

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

Это связано с тем, что дизъюнктивная форма обращается в нуль только в том случае, когда все ее логические слагаемые равны нулю. Однако, при исключении импликанты может оказаться, что на тех наборах, на которых исключенная импликанта равнялась единице (а следовательно, вместе с ней и вся дизъюнкция равнялась единице ввиду соотношения 1х1=1), оставшееся выражение не будет равно единице. Если же проверкой установить, что при исключении импликанты полученное выражение равно единице на этих наборах, то можно утверждать, что все нули и все единицы обоих выражений совпадают и, следовательно, исключенная импликанта является лишней.

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

Применение этого правила связано с некоторыми особенностями, которые можно рассмотреть на примерах.

Пример 1. Найти тупиковые формы переключательной функции, заданной в сокращенной дизъюнктивной нормальной форме:

.

1. Испытываем импликанту . Подставляем взначениях1 = 0 их2 = 0, т.к. при этом=:

Следовательно, импликанту исключать нельзя, т.к. оставшееся выражение не равно тождественно единице.

2. Импликанту х1х3исключать также нельзя, т.к. прих1= 1 их3 = 1

3. Для импликанты :

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

Пример 2. Упростить переключательную функцию.

.

На основе теоремы Квайна получим

12

23

34

45

56

Тогда сокращенная ДНФ имеет вид

(2.4.1)

Найдем тупиковые формы.

1. Для :х1= 0,х3= 1,х4= 1:

т.е. первую импликанту исключать нельзя.

2. Для :х2= 0,х3= 1,х4= 1.

т.е. импликанта является лишней.

3. Проверяем третью импликанту ; при этом вторую импликанту, которая оказалась лишней, вновь возвращаем в исследуемое выражение. Тогда, подставляя в выражение

значения х1 = 1,х2= 0,х4= 1, получим

.

Следовательно, импликанта также лишняя и может быть исключена.

4. Аналогично можно показать, что и импликанту также может быть исключена.

Таким образом выражение (2.4.1) имеет три лишние импликанты и.

Однако исключать одновременно все лишние импликанты нельзя без дополнительной проверки. Вначале следует исключить одну импликанту полученного выражения. Исключим из выражения (24.1. импликанту , получим

Вновь проверяем наличие лишних импликант, проверяя только те, которые были лишними при первой проверке, т.е. импликанты и.

Подставляя в выражение

значения х1= 1,х2= 0,х4= 1 получаем

Следовательно, импликанту исключать нельзя, хотя при первой проверке, т.е. при наличии(тоже лишней), она была лишней.

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

2.5. Минимизация переключательных функций с помощью диаграмм Вейча

Диаграммы Вейча позволяют упростить поиск склеивающихся конституент. Диаграмма Вейча – это специальная таблица, определяющая значения переключательной функции на каждом наборе аргументов. Каждой клетке диаграммы соответствует определенный набор значений аргументов – рис. 2.5.1.б.

x2

х1

1

0

x2 x2 x2 x2 x2 x2

1

х1

х1

1,1

1,0

х1

х1

х1x2

х1x2

х1

х1

х1x2

х1x2

0

0,1

0,0

х1x2

х1x2

х1x2

х1x2

(а) (б) (в) (г)

Рис. 2.5.1. Диаграмма Вейча для функции двух переменных.

Склеивающиеся между собой конституенты единицы или нуля в диаграммах Вейча для функций двух аргументов расположены в соседних клетках (рис. 2.5.1.в, г).

Чтобы представить переключательную функцию диаграммой Вейча следует записать единицы в клетки, соответствующие наборам, на которых функция равна единице, и нули – в остальные клетки.

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

x2 x2 x2 x2 x2 x2 x2 x2

х1

х1

1

1

х1

х1

1

0

х1

х1

0

0

х1

х1

0

1

0

0

1

0

1

1

0

1

f2(х1; x2) =x1 f5(х1; x2)= x2f12=х1 f10=х2

Это обстоятельство используют для получения минимальных ДНФ и КНФ.

Рассмотрим диаграммы Вейча переключательной функции f13(х1; x2) =

= х1 x2.

x2 x2 x2 x2

Пара единиц во второй строке соответствует х1, а пара единиц в

х1

х1

1

0

х1

х1

х1x2

первой колонке – x2.

f131; x2) = х1 x2.

1

1

х1x2

х1x2

Это выражение, являющееся минимальной формой функции f13(x1;x2)получено путем склеивания конституент единиц, обведенных овалами.

Д

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

ля 3-х переменных

x2

x1

x1x2x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x3

x2

x1

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x1x2 x3

x3

x2

x1

110

111

101

100

010

011

001

000

x3

Рассмотрим диаграммы Вейча переключательных функций, которые выражаются произведением двух переменных

x2 x2 x2

x1

1

1

0

0

x1

0

0

0

0

x1

0

0

1

0

0

0

0

0

0

1

1

0

0

0

1

0

x3 x3 x3

x1 x2 x3 x3

x2 x2 x2

x1

0

0

0

0

x1

1

0

0

1

x1

0

0

1

1

1

0

0

1

0

0

0

0

0

0

0

0

x3 x3 x3

x1 x1

Четыре единицы, расположенные в соседних клетках, выражаются одной буквой.

x2 x2 x2

x1

0

1

1

0

x1

0

0

0

0

x1

1

0

0

1

0

1

1

0

1

1

1

1

1

0

0

1

x3 x3 x3

x3

Чтобы построить диаграмму Вейча функции, заданной в СДНФ, нужно записать единицы в клетки диаграммы, которые соответствуют консти­ту­ентам единицы данной функции.

Если функция задана в СКНФ, следует записать нули в клетки диа­грам­мы, которые соответствуют конституентам нуля, входящим в данную функ­цию, а в остальных клетках записать единицы.

Отыскание минимальной ДНФ сводится к определению варианта, при котором все единицы диаграммы Вейча данной функции накрываются наименьшим числом наиболее коротких произведений.

Пример.

f(x1, x2, x3)=.

f(x1, x2, x3) =.

x2

Четыре единицы, находящиеся в первой и

последней колонках, можно накрыть пере­мен-

x1

1

0

1

1

­ной , а две остальные объеди­нить с едини­ца­ми, расположенными в левой нижней и правой

1

1

0

1

x3 верхней клетках диаграммы (склеивание поx3).

Данная функция имеет единственную минимальную форму, так как при любом другом способе объединения единиц количество букв в ДНФ уве­ли­чивается.

Пример. Найти минимальные ДНФ и КНФ функции

f(x1, x2, x3) = .

x2 x2

x1

1

1

1

0

x1

1

1

1

0

0

0

1

1

0

0

1

1

x3 x3

f(x1, x2, x3) = x1 x2 x1 x3 f(x1, x2, x3) = x1 x2 x3

Для получения минимальной КНФ следует объединить нули пере­клю­ча­тель­ной функции: две конституенты нуля соответствуют клеткам, объе­ди­ненным пунктиром, склеиваются по x3и представляются импликантойx1 , а оставшийся нуль – конституентой x2 x3.Поэтому минимальная КНФ будет иметь вид:

f(x1, x2, x3) = (x1 )( x2 x3).

Минимальная КНФ имеет меньше букв, чем минимальная ДНФ.

Пример. Найти минимальную ДНФ.

f(x1, x2, x3) =.

x2

Единственная минимальная ДНФ имеет

вид

x1

1

0

0

1

1

0

1

0

x3

Пример. Найти минимальную ДНФ.

f(x1, x2, x3)=.

x2

f(x1, x2, x3) = x2 x3 x1 x3 x1 x2;

f(x1, x2, x3) = x1 x3 x1 x2 x2 x3;

x1

1

0

1

1

1

1

1

0

x3 При других способах объединения консти­-

туент число логических слагаемых в ДНФ

будет больше трех.

Пример. Найти минимальную ДНФ функции

f(x1, x2, x3) = .

x2

В диаграмме Вейча данной функции нет

ни одной пары единиц, распо­ложенн­ых

в соседних клетках, и поэтому заданная

СДНФ совпадает с минимальной.

x1

1

0

1

0

0

1

0

1

x3

Диаграмма Вейча для функции четырех аргументов представляет собой квадрат, разделенный на 16 клеток.

Одной букве соответ­ству­ет восемь единиц, рас­по­ло­женных в соседних клет­ках; произведению, включаю­ще­му две переменные соот­ветствуют че­тыре со­сед­ние единицы; про­изведению трех пере­мен­ных – две и произ­ведению че­тырех переменных – одна еди­ница.

x1

x2

x3

x4

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

Пример.

- это минимальная ДНФ.

x1

x2

x3

1

0

0

0

1

0

0

1

1

0

1

1

0

1

0

0

x4

Диаграмма Вейча для функции пяти аргументов имеет следующий вид:

x1

x2

x5 x5

x3

x4 x4

Одной букве в этом случае соответствуют шестнадцать еди­ниц, рас­по­­ложенных в смежных клет­­­ках; произведе­ние двух букв – восемь еди­ниц, трех букв – че­тыре, четырех – две и пяти – одна единица.

Следует помнить, что для букв , x4, иx5"соседние" клетки ока­зы­ваются разнесенными.

Аналогично строится диаграмма Вейча и для переключательных функ­ций большего числа аргументов. Однако с увеличением числа аргументов ра­бо­та с диаграммами затрудняется, т.к. теряется геометрический смысл "со­сед­них" клеток.

2.6. Второй метод получения минимальных КНФ

Этот метод полностью опирается на преобразования дизъюнктивных форм переключательных функций. Алгоритм заключается в следующем.

1. Записывают дизъюнкцию всех конституент единицы, которые не входят в СДНФ заданной функции.

Если функция задана таблицей, то в эту форму войдут конституенты единицы, соответствующие наборам аргументов, на которых функция равна нулю. Если функция задана аналитически, то вначале находят ее совершенную ДНФ, а затем записывают дизъюнкцию всех конституент, которые не вошли в эту функцию. Можно показать, что полученная таким образом форма будет совершенной дизъюнктивной нормальной формой заданной функции, взятой с отрицанием.

2. Находят минимальные ДНФ по рассмотренным алгоритмам.

3. От полученных минимальных форм берут отрицания, и после пре­об­ра­зований по формулам де Моргана получают конъюнктивные формы, которые будут минимальными.

Для обоснования приведенного алгоритма получения минимальной КНФ доста­точно доказать два положения.

1. Дизъюнкция всех конституент единицы, не входящих в совершенную дизъюнктивную нормальную форму данной функции f(x1,x2, …,xn) является отрицанием данной функции.

2. Преобразования по формулам де Моргана минимальной дизъ­юнк­тивной нормальной формы функции приводит к получению минимальной конъюнктивной нормальной формы функцииf(x1,x2, …,xn).

1. Прежде всего заметим, что дизъюнкция всех конституент единицы тождественно равна единице. Действительно, для любого набора аргументов в такой дизъюнкции найдется конституента, равная на этом наборе единице. Но если одно логическое слагаемое ДНФ равно единице, то равна единице и вся дизъюнктивная форма. Поэтому справедливы такие, например, соотношения

В общем виде:

, (*)

где n – число аргументов.

Рассмотрим некоторую ПФ, заданную в СДНФ:

, (**)

где m– число наборов, на которых ПФ равна единице.

Обозначим конституенты единицы, не входящие в последнее выра­же­ние, через , гдеp= 2nm – число наборов, на которых функция равна нулю. Тогда на основании соотношения (*)

Учитывая (**), получим

Сравнивая последнее соотношение с тождеством х1= 1, которое можно записать в форме

,

получим

,

что и требовалось доказать.

Преобразования по формулам де Моргана не изменяют число букв в выражении для ПФ. Поэтому, если взять отрицание от минимальной ДНФ функции , то полученная после преобразования по формулам де Моргана конъюнктивная форма также будет минимальной, но уже для функции.

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

Пример 1. Найти минимальную конъюнктивную форму ПФ, заданной таблицей.

1. Запишем дизъюнкцию кон­ституент единицы, которые соответ­ствуют набо­рам, на ко­торых функция равна нулю.

Номер

набора

0

1

2

3

4

5

6

7

x1

0

0

0

0

1

1

1

1

x2

0

0

1

1

0

0

1

1

x3

0

1

0

1

0

1

0

1

f(x1, x2, x3)

1

1

0

0

0

1

0

1

.

2. Выполним операции склеивания и поглощения, после чего получим сокра­щен­ную ДНФ функции :

.

3. Испытывая импликанты, обнаружим, что вторую импликанту можно исключить (при x2= 1,x3= 0, выражение1), т.е. минимальная ДНФ функцииимеет вид

.

Использовав формулу де Моргана, получим минимальную КНФ заданной функции

.

Пример 2. Найти минимальную конъюнктивную нормальную форму функции

.

1. Находим СДНФ:

.

2. Записав дизъюнкцию конституент единицы, не вошедших в преды­ду­щее выражение, получим СДНФ функции :

.

3. Сокращенная ДНФ имеет вид:

.

4. Находим минимальные формы функции .

Импли-

канта

Конституента

x1x2 x3

*

*

*

*

x2 x3

*

*

x1 x3

*

*

1) .

2) .

Воспользовавшись формулой де Моргана получим две мини­маль­ные КНФ:

1. f(x1, x2, x3) = (x1 x3)( x2 x3)( x1 x3).

2. f(x1, x2, x3) = (x1 x3)( x1 x2)( x1 x3).

2.7. Минимизация неполностью определенных переключательных функций

В ЦВМ могут использоваться комбинационные схемы, закон функцио­ни­рования которых определен неполностью. В таких схемах некоторые ком­би­на­ции сигналов на ее входы не подаются и являются запрещенными. Для за­пре­щенных входных комбинаций выходные сигналы не определены, т.е. мо­гут принимать любые значения – нуль или единицу. Поэтому при синтезе схем с неполностью заданным законом функционирования можно произ­вольно задать значения выходных сигналов для запрещенных комбинаций входных сигналов; нормальная работа схемы при этом не нарушается. Поэтому выходным сигналам на запрещенных комбинациях придают такие значения, при которых можно построить наиболее простую схему.

Схемы с запрещенными комбинациями выходных сигналов описы­вают­ся неполностью определенными переключательными функциями, т.е. функ­циями, значения которых определены не на всех наборах. Например, функция заданная таблицей и диаграммой Вейча

x1

0

0

0

0

1

1

x2

0

0

1

1

0

1

x3

0

1

0

1

1

0

f(x1, x2, x3)

1

0

0

0

1

1

определена только на шести наборах. Клетки, соответствующие наборам 1,0,0; 1,1,1 остаются пустыми.

Форма представления функции f(x1, x2, x3) существенно зависит от вы­бо­ра ее значений на запрещенных наборах, Например, для заданной функции, выбирая ее запрещенные значения равными нулю, можно получить мини­мальную ДНФ в виде

Если значения функции на запрещенных наборах принять равными единице, то форма представления упрощается

.

Рассмотрим общую методику получения минимальных ДНФ непол­ностью определенных переключательных функций

Определение 2.7.1. Пусть переключательная функция f(x1, x2, …, xn) не опре­де­лена на p наборах аргументов. Тогда полностью определенную функцию (x1, x2, …, xn) будем называть эквивалентной функции f(x1, x2, …, xn), если ее значения совпадают со значениями функции f(x1, x2, …, xn) на тех наборах, на которых эта функция f определена.

Существует 2p вариантов выбора значений функции на запрещенных на­бо­рах и, следовательно, 2рразличных переключательных функций, эквива­лент­ных функции f(x1,x2, …,xn). Поэтому задача минимизации неполностью определенной функцииf(x1,x2, …,xn) сводится к отысканию такой экви­ва­лентной функции(x1,x2, …,xn), которая имеет простейшую минимальную форму.

Введем эквивалентные функции 0(x1,x2, …,xn) и1(x1,x2, …,xn), значения которых на всех запрещенных наборах функцииf(x1,x2, …,xn) равны, соответственно, нулю и единице.

Теорема 2.7.1. Минимальная ДНФ неполностью определенной функ­ции f(x1, x2, …, xn) совпадает с дизъюнкцией самых коротких импликант экви­ва­лент­ной функции 1(x1, x2, …, xn), которые совместно поглощают все консти­туенты единицы функции 0(x1, x2, …, xn) и ни одна из которых не является лишней.

Для доказательства теоремы рассмотрим СДНФ некоторой эквива­лент­ной функции i(x1,x2, …,xn). Конституенты единицы, входящие в эту форму, обязательно войдут и в СДНФ функции1(x1,x2, …,xn). Поэтому любая простая импликанта функцииi(x1,x2, …,xn) будет совпадать с импликантой функции1(x1,x2, …,xn) или будет поглощаться ею. Другими словами, среди импликант функции1(x1,x2, …,xn) всегда найдется такая, которая по­гло­щает любую импликанту любой эквивалентной функцииi(x1,x2, …,xn). Следовательно, самыми короткими произведениями, накрывающими единицы функцииf(x1,x2, …,xn), будут импликанты1(x1,x2, …,xn).

Среди всех ПФ, эквивалентных заданной, функция 0(x1,x2, …,xn) имеет минимальное количество конституент единицы. Следовательно, и количество простых импликант [из набора импликант функции1(x1,x2, …,xn)], необходимых для поглощения конституент функции0(x1,x2, …,xn), будет минимальным. Если составить дизъюнкции наиболее коротких импликант функции0(x1,x2, …,xn), которые совместно накрывают все конституенты единицы функции0(x1,x2, …,xn), то получим, очевидно, минимальную форму представления функцииf(x1,x2, …,xn).

Ввиду того, что для накрытия единиц функции 0(x1,x2, …,xn) выби­раются импликанты другой функции, дизъюнкция этих импликант не равняется функции0(x1,x2, …,xn). Однако, такая дизъюнкция обязательно равна одной из функций, эквивалентных функцииf(x1,x2, …,xn).

Пример. Найти минимальную дизъюнктивную нормальную форму ПФ, заданной таблицей.

x1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

x2

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

x3

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

x4

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

f(x1, x2, x3, x4)

1

0

1

0

0

1

0

0

1

1

Полагая, что пустые клетки заполнены нулями, найдем СДНФ экви­ва­лентной функции 0(x1,x2,x3,x4):

.

СНДФ функции 1(x1,x2, …,xn), полученная после заполнения пустых клеток таблицы единицами, будет

Выполнив операции склеивания и поглощения, получим сокращенную ДНФ функции 1 (x1,x2,x3,x4), в которую войдут все ее простые импликанты:

Составим импликантную матрицу, включив в нее конституенты единицы функции 0(x1,x2,x3,x4) и импликанты функции1(x1,x2,x3,x4).

Импли-

канты

Конституенты

x1 x2 x3 x4

x1 x2

x

x

x

x

x

x

x

x

x

Импликанта x1x2обязательно должна входить в мин ДНФ, т.к. только она поглощает конституентуx1x2x3x4. Импликантыx1x2совместно накрывают все конституенты, кроме; последняя может быть накрыта импликантамиили. Поэтому минимальные ДНФ функцииf(x1,x2,x3,x4) будут:

Пример. Найти минимальную ДНФ функцииf(x1,x2,x3,x4), эквивалентая функция0(x1,x2,x3,x4) которой имеет вид:

а комбинации являются запрещен­ными.

Эквивалентную функцию 1(x1,x2, …,xn) можно получить, добавив к СДНФ функции1(x1,x2, …,xn) запрещенные комбинации переменных:

Проведя операции склеивания и поглощения, найдем простые импли­кан­ты функции 1(x1,x2,x3,x4);x1x2x3,x1x3x4,,. Импликантная матрица функцииf(x1,x2,x3,x4) имеет вид.

Импли-

канты

Конституенты

x

x

х

х

х

x1x2x3

х

x1x3x4

Функция f(x1,x2,x3,x4) имеет единственную минимальную ДНФ

В нижней строке импликантной матрицы крестики отсутствуют и, сле­до­вательно, импликанта x1x3x4не поглощает ни одну из конституент единицы функции0(x1,x2,x3,x4). Это связано с тем, что данная импликанта обра­зо­валась в результате склеивания конституент функции1(x1,x2,x3,x4), которые в функцию0(x1,x2,x3,x4) не входят.

Чтобы найти простейшее представление неполностью определенной ПФ, кроме минимальных дизъюнктивных форм следует получить минималь­ные конъюнктивные нормальные формы и выбрать из них ту, которая содержит наименьшее число букв.

Алгоритм получения минимальных конъюнктивных форм подобен рас­смот­ренному алгоритму получения минимальной ДНФ и заключается в следующем.

Пусть задана неполностью определенная функция f(x1,x2, …,xn). Тогда для получения минимальной КНФ достаточно найти сокращенную КНФ эквивалентной функции0(x1,x2, …,xn), а функцию1(x1,x2, …,xn) записать в СКНФ. Затем следует составить ипликантную матрицу, включив в нее все конституенты нуля функции1(x1,x2, …,xn) и все члены сокращенной конъюнктивной нормальной формы функции0(x1,x2, …,xn). По импли­кант­ной матрице рассмотренным выше способом можно получить минимальные КНФ функцииf(x1,x2, …,xn).

Пример. Найти минимальную КНФ функции, записанной таблицей.

x1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

x2

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

x3

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

x4

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

f(x1, x2, x3, x4)

0

1

1

0

0

1

0

1

0

1

1

1

1

СКНФ эквивалентной функции 1(x1,x2,x3,x4):

СКНФ функции

Сокращенная КНФ функции 0(x1,x2,x3,x4)

Импликантная матрица имеет вид:

Импли-

канты

1

2

3

4

5

х

х

х

х

х

х

х

Минимальная КНФ функции f(x1,x2,x3,x4)

Рассмотренная функция имеет четыре минимальные ДНФ

Здесь больше букв, чем в МКНФ.