Skip to content

Commit

Permalink
feat(set_theory/cardinal_ordinal): #(list α) ≤ max ω (#α) (#12519)
Browse files Browse the repository at this point in the history
  • Loading branch information
vihdzp committed Mar 8, 2022
1 parent feb24fb commit 709a3b7
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions src/set_theory/cardinal_ordinal.lean
Original file line number Diff line number Diff line change
Expand Up @@ -610,6 +610,18 @@ calc #(list α)
... ≤ sum (λ n : ℕ, #α) : sum_le_sum _ _ $ λ n, pow_le H1 $ nat_lt_omega n
... = #α : by simp [H1]

theorem mk_list_eq_omega (α : Type u) [encodable α] [nonempty α] : #(list α) = ω :=
mk_le_omega.antisymm (omega_le_mk _)

theorem mk_list_le_max (α : Type u) : #(list α) ≤ max ω (#α) :=
begin
casesI fintype_or_infinite α,
{ haveI := fintype.encodable α,
exact mk_le_omega.trans (le_max_left _ _) },
{ rw mk_list_eq_mk,
apply le_max_right }
end

theorem mk_finset_eq_mk (α : Type u) [infinite α] : #(finset α) = #α :=
eq.symm $ le_antisymm (mk_le_of_injective (λ x y, finset.singleton_inj.1)) $
calc #(finset α) ≤ #(list α) : mk_le_of_surjective list.to_finset_surjective
Expand Down

0 comments on commit 709a3b7

Please sign in to comment.