Your continued donations keep Wikipedia running!

# Boolean algebra

For a basic introduction to sets, Boolean operations, Venn diagrams, truth tables, and Boolean applications, see Boolean logic.
For an alternative perspective see Boolean algebras canonically defined.

In abstract algebra, a Boolean algebra is an algebraic structure (a collection of elements and operations on them obeying defining axioms) that captures essential properties of both set operations and logic operations. Specifically, it deals with the set operations of intersection, union, complement; and the logic operations of AND, OR, NOT.

For example, the logical assertion that a statement a and its negation ¬a cannot both be true,

Boolean lattice of subsets
$a\land(\lnot a) = \mbox{FALSE},$

parallels the set-theory assertion that a subset A and its complement AC have empty intersection,

$A\cap(A^C) = \varnothing.$

Because truth values can be represented as binary numbers or as voltage levels in logic circuits, the parallel extends to these as well. Thus the theory of Boolean algebras has many practical applications in electrical engineering and computer science, as well as in mathematical logic.

A Boolean algebra is also called a Boolean lattice. The connection to lattices (special partially ordered sets) is suggested by the parallel between set inclusion, A ⊆ B, and ordering, a ≤ b. Consider the lattice of all subsets of {x,y,z}, ordered by set inclusion. This Boolean lattice is a partially ordered set in which, say, {x}  ≤ {x,y}. Any two lattice elements, say p = {x,y} and q = {y,z}, have a least upper bound, here {x,y,z}, and a greatest lower bound, here {y}. Suggestively, the least upper bound (or join or supremum) is denoted by the same symbol as logical OR, pq; and the greatest lower bound (or meet or infimum) is denoted by same symbol as logical AND, pq.

The lattice interpretation helps in generalizing to Heyting algebras, which are Boolean algebras freed from the restriction that either a statement or its negation must be true. Heyting algebras correspond to intuitionist (constructivist) logic just as Boolean algebras correspond to classical logic.

## Formal definition

A Boolean algebra is a set A, supplied with two binary operations $\land$ (called AND), $\lor$ (called OR), a unary operation $\lnot$ (called NOT) and two elements 0 (called zero) and 1 (called one), such that, for all elements a, b and c of set A, the following axioms hold:

 $a \lor (b \lor c) = (a \lor b) \lor c$ $a \land (b \land c) = (a \land b) \land c$ associativity $a \lor b = b \lor a$ $a \land b = b \land a$ commutativity $a \lor (a \land b) = a$ $a \land (a \lor b) = a$ absorption $a \lor (b \land c) = (a \lor b) \land (a \lor c)$ $a \land (b \lor c) = (a \land b) \lor (a \land c)$ distributivity $a \lor \lnot a = 1$ $a \land \lnot a = 0$ complements

The first three pairs of axioms above: associativity, commutativity and absorption, mean that (A, $\land$, $\lor$) is a lattice. If A is a lattice and one of the above distributivity laws holds, then the second distributivity law can be proven. Thus, a Boolean algebra can also be equivalently defined as a distributive complemented lattice.

From these axioms, one can show that the smallest element 0, the largest element 1, and the complement ¬a of any element a are uniquely determined. For all a and b in A, the following identities also follow:

 $a \lor a = a$ $a \land a = a$ idempotency $a \lor 0 = a$ $a \land 1 = a$ boundedness $a \lor 1 = 1$ $a \land 0 = 0$ $\lnot 0 = 1$ $\lnot 1 = 0$ 0 and 1 are complements $\lnot (a \lor b) = \lnot a \land \lnot b$ $\lnot (a \land b) = \lnot a \lor \lnot b$ De Morgan's laws $\lnot \lnot a = a$ involution

## Examples

• The simplest Boolean algebra has only two elements, 0 and 1, and is defined by the rules:
0 1
0 0 0
1 0 1
0 1
0 0 1
1 1 1
a 0 1
¬a 1 0
• It has applications in logic, interpreting 0 as false, 1 as true, ∧ as and, ∨ as or, and ¬ as not. Expressions involving variables and the Boolean operations represent statement forms, and two such expressions can be shown to be equal using the above axioms if and only if the corresponding statement forms are logically equivalent.
• The two-element Boolean algebra is also used for circuit design in electrical engineering; here 0 and 1 represent the two different states of one bit in a digital circuit, typically high and low voltage. Circuits are described by expressions containing variables, and two such expressions are equal for all values of the variables if and only if the corresponding circuits have the same input-output behavior. Furthermore, every possible input-output behavior can be modeled by a suitable Boolean expression.
• The two-element Boolean algebra is also important in the general theory of Boolean algebras, because an equation involving several variables is generally true in all Boolean algebras if and only if it is true in the two-element Boolean algebra (which can always be checked by a trivial brute force algorithm). This can for example be used to show that the following laws (Consensus theorems) are generally valid in all Boolean algebras:
• (ab) ∧ (¬ac) ∧ (bc) ≡ (ab) ∧ (¬ac)
• (ab) ∨ (¬ac) ∨ (bc) ≡ (ab) ∨ (¬ac)
• Starting with the propositional calculus with κ sentence symbols, form the Lindenbaum algebra (that is, the set of sentences in the propositional calculus modulo tautology). This construction yields a Boolean algebra. It is in fact the free Boolean algebra on κ generators. A truth assignment in propositional calculus is then a Boolean algebra homomorphism from this algebra to {0,1}.
• The power set (set of all subsets) of any given set S forms a Boolean algebra with the two operations ∨ := ∪ (union) and ∧ := ∩ (intersection). The smallest element 0 is the empty set and the largest element 1 is the set S itself.
• The set of all subsets of S that are either finite or cofinite is a Boolean algebra.
• For any natural number n, the set of all positive divisors of n forms a distributive lattice if we write ab for a | b. This lattice is a Boolean algebra if and only if n is square-free. The smallest element 0 of this Boolean algebra is the natural number 1; the largest element 1 of this Boolean algebra is the natural number n.
• Other examples of Boolean algebras arise from topological spaces: if X is a topological space, then the collection of all subsets of X which are both open and closed forms a Boolean algebra with the operations ∨ := ∪ (union) and ∧ := ∩ (intersection).
• If R is an arbitrary ring and we define the set of central idempotents by
A = { eR : e2 = e, ex = xe, ∀xR }
then the set A becomes a Boolean algebra with the operations ef := e + fef and ef := ef.

## Order theoretic properties

Boolean lattice of subsets

Like any lattice, a Boolean algebra (A, $\land$, $\lor$) gives rise to a partially ordered set (A, ≤) by defining

ab precisely when a = a $\land$ b

(which is also equivalent to b = a $\lor$ b).

In fact one can also define a Boolean algebra to be a distributive lattice (A, ≤) (considered as a partially ordered set) with least element 0 and greatest element 1, within which every element x has a complement ¬x such that

x $\land$ ¬x = 0 and x $\lor$ ¬x = 1

Here $\land$ and $\lor$ are used to denote the infimum (meet) and supremum (join) of two elements. Again, if complements in the above sense exist, then they are uniquely determined.

The algebraic and the order theoretic perspective can usually can be used interchangeably and both are of great use to import results and concepts from both universal algebra and order theory. In many practical examples an ordering relation, conjunction, disjunction, and negation are all naturally available, so that it is straightforward to exploit this relationship.

## Principle of duality

One can also apply general insights from duality in order theory to Boolean algebras. Especially, the order dual of every Boolean algebra, or, equivalently, the algebra obtained by exchanging $\land$ and $\lor$, is also a Boolean algebra. In general, any law valid for Boolean algebras can be transformed into another valid, dual law by exchanging 0 with 1, $\land$ with $\lor$, and ≤ with ≥.

## Other notation

The operators of Boolean algebra may be represented in various ways. Often they are simply written as AND, OR and NOT. In describing circuits, NAND (NOT AND), NOR (NOT OR) and XOR (eXclusive OR) may also be used. Mathematicians, engineers, and programmers often use + for OR and · for AND (since in some ways those operations are analogous to addition and multiplication in other algebraic structures and this notation makes it very easy to get sum of products form for people who are familiar with normal algebra) and represent NOT by a line drawn above the expression being negated. Sometimes, the symbol ~ or ! is used for NOT.

Here we use another common notation with "meet" $\land$ for AND, "join" $\lor$ for OR, and ¬ for NOT.

## Homomorphisms and isomorphisms

A homomorphism between the Boolean algebras A and B is a function f : AB such that for all a, b in A:

f(a $\lor$ b) = f(a) $\lor$ f(b)
f(a $\land$ b) = f(a) $\land$ f(b)
f(0) = 0
f(1) = 1

It then follows that fa) = ¬f(a) for all a in A as well. The class of all Boolean algebras, together with this notion of morphism, forms a category. An isomorphism from A to B is a homomorphism from A to B which is bijective. The inverse of an isomorphism is also an isomorphism, and we call the two Boolean algebras A and B isomorphic. From the standpoint of Boolean algebra theory, they cannot be distinguished; they differ only in the notation of their elements.

## Boolean rings, ideals and filters

Every Boolean algebra (A, $\land$, $\lor$) gives rise to a ring (A, +, *) by defining a + b = (a $\land$ ¬b) $\lor$ (b $\land$ ¬a) (this operation is called "symmetric difference" in the case of sets and XOR in the case of logic) and a * b = a $\land$ b. The zero element of this ring coincides with the 0 of the Boolean algebra; the multiplicative identity element of the ring is the 1 of the Boolean algebra. This ring has the property that a * a = a for all a in A; rings with this property are called Boolean rings.

Conversely, if a Boolean ring A is given, we can turn it into a Boolean algebra by defining x $\lor$ y = x + y + xy and x $\land$ y = xy. Since these two operations are inverses of each other, we can say that every Boolean ring arises from a Boolean algebra, and vice versa. Furthermore, a map f : AB is a homomorphism of Boolean algebras if and only if it is a homomorphism of Boolean rings. The categories of Boolean rings and Boolean algebras are equivalent.

An ideal of the Boolean algebra A is a subset I such that for all x, y in I we have x $\lor$ y in I and for all a in A we have a $\land$ x in I. This notion of ideal coincides with the notion of ring ideal in the Boolean ring A. An ideal I of A is called prime if IA and if a $\land$ b in I always implies a in I or b in I. An ideal I of A is called maximal if IA and if the only ideal properly containing I is A itself. These notions coincide with ring theoretic ones of prime ideal and maximal ideal in the Boolean ring A.

The dual of an ideal is a filter. A filter of the Boolean algebra A is a subset p such that for all x, y in p we have x $\land$ y in p and for all a in A if a $\lor$ x = a then a in p.

## Representing Boolean algebras

It can be shown that every finite Boolean algebra is isomorphic to the Boolean algebra of all subsets of a finite set. Therefore, the number of elements of every finite Boolean algebra is a power of two.

Stone's celebrated representation theorem for Boolean algebras states that every Boolean algebra A is isomorphic to the Boolean algebra of all closed-open sets in some (compact totally disconnected Hausdorff) topological space.

## Axiomatics for Boolean algebras

Let the unary functional symbol n be read as 'complement'. In 1933, the American mathematician Edward Vermilye Huntington (1874–1952) set out the following elegant axiomatization for Boolean algebra:

1. Commutativity: x + y = y + x.
2. Associativity: (x + y) + z = x + (y + z).
3. Huntington equation: n(n(x) + y) + n(n(x) + n(y)) = x.

Herbert Robbins immediately asked: If the Huntington equation is replaced with its dual, to wit:

4. Robbins Equation: n(n(x + y) + n(x + n(y))) = x,

do (1), (2), and (4) form a basis for Boolean algebra? Calling (1), (2), and (4) a Robbins algebra, the question then becomes: Is every Robbins algebra a Boolean algebra? This question remained open for decades, and became a favorite question of Alfred Tarski and his students.

In 1996, William McCune at Argonne National Laboratory, building on earlier work by Larry Wos, Steve Winker, and Bob Veroff, answered Robbins's question in the affirmative: Every Robbins algebra is a Boolean algebra. Crucial to McCune's proof was the automated reasoning program EQP he designed. For a simplification of McCune's proof, see Dahn (1998).

## History

The term "Boolean algebra" honors George Boole (1815–1864), a self-educated English mathematician. The algebraic system of logic he formulated in his 1854 monograph The Laws of Thought differs from that described above in some important respects. For example, conjunction and disjunction in Boole were not a dual pair of operations. Boolean algebra emerged in the 1860s, in papers written by William Jevons and Charles Peirce. To the 1890 Vorlesungen of Ernst Schröder we owe the first systematic presentation of Boolean algebra and distributive lattices. The first extensive treatment of Boolean algebra in English is A. N. Whitehead's 1898 Universal Algebra. Boolean algebra as an axiomatic algebraic structure in the modern axiomatic sense begins with a 1904 paper by Edward Vermilye Huntington. Boolean algebra came of age as serious mathematics with the work of Marshall Stone in the 1930s, and with Garrett Birkhoff's 1940 Lattice Theory. In the 1960s, Paul Cohen, Dana Scott, and others found deep new results in mathematical logic and axiomatic set theory using offshoots of Boolean algebra, namely forcing and Boolean-valued models.

## References

• Cori, Rene, and Lascar, Daniel (2000), Mathematical Logic: A Course with Exercises, Oxford University Press, Oxford, UK. See Chapter 2.
• Dahn, B.I. (1998), "Robbins Algebras are Boolean: A Revision of McCune's Computer-Generated Solution of the Robbins Problem", Journal of Algebra 208, 526–532.
• Halmos, Paul (1963), Lectures on Boolean Algebras, Van Nostrand.
• Mendelson, Elliott (1970), Boolean Algebra and Switching Circuits, Schaum's Outline Series in Mathematics, McGraw–Hill, New York, NY.
• Stoll, R.R. (1963/1979), Set Theory and Logic, Dover Publications, New York, NY.
• Huntington, E. V. (1933), New sets of independent postulates for the algebra of logic, Trans. AMS 35, 274--304.