Von Neumann hierarchy #
This file defines the von Neumann hierarchy of sets V_ o for ordinal o, which is recursively
defined so that V_ a = ⋃ b < a, powerset (V_ b). This stratifies the universal class, in the sense
that ⋃ o, V_ o = univ.
Notation #
V_ ois notation forvonNeumann o. It is scoped in theZFSetnamespace.
@[irreducible]
The von Neumann hierarchy is defined so that V_ o is the union of the powersets of all
V_ a for a < o. It satisfies the following properties:
vonNeumann_zero:V_ 0 = ∅vonNeumann_add_one:V_ (a + 1) = powerset (V_ a)vonNeumann_of_isSuccPrelimit:IsSuccPrelimit a → V_ a = ⋃ b < a, V_ b
Instances For
The von Neumann hierarchy is defined so that V_ o is the union of the powersets of all
V_ a for a < o. It satisfies the following properties:
vonNeumann_zero:V_ 0 = ∅vonNeumann_add_one:V_ (a + 1) = powerset (V_ a)vonNeumann_of_isSuccPrelimit:IsSuccPrelimit a → V_ a = ⋃ b < a, V_ b
Instances For
theorem
ZFSet.mem_vonNeumann'
{o : Ordinal.{u}}
{x : ZFSet.{u}}
:
x ∈ vonNeumann o ↔ ∃ a < o, x ⊆ vonNeumann a
@[irreducible]
@[irreducible]
theorem
ZFSet.subset_vonNeumann
{o : Ordinal.{u_1}}
{x : ZFSet.{u_1}}
:
x ⊆ vonNeumann o ↔ x.rank ≤ o
Every set is in some element of the von Neumann hierarchy.
@[simp, irreducible]
@[simp]
theorem
ZFSet.vonNeumann_mem_vonNeumann_iff
{a b : Ordinal.{u}}
:
vonNeumann a ∈ vonNeumann b ↔ a < b
@[simp]
theorem
ZFSet.vonNeumann_subset_vonNeumann_iff
{a b : Ordinal.{u}}
:
vonNeumann a ⊆ vonNeumann b ↔ a ≤ b
theorem
ZFSet.mem_vonNeumann_of_subset
{o : Ordinal.{u}}
{x y : ZFSet.{u}}
(h : x ⊆ y)
(hy : y ∈ vonNeumann o)
:
x ∈ vonNeumann o
@[simp]
@[simp]
theorem
ZFSet.vonNeumann_succ
(o : Ordinal.{u_1})
:
vonNeumann (Order.succ o) = (vonNeumann o).powerset
theorem
ZFSet.vonNeumann_of_isSuccPrelimit
{o : Ordinal.{u}}
(h : Order.IsSuccPrelimit o)
:
vonNeumann o = iUnion fun (a : ↑(Set.Iio o)) => vonNeumann ↑a