In logic, negation, also called the logical complement, is an
operation that takes a proposition p to another proposition "not p",
written ¬p, which is interpreted intuitively as being true when p is
false, and false when p is true.
Contents 1 Definition 2 Notation 3 Properties 3.1 Double negation 3.2 Distributivity 3.3 Linearity 3.4 Self dual 4 Rules of inference 5 Programming 6 Kripke semantics 7 See also 8 References 9 Further reading 10 External links Definition[edit] No agreement exists as to the possibility of defining negation, as to its logical status, function, and meaning, as to its field of applicability..., and as to the interpretation of the negative judgment, (F.H. Heinemann 1944).[1] Classical negation is an operation on one logical value, typically the value of a proposition, that produces a value of true when its operand is false and a value of false when its operand is true. So, if statement A is true, then ¬A (pronounced "not A") would therefore be false; and conversely, if ¬A is false, then A would be true. The truth table of ¬p is as follows:
p ¬p True False False True Classical negation can be defined in terms of other logical operations. For example, ¬p can be defined as p → F, where "→" is logical consequence and F is absolute falsehood. Conversely, one can define F as p & ¬p for any proposition p, where "&" is logical conjunction. The idea here is that any contradiction is false. While these ideas work in both classical and intuitionistic logic, they do not work in paraconsistent logic, where contradictions are not necessarily false. But in classical logic, we get a further identity: p → q can be defined as ¬p ∨ q, where "∨" is logical disjunction: "not p, or q". Algebraically, classical negation corresponds to complementation in a Boolean algebra, and intuitionistic negation to pseudocomplementation in a Heyting algebra. These algebras provide a semantics for classical and intuitionistic logic respectively. Notation[edit] The negation of a proposition p is notated in different ways in various contexts of discussion and fields of application. Among these variants are the following: Notation Vocalization ~p Not p −p Not p Np En p ¬p Not p p ′ displaystyle p'! p prime, p complement p ¯ displaystyle bar p p bar, Bar p ! p displaystyle !p! Bang p Not p In set theory is also used to indicate 'not member of': U A is the
set of all members of U that are not members of A.
No matter how it is notated or symbolized, the negation ¬p / −p can
be read as "it is not the case that p", "not that p", or usually more
simply as "not p".
Properties[edit]
Double negation[edit]
Within a system of classical logic, double negation, that is, the
negation of the negation of a proposition p, is logically equivalent
to p. Expressed in symbolic terms, ¬¬p ⇔ p. In intuitionistic
logic, a proposition implies its double negation but not conversely.
This marks one important difference between classical and
intuitionistic negation. Algebraically, classical negation is called
an involution of period two.
However, in intuitionistic logic we do have the equivalence of ¬¬¬p
and ¬p. Moreover, in the propositional case, a sentence is
classically provable if its double negation is intuitionistically
provable. This result is known as Glivenko's theorem.
Distributivity[edit]
¬ ( a ∨ b ) ≡ ( ¬ a ∧ ¬ b ) displaystyle neg (avee b)equiv (neg awedge neg b) , and ¬ ( a ∧ b ) ≡ ( ¬ a ∨ ¬ b ) displaystyle neg (awedge b)equiv (neg avee neg b) . Linearity[edit] Let ⊕ denote the logical xor operation. In Boolean algebra, a linear function is one such that: If there exists a0, a1, ..., an ∈ displaystyle in 0,1 such that f(b1, ..., bn) = a0 ⊕ (a1 ∧ displaystyle land b1) ⊕ ... ⊕ (an ∧ displaystyle land bn), for all b1, ..., bn ∈ displaystyle in 0,1 .
Another way to express this is that each variable always makes a
difference in the truth-value of the operation or it never makes a
difference.
∈ displaystyle in 0,1 .
if (!(r == t)) /*...statements executed when r does NOT equal t...*/ The "!" signifies logical NOT in B, C, and languages with a C-inspired
syntax such as C++, Java, JavaScript, Perl, and PHP. "NOT" is the
operator used in ALGOL 60, BASIC, and languages with an ALGOL- or
BASIC-inspired syntax such as Pascal, Ada, Eiffel and Seed7. Some
languages (C++, Perl, etc.) provide more than one operator for
negation. A few languages like
unsigned int abs(int x) if (x < 0) return -x; else return x; To demonstrate logical negation: unsigned int abs(int x) if (!(x < 0)) return x; else return -x; Inverting the condition and reversing the outcomes produces code that
is logically equivalent to the original code, i.e. will have identical
results for any input (note that depending on the compiler used, the
actual instructions performed by the computer may differ).
This convention occasionally surfaces in written speech, as
computer-related slang for not. The phrase !voting, for example, means
"not voting".
Kripke semantics[edit]
In
Ampheck
Apophasis
Binary opposition
Bitwise NOT
Cyclic negation
Double negative elimination
Grammatical polarity
Logical conjunction
Logical disjunction
References[edit] ^ Horn, Laurence R (2001). "Chapter 1". A NATURAL HISTORY OF NEGATION (PDF). Stanford University: CLSI Publications. p. 1. ISBN 1-57586-336-7. Retrieved 29 Dec 2013. Further reading[edit] Gabbay, Dov, and Wansing, Heinrich, eds., 1999. What is Negation?,
Kluwer.
Horn, L., 2001. A Natural History of Negation, University of Chicago
Press.
G. H. von Wright, 1953–59, "On the
External links[edit] Horn, Laurence R.; Wansing, Heinrich. "Negation". In Zalta, Edward N. Stanford Encyclopedia of Philosophy. Hazewinkel, Michiel, ed. (2001) [1994], "Negation", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 978-1-55608-010-4 NOT, on MathWorld v t e Logical connectives Tautology/True ⊤ displaystyle top Alternative denial (NAND gate) ↑ displaystyle uparrow Converse implication ← displaystyle leftarrow Implication (IMPLY gate) → displaystyle rightarrow Disjunction (OR gate) ∨ displaystyle lor Negation (NOT gate) ¬ displaystyle neg Exclusive or (XOR gate) ↮ displaystyle nleftrightarrow Biconditional (XNOR gate) ↔ displaystyle leftrightarrow Statement Joint denial (NOR gate) ↓ displaystyle downarrow Nonimplication ↛ displaystyle nrightarrow Converse nonimplication ↚ displaystyle nleftarrow Conjunction (AND gate) ∧ displaystyle land Contradiction/False ⊥ displaystyle bot v t e Common logical symbols ∧ or & and ∨ or ¬ or ~ not → implies ⊃ implies, superset ≡ iff nand ∀ universal quantification ∃ existential quantification ⊤ tautology ⊥ false, contradiction ⊢ entails, proves ⊨ entails, therefore ∴ therefore |