- •Содержание
- •Введение
- •1. Функции алгебры логики и их свойства
- •1.1. Функции одной переменной
- •1.2. Функции двух переменных
- •1.4. Обратные и инверсные логические функции
- •1.4.1. Обратные функции
- •Прямое соответствие (рис. 2,а)
- •Обратное соответствие (рис. 2,б)
- •1.4.2. Инверсные функции
- •1.5. Приоритеты операций
- •1.6. Законы и тождества булевой алгебры
- •1.7. Вопросы для самоконтроля
- •2. Формы задания логических функций
- •2.1. Словесная форма
- •2.2. Табличная форма
- •2.3. Задание формулой
- •2.3.1. Совершенная дизъюнктивная нормальная форма
- •Выводы:
- •Правила составления сднф
- •2.3.2. Совершенная конъюнктивная нормальная форма
- •Правила составления скнф
- •2.3.3. Дизъюнктивные и конъюнктивные нормальные формы
- •2.3.4. Минтермы, макстермы и их свойства
- •2.4. Другие формы задания логических функций
- •2.5. Вопросы для самоконтроля
- •3. Функционально полные системы функций
- •Штрих Шеффера
- •Стрелка Пирса
- •Импликация и «0»
- •3.1. Теорема Поста–Яблонского
- •3.1.1. Определение минимального базиса
- •3.1.2. Функции, не сохраняющие 0 и 1
- •3.1.3. Двойственная функция
- •3.1.4. Монотонная функция
- •3.3. Вопросы для самоконтроля
- •4. Минимизация логических функций
- •4.1. Расчетный метод
- •4.1.1. Склеивание
- •4.1.2. Поглощение
- •4.1.3. Развертывание
- •4.2. Карты Карно
- •4.3. Минимизация систем логических уравнений
- •4.4. Частично определенная логическая функция
- •4.5. Вопросы для самоконтроля
- •5. Синтез и анализ логических схем
- •5.1. Схемы на переключателях, диодах и транзисторах
- •5.2. Схемы на логических элементах
- •5.2.1. Реализация функции на элементах и, или, не
- •5.2.2. Реализация функции на элементах и–не
- •5.2.3. Реализация функции на элементах или–не
- •5.3. Анализ схем
- •5.4. Оценка качества схем
- •5.5. Вопросы для самоконтроля
- •6. Булева производная
- •6.1. Контроль работоспособности логических схем
- •6.2. Построение тестов методом булевой производной
- •6.2.1. Свойства булевой производной
- •6.3. Вопросы для самоконтроля
- •7. Примеры преобразований логических функций
- •7.1. Представление логических функций в системе и, или, не
- •7.2. Построение таблиц истинности
- •7.3. Преобразование кнф в днф и днф в кнф Преобразование кнф в днф
- •Преобразование днф в кнф
- •7.4. Доказательства равенства логических функций
- •7.5. Разложение логических функций по переменным
- •7.5.1. Последовательное разложение по всем переменным Разложение по п. 1.6.13 (1)
- •Разложение по п. 1.6.13 (2)
- •7.5.2. Параллельное разложение по всем переменным разложение по п. 1.6.13 (1)
- •Разложение по п. 1.6.13 (2)
- •8. Домашняя работа
- •8.1. Задание
- •8.2. Выполнение
- •Проверить двумя способами эквивалентность формул
- •С помощью эквивалентных преобразований привести формулу к днф, кнф, сднф, скнф, получить полином Жегалкина.
- •С помощью карт Карно найти все минимальные днф функции трех переменных ƒ(X,y,z).
- •С помощью карт Карно найти все минимальные днф и кнф булевой функции четырех переменных , заданной вектором своих значений.
- •Является ли полной система функций? Образует ли она минимальный базис?
- •9. Список литературы
- •Введение в булеву алгебру
- •Гоу впо “Московский государственный университет приборостроения и информатики”
- •107996, Москва, ул. Стромынка, 20
4.1.3. Развертывание
Развертывание позволяет восстановить в формулах «потерянные» (например, в результате минимизации) переменные или перейти от ДНФ и КНФ к совершенным формам – СДНФ и СКНФ. Восстановление переменных для ДНФ и КНФ производится по–разному. Рассмотрим примеры.
Пусть имеем ДНФ
xz,
в которой, очевидно, потеряна переменная y. Для восстановления переменной y произведение переменных xz умножается на 1, затем 1 заменяется суммой прямого и инверсного обозначений недостающей переменной, и на основе дистрибутивного закона проводится преобразование
.
Пусть
имеем КНФ
,
где также потеряна переменная y.
Для ее восстановления к сумме
добавляется 0, затем 0 заменяется
произведением недостающей переменной
на ее инверсию и применяется дистрибутивный
закон
Используя развертывание, можно раскрыть смысл понятий «конституента единицы» и «конституента нуля».
Пусть n = 2 (переменные a и b).
Развернем 1.
1= 1
=
=
.
Получили СДНФ функции двух переменных f = 1, где каждая конъюнкция является составляющей (конституентой) единицы.
Развернем 0.
0 =
Получили СКНФ функции двух переменных f = 0, где каждая дизъюнкция является составляющей (конституентой) нуля.
Полезность развертывания показывает пример доказательства правил обобщенного склеивания (см. п. 4.1.1):
Рассмотрим первое правило
Развернем левую часть тождества, в первом произведении которой недостает переменной c, во втором произведении недостает b, а в третьем нет a.
После приведения подобных членов, применив простое склеивание
получаем правую часть, следовательно, тождество доказано.
Рассмотрим второе правило
.
Развернем левую часть тождества.
Используя дистрибутивный закон дизъюнкции относительно конъюнкции, получаем
После приведения подобных членов, применив простое склеивание, будем иметь
Получили правую часть, следовательно, правило доказано.
Общий порядок проведения минимизации функции, заданной СДНФ, здесь следующий.
Сначала к членам СДНФ применяется операция склеивания (каждая конъюнкция может использоваться многократно, объединяясь с разными членами). При этом из них исключается по одной переменной. Затем приводятся подобные члены, и снова проводится склеивание. Этот процесс продолжается, пока в получаемом выражении не останется конъюнкций, отличающихся друг от друга значениями одной переменной. Полученное выражение называется сокращенной нормальной формой. Каждой логической функции соответствует лишь одна такая форма.
К сокращенной нормальной форме применяется операция обобщенного склеивания. В результате из нее исключаются лишние конъюнкции. Процесс продолжается, пока склеивания становятся невозможными. Получаемая форма называется тупиковой формой логической функции. Тупиковых форм у логической функции может быть несколько.
Полученная тупиковая форма случайно может оказаться минимальной. В общем случае для поиска минимальной формы необходим перебор тупиковых форм.
С функциями, представленными в СКНФ, поступают аналогично с учетом их особенностей. Иногда оказывается удобно на промежуточном этапе перейти к дизъюнктивной нормальной форме и продолжать минимизацию так, как изложено выше.
Пример 1: Минимизировать функцию
После применения операции склеивания и приведения подобных членов получаем
Обобщенное склеивание здесь можно проводить по нескольким вариантам, которые дают следующие результаты:
.
Исключены
,
,
:
(
),
(
),
(
).
В скобках показаны термы, участвующие в обобщенном склеивании.
Исключены
,
,
:
(
),
(
),
(
).
Как видим, здесь имеется две минимальных нормальных формы. По сложности они одинаковы.
Пример 2: Продолжая решение задачи по созданию устройства рис. 3, проведем минимизацию мажоритарной функции (см. табл. 12), для которой выше были получены СДНФ и СКНФ.
СДНФ:
.
СKНФ:
Здесь первую сумму мы поочередно рассматривали в паре со второй, третьей и четвертой суммами и после склеивания этих пар получили результат.
