@@ -605,6 +605,54 @@ begin
605
605
exact quotient.sound ⟨equiv.sigma_equiv_prod ι α⟩,
606
606
end
607
607
608
+ protected lemma le_sup_iff {ι : Type v} {f : ι → cardinal.{max v w}} {c : cardinal} :
609
+ (c ≤ sup f) ↔ (∀ b, (∀ i, f i ≤ b) → c ≤ b) :=
610
+ ⟨λ h b hb, le_trans h (sup_le.mpr hb), λ h, h _ $ λ i, le_sup f i⟩
611
+
612
+ /-- The lift of a supremum is the supremum of the lifts. -/
613
+ lemma lift_sup {ι : Type v} (f : ι → cardinal.{max v w}) :
614
+ lift.{(max v w) u} (sup.{v w} f) =
615
+ sup.{v (max u w)} (λ i : ι, lift.{(max v w) u} (f i)) :=
616
+ begin
617
+ apply le_antisymm,
618
+ { rw [cardinal.le_sup_iff], intros c hc, by_contra h,
619
+ obtain ⟨d, rfl⟩ := cardinal.lift_down (not_le.mp h).le,
620
+ simp only [lift_le, sup_le] at h hc,
621
+ exact h hc },
622
+ { simp only [cardinal.sup_le, lift_le, le_sup, implies_true_iff] }
623
+ end
624
+
625
+ /-- To prove that the lift of a supremum is bounded by some cardinal `t`,
626
+ it suffices to show that the lift of each cardinal is bounded by `t`. -/
627
+ lemma lift_sup_le {ι : Type v} (f : ι → cardinal.{max v w})
628
+ (t : cardinal.{max u v w}) (w : ∀ i, lift.{_ u} (f i) ≤ t) :
629
+ lift.{(max v w) u} (sup f) ≤ t :=
630
+ by { rw lift_sup, exact sup_le.mpr w, }
631
+
632
+ @[simp] lemma lift_sup_le_iff {ι : Type v} (f : ι → cardinal.{max v w}) (t : cardinal.{max u v w}) :
633
+ lift.{(max v w) u} (sup f) ≤ t ↔ ∀ i, lift.{_ u} (f i) ≤ t :=
634
+ ⟨λ h i, (lift_le.mpr (le_sup f i)).trans h,
635
+ λ h, lift_sup_le f t h⟩
636
+
637
+ universes v' w'
638
+
639
+ /--
640
+ To prove an inequality between the lifts to a common universe of two different supremums,
641
+ it suffices to show that the lift of each cardinal from the smaller supremum
642
+ if bounded by the lift of some cardinal from the larger supremum.
643
+ -/
644
+ lemma lift_sup_le_lift_sup
645
+ {ι : Type v} {ι' : Type v'} (f : ι → cardinal.{max v w}) (f' : ι' → cardinal.{max v' w'})
646
+ (g : ι → ι') (h : ∀ i, lift.{_ (max v' w')} (f i) ≤ lift.{_ (max v w)} (f' (g i))) :
647
+ lift.{_ (max v' w')} (sup f) ≤ lift.{_ (max v w)} (sup f') :=
648
+ begin
649
+ apply lift_sup_le.{(max v' w')} f,
650
+ intro i,
651
+ apply le_trans (h i),
652
+ simp only [lift_le],
653
+ apply le_sup,
654
+ end
655
+
608
656
/-- `ω` is the smallest infinite cardinal, also known as ℵ₀. -/
609
657
def omega : cardinal.{u} := lift (mk ℕ)
610
658
0 commit comments