Conditionally complete lattices and finite sets. #
theorem
Finset.Nonempty.csSup_eq_max'
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Finset α}
(h : s.Nonempty)
:
theorem
Finset.Nonempty.csInf_eq_min'
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Finset α}
(h : s.Nonempty)
:
theorem
Finset.Nonempty.csSup_mem
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Finset α}
(h : s.Nonempty)
:
theorem
Finset.Nonempty.csInf_mem
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Finset α}
(h : s.Nonempty)
:
theorem
Set.Nonempty.csSup_mem
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Set α}
(h : s.Nonempty)
(hs : s.Finite)
:
theorem
Set.Nonempty.csInf_mem
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Set α}
(h : s.Nonempty)
(hs : s.Finite)
:
theorem
Set.Finite.csSup_lt_iff
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Set α}
{a : α}
(hs : s.Finite)
(h : s.Nonempty)
:
theorem
Set.Finite.lt_csInf_iff
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Set α}
{a : α}
(hs : s.Finite)
(h : s.Nonempty)
:
theorem
Finset.ciSup_eq_max'_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
(f : ι → α)
{s : Finset ι}
(h : ∃ x ∈ s, sSup ∅ ≤ f x)
(h' : (Finset.image f s).Nonempty := by classical exact image_nonempty.mpr (h.imp fun _ ↦ And.left))
:
⨆ i ∈ s, f i = (Finset.image f s).max' h'
theorem
Finset.ciInf_eq_min'_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
(f : ι → α)
{s : Finset ι}
(h : ∃ x ∈ s, f x ≤ sInf ∅)
(h' : (Finset.image f s).Nonempty := by classical exact image_nonempty.mpr (h.imp fun _ ↦ And.left))
:
⨅ i ∈ s, f i = (Finset.image f s).min' h'
theorem
Finset.ciSup_mem_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
(f : ι → α)
{s : Finset ι}
(h : ∃ x ∈ s, sSup ∅ ≤ f x)
:
⨆ i ∈ s, f i ∈ Finset.image f s
theorem
Finset.ciInf_mem_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
(f : ι → α)
{s : Finset ι}
(h : ∃ x ∈ s, f x ≤ sInf ∅)
:
⨅ i ∈ s, f i ∈ Finset.image f s
theorem
Multiset.iSup_mem_map_of_exists_sSup_empty_le
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Multiset ι}
(f : ι → α)
(h : ∃ x ∈ s, sSup ∅ ≤ f x)
:
⨆ x ∈ s, f x ∈ Multiset.map f s
theorem
Multiset.iInf_mem_map_of_exists_le_sInf_empty
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
{s : Multiset ι}
(f : ι → α)
(h : ∃ x ∈ s, f x ≤ sInf ∅)
:
⨅ x ∈ s, f x ∈ Multiset.map f s
theorem
exists_eq_ciSup_of_finite
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
[Nonempty ι]
[Finite ι]
{f : ι → α}
:
∃ (i : ι), f i = ⨆ (i : ι), f i
theorem
exists_eq_ciInf_of_finite
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrder α]
[Nonempty ι]
[Finite ι]
{f : ι → α}
:
∃ (i : ι), f i = ⨅ (i : ι), f i
Relation between sSup
/ sInf
and Finset.sup'
/ Finset.inf'
#
Like the Sup
of a ConditionallyCompleteLattice
, Finset.sup'
also requires the set to be
non-empty. As a result, we can translate between the two.
theorem
Finset.sup'_eq_csSup_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLattice α]
(s : Finset ι)
(H : s.Nonempty)
(f : ι → α)
:
theorem
Finset.inf'_eq_csInf_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLattice α]
(s : Finset ι)
(H : s.Nonempty)
(f : ι → α)
:
theorem
Finset.sup'_id_eq_csSup
{α : Type u_2}
[ConditionallyCompleteLattice α]
(s : Finset α)
(hs : s.Nonempty)
:
theorem
Finset.inf'_id_eq_csInf
{α : Type u_2}
[ConditionallyCompleteLattice α]
(s : Finset α)
(hs : s.Nonempty)
:
theorem
Finset.sup'_univ_eq_ciSup
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLattice α]
[Fintype ι]
[Nonempty ι]
(f : ι → α)
:
Finset.univ.sup' ⋯ f = ⨆ (i : ι), f i
theorem
Finset.inf'_univ_eq_ciInf
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLattice α]
[Fintype ι]
[Nonempty ι]
(f : ι → α)
:
Finset.univ.inf' ⋯ f = ⨅ (i : ι), f i
theorem
Finset.sup_univ_eq_ciSup
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
[Fintype ι]
(f : ι → α)
:
Finset.univ.sup f = ⨆ (i : ι), f i
theorem
Finset.Nonempty.ciSup_eq_max'_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
(f : ι → α)
{s : Finset ι}
(h : s.Nonempty)
(h' : (Finset.image f s).Nonempty := ⋯)
:
⨆ i ∈ s, f i = (Finset.image f s).max' h'
theorem
Finset.Nonempty.ciSup_mem_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
(f : ι → α)
{s : Finset ι}
(h : s.Nonempty)
:
⨆ i ∈ s, f i ∈ Finset.image f s
theorem
Set.Nonempty.ciSup_mem_image
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
(f : ι → α)
{s : Set ι}
(h : s.Nonempty)
(hs : s.Finite)
:
theorem
Set.Nonempty.ciSup_lt_iff
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
{s : Set ι}
{a : α}
{f : ι → α}
(h : s.Nonempty)
(hs : s.Finite)
:
theorem
List.iSup_mem_map_of_ne_nil
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
{l : List ι}
(f : ι → α)
(h : l ≠ [])
:
theorem
Multiset.iSup_mem_map_of_ne_zero
{ι : Type u_1}
{α : Type u_2}
[ConditionallyCompleteLinearOrderBot α]
{s : Multiset ι}
(f : ι → α)
(h : s ≠ 0)
:
⨆ x ∈ s, f x ∈ Multiset.map f s