![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Оглавление
Предисловие 4
Введение 5
Глава1. Минимизация функций алгебры логики в классе ДНФ 7
1. Геометрический метод 8
2. Метод неопределенных коэффициентов 10
3. Метод минимизирующих карт (Гарвардский метод) 13
4. Метод Квайна 16
5. Метод Квайна-Мак-Класки 23
6. Метод карт Карно (Вейча) 25
7. Абсолютно минимальные представления 31
Глава 2. Преобразования и минимизация в базисе, 32
состоящем из функции Вебба или из функции Шеффера.
Список литературы 43
Приложение 44
Задачи к практическим занятиям, выполнению
расчетно-графических работ и для самостоятельного
изучения методов минимизации ФАЛ.
ПРЕДИСЛОВИЕ
В алгебре логики, изучаемой в дисциплине “Дискретная математика”, задачу минимизации формул, описывающих функцию алгебры логики (ФАЛ), обычно называют задачей минимизации ФАЛ (или булевых функций).
В пособии излагаются принципы построения наиболее простых и распространенных методов минимизации, дополненные подробным разбором решений типовых примеров.
Учитывая практическую направленность пособия, в ряде случаев опускаются сложные математические выкладки и доказательства без ущерба изложения существа методов минимизации.
Появление новых технологий в создании и расширении элементной базы цифровых автоматов (дискретных преобразователей) вызывает интерес к рассмотрению методов минимизации и в других базисах (помимо классических): в частности – функций Шеффера, Вебба (Пирса).
Практикум включает материалы по методам минимизации, достаточные для решения задач на практических занятиях, в виде домашних заданий, на зачетах, экзаменах и особенно полезные при самостоятельном изучении курса “Дискретная математика”.
ВВЕДЕНИЕ
Функции алгебры логики (ФАЛ) называются также булевыми (логическими) функциями, двоичными функциями или переключательными функциями [1].
Любая булева функция может быть записана в одной из стандартных форм – СДНФ, СПНФ или СКНФ:
СДНФ – совершенная дизъюнктивная нормальная форма;
СКНФ – совершенная конъюнктивная нормальная форма;
СПНФ – совершенная полиномиальная нормальная форма.
Однако такая запись ФАЛ подчас не экономна.
Задача простейшего представления булевых функций сводится к выбору базиса и наиболее экономному представлению функции в этом базисе [11].
Последнее и есть задача минимизации булевых функций, что разумеется, не совсем точно, поскольку речь идет не о минимизации функции (остающейся в процессе минимизации неизменной), а о минимизации представляющих ее формул (в данном случае – дизъюнктивных нормальных форм-ДНФ).
В настоящее время наибольшее распространение получил базис, состоящий из отрицания, конъюнкции и дизъюнкции {-,&, Ú }. Образующие его функции наиболее просты с точки зрения математических преобразований и технической реализации.
Минимизация булевых функций проводится обычно в классе ДНФ, так называемая каноническая задача минимизации, но возможна и в других базисах. Алгоритм минимизации в классе ДНФ использует два закона:
1) закон склеивания (или
, где
- произвольная булева функция,
- отдельный знак);
2) закон поглощения (или
, где
- любая булева функция,
- отдельный знак).
Представление булевой функции, заданной в классе ДНФ, называется минимальной дизъюнктивной нормальной формой (МДНФ), если количество букв, которое она содержит, будет не больше, чем в любой другой ее нормальной форме.
Некоторые функции могут иметь несколько минимальных форм. Все методы минимизации в классе ДНФ основываются на понятии простой импликанты. Введем некоторые необходимые понятия.
Рассмотрим функцию . Каждое из слагаемых соответствует только одной единицы в таблице истинности данной функции. Говорят, что каждое слагаемое покрывает единицу функции, а в совокупности они покрывают данную функцию, т.е. являются ее покрытием. Но заметим, что упростив функцию
, получим более простое покрытие. Оба представления соответствуют одной и той же таблице истинности функции, т.е. обращаются в 1 и 0 на одних и тех же наборах переменных
(табл. 2.1). Если обратиться к отдельным слагаемым 2-го представления, нетрудно заметить, что
обращается в единицу на двух наборах (1, 0), (1, 1), а
- на (0, 0), (1, 0), совместно они покрывают единицами все единицы данной функции. Отметим, что оба слагаемых
и
обращаются одновременно в нуль на наборе (0, 1), т.е. там, где функция
равна нулю.
Таблица 2.1
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Если функция равна нулю на тех же наборах переменных, на которых равна нулю данная функция
, то говорят, что функция
входит в функцию. Другими словами,
входит в
, если она покрывает нулями все нули функции
, т.е. имеет не меньшее количество нулей.
Функция , являющаяся элементарным произведением и входящая в функцию
, называется импликантой.
Среди импликант данной функции выделяют так называемые простые импликанты, т.е. такие, которые сами входят в
, а никакая собственная часть их (элементарное произведение, полученное из данной импликанты исключением из нее одного или нескольких сомножителей) в функцию
не входит. Например:
, но
, тогда
- простая импликанта (знак
означает вхождение в
,
означает, что условия вхождения не выполняются).
Простые импликанты представляют собою самые короткие произведения, входящие в данную функцию. Если какое-либо элементарное произведение входит в данную функцию, то при добавлении к нему любых сомножителей новое произведение также будет входить в эту функцию, т.к. оно обращается в нуль вместе с исходным произведением.
Любая булева функция равна дизъюнкции всех своих простых импликант. Это представление функции называется сокращеннойдизъюнктивной нормальной формой. Сокращенная форма характеризуется тем, что ее члены самые короткие, из них уже нельзя исключать ни одной буквы, но можно выбросить некоторые импликанты.
Если из сокращенной формы исключить все возможные импликанты, то получится тупиковая дизъюнктивная нормальная форма. Тупиковых форм у булевой функции может быть несколько.
Тупиковая форма, содержащая наименьшее число импликант, называется кратчайшей дизъюнктивной нормальной формой. Кратчайшая и минимальная формы в общем случае не совпадают.
Приведем схему упрощения формы булевой функции
![]() | |||||
| |||||
| |||||
|
|
Заметим, что минимизацию можно проводить по числу букв, что соответствует минимизации числа входов, либо элементарных логических элементов конечного автомата, либо по числу членов, что соответствует минимизации числа функциональных элементов.
Дата публикования: 2015-02-22; Прочитано: 584 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!