Ternary logic: Difference between revisions
Content added Content deleted
Line 2,975: | Line 2,975: | ||
implies = (a, b) => nand(a, not(b)); |
implies = (a, b) => nand(a, not(b)); |
||
iff = (a, b) => or(and(a, b), nor(a, b)); |
iff = (a, b) => or(and(a, b), nor(a, b)); |
||
xor = (a, b) => not(iff(a, b)); |
|||
</lang> |
</lang> |
||
... to test it |
... to test it |
||
<lang Javascript> |
<lang Javascript> |
||
functor = {nand, and, or, nor, implies, iff} |
functor = {nand, and, or, nor, implies, iff, xor} |
||
display = {nand: '⊼', and: '∧', or: '∨', nor: '⊽', implies: '⇒', iff: '⇔', not: '¬'} |
display = {nand: '⊼', and: '∧', or: '∨', nor: '⊽', implies: '⇒', iff: '⇔', xor: '⊻', not: '¬'} |
||
trit_values = Object.values(trit) |
trit_values = Object.values(trit) |
||
Line 2,985: | Line 2,986: | ||
for (let a of trit_values) log += `${display.not}${a} = ${a}\n` |
for (let a of trit_values) log += `${display.not}${a} = ${a}\n` |
||
log += '\nNAND AND OR NOR IMPLIES IFF' |
log += '\nNAND AND OR NOR IMPLIES IFF XOR' |
||
for (let a of trit_values) { |
for (let a of trit_values) { |
||
for (let b of trit_values) { |
for (let b of trit_values) { |
||
Line 3,001: | Line 3,002: | ||
¬T = T |
¬T = T |
||
NAND AND OR NOR IMPLIES IFF |
NAND AND OR NOR IMPLIES IFF XOR |
||
F ⊼ F = T F ∧ F = F F ∨ F = F F ⊽ F = T F ⇒ F = T F ⇔ F = T |
F ⊼ F = T F ∧ F = F F ∨ F = F F ⊽ F = T F ⇒ F = T F ⇔ F = T F ⊻ F = F |
||
F ⊼ U = T F ∧ U = F F ∨ U = U F ⊽ U = U F ⇒ U = T F ⇔ U = U |
F ⊼ U = T F ∧ U = F F ∨ U = U F ⊽ U = U F ⇒ U = T F ⇔ U = U F ⊻ U = U |
||
F ⊼ T = T F ∧ T = F F ∨ T = T F ⊽ T = F F ⇒ T = T F ⇔ T = F |
F ⊼ T = T F ∧ T = F F ∨ T = T F ⊽ T = F F ⇒ T = T F ⇔ T = F F ⊻ T = T |
||
U ⊼ F = T U ∧ F = F U ∨ F = U U ⊽ F = U U ⇒ F = U U ⇔ F = U |
U ⊼ F = T U ∧ F = F U ∨ F = U U ⊽ F = U U ⇒ F = U U ⇔ F = U U ⊻ F = U |
||
U ⊼ U = U U ∧ U = U U ∨ U = U U ⊽ U = U U ⇒ U = U U ⇔ U = U |
U ⊼ U = U U ∧ U = U U ∨ U = U U ⊽ U = U U ⇒ U = U U ⇔ U = U U ⊻ U = U |
||
U ⊼ T = U U ∧ T = U U ∨ T = T U ⊽ T = F U ⇒ T = T U ⇔ T = U |
U ⊼ T = U U ∧ T = U U ∨ T = T U ⊽ T = F U ⇒ T = T U ⇔ T = U U ⊻ T = U |
||
T ⊼ F = T T ∧ F = F T ∨ F = T T ⊽ F = F T ⇒ F = F T ⇔ F = F |
T ⊼ F = T T ∧ F = F T ∨ F = T T ⊽ F = F T ⇒ F = F T ⇔ F = F T ⊻ F = T |
||
T ⊼ U = U T ∧ U = U T ∨ U = T T ⊽ U = F T ⇒ U = U T ⇔ U = U |
T ⊼ U = U T ∧ U = U T ∨ U = T T ⊽ U = F T ⇒ U = U T ⇔ U = U T ⊻ U = U |
||
T ⊼ T = F T ∧ T = T T ∨ T = T T ⊽ T = F T ⇒ T = T T ⇔ T = T |
T ⊼ T = F T ∧ T = T T ∨ T = T T ⊽ T = F T ⇒ T = T T ⇔ T = T T ⊻ T = F |
||
</lang> |
</lang> |
||