대수 정규형

Algebraic normal form

부울 대수학에서 대수 정규 형식(ANF), 링섬 정규 형식(RSNF 또는 RNF), 절갈킨 정규 형식 또는 리드-뮬러 확장(Reed-Muller expansion)은 세 가지 보조 형식 중 하나로 논리적 공식을 작성하는 방법이다.

  • 전체 공식은 순전히 참이거나 거짓이다.
    1
    0
  • 하나 이상의 변수가 항으로 AND로 결합되고, 그 다음 하나 이상의 항이 ANF로 XOR로 결합된다. NOT는 허용되지 않는다.
    ⊕ b ab ab abc.
또는 표준 명제 논리 기호:
  • 순전히 참된 용어를 사용한 이전 보조양식:
    1 ⊕ a ⊕ b abc abc

Formulas written in ANF are also known as Zhegalkin polynomials (Russian: полиномы Жегалкина) and Positive Polarity (or Parity) Reed–Muller expressions (PPRM).[1]

공통 용법

ANF는 정상형식으로, 등가공식 두 개가 동일한 ANF로 변환된다는 뜻으로, 두 공식이 자동화된 정리증명을 위해 등가공식이 맞는지 쉽게 알 수 있다. 다른 정상 형태와 달리 변수 이름의 단순한 목록으로 나타낼 수 있다. 결막이절 정규 형태도 각 변수의 부정 여부를 기록해야 한다. 부정 정상 형태는 평등을 등가관계로 사용하지 않기 때문에 그러한 목적에 적합하지 않다: ∨ ¬a는 동등하더라도 1과 같은 것으로 축소되지 않는다.

공식을 ANF에 넣으면 선형 함수(예: 선형 피드백 시프트 레지스터에서 사용됨)를 쉽게 식별할 수 있다. 선형 함수는 단일 리터럴의 합이다. 비선형 피드백 시프트 레지스터의 특성은 ANF의 피드백 기능의 특정 특성에서도 추론할 수 있다.

대수 정규 형식 내에서 연산 수행

ANF 결과를 얻기 위해 ANF 입력에 대해 표준 부울 연산을 수행하는 간단한 방법이 있다.

XOR(논리적 배타적 분리)은 다음과 같이 직접 수행된다.

(1 ⊕ x) ⊕ (1 ⊕ x ⊕ y)
1 ⊕ x1 ⊕ x ⊕ y
1 ⊕ 1 ⊕ x ⊕ x ⊕ y
y

NOT(논리적 부정)은 XORing 1:[2]

¬(1 ⊕ x ⊕ y)
1 ⊕(1 ⊕ x ⊕ y)
1 ⊕ 1 ⊕ x ⊕ y
x ⊕ y

AND(논리적 접속사)는 대수적으로[3] 분포한다.

(1x)(1 ⊕ x ⊕ y)
1(1 ⊕ x ⊕ y)x(1 ⊕ x ⊕ y)
(1 ⊕ x ⊕ y) ⊕ (x ⊕ x x x xy)
1 ⊕ x x x y x y y ⊕ xy
1 ⊕ x ⊕ y ⊕ xy

OR (논리적 구분)은 1 ⊕ (1 ⊕ a)(1 ⊕ a)(1 ⊕ b)[4] 또는 ⊕ b ab ab[5] (그렇지 않으면 더 쉽다) 중 하나를 사용한다.

(1 ⊕ x) + (1 ⊕ x ⊕ y)
1⊕(1⊕ 1⊕ x)(1⊕ 1 1 x y)
1 ⊕ x(x ⊕ y)
1⊕ x x x x xy

대수 정규 형식으로 변환

공식의 각 변수는 이미 순수 ANF에 있으므로 전체 공식을 ANF로 가져오려면 위에 표시된 공식의 부울 연산만 수행하면 된다. 예를 들면 다음과 같다.

x + (y ⋅ ¬z)
x + (y(1 ⊕ z)
x + (y ⊕ yz)
x ⊕ (y ⊕ yz) x (y ⊕ yz)
x ⊕ y ⊕ xy ⊕ yz ⊕ xyz

형식적 표현

ANF는 때때로 동등한 방식으로 설명된다.

여기서 1,1,1, , { 0 ∗ ∗ {, 1 {0},1,2 f f를 완전히 설명한다

다중 인수 부울 함수를 반복적으로 도출

하나의 인수를 갖는 함수는 네 가지뿐입니다.

여러 인수로 함수를 나타내기 위해 다음과 같은 동등성을 사용할 수 있다.

, where

정말,

  • = 0 이면 1 = 0 및 f ()= ((0
  • if then and so

(는 f {\보다 인수가 적기 때문에 이 프로세스를 반복적으로 사용하면 하나의 변수로 함수를 마칠 수 있다. 예를 들어, , y)= {\ y논리적 또는):

  • ( , y)= y= y f y= f (,y) = y = y y = 1 y = 1
  • 다음에 f( x, )= ( )
  • 분포별로 최종 ANF:( , )= = x x x x { x { x { x { x { x {{ { { { { { { { { { { { { = = = = = = = { = = = { = = { { { { { { { {(

참고 항목

참조

  1. ^ Steinbach, Bernd; Posthoff, Christian (2009). "Preface". Logic Functions and Equations - Examples and Exercises (1st ed.). Springer Science + Business Media B. V. p. xv. ISBN 978-1-4020-9594-8. LCCN 2008941076.
  2. ^ WolframAlpha NOT 등가 시연: ¬a = 1⊕ a
  3. ^ WolframAlpha AND-equivalance 데모: (a c b)(c ac d) = ac ⊕ 광고 ⊕ bc ⊕ bd
  4. ^ 드 모건의 법칙으로부터
  5. ^ WolframAlpha OR 등가 시연: a + b = a ⊕ b ab ab

추가 읽기