Skip to content

Commit 92ad2ff

Browse files
committed
add
1 parent 7ee74e7 commit 92ad2ff

1 file changed

Lines changed: 22 additions & 7 deletions

File tree

Mathlib/SetTheory/Cardinal/Pigeonhole.lean

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,19 +66,34 @@ theorem infinite_pigeonhole_set {β α : Type u} {s : Set β} (f : s → α) (θ
6666

6767
/-- A function whose codomain's cardinality is infinite but strictly smaller than its domain's
6868
has a fiber with cardinality strictly great than the codomain. -/
69-
theorem infinite_pigeonhole_card_lt {β α : Type u} (f : β → α) (w : #α < #β) (w' : ℵ₀ ≤ #α) :
69+
theorem infinite_pigeonhole_card_lt {β α : Type u} (f : β → α) (h : #α < #β) ( : ℵ₀ ≤ #β) :
7070
∃ a : α, #α < #(f ⁻¹' {a}) := by
7171
simp_rw [← succ_le_iff]
72-
exact infinite_pigeonhole_card f (succ #α) (succ_le_of_lt w) (w'.trans (lt_succ _).le)
73-
((lt_succ _).trans_le (isRegular_succ w').2.ge)
72+
rcases lt_or_ge #α ℵ₀ with hα | hα
73+
· obtain ⟨a, ha⟩ := infinite_pigeonhole_card f ℵ₀ hβ le_rfl (by rwa [isRegular_aleph0.cof_eq])
74+
exact ⟨a, ha.trans' (succ_le_of_lt hα)⟩
75+
· exact infinite_pigeonhole_card f (succ #α) (succ_le_of_lt h) (hα.trans (le_succ _))
76+
((lt_succ _).trans_le (isRegular_succ hα).2.ge)
7477

7578
/-- A function whose codomain's cardinality is infinite but strictly smaller than its domain's
7679
has an infinite fiber. -/
77-
theorem exists_infinite_fiber {β α : Type u} (f : β → α) (w : #α < #β) (w' : Infinite α) :
80+
theorem exists_infinite_fiber {β α : Type u} (f : β → α) (h : #α < #β) ( : Infinite β) :
7881
∃ a : α, Infinite (f ⁻¹' {a}) := by
79-
simp_rw [Cardinal.infinite_iff] at w' ⊢
80-
obtain ⟨a, ha⟩ := infinite_pigeonhole_card_lt f w w'
81-
exact ⟨a, w'.trans ha.le⟩
82+
simp_rw [Cardinal.infinite_iff] at hβ ⊢
83+
rcases lt_or_ge #α ℵ₀ with hα | hα
84+
· exact infinite_pigeonhole_card f ℵ₀ hβ le_rfl (by rwa [isRegular_aleph0.cof_eq])
85+
· obtain ⟨a, ha⟩ := infinite_pigeonhole_card_lt f h hβ
86+
exact ⟨a, hα.trans ha.le⟩
87+
88+
theorem exists_uncountable_fiber {β α : Type u} (f : β → α) (h : #α < #β) (hβ : Uncountable β) :
89+
∃ a : α, Uncountable (f ⁻¹' {a}) := by
90+
simp_rw [← Cardinal.aleph0_lt_mk_iff, ← Order.succ_le_iff, succ_aleph0] at hβ ⊢
91+
rcases lt_or_ge #α ℵ₀ with hα | hα
92+
· exact infinite_pigeonhole_card f ℵ₁ hβ aleph0_lt_aleph_one.le
93+
(by rw [isRegular_aleph_one.cof_eq]; exact hα.trans aleph0_lt_aleph_one)
94+
· obtain ⟨a, ha⟩ := infinite_pigeonhole_card_lt f h (hβ.trans' aleph0_lt_aleph_one.le)
95+
rw [← Order.succ_le_succ_iff, succ_aleph0] at hα
96+
exact ⟨a, hα.trans (succ_le_of_lt ha)⟩
8297

8398
/-- If an infinite type `β` can be expressed as a union of finite sets,
8499
then the cardinality of the collection of those finite sets

0 commit comments

Comments
 (0)