Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UchebnoePosobie.doc
Скачиваний:
72
Добавлен:
11.11.2019
Размер:
6.36 Mб
Скачать

1.5.8. Минимизация булевых функций.

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

Сокращённая нормальная форма есть результат поиска элементарных конъюнкций (дизъюнкций), равносильных с элементарными конъюнкциями (дизъюнкциями) совершенной нормальной формы, но имеющих меньшее число двоичных переменных.

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

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

Если существуют булевые функции f и f¢, которые при одном и том же наборе булевых переменных имеют одинаковое значение f(s1;s2;…sn)=1 и f¢(s1;s2;…sn)=1, но f¢ имеет меньшее число булевых переменных, то f¢(s1;s2;…;sn)®f(s1;s2;…;sn)=1. В этом случае говорят, что f¢(s1;s2;…;sn) имплицирует f(s1;s2;…;sn) и ее называют импликантой.. Функция f¢, имеющая меньшее число двоичных переменных, покрывает функцию f(x1; x2;…x n) для нескольких наборов булевых переменных.

Пусть даны f(x1; x2; x3)=x1×x2×x3Úx1×x2×`x3Ú`x1×x2×x3Ú`x1×x2×`x3 и

f1(x1 ;x2; x3)=x1×x2×(x3Ú`x3)Ú`x1×x2×(x3Ú`x3)Úx2×x3×(x1Ú`x1)Úx2×`x3×(x1Ú`x1).

Если принять во внимание, что (x1Ú`x1)=1 и (x3Ú`x3)=1, то функция f1(x1; x2; x3) эквивалентна функции f1¢(x1; x2; x3)=x1×x2Ú`x1×x2 Úx2×x3 Úx2×`x3. Каждая элементарная конъюнкция функции f1¢(x1; x2; x3) покрывает две элементарные конъюнкции функции f(x1; x2; x3).

Следовательно, f1¢(x1; x2; x3)®f(x1; x2; x3)=1, т. е. f1¢(x1; x2; x3) является импликантой для функции f(x1; x2; x3).

Если дана функция f2(x1; x2; x3)=x2×(x1Ú`x1)Úx2×(x3Ú`x3), то можно найти эквивалентную ей функцию f2¢(x1; x2; x3)=x2Úx2=x2. Функция f2¢(x1; x2; x3)=x2 покрывает четыре элементарные конъюнкции функции f(x1; x2; x3). Следовательно, f2¢(x1; x2; x3)®f(x1; x2; x3)=1, т. е. функция f2¢(x1; x2; x3) является простой импликантой для функции f(x1; x2; x3).

Если существуют функции f и f¢, которые при одном и том же наборе булевых переменных имеют значения f(s1; s2;...sn)=0 и f¢(s1; s2;… sn)=0, но f¢ имеет меньшее число булевых переменных, то f(s1; s2;…sn)®f¢(s1; s2;…sn)=1. В этом случае говорят, что f¢(s1; s2;…sn) имплицируется f (s1; s2;…sn) и ее называют имплицентой. Функция f¢, имеющая меньшее число двоичных переменных, покрывает функцию f(x1; x2;…x n) для нескольких наборов булевых переменных.

Пусть даны f(x1; x2; x3)=(`x1Úx2Úx3)×(`x1Úx2Ú`x3)×(x1Úx2Ú`x3

××(x1Úx2Úx3) и f1(x1; x2; x3)=(`x1Úx2Úx3×`x3)×(x1Úx2Ú`x3×x3)×(x2Ú`x3Úx1×`x1

×(x2Úx3Úx1×`x1).

Если принять во внимание, что(x1×`x1)=0 и (x3×`x3)=0, то функция f1(x1; x2; x3) эквивалентна функции f1¢(x1; x2; x3)= (`x1Úx2)×(x1Úx2)×(x2Ú`x3)×(x2Úx3). Каждая элементарная дизъюнкция функции f1¢(x1;x2;x3) покрывает две элементарных дизъюнкции f(x1;x2;x3)=0.Следовательно, f (x1; x2; x3)®f1¢ (x1; x2; x3)=1, т. е. f1¢(x1; x2; x3) является имплицентой для функции f(x1; x2; x3).

Если дана функция f2(x1; x2; x3)= f2(x1;x2;x3)=(x2Úx1×`x1)×(x2Úx3×`x3), то можно найти эквивалентную ей функцию f2¢(x1;x2;x3)=x2×x2=x2. Функция f2¢(x1; x2; x3)=x2 покрывает четыре элементарные дизъюнкции функции f(x1; x2; x3).

Следовательно, f(x1; x2; x3)®f2¢ (x1; x2; x3)=1, т. е. функция

f2¢(x1; x2; x3) является простой имплицентой для функции f(x1; x2; x3).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]