Canonically ordered semifields #
class
CanonicallyLinearOrderedSemifield
(α : Type u_2)
extends CanonicallyOrderedCommSemiring α, LinearOrderedSemifield α :
Type u_2
A canonically linear ordered field is a linear ordered field in which a ≤ b
iff there exists
c
with b = a + c
.
- add : α → α → α
- zero : α
- nsmul_zero : ∀ (x : α), AddMonoid.nsmul 0 x = 0
- nsmul_succ : ∀ (n : ℕ) (x : α), AddMonoid.nsmul (n + 1) x = AddMonoid.nsmul n x + x
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- add_le_add_left : ∀ (a b : α), a ≤ b → ∀ (c : α), c + a ≤ c + b
- bot : α
- exists_add_of_le : ∀ {a b : α}, a ≤ b → ∃ (c : α), b = a + c
- le_self_add : ∀ (a b : α), a ≤ a + b
- mul : α → α → α
- one : α
- natCast_zero : NatCast.natCast 0 = 0
- natCast_succ : ∀ (n : ℕ), NatCast.natCast (n + 1) = NatCast.natCast n + 1
- npow_zero : ∀ (x : α), CanonicallyOrderedCommSemiring.npow 0 x = 1
- npow_succ : ∀ (n : ℕ) (x : α), CanonicallyOrderedCommSemiring.npow (n + 1) x = CanonicallyOrderedCommSemiring.npow n x * x
- le_of_add_le_add_left : ∀ (a b c : α), a + b ≤ a + c → b ≤ c
- exists_pair_ne : ∃ (x : α), ∃ (y : α), x ≠ y
- zero_le_one : 0 ≤ 1
- 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
- inv : α → α
- div : α → α → α
- div_eq_mul_inv : ∀ (a b : α), a / b = a * b⁻¹
- zpow_zero' : ∀ (a : α), CanonicallyLinearOrderedSemifield.zpow 0 a = 1
- zpow_succ' : ∀ (n : ℕ) (a : α), CanonicallyLinearOrderedSemifield.zpow (↑n.succ) a = CanonicallyLinearOrderedSemifield.zpow (↑n) a * a
- zpow_neg' : ∀ (n : ℕ) (a : α), CanonicallyLinearOrderedSemifield.zpow (Int.negSucc n) a = (CanonicallyLinearOrderedSemifield.zpow (↑n.succ) a)⁻¹
- mul_inv_cancel : ∀ (a : α), a ≠ 0 → a * a⁻¹ = 1
- nnratCast_def : ∀ (q : ℚ≥0), ↑q = ↑q.num / ↑q.den
- nnqsmul_def : ∀ (q : ℚ≥0) (a : α), CanonicallyLinearOrderedSemifield.nnqsmul q a = ↑q * a
Instances
@[instance 100]
instance
CanonicallyLinearOrderedSemifield.toLinearOrderedCommGroupWithZero
{α : Type u_1}
[CanonicallyLinearOrderedSemifield α]
:
Equations
- CanonicallyLinearOrderedSemifield.toLinearOrderedCommGroupWithZero = LinearOrderedCommGroupWithZero.mk ⋯ CanonicallyLinearOrderedSemifield.zpow ⋯ ⋯ ⋯ ⋯ ⋯
@[instance 100]
instance
CanonicallyLinearOrderedSemifield.toCanonicallyLinearOrderedAddCommMonoid
{α : Type u_1}
[CanonicallyLinearOrderedSemifield α]
:
Equations
- One or more equations did not get rendered due to their size.