Boolean algebra (or Boolean lattice) is an algebraic structure capturing the essence of both mathematical logic and axiomatic set theory.
Huntington's axiomatization of Boolean algebra: {Huntington1933}
Given a set \( A \), a binary operator \( \lor \) and a unary operator \( \lnot \), the 3-tuple \( (A, \lor, \lnot) \) is a Boolean algebra, if \( \forall a, b, c \in A \):
- Commutativity: \( a \lor b = b \lor a \);
- Associativity: \( a \lor (b \lor c) = (a \lor b) \lor c \);
- Huntington axiom: \( \lnot (\lnot a \lor b) \lor \lnot (\lnot a \lor \lnot b) = a \);
The binary operator \( \lor \) is typically called logical OR or join; and the unary operator \( \lnot \) is typically called logical NOT or complement.
For a Boolean algebra, two special elements and another binary operator can be defined as:
Boolean algebra satisfies the Boolean laws:
- Idempotent: \( a \lor a = a \);
- Commutative: \( a \lor b = b \lor a \);
- Associative: \( a \lor (b \lor c) = (a \lor b) \lor c \);
- Mutually Distributive: \( a \land (b \lor c) = (a \land b) \lor (a \land c) \);
- Absorption: \( a \land (a \lor b) = a \);
- Identity: \( a \lor 0 = a,\quad 1 \lor a = 1 \);
- Complements: \( a \lor \lnot a = 1 \);
- Duality: All these laws still hold if simultaneously exchange \( \land \) with \( \lor \), and \( 0 \) with \( 1 \).
A Boolean algebra is the partial order on subsets defined by inclusion \( \subseteq \). A Boolean algebra also forms a complemented distributive lattice. The number of elements of every finite Boolean algebra is a power of two. Each of the elements of b(A) is called a Boolean function. There are \(2^{2^n}\) Boolean functions in a Boolean algebra of order \(n\).