Climbing past ZFC
Gödel's second incompleteness theorem says that ZFC, if consistent, cannot prove its own consistency (see incompleteness). So there are true arithmetical statements — among them, if ZFC is consistent — that ZFC cannot reach. How can we strengthen ZFC in a principled way? One natural answer is to assert that the universe of sets is large: that there is a cardinal so far beyond the cardinals below it that the sets of rank below form a universe of their own, a model of all of ZFC. Such a is an inaccessible cardinal, and the axiom "an inaccessible cardinal exists" proves .
A second road starts in analysis. In 1930 Stanisław Ulam, following a question of Stefan Banach, asked whether some set carries a countably additive measure defined on all of its subsets, vanishing on points. His analysis produced the measurable cardinals — cardinals carrying a two-valued measure on all their subsets that is -additive: a union of fewer than null sets is null. Thirty years later Dana Scott showed that a measurable cardinal is incompatible with Gödel's constructible universe , and Jerome Keisler showed that measurability is equivalent to the existence of an elementary embedding of the universe into part of itself.
These axioms — and the much stronger ones that followed — are not about large numbers for their own sake. They form a hierarchy that calibrates the consistency strength of mathematical theories, and they settle questions about sets of real numbers that ZFC leaves open. This lesson builds on axiomatic set theory (the hierarchy , cofinality, ) and forcing (relative consistency).
Universes inside the universe
The cumulative hierarchy , , builds every set in stages. Look at the first infinite stage. , the set of hereditarily finite sets, is closed under every operation of finite set theory — pairs, unions, power sets, images under functions — because cannot be reached from below by them: finite unions of finite sets are finite, and power sets of finite sets are finite. satisfies every axiom of ZFC except Infinity.
An inaccessible cardinal is an uncountable with the same two properties: a union of fewer than sets each of size less than has size less than (regularity), and the power set of a set of size less than has size less than (strong limit). Then is closed under all the operations of ZFC, and contains too: a universe inside the universe.
A measurable cardinal carries a notion of "almost all subsets of " that is extraordinarily robust: every subset of either contains almost all of or misses almost all of it, and the intersection of fewer than "large" sets is still large. Using it one can take an ultrapower of the whole universe and obtain an elementary embedding — a map that preserves every statement of set theory — which moves and nothing below it. The universe looks like a proper part of itself. Stronger large cardinals demand that be closer and closer to ; the limit, , is inconsistent with the axiom of choice (Kunen, 1971).
Definitions
Cardinals are initial ordinals, and is the least order type of a cofinal subset of .
Definition— regular, singular, strong limit
An infinite cardinal is regular if , equivalently if is not a union of fewer than sets each of size less than ; otherwise it is singular. It is a strong limit if for every cardinal .
Definition— inaccessible cardinal
is (strongly) inaccessible if it is uncountable, regular, and a strong limit. It is weakly inaccessible if it is uncountable, regular, and a limit cardinal ( for all ). Under GCH the two notions coincide.
Definition— κ-complete ultrafilter, measurable cardinal
An ultrafilter on a set is -complete if whenever and , and non-principal if it contains no singleton. An uncountable cardinal is measurable if there is a -complete non-principal ultrafilter on . (The word "uncountable" matters: every ultrafilter is -complete, since it is closed under finite intersections, and non-principal ultrafilters on exist by the ultrafilter lemma.)
Definition— elementary embedding, critical point
For classes , a map is an elementary embedding if for every formula and all . If is not the identity on ordinals, its critical point is the least ordinal with (then ).
Definition— consistency strength
A theory has at least the consistency strength of if is provable in a weak base theory (for instance Peano arithmetic, or ZFC); they are equiconsistent if each has at least the strength of the other, and is strictly stronger if moreover is not provable.
Examples and non-examples
Example— Small cardinals that fail
- is regular and a strong limit, but countable. It is the finite model of inaccessibility: .
- is regular (a countable union of countable sets is countable, using choice) but not a limit cardinal.
- is a limit cardinal but singular: . Likewise is a singular strong limit.
- Even the least cardinal with — the limit of — is singular, of cofinality . Being "very big" is not the point; an inaccessible satisfies and is regular, and ZFC cannot prove that such a cardinal exists.
Example— Ultrafilters
For , the principal ultrafilter is -complete for every . On a finite set every ultrafilter is principal. On , a non-principal ultrafilter contains every cofinite set, hence each ; the intersection of these countably many sets is empty, so it is not countably complete. More generally (Lemma 4 below), a -complete non-principal ultrafilter contains only sets of size at least — so it can live only on a set of size at least .
Example— Universes in Lean
In Lean's type theory, Type u is a type in Type (u+1), and Mathlib proves that its cardinality, Cardinal.univ.{u, u+1}, is inaccessible from the point of view of Type (u+1). So Lean's foundations prove the existence of inaccessible cardinals — which ZFC cannot do (Theorem 3). This is no paradox: Lean's type theory, with its hierarchy of universes, is a stronger theory than ZFC.
Inaccessible cardinals: a model of ZFC, and why ZFC cannot find one
Theorem— Lemma 1
If is inaccessible then for every , and .
Proof
By induction on . . If then because is a strong limit. If is a limit and for all , then is a union of sets each of size less than , so by regularity. Finally has size at most , and at least since it contains every ordinal .
∎
Theorem— Theorem 2 (Zermelo 1930)
If is inaccessible, then .
Proof
is transitive, so formulas are absolute between and ; and if , every subset of is in (if then , so each is in ). We check the axioms.
Extensionality and Foundation hold in every transitive class. Pairing, Union, Power Set: if with , then , , and ; these lie in because is a limit ordinal, and by the remark above computes correctly. Infinity: as . Separation: for any formula and parameters in , is a subset of , so it is in . Choice: a well-ordering of exists in and is a subset of ; being a well-ordering is absolute for because every subset of is in .
Replacement is where regularity enters. Suppose " is a function with domain ", where is defined over by a formula with parameters. Then , and by Lemma 1. The ranks , , are fewer than ordinals below , so by regularity their supremum is below , and gives .
∎
Both hypotheses are needed. For the singular strong limit (viewed as an ordinal), the map is definable in , which computes power sets and cardinalities correctly, but its range is cofinal in , so it is not an element: Replacement fails. And if is regular but not a strong limit, then some with has size at least ; a well-ordering of of length at least lies in , and Replacement, which would collapse it onto an ordinal of , fails again.
Theorem— Theorem 3
If ZFC is consistent, then ZFC does not prove that an inaccessible cardinal exists. Moreover, if ZFC + "there is an inaccessible cardinal" is consistent, then ZFC does not even prove .
Proof
Write IC for "there is an inaccessible cardinal". Theorem 2 is a theorem of ZFC, about the formalised satisfaction relation for set-sized structures: "if is inaccessible then ". And ZFC proves that a theory with a set model is consistent. Hence .
If , then , and by Gödel's second incompleteness theorem ZFC is inconsistent. If , then , and by the second incompleteness theorem, now for the theory , that theory is inconsistent.
∎
A second, more set-theoretic argument: if is the least inaccessible, then , because for , " is inaccessible" is absolute between and (all subsets of and all functions from smaller ordinals into lie in ). So ZFC + IC proves that ZFC + IC has a model; and IC cannot be a theorem of ZFC, for then , a model of ZFC, would satisfy both IC and IC. Theorem 3 also says that ZFC + IC is strictly stronger than ZFC in consistency strength (if it is consistent at all). Its consistency cannot be established by any proof that ZFC can formalise; belief in it rests on other evidence — the coherence of the theory that has grown from it, the absence of contradictions after a century of intense study, and the way it fits with everything else we know.
Measurable cardinals, ultrapowers and embeddings
Theorem— Lemma 4
Let be a -complete non-principal ultrafilter on a set . Then every has . In particular, a -complete ultrafilter on a set of size less than is principal.
Proof
Suppose and . For each , , so . These fewer than sets have intersection , which is therefore in ; but then , which is impossible.
∎
Theorem— Theorem 5 (Ulam 1930)
Every measurable cardinal is inaccessible.
Proof
Let be a -complete non-principal ultrafilter on ; by definition is uncountable.
Strong limit. Suppose . Then there is an injection from into . For each , exactly one of and its complement is in ; call it . The intersection of these sets is in . If then for every , , so and . Thus , contradicting Lemma 4.
Regular. If , there is a cofinal set with , so , a union of fewer than sets each of size less than . By Lemma 4 none of these sets is in , so all their complements are; by -completeness so is the intersection of the complements, which is empty. Contradiction.
∎
Both proofs are formalised in Lean below. To go further we need the ultrapower of the universe.
Ultrapowers. Let be a countably complete ultrafilter on . For functions with domain (classes of them, cut down to sets by Scott's trick of taking only the elements of least rank) put iff and iff . Łoś's theorem says that the resulting structure satisfies if and only if . Countable completeness makes well-founded (a descending sequence would give a single in countably many -sets with for all ), so collapses to a transitive class , and is an elementary embedding , by Łoś's theorem. If is -complete and non-principal, then for and .
Theorem— Theorem 6 (Keisler, Scott)
is measurable if and only if there is an elementary embedding , with a transitive class, whose critical point is .
Proof
() is the ultrapower construction just described. () Given , let . Since , , so ; and for , , so exactly one of , is in . Intersections: if and is a sequence of members of , then by elementarity is a sequence of length whose -th term is (as ), so . Upward closure is similar, so is a -complete ultrafilter. Finally, for , , so is non-principal.
∎
The two directions fit together. Given with critical point and the derived ultrafilter , the map is a well-defined elementary embedding of the ultrapower into , and : every embedding with critical point factors through the ultrapower by its own derived measure.
Theorem— Theorem 7 (Scott 1961)
If there is a measurable cardinal, then .
Proof
Suppose and let be the least measurable cardinal. Take with critical point . Since for every ordinal, contains all ordinals; it is a transitive class model of ZF, and is the smallest such, so and . By elementarity, " is the least measurable cardinal", that is, believes it; so , contradicting .
∎
The same ultrapower shows that a measurable cardinal is a limit of inaccessible cardinals: contains every subset of and every function from a smaller ordinal into , so " is inaccessible"; if is chosen normal, , and Łoś's theorem gives — a set of size by Lemma 4. In particular, the least measurable is much larger than the least inaccessible, as Tarski, Keisler and Hanf showed in the early 1960s.
The hierarchy, and what it decides
Large cardinal axioms are naturally ordered by consistency strength. Some landmarks, in increasing order of consistency strength:
| Axiom | Definition, informally | Some consequences |
|---|---|---|
| inaccessible | uncountable regular strong limit | ; Grothendieck universes |
| Mahlo | the inaccessibles below form a stationary set | reflection of inaccessibility |
| weakly compact | : every 2-colouring of pairs has a homogeneous set of size | compactness for infinitary languages |
| measurable | -complete non-principal ultrafilter; with critical point | (Scott); analytic games determined (Martin 1970) |
| strong, Woodin | embeddings with , for many | infinitely many Woodin cardinals give projective determinacy (Martin and Steel 1989) |
| supercompact | for every , an embedding with closed under -sequences | consistency of the proper forcing axiom (Baumgartner) |
| huge, rank-into-rank | (axiom I3) and beyond | Laver's free left-distributive algebras |
Beyond the top lies inconsistency: Kunen (1971) proved that, with the axiom of choice, there is no non-trivial elementary embedding .
What is known. Large cardinals settle the theory of definable sets of reals level by level: a measurable cardinal implies that analytic games are determined (Martin, 1970) and that every set is Lebesgue measurable (Solovay); infinitely many Woodin cardinals imply projective determinacy and with it the regularity of all projective sets (Martin–Steel; see descriptive set theory). Many natural statements turn out equiconsistent with a large cardinal: "every set of reals is Lebesgue measurable" (with dependent choice instead of choice) with an inaccessible (Solovay 1970; Shelah 1984); "there is a real-valued measurable cardinal" with a measurable (Solovay 1971); the axiom of determinacy with infinitely many Woodin cardinals (Woodin). On the other hand, large cardinals do not decide the continuum hypothesis: Lévy and Solovay (1967) showed that forcing with a poset smaller than preserves the measurability of (and similarly for the other large cardinals), and CH can be forced either way by such small posets.
An empirical phenomenon, not a theorem. Every natural theory studied so far has turned out to be comparable in consistency strength with the large cardinal hierarchy, and the hierarchy has turned out to be linearly ordered. There is no proof that this must happen — artificial incomparable theories can be built from self-referential sentences — and many set theorists regard the phenomenon as evidence that large cardinals measure something real.
What is open. Whether there are canonical inner models — analogues of — for supercompact cardinals is the subject of Woodin's "Ultimate " programme and is open. Whether a Reinhardt cardinal (a non-trivial ) is consistent with ZF without choice is open. Whether the purely finite statement about Laver tables in the computation section can be proved without large cardinals is open. And for every large cardinal axiom, its consistency — relative to ZFC or anything weaker — is, by Gödel's theorem, beyond proof; it is a matter of evidence and judgement.
Inaccessible and measurable cardinals in Lean
Mathlib defines inaccessible cardinals, the von Neumann hierarchy ZFSet.vonNeumann inside its model ZFSet of ZFC, and the rank of a set. Its definition of inaccessibility agrees with ours:
/-- Mathlib's definition of a (strongly) inaccessible cardinal agrees with the lesson's: `κ` is
uncountable, regular, and a strong limit (`2^λ < κ` for all `λ < κ`). This is Mathlib's
`Cardinal.isInaccessible_def`. -/
theorem inaccessible_iff {κ : Cardinal.{u}} :
IsInaccessible κ ↔ ℵ₀ < κ ∧ Cardinal.IsRegular κ ∧ IsStrongLimit κ :=
isInaccessible_def. Lemma 1 is in Mathlib in the form ("pre-beth") together with for inaccessible ; from it, every member of is small:
/-- If `κ` is inaccessible then `|V_κ| = κ`. Mathlib computes `|V_α| = ℶ'_α` (`card_vonNeumann`,
with the "pre-beth" function `preBeth`) and proves `preBeth κ = κ` for inaccessible `κ`
(`IsInaccessible.preBeth_ord`), by the induction in the lesson: strong limit at successor steps,
regularity at limit steps. -/
theorem card_vonNeumann {κ : Cardinal.{u}} (hκ : IsInaccessible κ) :
(ZFSet.vonNeumann κ.ord).card = κ := by
rw [ZFSet.card_vonNeumann, hκ.preBeth_ord]/-- Every member of `V_κ`, for `κ` inaccessible, has fewer than `κ` elements: a set `x` of rank
`α < κ` is a subset of `V_α`, and `|V_α| = ℶ'_α < ℶ'_κ = κ`. -/
theorem card_lt_of_mem {κ : Cardinal.{u}} (hκ : IsInaccessible κ) {x : ZFSet.{u}}
(hx : x ∈ ZFSet.vonNeumann κ.ord) : x.card < κ := by
have hr : x.rank < κ.ord := ZFSet.mem_vonNeumann.1 hx
calc x.card ≤ (ZFSet.vonNeumann x.rank).card := ZFSet.card_mono (ZFSet.subset_vonNeumann_self x)
_ = preBeth x.rank := ZFSet.card_vonNeumann _
_ < preBeth κ.ord := preBeth_strictMono hr
_ = κ := hκ.preBeth_ordThe closure properties used in the proof of Theorem 2 — pairing, union and power set (true at every limit stage), replacement (needs regularity) and infinity (needs ):
/-- **Pairing** holds in `V_κ` for every infinite `κ`: `rank {x, y} = max (rank x + 1) (rank y + 1)`,
and the successor of an ordinal below the limit ordinal `κ` is still below it. -/
theorem pair_mem {κ : Cardinal.{u}} (hκ : ℵ₀ ≤ κ) {x y : ZFSet.{u}}
(hx : x ∈ ZFSet.vonNeumann κ.ord) (hy : y ∈ ZFSet.vonNeumann κ.ord) :
({x, y} : ZFSet) ∈ ZFSet.vonNeumann κ.ord := by
rw [ZFSet.mem_vonNeumann] at *
rw [ZFSet.rank_pair]
have hlim := isSuccLimit_ord hκ
exact max_lt (hlim.succ_lt hx) (hlim.succ_lt hy)/-- **Union** holds in `V_κ`: `rank (⋃₀ x) ≤ rank x`. -/
theorem sUnion_mem {κ : Cardinal.{u}} {x : ZFSet.{u}} (hx : x ∈ ZFSet.vonNeumann κ.ord) :
ZFSet.sUnion x ∈ ZFSet.vonNeumann κ.ord := by
rw [ZFSet.mem_vonNeumann] at *
exact (ZFSet.rank_sUnion_le x).trans_lt hx/-- **Power set** holds in `V_κ` for every infinite `κ`: `rank (𝒫 x) = rank x + 1 < κ`. (That
`𝒫 x` is the *true* power set, so that `V_κ` and `V` agree about it, is transitivity of `V_κ`
together with `V_{α+1} = 𝒫 V_α`.) -/
theorem powerset_mem {κ : Cardinal.{u}} (hκ : ℵ₀ ≤ κ) {x : ZFSet.{u}}
(hx : x ∈ ZFSet.vonNeumann κ.ord) : ZFSet.powerset x ∈ ZFSet.vonNeumann κ.ord := by
rw [ZFSet.mem_vonNeumann] at *
rw [ZFSet.rank_powerset]
exact (isSuccLimit_ord hκ).succ_lt hx/-- **Replacement** for `V_κ`, `κ` regular: if fewer than `κ` sets `f i` all lie in `V_κ`, so does
the set `{f i : i ∈ ι}`. Its rank is `sup (rank (f i) + 1)`, and a supremum of fewer than
`cf κ = κ` ordinals below `κ` stays below `κ`. This is exactly where regularity is needed: for
`κ = ℵ_ω`, which is singular, the ranks `ω_n` of the sets `ω_n ∈ V_{ω_ω}` are cofinal in `ω_ω`. -/
theorem range_mem {κ : Cardinal.{u}} (hκ : Cardinal.IsRegular κ) {ι : Type u} (hι : #ι < κ)
(f : ι → ZFSet.{u}) (hf : ∀ i, f i ∈ ZFSet.vonNeumann κ.ord) :
ZFSet.range f ∈ ZFSet.vonNeumann κ.ord := by
rw [ZFSet.mem_vonNeumann, ZFSet.rank_range]
simp_rw [Order.succ_eq_add_one]
apply Ordinal.iSup_add_one_lt_of_lt_cof
· rwa [hκ.cof_ord]
· exact fun i => ZFSet.mem_vonNeumann.1 (hf i)/-- **Infinity** holds in `V_κ` for uncountable `κ`: the von Neumann ordinal `ω` has rank `ω`,
which is below `κ` (viewed as an ordinal) because `κ > ℵ₀`. -/
theorem omega_mem {κ : Cardinal.{u}} (hκ : ℵ₀ < κ) :
(Ordinal.omega0.{u}).toZFSet ∈ ZFSet.vonNeumann κ.ord := by
rw [ZFSet.mem_vonNeumann, Ordinal.rank_toZFSet, Cardinal.lt_ord, Ordinal.card_omega0]
exact hκAnd Lean's own universes:
/-- Lean's universes are inaccessible: the cardinality of `Type u`, as a cardinal of the next
universe, is inaccessible (Mathlib's `Cardinal.IsInaccessible.univ`). So Lean's type theory
proves the existence of inaccessible cardinals, which ZFC cannot (if it is consistent) — Lean's
foundations are strictly stronger than ZFC. -/
theorem univ_inaccessible : IsInaccessible Cardinal.univ.{u, u + 1} :=
IsInaccessible.univMeasurable cardinals. Mathlib has ultrafilters but no measurable cardinals, so we define them:
/-- An ultrafilter `U` on `α` is **κ-complete** if the intersection of any family of fewer than
`κ` members of `U` is again in `U`. Every ultrafilter is `ℵ₀`-complete (finite intersections). -/
def IsComplete (κ : Cardinal.{u}) {α : Type u} (U : Ultrafilter α) : Prop :=
∀ S : Set (Set α), #S < κ → (∀ s ∈ S, s ∈ U) → ⋂₀ S ∈ U/-- An ultrafilter is **non-principal** if it contains no singleton (equivalently, it is not the
ultrafilter `{s : a ∈ s}` of all sets containing a fixed point `a`). -/
def IsNonprincipal {α : Type u} (U : Ultrafilter α) : Prop :=
∀ a : α, ({a} : Set α) ∉ U/-- `κ` is **measurable** if it is uncountable and there is a κ-complete non-principal
ultrafilter on (the well-ordered set of ordinals below) `κ`. Without "uncountable", `ℵ₀` would
qualify, since every non-principal ultrafilter on `ℕ` is `ℵ₀`-complete. -/
def IsMeasurable (κ : Cardinal.{u}) : Prop :=
ℵ₀ < κ ∧ ∃ U : Ultrafilter κ.ord.ToType, IsComplete κ U ∧ IsNonprincipal ULemma 4, its corollaries, and Theorem 5 in full — each proof follows the human one:
/-- In a κ-complete non-principal ultrafilter every set has at least `κ` elements. If `s ∈ U`
had fewer, the fewer than `κ` sets `{a}ᶜ` (`a ∈ s`) would all be in `U`, so their intersection,
and its intersection with `s`, would be in `U` — but that set is empty. -/
theorem le_card_of_mem {κ : Cardinal.{u}} {α : Type u} {U : Ultrafilter α} (hc : IsComplete κ U)
(hn : IsNonprincipal U) {s : Set α} (hs : s ∈ U) : κ ≤ #s := by
by_contra! hlt
let S : Set (Set α) := (fun a => ({a}ᶜ : Set α)) '' s
have hI : ⋂₀ S ∈ U := by
refine hc S (mk_image_le.trans_lt hlt) ?_
rintro _ ⟨a, -, rfl⟩
exact Ultrafilter.compl_mem_iff_notMem.2 (hn a)
have hempty : s ∩ ⋂₀ S = ∅ := by
ext b
simp only [S, mem_inter_iff, mem_sInter, mem_image, forall_exists_index, and_imp,
mem_empty_iff_false, iff_false, not_and]
intro hb h
exact h _ b hb rfl rfl
have h := Filter.inter_mem hs hI
rw [hempty] at h
exact Ultrafilter.empty_notMem h/-- A κ-complete ultrafilter on a set with fewer than `κ` elements is principal. In particular
the ultrafilter witnessing measurability must live on a set of size at least `κ`. -/
theorem principal_of_card_lt {κ : Cardinal.{u}} {α : Type u} {U : Ultrafilter α}
(hc : IsComplete κ U) (hα : #α < κ) : ∃ a : α, ({a} : Set α) ∈ U := by
by_contra! h
have := le_card_of_mem hc h (Filter.univ_mem : (univ : Set α) ∈ U)
rw [mk_univ] at this
exact this.not_gt hα/-- `ℵ₀` is not measurable in any reasonable sense: a countably complete ultrafilter on `ℕ`
(Mathlib's `CountableInterFilter`) is principal, because the countably many sets `{n}ᶜ` would
otherwise all be in it, and their intersection is empty. -/
theorem nat_countably_complete_principal (U : Ultrafilter ℕ) [CountableInterFilter (U : Filter ℕ)] :
∃ n : ℕ, ({n} : Set ℕ) ∈ U := by
by_contra! h
have hI : (⋂ n : ℕ, ({n}ᶜ : Set ℕ)) ∈ (U : Filter ℕ) :=
countable_iInter_mem.2 fun n => Ultrafilter.compl_mem_iff_notMem.2 (h n)
have hempty : (⋂ n : ℕ, ({n}ᶜ : Set ℕ)) = ∅ := by
ext m
simp only [mem_iInter, mem_compl_iff, mem_singleton_iff, mem_empty_iff_false, iff_false,
not_forall, not_not]
exact ⟨m, rfl⟩
rw [hempty] at hI
exact Ultrafilter.empty_notMem hI/-- **A measurable cardinal is a strong limit.** If `μ < κ` but `κ ≤ 2^μ`, embed `κ` into the
subsets of a set `I` of size `μ`, `a ↦ g a`. For each `i ∈ I` the ultrafilter contains either
`{a : i ∈ g a}` or its complement; intersecting these fewer than `κ` choices gives a set in `U`
on which `g` is constant — at most one point, contradicting `le_card_of_mem`. -/
theorem two_power_lt {κ : Cardinal.{u}} (hκ : IsMeasurable κ) {μ : Cardinal.{u}} (hμ : μ < κ) :
2 ^ μ < κ := by
classical
obtain ⟨hω, U, hc, hn⟩ := hκ
by_contra! hle
-- An embedding of the ordinals below `κ` into the subsets of `I`, where `|I| = μ`.
set I := μ.out
have hI : #I = μ := mk_out μ
have hle' : #κ.ord.ToType ≤ #(Set I) := by
rw [mk_toType, card_ord, mk_set, hI]
exact hle
obtain ⟨g⟩ := (le_def _ _).1 hle'
-- For each `i`, the member of `U` deciding whether `i ∈ g a`.
let Y : I → Set κ.ord.ToType := fun i =>
if {a | i ∈ g a} ∈ U then {a | i ∈ g a} else {a | i ∈ g a}ᶜ
have hY : ∀ i, Y i ∈ U := by
intro i
by_cases h : {a | i ∈ g a} ∈ U
· rw [show Y i = {a | i ∈ g a} from ite_eq_left h]; exact h
· rw [show Y i = {a | i ∈ g a}ᶜ from ite_eq_right h]
exact Ultrafilter.compl_mem_iff_notMem.2 h
have hInter : ⋂₀ range Y ∈ U :=
hc (range Y) (mk_range_le.trans_lt (hI ▸ hμ)) (by rintro _ ⟨i, rfl⟩; exact hY i)
-- On that intersection, `g` takes a single value, so it has at most one point.
have hsub : (⋂₀ range Y).Subsingleton := by
intro a ha b hb
apply g.injective
ext i
have ha' := mem_sInter.1 ha (Y i) ⟨i, rfl⟩
have hb' := mem_sInter.1 hb (Y i) ⟨i, rfl⟩
by_cases h : {a | i ∈ g a} ∈ U
· rw [show Y i = {a | i ∈ g a} from ite_eq_left h] at ha' hb'
exact iff_of_true ha' hb'
· rw [show Y i = {a | i ∈ g a}ᶜ from ite_eq_right h] at ha' hb'
exact iff_of_false ha' hb'
have h1 : #(⋂₀ range Y) ≤ 1 := mk_le_one_iff_set_subsingleton.2 hsub
have h2 := le_card_of_mem hc hn hInter
exact absurd (h2.trans h1) (not_le.2 (one_lt_aleph0.trans hω))/-- **A measurable cardinal is regular.** If `cf κ < κ`, the ordinals below `κ` are covered by
fewer than `κ` initial segments `Iic s`, each with fewer than `κ` elements. None of them is in
`U` (`le_card_of_mem`), so all their complements are, and by κ-completeness so is the
intersection of the complements — which is empty. -/
theorem is_regular {κ : Cardinal.{u}} (hκ : IsMeasurable κ) : Cardinal.IsRegular κ := by
obtain ⟨hω, U, hc, hn⟩ := hκ
refine ⟨hω.le, ?_⟩
by_contra! hlt
obtain ⟨S, hS, hcard⟩ := Order.exists_cof_eq κ.ord.ToType
rw [Ordinal.cof_toType] at hcard
-- Initial segments of `κ` are small.
have hsmall : ∀ s : κ.ord.ToType, #(Iic s) < κ := by
intro s
have hIio : #(Iio s) < κ := by
have := mk_Iio_lt s (by rw [mk_toType, card_ord, Ordinal.type_toType])
rwa [mk_toType, card_ord] at this
rw [← Iio_insert]
exact mk_insert_le.trans_lt (add_lt_of_lt hω.le hIio (one_lt_aleph0.trans hω))
let F : Set (Set κ.ord.ToType) := (fun s => (Iic s)ᶜ) '' S
have hI : ⋂₀ F ∈ U := by
refine hc F (mk_image_le.trans_lt (hcard ▸ hlt)) ?_
rintro _ ⟨s, -, rfl⟩
exact Ultrafilter.compl_mem_iff_notMem.2 fun h => (le_card_of_mem hc hn h).not_gt (hsmall s)
have hempty : ⋂₀ F = ∅ := by
ext a
simp only [F, mem_sInter, mem_image, forall_exists_index, and_imp, mem_empty_iff_false,
iff_false, not_forall]
obtain ⟨s, hs, has⟩ := hS a
exact ⟨_, s, hs, rfl, fun h => h has⟩
rw [hempty] at hI
exact Ultrafilter.empty_notMem hI/-- **Every measurable cardinal is (strongly) inaccessible** (Ulam, 1930): it is uncountable by
definition, regular by `is_regular` and a strong limit by `two_power_lt`. -/
theorem measurable_inaccessible {κ : Cardinal.{u}} (hκ : IsMeasurable κ) : IsInaccessible κ :=
inaccessible_iff.2 ⟨hκ.1, is_regular hκ, ⟨(aleph0_pos.trans hκ.1).ne', fun _ hμ => two_power_lt hκ hμ⟩⟩What is and is not formalised. Formalised: the definitions, Lemma 4 and Theorem 5 (every measurable cardinal is inaccessible), and the closure properties of that drive Theorem 2. Not formalised: Theorem 2 itself (Mathlib has no satisfaction relation for formulas of set theory inside ZFSet, so "" cannot yet be stated), Theorem 3 (it needs formalised provability and Gödel's second incompleteness theorem for ZFC), ultrapowers, Łoś's theorem, elementary embeddings and Scott's theorem. Note the quiet subtlety in univ_inaccessible: Lean proves that an inaccessible exists, which tells us about the strength of Lean's type theory (roughly ZFC with an inaccessible for each universe level), not about ZFC.
Computing in the shadow of large cardinals
The first experiment explores the finite analogue of Theorem 2. In Ackermann's coding of hereditarily finite sets by natural numbers, it computes ranks and the sizes , and checks that each finite stage fails to be closed under pairing and power set while is closed — the mechanism that, one level up, makes a model of ZFC.
"""V_omega, the finite shadow of an inaccessible cardinal.
An inaccessible cardinal kappa makes V_kappa a model of ZFC because kappa is
regular and a strong limit. The countable cardinal omega has both properties
too: a finite union of finite sets is finite, and the power set of a finite
set is finite. Correspondingly V_omega, the set of hereditarily finite sets,
satisfies every axiom of ZFC except Infinity.
Ackermann (1937) coded hereditarily finite sets by natural numbers: m is an
element of n exactly when bit m of n is 1. So n = 0 is the empty set, 1 is
{0}, 2 is {1} = {{0}}, 3 is {0, 1}, and so on. We use the coding to compute
ranks, check that V_k consists exactly of the codes below |V_k|, check that
pairing, union and power set never leave V_omega but do leave each V_k, and
compute how fast |V_k| grows.
Runs unchanged in the browser (Pyodide) using only the standard library.
"""
from functools import lru_cache
from itertools import combinations
import math
import textwrap
def members(n):
"""The codes of the elements of the set coded by n."""
return [m for m in range(n.bit_length()) if n >> m & 1]
@lru_cache(maxsize=None)
def rank(n):
"""Von Neumann rank: 0 for the empty set, else 1 + max rank of members."""
return 1 + max(rank(m) for m in members(n)) if n else 0
def pair(a, b):
"""The code of {a, b}."""
return (1 << a) | (1 << b)
def union(n):
"""The code of the union of the members of n."""
result = 0
for m in members(n):
result |= m
return result
def power_set(n):
"""The code of the set of all subsets of n."""
elems, result = members(n), 0
for k in range(len(elems) + 1):
for subset in combinations(elems, k):
result |= 1 << sum(1 << e for e in subset)
return result
def size_of_v(k):
"""|V_k|: |V_0| = 0 and |V_(k+1)| = 2^|V_k|."""
size = 0
for _ in range(k):
size = 2 ** size
return size
def decimal_digits_of_power_of_two(e):
"""Number of decimal digits of 2^e, without converting to a string."""
digits = math.floor(e * math.log10(2)) + 1
value = 1 << e
while 10 ** digits <= value:
digits += 1
while digits > 1 and 10 ** (digits - 1) > value:
digits -= 1
return digits
def show(n):
"""Write the set coded by n with braces, e.g. 3 -> {{}, {{}}}."""
return "{" + ", ".join(show(m) for m in members(n)) + "}"
def main():
print("Ackermann codes: " + "; ".join(f"{n} = {show(n)}" for n in range(4)))
print("V_k is exactly the set of codes below |V_k|:")
for k in range(6):
size = size_of_v(k)
exact = all(rank(n) < k for n in range(size)) and rank(size) >= k
print(f" |V_{k}| = {size:>5}: {exact}")
digits = decimal_digits_of_power_of_two(65536)
print(f" |V_6| = 2^65536 has {digits} decimal digits")
print()
v4 = range(16)
print("Closure inside V_4 (codes 0..15), the first finite stage tested:")
print(f" pairs stay in V_4: {all(pair(a, b) < 16 for a in v4 for b in v4)}")
print(f" unions stay in V_4: {all(union(n) < 16 for n in v4)}")
print(f" power sets stay in V_4: {all(power_set(n) < 16 for n in v4)}")
top = max(v4, key=rank)
print(f" e.g. {{{top}}} = {{{top}, {top}}} has code {pair(top, top)} and rank "
f"{rank(pair(top, top))}: it lies in V_5, not V_4")
print("In V_omega every pair, union and power set of a code is again a")
print(f"finite code; e.g. 15 codes V_3, and its power set V_4 has code "
f"{power_set(15)}.")
print()
print(textwrap.fill(
"Epistemic status: exact computations with finitely many finite sets. "
"They show the mechanism - each stage V_k fails to be closed, but their "
"union V_omega is closed, because omega is regular and a strong limit - "
"and so illustrate by analogy why V_kappa satisfies ZFC when kappa is "
"inaccessible. That theorem is proved in the lesson; nothing about "
"uncountable cardinals is computed here.",
width=78,
))
if __name__ == "__main__":
main()The second shows a large cardinal axiom reaching down to finite combinatorics. Laver tables are the unique left-distributive operations on with . Laver found them while studying the algebra of rank-into-rank embeddings , and proved from that axiom (I3) that the period of the first row of tends to infinity.
"""Laver tables: finite algebras that large cardinals know about.
For n >= 0 let N = 2^n. The Laver table A_n is the unique operation * on
{1, ..., N} with p * 1 = p + 1 (mod N, so N * 1 = 1) that is left
self-distributive: p * (q * r) = (p * q) * (p * r). Richard Laver discovered
these tables in the study of elementary embeddings j : V_lambda -> V_lambda
(the rank-into-rank axiom I3). Each row is periodic, and Laver proved, assuming
I3, that the period of the first row tends to infinity as n grows. No proof
of this purely finite statement without large cardinals is known.
We build A_n for n <= 9 with the recursion p * (q + 1) = (p * q) * (p + 1),
filling rows from p = N downwards, check left self-distributivity
exhaustively for small n, and print the period of the first row.
Runs unchanged in the browser (Pyodide) using only the standard library.
"""
import textwrap
def laver_table(n):
"""The table of A_n as a dict of rows: rows[p][q - 1] = p * q."""
size = 2 ** n
rows = {size: list(range(1, size + 1))}
for p in range(size - 1, 0, -1):
row = [p + 1]
for _ in range(size - 1):
row.append(rows[row[-1]][p]) # (p * q) * (p + 1)
rows[p] = row
return rows
def star(rows, p, q):
"""p * q in the table."""
return rows[p][q - 1]
def is_left_distributive(rows):
"""Check p * (q * r) = (p * q) * (p * r) for all p, q, r."""
size = len(rows)
return all(
star(rows, p, star(rows, q, r)) == star(rows, star(rows, p, q),
star(rows, p, r))
for p in range(1, size + 1)
for q in range(1, size + 1)
for r in range(1, size + 1)
)
def period(row):
"""The least period of a list that repeats exactly."""
for d in range(1, len(row) + 1):
if len(row) % d == 0 and row == row[:d] * (len(row) // d):
return d
return len(row)
def main():
print(" n size left-distributive period of row 1 row 1 (start)")
periods = []
for n in range(10):
rows = laver_table(n)
check = str(is_left_distributive(rows)) if n <= 5 else "(not run)"
per = period(rows[1])
periods.append(per)
start = " ".join(map(str, rows[1][:per][:6]))
print(f"{n:>3} {2 ** n:>4} {check:>17} {per:>15} {start}")
print()
print(f"Periods of row 1 for n = 0..9: {periods}")
a3 = laver_table(2)
print("The table A_2 (rows p = 1..4, columns q = 1..4):")
for p in range(1, 5):
print(" " + " ".join(str(v) for v in a3[p]))
print()
print(textwrap.fill(
"Epistemic status: exact computation of finitely many finite tables, "
"with distributivity checked exhaustively for n <= 5. It cannot show "
"that the period of row 1 tends to infinity. Laver proved that from "
"the rank-into-rank axiom I3; Dougherty showed that the period first "
"reaches 32 only for astronomically large n; whether ZFC alone proves "
"that the period is unbounded is not known.",
width=78,
))
if __name__ == "__main__":
main()The periods grow absurdly slowly: Dougherty showed that the first with period , if it exists, is astronomically large — bounded below by an iterated value of the Ackermann function. Whether ZFC alone proves that the periods are unbounded is not known. This is a theorem conditional on a large cardinal axiom about finite objects — exactly the kind of statement that makes the consistency strength of such axioms a concern for all of mathematics.
Explore: building V_ω
Build hereditarily finite sets by putting boxes inside boxes. Every set you can make lies in some finite stage : the empty box has rank , and a box has rank one more than the largest rank inside it. Notice that you can always make a new box from boxes you have (pairing, union, power set never leave ), but you can never make a box containing all the natural numbers — that would be , of rank , outside . One level up, allow yourself also to gather any family of boxes indexed by a box you already hold. An uncountable is inaccessible exactly when this richer game never escapes — and now itself is inside. (Such a is a Grothendieck universe.)
Boxes inside boxes
Start with one empty box. Build new collections by putting boxes into boxes.
Select one box to wrap, or several to put together.
Exercises
1. Large cardinals
Warm-upHumanWhich of these cardinals are regular? (Choose all that apply; assume ZFC.)
2. Large cardinals
Warm-upHumanThe cumulative hierarchy starts , . How many elements does have?
3. Large cardinals
CoreHumanWhy is not measurable, even though non-principal ultrafilters on exist? (Consider countable completeness.)
4. Large cardinals
CoreHumanIn the proof that for inaccessible , which axiom's verification uses the regularity of in an essential way?
5. Large cardinals
CoreHumanSuppose ZFC proved "there is an inaccessible cardinal". What would follow?
6. Large cardinals
CoreHumanWrite IC for "there is an inaccessible cardinal". Which statements are correct? (Choose all that apply; assume ZFC + IC is consistent.)
7. Large cardinals
CoreFormalWhich Lean predicate correctly expresses that an ultrafilter U : Ultrafilter α is κ-complete?
8. Large cardinals
StretchHumanIn the proof that a measurable is a strong limit, we take an injection with and sets deciding whether . Why does have at most one element?
9. Large cardinals
StretchHumanIn Scott's proof that a measurable cardinal implies , we assume and take with critical point , the least measurable. Why is ?
10. Large cardinals
StretchComputationalWrite laver_table(n) returning a dict rows with rows[p][q - 1] = p * q in the Laver table on : row is , and for fill the rows from down to using and . Then write period(row) returning the least period of a list.
Common misconceptions
Misconception
"Large cardinals are just very big numbers." Size alone is not the point: , and the least are enormous, provably exist in ZFC, and are not large cardinals at all. What makes a cardinal "large" is a reflection or closure property that ZFC cannot prove to be instantiated — and the significance lies in the consistency strength such axioms carry and their consequences, for instance for sets of reals.
Misconception
"Large cardinal axioms are known to be consistent." Their consistency cannot be proved in ZFC (if ZFC is consistent), nor even reduced to the consistency of ZFC; by Gödel's theorem the same holds at every level of the hierarchy. Belief in them rests on mathematical evidence and judgement: the depth and coherence of their theory, their agreement with each other, the absence of contradictions, and their success in settling questions.
Misconception
"Measurable cardinals are about Lebesgue measure." Measurability of is about a two-valued measure — an ultrafilter — on all subsets of . The historical link to Lebesgue measure is real (Ulam's work on measures defined on all subsets, and real-valued measurable cardinals), but a measurable cardinal is a combinatorial object.
Misconception
"Kunen's theorem shows that large cardinals are inconsistent." Kunen ruled out a non-trivial under the axiom of choice. Embeddings with , such as those from measurable cardinals, are not affected; the theorem marks the ceiling of the hierarchy, not a crack in it.
Misconception
"Large cardinals will settle the continuum hypothesis." Gödel hoped so in 1947, but Lévy and Solovay (1967) showed that small forcing preserves large cardinals while changing the value of ; so no large cardinal axiom of the usual kind decides CH.
Many ways of seeing
Logic— A ruler for theories
Gödel's second incompleteness theorem makes the consistency strengths of theories form a strict hierarchy: whenever proves , is strictly stronger than (if consistent). Large cardinals provide natural, well-understood marks along this hierarchy, and the method for comparing other theories with them is relative consistency: forcing pushes statements down to large cardinals ("if there is a measurable, then is consistent"), and inner model theory pushes large cardinals out of statements ("if is consistent, then so is a measurable"), giving equiconsistencies. Gödel himself suggested in 1947 that new axioms of infinity, justified by the iterative conception of set, might settle independent questions; Penelope Maddy's "Believing the axioms" (1988) analyses the kinds of evidence offered for them. See incompleteness and model theory.
Topology— Ultrafilters as points, and realcompact spaces
The ultrafilters on a set are the points of its Stone–Čech compactification (for discrete), the principal ones being the points of itself; a measurable cardinal is a for which has a non-principal point that is -complete. A classical theorem of general topology makes this concrete: a discrete space is realcompact — homeomorphic to a closed subspace of a power of — if and only if its cardinality is less than the least measurable cardinal (Gillman and Jerison, 1960, chapter 12; their "measurable" means carrying a countably additive two-valued measure that vanishes on points, and the least such cardinal is measurable in our sense). So whether every discrete space is realcompact is exactly the question whether measurable cardinals exist. Stronger axioms reach deeper into topology: Casacuberta, Scevenels and Smith (2005) showed that Vopěnka's principle, a large cardinal principle far above measurables, implies that every homotopy idempotent functor on spaces is a localisation with respect to a single map. See point-set topology.
Analysis— Banach and Ulam's measure problem
Can Lebesgue measure be extended to a countably additive measure defined on all subsets of ? Vitali's set shows that no translation-invariant extension exists; Banach and Kuratowski (1929) showed that under CH there is no extension at all. Ulam (1930) analysed the general problem: if some set carries a countably additive probability measure on all its subsets vanishing on points, then there is a cardinal carrying such a measure that is -additive, and either is measurable (the measure can be taken two-valued) or and is weakly inaccessible — a "real-valued measurable" cardinal. Solovay (1971) proved that a real-valued measurable cardinal is equiconsistent with a measurable one. So the analyst's question "can every set of reals be measured?" has the answer "consistently yes, but only at the price of a measurable cardinal" (or, in Solovay's model of ZF + DC where every set of reals is Lebesgue measurable, of an inaccessible). See measure theory.
Algebra— Left distributivity and braids
For a rank-into-rank embedding , applying to (pieces of) another such embedding defines , and this operation is left self-distributive: . Laver (1992) proved, assuming I3, that the algebra generated by one embedding is free, and deduced that the word problem for the left self-distributive law is decidable. Patrick Dehornoy then found a proof of the decidability without large cardinals, and in the process discovered that the braid groups admit a left-invariant linear order (1994) — a fact about braids, and so about knots and the topology of configuration spaces, uncovered by way of large cardinals. The Laver tables of the computation section are finite quotients of such algebras of embeddings. See groups and knot theory.
Category theory— Universes and size
Category theory constantly needs "large" collections — the category of all groups, the functor category . Grothendieck's solution, introduced in SGA 4, was a universe: a set closed under the operations of set theory, inside which "small" mathematics happens. The uncountable Grothendieck universes are exactly the sets with inaccessible, so Grothendieck's axiom "every set lies in a universe" says that the inaccessible cardinals are unbounded. Lean adopts the same solution in type-theoretic form: Type u : Type (u+1), and Mathlib proves that each universe is inaccessible from the next (univ_inaccessible). Much stronger principles also have categorical forms: Vopěnka's principle is equivalent to the statement that the category of graphs has no large discrete full subcategory, and it controls when subcategories of locally presentable categories are reflective (Adámek and Rosický, 1994). See higher categories.
Wonder Trails
Two Wonder Trails approach these ideas from the very beginning: sets built as boxes inside boxes, and Cantor's discovery that some infinities are bigger than others.
Wonder Trail · Optional · never gradedBoxes inside boxesWhat is inside a box that contains only an empty box? Is it empty? And can every description you can think of make a collection?Follow the trail Wonder Trail · Optional · never gradedHow many infinities?There are infinitely many counting numbers and infinitely many infinite 0–1 sequences. Are these two infinities the same size?Follow the trailHistory and context
- Beginnings. Felix Hausdorff (1908) considered regular limit cardinals (weakly inaccessible) and remarked that they would be exceedingly large, if they exist; Paul Mahlo (1911) studied the hierarchy above them. In 1930 Wacław Sierpiński and Alfred Tarski, and independently Ernst Zermelo, introduced strongly inaccessible cardinals, and Zermelo described the models of set theory they give.
- The measure problem. Stefan Banach and Kazimierz Kuratowski (1929) and Stanisław Ulam (1930), in Lwów and Warsaw, created the theory of measures defined on all subsets of a set, and with it measurable cardinals.
- The 1960s. Alfred Tarski, H. Jerome Keisler and William Hanf showed that measurable cardinals are far larger than the first inaccessible; Dana Scott (1961) proved that a measurable cardinal implies ; Keisler's ultrapowers turned measurability into elementary embeddings. Haim Gaifman and Jack Silver studied , and Azriel Lévy and Robert Solovay (1967) showed that large cardinals do not decide CH.
- Embeddings and determinacy. Kenneth Kunen (1971) showed that is inconsistent with choice; Solovay, William Reinhardt and Akihiro Kanamori (1978) organised the hierarchy of strong axioms of infinity by elementary embeddings. Donald A. Martin (1970, 1975) linked large cardinals with determinacy, and Martin, John Steel and W. Hugh Woodin (1985–89) proved projective determinacy from Woodin cardinals. Inner model theory, from Ronald Jensen's fine structure through the work of William Mitchell, Steel and many others, builds canonical models for ever larger cardinals.
- Algebra. Richard Laver (1992) and Patrick Dehornoy (1994) connected rank-into-rank embeddings with left-distributive algebras and braid orderings; Randall Dougherty and Thomas Jech analysed the finite Laver tables.
- Today large cardinal theory is pursued worldwide — in the Americas, Europe, Israel and Asia — and its central questions, about inner models and the status of new axioms, remain open.
Further reading
- Akihiro Kanamori, The Higher Infinite: Large Cardinals in Set Theory from Their Beginnings (1994; 2nd edition 2003) — the standard reference, with careful history.
- Thomas Jech, Set Theory, Third Millennium Edition (2003), chapters 10 (measurable cardinals), 17 (large cardinals) and 20 (large cardinals and ).
- Kenneth Kunen, Set Theory: An Introduction to Independence Proofs (1980) — inaccessibles, and relative consistency.
- Frank R. Drake, Set Theory: An Introduction to Large Cardinals (1974).
- Leonard Gillman and Meyer Jerison, Rings of Continuous Functions (1960), chapter 12 — measurable cardinals and realcompactness.
- Patrick Dehornoy, Braids and Self-Distributivity (2000) — Laver tables, free left-distributive algebras and the braid order.
- Penelope Maddy, "Believing the axioms, I and II", Journal of Symbolic Logic 53 (1988) — on the justification of new axioms.