Algebraic operations on upper/lower sets #
Upper/lower sets are preserved under pointwise algebraic operations in ordered groups.
theorem
IsUpperSet.smul_subset
{α : Type u_1}
[CommMonoid α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
{x : α}
(hs : IsUpperSet s)
(hx : 1 ≤ x)
:
theorem
IsUpperSet.vadd_subset
{α : Type u_1}
[AddCommMonoid α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
{x : α}
(hs : IsUpperSet s)
(hx : 0 ≤ x)
:
theorem
IsLowerSet.smul_subset
{α : Type u_1}
[CommMonoid α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
{x : α}
(hs : IsLowerSet s)
(hx : x ≤ 1)
:
theorem
IsLowerSet.vadd_subset
{α : Type u_1}
[AddCommMonoid α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
{x : α}
(hs : IsLowerSet s)
(hx : x ≤ 0)
:
theorem
IsUpperSet.smul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
{a : α}
(hs : IsUpperSet s)
:
IsUpperSet (a • s)
theorem
IsUpperSet.vadd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
{a : α}
(hs : IsUpperSet s)
:
IsUpperSet (a +ᵥ s)
theorem
IsLowerSet.smul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
{a : α}
(hs : IsLowerSet s)
:
IsLowerSet (a • s)
theorem
IsLowerSet.vadd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
{a : α}
(hs : IsLowerSet s)
:
IsLowerSet (a +ᵥ s)
theorem
Set.OrdConnected.smul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
{a : α}
(hs : s.OrdConnected)
:
(a • s).OrdConnected
theorem
Set.OrdConnected.vadd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
{a : α}
(hs : s.OrdConnected)
:
(a +ᵥ s).OrdConnected
theorem
IsUpperSet.mul_left
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(ht : IsUpperSet t)
:
IsUpperSet (s * t)
theorem
IsUpperSet.add_left
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(ht : IsUpperSet t)
:
IsUpperSet (s + t)
theorem
IsUpperSet.mul_right
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(hs : IsUpperSet s)
:
IsUpperSet (s * t)
theorem
IsUpperSet.add_right
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(hs : IsUpperSet s)
:
IsUpperSet (s + t)
theorem
IsLowerSet.mul_left
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(ht : IsLowerSet t)
:
IsLowerSet (s * t)
theorem
IsLowerSet.add_left
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(ht : IsLowerSet t)
:
IsLowerSet (s + t)
theorem
IsLowerSet.mul_right
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(hs : IsLowerSet s)
:
IsLowerSet (s * t)
theorem
IsLowerSet.add_right
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(hs : IsLowerSet s)
:
IsLowerSet (s + t)
theorem
IsUpperSet.inv
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
(hs : IsUpperSet s)
:
theorem
IsUpperSet.neg
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
(hs : IsUpperSet s)
:
IsLowerSet (-s)
theorem
IsLowerSet.inv
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s : Set α}
(hs : IsLowerSet s)
:
theorem
IsLowerSet.neg
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s : Set α}
(hs : IsLowerSet s)
:
IsUpperSet (-s)
theorem
IsUpperSet.div_left
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(ht : IsUpperSet t)
:
IsLowerSet (s / t)
theorem
IsUpperSet.sub_left
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(ht : IsUpperSet t)
:
IsLowerSet (s - t)
theorem
IsUpperSet.div_right
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(hs : IsUpperSet s)
:
IsUpperSet (s / t)
theorem
IsUpperSet.sub_right
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(hs : IsUpperSet s)
:
IsUpperSet (s - t)
theorem
IsLowerSet.div_left
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(ht : IsLowerSet t)
:
IsUpperSet (s / t)
theorem
IsLowerSet.sub_left
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(ht : IsLowerSet t)
:
IsUpperSet (s - t)
theorem
IsLowerSet.div_right
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
{s t : Set α}
(hs : IsLowerSet s)
:
IsLowerSet (s / t)
theorem
IsLowerSet.sub_right
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
{s t : Set α}
(hs : IsLowerSet s)
:
IsLowerSet (s - t)
Equations
- UpperSet.instOne = { one := UpperSet.Ici 1 }
Equations
- UpperSet.instZero = { zero := UpperSet.Ici 0 }
Equations
- UpperSet.instMul = { mul := fun (s t : UpperSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 * x2) ↑s ↑t, upper' := ⋯ } }
Equations
- UpperSet.instAdd = { add := fun (s t : UpperSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 + x2) ↑s ↑t, upper' := ⋯ } }
Equations
- UpperSet.instDiv = { div := fun (s t : UpperSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 / x2) ↑s ↑t, upper' := ⋯ } }
Equations
- UpperSet.instSub = { sub := fun (s t : UpperSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 - x2) ↑s ↑t, upper' := ⋯ } }
instance
UpperSet.instVAdd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
@[simp]
@[simp]
@[simp]
theorem
UpperSet.coe_mul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : UpperSet α)
:
@[simp]
theorem
UpperSet.coe_add
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : UpperSet α)
:
@[simp]
theorem
UpperSet.coe_div
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : UpperSet α)
:
@[simp]
theorem
UpperSet.coe_sub
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : UpperSet α)
:
Equations
instance
UpperSet.instAddAction
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
Equations
instance
UpperSet.addCommSemigroup
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
instance
UpperSet.instCommMonoid
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
:
CommMonoid (UpperSet α)
Equations
- UpperSet.instCommMonoid = { toSemigroup := CommSemigroup.toSemigroup, one := 1, one_mul := ⋯, mul_one := ⋯, npow := npowRecAuto, npow_zero := ⋯, npow_succ := ⋯, mul_comm := ⋯ }
instance
UpperSet.instAddCommMonoid
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
Equations
- One or more equations did not get rendered due to their size.
Equations
- LowerSet.instOne = { one := LowerSet.Iic 1 }
Equations
- LowerSet.instZero = { zero := LowerSet.Iic 0 }
Equations
- LowerSet.instMul = { mul := fun (s t : LowerSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 * x2) ↑s ↑t, lower' := ⋯ } }
Equations
- LowerSet.instAdd = { add := fun (s t : LowerSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 + x2) ↑s ↑t, lower' := ⋯ } }
Equations
- LowerSet.instDiv = { div := fun (s t : LowerSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 / x2) ↑s ↑t, lower' := ⋯ } }
Equations
- LowerSet.instSub = { sub := fun (s t : LowerSet α) => { carrier := Set.image2 (fun (x1 x2 : α) => x1 - x2) ↑s ↑t, lower' := ⋯ } }
instance
LowerSet.instVAdd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
@[simp]
theorem
LowerSet.coe_mul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : LowerSet α)
:
@[simp]
theorem
LowerSet.coe_add
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : LowerSet α)
:
@[simp]
theorem
LowerSet.coe_div
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : LowerSet α)
:
@[simp]
theorem
LowerSet.coe_sub
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : LowerSet α)
:
Equations
instance
LowerSet.instAddAction
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
Equations
instance
LowerSet.addCommSemigroup
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
instance
LowerSet.instCommMonoid
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
:
CommMonoid (LowerSet α)
Equations
- LowerSet.instCommMonoid = { toSemigroup := CommSemigroup.toSemigroup, one := 1, one_mul := ⋯, mul_one := ⋯, npow := npowRecAuto, npow_zero := ⋯, npow_succ := ⋯, mul_comm := ⋯ }
instance
LowerSet.instAddCommMonoid
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
:
Equations
- One or more equations did not get rendered due to their size.
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
upperClosure_smul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s : Set α)
(a : α)
:
@[simp]
theorem
upperClosure_vadd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s : Set α)
(a : α)
:
@[simp]
theorem
lowerClosure_smul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s : Set α)
(a : α)
:
@[simp]
theorem
lowerClosure_vadd
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s : Set α)
(a : α)
:
theorem
mul_upperClosure
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
theorem
add_upperClosure
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
:
theorem
mul_lowerClosure
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
theorem
add_lowerClosure
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
:
theorem
upperClosure_mul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
theorem
upperClosure_add
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
:
theorem
lowerClosure_mul
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
theorem
lowerClosure_add
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
:
@[simp]
theorem
upperClosure_mul_distrib
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
@[simp]
theorem
upperClosure_add_distrib
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
:
@[simp]
theorem
lowerClosure_mul_distrib
{α : Type u_1}
[CommGroup α]
[PartialOrder α]
[IsOrderedMonoid α]
(s t : Set α)
:
@[simp]
theorem
lowerClosure_add_distrib
{α : Type u_1}
[AddCommGroup α]
[PartialOrder α]
[IsOrderedAddMonoid α]
(s t : Set α)
: