Infinite pigeonhole principle #
This file proves variants of the infinite pigeonhole principle.
TODO #
Generalize universes of results.
theorem
Cardinal.exists_uncountable_fiber
{β α : Type u}
(f : β → α)
(h : mk α < mk β)
[Uncountable β]
:
∃ (a : α), Uncountable ↑(f ⁻¹' {a})
A function whose domain's cardinality is uncountable and strictly greater than its codomain's has an uncountable fiber.
theorem
Cardinal.le_range_of_union_finset_eq_univ
{α : Type u_1}
{β : Type u_2}
[Infinite β]
(f : α → Finset β)
(w : ⋃ (a : α), ↑(f a) = Set.univ)
:
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 β.
@[deprecated Cardinal.le_range_of_union_finset_eq_univ (since := "2026-01-17")]
theorem
Cardinal.le_range_of_union_finset_eq_top
{α : Type u_1}
{β : Type u_2}
[Infinite β]
(f : α → Finset β)
(w : ⋃ (a : α), ↑(f a) = Set.univ)
:
Alias of Cardinal.le_range_of_union_finset_eq_univ.
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 β.