Documentation

Mathlib.Algebra.Order.Module.OrderedSMul

Ordered scalar product #

In this file we define

Implementation notes #

TODO #

This file is now mostly useless. We should try deleting OrderedSMul

References #

Tags #

ordered module, ordered scalar, ordered smul, ordered action, ordered vector space

class OrderedSMul (R : Type u_1) (M : Type u_2) [OrderedSemiring R] [OrderedAddCommMonoid M] [SMulWithZero R M] :

The ordered scalar product property is when an ordered additive commutative monoid with a partial order has a scalar multiplication which is compatible with the order. Note that this is different from IsOrderedSMul, which uses , has no semiring assumption, and has no positivity constraint on the defining conditions.

  • smul_lt_smul_of_pos {a b : M} {c : R} : a < b0 < cc a < c b

    Scalar multiplication by positive elements preserves the order.

  • lt_of_smul_lt_smul_of_pos {a b : M} {c : R} : c a < c b0 < ca < b

    If c • a < c • b for some positive c, then a < b.

Instances
    theorem OrderedSMul.mk'' {𝕜 : Type u_2} {M : Type u_4} [OrderedSemiring 𝕜] [LinearOrderedAddCommMonoid M] [SMulWithZero 𝕜 M] (h : ∀ ⦃c : 𝕜⦄, 0 < cStrictMono fun (a : M) => c a) :

    To prove that a linear ordered monoid is an ordered module, it suffices to verify only the first axiom of OrderedSMul.

    theorem OrderedSMul.mk' {𝕜 : Type u_2} {M : Type u_4} [LinearOrderedSemifield 𝕜] [OrderedAddCommMonoid M] [MulActionWithZero 𝕜 M] (h : ∀ ⦃a b : M⦄ ⦃c : 𝕜⦄, a < b0 < cc a c b) :

    To prove that a vector space over a linear ordered field is ordered, it suffices to verify only the first axiom of OrderedSMul.

    instance instOrderedSMulProd {𝕜 : Type u_2} {M : Type u_4} {N : Type u_5} [LinearOrderedSemifield 𝕜] [OrderedAddCommMonoid M] [OrderedAddCommMonoid N] [MulActionWithZero 𝕜 M] [MulActionWithZero 𝕜 N] [OrderedSMul 𝕜 M] [OrderedSMul 𝕜 N] :
    OrderedSMul 𝕜 (M × N)
    instance Pi.orderedSMul {ι : Type u_1} {𝕜 : Type u_2} [LinearOrderedSemifield 𝕜] {M : ιType u_6} [(i : ι) → OrderedAddCommMonoid (M i)] [(i : ι) → MulActionWithZero 𝕜 (M i)] [∀ (i : ι), OrderedSMul 𝕜 (M i)] :
    OrderedSMul 𝕜 ((i : ι) → M i)
    theorem inf_eq_half_smul_add_sub_abs_sub (α : Type u_6) {β : Type u_7} [Semiring α] [Invertible 2] [Lattice β] [AddCommGroup β] [Module α β] [AddLeftMono β] (x y : β) :
    x y = 2 (x + y - |y - x|)
    theorem sup_eq_half_smul_add_add_abs_sub (α : Type u_6) {β : Type u_7} [Semiring α] [Invertible 2] [Lattice β] [AddCommGroup β] [Module α β] [AddLeftMono β] (x y : β) :
    x y = 2 (x + y + |y - x|)
    theorem inf_eq_half_smul_add_sub_abs_sub' (α : Type u_6) {β : Type u_7} [DivisionSemiring α] [NeZero 2] [Lattice β] [AddCommGroup β] [Module α β] [AddLeftMono β] (x y : β) :
    x y = 2⁻¹ (x + y - |y - x|)
    theorem sup_eq_half_smul_add_add_abs_sub' (α : Type u_6) {β : Type u_7} [DivisionSemiring α] [NeZero 2] [Lattice β] [AddCommGroup β] [Module α β] [AddLeftMono β] (x y : β) :
    x y = 2⁻¹ (x + y + |y - x|)