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. Logic is the study of the principles of valid demonstration and Inference. Mathematics is the body of Knowledge and Academic discipline that studies such concepts as Quantity, Structure, Space and Table of logic symbolsIn Logic, two sentences (either in a formal language or a natural language may be joined by means of a logical connective to form a compound sentence In grammar, or is a coordinating conjunction. Grammar is the field of Linguistics that covers the Rules governing the use of any given natural language.
Contents |
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. Table of logic symbolsIn Logic, two sentences (either in a formal language or a natural language may be joined by means of a logical connective to form a compound sentence In Logic and Mathematics, a logical value, also called a truth value, is a value indicating the extent to which a Proposition is true In Logic and Philosophy, proposition refers to either (a the content or Meaning of a meaningful Declarative sentence 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.
The truth table of p OR q (also written as p
q (logic), p || q (in C-family languages in computer programming), or p + q (electronics)) is as follows:
| p | q | ![]() |
|---|---|---|
| T | T | T |
| T | F | T |
| F | T | T |
| F | F | F |
The Venn diagram of "p or q" (red is true)
![]()
The following properties apply to disjunction:



The mathematical symbol for logical disjunction varies in the literature. In addition to the word "or", the symbol "
", deriving from the Latin word vel for "or", is commonly used for disjunction. For example: "A
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:



The corresponding operation in set theory is the set-theoretic union. In Set theory, the term Union (denoted as ∪ refers to a set operation used in the convergence of set elements to form a resultant set containing the elements of both sets
Operators corresponding to logical disjunction exist in most programming languages. Programming languages generally support a set of operators that are similar to operators in mathematics. A programming language is an Artificial language that can be used to write programs which control the behavior of a machine particularly a Computer.
Disjunction is often used for bitwise operations. Examples:
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. A bit field is a common idiom used in Computer programming to store a set of Boolean datatype flags compactly as a series of Bits The bit field
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. Short-circuit evaluation or minimal evaluation denotes the semantics of some Boolean operators in some Programming languages in which the second argument The logical disjunction operator thus usually constitutes a sequence point. A sequence point in Imperative programming defines any point in a Computer program 's execution at which it is guaranteed that all side effects
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. Python is a general-purpose High-level programming language. Its design philosophy emphasizes programmer productivity and code readability JavaScript is a Scripting language most often used for Client-side web development
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). In Set theory, the term Union (denoted as ∪ refers to a set operation used in the convergence of set elements to form a resultant set containing the elements of both sets 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. In Logic, De Morgan's laws or De Morgan's theorem are rules in Formal logic relating pairs of dual Logical operators in a systematic manner expressed