Three-valued logic: Difference between revisions
Added link to Ternary computer entry |
added summary comparison of low level binary and ternary operations |
||
Line 1: | Line 1: | ||
A '''ternary''', '''three-valued''' or '''trivalent logic''' is a [[multi-valued logic]] in which there are three [[truth value]]s indicating ''true'', ''false'' and some third value. This is contrasted with traditional Aristotlean [[logic]] which provides only for ''true'' and ''false''. |
A '''ternary''', '''three-valued''' or '''trivalent logic''' is a [[multi-valued logic]] in which there are three [[truth value]]s indicating ''true'', ''false'' and some third value. This is contrasted with traditional Aristotlean [[logic]] which provides only for ''true'' and ''false''. |
||
In binary logic, there are four (2^2) monatomic (single operand) operations: ''not'', ''identity'', ''true'', and ''false''. Ternary provides nine (3^3); naming them is more difficult; the list would include ''identity'', ''true'', ''false'', and ''other''. Binary ''not'' would map to several ternary forms. |
|||
Moving up to diatomic (dual operand) operations, binary provides sixteen (2^(2^2)), including ''zero'', ''one'', ''and'', ''or'', ''if'', ''xor'', ''nor'', and ''nand''. Ternary provides 19,683 (3^(3^2)). Obviously no one is going to name all of them. They include the trivial cases of ''true'', ''false'', and ''other'', as well as one-to-many mappings of the non-trivial binary operations. Should ternary logic become mainstream, it is likely the operations would be broken down into various classes, instead of naming each one. |
|||
==See also== |
==See also== |
Revision as of 10:40, 24 December 2006
A ternary, three-valued or trivalent logic is a multi-valued logic in which there are three truth values indicating true, false and some third value. This is contrasted with traditional Aristotlean logic which provides only for true and false.
In binary logic, there are four (2^2) monatomic (single operand) operations: not, identity, true, and false. Ternary provides nine (3^3); naming them is more difficult; the list would include identity, true, false, and other. Binary not would map to several ternary forms.
Moving up to diatomic (dual operand) operations, binary provides sixteen (2^(2^2)), including zero, one, and, or, if, xor, nor, and nand. Ternary provides 19,683 (3^(3^2)). Obviously no one is going to name all of them. They include the trivial cases of true, false, and other, as well as one-to-many mappings of the non-trivial binary operations. Should ternary logic become mainstream, it is likely the operations would be broken down into various classes, instead of naming each one.
See also
External links
- Trinary Computer Systems
- TriINTERCAL
- Boost.Tribool – an implementation of ternary logic in C++
- Team-R2D2 - a French institute that fabricated the first full-ternary logic chip (a 64-tert SRAM and 4-tert adder) in 2004