Sheffer stroke

From Wikipedia, the free encyclopedia

NAND Logic gate

The Sheffer stroke, written "|" or "↑", denotes a logical operation that is equivalent to the negation of the conjunction operation, expressed in ordinary language as "not both". It is also called the alternative denial, since it says in effect that at least one of its operands is false. In boolean algebra and digital electronics it is known as the NAND ("not and") operation. It is one of several sole sufficient operators that can be used to express all of the boolean functions that are the subject matter of propositional logic. Along with NOR, it is one of the two functionally complete binary operators of propositional logic.

The stroke is named for Henry M. Sheffer, who proved (Sheffer 1913) that all the usual operators of propositional logic (not, and, or, implies, and so on), could be expressed in terms of it. Charles Peirce (1880) had discovered this fact more than 30 years earlier, but never published his finding. Peirce also observed that all boolean operators could be defined in terms of the NOR operator, the dual of NAND.

Contents

[edit] Definition

The NAND operation is a logical operation on two logical values, typically the values of two propositions, that produces a value of false if and only if both of its operands are true. In other words, it produces a value of true if and only if at least one of its operands is false.

The truth table of p NAND q (also written as p | q or p ↑ q) is as follows:

Logical NAND
p q p ↑ q
F F T
F T T
T F T
T T F


One way of expressing p NAND q is a \overline{p \cdot q}, where the symbol \cdot signifies AND and the line over the expression signifies not, the logical negation of that expression.

NAND is not used in everyday sentences because it exhibits an inherent inversion, which makes it confusing like a double negative. Here's an example of a sentence using:

NAND operator: We will surely die if we have food nand water.
Common terms: We will surely die if we do not have both food and water.

Expressed in terms of NAND, the usual operators of propositional logic are:

"not p" is equivalent to "p NAND p" \overline{p} \equiv \overline{p \cdot p}
"p and q" is equivalent to "(p NAND q) NAND (p NAND q)" p \cdot q \equiv \overline{\overline{(p \cdot q)} \cdot \overline{(p \cdot q)}}
"p or q" is equivalent to "(p NAND p) NAND (q NAND q)" p + q \equiv \overline{\overline{(p \cdot p)} \cdot \overline{(q \cdot q)}}
"p implies q" is equivalent to "(p NAND q) NAND p" p \rightarrow q \equiv \overline{\overline{(p \cdot q)} \cdot p}

This leads to an alternative axiom system for Boolean algebras, requiring but one operation.

NAND Full adder

Digital systems employing certain logic circuits take advantage of this property. In complicated logical expressions, normally written in terms of other logic functions such as AND, OR, and NOT, writing these in terms of NAND saves on cost, because implementing such circuits using NAND gate yields a more compact result than the alternatives.

The dual of NAND, the operator NOR, also suffices to express all Boolean operations.

[edit] Sheffer stroke

The Sheffer stroke "|" is equivalent to the negation of conjunction:

A | B = \neg (A \wedge B) = \overline{AB}

The following truth table semantically defines |:

| F T
F T T
T T F

The other logical operators can be defined in terms of '|', like so:

\neg A = A | A,
A \wedge B = (A | B) | (A | B),
A \vee B = (A | A) | (B | B),
A \rightarrow B = A | (B | B) = A | (A | B).

[edit] Formal system based on the Sheffer stroke

The following is an example of a formal system based entirely on the Sheffer stroke, yet having the functional expressiveness of the propositional logic:

[edit] 1. Symbols

A B C D E F G '
( | )

The Sheffer stroke commutes but does not associate. Hence any formal system including the Sheffer stroke must also include a means of indicating grouping. We shall employ '(' and ')' to this effect.

[edit] 2. Grammar

The letters A, B, C, D, E, F and G are atoms.
Any of these letters primed once or several times is also an atom (e.g. A', B′′, C′′′, D′′′′ are atoms).

Construction Rule I: An atom is a well-formed formula (wff).

Construction Rule II: If X and Y are wffs, then (X|Y) is a wff.

Closure Rule: Any formulae which cannot be constructed by means of the first two Construction Rules is not a wff.

The letters U, V, X, and Y are metavariables standing for wffs.

A decision procedure for determining whether a formula is well-formed goes as follows: "deconstruct" the formula by applying the Construction Rules backwards, thereby breaking the formula into smaller subformulae. Then repeat this recursive deconstruction process to each of the subformulae. Eventually the formula should be reduced to its atoms, but if some subformula cannot be so reduced, then the formula is not a wff.

[edit] 3. Axiom

The following wffs are axiom schemata, which become axioms upon replacing all metavariables with wffs.

THEN-1: (U|(U|(V|(U|U))))

[edit] 4. Inference rules

Substitution of equivalents. Let the wff X contain one more instances of the subformula U. If U=V, then replacing one ore more instances of U in X by V does not alter the truth value of X. In particular, if X=Y is a theorem, this remains the case after any substitution of V for U.

Commutativity: (X|Y) = (Y|X)

Duality: If strings of the forms X and (X|X) both show up in a theorem, then if these two strings are swapped wherever they appear in the theorem, then the result will also be a theorem.

Double Negation: ((X|X)|(X|X)) = X

Mimesis: (U|(X|X)) = (U|(U|X))

THEN-3: (U|(U|(V|(V|X)))) = (V|(V|(U|(U|X))))

MP-1: U, (U|(V|X)) |- V

MP-2: U, (U|(V|X)) |- X

Note. The formula (U|(V|X)) has the interpretation U→V∧X. Modus ponens is the special case of MP-1 and MP-2 when V and X are identical.

[edit] Simplification

Since the only connective of this logic is |, the symbol | could be discarded altogether, leaving only the parentheses to group the letters. A pair of parentheses must always enclose a pair of wffs. Examples of theorems in this simplified notation are

(A(A(B(B((AB)(AB)))))),
(A(A((BB)(AA)))).

The resemblance to the syntax of LISP is evident.

The notation can be simplified further, by letting

(U) := (UU)
((U)) \equiv U

for any U. This simplification causes the need to change some rules: (1) more than two letters are allowed within parentheses, (2) letters or wffs within parentheses are allowed to commute, (3) repeated letters or wffs within a same set of parentheses can be eliminated. The result is a parenthetical version of the Peirce existential graphs.

[edit] References

  • Charles Peirce, 1880. 'A Boolean Algebra with One Constant'. In Hartshorne, C, and Weiss, P., eds., (1931-35) Collected Papers of Charles Sanders Peirce, Vol. 4: 12-20. Harvard University Press.
  • H. M. Sheffer, 1913. "A set of five independent postulates for Boolean algebras, with application to logical constants," Transactions of the American Mathematical Society 14: 481-488.

[edit] See also

[edit] Logical operators

[edit] Related topics