
- •Лекция 1. Составные высказывания. Основные понятия
- •Составные высказывания
- •Лекция 2. Основные логические операции. Формулы логики. Дизъюнктивная конъюнктивная нормальные формы. Логические операции.
- •Стрелка Пирса - ↓.
- •Формулы логики высказываний
- •Лекция 3. Изучение законов логики. Равносильные преобразования. Законы логики (свойства логических операций)
- •Логическое следствие
- •Лекция 4. Булевы функции.
- •Лекция 5. Совершенная дизъюнктивная и конъюнктивная нормальные формы (сднф и скнф)
- •Лекция 6. Понятие полноты множества функций. Замкнутые классы.
- •Лекция 7. Множества и подмножества.
- •Сравнение множеств.
- •Лекция 8. Операции над множествами
- •Свойства операций над множествами.
- •Лекция 9. Понятие предикат.
- •Лекция 10. Логические операции над предикатами. Операции над предикатами.
- •Кванторы.
- •Операции с кванторами.
- •Лекция 11. Понятие бинарного отношения и его свойства. Отношения.
- •Отношения на множестве.
- •Виды отношений:
- •Инъекция.
- •Сюръекция.
- •Биекция.
- •Лекция 12. Отношение эквивалентности.
- •Лекция 13. Композиция отображений Равенство соответствий
- •Произведение соответствий (композиция)
- •Композиция отображений. Ее свойства
- •Лекция 14. Операции над подстановками.
- •1: Коммутативность.
- •2: Ассоциативност ь.
- •3: Единица.
- •4: Обратный элемент.
- •Лекция 15. Понятие вычета по модулю n. Операции над вычетами. Шифрование.
- •Лекция 16. Метод математической индукции
- •Лекция 17. Генерирование к-элементных подмножеств данного множества
- •Размещения.
- •Формула числа размещений без повторений.
- •Другой вид формулы числа размещений.
- •Перестановки.
- •Свойства сочетаний.
- •Размещения с повторениями.
- •Задача о числе подмножеств данного множества.
- •Перестановки с повторениями.
- •Сочетания с повторениями.
- •Лекция 18. Понятие графа. Способы задания графа. Методика выделения компонента связности в графе
- •Смежность и инцидентность
- •Лекция 19. Изоморфные графы. Эйлеровы графы. Изоморфизм графов
- •Требования к представлению графов
- •Эйлеровы графы Вернемся к историческому примеру о Кенигсбергских мостах. В каком случае в графе можно найти цикл, в котором каждое ребро участвует ровно один раз?
- •Лекция 20. Плоские графы. Деревья и их свойства
- •Лекция 21. Понятие ориентированного графа
- •Орграфы и матрицы
- •Лекция 22. Сильносвязный орграф. Эйлеровы орграфы Ориентированные эйлеровы графы
- •Лекция 23. Базовые множества и принцип работы автоматов
- •Минимизация автоматов
- •Алгоритм минимизации автомата Мили
Лекция 5. Совершенная дизъюнктивная и конъюнктивная нормальные формы (сднф и скнф)
Дизъюнктивные нормальные формы
Определение. Элементарной конъюнкцией называется конъюнкция литералов (переменных или их отрицаний), взятых не более чем по одному разу.
Например, конъюнкции
,
,
1 являются элементарными. Причем первая
элементарная конъюнкция имеет ранг
(число литералов) 2, вторая
3, а третья
0.
Следующие конъюнкции:
,
,
,
,
0 не являются элементарными.
Определение. Элементарная конъюнкция булевой функции , содержащая n литералов, называется полной (или минтермом).
Определение. Дизъюнкция любого конечного множества элементарных конъюнкций булевой функции F называется дизъюнктивной нормальной формой (ДНФ) функции F. Число элементарных конъюнкций (слагаемых, термов), составляющих ДНФ, называется длиной ДНФ.
Например, ДНФ
имеет длину, равную 3.
Для произвольной булевой функции F существует, вообще говоря, много различных реализующих ее ДНФ, отличающихся друг от друга длиной, числом вхождений литералов и т.д.
Определение. Две (или несколько) ДНФ, реализующих одну и ту же булеву функцию F , называются эквивалентными (или равносильными).
Например, для
функции
,
заданной булевым вектором w(F)=(00100111),
существуют следующие эквивалентные
ДНФ:
,
(1)
,
(2)
,
(3)
,
(4)
.
(5)
Определение. ДНФ булевой функции F, состоящая только из полных элементарных конъюнкций, называется совершенной ДНФ (СДНФ).
Например, (1) СДНФ функции F.
Отметим, что СДНФ является единственной (с точностью перестановки слагаемых) для конкретной булевой функции F .
Любую булеву функцию F, заданную формулой, можно с помощью основных равносильностей преобразовать к ДНФ, а затем к СДНФ.
Пример. Привести
к виду СДНФ булеву функцию F=
.
Решение. С помощью основных равносильностей преобразуем к ДНФ:
=
=
=
=
=
ДНФ.
Применяя закон
склеивания (в обратном порядке:
),
дополняем конъюнкции
,
до полных элементарных конъюнкций:
=
.
Так как
,
то после сокращения одинаковых конъюнкций,
получаем СДНФ: F=
.
Составим таблицу истинности для булевой функции F= (функция из предыдущего примера). Отметим связь между СДНФ и таблицей истинности.
Таблица истинности СДНФ
|
|
|
|
|
F= |
Элементарные конъюнкции СДНФ |
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
|
0 |
1 |
1 |
1 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
1 |
|
1 |
0 |
1 |
0 |
0 |
0 |
|
1 |
1 |
0 |
0 |
1 |
0 |
|
1 |
1 |
1 |
0 |
0 |
1 |
|
В общем случае также можно вывести закономерности построения СДНФ по таблице истинности булевой функции, что является очень удобным.
СДНФ состоит из дизъюнкций полных элементарных конъюнкций наборов переменных , на которых функция принимает значение 1. Переменные берутся без отрицания, если им соответствует в таблице истинности 1, с отрицанием, если 0.
Пример. По таблице истинности составить СДНФ
|
|
|
F |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
Решение:
СДНФ:
.
Пример.
Для булевой функции, заданной в виде
ДНФ
,
составить СДНФ и выполнить проверку
по таблице истинности.
Решение: Применяя закон склеивания (в обратном порядке: ), дополняем конъюнкции, до полных элементарных конъюнкций. Конъюнкцию дополняем в два этапа, так как не является элементарной конъюнкцией:
.
Так как , после сокращения одинаковых конъюнкций получаем СДНФ:
.
Таблица истинности СДНФ
|
|
|
|
|
|
Элементарные конъюнкции СДНФ |
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
0 |
0 |
0 |
|
0 |
1 |
0 |
1 |
1 |
1 |
|
0 |
1 |
1 |
0 |
0 |
0 |
|
1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
0 |
1 |
0 |
0 |
1 |
|
1 |
1 |
0 |
1 |
1 |
1 |
|
1 |
1 |
1 |
0 |
0 |
1 |
|
Конъюнктивные нормальные формы
Определение. Элементарной дизъюнкцией называется дизъюнкция литералов (переменных или их отрицаний), взятых не более чем по одному разу.
Например, дизъюнкции
,
,
1 являются элементарными. Причем первая
элементарная дизъюнкция имеет ранг
(число литералов) 2, вторая
3, а третья
0.
Следующие дизъюнкции:
,
,
,
,
0 не являются элементарными.
Определение. Элементарная дизъюнкция булевой функции , содержащая n литералов, называется полной.
Определение. Конъюнкция любого конечного множества элементарных дизъюнкций булевой функции F называется конъюнктивной нормальной формой (КНФ) функции F. Число элементарных дизъюнкций, составляющих КНФ, называется длиной КНФ.
Например, КНФ
имеет длину, равную 3.
Для произвольной булевой функции F существует, вообще говоря, много различных реализующих ее КНФ, отличающихся друг от друга длиной, числом вхождений литералов и т.д.
Определение. Две (или несколько) КНФ, реализующих одну и ту же булеву функцию F , называются эквивалентными (или равносильными).
Определение. КНФ булевой функции F, состоящая только из полных элементарных дизъюнкций, называется совершенной КНФ (СКНФ).
Например,
-
СКНФ функции F,
заданной вектором значений таблицы
истинности w(F)=(01100111).
Отметим, что КДНФ является единственной (с точностью перестановки множителей) для конкретной булевой функции F .
Любую булеву функцию F, заданную формулой, можно с помощью основных равносильностей преобразовать к КНФ, а затем к СКНФ.
Пример. Привести
к виду СКНФ булеву функцию F=
.
Решение. С помощью основных равносильностей преобразуем к КНФ:
= = = =
=
― КНФ.
В данном примере сначала выразили функцию только с помощью операций дизъюнкции, конъюнкции и отрицания, а затем несколько раз применили формулу , группируя переменные таким образом, чтобы каждый раз одна скобка в конъюнкции сокращалась по формуле .
Применяя закон
склеивания (в обратном порядке:
),
дополняем дизъюнкции
,
до полных элементарных дизъюнкций:
.
Так как
,
то после сокращения одинаковых конъюнкций
получаем СКНФ: F
.
Составим таблицу истинности для булевой функции F= (функция из предыдущего примера). Отметим связь между СКНФ и таблицей истинности.
Таблица истинности СКНФ
|
|
|
|
|
|
Элементарные дизъюнкции СКНФ |
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
|
0 |
1 |
1 |
1 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
1 |
|
1 |
0 |
1 |
0 |
0 |
0 |
|
1 |
1 |
0 |
0 |
1 |
0 |
|
1 |
1 |
1 |
0 |
0 |
1 |
|
В общем случае также можно вывести закономерности построения СКНФ по таблице истинности булевой функции, что является очень удобным.
СКНФ состоит из конъюнкций полных элементарных дизъюнкций наборов переменных , на которых функция принимает значение 0. Переменные берутся без отрицания, если им соответствует в таблице истинности 0, с отрицанием, если 1.
Пример. По таблице истинности составить СКНФ.
|
|
|
F |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Решение:
F
.
Пример. Для булевой функции, заданной в виде ДНФ , составить КНФ, СКНФ и выполнить проверку по таблице истинности.
Решение:
Применяя формулу
,
из ДНФ получаем КНФ:
.
Применяя закон склеивания (в обратном порядке: ), дополняем дизъюнкции , до полных элементарных дизъюнкций:
.
Так как , то после сокращения одинаковых дизъюнкций получаем СКНФ:
.
Таблица истинности СКНФ
|
|
|
|
|
|
Элементарные дизъюнкции СКНФ |
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
0 |
0 |
0 |
|
0 |
1 |
0 |
1 |
1 |
1 |
|
0 |
1 |
1 |
0 |
0 |
0 |
|
1 |
0 |
0 |
1 |
0 |
1 |
|
1 |
0 |
1 |
0 |
0 |
1 |
|
1 |
1 |
0 |
1 |
1 |
1 |
|
1 |
1 |
1 |
0 |
0 |
1 |
|