Cofinality #
This file contains the definition of cofinality of an ordinal number and regular cardinals
Main Definitions #
Ordinal.cof o
is the cofinality of the ordinalo
. Ifo
is the order type of the relation<
onα
, theno.cof
is the smallest cardinality of a subsets
of α that is cofinal inα
, i.e.∀ x : α, ∃ y ∈ s, ¬ y < x
.Cardinal.IsStrongLimit c
means thatc
is a strong limit cardinal:c ≠ 0 ∧ ∀ x < c, 2 ^ x < c
.Cardinal.IsRegular c
means thatc
is a regular cardinal:ℵ₀ ≤ c ∧ c.ord.cof = c
.Cardinal.IsInaccessible c
means thatc
is strongly inaccessible:ℵ₀ < c ∧ IsRegular c ∧ IsStrongLimit c
.
Main Statements #
Ordinal.infinite_pigeonhole_card
: the infinite pigeonhole principleCardinal.lt_power_cof
: A consequence of König's theorem stating thatc < c ^ c.ord.cof
forc ≥ ℵ₀
Cardinal.univ_inaccessible
: The type of ordinals inType u
form an inaccessible cardinal (inType v
withv > u
). This shows (externally) that inType u
there are at leastu
inaccessible cardinals.
Implementation Notes #
- The cofinality is defined for ordinals.
If
c
is a cardinal number, its cofinality isc.ord.cof
.
Tags #
cofinality, regular cardinals, limits cardinals, inaccessible cardinals, infinite pigeonhole principle
Cofinality of orders #
The set in the definition of Order.cof
is nonempty.
Cofinality of a strict order ≺
. This is the smallest cardinality of a set S : Set α
such
that ∀ a, ∃ b ∈ S, ¬ b ≺ a
.
Equations
Instances For
The set in the definition of Order.StrictOrder.cof
is nonempty.
Cofinality of ordinals #
Cofinality of an ordinal. This is the smallest cardinal of a
subset S
of the ordinal which is unbounded, in the sense
∀ a, ∃ b ∈ S, a ≤ b
. It is defined for all ordinals, but
cof 0 = 0
and cof (succ o) = 1
, so it is only really
interesting on limit ordinals (when it is an infinite cardinal).
Equations
- Ordinal.cof o = Quotient.liftOn o (fun a => StrictOrder.cof a.r) Ordinal.cof.proof_1
Instances For
Cofinality of suprema and least strict upper bounds #
The set in the lsub
characterization of cof
is nonempty.
Basic results #
A fundamental sequence for a
is an increasing sequence of length o = cof a
that converges at
a
. We provide o
explicitly in order to avoid type rewrites.
Equations
- Ordinal.IsFundamentalSequence a o f = (o ≤ Cardinal.ord (Ordinal.cof a) ∧ (∀ {i j : Ordinal.{u}} (hi : i < o) (hj : j < o), i < j → f i hi < f j hj) ∧ Ordinal.blsub o f = a)
Instances For
Every ordinal has a fundamental sequence.
Infinite pigeonhole principle #
If the union of s is unbounded and s is smaller than the cofinality, then s has an unbounded member
If the union of s is unbounded and s is smaller than the cofinality, then s has an unbounded member
The infinite pigeonhole principle
Pigeonhole principle for a cardinality below the cardinality of the domain
Regular and inaccessible cardinals #
A cardinal is a strong limit if it is not zero and it is
closed under powersets. Note that ℵ₀
is a strong limit by this definition.
Equations
- Cardinal.IsStrongLimit c = (c ≠ 0 ∧ ∀ (x : Cardinal.{u_2}), x < c → 2 ^ x < c)
Instances For
A cardinal is regular if it is infinite and it equals its own cofinality.
Equations
- Cardinal.IsRegular c = (Cardinal.aleph0 ≤ c ∧ c ≤ Ordinal.cof (Cardinal.ord c))
Instances For
A function whose codomain's cardinality is infinite but strictly smaller than its domain's has a fiber with cardinality strictly great than the codomain.
A function whose codomain's cardinality is infinite but strictly smaller than its domain's has an infinite fiber.
If an infinite type β
can be expressed as a union of finite sets,
then the cardinality of the collection of those finite sets
must be at least the cardinality of β
.
A cardinal is inaccessible if it is an uncountable regular strong limit cardinal.