- •1.Основы теории множеств Введение
- •1.1.Основные понятия
- •1.2.Способы задания множеств
- •1.3.Отношения между множествами
- •1.4.Алгебра множеств
- •1.4.1Операции над множествами
- •1.4.2Основные тождества (законы) алгебры множеств
- •1.4.31.4.3 Способы доказательства тождеств
- •1.5.Упорядоченные множества
- •1.5.1Понятие вектора
- •1.5.2Прямое (декартово) произведение множеств
- •1.5.3 Декартова степень множества
- •Контрольные вопросы Основные понятия, положения и формулировки
- •Контрольные задачи
- •2.Приложение булевой алгебры к синтезу комбинационных схем Введение
- •2.1.Элементы булевой алгебры
- •2.2.Разнообразие булевых функций
- •2.3.Нормальные формы булевых функций
- •2.4.Числовая и символическая формы представления булевых функций
- •2.5.Преобразование произвольной аналитической формы булевой функции в нормальную
- •2.6.Приведение произвольных нормальных форм булевой функции к каноническим
- •2.7.Разнообразие двоичных алгебр
- •2.8.Задача минимизации булевых функций и методы ее решения
- •2.8.1. Постановка задачи минимизации
- •2.8.2. Методы минимизации булевых функций
- •Минимизация булевых функций, представленных в других базисах:
- •2.9.Кубическое представление булевых функций
- •2.10. Графическое представление булевых функций. Геометрическая интерпретация кубов малой размерности
- •2.11.Покрытия булевых функций
- •2.11.1. Построение покрытий булевых функций из кубов различной размерности. Соответствие между покрытием и днф булевой функции
- •2.11.2. Цена покрытия
- •2.11.3. Нулевое покрытие булевой функции и получение мкнф
- •2.12. Минимизация булевых функций на картах Карно
- •2.12.1. Представление булевых функций на картах Карно
- •2.12.2. Образование кубов различной размерности на картах Карно
- •2.12.3. Определение минимальных покрытий и мднф
- •2.12.4. Минимизация частично определенных булевых функций
- •2.13.Импликанты булевой функции. Системы импликант
- •Аналогия между импликантами и кубическим представлением булевой функции
- •2.14.Минимизация булевых функций методом Квайна-Мак-Класки
- •2.14.1Нахождение множества максимальных кубов (простых импликант) булевой функции
- •2.14.2Определение ядра покрытия
- •2.14.3Определение множества минимальных покрытий
- •2.15.Функциональная полнота системы булевых функций
- •2.15.1Теорема о функциональной полноте (теорема Поста)
- •Другая формулировка теоремы Поста:
- •2.15.2 Замечательные классы булевых функций
- •2.15.3Конструктивный подход к доказательству функциональной полноты системы булевых функций
- •Контрольные вопросы и задачи
- •3. Синтез комбинационных схем
- •3.1. Типовые логические элементы и их обозначения на функциональных схемах
- •Способы кодирования логических сигналов
- •Понятие логической схемы. Типы логических схем
- •Основные параметры комбинационных схем
- •Задачи анализа и синтеза комбинационных схем
- •Построение комбинационных схем по минимальным нормальным формам в различных базисах
- •Булев базис (и, или, не)
- •Сокращенный булев базис (и, не)
- •Сокращенный булев базис (или, не)
- •Универсальный базис (и-не)
- •Универсальный базис (или-не)
- •Задача факторизации булевых функций
- •Оценка эффекта факторизации
- •3.9. Декомпозиция булевых функций
- •3.10. Синтез многовыходных комбинационных схем
- •3.11. Минимизация системы булевых функций
- •Раздельная минимизация функций системы
- •Совместная минимизация функций системы
- •3.12. Факторизация системы булевых функций
- •3.13. Декомпозиция системы булевых функций
- •Раздельная минимизация
- •Раздельная факторизация
- •Декомпозиция системы булевых функций
- •Контрольные вопросы и задачи
- •Вопросы к рубежному контролю
- •Литература
- •3.Мальцев и.А. Дискретная математика. СПб.:Изд. "Лань", 2011. – 304 с.
- •4.Шевелев ю.П. Дискретная математика. СПб.:Изд. "Лань", 2008. – 592 c.
- •Кафедра вычислительной техники
- •Основы теории множеств и приложение булевой алгебры к синтезу комбинационных схем
2.4.Числовая и символическая формы представления булевых функций
Для любой булевой функции можно предложить две числовые формы, основанные на перечислении десятичных эквивалентов наборов аргументов, на которых функция принимает значение единицы (нуля).
Пример
2.3. Функция
от трех переменных задана в числовой
форме:
От числовой формы легко перейти к КДНФ путем замены каждого из наборов в перечислении конституентой единицы.
.
Аналогично можно перейти к ККНФ:
В
самом компактном виде любую булеву
функцию можно представить в следующей
символической
форме:
,
где n-количество
аргументов, а N-десятичный
эквивалент двоичного набора значений
функции на упорядоченном множестве
аргументов.
Пример
2.4.
f 3(Х)=x1x2x3=
- символическая форма булевой функции.
2.5.Преобразование произвольной аналитической формы булевой функции в нормальную
В булевой алгебре в виде теоремы доказывается следующее утверждение: существует единый конструктивный подход, позволяющий преобразовать аналитическое выражение булевой функции, заданное в произвольной форме, к нормальной форме.
Пример 2.5. Преобразовать аналитическое выражение заданной булевой функции к нормальной форме:
Замечания:
1. В общем случае любая булева функция может иметь несколько ДНФ, отличающихся либо количеством термов, либо количеством букв в этих термах.
2. При построении комбинационной схемы, реализующей данную функцию по ее нормальной форме предпочтительней схема, которая обладает наименьшим числом термов и наименьшим количеством букв в этих термах.
3. По сравнению со схемой, построенной по ДНФ, схема, построенная по скобочной форме (*), является предпочтительной т.к. при одном и том же числе логических элементов (И, ИЛИ) содержит меньшее число входов (9 вместо 10).
Задачу преобразования нормальной формы булевой функции в скобочную форму называют задачей факторизации.
4. Сущность конструктивного подхода при получении ДНФ состоит в следующем:
а) преобразование операций небулевого базиса к операциям булевого базиса (см. последний столбец табл. 2.2);
б) снятие отрицаний над выражениями с применением законов двойственности;
в) раскрытие скобок с применением дистрибутивного закона;
г) упрощение выражения с применением законов поглощения, склеивания, сокращения и тавтологии.
Приведенные рассуждения справедливы и для КНФ.
2.6.Приведение произвольных нормальных форм булевой функции к каноническим
Для приведения произвольной ДНФ к КДНФ необходимо использовать правило дизъюнктивного развертывания применительно к каждому из неполных конъюнктивных термов.
,
где P -
неполный конъюнктивный терм (ранг этого
терма меньше n),
а xi
- недостающий в терме аргумент.
Пример 2.6. Привести ДНФ заданной функции к КДНФ:
Замечание. После раскрытия скобок могут получиться одинаковые термы, из которых нужно оставить только один.
-
числовая форма функции.
Преобразование КНФ к ККНФ реализуется путем применения правила конъюнктивного развертывания к каждому неполному дизъюнктивному терму.
П
ример
2.7. Привести
ДНФ заданной функции к ККНФ:
-
числовая форма функции.
2.7.Разнообразие двоичных алгебр
В связи с тем, что любую сколь угодно сложную булеву функцию можно представить в канонических формах, то есть записать ее с помощью операций отрицания, конъюнкции и дизъюнкции эта система булевых операций обладает свойством функциональной полноты, т.е. образует так называемый базис. Естественно предположить, что система булевых операций является не единственной, с помощью которой можно образовать некоторый базис.
В принципе любую из базовых функций можно отождествить с соответствующей операцией и на основе совокупности этих операций построить двоичные алгебры, отличные от булевой. К наиболее распространенным двоичным алгебрам относятся: алгебра Жегалкина (, &); алгебра Вебба (Пирса) (); алгебра Шеффера ( | ). В каждой из этих алгебр действуют собственные законы. Естественно существуют взаимно однозначные переходы от операций одного базиса к операциям другого.
