Функционально полные системы булевых функций
Понятие и характерные свойства функционально полных систем булевых функций как совокупности таких функций (f1, f2,… fk), что произвольная булева функция f может быть записана в виде формулы через функции этой совокупности. Принцип ее двойственности.
Рубрика | Математика |
Вид | реферат |
Язык | русский |
Дата добавления | 30.11.2014 |
Размер файла | 65,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Функционально полные системы булевых функций
«Любая булева функция может быть представлена аналитически одной из выше рассмотренных нормальных форм. Последние используют ограниченное число элементарных булевых функций. Например, для СДНФ такими функциями являются «конъюнкция», «дизъюнкция» и «отрицание». Следовательно, существуют системы булевых функций, с помощью которых можно аналитически представить любую сколь угодно сложную булеву функцию. Проектирование цифровых автоматов основано на знании таких систем булевых функций. Последнее особенно важно для разработки комплектов интегральных микросхем, из которых можно построить произвольный цифровой автомат. Проблема функциональной полноты является центральной проблемой функциональных построений в алгебре логики.
Функционально полной системой булевых функций (ФПСБФ) называется совокупность таких булефых функций (f1, f2,… fk), что произвольная булева функция f может быть записана в виде формулы через функции этой совокупности.
Исходя оз определения СДНФ, СПНФ, СКНФ и ФПСБФ следует отнести системы: (/\, \/, не), (/\,, не).
Это обуславливает целесообразность постановки задачи определения свойств, которыми должны обладать функции, составляющие ФПСБФ.
Решение этой задачи основано на понятии замкнутого относительно операции суперпозиции класса функций. Класс булевых функций, функционально замкнутый по операции суперпозиции, есть множество функций, любая суперпозиция которых дает функцию, также принадлежащую этому множеству. Среди функционально замкнутых классов выделяют классы обычного типа, называемые предполными, которые обладают следующими свойствами. Предполный класс S не совпадает с множеством Р2 всех возможных булевых функций, однако, если в него включить любую, не входящую в S, булеву функцию, то новый функционально замкнутый класс будет совпадать с множеством Р2. Проведенные исследования показали, что преднолных классов пять, а для построения ФПСБФ необходимо и достаточно, чтобы ее функции не содержались полностью ни в одном из пяти предполных классов.
Перечислим предполные классы булевых функций:
1. булевы функции, сохраняющие константу 0;
2. булевы функции, сохраняющие константу 1;
3. самодвойственные булевы функции;
4. линейные булевы функции;
5. монотонные булевы функции;
К булевым функциям сохраняющим константу 0, относят такие булеы функции f(x1,…, xn), для которых справедливо соотношение f (0,…, 0)=0.
Примерами булевых функций, сохраняющих константу 0, являются функции f0, f1,…, f7 (табл 3.1). Поскольку таблица истинности для функций, сохраняющих константу 0, в первой строке значений функций содержит 0, то имеется ровно 22(^n)-1 таких функций.
К булевым функциям сохраняющим константу 1, относят такие булеы функции f(x1,…, xn), для которых справедливо соотношение f (1,…, 1)=1.
Примерами булевых функций, сохраняющих константу 1, являются функции f1, f3, f5, f7, f9, f11, f13, f15 (табл 3.1). Поскольку таблица истинности для функций, сохраняющих константу 1, в последней строке значений функций содержит 1, то имеется ровно 22(^n)-1 таких функций.
Прежде чем ввести понятие класса самодвойстенных функций, дадим следующее определение.
Булевы функции f1(x1,…, xn) и f2(x1,…, xn) называются двойственными друг другу, если выполняется соотношение
f1(x1,…, xn)=/(f2(/x1,…,/xn))
Двойственными являются функции f0 и f15, f1 и f7, f2 и f11 и т.д. (табл 3.1).
К самодвойственным булевым функциям относят такие булеы функции, которые двойственны по отнощению к самим себе, т.е. справедливо соотношение f(x1,…, xn)=/(f(/x1,…,/xn)). Если условия назвать противоположными наборами, набор <y1, y2,…, yn> и набор </y1,/y2,…,/yn>, то определение самодвойственных функций дадим следующее.
Булева функция называется самодвойственной, если на любых двух противоположных наборах она принимает противоположные значения.
Самодвойственными являются функции f3, f5, f10, f12 (табл 3.1). Из определения самодвойственной функции следует, что она полностью определяется своими значениями на первой половине строк таблицы истинности. Поэтому число всех самодвойственных булевых функций f(x1,…, xn) равно
К линейным булевым функциям относят такие булевы функции, которые представимы в виде
f(x1,…, xn)=с0 + c1x1 +… + cnxn,
где ci E {0,1}, а + операция «сумма по mod 2».
Линейными являются булевы функции f0, f3, f5, f6, f9, f10, f12, f15, (табл 3.1), ибо
f0 = 0, f3 = x1, f5 = x2, f6 = x1 + x2, f9 = x1 + x2 + 1, f10 = /x2 = 1 + x2, f12 = /x1 = 1 + x1, f15 = 1.
Примечание + = .
Поскольку линейная функция однозначно определяется заданием коэффициентов с0,…, сn, то число линейных функций равно 2(n+1).
Прежде чем ввести понятие класса монотонных булевых функций, дадим следующее определение.
Двоичный набор Y = <y1, y2,…, yn> не меньше двоичного набора B = <b1, b2,…, bn>, если для каждой пары (Yi, Bi) i = 1…n справедливо соотношение Yi >= Bi.
Так, набор 1011 >= 1010. Вместе с тем наборы 1011 и 0100 несравнимы в том смысле, что для них не выполняется ни соотношение Y >= B, ни Y <= B.
Булева функция f(x1,…, xn) называется монотонной, если для любых двух наборов Y = <y1, y2,…, yn> и B = <b1, b2,…, bn> таких, что Y >= B имеет место неравенство f(y1,…, yn)>=f(b1,…, bn).
Монотонными являются булевы функции f0, f1, f3, f5, f7, f15 (табл. 3.1). Вместе с тем функция f2 из табл. 3.1 не является монотонной, так как f2(1,0) > f2(1,1), хотя набор <1,0> меньше, чем набор <1,1>.
Приведем без доказательства две формулировки теоремы о функциональной полноте.
Для того чтобы система S булевых функций была функционально полной, необходимо и достаточно, чтобы эта система содержала хотя бы одну булеву функцию, не сохраняющую константу 1, хотя бы одну булеву функцию, не сохраняющую константу 0, хотя бы одну несамодвойственную булеву функцию, хотя бы одну нелинейную булеву функцию и хотя бы одну немонотонную булеву функцию.
Система булевых функций является функционаьно полной тогда и только тогда, когда она целиком не содержится ни в одном из предполных классов.
Рассмотрим примеры ФПСБФ. Для удобства изложения материала сведем элементарные булевы функциидвух переменных и некоторые функции одной переменной в таблицу, класифицируя каждую из них по признакам принадлежности к предполным классам.
Из таблицы видно, что каждая из функций f8 и f14 являются ФПСБФ. Иными словами, используя, например, только булеву функцию f14 - «штрих Шеффера», можно записать в виде формулы любую булеву функцию. f14 = х1 / х2 = /х1 v /х2. Признаком функциональной полноты, очевидно, является наличие плюса в каждом столбце таблицы, хотя бы для одной из составляющих систему булевых функций. К таким ФСПБФ, наиболее распространенным в практике построения цифровых автоматов, следует отнести:
Иногда удобно строить ФПСБФ при наличии констант, т.е. булевых функций «константа 0», «константа 1». Как следует из таблицы, функция «константа 0» несамодвойственна и не сохраняет 1; функция «константа 1» несамодвойственна и не сохраняет 0. Вместе с тем константы являютя линейными и монотонными функциями. Отсюда непосредственно (на основании теоремы о функциональной полноте) вытекает следующее: система булевых функций является ослабленно функционально полной, если она содержит хотя бы одну нелинейную и хотя бы одну нелинейную и хотя бы одну немонотонную булеву функцию.
Примерами ослабленых ФПСБФ могут служить следующие системы:
булевой двойственность произвольный
Введенное понятие двойственных булевых функций позволяет сформулировать принцип двойственности, заключающийся в следующем: если формула U=c[f1,…, fs] реализует булеву фунуцию f(x1,…, xn), то формула U*=c [f*1,…, f*n], полученная из U заменой функций f1,…, fs на двойственные функции f*1,…, f*s, соответтвенно реализует функцию f*=f*(x1,…, xn), двойственную функции f. Формулу U называют двойственной U. Для формул над множеством {0, 1, /x, x1x2, x1 v x2} принцип двойственности может быть сформулирован так: для получения формулы U* двойственной формуле U достаточно в формуле U всюду заменить 0 на 1, 1 на 0, & на \/, \/ на &.»
Размещено на Allbest.ru
Подобные документы
Полнота и замкнутость системы булевых функций. Алгоритм построения таблицы истинности двойственной функции. Класс L линейных функций, сущность полинома Жегалкина. Распознавание монотонной функции по вектору ее значений. Доказательство теоремы Поста.
учебное пособие [1,3 M], добавлен 20.08.2014Сокращенные, тупиковые дизъюнктивные нормальные формы. Полные системы булевых функций. Алгоритм Квайна, Мак-Класки минимизации булевой функции. Геометрическое представление логических функций. Геометрический метод минимизации булевых функций. Карты Карно.
курсовая работа [278,1 K], добавлен 21.02.2009Основная функционально полная система логических функций. Законы алгебры логики в основной функционально полной системе и их следствия. Переместительный и распределительный законы. Закон инверсии (правило Де Моргана). Системы логических функций.
реферат [40,5 K], добавлен 17.11.2008Изучение булевых функций. Алгоритм представления булевых функций в виде полинома Жегалкина. Система функций множества. Алгебраические преобразования, метод неопределенных коэффициентов. Таблица истинности для определенного количества переменных.
курсовая работа [701,9 K], добавлен 27.04.2011Понятие, основные свойства элементарных булевых функций и соотношения между ними. Формулировка принципа двойственности. Совершенные дизъюнктивная и конъюнктивная нормальные формы. Многочлен (полином) Жегалкина. Суперпозиция и замыкание класса функций.
презентация [24,4 K], добавлен 05.02.2016Графическая интерпретация множеств и операций над ними. Математическая логика, булева алгебра. Совершенная конъюнктивная нормальная форма. Равносильные формулы и их доказательство. Полнота системы булевых функций. Логика предикатов, теория графов.
лекция [253,7 K], добавлен 01.12.2009Логика - наука о законах и формах мышления, а основное понятие алгебры логики - высказывание. Основные понятия и тождества булевой алгебры. Изучение методов минимизации булевых функций. Метод Квайна, основанный на применении двух основных соотношений.
контрольная работа [178,2 K], добавлен 20.01.2011Сущность и математическое обоснование булевой функции, ее назначение и пути решения. Порядок составления таблицы истинности для определенного количества переменных. Связь всех дизъюнкций в конъюнкцию. Разработка и листинг программы представления.
курсовая работа [837,6 K], добавлен 27.04.2011Понятие числовых функций с областью определения, аргумент и области их значений, свойства и графическое выражение. Определение четных и нечетных функций, периодичность тригонометрических функций. Свойства, используемые при построении их графиков.
презентация [22,9 K], добавлен 13.12.2011Вычисление пределов гиперболических функций. Дифференцирование сложной функции. Разложение гиперболических функций по формуле Тейлора. Свойства неопределенного интеграла, интегрирование функций. Гиперболические функции комплексного переменного.
дипломная работа [2,8 M], добавлен 11.01.2011