logical disjunction
{{redirect|Either or|the philosophical work by Søren Kierkegaard|Either/Or}}{{redirect|Disjunction|separation of chromosomes|meiosis}}File:ORGate2.png|thumb|right|150px|OR
logic gatelogic gate{{Spoken Wikipedia|Logical disjunction.ogg|2006-07-21}}In
logic and
mathematics,
or, also known as
logical disjunction or
inclusive disjunction, is a
logical operator that results in true whenever
one or more of its operands are true. E.g. in this context, "
A or
B" is true
if A is true, or if
B is true, or if both
A and
B are true. In
grammar,
or is a
coordinating conjunction. In ordinary language "or" sometimes has the meaning of
exclusive disjunction.
Notation
Or is usually expressed with an infix operator. In mathematics and logic, it is usually
∨; in electronics
+; and in programming languages,
| or
or. Some programming languages have a related
control structure, the
short-circuit or, written
||,
or else, etc.
Definition
Logical disjunction is an
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 false. More generally a disjunction is a logical formula that can have one or more
literals separated only by ORs. A single literal is often considered to be a degenerate disjunction.
Truth table
The
truth table of
p OR q is:{| border="1" cellpadding="1" cellspacing="0" style="text-align:center;"|+! style="width:35px;background:#aaaaaa;" | p! style="width:35px;background:#aaaaaa;" | q! style="width:35px" | ∨
|
| | T |
|
| | T |
|
| | T |
Venn diagram
The Venn diagram of "p or q" (red is true)(File:Venn0111.svg|150px) Properties
The following properties apply to disjunction:
(a ∧ (b ∨ c)) ≡ ((a ∧ b) ∨ (a ∧ c))
(a ∨ (b ≡ c)) ≡ ((a ∨ b) ≡ (a ∨ c))
(a → b) → ((a ∨ c) → (b ∨ c))
- 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 disjunction.
- 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 disjunction.
Symbol
The mathematical symbol for logical disjunction varies in the literature. In addition to the word "or", the symbol "or
", deriving from the Latin word vel for "or", is commonly used for disjunction. For example: "A or
B " is read as "A or B ". Such a disjunction is false if both A and B are false. In all other cases it is true.All of the following are disjunctions:
A or B
≠g A or B
A or ≠g B or ≠g C or D or ≠g E.
The corresponding operation in set theory is the set-theoretic union. Applications in computer science
Operators corresponding to logical disjunction exist in most programming languages. Bitwise operation
Disjunction is often used for bitwise operations. Examples:
- 0 or 0 = 0
- 0 or 1 = 1
- 1 or 0 = 1
- 1 or 1 = 1
- 1010 or 1100 = 1110
The or operator can be used to set bits in a bitfield to 1, by or-ing the field with a constant field with the relevant bits set to 1. Logical operation
Many languages distinguish between bitwise and logical disjunction by providing two distinct operators; in languages following C, bitwise disjunction is performed with the single pipe (|) and logical disjunction with the double pipe (||) operators.Logical disjunction is usually short-circuited; that is, if the first (left) operand evaluates to true then the second (right) operand is not evaluated. The logical disjunction operator thus usually constitutes a sequence point.Although in most languages the type of a logical disjunction expression is boolean and thus can only have the value true or false, in some (such as Python and JavaScript) the logical disjunction operator returns one of its operands; the first operand if it evaluates to a true value, and the second operand otherwise.Constructive disjunction
The Curry-Howard correspondence relates a constructivist form of disjunction to tagged union types. Union
The union used in set theory is defined in terms of a logical disjunction: x ∈ A ∪ B if and only if (x ∈ A) ∨ (x ∈ B). Because of this, logical disjunction satisfies many of the same identities as set-theoretic union, such as associativity, commutativity, distributivity, and de Morgan's laws. Notes
- Boole, closely following analogy with ordinary mathematics, premised, as a necessary condition to the definition of "x + y", that x and y were mutually exclusive. Jevons, and practically all mathematical logicians after him, advocated, on various grounds, the definition of "logical addition" in a form which does not necessitate mutual exclusiveness.
See also
{{col-begin}}{{col-break}}
{{col-break}}
{{col-break}}
{{col-end}} External links
{{Logical connectives}}Disjunkcija sudovaDisjunkceDisjunktionDisjunktionDisjunktsioonΛογική διάζευξηDisyunción lógicaLogika aŭoفصل منطقیDisjonction logique논리합Logika disjungsiDisgiunzione inclusivaאו (לוגיקה)DisjunkcijaDiszjunkcióЛогичка дисјункцијаLogische disjunctie論理和Inklusiv disjunksjonAlternatywaDisjunção lógicaDisjuncţie logicăДизъюнкцияInclusive disjunctionDisjunkcia (výroková spojka)DisjunkcijaДисјункцијаDisjunkcija sudovaDisjunktion (logik)การเลือกเชิงตรรกศาสตร์Диз'юнкція (логічна)逻辑或
(...as imported from The Pseudopedia)
article has not been saved locally