Построение сокращенной днф в классе дизъюнктивных нормальных форм
Таблица 27
|
№ |
x1 |
x2 |
x3 |
x1x2 |
x1x3 |
x2x3 |
x1x2x3 |
f(x1, x2, x3) |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
|
2 |
0 |
1 |
0 |
1 |
0 |
2 |
2 |
1 |
|
3 |
0 |
1 |
1 |
1 |
1 |
3 |
3 |
0 |
|
4 |
1 |
0 |
0 |
2 |
2 |
0 |
4 |
0 |
|
5 |
1 |
0 |
1 |
2 |
3 |
1 |
5 |
1 |
|
6 |
1 |
1 |
0 |
3 |
2 |
2 |
6 |
0 |
|
7 |
1 |
1 |
1 |
3 |
3 |
3 |
7 |
1 |
5. Если в одном столбце обведено несколько одинаковых чисел, то вычеркиваем все, кроме одного (табл. 28):
Таблица 28
|
№ |
x1 |
x2 |
x3 |
x1x2 |
x1x3 |
x2x3 |
x1x2x3 |
f(x1, x2, x3) |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
|
2 |
0 |
1 |
0 |
1 |
0 |
2 |
2 |
1 |
|
3 |
0 |
1 |
1 |
1 |
1 |
3 |
3 |
0 |
|
4 |
1 |
0 |
0 |
2 |
2 |
0 |
4 |
0 |
|
5 |
1 |
0 |
1 |
2 |
3 |
1 |
5 |
1 |
|
6 |
1 |
1 |
0 |
3 |
2 |
2 |
6 |
0 |
|
7 |
1 |
1 |
1 |
3 |
3 |
3 |
7 |
1 |
6. С помощью оставшихся обведенных чисел образуем конъюнкции. Для этого переводим каждое число в двоичную систему. Переменную, которой соответствует 1, берем сомножителем без отрицания, 0 – с отрицанием. Составляем дизъюнкцию полученных конъюнкций.
Сокращенная ДНФ имеет вид:
Пример 37.
Построить сокращенную ДНФ функции f=1111010010101111 с использованием минимизационной карты.
Решение.
Строим минимизационную карту (табл. 29) и пошагово выполняем алгоритм.
Шаг 1.
Таблица 29
|
№ |
x1 |
x2 |
x3 |
x4 |
x1x2 |
x1x3 |
x1x4 |
x2x3 |
x2x4 |
x3x4 |
x1x2x3 |
x1x2x4 |
x1x3x4 |
x2x3x4 |
x1x2x3x4 |
f |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
|
2 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
2 |
1 |
0 |
2 |
2 |
2 |
1 |
|
3 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
3 |
1 |
1 |
3 |
3 |
3 |
1 |
|
4 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
2 |
2 |
0 |
2 |
2 |
0 |
4 |
4 |
0 |
|
5 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
2 |
3 |
1 |
2 |
3 |
1 |
5 |
5 |
1 |
|
6 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
3 |
2 |
2 |
3 |
2 |
2 |
6 |
6 |
0 |
|
7 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
3 |
3 |
3 |
3 |
3 |
3 |
7 |
7 |
0 |
|
8 |
1 |
0 |
0 |
0 |
2 |
2 |
2 |
0 |
0 |
0 |
4 |
4 |
4 |
0 |
8 |
1 |
|
9 |
1 |
0 |
0 |
1 |
2 |
2 |
3 |
0 |
1 |
1 |
4 |
5 |
5 |
1 |
9 |
0 |
|
10 |
1 |
0 |
1 |
0 |
2 |
3 |
2 |
1 |
0 |
2 |
5 |
4 |
6 |
2 |
10 |
1 |
|
11 |
1 |
0 |
1 |
1 |
2 |
3 |
3 |
1 |
1 |
3 |
5 |
5 |
7 |
3 |
11 |
0 |
|
12 |
1 |
1 |
0 |
0 |
3 |
2 |
2 |
2 |
2 |
0 |
6 |
6 |
4 |
4 |
12 |
1 |
|
13 |
1 |
1 |
0 |
1 |
3 |
2 |
3 |
2 |
3 |
1 |
6 |
7 |
5 |
5 |
13 |
1 |
|
14 |
1 |
1 |
1 |
0 |
3 |
3 |
2 |
3 |
2 |
2 |
7 |
6 |
6 |
6 |
14 |
1 |
|
15 |
1 |
1 |
1 |
1 |
3 |
3 |
3 |
3 |
3 |
3 |
7 |
7 |
7 |
7 |
15 |
1 |
Шаг 2. Вычеркиваем строки, в которых функция обращается в нуль (табл. 30):
предыдущаяследующая