당신이 설명하는 것은 기능적 완전성 입니다.
여기에는 "가능한 모든 진리표를 표현"하기에 충분한 논리 연산자 세트가 설명되어 있습니다. 자바 연산자 세트는, { ||
, !
}는 충분하다; "최소 기능적으로 완전한 오퍼레이터 세트"섹션에 나열된 {∨, ¬} 세트에 해당합니다.
모든 진리표 세트는 2 개의 부울 값 사이의 연산의 결과 일 수있는 가능한 모든 4 개의 부울 값 세트를 의미합니다. 부울에는 2 개의 가능한 값이 있기 때문에 2 4 또는 16 개의 가능한 진리표가 있습니다.
A B | 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
----+------------------------------------------------
T T | T T T T T T T T F F F F F F F F
T F | T T T T F F F F T T T T F F F F
F T | T T F F T T F F T T F F T T F F
F F | T F T F T F T F T F T F T F T F
다음은 진리표 번호 (0-15)의 표 ||
와 !
이를 생성하는 조합 및 설명입니다.
Table | Operation(s) | Description
-------+----------------------------------+-------------
0 | A || !A | TRUE
1 | A || B | OR
2 | A || !B | B IMPLIES A
3 | A | A
4 | !A || B | A IMPLIES B
5 | B | B
6 | !(!A || !B) || !(A || B) | XNOR (equals)
7 | !(!A || !B) | AND
8 | !A || !B | NAND
9 | !(A || !B) || !(!A || B) | XOR
10 | !B | NOT B
11 | !(!A || B) | NOT A IMPLIES B
12 | !A | NOT A
13 | !(A || !B) | NOT B IMPLIES A
14 | !(A || B) | NOR
15 | !(A || !A) | FALSE
Java에는 해당 단일 연산자가없는 하나의 요소 세트 {NAND} 및 {NOR}을 포함하여 기능적으로 완전한 다른 세트가 많이 있습니다.