Основные понятия минимизации булевых функций
Операции алгебры логики. Закон двойственности для булевых функций (правило де Моргана). Преобразование выражения за счет так называемой операции склеивания. Алгоритм минимизации. Метод карт Карно. Представление кодирования булева пространства кодом Грея.
Рубрика | Математика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 22.10.2013 |
Размер файла | 45,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Основные понятия минимизации булевых функций
двойственность булевый карно минимизация
Операции алгебры логики обладают свойствами, аналогичными операциям сложения и умножения обычной алгебры.
На основании этих законов можно выносить переменные за скобки, переставлять местами и т.д., как и в обычной алгебре.
Мы говорили о законе склеивания, поглощения, распределительный закон, сочетательный закон, переместительный закон.
Но только для алгебры логики действует закон двойственности (правило де Моргана):
; =.
Законы двойственности обобщены К. Шенноном для любых булевых функций (ФАЛ):
.
Такая запись обозначает тот факт, что отрицание над записью всей функции приводит к отрицанию значения переменных и знаков, их соединяющих, т.е. дизъюнкция () заменяется знаком конъюнкции (), и наоборот.
Пример:
(*)
Заметим, что в первоначальную запись функции (*) можно значительно упростить. Действительно, вынесем за скобки , тогда получим:
Использование этих законов позволяет упрощать исходную запись ФАЛ.
В первой исходной записи ФАЛ, полученной по таблице 3, в каждом логическом произведении переменных (конъюнкция) присутствовали все переменные из набора x1x2x3, а сами конъюнкции соединены символом логического сложения (дизъюнкции). Такая форма записи ФАЛ называется совершенной дизъюнктивной нормальной формой (СДНФ).
Если не все переменные из набора x1x2x3 представлены в каждой из конъюнкций, то такая форма по-прежнему остается нормальной дизъюнктивной формой, но она не относится к классу совершенных.
ДНФ представления одной и той же ФАЛ может быть много, но совершенная ДНФ (СДНФ) одна единственная.
Кроме СДНФ существует так называемая конъюнктивная нормальная форма, которая также может быть совершенной (СКНФ) и не совершенной, т.е. просто КНФ.
КНФ представляет собой алгебраическое выражение в виде стольких конъюнктивных членов, представляющих собой дизъюнкции всех переменных, при скольких наборах значений переменных функция равна 0. Если в наборе значение переменной равно 1, в дизъюнкцию входит инверсия этой переменной.
Анализ СДНФ и СКНФ показывает неэкономичность записи ФАЛ. Используя свойства ФАЛ можно преобразовать выражения за счет так называемой операции склеивания, т.е.
, т. к. .
,
где a - любая ФАЛ.
Упрощение записи СДНФ за счет операции склеивания называется минимизацией ФАЛ.
Существует большое число алгоритмов минимизации ФАЛ, из которых наиболее наглядным и простым является метод карт Карно.
Карта Карно представляет собой булево пространство в виде таблицы, в которой отображаются конституенты СДНФ.
Конституента - это набор переменных, соединенных знаком конъюнкции (И).
Если функция при этом наборе переменных равна 1, то в клетку матрицы записывается 1. Черточками над клетками булева пространства помечаются строки и столбцы (по горизонтали и по вертикали), в которых обозначенная переменная примет значение 1.
Например представлена ФАЛ, для которой СДНФ имеет вид:
.
Составим таблицу для этого множества:
В таблице 11 значение х1 = 1 распространяется на столбцы 2 и 3, считая справа налево, а значение х2 = 1 - на столбцы 1 и 2. Аналогично черточка х3 =1 относится к нижней строке таблицы (матрицы).
В таблице 11 введены уровни симметрии по столбцам и строкам. Нулевой (0) уровень делит матрицу пополам, единичные уровни (1) делят каждую область строк или столбцов еще раз пополам. Как видно, по строкам только один нулевой (0) уровень симметрии, а по столбцам их 2.
Для минимизации все клетки, содержащие 1, объединяются в замкнутые области с числом клеток 2, 4, 8… (в зависимости от числа переменных в ФАЛ). Области могут пересекаться, и одни и те же клетки могут входить в разные области. «Соседними» являются не только клетки, расположенные рядом по горизонтали и вертикали, но и клетки, находящиеся на противоположных границах карты. При охвате клеток замкнутыми областями следует стремиться к минимальному числу областей.
Действительно, для верхней области, охватывающей две 1 при , видно, что значение x2 несущественно, т. к. ФАЛ равна 1 как при x2, так и при , но обе 1 в булевом пространстве при лежат в области x1. Аналогично для значения x3 не существенно значение x1, но обе 1 соответствуют x2.
Для табл. 11 получим:
.
Одним из вариантов карты Карно является представление кодирования булева пространства кодом Грея, в котором при переходе от клетки к клетке как по вертикали, так и по горизонтали меняется значение только одной переменной.
Такое представление хорошо воспринимается визуально благодаря симметрии по осям. В данном случае это оси «0-0» и «1-1». Эта симметрия позволяет легче находить области склеивания конституент, для которых значения какой-либо переменной xi не влияет на значение ФАЛ. Речь идет о «ручной» минимизации с использованием визуального восприятия, что эффективно при n?6.
Для столь простого примера нельзя сделать четкий вывод в пользу того или иного способа кодирования булева пространства, но при числе переменных, равном 4, 6 и более, преимущества кода Грея будут очевидны при визуальном методе минимизации ФАЛ.
Минимизация ФАЛ базируется на использовании свойств карт Карно. Наборы значений переменных для соседних клеток карты Карно отличаются лишь одной переменной.
Соседними между собой являются также крайние левые клетки карты с крайними правыми и крайние верхние клетки карты с крайними нижними (как если бы карты были свернуты в цилиндры по вертикали и горизонтали).
Таким образом, все клетки, отличающиеся значением только одной переменной, являются соседними, несмотря на то, что иногда они расположены не рядом. Это свойство карты является очень важным для определения минимальных алгебраических выражений функций.
Совершенная дизъюнктивная нормальная форма СДНФ логической функции, изображенной в виде карты Карно, определяется следующим образом:
- для каждой клетки, в которой функция имеет значение 1, записывается конъюнкция всех входных переменных (прямых или инверсных);
- составляется дизъюнкция этих конъюнкций, которая и представляет собой СДНФ данной функции.
Для логической функции, заданной на карте Карно, можно записать несколько алгебраических выражений различной сложности в дизъюнктивной или конъюнктивной форме. При этом целесообразно пользоваться следующими рекомендациями:
1. Все единицы (при записи функции в дизъюнктивной форме) и все нули (при записи функции в конъюнктивной форме) должны быть заключены в прямоугольные контуры. Единичные контуры могут объединять несколько единиц, но не должны содержать внутри себя нулей. Нулевые контуры могут объединять несколько нулей, но не должны содержать внутри себя единиц. Одноименные контуры могут накладываться друг на друга, т.е. одна и та же единица (или нуль) может входить в несколько единичных (нулевых) контуров.
2. Площадь любого контура должна быть симметричной относительно границ переменных, пересекаемых данным контуром. Другими словами, число клеток в контуре должно быть равно 1, 2, 4, 8, 16, 32, ….
3. Во избежание получения лишних контуров, все клетки которых вошли уже в другие контуры, построение следует начинать с тех единиц или нулей, которые могут войти в один-единственный контур.
4. В контуры можно объединять только соседние клетки, содержащие единицы или нули. Соблюдение этого правила особенно необходимо проверять при числе переменных, большем четырех, когда соседние клетки могут быть расположены не рядом и поэтому контуры могут претерпевать видимый разрыв.
5. Каждой единичной клетке соответствует конъюнкция входных переменных, определяющих данную клетку. Каждой нулевой клетке соответствует дизъюнкция инверсий входных переменных, определяющих данную клетку.
6. В контуре, объединяющем две клетки, одна из переменных меняет свое значение. Поэтому выражение для контура из двух клеток не зависит от этой переменной, а представляется всеми остальными переменными. Это правило относится и к контурам, охватывающим число клеток более двух, и имеет такую формулировку: выражения, соответствующие контурам, не содержат тех переменных, чьи границы пересекаются площадью, ограниченной данным контуром.
7. Выражение логической функции может быть записано по соответствующей ей карте Карно в дизъюнктивной или конъюнктивной формах. Дизъюнктивная форма составляется в виде дизъюнкции конъюнкций, соответствующих единичным контурам, выделенным на карте для определения функции.
8. Для контуров, охватывающих различное количество клеток, получаются выражения различной сложности. Поэтому для данной логической функции можно записать по карте Карно несколько отличающихся по сложности алгебраических выражений. Наиболее сложное выражение соответствует случаю, когда каждой клетке соответствует свой контур. Это выражение представляет собой набор СДНФ и СКНФ данной функции. С увеличением размеров контуров алгебраическое выражение упрощается. Самое простое выражение функции получается при образовании наибольших контуров. На этом свойстве основывается метод минимизации логических функций с помощью карт Карно.
Рассмотрим пример ФАЛ для шести переменных (табл. 12).
Все области «1», объединенные двойными линиями, представляют один интервал ФАЛ, для которого по горизонтали очевидна независимость от x1 и x3, а по вертикали от x4 и x6, т.е. весь интервал соответствует . Верхняя область, объединенная сплошным овалом в одну линию по горизонтали, соответствует x2x3, а по вертикали , т.е. , а нижняя соответствует , тогда получим:
.
Последняя запись в скобках для х3 и х6 как уже говорилось называется функцией (обозначим Ж) суммы по модулю 2 и обозначаются символом . Другое название функции Ж - функция неравнозначности, т. к. она принимает значение 1 только при различных значениях переменных.
.
Заметим, что обратная ей функция имеет вид:
.
Эта функция называется функцией тождественности, т. к. она принимает значение 1 только при одинаковых (тождественных «0» и «1») значениях переменных
.
Тогда выражение для y можно записать в виде
.
Существуют функции, значение которых неопределенно на некоторых наборах входных переменных, т.е. некая комбинация, например , не может быть реализована. Практических примеров таких булевых функций много, особенно для реальных технологических процессов. Все такие комбинации переменных также наносятся на карту Карно и отмечаются символом, отличающимся от символа «0» или «1», с целью получения минимальной формы булевых функций. Такие булевы функции называются не полностью определенными.
Размещено на Allbest.ru
...Подобные документы
Сокращенные, тупиковые дизъюнктивные нормальные формы. Полные системы булевых функций. Алгоритм Квайна, Мак-Класки минимизации булевой функции. Геометрическое представление логических функций. Геометрический метод минимизации булевых функций. Карты Карно.
курсовая работа [278,1 K], добавлен 21.02.2009Логика - наука о законах и формах мышления, а основное понятие алгебры логики - высказывание. Основные понятия и тождества булевой алгебры. Изучение методов минимизации булевых функций. Метод Квайна, основанный на применении двух основных соотношений.
контрольная работа [178,2 K], добавлен 20.01.2011Булевы алгебры – решетки особого типа, применяемые при исследовании логики (как логики человеческого мышления, так и цифровой компьютерной логики), а также переключательных схем. Минимальные формы булевых многочленов. Теоремы абстрактной булевой алгебры.
курсовая работа [64,7 K], добавлен 12.05.2009Основные аксиомы и тождества алгебры логики. Аналитическая форма представления булевых функций. Элементарные функции алгебры логики. Функции алгебры логики одного аргумента и формы ее реализации. Свойства, особенности и виды логических операций.
реферат [63,3 K], добавлен 06.12.2010Понятие алгебры логики, ее сущность и особенности, основные понятия и определения, предмет и методика изучения. Законы алгебры логики и следствия из них, методы построения формул по заданной таблице истинности. Формы представления булевых функций.
учебное пособие [702,6 K], добавлен 29.04.2009Изучение булевых функций. Алгоритм представления булевых функций в виде полинома Жегалкина. Система функций множества. Алгебраические преобразования, метод неопределенных коэффициентов. Таблица истинности для определенного количества переменных.
курсовая работа [701,9 K], добавлен 27.04.2011Полнота и замкнутость системы булевых функций. Алгоритм построения таблицы истинности двойственной функции. Класс L линейных функций, сущность полинома Жегалкина. Распознавание монотонной функции по вектору ее значений. Доказательство теоремы Поста.
учебное пособие [1,3 M], добавлен 20.08.2014Использование эквивалентных преобразований. Понятие основных замкнутых классов. Метод минимизирующих карт и метод Петрика. Операция неполного попарного склеивания. Полином Жегалкина и коэффициенты второй степени. Таблицы значений булевых функций.
контрольная работа [90,4 K], добавлен 06.06.2011Основная функционально полная система логических функций. Законы алгебры логики в основной функционально полной системе и их следствия. Переместительный и распределительный законы. Закон инверсии (правило Де Моргана). Системы логических функций.
реферат [40,5 K], добавлен 17.11.2008Основные этапы развития булевой алгебры и применение минимальных форм булевых многочленов к решению задач, в частности, с помощью метода Куайна - Мак-Класки. Применение минимизирования логических форм при проектировании устройств цифровой электроники.
курсовая работа [58,6 K], добавлен 24.05.2009Доказательство существования или отсутствия алгоритма для решения поставленной задачи. Определение алгоритмической неразрешимости задачи. Понятия суперпозиции функций и рекурсивных функций. Анализ схемы примитивной рекурсии и операции минимизации.
курсовая работа [79,5 K], добавлен 12.07.2015Минимизация заданного выражения алгебры множеств на основании известных свойств. Анализ заданного бинарного отношения в общем виде. Вывод формул булевых функций для каждого элемента и схемы в целом. Преобразование формулы булевой функции логической схемы.
контрольная работа [286,7 K], добавлен 28.02.2009Понятие, основные свойства элементарных булевых функций и соотношения между ними. Формулировка принципа двойственности. Совершенные дизъюнктивная и конъюнктивная нормальные формы. Многочлен (полином) Жегалкина. Суперпозиция и замыкание класса функций.
презентация [24,4 K], добавлен 05.02.2016Сущность и математическое обоснование булевой функции, ее назначение и пути решения. Порядок составления таблицы истинности для определенного количества переменных. Связь всех дизъюнкций в конъюнкцию. Разработка и листинг программы представления.
курсовая работа [837,6 K], добавлен 27.04.2011Графическая интерпретация множеств и операций над ними. Математическая логика, булева алгебра. Совершенная конъюнктивная нормальная форма. Равносильные формулы и их доказательство. Полнота системы булевых функций. Логика предикатов, теория графов.
лекция [253,7 K], добавлен 01.12.2009Логическая переменная в алгебре логики. Логические операции: отрицание, конъюнкция, дизъюнкция, импликация, эквивалентность. Основные законы алгебры логики. Правила минимизации логической функции (избавление от операций импликации и эквивалентности).
курсовая работа [857,2 K], добавлен 16.01.2012Свойства алгебры Жегалкина. Действия с логическими константами (нулём и единицей). Свойства элементарных булевых функций, задаваемых логическими операциями. Способы построения полиномов с помощью таблиц истинности (метод неопределенных коэффициентов).
курсовая работа [467,2 K], добавлен 28.11.2014Основные понятия алгебры логики. Дизъюнктивные и конъюнктивные нормальные формы. Сущность теоремы Шеннона. Булевы функции двух переменных. Последовательное и параллельное соединение двух выключателей. Свойства элементарных функций алгебры логики.
контрольная работа [345,3 K], добавлен 29.11.2010Определение МДНФ логической функции устройства различными методами (Квайна, Петрика, неопределенных коэффициентов и др.). Составление алгоритма метода минимизации функции и разработка его рабочих программ. Выполнение синтеза схемы логического устройства.
курсовая работа [60,2 K], добавлен 21.11.2010Операции над логическими высказываниями: булевы функции и выражение одних таких зависимостей через другие. Пропозициональные формулы и некоторые законы логики высказываний. Перевод выражений естественного языка на символическую речь алгебры логики.
контрольная работа [83,3 K], добавлен 26.04.2011