stringtranslate.com

Алгебраическая нормальная форма

В булевой алгебре алгебраическая нормальная форма ( ANF ), нормальная форма кольцевой суммы ( RSNF или RNF ), нормальная форма Жегалкина или расширение Рида–Мюллера — это способ записи формул пропозициональной логики в одной из трех подформ:

Формулы, написанные в ANF, также известны как полиномы Жегалкина и выражения Рида – Мюллера положительной полярности (или четности) (PPRM). [1]

Обычное использование

АНФ — это каноническая форма , что означает, что две логически эквивалентные формулы преобразуются в одну и ту же АНФ, что позволяет легко показать, эквивалентны ли две формулы для автоматического доказательства теорем . В отличие от других нормальных форм, ее можно представить как простой список списков имен переменных — конъюнктивные и дизъюнктивные нормальные формы также требуют записи, отрицается ли каждая переменная или нет. Нормальная форма отрицания непригодна для определения эквивалентности, поскольку в нормальных формах отрицания эквивалентность не означает равенства: a ∨ ¬a не сводится к тому же, что и 1, даже если они логически эквивалентны.

Помещение формулы в ANF также позволяет легко идентифицировать линейные функции (используемые, например, в сдвиговых регистрах с линейной обратной связью ): линейная функция — это та функция, которая представляет собой сумму одиночных литералов. Свойства сдвиговых регистров с нелинейной обратной связью также можно вывести из определенных свойств функции обратной связи в ANF.

Выполнение операций в алгебраической нормальной форме

Существуют простые способы выполнения стандартных логических операций над входными данными ANF для получения результатов ANF.

XOR (логическая исключающая дизъюнкция) выполняется напрямую:

( 1 ⊕ Икс ) ⊕ ( 1 ⊕ Икс ⊕ у )
1 ⊕ х1 ⊕ х ⊕ у
1 ⊕ 1 ⊕ х ⊕ х ⊕ у
й

НЕ (логическое отрицание) — это операция XOR 1: [2]

¬ (1 ⊕ х ⊕ у)
1 ⊕ (1 ⊕ х ⊕ у)
1 ⊕ 1 ⊕ х ⊕ у
х ⊕ у

И (логическая конъюнкция) распределяется алгебраически [3]

( 1Икс ) (1 ⊕ Икс ⊕ у)
1 (1 ⊕ х ⊕ у)х (1 ⊕ х ⊕ у)
(1 ⊕ х ⊕ у) ⊕ (х ⊕ х ⊕ ху)
1 ⊕ х ⊕ х ⊕ х ⊕ у ⊕ ху
1 ⊕ х ⊕ у ⊕ ху

OR (логическая дизъюнкция) использует либо 1 ⊕ (1 ⊕ a)(1 ⊕ b) [4] (проще, когда оба операнда имеют чисто истинные термины), либо a ⊕ b ⊕ ab [5] (проще в противном случае):

( 1 ⊕ Икс ) + ( 1 ⊕ Икс ⊕ у )
1 ⊕ (1 ⊕ 1 ⊕ Икс )(1 ⊕ 1 ⊕ Икс ⊕ у )
1 ⊕ х(х ⊕ у)
1 ⊕ х ⊕ ху

Преобразование в алгебраическую нормальную форму

Каждая переменная в формуле уже находится в чистом ANF, поэтому нужно только выполнить логические операции формулы, как показано выше, чтобы получить всю формулу в ANF. Например:

х + (у ⋅ ¬z)
х + (у(1 ⊕ z))
х + (у ⊕ уз)
х ⊕ (у ⊕ yz) ⊕ x(y ⊕ yz)
Икс ⊕ у ⊕ ху ⊕ yz ⊕ xyz

Официальное представительство

ANF ​​иногда описывается аналогичным образом:

где полностью описано .

Рекурсивный вывод булевых функций с несколькими аргументами

Существует всего четыре функции с одним аргументом:

Чтобы представить функцию с несколькими аргументами, можно использовать следующее равенство:

, где

Действительно,

Поскольку оба и имеют меньше аргументов, чем следует, рекурсивно используя этот процесс, мы закончим с функциями с одной переменной. Например, давайте построим ANF из (логического или):

Смотрите также

Рекомендации

  1. ^ Штайнбах, Бернд [на немецком языке] ; Постхофф, Кристиан (2009). "Предисловие". Логические функции и уравнения - примеры и упражнения (1-е изд.). Springer Science + Business Media BV с. хв. ISBN 978-1-4020-9594-8. LCCN  2008941076.
  2. ^ Демонстрация НЕ-эквивалентности WolframAlpha: ¬a = 1 ⊕ a
  3. ^ Демонстрация И-эквивалентности WolframAlpha: (a ⊕ b) (c ⊕ d) = ac ⊕ ad ⊕ bc ⊕ bd
  4. ^ Из законов Де Моргана
  5. ^ Демонстрация ИЛИ-эквивалентности WolframAlpha: a + b = a ⊕ b ⊕ ab

дальнейшее чтение