- •«Дискретная математика»
- •Множества и отношения Тема 1. Основные понятия теории множеств Множества и основные операции над ними
- •Кортеж. Декартово произведение
- •Мощность множества
- •Тема 2. Элементы комбинаторики Комбинаторные вычисления
- •Основные понятия комбинаторики
- •Размещения
- •Перестановки
- •Сочетания
- •Определение числа сочетаний с повторениями
- •Бином Ньютона
- •Решение комбинаторных уравнений
- •Метод включений и исключений
- •Рекуррентные соотношения. Возвратные последовательности
- •Тема 3. Отношения на множествах Отношения. Функции. Взаимно однозначные соответствия
- •Отношения эквивалентности и разбиения. Фактор-множества
- •Отношения порядка
- •Тема 4. Элементы теории графов
- •Определение и примеры графов
- •Связность графа
- •Обзор основных задач теории графов
- •Расчет сетевого графика
- •Резервы сетевого графика
- •Сети Петри
- •Маршруты
- •Степени вершин
- •Раскраски графов
- •Планарные графы
- •Изоморфизм графов
- •Алгебра и топология Тема 1. Элементы общей алгебры Операции на множествах
- •Унарные операции алгебры поворотов квадрата
- •Группа подстановок Галуа
- •Алгебра множеств (алгебра Кантора)
- •Алгебраические системы. Решетки
- •Задание множеств конституентами
- •Задание множества а двоичным числом
- •Пересечение множеств № 12 и № 5
- •Тема 2. Булевы функции
- •Табличное задание булевых функций
- •Задание булевой функции
- •Задание булевых функций одной переменной
- •Задание булевых функций двух переменных
- •Аналитическое задание булевых функций
- •Задание булевой функции голосования
- •Полные системы булевых функций
- •Тема 3. Алгебраические системы Определения и примеры
- •Подсистемы
- •Конгруэнции. Фактор-алгебры. Теорема о гомоморфизме
- •Тема 4. Элементы общей топологии
- •Топологические пространства, сходимость к точке и направленности
- •Фильтры и ультрафильтры
- •Булевы решетки подмножеств
- •Атомы и шкалы решеток подмножеств
- •Алгебра логики Тема 1. Алгебра логики высказываний Формулы алгебры логики
- •Функции алгебры логики
- •Эквивалентность формул
- •Дизъюнктивные и конъюнктивные нормальные формы
- •Минимизация булевых функций в классе днф
- •Карты Карно
- •Логические сети Определение и реализация булевых функций
- •Схемы из функциональных элементов
- •Мультиплексоры
- •Программируемые логические матрицы
- •Тема 2. Логика предикатов Предикаты. Кванторы
- •Формулы логики предикатов
- •Правила преобразования формул логики предикатов
- •Тема 3. Элементы теории доказательств Аксиоматическая (формальная) теория. Исчисление предикатов
- •Метод резолюций
- •Хорновские дизъюнкты
- •Унификация. Метод резолюций в логике предикатов
- •Тема 4. Алгоритмы Понятие об алгоритмах. Схемы алгоритмов Понятие об алгоритме и теории алгоритмов
- •Схемы алгоритмов
- •Описание символов, используемых в схемах алгоритмов
- •Неразрешимые алгоритмические проблемы
- •Конечные автоматы и регулярные языки Тема 1. Синтаксис языков Алфавит, слово, язык
- •Классификация грамматик и языков
- •Регулярные языки и регулярные выражения
- •Тема 2. Переключательные функции и способы их задания Понятие о переключательных функциях
- •Некоторая трехзначная переключательная функция двух переменных
- •Трехзначная пф «дизъюнкция а, b »
- •Трехзначная пф «сумма a, b по модулю 3»
- •Трехзначная пф «а плюс 1 по модулю 3 — циклический сдвиг а»
- •Двоичные переключательные функции и способы их задания
- •Одномерная таблица истинности некоторой функции
- •Двухмерная таблица истинности
- •Основные бинарные логические операции
- •Бинарная конъюнкция
- •Бинарная конъюнкция
- •Бинарная дизъюнкция
- •Бинарная инверсия
- •Импликация
- •Эквиваленция
- •Функциональная полнота систем переключательных функций
- •Линейные функции двух переменных
- •Базисы представления переключательных функций
- •Переключательные функции от трех аргументов
- •Векторы переключательных функций
- •Вектор свойств пф
- •Цель минимизации переключательных функций
- •Тема 3. Элементы теории конечных автоматов Основные определения теории конечных автоматов
- •Понятие о технической интерпретации конечных автоматов
- •Синтез комбинационных автоматов в заданном базисе Синтез комбинационных автоматов
- •Синтез переключательной схемы
- •Синтез в базисе и, или, не
- •Синтез методом каскадов
- •Синтез в базисах и-не, или-не
- •Элементарные автоматы памяти на основе комбинационного автомата и задержки
- •Первичная таблица переходов-выходов
- •Синтез автомата-распознавателя последовательности
- •Первичная таблица переходов-выходов распознавателя 0-1-3-2
- •Тема 4. Элементы теории кодирования
- •Проблема кодирования сообщений
- •Расстояние Хемминга
- •Групповые коды
- •Хемминговы коды
Дизъюнктивные и конъюнктивные нормальные формы
Если х — логическая переменная, δ ∈ {0, 1}, то выражение
называется литерой . Литеры x и называются контрарными.
Элементарной конъюнкцией или конъюнктом называется конъюнкция литер. Элементарной дизъюнкцией или дизъюнктом называется дизъюнкция литер.
Дизъюнкция конъюнктов называется дизъюнктивной нормальной формой (ДНФ); конъюнкция дизъюнктов называется конъюнктивной нормальной формой (КНФ).
Пример 4.2. Формула
—
ДНФ, формула
—
КНФ, а формула
является одновременно КНФ и ДНФ.
Теорема 4.1. 1. Любая формула эквивалентна некоторой ДНФ .
2. Любая формула эквивалентна некоторой КНФ .
Опишем алгоритм приведения формулы к ДНФ.
1. Выражаем все логические операции, участвующие в построении формулы, через дизъюнкции, конъюнкции и отрицания, используя эквивалентности (φ → ψ) ~ (¬ φ ∨ ψ), (φ ↔ ψ) ~ (¬ φ ∨ ψ) ∧ (¬ ψ ∨ φ ) и определения операций |, ↓ , и ⊕ .
2. Используя законы де Моргана, переносим все отрицания к переменным и сокращаем двойные отрицания по правилу ¬¬ x ~ x .
3. Используя закон дистрибутивности (φ ∧ (ψ ∨ χ)) ~ ((φ ∧ ψ) ∨ (φ ∧ χ)), преобразуем формулу так, чтобы все конъюнкции выполнялись раньше дизъюнкций.
В результате применения пп. 1–3 получается ДНФ данной формулы.
Совершенной ДНФ называется дизъюнкция
некоторых конституент единицы, среди
которых нет одинаковых, а совершенной
КНФ называется конъюнкция некоторых
конституент нуля, среди которых нет
одинаковых. Таким образом, СДНФ (СКНФ)
есть ДНФ (КНФ), в которой в каждый конъюнкт
(дизъюнкт) каждая переменная xi
из набора {x
1
, x
2
, …, xn
} входит ровно один раз, причем
входит либо сама xi
, либо ее отрицание
.
Для решения задачи нахождения СДНФ и СКНФ, эквивалентных исходной формуле φ , предварительно рассмотрим разложения булевой функции f (x 1 , x 2 , …, xn ) по k переменным (для определенности по x 1 , x 2 , …, xk ) — разложения Шеннона .
Теорема 4.2 (первая теорема Шеннона).
Любая булева функция f (x 1 , x 2 , …, xn ) представима в виде разложения Шеннона:
Теорема 4.3 (вторая теорема Шеннона).
Любая булева функция f (x 1 , x 2 , …, xn ) представима в виде разложения Шеннона:
Минимизация булевых функций в классе днф
Каждая формула имеет конечное число вхождений переменных. Под вхождением переменной понимается место, которое переменная занимает в формуле. Задача заключается в том, чтобы для данной булевой функции f найти ДНФ, представляющую эту функцию и имеющую наименьшее число вхождений переменных.
Элементарным произведением называется конъюнкт, в который любая переменная входит не более одного раза.
Пример 6.1. Формула
—
элементарное произведение, а формула
элементарным
произведением не является.
Формула φ(x
1
, x
2
, …, xn
) называется импликантой
формулы ψ(x
1
, x
2
, …, xn
), если φ — элементарное произведение
и φ ∧ ψ ~ φ
, т. е. для соответствующих формулам
φ и ψ функций
справедливо
неравенство
Формула φ(x
1
, x
2
, …, xn
) называется импликантой
функции f , если
φ — импликанта совершенной ДНФ,
представляющей функцию f
. Импликанта
формулы
ψ называется простой , если после
отбрасывания любой литеры из φ не
получается формула, являющаяся
импликантой формулы ψ.
Дизъюнкция всех простых импликант данной формулы (функции) называется сокращенной ДНФ .
Теорема 6.1. Любая булева функция , не являющаяся константой 0, представима в виде сокращенной ДНФ .
Сокращенная ДНФ может содержать лишние импликанты, удаление которых не меняет таблицы истинности. Если из сокращенной ДНФ удалить все лишние импликанты, то получается ДНФ, называемая тупиковой .
Заметим, что представление функции в виде тупиковой ДНФ в общем случае неоднозначно.
Выбор из всех тупиковых форм формы с наименьшим числом вхождений переменных дает минимальную ДНФ (МНДФ ).
Рассмотрим метод Квайна для нахождения МДНФ, представляющей данную булеву функцию. Определим следующие три операции:
— операция полного склеивания —
;
— операция неполного склеивания —
;
— операция элементарного поглощения
—
.
Теорема 6.2 (теорема Квайна). Если исходя из совершенной ДНФ функции произвести все возможные операции неполного склеивания , а затем элементарного поглощения , то в результате получится сокращенная ДНФ , т. е. дизъюнкция всех простых импликант .
В силу принципа двойственности для булевых алгебр все приведенные понятия и рассуждения очевидным образом можно преобразовать для нахождения минимальных конъюнктивных нормальных форм (МКНФ).
