Products of ordered monoids #
instance
Prod.instOrderedAddCommMonoidSum
{α : Type u_1}
{β : Type u_2}
[OrderedAddCommMonoid α]
[OrderedAddCommMonoid β]
:
OrderedAddCommMonoid (α × β)
Equations
- Prod.instOrderedAddCommMonoidSum = OrderedAddCommMonoid.mk ⋯
instance
Prod.instOrderedCommMonoidProd
{α : Type u_1}
{β : Type u_2}
[OrderedCommMonoid α]
[OrderedCommMonoid β]
:
OrderedCommMonoid (α × β)
Equations
- Prod.instOrderedCommMonoidProd = OrderedCommMonoid.mk ⋯
theorem
Prod.instOrderedAddCancelCommMonoid.proof_1
{α : Type u_1}
{β : Type u_2}
[OrderedCancelAddCommMonoid α]
[OrderedCancelAddCommMonoid β]
:
instance
Prod.instOrderedAddCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedCancelAddCommMonoid α]
[OrderedCancelAddCommMonoid β]
:
OrderedCancelAddCommMonoid (α × β)
Equations
- Prod.instOrderedAddCancelCommMonoid = let __src := inferInstance; OrderedCancelAddCommMonoid.mk ⋯
instance
Prod.instOrderedCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedCancelCommMonoid α]
[OrderedCancelCommMonoid β]
:
OrderedCancelCommMonoid (α × β)
Equations
- Prod.instOrderedCancelCommMonoid = let __src := inferInstance; OrderedCancelCommMonoid.mk ⋯
instance
Prod.instExistsAddOfLESumInstAddInstLESum
{α : Type u_1}
{β : Type u_2}
[LE α]
[LE β]
[Add α]
[Add β]
[ExistsAddOfLE α]
[ExistsAddOfLE β]
:
ExistsAddOfLE (α × β)
Equations
- ⋯ = ⋯
instance
Prod.instExistsMulOfLEProdInstMulInstLEProd
{α : Type u_1}
{β : Type u_2}
[LE α]
[LE β]
[Mul α]
[Mul β]
[ExistsMulOfLE α]
[ExistsMulOfLE β]
:
ExistsMulOfLE (α × β)
Equations
- ⋯ = ⋯
theorem
Prod.instCanonicallyOrderedAddCommMonoidSum.proof_1
{α : Type u_1}
{β : Type u_2}
[CanonicallyOrderedAddCommMonoid α]
[CanonicallyOrderedAddCommMonoid β]
:
ExistsAddOfLE (α × β)
instance
Prod.instCanonicallyOrderedAddCommMonoidSum
{α : Type u_1}
{β : Type u_2}
[CanonicallyOrderedAddCommMonoid α]
[CanonicallyOrderedAddCommMonoid β]
:
Equations
- Prod.instCanonicallyOrderedAddCommMonoidSum = let __src := inferInstance; let __src_1 := inferInstance; let __src_2 := ⋯; CanonicallyOrderedAddCommMonoid.mk ⋯ ⋯
theorem
Prod.instCanonicallyOrderedAddCommMonoidSum.proof_3
{α : Type u_1}
{β : Type u_2}
[CanonicallyOrderedAddCommMonoid α]
[CanonicallyOrderedAddCommMonoid β]
:
theorem
Prod.instCanonicallyOrderedAddCommMonoidSum.proof_2
{α : Type u_1}
{β : Type u_2}
[CanonicallyOrderedAddCommMonoid α]
[CanonicallyOrderedAddCommMonoid β]
:
instance
Prod.instCanonicallyOrderedCommMonoidProd
{α : Type u_1}
{β : Type u_2}
[CanonicallyOrderedCommMonoid α]
[CanonicallyOrderedCommMonoid β]
:
Equations
- Prod.instCanonicallyOrderedCommMonoidProd = let __src := inferInstance; let __src_1 := inferInstance; let __src_2 := ⋯; CanonicallyOrderedCommMonoid.mk ⋯ ⋯
theorem
Prod.Lex.orderedAddCommMonoid.proof_1
{α : Type u_2}
{β : Type u_1}
[OrderedAddCommMonoid α]
[CovariantClass α α (fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x < x_1]
[OrderedAddCommMonoid β]
:
instance
Prod.Lex.orderedAddCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedAddCommMonoid α]
[CovariantClass α α (fun (x x_1 : α) => x + x_1) fun (x x_1 : α) => x < x_1]
[OrderedAddCommMonoid β]
:
OrderedAddCommMonoid (Lex (α × β))
Equations
- Prod.Lex.orderedAddCommMonoid = OrderedAddCommMonoid.mk ⋯
instance
Prod.Lex.orderedCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedCommMonoid α]
[CovariantClass α α (fun (x x_1 : α) => x * x_1) fun (x x_1 : α) => x < x_1]
[OrderedCommMonoid β]
:
OrderedCommMonoid (Lex (α × β))
Equations
- Prod.Lex.orderedCommMonoid = OrderedCommMonoid.mk ⋯
theorem
Prod.Lex.orderedAddCancelCommMonoid.proof_1
{α : Type u_2}
{β : Type u_1}
[OrderedCancelAddCommMonoid α]
[OrderedCancelAddCommMonoid β]
:
instance
Prod.Lex.orderedAddCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedCancelAddCommMonoid α]
[OrderedCancelAddCommMonoid β]
:
OrderedCancelAddCommMonoid (Lex (α × β))
Equations
- Prod.Lex.orderedAddCancelCommMonoid = OrderedCancelAddCommMonoid.mk ⋯
theorem
Prod.Lex.orderedAddCancelCommMonoid.proof_2
{α : Type u_2}
{β : Type u_1}
[OrderedCancelAddCommMonoid α]
[OrderedCancelAddCommMonoid β]
:
instance
Prod.Lex.orderedCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[OrderedCancelCommMonoid α]
[OrderedCancelCommMonoid β]
:
OrderedCancelCommMonoid (Lex (α × β))
Equations
- Prod.Lex.orderedCancelCommMonoid = OrderedCancelCommMonoid.mk ⋯
theorem
Prod.Lex.linearOrderedAddCancelCommMonoid.proof_4
{α : Type u_2}
{β : Type u_1}
[LinearOrderedCancelAddCommMonoid α]
[LinearOrderedCancelAddCommMonoid β]
(a : Lex (α × β))
(b : Lex (α × β))
:
theorem
Prod.Lex.linearOrderedAddCancelCommMonoid.proof_5
{α : Type u_2}
{β : Type u_1}
[LinearOrderedCancelAddCommMonoid α]
[LinearOrderedCancelAddCommMonoid β]
(a : Lex (α × β))
(b : Lex (α × β))
:
theorem
Prod.Lex.linearOrderedAddCancelCommMonoid.proof_6
{α : Type u_2}
{β : Type u_1}
[LinearOrderedCancelAddCommMonoid α]
[LinearOrderedCancelAddCommMonoid β]
(a : Lex (α × β))
(b : Lex (α × β))
:
compare a b = compareOfLessAndEq a b
instance
Prod.Lex.linearOrderedAddCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[LinearOrderedCancelAddCommMonoid α]
[LinearOrderedCancelAddCommMonoid β]
:
LinearOrderedCancelAddCommMonoid (Lex (α × β))
Equations
- One or more equations did not get rendered due to their size.
theorem
Prod.Lex.linearOrderedAddCancelCommMonoid.proof_3
{α : Type u_2}
{β : Type u_1}
[LinearOrderedCancelAddCommMonoid α]
[LinearOrderedCancelAddCommMonoid β]
(a : Lex (α × β))
(b : Lex (α × β))
:
instance
Prod.Lex.linearOrderedCancelCommMonoid
{α : Type u_1}
{β : Type u_2}
[LinearOrderedCancelCommMonoid α]
[LinearOrderedCancelCommMonoid β]
:
LinearOrderedCancelCommMonoid (Lex (α × β))
Equations
- One or more equations did not get rendered due to their size.