In
logic, a 'logical connective', also called a 'truth-functional connective', ' 'logical operator' or 'propositional operator,' is a
logical constant which represents a syntactic operation on a
sentence, or the symbol for ''such an operation that corresponds to'' an operation on the
logical values of those sentences. A logical connective serves to produce a compound sentence from one or two other sentences. The truth value of the resultant compound sentence is determined by the truth-values(s) of the one or two other sentences. Consequently a logical connective can be seen as a function which when applied to sentences as arguments whose values are 'True' or 'False' returns in turn the value 'True' or 'False'; consequently 'logical connectives' are called 'truth-functional connectives'.
For example the statements, ''"it is raining,"'' and, ''"I am indoors"'', can be reformed using various different connectives to form sentences that relate the two in ways which augment their meaning:
::
★ it is 'not' raining 'so' I am indoors. (
Negation,
equation, (
causation))
::
★ it is raining 'and' I am indoors. (Connective
relation)
::
★ 'if' it is raining 'then' I am indoors. (
Conditional relation)
Definitions
Truth tables
'The 16 binary logical operators can be defined by Truth tables as follows:'| p | q | T | ↑ | → | ~p | ↠| ~q | | ↓ | ∨ | | q | ⊄ | p | ⊅ | & | F |
|---|
| T | T | T | F | T | F | T | F | T | F | T | F | T | F | T | F | T | F |
| T | F | T | T | F | F | T | T | F | F | T | T | F | F | T | T | F | F |
| F | T | T | T | T | T | F | F | F | F | T | T | T | T | F | F | F | F |
| F | F | T | T | T | T | T | T | T | T | F | F | F | F | F | F | F | F |
Venn diagrams
The binary logical operators may be expressed as
Venn diagrams. The white area of each figure corresponds to "true" and the black to "false".
 tautology
|
 a nand b
|
 if a then b
|
 not-a
|
 if b then a
|
 not-b
|
 a iff b
|
 a nor b
|
 a or b
|
 a xor b
|
 b is true
|
 not the converse of if a then b
|
 a is true
|
 not if a then b
|
 a and b
|
 contradiction
|
Note the similarity between the symbols for "and" (
) and
set-theoretic intersection (
); likewise for "or" (
) and
set-theoretic union (
). This is not a coincidence: the definition of the intersection uses "and" and the definition of union uses "or".
Functional completeness
Not all of these operators are necessary for a
functionally complete logical calculus. Certain compound statements are
logically equivalent.
For example, ¬''P'' ∨ ''Q'' is logically equivalent to ''P'' → ''Q'';.
So the conditional operator "→" is not necessary if you have "¬" (not) and "∨" (or).
The smallest set of operators which still expresses every statement which is expressible in the
propositional calculus is called a minimal functionally complete set. A minimally complete set of operators is achieved by NAND alone '{' '↓' '}' and NOR alone '{' '↑' '}'.
All and only the following are functionally complete sets of operators:
'{' '↓' '}', '{' '↑' '}', '{' '
', '
' '}', '{' '
', '
' '}', '{' '
', '⊂' '}',
'{' '
', '⊄' '}',
'{' '
', '
' '}',
'{' '
', '⊅' '}',
'{' '⊄', '
' '}',
'{' '⊂', '
' '}',
'{' '⊅', '
' '}',
'{' '⊂', '⊄' '}',
'{' '
', '
' '}',
'{' '⊂', '⊅' '}',
'{' '
', '
' '}',
'{' '⊄', '
' '}',
'{' '⊅', '
' '}'
Properties
The logical connectives each possess different set of properties which may be expressed in the theorems containing the connective. Some of those properties that a logical connective may have are:
★
Associativity: Within an expression containing two or more of the same associative operators in a row, the order of the operations does not matter as long as the sequence of the operands is not changed.
★
Commutivity: Each pair of variables connected by the operator may be exchanged for each other without affecting the truth-value of the expression.
★
Distributivity:
★
Idempotency:
★
Absorption:
A
functionally complete set of operators contains at least one member lacking each of these five qualities:
★ '
monotonic' : If f(a
1, ... , a
n) ≤ f(b
1, ... , b
n) for all a
1, ... , a
n {0,1} such that a
1 ≤ b
1, a
2 ≤ b
2, ... , a
n ≤ b
n '{' '
', '
', '
', '
' '}'
★ '
linear' : Each variable always makes a difference in the truth-value of the operation or it never makes a difference '{' '
', '
', '
', '
', '
' '}'
★ 'self dual' : To read the truth-value assignments for the operation from top to bottom on its
truth table is the same as taking the compliment of reading it from bottom to top. '{' '
' '}'
★ 'truth-preserving': The interpretation under which all variables are assigned a
truth value of 'true' produces a truth value of 'true' as a result of these operations. '{' '
', '
', '
', '
', '
', '⊂' '}'
★ 'falsehood-preserving': The interpretation under which all variables are assigned a
truth value of 'false' produces a truth value of 'false' as a result of these operations. '{' '
', '
', '
', '
', '⊄', '⊅' '}'
Arity
In two-valued logic there are 4
unary operators, 16
binary operators, and 256
ternary operators. In three valued logic there are 9
unary operators, 19683
binary operators, and 7625597484987
ternary operators.
"Not" is a
unary operator, it takes a single term (¬''P''). The rest are
binary operators, taking two terms to make a compound statement (''P''
''Q'', ''P''
''Q'', ''P'' → ''Q'', ''P'' ↔ ''Q'').
The set of logical operators
may be
partitioned into disjoint subsets as follows:
:::
In this partition,
is the set of operator symbols of ''
arity''
.
In the more familiar propositional calculi,
is typically partitioned as follows:
:::nullary operators:
:::unary operators:
:::binary operators:
Order of precedence
As a way of reducing the number of necessary parentheses, one may introduce precedence rules: ¬ has higher precedence than ∧, ∧ higher than ∨, and ∨ higher than →. So for example, ''P'' ∨ ''Q'' ∧ ¬''R'' → ''S'' is short for (''P'' ∨ (''Q'' ∧ (¬''R''))) → ''S''.
Here is a table that shows the usual precedence of logical operators.
| ''Operator'' | ''Precedence'' |
|---|
| '¬' | '1' |
| '' | '2' |
| '' | '3' |
| '→' | '4' |
| '↔' | '5' |
The order of precedence determines which connective is the "main connective" when interpreting a molecular formula.
Applications in computer science
Logical operators are implemented as
logic gates in
digital circuits. Practically all digital circuits (the major exception is
DRAM) are built up from
NAND,
NOR,
NOT, and
transmission gates. NAND and NOR gates with 3 or more inputs rather than the usual 2 inputs are fairly common, although they are logically equivalent to a cascade of 2-input gates. All other operators are implemented by breaking them down into a logically equivalent combination of 2 or more of the above logic gates.
The "logical equivalence" of "NAND alone", "NOR alone", and "NOT and AND" is similar to
Turing equivalence.
Is some new technology (such as
reversible computing,
clockless logic, or
quantum dots computing) "functionally complete", in that it can be used to build computers that can do all the sorts of computation that
CMOS-based computers can do?
If it can implement the NAND operator, only then is it
functionally complete.
That fact that all logical connectives can be expressed with NOR alone is demonstrated by the
Apollo guidance computer.
References
★
Article on logical constants at the
Stanford Encyclopedia of Philosophy.
See also