Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Булева_алгебра.doc
Скачиваний:
21
Добавлен:
01.03.2025
Размер:
2.54 Mб
Скачать

7.3. Преобразование кнф в днф и днф в кнф Преобразование кнф в днф

Это преобразование проводится достаточно просто:

– Раскрыть скобки и упростить.

Пример 1:

Преобразование днф в кнф

Здесь возможны два варианта.

Первый вариант основан на многократном применении дистрибутивного закона дизъюнкции относительно конъюнкции п. 1.6. 8,б.

Пример 2:

Сначала распределяем , затем и, наконец, удаляем 1.

Второй вариант сложнее. Порядок действий здесь таков.

1. Взять двойное отрицание от всего выражения;

2. Используя одно отрицание и законы де Моргана, перевести исходное выражение под вторым отрицанием в КНФ (второе отрицание сохранить);

3. Перевести полученную КНФ под общим отрицанием в ДНФ – раскрыть скобки и упростить. Получим ДНФ с общим отрицанием;

4. Используя второе отрицание и законы де Моргана перевести результат предыдущего действия в КНФ.

Пример 3:

7.4. Доказательства равенства логических функций

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

а) Таблиц истинности – ТИ1 и ТИ2;

б) СДНФ – СДНФ1 и СДНФ2;

в) СКНФ – СКНФ1 и СКНФ2;

г) Полиномов Жегалкина.

Сравнение логических функций с помощью таблиц истинности – это стандартный прием, а почему сравнение логических функций удобно проводить в совершенных формах или в форме полинома Жегалкина? Ответ прост: логическая функция может иметь много формул, ее представляющих, но совершенные формы и полином жегалкина у нее единственны.

Замечание: От СДНФ легко можно перейти к СКНФ, (а от СКНФ к СДНФ) – если СДНФ имеет k конъюнкций, то СКНФ будет иметь 2nk дизъюнкций, где n – число переменных (если СКНФ имеет k дизъюнкций, то СДНФ будет иметь 2nk конъюнкций).

Пример: Доказать, что .

  1. Раскрываем скобки в левой части и упрощаем

В результате получили выражение идентичное правой части.

  1. Переход к СДНФ удобно производить от ДНФ.

Если установить порядок входных переменных xyz, z – младшая переменная, то единичными наборами (для которых определена СДНФ) являются 7, 6, 5, 3, 1 (определяем по значениям переменных), а нулевыми наборами (для которых надо написать произведение сумм) будут 0, 2, 4, поэтому для СКНФ получаем

Не забывайте: если в СКНФ переменная без отрицания, то в соответствующем входном наборе она имеет значение 0, если с отрицанием, то 1.

  1. Переход к СКНФ удобнее производить от КНФ

Как видим, результаты преобразований совпали, следовательно, тождество доказано.

  1. По СДНФ или по СКНФ легко построить таблицу истинности (табл. 35).

7.5. Разложение логических функций по переменным

В п. 1.6. (правила 13 (1) и (2)) показаны два варианта разложения логической функции по переменным. При разложении логической функции по всем переменным по варианту (1) получается СДНФ, а по варианту (2) – СКНФ. Реализовать эти разложения можно либо последовательно, либо параллельно. В качестве примера рассмотрим разложение функции

Таблица 35

x

y

z

f

0

0

0

0

0

1

0

0

1

1

2

0

1

0

0

3

0

1

1

1

4

1

0

0

0

5

1

0

1

1

6

1

1

0

1

7

1

1

1

1