De Morgan's Laws for Sets

Suppose you are told that an element xx does not belong to the union of two sets AA and BB. What can you conclude about xx's relationship to AA and to BB individually? Intuition suggests that xx must avoid both sets. Formalizing this intuition is exactly what De Morgan's Laws for sets accomplish. They translate a statement about the complement of a combined set into a statement about the combination of complements. In the process, they convert union into intersection and intersection into union. These laws matter because they are the set-theoretic shadow of a much older logical principle. Negating "PP or QQ" gives "not PP and not QQ." Negating "PP and QQ" gives "not PP or not QQ." Union corresponds to logical "or" and intersection to logical "and." Set complement corresponds to logical negation. So De Morgan's Laws for sets are really De Morgan's Laws for propositions in disguise. This connection is not a coincidence. It is the reason the same identity appears in Boolean algebra, digital circuit design, and formal logic under the same name. The big picture is that complementation is a duality-inducing operation. It swaps the roles of union and intersection throughout an expression. This is much as taking a dual swaps ∧\wedge and ∨\vee in propositional logic. It also swaps meets and joins in lattice theory. Understanding this duality lets you rewrite any set expression involving complements, unions, and intersections. You can convert it into an equivalent "dual" form almost mechanically. There is no need to redo an element-chasing argument from scratch each time. This article states De Morgan's Laws precisely for two sets. It proves them rigorously using the method of double inclusion. It then generalizes them to arbitrary (possibly infinite) families of sets. Along the way we build the intuition with a diagram. We work two asymmetric numerical examples. We also show exactly which hypothesis is essential by breaking the theorem when it is dropped.

Key takeaways
  • De Morgan's Laws relate complements of unions/intersections to intersections/unions of complements.
  • (A∪B)c=Ac∩Bc(A \cup B)^c = A^c \cap B^c and (A∩B)c=Ac∪Bc(A \cap B)^c = A^c \cup B^c, always relative to a fixed universal set UU.
  • The laws generalize to arbitrary families: (⋃i∈IAi)c=⋂i∈IAic\left(\bigcup_{i \in I} A_i\right)^c = \bigcap_{i \in I} A_i^c and (⋂i∈IAi)c=⋃i∈IAic\left(\bigcap_{i \in I} A_i\right)^c = \bigcup_{i \in I} A_i^c.
  • Proofs proceed by double inclusion or, equivalently, by translating the logical form of De Morgan's Laws for ∧,∨,¬\wedge, \vee, \neg.
  • The identities require a fixed ambient universal set UU — without it, "complement" is undefined and the laws have no meaning.
  • Key idea: complementation swaps union and intersection; it is a duality operation on the algebra of sets.

Where this lives today

De Morgan's Laws are not a curiosity confined to introductory set theory — they are one of the most heavily used identities across the mathematical sciences. In <a class="wiki-link" href="/wiki/math-found-algebra-of-sets" data-track="wiki_article.body.wiki_link">The Algebra of Sets</a>, they are one of the core identities (alongside distributive and associative laws) used to simplify set expressions symbolically, exactly the way algebraic identities simplify polynomial expressions. In probability theory, De Morgan's Laws let you translate "the probability that at least one of several events occurs" into "one minus the probability that none occur," via P(⋃iEi)=1−P(⋂iEic)P\left(\bigcup_i E_i\right) = 1 - P\left(\bigcap_i E_i^c\right) — indispensable in inclusion–exclusion arguments and reliability analysis. In digital circuit design and computer engineering, the propositional form of the laws (NAND/NOR equivalences) underlies how logic gates are converted between equivalent circuit implementations, a technique used routinely in chip design to minimize gate count. In database query optimization and programming language semantics, De Morgan's Laws justify rewriting a negated compound filter condition (e.g., `NOT (x > 5 OR y < 2)`) into an equivalent conjunctive form (`x <= 5 AND y >= 2`), which query planners exploit for index usage. In topology, the laws underlie the fact that a set is open if and only if its complement is closed, since arbitrary unions of open sets are open and De Morgan's Laws convert this into the statement that arbitrary intersections of closed sets are closed — a bridge to <a class="wiki-link" href="/wiki/math-found-arbitrary-unions-intersections" data-track="wiki_article.body.wiki_link">Arbitrary Unions and Intersections</a> and to the axioms of a topological space. In formal verification and cryptographic protocol analysis, De Morgan-style rewriting of Boolean predicates is a standard normalization step before applying SAT solvers.

Ask the tutor: Can you show me how De Morgan's Laws combine with the distributive laws to fully simplify a three-set expression like (A∩(B∪C))c\big(A \cap (B\cup C)\big)^c?

DefinitionDe Morgan's Laws for Sets

Let UU be a universal set, and let A,BA, B be subsets of UU. Write Ac=U∖AA^c = U \setminus A for the complement of AA relative to UU. Then:

(A∪B)c=Ac∩Bc(complement of a union)(A \cup B)^c = A^c \cap B^c \qquad \text{(complement of a union)}
(A∩B)c=Ac∪Bc(complement of an intersection)(A \cap B)^c = A^c \cup B^c \qquad \text{(complement of an intersection)}

More generally, let II be any index set (possibly empty, finite, or infinite) and let {Ai}i∈I\{A_i\}_{i \in I} be an indexed family of subsets of UU. Then:

(⋃i∈IAi)c=⋂i∈IAi c,(⋂i∈IAi)c=⋃i∈IAi c.\left(\bigcup_{i \in I} A_i\right)^{c} = \bigcap_{i \in I} A_i^{\,c}, \qquad \left(\bigcap_{i \in I} A_i\right)^{c} = \bigcup_{i \in I} A_i^{\,c}.

(When I=∅I = \varnothing, the convention is ⋃i∈∅Ai=∅\bigcup_{i \in \varnothing} A_i = \varnothing and ⋂i∈∅Ai=U\bigcap_{i \in \varnothing} A_i = U, so both generalized identities reduce to Uc=∅U^c = \varnothing and ∅c=U\varnothing^c = U, which hold trivially.)

Intuition

Think of UU as a rectangular universe, with AA and BB drawn as circles inside it, as in a standard Venn diagram. The union A∪BA \cup B is everything covered by at least one circle; its complement (A∪B)c(A\cup B)^c is therefore the region outside both circles entirely — the area that misses AA and misses BB. But "misses AA" is exactly membership in AcA^c, and "misses BB" is exactly membership in BcB^c. Being in both of these regions simultaneously is precisely membership in Ac∩BcA^c \cap B^c. This is the geometric content of the first law. The second law flips the picture. The intersection A∩BA \cap B is the lens-shaped overlap of the two circles; its complement is everything outside that lens — which includes points outside AA, points outside BB, or both. That is a union, not an intersection, of the two complements. The key perceptual shift is that negating a combined coverage condition ("covered by at least one") turns it into an avoid-all condition (intersection of complements), while negating a joint membership condition ("in both") turns it into an avoid-at-least-one condition (union of complements). Union and intersection trade places precisely because "and" and "or" trade places under negation — the same phenomenon you meet when negating quantified or compound logical statements.

Figure
Venn diagram illustrating (A∪B)c=Ac∩Bc(A\cup B)^c = A^c\cap B^c and (A∩B)c=Ac∪Bc(A\cap B)^c = A^c\cup B^c
U A B (A ∪ B)ᶜ = shaded region = region outside both A and B = Aᶜ ∩ Bᶜ U A B (A ∩ B)ᶜ = shaded region = outside the lens = Aᶜ ∪ Bᶜ

Theorem and Proofs

TheoremDe Morgan's Laws for Sets

Let UU be a set, let A,B⊆UA, B \subseteq U, and let {Ai}i∈I\{A_i\}_{i\in I} be an indexed family of subsets of UU for an arbitrary index set II. Writing complements relative to UU, the following hold: 1. (Binary, union form) (A∪B)c=Ac∩Bc(A \cup B)^c = A^c \cap B^c. 2. (Binary, intersection form) (A∩B)c=Ac∪Bc(A \cap B)^c = A^c \cup B^c. 3. (General, union form) (⋃i∈IAi)c=⋂i∈IAic\left(\bigcup_{i\in I} A_i\right)^c = \bigcap_{i\in I} A_i^c. 4. (General, intersection form) (⋂i∈IAi)c=⋃i∈IAic\left(\bigcap_{i\in I} A_i\right)^c = \bigcup_{i\in I} A_i^c.

Proof

We use double inclusion: to prove X=YX = Y for sets X,YX, Y, it suffices to show X⊆YX \subseteq Y and Y⊆XY \subseteq X, since a set is determined entirely by its elements (this is the axiom of extensionality, already presumed by Proving Set Identities). Throughout, x∈Ecx \in E^c means x∈Ux \in U and x∉Ex \notin E; we suppress explicit mention of "x∈Ux \in U" since we work entirely within UU and all sets in play are subsets of UU.

Part 1: (A∪B)c=Ac∩Bc(A \cup B)^c = A^c \cap B^c. (⊆\subseteq) Let x∈(A∪B)cx \in (A \cup B)^c. By definition of complement, x∉A∪Bx \notin A \cup B. By definition of union, A∪B={y:y∈A or y∈B}A \cup B = \{y : y \in A \text{ or } y \in B\}, so x∉A∪Bx \notin A \cup B means it is not the case that (x∈Ax \in A or x∈Bx \in B). By De Morgan's Law for propositions applied to the statement "x∈A∨x∈Bx \in A \vee x \in B," we obtain

¬(x∈A∨x∈B)  ⟺  (¬(x∈A))∧(¬(x∈B)),\neg(x \in A \vee x \in B) \iff (\neg (x\in A)) \wedge (\neg(x \in B)),

i.e., x∉Ax \notin A and x∉Bx \notin B. Hence x∈Acx \in A^c and x∈Bcx \in B^c, so x∈Ac∩Bcx \in A^c \cap B^c. This shows (A∪B)c⊆Ac∩Bc(A\cup B)^c \subseteq A^c \cap B^c. (⊇\supseteq) Let x∈Ac∩Bcx \in A^c \cap B^c. By definition of intersection, x∈Acx \in A^c and x∈Bcx \in B^c, i.e., x∉Ax \notin A and x∉Bx \notin B. Applying De Morgan's Law for propositions in the reverse direction,

(¬(x∈A))∧(¬(x∈B))  ⟺  ¬(x∈A∨x∈B),(\neg(x\in A)) \wedge (\neg(x\in B)) \iff \neg(x \in A \vee x \in B),

so it is not the case that x∈Ax \in A or x∈Bx \in B, i.e., x∉A∪Bx \notin A \cup B. Hence x∈(A∪B)cx \in (A \cup B)^c. This shows Ac∩Bc⊆(A∪B)cA^c \cap B^c \subseteq (A \cup B)^c. Combining both inclusions, (A∪B)c=Ac∩Bc(A \cup B)^c = A^c \cap B^c.

Part 2: (A∩B)c=Ac∪Bc(A \cap B)^c = A^c \cup B^c. (⊆\subseteq) Let x∈(A∩B)cx \in (A \cap B)^c, so x∉A∩Bx \notin A \cap B, i.e., it is not the case that (x∈Ax \in A and x∈Bx \in B). By De Morgan's Law for propositions,

¬(x∈A∧x∈B)  ⟺  (¬(x∈A))∨(¬(x∈B)),\neg(x \in A \wedge x \in B) \iff (\neg(x\in A)) \vee (\neg(x \in B)),

so x∉Ax \notin A or x∉Bx \notin B; that is, x∈Acx \in A^c or x∈Bcx \in B^c, which by definition of union means x∈Ac∪Bcx \in A^c \cup B^c. Hence (A∩B)c⊆Ac∪Bc(A \cap B)^c \subseteq A^c \cup B^c. (⊇\supseteq) Let x∈Ac∪Bcx \in A^c \cup B^c, so x∈Acx \in A^c or x∈Bcx \in B^c, i.e., x∉Ax \notin A or x∉Bx \notin B. Applying De Morgan's Law for propositions in reverse,

(¬(x∈A))∨(¬(x∈B))  ⟺  ¬(x∈A∧x∈B),(\neg(x\in A)) \vee (\neg(x\in B)) \iff \neg(x \in A \wedge x \in B),

so it is not the case that x∈Ax \in A and x∈Bx \in B, i.e., x∉A∩Bx \notin A \cap B, so x∈(A∩B)cx \in (A \cap B)^c. Hence Ac∪Bc⊆(A∩B)cA^c \cup B^c \subseteq (A \cap B)^c. Combining both inclusions, (A∩B)c=Ac∪Bc(A \cap B)^c = A^c \cup B^c. This proves Parts 1 and 2. (Note that the entire argument reduces, at the level of elements, to the propositional De Morgan's Laws ¬(P∨Q)  ⟺  ¬P∧¬Q\neg(P \vee Q) \iff \neg P \wedge \neg Q and ¬(P∧Q)  ⟺  ¬P∨¬Q\neg(P \wedge Q) \iff \neg P \vee \neg Q, which themselves are verified by a four-row truth table over P,Q∈{T,F}P, Q \in \{\text{T}, \text{F}\} — a fact we take as already established from propositional logic and do not re-derive here.)

Part 3: (⋃i∈IAi)c=⋂i∈IAic\left(\bigcup_{i\in I} A_i\right)^c = \bigcap_{i\in I} A_i^c. Recall the definitions: x∈⋃i∈IAix \in \bigcup_{i \in I} A_i if and only if there exists i∈Ii \in I with x∈Aix \in A_i; and x∈⋂i∈IAix \in \bigcap_{i \in I} A_i if and only if for all i∈Ii \in I, x∈Aix \in A_i. (⊆\subseteq) Let x∈(⋃i∈IAi)cx \in \left(\bigcup_{i\in I} A_i\right)^c. Then x∉⋃i∈IAix \notin \bigcup_{i \in I} A_i, i.e., it is not the case that there exists i∈Ii \in I with x∈Aix \in A_i. By the quantifier form of De Morgan's Law (negation of an existential is a universal negation),

¬(∃i∈I, x∈Ai)  ⟺  ∀i∈I, ¬(x∈Ai),\neg\big(\exists i \in I,\ x \in A_i\big) \iff \forall i \in I,\ \neg(x \in A_i),

so for every i∈Ii \in I, x∉Aix \notin A_i, i.e., x∈Aicx \in A_i^c. Since this holds for all i∈Ii \in I, by definition of intersection x∈⋂i∈IAicx \in \bigcap_{i \in I} A_i^c. (⊇\supseteq) Let x∈⋂i∈IAicx \in \bigcap_{i \in I} A_i^c. Then for every i∈Ii \in I, x∈Aicx \in A_i^c, i.e., x∉Aix \notin A_i. Applying the quantifier De Morgan's Law in reverse,

(∀i∈I, ¬(x∈Ai))  ⟺  ¬(∃i∈I, x∈Ai),\big(\forall i \in I,\ \neg(x\in A_i)\big) \iff \neg\big(\exists i \in I,\ x \in A_i\big),

so it is not the case that there exists i∈Ii \in I with x∈Aix \in A_i, i.e., x∉⋃i∈IAix \notin \bigcup_{i\in I} A_i, i.e., x∈(⋃i∈IAi)cx \in \left(\bigcup_{i \in I} A_i\right)^c. Combining both inclusions gives Part 3. If I=∅I = \varnothing, both sides are vacuously handled by the stated conventions (⋃i∈∅Ai=∅\bigcup_{i\in\varnothing}A_i = \varnothing, so the left side is UU; and ⋂i∈∅Aic=U\bigcap_{i \in \varnothing} A_i^c = U vacuously, since the universal quantifier over an empty index set is vacuously true for every x∈Ux \in U), and the identity U=UU = U holds.

Part 4: (⋂i∈IAi)c=⋃i∈IAic\left(\bigcap_{i\in I} A_i\right)^c = \bigcup_{i\in I} A_i^c. (⊆\subseteq) Let x∈(⋂i∈IAi)cx \in \left(\bigcap_{i\in I} A_i\right)^c. Then x∉⋂i∈IAix \notin \bigcap_{i \in I} A_i, i.e., it is not the case that for all i∈Ii \in I, x∈Aix \in A_i. By the quantifier De Morgan's Law (negation of a universal is an existential negation),

¬(∀i∈I, x∈Ai)  ⟺  ∃i∈I, ¬(x∈Ai),\neg\big(\forall i \in I,\ x \in A_i\big) \iff \exists i \in I,\ \neg(x \in A_i),

so there exists i0∈Ii_0 \in I with x∉Ai0x \notin A_{i_0}, i.e., x∈Ai0cx \in A_{i_0}^c. By definition of union, x∈⋃i∈IAicx \in \bigcup_{i \in I} A_i^c. (⊇\supseteq) Let x∈⋃i∈IAicx \in \bigcup_{i \in I} A_i^c. Then there exists i0∈Ii_0 \in I with x∈Ai0cx \in A_{i_0}^c, i.e., x∉Ai0x \notin A_{i_0}. Applying the reverse direction,

(∃i∈I, ¬(x∈Ai))  ⟺  ¬(∀i∈I, x∈Ai),\big(\exists i \in I,\ \neg(x \in A_i)\big) \iff \neg\big(\forall i \in I,\ x \in A_i\big),

so it is not the case that x∈Aix \in A_i for all i∈Ii \in I, i.e., x∉⋂i∈IAix \notin \bigcap_{i\in I} A_i, i.e., x∈(⋂i∈IAi)cx \in \left(\bigcap_{i\in I} A_i\right)^c. Combining both inclusions gives Part 4, again with the empty-index-set case verified directly from the stated conventions (⋂i∈∅Ai=U\bigcap_{i\in\varnothing}A_i = U so the left side is ∅\varnothing, matching ⋃i∈∅Aic=∅\bigcup_{i \in \varnothing} A_i^c = \varnothing). This completes the proof of all four parts. ■\blacksquare

∎
CorollaryBinary laws as a special case of the general laws

Taking I={1,2}I = \{1, 2\}, A1=AA_1 = A, A2=BA_2 = B in Parts 3 and 4 recovers Parts 1 and 2 exactly, since ⋃i∈{1,2}Ai=A∪B\bigcup_{i \in \{1,2\}} A_i = A \cup B and ⋂i∈{1,2}Ai=A∩B\bigcap_{i\in\{1,2\}} A_i = A \cap B. Thus the binary laws are literally instances of the general laws, not merely analogues of them.

Worked examples

Example 1 (finite, concrete, asymmetric sets). Let U={1,2,3,…,12}U = \{1, 2, 3, \dots, 12\}, and let

A={1,2,3,4,5},B={3,4,5,6,7,8}.A = \{1, 2, 3, 4, 5\}, \qquad B = \{3, 4, 5, 6, 7, 8\}.

First compute the union and intersection directly:

A∪B={1,2,3,4,5,6,7,8},A∩B={3,4,5}.A \cup B = \{1,2,3,4,5,6,7,8\}, \qquad A \cap B = \{3,4,5\}.

Their complements relative to UU:

(A∪B)c=U∖{1,…,8}={9,10,11,12},(A \cup B)^c = U \setminus \{1,\dots,8\} = \{9, 10, 11, 12\},
(A∩B)c=U∖{3,4,5}={1,2,6,7,8,9,10,11,12}.(A \cap B)^c = U \setminus \{3,4,5\} = \{1,2,6,7,8,9,10,11,12\}.

Now compute AcA^c and BcB^c individually:

Ac={6,7,8,9,10,11,12},Bc={1,2,9,10,11,12}.A^c = \{6,7,8,9,10,11,12\}, \qquad B^c = \{1,2,9,10,11,12\}.

Check the first law, (A∪B)c=Ac∩Bc(A\cup B)^c = A^c \cap B^c:

Ac∩Bc={6,7,8,9,10,11,12}∩{1,2,9,10,11,12}={9,10,11,12}.A^c \cap B^c = \{6,7,8,9,10,11,12\} \cap \{1,2,9,10,11,12\} = \{9,10,11,12\}.

This matches (A∪B)c={9,10,11,12}(A \cup B)^c = \{9,10,11,12\} computed above — confirmed. ✓ Check the second law, (A∩B)c=Ac∪Bc(A\cap B)^c = A^c \cup B^c:

Ac∪Bc={6,7,8,9,10,11,12}∪{1,2,9,10,11,12}={1,2,6,7,8,9,10,11,12}.A^c \cup B^c = \{6,7,8,9,10,11,12\} \cup \{1,2,9,10,11,12\} = \{1,2,6,7,8,9,10,11,12\}.

This matches (A∩B)c={1,2,6,7,8,9,10,11,12}(A \cap B)^c = \{1,2,6,7,8,9,10,11,12\} computed above — confirmed. ✓ The asymmetry of AA (size 5) and BB (size 6), with a nontrivial partial overlap {3,4,5}\{3,4,5\}, rules out the possibility that the identities held only by symmetry or by an accidental coincidence of set sizes.

Example 2 (an infinite family, indexed by natural numbers, with U=RU = \mathbb{R}). Let U=RU = \mathbb{R}, and for each n∈N={1,2,3,… }n \in \mathbb{N} = \{1, 2, 3, \dots\} define the interval

An=(−1n, 2+1n)={x∈R:−1n<x<2+1n}.A_n = \left(-\tfrac{1}{n},\ 2 + \tfrac{1}{n}\right) = \left\{x \in \mathbb{R} : -\tfrac1n < x < 2 + \tfrac1n\right\}.

These are nested, shrinking-toward-[0,2][0,2] open intervals: A1⊇A2⊇A3⊇⋯A_1 \supseteq A_2 \supseteq A_3 \supseteq \cdots, each strictly larger than [0,2][0,2] but by a smaller and smaller margin.

Intersection side. We claim ⋂n=1∞An=[0,2]\bigcap_{n=1}^\infty A_n = [0, 2]. If x∈[0,2]x \in [0,2], then for every nn, −1n<0≤x≤2<2+1n-\frac1n < 0 \le x \le 2 < 2+\frac1n, so x∈Anx \in A_n for all nn, hence x∈⋂nAnx \in \bigcap_n A_n. Conversely, if x∉[0,2]x \notin [0,2], then either x<0x < 0 or x>2x > 2. If x<0x < 0, choose nn with 1n<−x\frac1n < -x (possible by the Archimedean property), so −1n>x-\frac1n > x, meaning x∉Anx \notin A_n for that nn, so x∉⋂nAnx \notin \bigcap_n A_n. The case x>2x > 2 is symmetric. Hence

⋂n=1∞An=[0,2].\bigcap_{n=1}^\infty A_n = [0,2].

So (⋂n=1∞An)c=R∖[0,2]=(−∞,0)∪(2,∞)\left(\bigcap_{n=1}^\infty A_n\right)^c = \mathbb{R} \setminus [0,2] = (-\infty, 0) \cup (2, \infty).

Union of complements side. Each Anc=R∖An=(−∞,−1n]∪[2+1n,∞)A_n^c = \mathbb{R} \setminus A_n = \left(-\infty, -\frac1n\right] \cup \left[2+\frac1n, \infty\right). We compute ⋃n=1∞Anc\bigcup_{n=1}^\infty A_n^c. Take xx in this union: there exists nn with x≤−1nx \le -\frac1n or x≥2+1nx \ge 2 + \frac1n. If x≤−1nx \le -\frac{1}{n} for some n≥1n \ge 1, then since −1n<0-\frac1n < 0, we get x<0x < 0. If x≥2+1nx \ge 2+\frac1n for some nn, then since 2+1n>22 + \frac1n > 2, we get x>2x > 2. So ⋃nAnc⊆(−∞,0)∪(2,∞)\bigcup_n A_n^c \subseteq (-\infty, 0) \cup (2,\infty). Conversely, if x<0x < 0, choose nn large enough that 1n<−x\frac1n < -x (Archimedean property again), so x<−1nx < -\frac1n, hence x∈Ancx \in A_n^c. If x>2x > 2, choose nn with 1n<x−2\frac1n < x - 2, so x>2+1nx > 2 + \frac1n, hence x∈Ancx \in A_n^c. So (−∞,0)∪(2,∞)⊆⋃nAnc(-\infty,0)\cup(2,\infty) \subseteq \bigcup_n A_n^c. Combining, ⋃n=1∞Anc=(−∞,0)∪(2,∞)\bigcup_{n=1}^\infty A_n^c = (-\infty, 0) \cup (2, \infty), which matches (⋂nAn)c\left(\bigcap_n A_n\right)^c computed above. This confirms the general intersection-form law

(⋂n=1∞An)c=⋃n=1∞Anc\left(\bigcap_{n=1}^\infty A_n\right)^c = \bigcup_{n=1}^\infty A_n^c

in a genuinely infinite setting where the intersection is not achieved by any single finite stage — a phenomenon impossible to observe with only two sets.

Counterexamplewhy the fixed universal set UU is essential

De Morgan's Laws are stated for subsets of a fixed universal set UU, and complementation is always taken relative to that same UU. Suppose we drop this hypothesis and instead try to make sense of "complement" as an absolute notion — the collection of all things not in AA, with no ambient universe fixing the discourse. This is not just a technical convenience being dropped; it breaks the theorem's very well-definedness, and if patched naively, breaks the identity itself. Concretely, work naively as if "complement of AA" means "the set of everything not in AA," with no restriction to a universe. Let A={1,2}A = \{1, 2\} and B={2,3}B = \{2, 3\}, thought of as subsets of, say, all sets whatsoever (no fixed UU). Then A∪B={1,2,3}A \cup B = \{1,2,3\}, and its "absolute complement" would have to be every object in existence that is not 11, 22, or 33 — this includes not just numbers but every set, every function, every abstract object one can name. This collection is not a set at all: by Russell's-paradox-style arguments, there is no set of "everything," since assuming such a universal set exists leads to a contradiction (the set of all sets not containing themselves cannot consistently be a member or non-member of itself). So (A∪B)c(A\cup B)^c is not even a well-formed set-theoretic object once UU is removed — the left-hand side of the identity has no meaning, and the "theorem" cannot even be stated, let alone proved. Even in a restricted, seemingly safe re-interpretation — say, fixing U1={1,2,3,4,5}U_1 = \{1,2,3,4,5\} for computing AcA^c but a different universe U2={1,2,3}U_2 = \{1,2,3\} for computing BcB^c — the identity can fail numerically. With A={1,2}A = \{1,2\}, B={2,3}B = \{2,3\}: relative to U1U_1, Ac={3,4,5}A^c = \{3,4,5\}; relative to U2U_2, Bc={1}B^c = \{1\}. Then Ac∩Bc={3,4,5}∩{1}=∅A^c \cap B^c = \{3,4,5\} \cap \{1\} = \varnothing. But A∪B={1,2,3}A \cup B = \{1,2,3\}, and to even compute (A∪B)c(A\cup B)^c we must choose a universe — say U1U_1, giving (A∪B)c={4,5}(A\cup B)^c = \{4,5\}. This does not equal ∅=Ac∩Bc\varnothing = A^c \cap B^c computed with mismatched universes. The identity is restored only once we insist A,BA, B are both subsets of one common, fixed UU throughout — exactly the hypothesis the theorem requires.

Scope, edge cases & common traps

SituationWhat happensWhy
A=∅A = \varnothing(A∪B)c=Bc(A \cup B)^c = B^cUnion with ∅\varnothing does nothing; consistent with Ac∩Bc=U∩Bc=BcA^c \cap B^c = U \cap B^c = B^c
A=UA = U(A∩B)c=Bc(A \cap B)^c = B^cAc=∅A^c = \varnothing, so Ac∪Bc=BcA^c \cup B^c = B^c; matches (U∩B)c=Bc(U \cap B)^c = B^c
I=∅I = \varnothing (empty family)Laws reduce to Uc=∅U^c=\varnothing, ∅c=U\varnothing^c = UBy convention ⋃∅=∅\bigcup_\varnothing = \varnothing, ⋂∅=U\bigcap_\varnothing = U
II infiniteLaws still hold verbatimProof uses only quantifier negation, valid for any index set
No fixed universal set UUComplement, and hence the laws, are undefined or can failSee counterexample above
Confusing (A∪B)c(A\cup B)^c with Ac∪BcA^c \cup B^cThese are generally different setsThe correct dual of union is intersection, not union again

The mathematician behind it

Origins · 1 minAugustus De Morgan and how this was discovered
AD
Augustus De Morgan
1806–1871 · Victorian British mathematics and the birth of symbolic logic

Augustus De Morgan was a British mathematician and logician, born in Madurai, India, and educated at Trinity College, Cambridge. He became the first professor of mathematics at the newly founded University College London in 1828, a post he held for most of his career, resigning twice on points of principle regarding institutional interference with academic freedom. De Morgan worked across algebra, calculus, probability, and the foundations of logic, and he was a close correspondent and intellectual partner of George Boole, whose algebraic treatment of logic would later formalize much of what De Morgan investigated informally. He is remembered above all for his systematic study of the duality between conjunction/disjunction and between union/intersection — the laws that today bear his name — which he articulated in the context of syllogistic and symbolic logic well before set theory in its modern Cantorian form existed.

History
- 1806 — Augustus De Morgan is born in Madurai, in present-day Tamil Nadu, India.
- 1828 — De Morgan is appointed the first professor of mathematics at University College London.
- 1847 — De Morgan publishes Formal Logic, articulating rigorous laws for negating compound and quantified propositions, the direct ancestor of the laws now bearing his name.
- 1871 — De Morgan dies in London; his logical laws are absorbed into the emerging algebra of sets developed by Cantor, Dedekind, and later formalized by Boole's algebraic successors.
- 20th century — the propositional and set-theoretic forms of De Morgan's Laws become standard content in every treatment of Boolean algebra, digital logic, and axiomatic set theory (e.g., Halmos's Naive Set Theory, Enderton's Elements of Set Theory).
Are De Morgan's Laws only true for two sets, or do they hold for any finite number?

They hold for any finite number of sets, and in fact for any index set at all, finite or infinite — this is exactly the content of the general laws stated in this article. For three sets, (A∪B∪C)c=Ac∩Bc∩Cc(A \cup B \cup C)^c = A^c \cap B^c \cap C^c follows either by applying the binary law twice (treating A∪B∪CA \cup B \cup C as (A∪B)∪C(A\cup B)\cup C) or directly from the general law with I={1,2,3}I = \{1,2,3\}. There is no upper bound on how many sets can be involved; the proof via quantifier negation works uniformly whether II has two elements or is the uncountable index set of, say, all real numbers.

Why do we need a fixed universal set UU at all — can't we just talk about complements freely?

No — without restricting to subsets of some fixed UU, "the complement of AA" would mean "everything that is not in AA," and modern set theory (via the Zermelo–Fraenkel axioms) proves that there is no set containing everything, on pain of Russell's paradox. Fixing UU sidesteps this entirely: we only ever consider U∖AU \setminus A, a perfectly legitimate application of the axiom of specification (subset comprehension) applied to the already-existing set UU. Every application of De Morgan's Laws you will see assumes such a UU is fixed in advance, even when it is left implicit (e.g., U=RU = \mathbb{R} when discussing intervals, or UU = the sample space in probability).

Is there a quick way to remember which operation swaps to which?

Yes: complement always swaps ∪↔∩\cup \leftrightarrow \cap, never leaves the operation unchanged. A useful mnemonic is "break the bar, flip the operator" — if you distribute a complement bar over a union or intersection, breaking it into individual complements forces you to flip the connecting operation. This mirrors negating "or" into "and" (and vice versa) in ordinary English: "I did not eat cake or ice cream" means "I did not eat cake, and I did not eat ice cream," never "...or I did not eat ice cream" (which would be a weaker, different claim).

Do De Morgan's Laws hold in other algebraic structures, like Boolean algebras or lattices?

Yes, in a general Boolean algebra (B,∨,∧,′,0,1)(B, \vee, \wedge, {}', 0, 1), De Morgan's Laws (a∨b)′=a′∧b′(a \vee b)' = a' \wedge b' and (a∧b)′=a′∨b′(a \wedge b)' = a' \vee b' are theorems (or sometimes taken as axioms, depending on the presentation) that hold for all elements a,b∈Ba, b \in B, and the algebra of sets under (∪,∩,c,∅,U)(\cup, \cap, {}^c, \varnothing, U) is the canonical example of such a Boolean algebra. More generally, in any complemented distributive lattice, an analogous duality holds. This is why the same "De Morgan" name attaches to laws in propositional logic, set theory, and Boolean circuit algebra — they are all instances of one underlying algebraic phenomenon.

Can De Morgan's Laws fail if the sets involved are infinite?

No — the general form proven above holds for arbitrary index sets II, including infinite (even uncountable) ones, with no extra hypotheses beyond each AiA_i being a subset of the same fixed UU. The proof goes through unchanged because it relies only on the logical equivalences between "there exists ii such that..." and "not for all ii, not...", which are valid regardless of how large II is. Worked Example 2 in this article demonstrates the intersection-form law explicitly for a countably infinite family of shrinking intervals.

How does this relate to proving other set identities, like the distributive laws?

De Morgan's Laws are proved by the same core technique used for all basic set identities: double inclusion, reducing element-membership statements to propositional logic and invoking the corresponding logical equivalence. The distributive laws A∩(B∪C)=(A∩B)∪(A∩C)A \cap (B \cup C) = (A\cap B)\cup(A\cap C) and A∪(B∩C)=(A∪B)∩(A∪C)A \cup (B\cap C) = (A\cup B)\cap(A\cup C) are proved the same way, using the propositional distributive laws for ∧\wedge over ∨\vee and vice versa. Mastering the double-inclusion technique on De Morgan's Laws is directly transferable to proving essentially every identity in The Algebra of Sets.

Why does the empty index set give ⋂i∈∅Ai=U\bigcap_{i\in\varnothing} A_i = U rather than ∅\varnothing?

This convention exists so the general laws (and other identities) hold uniformly without exceptions. Membership in ⋂i∈∅Ai\bigcap_{i \in \varnothing} A_i means "for all i∈∅i \in \varnothing, x∈Aix \in A_i" — a universally quantified statement over an empty domain, which is vacuously true for every xx (there is no i∈∅i \in \varnothing to serve as a counterexample). Hence every x∈Ux \in U satisfies this vacuous condition, giving ⋂i∈∅Ai=U\bigcap_{i\in\varnothing} A_i = U. This is the same vacuous-truth phenomenon behind "all unicorns in this room are purple" being true when there are no unicorns in the room.

Before this

Where this leads