Monovariance of functions #
Two functions vary together if a strict change in the first implies a change in the second.
This is in some sense a way to say that two functions f : ι → α, g : ι → β are "monotone
together", without actually having an order on ι.
This condition comes up in the rearrangement inequality. See Algebra.Order.Rearrangement.
Main declarations #
Monovary f g:fmonovaries withg. Ifg i < g j, thenf i ≤ f j.Antivary f g:fantivaries withg. Ifg i < g j, thenf j ≤ f i.MonovaryOn f g s:fmonovaries withgons.AntivaryOn f g s:fantivaries withgons.
theorem Monovary.monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} (h : Monovary f g) (s : Set ι) :
MonovaryOn f g s
theorem Antivary.antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} (h : Antivary f g) (s : Set ι) :
AntivaryOn f g s
@[simp]
theorem MonovaryOn.empty {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} :
MonovaryOn f g ∅
@[simp]
theorem AntivaryOn.empty {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} :
AntivaryOn f g ∅
theorem MonovaryOn.subset {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s t : Set ι} (hst : s ⊆ t) (h : MonovaryOn f g t) :
MonovaryOn f g s
theorem AntivaryOn.subset {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s t : Set ι} (hst : s ⊆ t) (h : AntivaryOn f g t) :
AntivaryOn f g s
theorem monovary_const_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (g : ι → β) (a : α) :
Monovary (Function.const ι a) g
theorem antivary_const_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (g : ι → β) (a : α) :
Antivary (Function.const ι a) g
theorem monovary_const_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (f : ι → α) (b : β) :
Monovary f (Function.const ι b)
theorem antivary_const_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (f : ι → α) (b : β) :
Antivary f (Function.const ι b)
theorem monovaryOn_self {ι : Type u_1} {α : Type u_3} [Preorder α] (f : ι → α) (s : Set ι) :
MonovaryOn f f s
theorem Subsingleton.monovary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] [Subsingleton ι] (f : ι → α) (g : ι → β) :
Monovary f g
theorem Subsingleton.antivary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] [Subsingleton ι] (f : ι → α) (g : ι → β) :
Antivary f g
theorem Subsingleton.monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] [Subsingleton ι] (f : ι → α) (g : ι → β) (s : Set ι) :
MonovaryOn f g s
theorem Subsingleton.antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] [Subsingleton ι] (f : ι → α) (g : ι → β) (s : Set ι) :
AntivaryOn f g s
theorem monovaryOn_const_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (g : ι → β) (a : α) (s : Set ι) :
MonovaryOn (Function.const ι a) g s
theorem antivaryOn_const_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (g : ι → β) (a : α) (s : Set ι) :
AntivaryOn (Function.const ι a) g s
theorem monovaryOn_const_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (f : ι → α) (b : β) (s : Set ι) :
MonovaryOn f (Function.const ι b) s
theorem antivaryOn_const_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] (f : ι → α) (b : β) (s : Set ι) :
AntivaryOn f (Function.const ι b) s
theorem MonovaryOn.comp_right {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} (h : MonovaryOn f g s) (k : ι' → ι) :
MonovaryOn (f ∘ k) (g ∘ k) (k ⁻¹' s)
theorem AntivaryOn.comp_right {ι : Type u_1} {ι' : Type u_2} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} (h : AntivaryOn f g s) (k : ι' → ι) :
AntivaryOn (f ∘ k) (g ∘ k) (k ⁻¹' s)
theorem MonovaryOn.comp_monotone_on_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [Preorder β] [Preorder γ] {f : ι → α} {f' : α → γ} {g : ι → β} {s : Set ι} (h : MonovaryOn f g s) (hf : Monotone f') :
MonovaryOn (f' ∘ f) g s
theorem MonovaryOn.comp_antitone_on_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [Preorder β] [Preorder γ] {f : ι → α} {f' : α → γ} {g : ι → β} {s : Set ι} (h : MonovaryOn f g s) (hf : Antitone f') :
AntivaryOn (f' ∘ f) g s
theorem AntivaryOn.comp_monotone_on_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [Preorder β] [Preorder γ] {f : ι → α} {f' : α → γ} {g : ι → β} {s : Set ι} (h : AntivaryOn f g s) (hf : Monotone f') :
AntivaryOn (f' ∘ f) g s
theorem AntivaryOn.comp_antitone_on_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [Preorder β] [Preorder γ] {f : ι → α} {f' : α → γ} {g : ι → β} {s : Set ι} (h : AntivaryOn f g s) (hf : Antitone f') :
MonovaryOn (f' ∘ f) g s
theorem Monovary.dual {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} :
Monovary f g → Monovary (⇑OrderDual.toDual ∘ f) (⇑OrderDual.toDual ∘ g)
theorem Antivary.dual {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} :
Antivary f g → Antivary (⇑OrderDual.toDual ∘ f) (⇑OrderDual.toDual ∘ g)
theorem MonovaryOn.dual {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
MonovaryOn f g s → MonovaryOn (⇑OrderDual.toDual ∘ f) (⇑OrderDual.toDual ∘ g) s
theorem AntivaryOn.dual {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
AntivaryOn f g s → AntivaryOn (⇑OrderDual.toDual ∘ f) (⇑OrderDual.toDual ∘ g) s
theorem MonovaryOn.dual_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
MonovaryOn f g s → AntivaryOn (⇑OrderDual.toDual ∘ f) g s
theorem AntivaryOn.dual_left {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
AntivaryOn f g s → MonovaryOn (⇑OrderDual.toDual ∘ f) g s
theorem MonovaryOn.dual_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
MonovaryOn f g s → AntivaryOn f (⇑OrderDual.toDual ∘ g) s
theorem AntivaryOn.dual_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} :
AntivaryOn f g s → MonovaryOn f (⇑OrderDual.toDual ∘ g) s
@[simp]
@[simp]
@[simp]
theorem monovaryOn_id_iff {ι : Type u_1} {α : Type u_3} [Preorder α] {f : ι → α} {s : Set ι} [PartialOrder ι] :
@[simp]
theorem antivaryOn_id_iff {ι : Type u_1} {α : Type u_3} [Preorder α] {f : ι → α} {s : Set ι} [PartialOrder ι] :
theorem StrictMono.trans_monovary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} [PartialOrder ι] (hf : StrictMono f) (h : Monovary g f) :
Monotone g
theorem StrictMono.trans_antivary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} [PartialOrder ι] (hf : StrictMono f) (h : Antivary g f) :
Antitone g
theorem StrictAnti.trans_monovary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} [PartialOrder ι] (hf : StrictAnti f) (h : Monovary g f) :
Antitone g
theorem StrictAnti.trans_antivary {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} [PartialOrder ι] (hf : StrictAnti f) (h : Antivary g f) :
Monotone g
theorem StrictMonoOn.trans_monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [PartialOrder ι] (hf : StrictMonoOn f s) (h : MonovaryOn g f s) :
MonotoneOn g s
theorem StrictMonoOn.trans_antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [PartialOrder ι] (hf : StrictMonoOn f s) (h : AntivaryOn g f s) :
AntitoneOn g s
theorem StrictAntiOn.trans_monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [PartialOrder ι] (hf : StrictAntiOn f s) (h : MonovaryOn g f s) :
AntitoneOn g s
theorem StrictAntiOn.trans_antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [PartialOrder ι] (hf : StrictAntiOn f s) (h : AntivaryOn g f s) :
MonotoneOn g s
theorem MonotoneOn.monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [LinearOrder ι] (hf : MonotoneOn f s) (hg : MonotoneOn g s) :
MonovaryOn f g s
theorem MonotoneOn.antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [LinearOrder ι] (hf : MonotoneOn f s) (hg : AntitoneOn g s) :
AntivaryOn f g s
theorem AntitoneOn.monovaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [LinearOrder ι] (hf : AntitoneOn f s) (hg : AntitoneOn g s) :
MonovaryOn f g s
theorem AntitoneOn.antivaryOn {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [Preorder β] {f : ι → α} {g : ι → β} {s : Set ι} [LinearOrder ι] (hf : AntitoneOn f s) (hg : MonotoneOn g s) :
AntivaryOn f g s
theorem MonovaryOn.comp_monotoneOn_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [LinearOrder β] [Preorder γ] {f : ι → α} {g : ι → β} {g' : β → γ} {s : Set ι} (h : MonovaryOn f g s) (hg : MonotoneOn g' (g '' s)) :
MonovaryOn f (g' ∘ g) s
theorem MonovaryOn.comp_antitoneOn_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [LinearOrder β] [Preorder γ] {f : ι → α} {g : ι → β} {g' : β → γ} {s : Set ι} (h : MonovaryOn f g s) (hg : AntitoneOn g' (g '' s)) :
AntivaryOn f (g' ∘ g) s
theorem AntivaryOn.comp_monotoneOn_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [LinearOrder β] [Preorder γ] {f : ι → α} {g : ι → β} {g' : β → γ} {s : Set ι} (h : AntivaryOn f g s) (hg : MonotoneOn g' (g '' s)) :
AntivaryOn f (g' ∘ g) s
theorem AntivaryOn.comp_antitoneOn_right {ι : Type u_1} {α : Type u_3} {β : Type u_4} {γ : Type u_5} [Preorder α] [LinearOrder β] [Preorder γ] {f : ι → α} {g : ι → β} {g' : β → γ} {s : Set ι} (h : AntivaryOn f g s) (hg : AntitoneOn g' (g '' s)) :
MonovaryOn f (g' ∘ g) s
theorem Monovary.symm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [LinearOrder β] {f : ι → α} {g : ι → β} (h : Monovary f g) :
Monovary g f
theorem Antivary.symm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [LinearOrder β] {f : ι → α} {g : ι → β} (h : Antivary f g) :
Antivary g f
theorem MonovaryOn.symm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [LinearOrder β] {f : ι → α} {g : ι → β} {s : Set ι} (h : MonovaryOn f g s) :
MonovaryOn g f s
theorem AntivaryOn.symm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [Preorder α] [LinearOrder β] {f : ι → α} {g : ι → β} {s : Set ι} (h : AntivaryOn f g s) :
AntivaryOn g f s
theorem monovary_comm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [LinearOrder α] [LinearOrder β] {f : ι → α} {g : ι → β} :
theorem antivary_comm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [LinearOrder α] [LinearOrder β] {f : ι → α} {g : ι → β} :
theorem monovaryOn_comm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [LinearOrder α] [LinearOrder β] {f : ι → α} {g : ι → β} {s : Set ι} :
theorem antivaryOn_comm {ι : Type u_1} {α : Type u_3} {β : Type u_4} [LinearOrder α] [LinearOrder β] {f : ι → α} {g : ι → β} {s : Set ι} :