- •Раздел II. Математическая логика
- •Глава 1. Алгебра логики
- •1.1. Объекты изучения алгебры логики. Булевы константы, переменные и векторы
- •1.2. Булевы функции, способы их задания. Элементарные функции. Алгебра логики, ее формулы
- •Задание функции при помощи вектора истинности
- •Матричный способ
- •Задание с помощью полного бинарного дерева
- •Формульное задание
- •1.3. Моделирование составных высказываний при помощи формул алгебры логики
- •1.4. Эквивалентность формул. Тавтологии. Законы логики. Двойственность
- •1.5. Специальные формульные представления булевых функций
- •1.5.1. Конъюнкции и дизъюнкции над множеством переменных. Нормальные формы
- •1.5.2. Конституенты единицы. Совершенные дизъюнктивные и веббовы нормальные формы
- •1.5.3. Конституенты нуля. Совершенные конъюнктивные и шефферовы нормальные формы
- •1.5.4. Полиномы Жегалкина
- •1.6. Минимизация нормальных форм булевых функций
- •1.5.1. Метод покрытий
- •1.6.2. Метод минимизирующих карт
- •1.7. Частично определенные функции. Их минимальное доопределение
- •Контрольные задания по теме функции алгебры логики. Нормальные формы. Полином жегалкина
1.5.3. Конституенты нуля. Совершенные конъюнктивные и шефферовы нормальные формы
Как отмечалось, при помощи СДНФ и СВНФ наиболее просто выражаются функции, у которых в векторе истинности преобладают нули. Если в векторе истинности больше единиц, то используют аналогичные совершенные конъюнктивные и шефферовы формы, в которых в качестве внутренних функций входят конституенты нуля.
Определение. Пусть на наборе n =(1 , ... ,n ) булева функция f (х n) принимает значение 0. Дизъюнктивной конституентой нуля функции f назовем дизъюнкцию вида
D = х1 1 ... хn n ,
где хi i = хi при i =1 и хi i = хi при i =0 (1 i n).
Аналогично шефферовой конституентой нуля функции f назовем подстановку вида S = (х1 1 , ... , хnn) .
Как дизъюнктивная, так и шефферова конституенты нуля, соответствующие набору n , принимают значение 0 только на нем. На всех остальных наборах они равны 1.
Пример 3. Построить все дизъюнктивные и шефферовы конституенты нуля функции, заданной таблицей истинности.
x |
y |
z |
F |
Д 1 |
Д 2 |
Д 3 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Решение. Функция принимает значение 0 на наборах (0, 1, 0), (0, 1, 1), (1, 0, 1). На наборе (0, 1, 0) дизъюнктивная конституента нуля Д1= хуz, на наборе (0, 1, 1) Д2=хуz , на наборе (1, 0, 1) Д3 =хуz . В таблице дополнительно указаны векторы истинности конституент Д1 — Д3 . Каждая из них выделяет ровно один из нулей в векторе истинности исходной функции.
Шефферовы конституенты получаем из Д1 — Д3 , инвертируя внутренние переменные в них и заменяя дизъюнкцию функцией Шеффера. В итоге получим: S1 = (х, у,z); S2 = (х, у, z); S3 = (х,у, z). Поскольку преобразование эквивалентное, векторы истинности S1 — S3 совпадают с векторами для Д1 — Д3 .
Определение. Совершенной конъюнктивной нормальной формой (СКНФ) булевой функции f (х n) называют выражение вида:
f = D1 ... Dр,
где D1 , ... , Dр — дизъюнктивные конституенты нуля функции.
Совершенной шефферовой нормальной формой (СШНФ) булевой функции f ( х n) называют выражение вида:
f = ( S1, ... , Sр ) ,
где S1, ... , Sр — шефферовы конституенты нуля функции f (х n).
СКНФ, как и все КНФ, являются функциями в базисном наборе {, , }. СШНФ можно наряду с основным представлением задать в однофункциональном базисном наборе {}.
Пример 4. Построить СКНФ и СШНФ (для каждого из базисных наборов {, } и { }) функции f = (11001011) из Примера 3.
Решение.
1. Дизъюнктивные конституенты нуля Д1 — Д3 найдены в Примере 3. СКНФ получаем, логически умножая их:
f = (х у z) (х у z) (х у z).
2. Шефферовы конституенты S1 — S3 также были найдены в Примере 3. СШНФ в базисном наборе {, } получаем, подставляя S1 — S3 в функцию Шеффера с последующим её инвертированием:
f = ( (x, y, z), (x, y, z), (x,y, z)) .
СШНФ в базисном наборе {}имеет вид:
f = [ ( ((x,х), y, (z,z)), ((x,x), y, z), ( x,( y,y), z )), ( ((x,х), y, (z,z)), ((x,x), y, z), (x,( y,y), z))] .
Искомые формы построены.
СКНФ и СШНФ существуют только для функций, не равных тождественной единице. В случае, когда вектор истинности функции имеет только один нуль, ее СКНФ и СШНФ являются вырожденными.
Рассмотренные выше ДНФ, КНФ, ВНФ и ШНФ допускают неединственное представление функций. Совершенные формы являются их частными случаями.