Булева функция
Бу́лева фу́нкция (или логи́ческая функция, или функция а́лгебры ло́гики) от аргументов — в дискретной математике — отображение , где — булево множество. Элементы булева множества обычно интерпретируют как логические значения «истинно» и «ложно», хотя в общем случае они рассматриваются как формальные символы, не несущие определённого смысла. Неотрицательное целое число , обозначающее количество аргументов, называется арностью или местностью функции, в случае булева функция превращается в булеву константу. Элементы декартова произведения (-я прямая степень) называют булевыми векторами или булевыми наборами. Множество всех булевых функций от любого числа аргументов часто обозначается , а от аргументов — . Переменные, принимающие значения из булева множества, называются булевыми переменными. Булевы функции названы по фамилии математика Джорджа Буля.
При работе с булевыми функциями происходит полное абстрагирование от того содержательного смысла, какой предполагается в алгебре высказываний. Тем не менее между булевыми функциями и формулами алгебры высказываний можно установить взаимно-однозначное соответствие, если:
- установить взаимно-однозначное соответствие между булевыми и пропозициональными переменными;
- установить связь между булевыми функциями и логическими связками;
- оставить приоритет операций без изменений.
Раздел математики, изучающий булевы функции, называется теория булевых функций. Он является подразделом теории функций k-значной логики.
Основные сведения
Каждая булева функция арности полностью определяется заданием своих значений на своей области определения, то есть на всех булевых векторах длины
. Число таких векторов равно
. Поскольку на каждом векторе булева функция может принимать значение либо
, либо
, то количество всех n-арных булевых функций равно
. Поэтому в этом разделе рассматриваются только простейшие и важнейшие булевы функции.
Практически все булевы функции низших арностей (0, 1, 2 и 3) получили исторически сложившиеся имена. Если значение функции не зависит от одной из переменных (то есть, по сути, для любых двух булевых векторов, отличающихся лишь в значении этой переменной, значение функции на них совпадает), то эта переменная, не играя никакого «значения», называется фиктивной. В противном случае переменная называется существенной. Некоторые авторы определяют булевы функции с точностью до добавления/удаления фиктивной переменной. Другие же авторы используют обычное теоретико-множественное равенство функций, а функции, совпадающие с точность до добавления/удаления существенных переменных, они называют эквивалентными.
Таблицы истинности
Булева функция задаётся конечным набором значений, что позволяет представить её в виде таблицы истинности, например:
| x1 | x2 | … | xn−1 | xn | f(x1, x2, …, xn) |
|---|---|---|---|---|---|
| 0 | 0 | … | 0 | 0 | 0 |
| 0 | 0 | … | 0 | 1 | 0 |
| 0 | 0 | … | 1 | 0 | 1 |
| 0 | 0 | … | 1 | 1 | 0 |
| 1 | 1 | … | 0 | 0 | 1 |
| 1 | 1 | … | 0 | 1 | 0 |
| 1 | 1 | … | 1 | 0 | 0 |
| 1 | 1 | … | 1 | 1 | 0 |
Иногда, для краткости, таблицу истинности представляют в виде строки значений функции:
Значения функции в этой строке идут в лексикографическом порядке векторов аргументов.
Нульарные функции
При n = 0 количество булевых функций сводится к двум 220 = 21 = 2, первая из них тождественно равна 0, а вторая 1. Их называют булевыми константами — тождественный нуль и тождественная единица.
Таблица значений и названий нульарных булевых функций:
| Значение | Обозначение | Название |
|---|---|---|
| 0 | F0,0 = 0 | тождественный ноль |
| 1 | F0,1 = 1 | тождественная единица |
Унарные функции
При n = 1 число булевых функций равно 221 = 22 = 4. Определение этих функций содержится в следующей таблице.
Таблица значений и названий булевых функций от одной переменной:
| x0=x | 1 | 0 | Обозначение | Название |
|---|---|---|---|---|
| 0 | 0 | 0 | F1,0 = 0 | тождественный ноль |
| 1 | 0 | 1 | F1,1 = NOT(x) = x = ¬x = x' | отрицание, логическое «НЕТ», «НЕ», инвертор, SWAP (обмен) |
| 2 | 1 | 0 | F1,2 = YES(x) = x | логическое "ДА", повторитель, тавтология |
| 3 | 1 | 1 | F1,3 = 1 | тождественная единица |
Бинарные функции
При n = 2 число булевых функций равно 222 = 24 = 16.
В таблице значений и названий булевых функций от двух переменных (в зависимости от области применения, функции имеют разные обозначения и разные словесные названия, но один и тот же номер):
| x0=x | 1 | 0 | 1 | 0 | Обозначение функции | Название функции |
|---|---|---|---|---|---|---|
| x1=y | 1 | 1 | 0 | 0 | ||
| 0 | 0 | 0 | 0 | 0 | F2,0 = 0 | тождественный ноль |
| 1 | 0 | 0 | 0 | 1 | F2,1 = x ↓ y = x † y = x NOR y = NOR(x,y) = x НЕ-ИЛИ y = НЕ-ИЛИ(x,y) = NOT(MAX(X,Y)) | стрелка Пи́рса - "↓" (кинжал Куайна - "†"), функция Ве́бба - "°", НЕ-ИЛИ, 2ИЛИ-НЕ, антидизъюнкция, инверсия максимума |
| 2 | 0 | 0 | 1 | 0 | F2,2 = x > y = x GT y = GT(x,y) = x → y = x | функция сравнения "первый операнд больше второго операнда", инверсия прямой импликации, коимпликация |
| 3 | 0 | 0 | 1 | 1 | F2,3 = y = y' = ¬y = NOT2(x,y) = НЕ2(x,y) | отрицание (негация, инверсия) второго операнда |
| 4 | 0 | 1 | 0 | 0 | F2,4 = x < y = x LT y = LT(x,y) = x ← y = x | функция сравнения "первый операнд меньше второго операнда", инверсия обратной импликации, обратная коимпликация |
| 5 | 0 | 1 | 0 | 1 | F2,5 = x = x' = ¬x = NOT1(x,y) = НЕ1(x,y) | отрицание (негация, инверсия) первого операнда |
| 6 | 0 | 1 | 1 | 0 | F2,6 = x >< y = x <> y = x NE y = NE(x, y) = x ⊕ y = x XOR y = XOR(x,y) = XMAX(x,y) = x XMAX y | функция сравнения "операнды не равны", сложение по модулю 2, исключающее «или», сумма Жегалкина, исключающий max |
| 7 | 0 | 1 | 1 | 1 | F2,7 = x | y = x ↑ y = x NAND y = NAND(x,y) = x НЕ-И y = НЕ-И(x,y) = NOT(MIN(X,Y)) | штрих Ше́ффера, пунктир Чулкова, НЕ-И, 2И-НЕ, антиконъюнкция, инверсия минимума |
| 8 | 1 | 0 | 0 | 0 | F2,8 = x ∧ y = x · y = xy = x & y = x AND y = AND(x,y) = x И y = И(x,y) = min(x,y) | конъюнкция, 2И, минимум |
| 9 | 1 | 0 | 0 | 1 | F2,9 = (x ≡ y) = x ~ y = x ↔ y = x EQV y = EQV(x,y) | функция сравнения "операнды равны", эквивалентность |
| 10 | 1 | 0 | 1 | 0 | F2,10 = YES1(x,y) = ДА1(x,y) = x | первый операнд |
| 11 | 1 | 0 | 1 | 1 | F2,11 = x ≥ y = x >= y = x GE y = GE(x,y) = x ← y = x ⊂ y | функция сравнения "первый операнд не меньше второго операнда", обратная импликация (от второго аргумента к первому) |
| 12 | 1 | 1 | 0 | 0 | F2,12 = YES2(x,y) = ДА2(x,y) = y | второй операнд |
| 13 | 1 | 1 | 0 | 1 | F2,13 = x ≤ y = x <= y = x LE y = LE(x,y) = x → y = x ⊃ y = x IMP y | функция сравнения "первый операнд не больше второго операнда", прямая (материальная) импликация (от первого аргумента ко второму) |
| 14 | 1 | 1 | 1 | 0 | F2,14 = x ∨ y = x + y = x OR y = OR(x,y) = x ИЛИ y = ИЛИ(x,y) = max(x,y) | дизъюнкция, 2ИЛИ, максимум |
| 15 | 1 | 1 | 1 | 1 | F2,15 = 1 | тождественная единица |
При двух аргументах префиксная, инфиксная и постфиксная записи, по экономичности, почти одинаковы.
Некоторые функции, имеющие смысл в цифровой технике, например функции сравнения, минимум и максимум, не имеют смысла в логике, так как в логике, в общем случае, логические значения TRUE и FALSE не имеют жёсткой привязки к числовым значениям (например в TurboBasic'е, для упрощения некоторых вычислений, TRUE = -1, а FALSE = 0) и невозможно определить, что больше TRUE или FALSE, импликации же и др. имеют смысл и в цифровой технике и в логике.
Тернарные функции
При n = 3 число булевых функций равно 2(23) = 28 = 256. Некоторые из них определены в следующей таблице:
Таблица значений и названий некоторых булевых функций от трёх переменных, имеющих собственное название:
| x0=x | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | Обозначения | Названия |
|---|---|---|---|---|---|---|---|---|---|---|
| x1=y | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | ||
| x2=z | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | ||
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | F3,1 = x↓y↓z = ↓(x,y,z) = Webb2(x,y,z) = NOR(x,y,z) | 3ИЛИ-НЕ, функция Вебба, стрелка Пирса, кинжал Куайна - "†" |
| 23 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | F3,23 = | Переключатель по большинству с инверсией, 3ППБ-НЕ, мажоритарный клапан с инверсией |
| 126 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | F3,126 = (x≠y≠z) = [≠(x,y,z)] = NE(x,y,z) | Неравенство |
| 127 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | F3,127 = x|y|z = |(x,y,z) = NAND(x,y,z) | 3И-НЕ, штрих Шеффера |
| 128 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | F3,128 = x&y&z = &(x,y,z) = (x AND y AND z) = AND(x,y,z) = (x И y И z) = И(x,y,z) = min(x,y,z) | 3И, минимум |
| 129 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | F3,129 = (x=y=z) = [=(x,y,z)] = EQV(x,y,z) | Равенство |
| 150 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | F3,150 = x⊕y⊕z = x⊕2y⊕2z = ⊕2(x,y,z) | Тернарное сложение по модулю 2 |
| 184 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | F3,184 = | Условная дизъюнкция |
| 202 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | F3,202 = MUX(x,y) | Мультиплексор 2 в 1 |
| 216 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | F3,216 = f1 | Разряд займа при тернарном вычитании |
| 232 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | F3,232 = f2 = [>=2(x,y,z)] = ≥2(x,y,z) = (x И y) ИЛИ (y И z) ИЛИ (z И x) | Разряд переноса при тернарном сложении, переключатель по большинству, 3ППБ, мажоритарный клапан |
| 248 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | F3,248 = x OR (y AND z) = Gi+1,j+1 = Gi+1,j OR (Pi+1,j AND Gi,j) | Оператор G (Genarate) Valency-2 (валентность=2) в параллельно префиксных сумматорах |
| 254 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | F3,254 = (x+y+z) = +(x,y,z) = (x OR y OR z) = OR(x,y,z) = (x ИЛИ y ИЛИ z) = ИЛИ(x,y,z) = max(x,y,z) | ИЛИ, максимум |
При трёх и более аргументах префиксная (и постфиксная) запись экономичнее инфиксной записи.
Обычный вид записи функций — префиксный (перед операндами). При инфиксной (между операндами) записи функций функции называются операторами, а аргументы функции — операндами.
Представление булевых функций
В ряде случаев оказывается намного удобнее представлять булевы функции не таблицами истинности, а формулами над некоторой системой элементарных функций. Какие функции при этом можно будет выразить такой формулой, а какие нет, зависит от того, какие функции будут выбраны в качестве элементарных. Если при помощи формул над некоторой системой функций можно выразить вообще все булевы функции, то такая система называется полной. Относительно выбранной системы функций полезно знать ответы на следующие вопросы:
- Как построить по данной функции представляющую её формулу?
- Как проверить, что две разные формулы эквивалентны, то есть задают одну и ту же функцию?
- В частности: существует ли способ приведения произвольной формулы к эквивалентной ей канонической форме такой, что две формулы эквивалентны тогда и только тогда, когда их канонические формы совпадают?
- Как по данной функции построить представляющую её формулу с теми или иными заданными свойствами (например, наименьшего размера), и возможно ли это?
Положительные ответы на эти и другие вопросы существенно увеличивают прикладное значение выбранной системы функций.
Дизъюнктивная нормальная форма (ДНФ)
Простой конъюнкцией или конъюнктом называется конъюнкция некоторого конечного набора переменных или их отрицаний, причём каждая переменная встречается не более одного раза. Дизъюнктивной нормальной формой или ДНФ называется дизъюнкция простых конъюнкций. Элементарная конъюнкция
- правильная, если каждая переменная входит в неё не более одного раза (включая отрицание);
- полная, если каждая переменная (или её отрицание) входит в неё ровно 1 раз;
- монотонная, если она не содержит отрицаний переменных.
Например — является ДНФ.
Совершенной дизъюнктивной нормальной формой или СДНФ относительно некоторого заданного конечного набора переменных называется такая ДНФ, у которой в каждую конъюнкцию входят все переменные данного набора, причём в одном и том же порядке. Например: .
Легко убедиться, что каждой булевой функции соответствует некоторая ДНФ, а функции, отличной от тождественного нуля — даже СДНФ. Для этого достаточно в таблице истинности этой функции найти все булевы векторы, на которых её значение равно 1, и для каждого такого вектора построить конъюнкцию
, где
. Дизъюнкция этих конъюнкций является СДНФ исходной функции, поскольку на всех булевых векторах её значения совпадают со значениями исходной функции. Например, для импликации
результатом является
, что можно упростить до
.
Конъюнктивная нормальная форма (КНФ)
Конъюнктивная нормальная форма (КНФ) определяется двойственно к ДНФ. Простой дизъюнкцией или дизъюнктом называется дизъюнкция одной или нескольких переменных или их отрицаний, причём каждая переменная входит в неё не более одного раза. КНФ — это конъюнкция простых дизъюнкций.
Совершенной конъюнктивной нормальной формой (СКНФ), относительно некоторого заданного конечного набора переменных, называется такая КНФ, у которой в каждую дизъюнкцию входят все переменные данного набора, причём в одном и том же порядке. Поскольку (С)КНФ и (С)ДНФ взаимодвойственны, свойства (С)КНФ повторяют все свойства (С)ДНФ, грубо говоря, «с точностью до наоборот».
КНФ может быть преобразована к эквивалентной ей ДНФ путём раскрытия скобок по правилу:
которое выражает дистрибутивность конъюнкции относительно дизъюнкции. После этого необходимо в каждой конъюнкции удалить повторяющиеся переменные или их отрицания, а также выбросить из дизъюнкции все конъюнкции, в которых встречается переменная вместе со своим отрицанием. При этом результатом не обязательно будет СДНФ, даже если исходная КНФ была СКНФ. Точно также можно всегда перейти от ДНФ к КНФ. Для этого следует использовать правило
выражающее дистрибутивность дизъюнкции относительно конъюнкции. Результат нужно преобразовать описанным выше способом, заменив слово «конъюнкция» на «дизъюнкция» и наоборот.
Алгебраическая нормальная форма (АНФ или полином Жегалкина)
Алгебраическая нормальная форма (общепринятое название в зарубежной литературе) или полином Жегалкина (название, используемое в отечественной литературе) — это форма представления логической функции в виде полинома с коэффициентами вида 0 и 1, в котором в качестве произведения используется операция конъюнкции («И», AND), а в качестве сложения — сложение по модулю 2 (исключающее «ИЛИ», XOR). Для получения полинома Жегалкина следует выполнить следующие действия:
- Получить СДНФ функции
- Все ИЛИ заменить на Исключающее ИЛИ
- Во всех термах заменить элементы с отрицанием на конструкцию: («элемент» «исключающее ИЛИ» 1)
- Раскрыть скобки по правилам алгебры Жегалкина и привести попарно одинаковые термы
Переменная булевой функции входит в её полином Жегалкина тогда и только тогда, когда она существенна.
Полные системы булевых функций
Суперпозиция и замкнутые классы функций
Результат вычисления булевой функции может быть использован в качестве одного из аргументов другой функции. Результат такой операции суперпозиции можно рассматривать как новую булеву функцию со своей таблицей истинности. Например, функции (суперпозиция конъюнкции, дизъюнкции и двух отрицаний) будет соответствовать следующая таблица:
| 0 | 0 | 0 | 1 | |
| 0 | 0 | 1 | 1 | |
| 0 | 1 | 0 | 1 | |
| 0 | 1 | 1 | 1 | |
| 1 | 0 | 0 | 0 | |
| 1 | 0 | 1 | 0 | |
| 1 | 1 | 0 | 1 | |
| 1 | 1 | 1 | 0 |
Говорят, что множество функций замкнуто относительно операции суперпозиции, если любая суперпозиция функций из данного множества тоже входит в это же множество. Замкнутые множества функций называют также замкнутыми классами.
В качестве простейших примеров замкнутых классов булевых функций можно назвать множество , состоящее из одной тождественной функции, или множество
, все функции из которого тождественно равны нулю вне зависимости от своих аргументов. Замкнуты также множество функций
и множество всех унарных функций. А вот объединение замкнутых классов может таковым уже не являться. Например, объединив классы
и
, мы с помощью суперпозиции
сможем получить константу 1, которая в исходных классах отсутствовала.
Разумеется, множество всех возможных булевых функций тоже является замкнутым.
Тождественность и двойственность
Две булевы функции тождественны друг другу, если на любых одинаковых наборах аргументов они принимают равные значения. Тождественность функций f и g можно записать, например, так:
Просмотрев таблицы истинности булевых функций, легко получить такие тождества:
А проверка таблиц, построенных для некоторых суперпозиций, даст следующие результаты:
| (законы де Моргана) |
(дистрибутивность конъюнкции и дизъюнкции)
Функция называется двойственной функции
, если
. Легко показать, что в этом равенстве f и g можно поменять местами, то есть функции f и g двойственны друг другу. Из простейших функций двойственны друг другу константы 0 и 1, а из законов де Моргана следует двойственность конъюнкции и дизъюнкции. Тождественная функция, как и функция отрицания, двойственна сама себе.
Если в булевом тождестве заменить каждую функцию на двойственную ей, снова получится верное тождество. В приведённых выше формулах легко найти двойственные друг другу пары.
Полнота системы, критерий Поста
Система булевых функций называется полной, если можно построить их суперпозицию, тождественную любой заранее заданной функции. Говорят ещё, что замыкание данной системы совпадает с множеством .
Американский математик Эмиль Пост ввёл в рассмотрение следующие замкнутые классы булевых функций:
- Функции, сохраняющие константу
и
;
- Самодвойственные функции
;
- Монотонные функции
;
- Линейные функции
.
Им было доказано, что любой замкнутый класс булевых функций, не совпадающий с , целиком содержится в одном из этих пяти так называемых предполных классов, но при этом ни один из пяти не содержится целиком в объединении четырёх других. Таким образом, критерий Поста для полноты системы сводится к выяснению, не содержится ли вся эта система целиком в одном из предполных классов. Если для каждого класса в системе найдётся функция, не входящая в него, то такая система будет полной, и с помощью входящих в неё функций можно будет получить любую другую булеву функцию. Пост доказал, что множество замкнутых классов булевых функций — счётное множество.
Заметим, что существуют функции, не входящие ни в один из классов Поста. Любая такая функция сама по себе образует полную систему. В качестве примеров можно назвать штрих Шеффера или стрелку Пирса.
Классификация булевых функций
- По количеству n входных операндов, от которых зависит значение на выходе функции, различают нульарные (n = 0), унарные (n = 1), бинарные (n = 2), тернарные (n = 3) булевы функции и функции от большего числа операндов.
- По количеству единиц и нулей в таблице истинности отличают узкий класс сбалансированных булевых функций (также называемых уравновешенными или равновероятностными, поскольку при равновероятных случайных значениях на входе или при переборе всех комбинаций по таблице истинности вероятность получения на выходе значения 1 равна 1/2) от более широкого класса несбалансированных булевых функций (так же называемых неуравновешенными, поскольку вероятность получения на выходе значения 1 отлична от 1/2). Сбалансированные булевы функции в основном используются в криптографии.
- По зависимости значения функции от перестановки её входных битов различают симметричные булевы функции (значение которых зависит только от количества единиц на входе) и несимметричные булевы функции (значение которых так же зависит от перестановки её входных бит).
- По значению функции на противоположных друг другу наборах значений аргументов отличают самодвойственные функции (значение которых инвертируется при инвертировании значения всех входов) от остальных булевых функций, не обладающих таким свойством. Нижняя часть таблицы истинности для самодвойственных функций является зеркальным отражением инвертированной верхней части (если расположить входные комбинации в таблице истинности в естественном порядке).
- По алгебраической степени нелинейности отличают линейные булевы функции (АНФ которых сводится к линейной сумме по модулю 2 входных значений) и нелинейные булевы функции (АНФ которых содержит хотя бы одну нелинейную операцию конъюнкции входных значений). Примерами линейных функций являются: сложение по модулю 2 (исключающее «ИЛИ», XOR), эквивалентность, а также все булевы функции, АНФ которых содержит лишь линейные операции сложения по модулю 2 без конъюнкций. Примерами нелинейных функций являются: конъюнкция («И», AND), штрих Шеффера («НЕ-И», NAND), стрелка Пирса («НЕ-ИЛИ», NOR), а также все булевы функции, АНФ которых содержит хотя бы одну нелинейную операцию конъюнкции.
Геометрическая интерпретация
Элементы множества можно представлять себе как координаты вершин единичного гиперкуба. На этом основывается геометрическая интерпретация булевых функций. В геометрической терминологии подмножества булева гиперкуба отождествляют с подмножествами вершин, например под гранью гиперкуба понимают её множество вершин, а под самим гиперкубом — множество
.
Само понятие булев гиперкуб (или для краткости говорят просто булев куб) формально могут определять по-разному: как единичный куб в евклидовом пространстве, как граф, вершины которого наборы из , а рёбра соединяют соседние наборы или прямо так определяют как
. При этом при работе с этим понятием его просто используют как синоним к
, подмножество булева куба — синоним к понятию подмножество
, вершина булева куба — синоним к понятию набор, ребро — синоним к понятию пара соседних вершин, а k-мерную грань булева куба определяют как подмножество
, имеющее вид:
.
здесь булевы константы, фиксированные для определённой грани. Таким образом, грань булева куба — множество всех булевых векторов, в которых определённые
координат имеют заданные значения. Число
называется коразмерностью грани булева куба. По сути все эти термины — просто другая терминология, для объектов теории булевых функций; просто в некоторых случаях она оказывается удобнее обычной терминологии, например при изучении ДНФ и КНФ.
Слоем булева куба называется множество вершин, имеющих одинаковое число нулей и единиц. Булевы кубы высоких размерностей обычно изображают именно как граф, не стараясь придать ему вид обычного геометричекого гиперкуба; при этом вершины одного слоя изображают на одной высоте, идя по возрастанию количества единиц снизу вверх.
Для булевых функций есть три различных способов интерпретации на булевом кубе. Множеством единиц булевой функции называется множество:
Множеством нулей булевой функции называется множество:
Множество единиц, как и множество нулей, однозначно определяет свою функцию. Две геометрических интерпретации булевых функций на этом и основаны: одна отождествляет функцию с её множеством единиц, а другая — с множеством нулей. Интерпретация через множество единиц удобнее при изучении ДНФ, а через множество нулей — КНФ.
Третья интерпретация есть просто раскраска вершин графа. Используется две краски: и
; соответственно в
окрашиваются те вершины, на которых функция принимает
, а в
— на которой
(можно также представлять это как взвешенный граф). Такая интерпретация бывает удобна для представления линейных и монотонных функций: для линейных функций без фиктивных переменных такая раскраска будет правильной и куб обладает тем свойством, что соседние слои имеют противоположные значения функции. Для монотонной функции в такой интерпоетации все вершины, до которых можно дойти от нулевой сверху вниз, имеют значение
, а все вершины, до которых можно дойти снизу вверх от единичной, имеют значение
.
Интерпретация множеством единиц
При интерпретации функции множеством её единиц происходит следующее соответствие:
- булева функция — подмножество булева куба;
- дизъюнкция булевых функций — объединение подмножеств булева куба;
- конъюнкция булевых функций — пересечение подмножеств булева куба;
- элементарная конъюнкция — грань булева куба;
- ДНФ — множество граней булева куба;
- совершенная ДНФ — множество 0-мерных граней булева куба (то есть множество синглтонов вершин булева куба);
- функция, задаваемая ДНФ — объединение множества граней булева куба;
- импликанта функции — подмножество подмножества булева куба;
- простая импликанта функции — максимальная грань, входящая в подмножество булева куба (то есть такая грань, которая не является собственным подмножеством никакой другой грани, входящей в подмножество булева куба)
- сокращённая ДНФ функции — множество всех максимальных граней подмножества булева куба;
Интерпретация множеством нулей
При интерпретации функции множеством её нулей происходит следующее соответствие:
- булева функция — подмножество булева куба;
- дизъюнкция булевых функций — пересечение подмножеств булева куба;
- конъюнкция булевых функций — объединение подмножеств булева куба;
- элементарная дизъюнкция — грань булева куба;
- КНФ — множество граней булева куба;
- совершенная КНФ — множество 0-мерных граней булева куба;
- функция, задаваемая КНФ — объединение множества граней булева куба;
- следствие функции — подмножество подмножества булева куба;
- простое следствие функции — максимальная грань, входящая в подмножество булева куба
- сокращённая КНФ функции — множество всех максимальных граней подмножества булева куба;
См. также
- Булева алгебра
- Битовые операции
- Комбинационная логика
- Секвенциальная логика
- Троичная логика
- Троичные функции
- Логические элементы
Литература
- Алексеев В. Б. (лектор), Поспелов А.Д. (составитель). Дискретная математика (курс лекций, II семестр). — М.: Изд. отд. фак. Вычислит. математики и кибернетики МГУ им. М. В. Ломоносова, 2002. — 44 с.
- Быкова С. В., Буркатовская Ю. Б. Булевы функции: учебное пособие для студентов высших учебных заведений, обучающихся по специальности ВПО 010501 «Прикладная математика и информатика». — Томск: Томский гос. ун-т, 2010. — 190 с.
- Гаврилов Г. П., Сапоженко А. А. Задачи и упражнения по дискретной математике. — М.: ФИЗМАТЛИТ, 2009.
- Игошин В. И. Математическая логика и теория алгоритмов. — 2-е изд., стереотип.. — М.: Издательский центр «Академия», 2008. — 448 с.
- Кузнецов О. П. Дискретная математика для инженера. — СПб.: Лань, 2007. — 394 с.
- Учебные пособия кафедры математической кибернетики ВМиК МГУ (на сайте кафедры математической кибернетики МГУ ВМК).
- Ложкин С.А. Лекции по основам кибернетики : учеб. пособие по курсам «Основы кибернетики» и «Структур. реализация дискрет. функций». — М.: Изд. отд. фак. Вычислит. математики и кибернетики МГУ им. М. В. Ломоносова, 2004. — 254 с.
- Марченков С. С. Замкнутые классы булевых функций. — М.: Физматлит, 2001. — 126 с.
- Самофалов К. Г., Романкевич А. М., Валуйский В. Н., Каневский Ю. С., Пиневич М. М. Прикладная теория цифровых автоматов. — Киев: Вища Школа, 1987. — С. 183—189. — 375 с.
- Яблонский С. В. Введение в дискретную математику. — М.: Высш. шк., 2006. — 384 с.
- Нурлыбаев А. Б. Об упрощении булевых функций с множеством нулей специального вида // Дискретная математика. — 1991. — Т. 3, № 1. — С. 88-97.
- Рагимханов В. Р. Дискретная математика. Часть IV. Булевы функции.. — Махачкала: ДГУ, 2019. — 102 с.
- , Дискретная математика : учебное пособие. — Томск.: Том. гос. ун-т, Ин-т дистанционного образования. ИДО ТГУ, 2007.
Ссылки
- Игошин, 2008, Глава 2. Булевы функции.
- Игошин, 2008, с. 94.
- Игошин, 2008, с. 104-105.
- Самофалов, 1987.
- Рагимханов, 2019, с. 30.
- Номера логических функций https://dzen.ru/a/Zn5r7J4wYEgC3ubl
- Элементарные булевы функции. Дата обращения: 9 ноября 2016. Архивировано 10 ноября 2016 года.
- Избранные вопросы теории булевых функций. // А. С. Балюк и др. Под ред. С. Ф. Винокурова и Н. А. Перязева. — М.: ФИЗМАТЛИТ, 2001. — 192 с. — С. 13.
- Игошин, 2008, с. 96.
- И.А. Насыров. учебно-методическое пособие. Дата обращения: 20 ноября 2020. Архивировано 22 декабря 2019 года.
- Borland Turbo BASIC Owners Handbook 1987, p.80
- Яблонский, 2006, с. 307.
- Нурлыбаев, 1991, с. 88.
Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер, Информация о Булева функция, Что такое Булева функция? Что означает Булева функция?
Bu leva fu nkciya ili logi cheskaya funkciya ili funkciya a lgebry lo giki ot n displaystyle n argumentov v diskretnoj matematike otobrazhenie f E2n E2 displaystyle f colon E 2 n to E 2 gde E2 0 1 displaystyle E 2 0 1 bulevo mnozhestvo Elementy buleva mnozhestva 1 0 displaystyle 1 0 obychno interpretiruyut kak logicheskie znacheniya istinno i lozhno hotya v obshem sluchae oni rassmatrivayutsya kak formalnye simvoly ne nesushie opredelyonnogo smysla Neotricatelnoe celoe chislo n displaystyle n oboznachayushee kolichestvo argumentov nazyvaetsya arnostyu ili mestnostyu funkcii v sluchae n 0 displaystyle n 0 buleva funkciya prevrashaetsya v bulevu konstantu Elementy dekartova proizvedeniya n displaystyle n ya pryamaya stepen E2n displaystyle E 2 n nazyvayut bulevymi vektorami ili bulevymi naborami Mnozhestvo vseh bulevyh funkcij ot lyubogo chisla argumentov chasto oboznachaetsya P2 displaystyle P 2 a ot n displaystyle n argumentov P2n displaystyle P 2 n Peremennye prinimayushie znacheniya iz buleva mnozhestva nazyvayutsya bulevymi peremennymi Bulevy funkcii nazvany po familii matematika Dzhordzha Bulya Pri rabote s bulevymi funkciyami proishodit polnoe abstragirovanie ot togo soderzhatelnogo smysla kakoj predpolagaetsya v algebre vyskazyvanij Tem ne menee mezhdu bulevymi funkciyami i formulami algebry vyskazyvanij mozhno ustanovit vzaimno odnoznachnoe sootvetstvie esli ustanovit vzaimno odnoznachnoe sootvetstvie mezhdu bulevymi i propozicionalnymi peremennymi ustanovit svyaz mezhdu bulevymi funkciyami i logicheskimi svyazkami ostavit prioritet operacij bez izmenenij Razdel matematiki izuchayushij bulevy funkcii nazyvaetsya teoriya bulevyh funkcij On yavlyaetsya podrazdelom teorii funkcij k znachnoj logiki Osnovnye svedeniyaKazhdaya buleva funkciya arnosti n displaystyle n polnostyu opredelyaetsya zadaniem svoih znachenij na svoej oblasti opredeleniya to est na vseh bulevyh vektorah dliny n displaystyle n Chislo takih vektorov ravno 2n displaystyle 2 n Poskolku na kazhdom vektore buleva funkciya mozhet prinimat znachenie libo 0 displaystyle 0 libo 1 displaystyle 1 to kolichestvo vseh n arnyh bulevyh funkcij ravno 22n displaystyle 2 2 n Poetomu v etom razdele rassmatrivayutsya tolko prostejshie i vazhnejshie bulevy funkcii Prakticheski vse bulevy funkcii nizshih arnostej 0 1 2 i 3 poluchili istoricheski slozhivshiesya imena Esli znachenie funkcii ne zavisit ot odnoj iz peremennyh to est po suti dlya lyubyh dvuh bulevyh vektorov otlichayushihsya lish v znachenii etoj peremennoj znachenie funkcii na nih sovpadaet to eta peremennaya ne igraya nikakogo znacheniya nazyvaetsya fiktivnoj V protivnom sluchae peremennaya nazyvaetsya sushestvennoj Nekotorye avtory opredelyayut bulevy funkcii s tochnostyu do dobavleniya udaleniya fiktivnoj peremennoj Drugie zhe avtory ispolzuyut obychnoe teoretiko mnozhestvennoe ravenstvo funkcij a funkcii sovpadayushie s tochnost do dobavleniya udaleniya sushestvennyh peremennyh oni nazyvayut ekvivalentnymi Tablicy istinnosti Osnovnaya statya Tablica istinnosti Buleva funkciya zadayotsya konechnym naborom znachenij chto pozvolyaet predstavit eyo v vide tablicy istinnosti naprimer x1 x2 xn 1 xn f x1 x2 xn 0 0 0 0 00 0 0 1 00 0 1 0 10 0 1 1 0 displaystyle vdots displaystyle vdots displaystyle ddots displaystyle vdots displaystyle vdots displaystyle vdots 1 1 0 0 11 1 0 1 01 1 1 0 01 1 1 1 0 Inogda dlya kratkosti tablicu istinnosti predstavlyayut v vide stroki znachenij funkcii f 0010 1000 displaystyle f 0010 ldots 1000 Znacheniya funkcii v etoj stroke idut v leksikograficheskom poryadke vektorov argumentov Nularnye funkcii Pri n 0 kolichestvo bulevyh funkcij svoditsya k dvum 220 21 2 pervaya iz nih tozhdestvenno ravna 0 a vtoraya 1 Ih nazyvayut bulevymi konstantami tozhdestvennyj nul i tozhdestvennaya edinica Tablica znachenij i nazvanij nularnyh bulevyh funkcij Znachenie Oboznachenie Nazvanie0 F0 0 0 tozhdestvennyj nol1 F0 1 1 tozhdestvennaya edinicaUnarnye funkcii Pri n 1 chislo bulevyh funkcij ravno 221 22 4 Opredelenie etih funkcij soderzhitsya v sleduyushej tablice Tablica znachenij i nazvanij bulevyh funkcij ot odnoj peremennoj x0 x 1 0 Oboznachenie Nazvanie0 0 0 F1 0 0 tozhdestvennyj nol1 0 1 F1 1 NOT x x x x otricanie logicheskoe NET NE invertor SWAP obmen 2 1 0 F1 2 YES x x logicheskoe DA povtoritel tavtologiya3 1 1 F1 3 1 tozhdestvennaya edinicaBinarnye funkcii Pri n 2 chislo bulevyh funkcij ravno 222 24 16 V tablice znachenij i nazvanij bulevyh funkcij ot dvuh peremennyh v zavisimosti ot oblasti primeneniya funkcii imeyut raznye oboznacheniya i raznye slovesnye nazvaniya no odin i tot zhe nomer x0 x 1 0 1 0 Oboznachenie funkcii Nazvanie funkciix1 y 1 1 0 00 0 0 0 0 F2 0 0 tozhdestvennyj nol1 0 0 0 1 F2 1 x y x y x NOR y NOR x y x NE ILI y NE ILI x y NOT MAX X Y strelka Pi rsa kinzhal Kuajna funkciya Ve bba NE ILI 2ILI NE antidizyunkciya inversiya maksimuma2 0 0 1 0 F2 2 x gt y x GT y GT x y x y x displaystyle not rightarrow y funkciya sravneniya pervyj operand bolshe vtorogo operanda inversiya pryamoj implikacii koimplikaciya3 0 0 1 1 F2 3 y y y NOT2 x y NE2 x y otricanie negaciya inversiya vtorogo operanda4 0 1 0 0 F2 4 x lt y x LT y LT x y x y x displaystyle not leftarrow y funkciya sravneniya pervyj operand menshe vtorogo operanda inversiya obratnoj implikacii obratnaya koimplikaciya5 0 1 0 1 F2 5 x x x NOT1 x y NE1 x y otricanie negaciya inversiya pervogo operanda6 0 1 1 0 F2 6 x gt lt y x lt gt y x NE y NE x y x y x XOR y XOR x y XMAX x y x XMAX y funkciya sravneniya operandy ne ravny slozhenie po modulyu 2 isklyuchayushee ili summa Zhegalkina isklyuchayushij max7 0 1 1 1 F2 7 x y x y x NAND y NAND x y x NE I y NE I x y NOT MIN X Y shtrih She ffera punktir Chulkova NE I 2I NE antikonyunkciya inversiya minimuma8 1 0 0 0 F2 8 x y x y xy x amp y x AND y AND x y x I y I x y min x y konyunkciya 2I minimum9 1 0 0 1 F2 9 x y x y x y x EQV y EQV x y funkciya sravneniya operandy ravny ekvivalentnost10 1 0 1 0 F2 10 YES1 x y DA1 x y x pervyj operand11 1 0 1 1 F2 11 x y x gt y x GE y GE x y x y x y funkciya sravneniya pervyj operand ne menshe vtorogo operanda obratnaya implikaciya ot vtorogo argumenta k pervomu 12 1 1 0 0 F2 12 YES2 x y DA2 x y y vtoroj operand13 1 1 0 1 F2 13 x y x lt y x LE y LE x y x y x y x IMP y funkciya sravneniya pervyj operand ne bolshe vtorogo operanda pryamaya materialnaya implikaciya ot pervogo argumenta ko vtoromu 14 1 1 1 0 F2 14 x y x y x OR y OR x y x ILI y ILI x y max x y dizyunkciya 2ILI maksimum15 1 1 1 1 F2 15 1 tozhdestvennaya edinica Pri dvuh argumentah prefiksnaya infiksnaya i postfiksnaya zapisi po ekonomichnosti pochti odinakovy Nekotorye funkcii imeyushie smysl v cifrovoj tehnike naprimer funkcii sravneniya minimum i maksimum ne imeyut smysla v logike tak kak v logike v obshem sluchae logicheskie znacheniya TRUE i FALSE ne imeyut zhyostkoj privyazki k chislovym znacheniyam naprimer v TurboBasic e dlya uprosheniya nekotoryh vychislenij TRUE 1 a FALSE 0 i nevozmozhno opredelit chto bolshe TRUE ili FALSE implikacii zhe i dr imeyut smysl i v cifrovoj tehnike i v logike Ternarnye funkcii Pri n 3 chislo bulevyh funkcij ravno 2 23 28 256 Nekotorye iz nih opredeleny v sleduyushej tablice Tablica znachenij i nazvanij nekotoryh bulevyh funkcij ot tryoh peremennyh imeyushih sobstvennoe nazvanie x0 x 1 0 1 0 1 0 1 0 Oboznacheniya Nazvaniyax1 y 1 1 0 0 1 1 0 0x2 z 1 1 1 1 0 0 0 01 0 0 0 0 0 0 0 1 F3 1 x y z x y z Webb2 x y z NOR x y z 3ILI NE funkciya Vebba strelka Pirsa kinzhal Kuajna 23 0 0 0 1 0 1 1 1 F3 23 gt 2 x y z displaystyle neg gt 2 x y z 2 x y z Pereklyuchatel po bolshinstvu s inversiej 3PPB NE mazhoritarnyj klapan s inversiej126 0 1 1 1 1 1 1 0 F3 126 x y z x y z NE x y z Neravenstvo127 0 1 1 1 1 1 1 1 F3 127 x y z x y z NAND x y z 3I NE shtrih Sheffera128 1 0 0 0 0 0 0 0 F3 128 x amp y amp z amp x y z x AND y AND z AND x y z x I y I z I x y z min x y z 3I minimum129 1 0 0 0 0 0 0 1 F3 129 x y z x y z EQV x y z Ravenstvo150 1 0 0 1 0 1 1 0 F3 150 x y z x 2y 2z 2 x y z Ternarnoe slozhenie po modulyu 2184 1 0 1 1 1 0 0 0 F3 184 x y z displaystyle x y z Uslovnaya dizyunkciya202 1 1 0 0 1 0 1 0 F3 202 MUX x y Multipleksor 2 v 1216 1 1 0 1 1 0 0 0 F3 216 f1 Razryad zajma pri ternarnom vychitanii232 1 1 1 0 1 0 0 0 F3 232 f2 gt 2 x y z 2 x y z x I y ILI y I z ILI z I x Razryad perenosa pri ternarnom slozhenii pereklyuchatel po bolshinstvu 3PPB mazhoritarnyj klapan248 1 1 1 1 1 0 0 0 F3 248 x OR y AND z Gi 1 j 1 Gi 1 j OR Pi 1 j AND Gi j Operator G Genarate Valency 2 valentnost 2 v parallelno prefiksnyh summatorah254 1 1 1 1 1 1 1 0 F3 254 x y z x y z x OR y OR z OR x y z x ILI y ILI z ILI x y z max x y z ILI maksimum Pri tryoh i bolee argumentah prefiksnaya i postfiksnaya zapis ekonomichnee infiksnoj zapisi Obychnyj vid zapisi funkcij prefiksnyj pered operandami Pri infiksnoj mezhdu operandami zapisi funkcij funkcii nazyvayutsya operatorami a argumenty funkcii operandami Predstavlenie bulevyh funkcijV ryade sluchaev okazyvaetsya namnogo udobnee predstavlyat bulevy funkcii ne tablicami istinnosti a formulami nad nekotoroj sistemoj elementarnyh funkcij Kakie funkcii pri etom mozhno budet vyrazit takoj formuloj a kakie net zavisit ot togo kakie funkcii budut vybrany v kachestve elementarnyh Esli pri pomoshi formul nad nekotoroj sistemoj funkcij mozhno vyrazit voobshe vse bulevy funkcii to takaya sistema nazyvaetsya polnoj Otnositelno vybrannoj sistemy funkcij polezno znat otvety na sleduyushie voprosy Kak postroit po dannoj funkcii predstavlyayushuyu eyo formulu Kak proverit chto dve raznye formuly ekvivalentny to est zadayut odnu i tu zhe funkciyu V chastnosti sushestvuet li sposob privedeniya proizvolnoj formuly k ekvivalentnoj ej kanonicheskoj forme takoj chto dve formuly ekvivalentny togda i tolko togda kogda ih kanonicheskie formy sovpadayut Kak po dannoj funkcii postroit predstavlyayushuyu eyo formulu s temi ili inymi zadannymi svojstvami naprimer naimenshego razmera i vozmozhno li eto Polozhitelnye otvety na eti i drugie voprosy sushestvenno uvelichivayut prikladnoe znachenie vybrannoj sistemy funkcij Dizyunktivnaya normalnaya forma DNF Osnovnaya statya Dizyunktivnaya normalnaya forma Prostoj konyunkciej ili konyunktom nazyvaetsya konyunkciya nekotorogo konechnogo nabora peremennyh ili ih otricanij prichyom kazhdaya peremennaya vstrechaetsya ne bolee odnogo raza Dizyunktivnoj normalnoj formoj ili DNF nazyvaetsya dizyunkciya prostyh konyunkcij Elementarnaya konyunkciya pravilnaya esli kazhdaya peremennaya vhodit v neyo ne bolee odnogo raza vklyuchaya otricanie polnaya esli kazhdaya peremennaya ili eyo otricanie vhodit v neyo rovno 1 raz monotonnaya esli ona ne soderzhit otricanij peremennyh Naprimer ab c bc a displaystyle a overline b c lor b overline c lor overline a yavlyaetsya DNF Sovershennoj dizyunktivnoj normalnoj formoj ili SDNF otnositelno nekotorogo zadannogo konechnogo nabora peremennyh nazyvaetsya takaya DNF u kotoroj v kazhduyu konyunkciyu vhodyat vse peremennye dannogo nabora prichyom v odnom i tom zhe poryadke Naprimer ab c abc a bc displaystyle a overline b c lor abc lor overline a b overline c Legko ubeditsya chto kazhdoj bulevoj funkcii sootvetstvuet nekotoraya DNF a funkcii otlichnoj ot tozhdestvennogo nulya dazhe SDNF Dlya etogo dostatochno v tablice istinnosti etoj funkcii najti vse bulevy vektory na kotoryh eyo znachenie ravno 1 i dlya kazhdogo takogo vektora b b1 b2 bn displaystyle b b 1 b 2 ldots b n postroit konyunkciyu x1b1x2b2 xnbn displaystyle x 1 b 1 x 2 b 2 ldots x n b n gde xi1 xi displaystyle x i 1 x i xi0 xi displaystyle x i 0 overline x i Dizyunkciya etih konyunkcij yavlyaetsya SDNF ishodnoj funkcii poskolku na vseh bulevyh vektorah eyo znacheniya sovpadayut so znacheniyami ishodnoj funkcii Naprimer dlya implikacii x y displaystyle x to y rezultatom yavlyaetsya x y x y xy displaystyle overline x y lor overline x overline y lor xy chto mozhno uprostit do x y displaystyle overline x lor y Konyunktivnaya normalnaya forma KNF Osnovnaya statya Konyunktivnaya normalnaya forma Konyunktivnaya normalnaya forma KNF opredelyaetsya dvojstvenno k DNF Prostoj dizyunkciej ili dizyunktom nazyvaetsya dizyunkciya odnoj ili neskolkih peremennyh ili ih otricanij prichyom kazhdaya peremennaya vhodit v neyo ne bolee odnogo raza KNF eto konyunkciya prostyh dizyunkcij Sovershennoj konyunktivnoj normalnoj formoj SKNF otnositelno nekotorogo zadannogo konechnogo nabora peremennyh nazyvaetsya takaya KNF u kotoroj v kazhduyu dizyunkciyu vhodyat vse peremennye dannogo nabora prichyom v odnom i tom zhe poryadke Poskolku S KNF i S DNF vzaimodvojstvenny svojstva S KNF povtoryayut vse svojstva S DNF grubo govorya s tochnostyu do naoborot KNF mozhet byt preobrazovana k ekvivalentnoj ej DNF putyom raskrytiya skobok po pravilu a b c ab ac displaystyle a b lor c to ab lor ac kotoroe vyrazhaet distributivnost konyunkcii otnositelno dizyunkcii Posle etogo neobhodimo v kazhdoj konyunkcii udalit povtoryayushiesya peremennye ili ih otricaniya a takzhe vybrosit iz dizyunkcii vse konyunkcii v kotoryh vstrechaetsya peremennaya vmeste so svoim otricaniem Pri etom rezultatom ne obyazatelno budet SDNF dazhe esli ishodnaya KNF byla SKNF Tochno takzhe mozhno vsegda perejti ot DNF k KNF Dlya etogo sleduet ispolzovat pravilo a bc a b a c displaystyle a lor bc to a lor b a lor c vyrazhayushee distributivnost dizyunkcii otnositelno konyunkcii Rezultat nuzhno preobrazovat opisannym vyshe sposobom zameniv slovo konyunkciya na dizyunkciya i naoborot Algebraicheskaya normalnaya forma ANF ili polinom Zhegalkina Osnovnaya statya Polinom Zhegalkina Algebraicheskaya normalnaya forma obsheprinyatoe nazvanie v zarubezhnoj literature ili polinom Zhegalkina nazvanie ispolzuemoe v otechestvennoj literature eto forma predstavleniya logicheskoj funkcii v vide polinoma s koefficientami vida 0 i 1 v kotorom v kachestve proizvedeniya ispolzuetsya operaciya konyunkcii I AND a v kachestve slozheniya slozhenie po modulyu 2 isklyuchayushee ILI XOR Dlya polucheniya polinoma Zhegalkina sleduet vypolnit sleduyushie dejstviya Poluchit SDNF funkcii Vse ILI zamenit na Isklyuchayushee ILI Vo vseh termah zamenit elementy s otricaniem na konstrukciyu element isklyuchayushee ILI 1 Raskryt skobki po pravilam algebry Zhegalkina i privesti poparno odinakovye termy Peremennaya bulevoj funkcii vhodit v eyo polinom Zhegalkina togda i tolko togda kogda ona sushestvenna Polnye sistemy bulevyh funkcijOsnovnaya statya Zamknutye klassy bulevyh funkcij Superpoziciya i zamknutye klassy funkcij Rezultat vychisleniya bulevoj funkcii mozhet byt ispolzovan v kachestve odnogo iz argumentov drugoj funkcii Rezultat takoj operacii superpozicii mozhno rassmatrivat kak novuyu bulevu funkciyu so svoej tablicej istinnosti Naprimer funkcii f x y z x y z displaystyle f x y z overline x overline y lor z superpoziciya konyunkcii dizyunkcii i dvuh otricanij budet sootvetstvovat sleduyushaya tablica x2 x displaystyle x 2 x x1 y displaystyle x 1 y x0 z displaystyle x 0 z f x y z displaystyle f x y z 0 0 0 10 0 1 10 1 0 10 1 1 11 0 0 01 0 1 01 1 0 11 1 1 0 Govoryat chto mnozhestvo funkcij zamknuto otnositelno operacii superpozicii esli lyubaya superpoziciya funkcij iz dannogo mnozhestva tozhe vhodit v eto zhe mnozhestvo Zamknutye mnozhestva funkcij nazyvayut takzhe zamknutymi klassami V kachestve prostejshih primerov zamknutyh klassov bulevyh funkcij mozhno nazvat mnozhestvo x displaystyle x sostoyashee iz odnoj tozhdestvennoj funkcii ili mnozhestvo 0 displaystyle 0 vse funkcii iz kotorogo tozhdestvenno ravny nulyu vne zavisimosti ot svoih argumentov Zamknuty takzhe mnozhestvo funkcij x x displaystyle x overline x i mnozhestvo vseh unarnyh funkcij A vot obedinenie zamknutyh klassov mozhet takovym uzhe ne yavlyatsya Naprimer obediniv klassy 0 displaystyle 0 i x x displaystyle x overline x my s pomoshyu superpozicii 0 displaystyle overline 0 smozhem poluchit konstantu 1 kotoraya v ishodnyh klassah otsutstvovala Razumeetsya mnozhestvo P2 displaystyle P 2 vseh vozmozhnyh bulevyh funkcij tozhe yavlyaetsya zamknutym Tozhdestvennost i dvojstvennost Dve bulevy funkcii tozhdestvenny drug drugu esli na lyubyh odinakovyh naborah argumentov oni prinimayut ravnye znacheniya Tozhdestvennost funkcij f i g mozhno zapisat naprimer tak f x1 x2 xn g x1 x2 xn displaystyle f x 1 x 2 dots x n g x 1 x 2 dots x n Prosmotrev tablicy istinnosti bulevyh funkcij legko poluchit takie tozhdestva 0 1 displaystyle overline 0 1 1 0 displaystyle overline 1 0 x x displaystyle overline overline x x xy yx displaystyle xy yx x y y x displaystyle x lor y y lor x 0x 0 displaystyle 0x 0 1x x displaystyle 1x x 0 x x displaystyle 0 lor x x 1 x 1 displaystyle 1 lor x 1 xx x x x displaystyle xx x lor x x A proverka tablic postroennyh dlya nekotoryh superpozicij dast sleduyushie rezultaty xx 0 displaystyle x overline x 0 x x 1 displaystyle x lor overline x 1 x y x y displaystyle overline x cdot y overline x lor overline y x y x y displaystyle overline x cdot overline y overline x lor y zakony de Morgana x y z xy xz displaystyle x y lor z xy lor xz x yz x y x z displaystyle x lor yz x lor y x lor z distributivnost konyunkcii i dizyunkcii Funkciya g x1 x2 xn displaystyle g x 1 x 2 dots x n nazyvaetsya dvojstvennoj funkcii f x1 x2 xn displaystyle f x 1 x 2 dots x n esli f x1 x2 xn g x1 x2 xn displaystyle f overline x 1 overline x 2 dots overline x n overline g x 1 x 2 dots x n Legko pokazat chto v etom ravenstve f i g mozhno pomenyat mestami to est funkcii f i g dvojstvenny drug drugu Iz prostejshih funkcij dvojstvenny drug drugu konstanty 0 i 1 a iz zakonov de Morgana sleduet dvojstvennost konyunkcii i dizyunkcii Tozhdestvennaya funkciya kak i funkciya otricaniya dvojstvenna sama sebe Esli v bulevom tozhdestve zamenit kazhduyu funkciyu na dvojstvennuyu ej snova poluchitsya vernoe tozhdestvo V privedyonnyh vyshe formulah legko najti dvojstvennye drug drugu pary Polnota sistemy kriterij Posta Osnovnaya statya Kriterij Posta Sistema bulevyh funkcij nazyvaetsya polnoj esli mozhno postroit ih superpoziciyu tozhdestvennuyu lyuboj zaranee zadannoj funkcii Govoryat eshyo chto zamykanie dannoj sistemy sovpadaet s mnozhestvom P2 displaystyle P 2 Amerikanskij matematik Emil Post vvyol v rassmotrenie sleduyushie zamknutye klassy bulevyh funkcij Funkcii sohranyayushie konstantu P0 displaystyle P 0 i P1 displaystyle P 1 Samodvojstvennye funkcii S displaystyle S Monotonnye funkcii M displaystyle M Linejnye funkcii L displaystyle L Im bylo dokazano chto lyuboj zamknutyj klass bulevyh funkcij ne sovpadayushij s P2 displaystyle P 2 celikom soderzhitsya v odnom iz etih pyati tak nazyvaemyh predpolnyh klassov no pri etom ni odin iz pyati ne soderzhitsya celikom v obedinenii chetyryoh drugih Takim obrazom kriterij Posta dlya polnoty sistemy svoditsya k vyyasneniyu ne soderzhitsya li vsya eta sistema celikom v odnom iz predpolnyh klassov Esli dlya kazhdogo klassa v sisteme najdyotsya funkciya ne vhodyashaya v nego to takaya sistema budet polnoj i s pomoshyu vhodyashih v neyo funkcij mozhno budet poluchit lyubuyu druguyu bulevu funkciyu Post dokazal chto mnozhestvo zamknutyh klassov bulevyh funkcij schyotnoe mnozhestvo Zametim chto sushestvuyut funkcii ne vhodyashie ni v odin iz klassov Posta Lyubaya takaya funkciya sama po sebe obrazuet polnuyu sistemu V kachestve primerov mozhno nazvat shtrih Sheffera ili strelku Pirsa Klassifikaciya bulevyh funkcijPo kolichestvu n vhodnyh operandov ot kotoryh zavisit znachenie na vyhode funkcii razlichayut nularnye n 0 unarnye n 1 binarnye n 2 ternarnye n 3 bulevy funkcii i funkcii ot bolshego chisla operandov Po kolichestvu edinic i nulej v tablice istinnosti otlichayut uzkij klass sbalansirovannyh bulevyh funkcij takzhe nazyvaemyh uravnoveshennymi ili ravnoveroyatnostnymi poskolku pri ravnoveroyatnyh sluchajnyh znacheniyah na vhode ili pri perebore vseh kombinacij po tablice istinnosti veroyatnost polucheniya na vyhode znacheniya 1 ravna 1 2 ot bolee shirokogo klassa nesbalansirovannyh bulevyh funkcij tak zhe nazyvaemyh neuravnoveshennymi poskolku veroyatnost polucheniya na vyhode znacheniya 1 otlichna ot 1 2 Sbalansirovannye bulevy funkcii v osnovnom ispolzuyutsya v kriptografii Po zavisimosti znacheniya funkcii ot perestanovki eyo vhodnyh bitov razlichayut simmetrichnye bulevy funkcii znachenie kotoryh zavisit tolko ot kolichestva edinic na vhode i nesimmetrichnye bulevy funkcii znachenie kotoryh tak zhe zavisit ot perestanovki eyo vhodnyh bit Po znacheniyu funkcii na protivopolozhnyh drug drugu naborah znachenij argumentov otlichayut samodvojstvennye funkcii znachenie kotoryh invertiruetsya pri invertirovanii znacheniya vseh vhodov ot ostalnyh bulevyh funkcij ne obladayushih takim svojstvom Nizhnyaya chast tablicy istinnosti dlya samodvojstvennyh funkcij yavlyaetsya zerkalnym otrazheniem invertirovannoj verhnej chasti esli raspolozhit vhodnye kombinacii v tablice istinnosti v estestvennom poryadke Po algebraicheskoj stepeni nelinejnosti otlichayut linejnye bulevy funkcii ANF kotoryh svoditsya k linejnoj summe po modulyu 2 vhodnyh znachenij i nelinejnye bulevy funkcii ANF kotoryh soderzhit hotya by odnu nelinejnuyu operaciyu konyunkcii vhodnyh znachenij Primerami linejnyh funkcij yavlyayutsya slozhenie po modulyu 2 isklyuchayushee ILI XOR ekvivalentnost a takzhe vse bulevy funkcii ANF kotoryh soderzhit lish linejnye operacii slozheniya po modulyu 2 bez konyunkcij Primerami nelinejnyh funkcij yavlyayutsya konyunkciya I AND shtrih Sheffera NE I NAND strelka Pirsa NE ILI NOR a takzhe vse bulevy funkcii ANF kotoryh soderzhit hotya by odnu nelinejnuyu operaciyu konyunkcii Geometricheskaya interpretaciyaElementy mnozhestva E2n displaystyle E 2 n mozhno predstavlyat sebe kak koordinaty vershin edinichnogo giperkuba Na etom osnovyvaetsya geometricheskaya interpretaciya bulevyh funkcij V geometricheskoj terminologii podmnozhestva buleva giperkuba otozhdestvlyayut s podmnozhestvami vershin naprimer pod granyu giperkuba ponimayut eyo mnozhestvo vershin a pod samim giperkubom mnozhestvo E2n displaystyle E 2 n Samo ponyatie bulev giperkub ili dlya kratkosti govoryat prosto bulev kub formalno mogut opredelyat po raznomu kak edinichnyj kub v evklidovom prostranstve kak graf vershiny kotorogo nabory iz En2 displaystyle E n 2 a ryobra soedinyayut sosednie nabory ili pryamo tak opredelyayut kak E2n displaystyle E 2 n Pri etom pri rabote s etim ponyatiem ego prosto ispolzuyut kak sinonim k E2n displaystyle E 2 n podmnozhestvo buleva kuba sinonim k ponyatiyu podmnozhestvo E2n displaystyle E 2 n vershina buleva kuba sinonim k ponyatiyu nabor rebro sinonim k ponyatiyu para sosednih vershin a k mernuyu gran buleva kuba opredelyayut kak podmnozhestvo E2n displaystyle E 2 n imeyushee vid x1 xn E2n xi1 a1 xin k an k displaystyle x 1 ldots x n in E 2 n x i 1 alpha 1 ldots x i n k alpha n k a1 an k displaystyle alpha 1 ldots alpha n k zdes bulevy konstanty fiksirovannye dlya opredelyonnoj grani Takim obrazom gran buleva kuba mnozhestvo vseh bulevyh vektorov v kotoryh opredelyonnye n k displaystyle n k koordinat imeyut zadannye znacheniya Chislo m n k displaystyle m n k nazyvaetsya korazmernostyu grani buleva kuba Po suti vse eti terminy prosto drugaya terminologiya dlya obektov teorii bulevyh funkcij prosto v nekotoryh sluchayah ona okazyvaetsya udobnee obychnoj terminologii naprimer pri izuchenii DNF i KNF Sloem buleva kuba nazyvaetsya mnozhestvo vershin imeyushih odinakovoe chislo nulej i edinic Bulevy kuby vysokih razmernostej obychno izobrazhayut imenno kak graf ne starayas pridat emu vid obychnogo geometrichekogo giperkuba pri etom vershiny odnogo sloya izobrazhayut na odnoj vysote idya po vozrastaniyu kolichestva edinic snizu vverh Dlya bulevyh funkcij est tri razlichnyh sposobov interpretacii na bulevom kube Mnozhestvom edinic bulevoj funkcii f displaystyle f nazyvaetsya mnozhestvo Nf x1 xn E2n f x1 xn 1 displaystyle N f x 1 ldots x n in E 2 n f x 1 ldots x n 1 Mnozhestvom nulej bulevoj funkcii f displaystyle f nazyvaetsya mnozhestvo Mf x1 xn E2n f x1 xn 0 displaystyle M f x 1 ldots x n in E 2 n f x 1 ldots x n 0 Mnozhestvo edinic kak i mnozhestvo nulej odnoznachno opredelyaet svoyu funkciyu Dve geometricheskih interpretacii bulevyh funkcij na etom i osnovany odna otozhdestvlyaet funkciyu s eyo mnozhestvom edinic a drugaya s mnozhestvom nulej Interpretaciya cherez mnozhestvo edinic udobnee pri izuchenii DNF a cherez mnozhestvo nulej KNF Tretya interpretaciya est prosto raskraska vershin grafa Ispolzuetsya dve kraski 0 displaystyle 0 i 1 displaystyle 1 sootvetstvenno v 0 displaystyle 0 okrashivayutsya te vershiny na kotoryh funkciya prinimaet 0 displaystyle 0 a v 1 displaystyle 1 na kotoroj 1 displaystyle 1 mozhno takzhe predstavlyat eto kak vzveshennyj graf Takaya interpretaciya byvaet udobna dlya predstavleniya linejnyh i monotonnyh funkcij dlya linejnyh funkcij bez fiktivnyh peremennyh takaya raskraska budet pravilnoj i kub obladaet tem svojstvom chto sosednie sloi imeyut protivopolozhnye znacheniya funkcii Dlya monotonnoj funkcii v takoj interpoetacii vse vershiny do kotoryh mozhno dojti ot nulevoj sverhu vniz imeyut znachenie 0 displaystyle 0 a vse vershiny do kotoryh mozhno dojti snizu vverh ot edinichnoj imeyut znachenie 1 displaystyle 1 Interpretaciya mnozhestvom edinic Pri interpretacii funkcii mnozhestvom eyo edinic proishodit sleduyushee sootvetstvie buleva funkciya podmnozhestvo buleva kuba dizyunkciya bulevyh funkcij obedinenie podmnozhestv buleva kuba konyunkciya bulevyh funkcij peresechenie podmnozhestv buleva kuba elementarnaya konyunkciya gran buleva kuba DNF mnozhestvo granej buleva kuba sovershennaya DNF mnozhestvo 0 mernyh granej buleva kuba to est mnozhestvo singltonov vershin buleva kuba funkciya zadavaemaya DNF obedinenie mnozhestva granej buleva kuba implikanta funkcii podmnozhestvo podmnozhestva buleva kuba prostaya implikanta funkcii maksimalnaya gran vhodyashaya v podmnozhestvo buleva kuba to est takaya gran kotoraya ne yavlyaetsya sobstvennym podmnozhestvom nikakoj drugoj grani vhodyashej v podmnozhestvo buleva kuba sokrashyonnaya DNF funkcii mnozhestvo vseh maksimalnyh granej podmnozhestva buleva kuba Interpretaciya mnozhestvom nulej Pri interpretacii funkcii mnozhestvom eyo nulej proishodit sleduyushee sootvetstvie buleva funkciya podmnozhestvo buleva kuba dizyunkciya bulevyh funkcij peresechenie podmnozhestv buleva kuba konyunkciya bulevyh funkcij obedinenie podmnozhestv buleva kuba elementarnaya dizyunkciya gran buleva kuba KNF mnozhestvo granej buleva kuba sovershennaya KNF mnozhestvo 0 mernyh granej buleva kuba funkciya zadavaemaya KNF obedinenie mnozhestva granej buleva kuba sledstvie funkcii podmnozhestvo podmnozhestva buleva kuba prostoe sledstvie funkcii maksimalnaya gran vhodyashaya v podmnozhestvo buleva kuba sokrashyonnaya KNF funkcii mnozhestvo vseh maksimalnyh granej podmnozhestva buleva kuba Sm takzheBuleva algebra Bitovye operacii Kombinacionnaya logika Sekvencialnaya logika Troichnaya logika Troichnye funkcii Logicheskie elementyLiteraturaAlekseev V B lektor Pospelov A D sostavitel Diskretnaya matematika kurs lekcij II semestr M Izd otd fak Vychislit matematiki i kibernetiki MGU im M V Lomonosova 2002 44 s Bykova S V Burkatovskaya Yu B Bulevy funkcii uchebnoe posobie dlya studentov vysshih uchebnyh zavedenij obuchayushihsya po specialnosti VPO 010501 Prikladnaya matematika i informatika Tomsk Tomskij gos un t 2010 190 s Gavrilov G P Sapozhenko A A Zadachi i uprazhneniya po diskretnoj matematike M FIZMATLIT 2009 Igoshin V I Matematicheskaya logika i teoriya algoritmov 2 e izd stereotip M Izdatelskij centr Akademiya 2008 448 s Kuznecov O P Diskretnaya matematika dlya inzhenera SPb Lan 2007 394 s Uchebnye posobiya kafedry matematicheskoj kibernetiki VMiK MGU na sajte kafedry matematicheskoj kibernetiki MGU VMK Lozhkin S A Lekcii po osnovam kibernetiki ucheb posobie po kursam Osnovy kibernetiki i Struktur realizaciya diskret funkcij M Izd otd fak Vychislit matematiki i kibernetiki MGU im M V Lomonosova 2004 254 s Marchenkov S S Zamknutye klassy bulevyh funkcij M Fizmatlit 2001 126 s Samofalov K G Romankevich A M Valujskij V N Kanevskij Yu S Pinevich M M Prikladnaya teoriya cifrovyh avtomatov Kiev Visha Shkola 1987 S 183 189 375 s Yablonskij S V Vvedenie v diskretnuyu matematiku M Vyssh shk 2006 384 s Nurlybaev A B Ob uproshenii bulevyh funkcij s mnozhestvom nulej specialnogo vida rus Diskretnaya matematika 1991 T 3 1 S 88 97 Ragimhanov V R Diskretnaya matematika Chast IV Bulevy funkcii Mahachkala DGU 2019 102 s Diskretnaya matematika uchebnoe posobie Tomsk Tom gos un t In t distancionnogo obrazovaniya IDO TGU 2007 SsylkiIgoshin 2008 Glava 2 Bulevy funkcii Igoshin 2008 s 94 Igoshin 2008 s 104 105 Samofalov 1987 Ragimhanov 2019 s 30 Nomera logicheskih funkcij https dzen ru a Zn5r7J4wYEgC3ubl Elementarnye bulevy funkcii neopr Data obrasheniya 9 noyabrya 2016 Arhivirovano 10 noyabrya 2016 goda Izbrannye voprosy teorii bulevyh funkcij A S Balyuk i dr Pod red S F Vinokurova i N A Peryazeva M FIZMATLIT 2001 192 s S 13 Igoshin 2008 s 96 I A Nasyrov uchebno metodicheskoe posobie neopr Data obrasheniya 20 noyabrya 2020 Arhivirovano 22 dekabrya 2019 goda Borland Turbo BASIC Owners Handbook 1987 p 80 Yablonskij 2006 s 307 Nurlybaev 1991 s 88
