Documentation

Mathlib.Algebra.Order.Group.Pointwise.Bounds

Upper/lower bounds in ordered monoids and groups #

In this file we prove a few facts like โ€œ-s is bounded above iff s is bounded belowโ€ (bddAbove_neg).

theorem mul_mem_upperBounds_mul {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {s t : Set M} {a b : M} (ha : a โˆˆ upperBounds s) (hb : b โˆˆ upperBounds t) :
theorem add_mem_upperBounds_add {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {s t : Set M} {a b : M} (ha : a โˆˆ upperBounds s) (hb : b โˆˆ upperBounds t) :
theorem mul_mem_lowerBounds_mul {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {s t : Set M} {a b : M} (ha : a โˆˆ lowerBounds s) (hb : b โˆˆ lowerBounds t) :
theorem add_mem_lowerBounds_add {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {s t : Set M} {a b : M} (ha : a โˆˆ lowerBounds s) (hb : b โˆˆ lowerBounds t) :
theorem BddAbove.mul {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {s t : Set M} (hs : BddAbove s) (ht : BddAbove t) :
BddAbove (s * t)
theorem BddAbove.add {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {s t : Set M} (hs : BddAbove s) (ht : BddAbove t) :
BddAbove (s + t)
theorem BddBelow.mul {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {s t : Set M} (hs : BddBelow s) (ht : BddBelow t) :
BddBelow (s * t)
theorem BddBelow.add {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {s t : Set M} (hs : BddBelow s) (ht : BddBelow t) :
BddBelow (s + t)
theorem Set.BddAbove.mul {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {s t : Set M} (hs : BddAbove s) (ht : BddAbove t) :
BddAbove (s * t)

Alias of BddAbove.mul.

theorem Set.BddAbove.add {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {s t : Set M} (hs : BddAbove s) (ht : BddAbove t) :
BddAbove (s + t)
theorem BddAbove.range_mul {ฮน : Type u_1} {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {f g : ฮน โ†’ M} (hf : BddAbove (Set.range f)) (hg : BddAbove (Set.range g)) :
BddAbove (Set.range fun (i : ฮน) => f i * g i)
theorem BddAbove.range_add {ฮน : Type u_1} {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {f g : ฮน โ†’ M} (hf : BddAbove (Set.range f)) (hg : BddAbove (Set.range g)) :
BddAbove (Set.range fun (i : ฮน) => f i + g i)
theorem BddBelow.range_mul {ฮน : Type u_1} {M : Type u_3} [Mul M] [Preorder M] [MulLeftMono M] [MulRightMono M] {f g : ฮน โ†’ M} (hf : BddBelow (Set.range f)) (hg : BddBelow (Set.range g)) :
BddBelow (Set.range fun (i : ฮน) => f i * g i)
theorem BddBelow.range_add {ฮน : Type u_1} {M : Type u_3} [Add M] [Preorder M] [AddLeftMono M] [AddRightMono M] {f g : ฮน โ†’ M} (hf : BddBelow (Set.range f)) (hg : BddBelow (Set.range g)) :
BddBelow (Set.range fun (i : ฮน) => f i + g i)
@[simp]
theorem isLUB_neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} :
IsLUB (-s) a โ†” IsGLB s (-a)
theorem isLUB_neg' {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} :
IsLUB (-s) (-a) โ†” IsGLB s a
theorem IsGLB.neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} (h : IsGLB s a) :
IsLUB (-s) (-a)
@[simp]
theorem isGLB_neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} :
IsGLB (-s) a โ†” IsLUB s (-a)
theorem isGLB_neg' {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} :
IsGLB (-s) (-a) โ†” IsLUB s a
theorem IsLUB.neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s : Set G} {a : G} (h : IsLUB s a) :
IsGLB (-s) (-a)
theorem BddBelow.range_inv {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {ฮฑ : Type u_4} {f : ฮฑ โ†’ G} (hf : BddBelow (Set.range f)) :
BddAbove (Set.range fun (x : ฮฑ) => (f x)โปยน)
theorem BddBelow.range_neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {ฮฑ : Type u_4} {f : ฮฑ โ†’ G} (hf : BddBelow (Set.range f)) :
BddAbove (Set.range fun (x : ฮฑ) => -f x)
theorem BddAbove.range_inv {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {ฮฑ : Type u_4} {f : ฮฑ โ†’ G} (hf : BddAbove (Set.range f)) :
BddBelow (Set.range fun (x : ฮฑ) => (f x)โปยน)
theorem BddAbove.range_neg {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {ฮฑ : Type u_4} {f : ฮฑ โ†’ G} (hf : BddAbove (Set.range f)) :
BddBelow (Set.range fun (x : ฮฑ) => -f x)
theorem IsLUB.mul {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {s t : Set G} {a b : G} (hs : IsLUB s a) (ht : IsLUB t b) :
IsLUB (s * t) (a * b)
theorem IsLUB.add {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s t : Set G} {a b : G} (hs : IsLUB s a) (ht : IsLUB t b) :
IsLUB (s + t) (a + b)
theorem IsGLB.mul {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {s t : Set G} {a b : G} (hs : IsGLB s a) (ht : IsGLB t b) :
IsGLB (s * t) (a * b)
theorem IsGLB.add {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s t : Set G} {a b : G} (hs : IsGLB s a) (ht : IsGLB t b) :
IsGLB (s + t) (a + b)
theorem IsLUB.div {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {s t : Set G} {a b : G} (hs : IsLUB s a) (ht : IsGLB t b) :
IsLUB (s / t) (a / b)
theorem IsLUB.sub {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s t : Set G} {a b : G} (hs : IsLUB s a) (ht : IsGLB t b) :
IsLUB (s - t) (a - b)
theorem IsGLB.div {G : Type u_2} [Group G] [Preorder G] [MulLeftMono G] [MulRightMono G] {s t : Set G} {a b : G} (hs : IsGLB s a) (ht : IsLUB t b) :
IsGLB (s / t) (a / b)
theorem IsGLB.sub {G : Type u_2} [AddGroup G] [Preorder G] [AddLeftMono G] [AddRightMono G] {s t : Set G} {a b : G} (hs : IsGLB s a) (ht : IsLUB t b) :
IsGLB (s - t) (a - b)