-
Способы задания булевых функций
Основными являются следующие способы представления булевых функций: табличный и аналитический.
Поскольку область определения состоит из конечного числа элементов (), то булеву функцию можно задать при помощи таблицы истинности (соответствия), в которой для каждого набора значений аргументов указывается значение функции (табл. 1).
Таблица 1. Таблица истинности булевой функции
-
00…00
00…01
00…10
…
…
11…10
11…11
В качестве примера в таблице 2 задана функция от трех переменных, которая равна 1, нечетное количество переменных равно 1, и 0 – в остальных случаях.
Таблица 2. Пример задания булевой функции
-
000
0
001
1
010
1
011
0
100
1
101
0
110
0
111
1
Отметим, что наборы значений аргументов в таблице записывают в естественной форме, то есть -ый по порядку набор представляет собой двоичную запись числа , =0, 1, 2, …, .
Обозначим через систему всех булевых функций от переменных. Число всех функций из равно числу перестановок с повторениями значений функции {0, 1} на выборке из входных наборов переменных, то есть .
Следует отметить, что числа с ростом быстро растут:
Следовательно, уже при сравнительно небольших значениях () перебор функций из данного множества становится практически невозможен даже с использованием вычислительной техники. Кроме того, с ростом числа аргументов таблица истинности сильно усложняется. Так, например, уже при не очень большом числе аргументов, скажем при =10, таблица становится громоздкой (имеет 1024 строки), а при =20 – практически необозримой. Поэтому используют другие способы задания функции, среди которых основным является аналитический способ, то есть при помощи формул. При этом способе некоторые функции выделяются и называются элементарными, а другие функции строят из элементарных с помощью суперпозиции. Такой способ задания функции хорошо известен в математическом анализе. Например, функция построена суперпозицией многочлена , квадратного корня, косинуса и функции .
-
Элементарные функции алгебры логики
Булевы функции одного аргумента представлены в таблице 3.
Таблица 3. Булевы функции одного аргумента
-
0
0
0
1
1
1
0
1
0
1
Среди этих функций и представляют собой константы, , а называется отрицанием (инверсией, логическое НЕ):
В таблице 4 приведены все 16 функций от двух аргументов.
Таблица 4. Булевы функции от двух аргументов
0 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
Рассмотрим более подробно эти функции.
Константы: – тождественная ложь,
– тождественная истина.
Унарные функции (функции одного аргумента).
Функции тождественности:
или, или.
Отрицание (инверсия, логическое НЕ):
, .
Бинарные функции (функции двух аргументов).
Конъюнкция (логическое умножение, логическое И):
, .
Читается “ и ”. Так как эта операция совпадает с операцией умножения в элементарной алгебре, то для конъюнкции используют также обозначение или . Конъюнкция двух высказываний истинна только в том случае, когда истинны оба высказывания.
Дизъюнкция (логическое сложение, логическое ИЛИ):
.
Читается “ или ”. Дизъюнкция двух высказываний ложна только в том случае, когда ложны оба высказывания.
Для конъюнкции и дизъюнкции можно записать
, .
Импликация (функция логического следования):
(импликация от к ).
Читается “если , то ”, “ влечет ”, “из следует”. – условие импликации, а – её заключение. Это важная функция, особенно в математической логике. Её можно рассматривать следующим образом. Из ложного условия можно вывести и истинное и ложное заключение (и это правильно). Если заключение истинно, то его можно вывести как из истинного так и из ложного условия (и это тоже правильно). Импликация ложна только в случае, когда условие истинно, а заключение ложно.
Аналогично имеем импликацию от к :
.
Функция неравнозначности (сумма по модулю 2, исключающее ИЛИ):
.
Читается “либо , либо ” или “не эквивалентно ”.
Функция эквивалентности (равнозначности, подобия):
, , .
Читается “ в том и только том случае, если ”.
Стрелка Пирса (функция Вебба, функция Даггера, штрих Лукасевича, антидизъюнкция):
.
Эта функция является отрицанием дизъюнкции и поэтому ее называют также “НЕ ИЛИ”. Читается “не или ”.
Штрих Шеффера (антиконъюнкция):
.
Эта функция – отрицание конъюнкции и поэтому ее называют также “НЕ И”. Читается “не и ”.
Функция запрета (отрицание импликации):
.
Читается “, но не ”. Аналогично
.