สิ่งที่คุณกำลังอธิบายคือความสมบูรณ์แบบในการใช้งาน
สิ่งนี้อธิบายชุดของตัวดำเนินการเชิงตรรกะที่เพียงพอที่จะ "แสดงตารางความจริงที่เป็นไปได้ทั้งหมด" ชุดตัวดำเนินการ Java ของคุณ { ||
, !
} เพียงพอแล้ว; มันสอดคล้องกับชุด {∨, ¬} ซึ่งอยู่ภายใต้ส่วน "ชุดตัวดำเนินการที่สมบูรณ์แบบที่ใช้งานได้น้อยที่สุด"
ชุดของตารางความจริงทั้งหมดหมายถึงชุดที่เป็นไปได้ทั้งหมดของค่าบูลีน 4 ค่าที่สามารถเป็นผลลัพธ์ของการดำเนินการระหว่างค่าบูลีน 2 ค่า เนื่องจากมีค่าที่เป็นไปได้ 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
มีอีกหลายชุดที่ทำหน้าที่ได้อย่างสมบูรณ์เช่นชุดหนึ่งองค์ประกอบ {NAND} และ {NOR} ซึ่งไม่มีโอเปอเรเตอร์เดียวใน Java