
- •Дискретная математика
- •Глава 1. Элементы теории множеств.
- •1.1. Множества.
- •1.2. Отношения.
- •1.3. Отображение. Функция.
- •Глава 2. Математическая логика
- •2.1. Булевы функции.
- •2.2. Нормальные формы.
- •2.3. Минимизация нормальных форм.
- •2.4. Контактные схемы.
- •2.5. Логика предикатов.
- •2.6. Решение логических задач с помощью булевых функций.
- •Глава 3. Комбинаторика.
- •3.1.Основные правила комбинаторики.
- •3.2.Перестановки.
- •3.3.Размещения.
- •3.4. Сочетания.
- •Глава 4. Теория графов.
- •4.1. Основные понятия теории графов.
- •4.2 . Задача определения кратчайшего пути.
- •4.3. Задача о кратчайшем пути между двумя пунктами.
- •4.4.Построение коммуникационной сети минимальной длины.
- •Задача определения максимального потока.
- •Литература
2.2. Нормальные формы.
Для любой булевой функции можно построить таблицу истинности. Но и по таблице истинности можно восстановить булеву функцию. Различают совершенную дизъюнктивную (СДНФ) и совершенную конъюнктивную (СКНФ) нормальные формы. Обе они являются восстановленными булевыми функциями из исходной таблицы истинности.
Для получения СДНФ в таблице выбирают истинностные значения функции (она не должна быть тождественно-ложной) и соответствующие этим значениям переменные. Если значение переменной равно 0, то ее берут с отрицанием, если 1, то без отрицания и соединяют их конъюнкциями. Таким образом, организуются элементарные конъюнкции. Дизъюнкции элементарных конъюнкций образуют СДНФ.
Пример (*): Дана таблица истинности. Построить СДНФ.
x |
y |
z |
|
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
Функция принимает значение 1 на наборах значений переменных 101, 010, 001.
Этим наборам соответствуют элементарные
конъюнкции:
.
В итоге получаем СДНФ:
.
Для получения СКНФ среди значений функции из таблицы истинности выбирают нулевые (функция не должна быть тождественно-истинной) и соответствующие им переменные соединяют в элементарные дизъюнкции, причем, если переменная имеет 0 значение, то она берется без отрицания, если – 1 -- с отрицанием. Далее элементарные дизъюнкции соединяются знаками конъюнкции, и получается СКНФ.
Пример: Используя таблицу истинности предыдущего примера, составить СКНФ.
Функция принимает 0-значения при следующих
комбинациях значений переменных: 111,
110, 100, 011, 000. Этим комбинациям соответствуют
следующие элементарные дизъюнкции:
.
Тогда СКНФ запишется в виде:
.
Задачи.
1. Построить СДНФ и СКНФ для функции, таблица истинности которой имеет следующий вид:
-
x
y
z
f(x,y,z)
1
1
1
0
1
1
0
0
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
0
1
1
0
0
0
0