Ordered groups #
This file defines bundled ordered groups and develops a few basic results.
Implementation details #
Unfortunately, the number of '
appended to lemmas in this file
may differ between the multiplicative and the additive version of a lemma.
The reason is that we did not want to change existing names in the library.
An ordered additive commutative group is an additive commutative group with a partial order in which addition is strictly monotone.
- add : α → α → α
- zero : α
- nsmul_zero : ∀ (x : α), AddMonoid.nsmul 0 x = 0
- nsmul_succ : ∀ (n : ℕ) (x : α), AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
- neg : α → α
- sub : α → α → α
- sub_eq_add_neg : ∀ (a b : α), a - b = a + -b
- zsmul_zero' : ∀ (a : α), SubNegMonoid.zsmul 0 a = 0
- zsmul_succ' : ∀ (n : ℕ) (a : α), SubNegMonoid.zsmul (↑n.succ) a = SubNegMonoid.zsmul (↑n) a + a
- zsmul_neg' : ∀ (n : ℕ) (a : α), SubNegMonoid.zsmul (Int.negSucc n) a = -SubNegMonoid.zsmul (↑n.succ) a
- neg_add_cancel : ∀ (a : α), -a + a = 0
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
Addition is monotone in an ordered additive commutative group.
Instances
An ordered commutative group is a commutative group with a partial order in which multiplication is strictly monotone.
- mul : α → α → α
- one : α
- npow_zero : ∀ (x : α), Monoid.npow 0 x = 1
- npow_succ : ∀ (n : ℕ) (x : α), Monoid.npow (n + 1) x = Monoid.npow n x * x
- inv : α → α
- div : α → α → α
- div_eq_mul_inv : ∀ (a b : α), a / b = a * b⁻¹
- zpow_zero' : ∀ (a : α), DivInvMonoid.zpow 0 a = 1
- zpow_succ' : ∀ (n : ℕ) (a : α), DivInvMonoid.zpow (↑n.succ) a = DivInvMonoid.zpow (↑n) a * a
- zpow_neg' : ∀ (n : ℕ) (a : α), DivInvMonoid.zpow (Int.negSucc n) a = (DivInvMonoid.zpow (↑n.succ) a)⁻¹
- inv_mul_cancel : ∀ (a : α), a⁻¹ * a = 1
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
Multiplication is monotone in an ordered commutative group.
Instances
Equations
- OrderedCommGroup.toOrderedCancelCommMonoid = OrderedCancelCommMonoid.mk ⋯
Equations
- OrderedAddCommGroup.toOrderedCancelAddCommMonoid = OrderedCancelAddCommMonoid.mk ⋯
A choice-free shortcut instance.
A choice-free shortcut instance.
A choice-free shortcut instance.
A choice-free shortcut instance.
Alias of mul_lt_mul_left'
.
Alias of le_of_mul_le_mul_left'
.
Alias of lt_of_mul_lt_mul_left'
.
Linearly ordered commutative groups #
A linearly ordered additive commutative group is an additive commutative group with a linear order in which addition is monotone.
- add : α → α → α
- zero : α
- nsmul_zero : ∀ (x : α), AddMonoid.nsmul 0 x = 0
- nsmul_succ : ∀ (n : ℕ) (x : α), AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
- neg : α → α
- sub : α → α → α
- sub_eq_add_neg : ∀ (a b : α), a - b = a + -b
- zsmul_zero' : ∀ (a : α), SubNegMonoid.zsmul 0 a = 0
- zsmul_succ' : ∀ (n : ℕ) (a : α), SubNegMonoid.zsmul (↑n.succ) a = SubNegMonoid.zsmul (↑n) a + a
- zsmul_neg' : ∀ (n : ℕ) (a : α), SubNegMonoid.zsmul (Int.negSucc n) a = -SubNegMonoid.zsmul (↑n.succ) a
- neg_add_cancel : ∀ (a : α), -a + a = 0
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- add_le_add_left : ∀ (a b : α), a ≤ b → ∀ (c : α), c + a ≤ c + b
- min : α → α → α
- max : α → α → α
- decidableLE : DecidableRel fun (x1 x2 : α) => x1 ≤ x2
- decidableLT : DecidableRel fun (x1 x2 : α) => x1 < x2
- compare_eq_compareOfLessAndEq : ∀ (a b : α), compare a b = compareOfLessAndEq a b
Instances
A linearly ordered commutative group is a commutative group with a linear order in which multiplication is monotone.
- mul : α → α → α
- one : α
- npow_zero : ∀ (x : α), Monoid.npow 0 x = 1
- npow_succ : ∀ (n : ℕ) (x : α), Monoid.npow (n + 1) x = Monoid.npow n x * x
- inv : α → α
- div : α → α → α
- div_eq_mul_inv : ∀ (a b : α), a / b = a * b⁻¹
- zpow_zero' : ∀ (a : α), DivInvMonoid.zpow 0 a = 1
- zpow_succ' : ∀ (n : ℕ) (a : α), DivInvMonoid.zpow (↑n.succ) a = DivInvMonoid.zpow (↑n) a * a
- zpow_neg' : ∀ (n : ℕ) (a : α), DivInvMonoid.zpow (Int.negSucc n) a = (DivInvMonoid.zpow (↑n.succ) a)⁻¹
- inv_mul_cancel : ∀ (a : α), a⁻¹ * a = 1
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- mul_le_mul_left : ∀ (a b : α), a ≤ b → ∀ (c : α), c * a ≤ c * b
- min : α → α → α
- max : α → α → α
- decidableLE : DecidableRel fun (x1 x2 : α) => x1 ≤ x2
- decidableLT : DecidableRel fun (x1 x2 : α) => x1 < x2
- compare_eq_compareOfLessAndEq : ∀ (a b : α), compare a b = compareOfLessAndEq a b
Instances
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.