File tree Expand file tree Collapse file tree
Mathlib/Order/ConditionallyCompleteLattice Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -742,7 +742,11 @@ end WithTop
742742
743743namespace Monotone
744744
745- variable [Preorder α] [ConditionallyCompleteLattice β] {f : α → β} (h_mono : Monotone f)
745+ variable [ConditionallyCompleteLattice β]
746+
747+ section Preorder
748+
749+ variable [Preorder α] {f : α → β} (h_mono : Monotone f)
746750include h_mono
747751
748752/-! A monotone function into a conditionally complete lattice preserves the ordering properties of
@@ -758,6 +762,24 @@ theorem csSup_image_le {s : Set α} (hs : s.Nonempty) {B : α} (hB : B ∈ upper
758762 sSup (f '' s) ≤ f B :=
759763 csSup_le (Nonempty.image f hs) (h_mono.mem_upperBounds_image hB)
760764
765+ end Preorder
766+
767+ section ConditionallyCompleteLattice
768+
769+ variable [ConditionallyCompleteLattice α]
770+ variable {f : α → β} {s : Set α} (hs : s.Nonempty) (hf : Monotone f)
771+ include hs hf
772+
773+ theorem csSup_image_le_map_csSup (hbdd : BddAbove s := by bddDefault) :
774+ sSup (f '' s) ≤ f (sSup s) :=
775+ csSup_image_le hf hs <| isLUB_csSup hs hbdd |>.left
776+
777+ theorem map_csInf_le_csInf_image (hbdd : BddBelow s := by bddDefault) :
778+ f (sInf s) ≤ sInf (f '' s) :=
779+ le_csInf_image hf hs <| isGLB_csInf hs hbdd |>.left
780+
781+ end ConditionallyCompleteLattice
782+
761783end Monotone
762784
763785lemma MonotoneOn.csInf_eq_of_subset_of_forall_exists_le
Original file line number Diff line number Diff line change @@ -51,6 +51,23 @@ theorem Set.Finite.csSup_lt_iff (hs : s.Finite) (h : s.Nonempty) : sSup s < a
5151theorem Set.Finite.lt_csInf_iff (hs : s.Finite) (h : s.Nonempty) : a < sInf s ↔ ∀ x ∈ s, a < x :=
5252 @Set.Finite.csSup_lt_iff αᵒᵈ _ _ _ hs h
5353
54+ section ConditionallyCompleteLattice
55+
56+ variable [ConditionallyCompleteLattice β] {f : α → β} (hmono : Monotone f)
57+ include hmono
58+
59+ theorem Set.Finite.map_sSup_of_monotone {s : Set α} (hne : s.Nonempty) (hfin : s.Finite) :
60+ f (sSup s) = sSup (f '' s) :=
61+ le_antisymm (hmono.le_csSup_image (hne.csSup_mem hfin) hfin.bddAbove)
62+ (hmono.csSup_image_le_map_csSup hne hfin.bddAbove)
63+
64+ theorem Set.Finite.map_sInf_of_monotone {s : Set α} (hne : s.Nonempty) (hfin : s.Finite) :
65+ f (sInf s) = sInf (f '' s) :=
66+ le_antisymm (hmono.map_csInf_le_csInf_image hne hfin.bddBelow)
67+ (hmono.csInf_image_le (hne.csInf_mem hfin) hfin.bddBelow)
68+
69+ end ConditionallyCompleteLattice
70+
5471variable (f : ι → α)
5572
5673theorem Finset.ciSup_eq_max'_image {s : Finset ι} (h : ∃ x ∈ s, sSup ∅ ≤ f x)
You can’t perform that action at this time.
0 commit comments