
- •Алгебра логики
- •Содержание
- •Определение[править | править исходный текст]
- •Аксиомы[править | править исходный текст]
- •Логические операции[править | править исходный текст]
- •Свойства логических операций[править | править исходный текст]
- •История[править | править исходный текст]
- •См. Также[править | править исходный текст] Булева алгебра
- •Содержание
- •Некоторые свойства[править | править исходный текст]
- •Основные тождества[править | править исходный текст]
- •Примеры[править | править исходный текст]
- •Принцип двойственности[править | править исходный текст]
- •Представления булевых алгебр[править | править исходный текст]
- •Аксиоматизация[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Примечания[править | править исходный текст]
- •Литература[править | править исходный текст]
- •Булева функция
- •Содержание
- •Основные сведения[править | править исходный текст]
- •Нульарные функции[править | править исходный текст]
- •Унарные функции[править | править исходный текст]
- •Бинарные функции[править | править исходный текст]
- •Тернарные функции[править | править исходный текст]
- •Полные системы булевых функций[править | править исходный текст]
- •Суперпозиция и замкнутые классы функций[править | править исходный текст]
- •Тождественность и двойственность[править | править исходный текст]
- •Полнота системы, критерий Поста[править | править исходный текст]
- •Представление булевых функций[править | править исходный текст]
- •Дизъюнктивная нормальная форма (днф)[править | править исходный текст]
- •Конъюнктивная нормальная форма (кнф)[править | править исходный текст]
- •Алгебраическая нормальная форма (анф или полином Жегалкина)[править | править исходный текст]
- •Классификация булевых функций[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Литература[править | править исходный текст]
- •Битовые операции
- •Содержание
- •Побитовые логические операции[править | править исходный текст]
- •Побитовое отрицание (not) [править | править исходный текст]
- •Побитовое и (and) [править | править исходный текст]
- •Побитовое или (or) [править | править исходный текст]
- •Сложение по модулю два (xor) [править | править исходный текст]
- •Другие побитовые логические операции[править | править исходный текст]
- •Битовые сдвиги[править | править исходный текст]
- •В теории сложности алгоритмов[править | править исходный текст]
- •Связь с другими науками[править | править исходный текст] Битовые операции и математическая логика[править | править исходный текст]
- •Обобщение операций на булеву алгебру[править | править исходный текст]
- •Битовые операции как основа цифровой техники[править | править исходный текст]
- •Практические применения[править | править исходный текст]
- •Физическая реализация битовых операций[править | править исходный текст]
- •Схемы аппаратной логики[править | править исходный текст]
- •Использование в программировании[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Примечания[править | править исходный текст]
- •Навигация
- •Двоичный сумматор[править | править исходный текст]
Тождественность и двойственность[править | править исходный текст]
Две
булевы функции тождественны друг другу,
если на любых одинаковых наборах
аргументов они принимают равные значения.
Тождественность функций f и g можно
записать, например, так:
Просмотрев таблицы истинности булевых функций, легко получить такие тождества:
|
|
|
|
|
|
|
|
|
|
А проверка таблиц, построенных для некоторых суперпозиций, даст следующие результаты:
|
|
|
|
(законы де Моргана) |
(дистрибутивностьконъюнкции и дизъюнкции)
Функция
называется
двойственной функции
,
если
.
Легко показать, что в этом равенстве f
и g можно поменять местами, то есть
функции f и g двойственны друг другу. Из
простейших функций двойственны друг
другу константы 0 и 1, а из законов де
Моргана следует двойственность конъюнкции
и дизъюнкции. Тождественная функция,
как и функция отрицания, двойственна
сама себе.
Если в булевом тождестве заменить каждую функцию на двойственную ей, снова получится верное тождество. В приведённых выше формулах легко найти двойственные друг другу пары.
Полнота системы, критерий Поста[править | править исходный текст]
Основная статья: Критерий Поста
Система
булевых функций называется полной,
если можно построить их суперпозицию,
тождественную любой заранее заданной
функции. Говорят ещё, чтозамыканиеданной системы совпадает с множеством
.
Американский математик Эмиль Постввёл в рассмотрение следующие замкнутые классы булевых функций:
Функции, сохраняющие константу
и
;
Самодвойственные функции
;
Монотонные функции
;
Линейные функции
.
Им
было доказано, что любой замкнутый класс
булевых функций, не совпадающий с
,
целиком содержится в одном из этих пяти
так называемыхпредполных классов,
но при этом ни один из пяти не содержится
целиком в объединении четырёх других.
Таким образом, критерий Поста для полноты
системы сводится к выяснению, не
содержится ли вся эта система целиком
в одном из предполных классов. Если для
каждого класса в системе найдётся
функция, не входящая в него, то такая
система будет полной, и с помощью входящих
в неё функций можно будет получить любую
другую булеву функцию. Пост доказал,
что множество замкнутых классов булевых
функций —счётное
множество.
Заметим, что существуют функции, не входящие ни в один из классов Поста. Любая такая функция сама по себе образует полную систему. В качестве примеров можно назвать штрих Шеффераилистрелку Пирса.
Представление булевых функций[править | править исходный текст]
Основная статья: Представление булевых функций
Теорема
Поста открывает путь к представлению
булевых функций синтаксическим способом,
который в ряде случаев оказывается
намного удобнее, чем таблицы истинности.
Отправной точкой здесь служит нахождение
некоторой полной системы функций
.
Тогда каждая булева функция может быть
представлена некоторымтермомвсигнатуре
,
который в данном случае называют такжеформулой.
Относительно выбраной системы функций
полезно знать ответы на следующие
вопросы:
Как построить по данной функции представляющую её формулу?
Как проверить, что две разные формулы эквивалентны, то есть задают одну и ту же функцию?
В частности: существует ли способ приведения произвольной формулы к эквивалентной ей канонической форме такой, что две формулы эквивалентны тогда и только тогда, когда их канонические формы совпадают?
Как по данной функции построить представляющую её формулу с теми или иными заданными свойствами (например, наименьшего размера), и возможно ли это?
Положительные ответы на эти и другие вопросы существенно увеличивают прикладное значение выбранной системы функций.