Функциональная полнота

Материал из testwiki
Версия от 16:54, 30 января 2023; imported>Шароземелец (Преамбула: стилевые правки)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Шаблон:Нет источников Функциональная полнота множества логических операций или булевых функций — это возможность выразить все возможные значения таблиц истинности с помощью формул из элементов этого множества. Математическая логика обычно использует такой набор операций: конъюнкция (), дизъюнкция (), отрицание (¬), импликация () и эквиваленция (). Это множество операций является функционально полным. Но оно не является минимальной функционально полной системой, поскольку:

AB=¬AB
AB=(AB)(BA)

Таким образом {¬,,} также является функционально полной системой. Но также может быть выражено (в соответствии с законом де Моргана) как:

AB=¬(¬A¬B)

также может быть определена через подобным образом:

AB=¬(¬A¬B)

Также может быть выражена через следующим образом:

 AB=(AB)B

Итак {¬} и одна из {,,} является минимальной функционально полной системой.

Критерий полноты

Шаблон:Main Критерий Поста описывает необходимые и достаточные условия функциональной полноты множеств булевых функций. Был сформулирован американским математиком Эмилем Постом в 1941 году.

Критерий:

Множество булевых функций является функционально полным тогда и только тогда, когда оно не содержится полностью ни в одном из предполных классов.

Минимальные множества бинарных операций

Множества из одного элемента
{|} (штрих Шеффера), {} (стрелка Пирса)
Множества двух элементов
{,¬},{,¬},{,¬},{,},{↛,},{,↛},{,↮},{↛,}
Множества трёх элементов
{,,↮},{,↮,},{,,},{,,↮},{,↮,},{,,}.

То же в другой нотации:

,,, ,,1, ,,0, ,,, ,,1 (см. алгебра Жегалкина), ,,0 (инверсный к предыдущему).

См. также