Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
19
Добавлен:
28.06.2014
Размер:
68.61 Кб
Скачать

Лекция 1. Минимизация частичных функций и систем булевых функций

  1. Минимизация частичных функций (Постановка задачи)

Частичной функцией называется множество F функций алгебры логики, принимающих на наборах значений переменных из множества M0 значение 0, а на наборах из множества M1  значение 1; M0  M1  {0,1}n , M0  M1 =. Из этого множества необходимо выбрать функцию f, имеющую наиболее простую минимальную д.н.ф. и построить эту минимальную д.н.ф. Эта задача возникает в практике логического проектирования (или программирования), когда наборы значений переменных, не принадлежащие объединению M0  M1 не могут возникнуть в процессе управления или вычислений.

  1. Метод минимизации частичной функции

Множество F можно рассматривать как интервал булевой решетки . Этот интервал описывается вектором

. (1)

Инфимум этого множества получается заменой значений x в векторе (1) значениями 0, а супремум получается заменой значений x значениями 1.

Эти два вектора можно рассматривать как векторы значений функций алгебры логики f0 и f1. Любая из функций множества F является имплициентой функции f0 , и импликантой функции f1, значит и для искомой функции f выполняются условия

f0 f= f0 ; f1 f= f .

Простые импликанты функции f являются одновременно простыми импликантами функции f1, в то же время простые импликанты  функции f1, такие, что f0=0 не должны входить в сокращенную д.н.ф. функции f, имеющей наиболее простую минимальную д.н.ф.

Дизъюнкция всех простых импликант функции f1, за исключением такиx, что f0=0, и является сокращенной д.н.ф. искомой функции f. Минимальная д.н.ф. находится с помощью импликантной таблицы, как и в случае минимизации функции алгебры логики, для которой построена сокращенная д.н.ф.

Из изложенного вытекает следующий алгоритм минимизации частичной функции.

ВХОД: множество F функций алгебры логики, заданное вектором (1).

ВЫХОД: минимальная д.н.ф. функции f, имеющей наиболее простую такую д.н.ф.

  1. Образовать функции f0 и f1, заменив в векторе (1) компоненты x значениями 0 и 1 соответственно.

  2. Найти все простые импликанты функции f1, например, методом Блека-Порецкого (итерация неполных склеиваний и поглощений).

  3. Построить множество всех простых импликант некоторой имплициенты f’ искомой функции f , удалив из множества п.2 функции  такие, что f0=0.

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

Пример. .

1) f0 = (0,0,0,0,1,0,0,1), f1=(0,1,0,1,1,0,1,1);

2) {(0,x,1),(x,1,1),(1,1,x),(1,x,0));

3) { (x,1,1),(1,1,x),(1,x,0));

4) {(1,1,x),(1,x,0)) или

{ (x,1,1), (1,x,0)).

  1. Минимизация систем булевых функций (Постановка задачи)

Дана система функций алгебры логики

F={f1,…, fm}.

Дизъюнктивной нормальной формой системы F называется система д.н.ф. ее функций.

Простой импликантой системы F называется элементарная конъюнкция, являющаяся простой импликантой некоторой функции этой системы или простой импликантой конъюнкции двух или более ее функций.

Сокращенной д.н.ф. системы F называется система д.н.ф. ее функций, содержащих все простые импликанты системы, являющиеся импликантами соответствующих функций.

Тупиковой д.н.ф. системы F называется система д.н.ф. ее функций, образованных простыми импликантами системы, из которых не может быть удалена ни одна импликанта.

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

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

Утверждение. Минимальная (кратчайшая) д.н.ф. системы F является тупиковой д.н.ф.

Требуется найти минимальную (или кратчайшую д.н.ф. системы ФАЛ F).

  1. Метод минимизации систем булевых функций

Построим импликантные таблицы для каждой ФАЛ системы. Столбцы таблицы представляют элементы области единичных значений соответствующей ФАЛ. Строки таблицы представляют простые импликанты системы, являющиеся импликантами этой ФАЛ. (Эти импликанты образуют д.н.ф. функции в сокращенной д.н.ф. системы F).

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

Пример. В таблице представлена система ФАЛ F={f1 , f2 , f3}, ее простые импликанты, совокупности простых импликант системы, являющихся импликантами конкретных ее функций, а также простые импликанты системы, образующие д.н.ф. функций в одной из минимальных систем ФАЛ (их можно получить, построив три импликантные таблицы).

x1

x2

x3

f1

f2

f3

f1 f2

f1 f3

f2 f3

f1 f2 f3

0

0

0

0

0

1

0

0

0

0

0

0

1

1

1

0

1

0

0

0

0

1

0

1

1

0

1

0

0

0

0

1

1

1

1

0

1

0

0

0

1

0

0

1

0

1

0

1

0

0

1

0

1

1

0

1

0

1

0

0

1

1

0

1

0

1

0

1

0

0

1

1

1

1

1

1

1

1

1

1

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

системы ФАЛ

{f1 , f2 , f3}

1

2

3

23

1’2

1’3

2’3’

1

23

1’2

1’3

1

123

123

Простые импликанты системы ФАЛ, являющиеся импликантами функций f1 , f2 и f3

123,

23

1’2

1’3

123

123

Простые импликанты системы ФАЛ,

образующие д.н.ф.

функций в минимальной системе ФАЛ

1

23

1’2

1’3

23

1’2

1’3

2’3’

1

Используются простые импликанты системы: 1, 23,1’2,1’3, 2’3’;

Не используются: 2,3,123,23, 1’2,1’3.

Обратите внимание, что минимальная д.н.ф. системы включает д.н.ф. функции f1 = x1  x2x3 x1’x2 x1’x3, более сложную, чем минимальная д.н.ф. этой функции

f1 =x1  x2 x3 .

4

Соседние файлы в папке Лекции