# Documentation

Mathlib.Algebra.Order.Monoid.Basic

# Ordered monoids #

This file develops some additional material on ordered monoids.

def Function.Injective.orderedAddCommMonoid.proof_1 {α : Type u_2} [inst : ] {β : Type u_1} [inst : Add β] (f : βα) (hf : ) (mul : ∀ (x y : β), f (x + y) = f x + f y) (a : β) (b : β) (ab : a b) (c : β) :
f (c + a) f (c + b)
Equations
• (_ : f (c + a) f (c + b)) = (_ : f (c + a) f (c + b))
def Function.Injective.orderedAddCommMonoid {α : Type u} [inst : ] {β : Type u_1} [inst : Zero β] [inst : Add β] [inst : ] (f : βα) (hf : ) (one : f 0 = 0) (mul : ∀ (x y : β), f (x + y) = f x + f y) (npow : ∀ (x : β) (n : ), f (n x) = n f x) :

Pullback an OrderedAddCommMonoid under an injective map.

Equations
• One or more equations did not get rendered due to their size.
def Function.Injective.orderedCommMonoid {α : Type u} [inst : ] {β : Type u_1} [inst : One β] [inst : Mul β] [inst : Pow β ] (f : βα) (hf : ) (one : f 1 = 1) (mul : ∀ (x y : β), f (x * y) = f x * f y) (npow : ∀ (x : β) (n : ), f (x ^ n) = f x ^ n) :

Pullback an OrderedCommMonoid under an injective map. See note [reducible non-instances].

Equations
• One or more equations did not get rendered due to their size.
def Function.Injective.linearOrderedAddCommMonoid {α : Type u} [inst : ] {β : Type u_1} [inst : Zero β] [inst : Add β] [inst : ] [inst : Sup β] [inst : Inf β] (f : βα) (hf : ) (one : f 0 = 0) (mul : ∀ (x y : β), f (x + y) = f x + f y) (npow : ∀ (x : β) (n : ), f (n x) = n f x) (hsup : ∀ (x y : β), f (x y) = max (f x) (f y)) (hinf : ∀ (x y : β), f (x y) = min (f x) (f y)) :

Pullback an OrderedAddCommMonoid under an injective map.

Equations
• One or more equations did not get rendered due to their size.
def Function.Injective.linearOrderedCommMonoid {α : Type u} [inst : ] {β : Type u_1} [inst : One β] [inst : Mul β] [inst : Pow β ] [inst : Sup β] [inst : Inf β] (f : βα) (hf : ) (one : f 1 = 1) (mul : ∀ (x y : β), f (x * y) = f x * f y) (npow : ∀ (x : β) (n : ), f (x ^ n) = f x ^ n) (hsup : ∀ (x y : β), f (x y) = max (f x) (f y)) (hinf : ∀ (x y : β), f (x y) = min (f x) (f y)) :

Pullback a LinearOrderedCommMonoid under an injective map. See note [reducible non-instances].

Equations
• One or more equations did not get rendered due to their size.
def OrderEmbedding.addLeft.proof_1 {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) :
∀ (x x_1 : α), x < x_1m + x < m + x_1
Equations
• (_ : m + x < m + x) = (_ : m + x < m + x)
def OrderEmbedding.addLeft {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) :
α ↪o α

The order embedding sending b to a + b, for some fixed a. See also OrderIso.addLeft when working in an additive ordered group.

Equations
@[simp]
theorem OrderEmbedding.addLeft_apply {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) (n : α) :
().toEmbedding n = m + n
@[simp]
theorem OrderEmbedding.mulLeft_apply {α : Type u_1} [inst : Mul α] [inst : ] [inst : CovariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x < x_1] (m : α) (n : α) :
().toEmbedding n = m * n
def OrderEmbedding.mulLeft {α : Type u_1} [inst : Mul α] [inst : ] [inst : CovariantClass α α (fun x x_1 => x * x_1) fun x x_1 => x < x_1] (m : α) :
α ↪o α

The order embedding sending b to a * b, for some fixed a. See also OrderIso.mulLeft when working in an ordered group.

Equations
def OrderEmbedding.addRight.proof_1 {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) :
∀ (x x_1 : α), x < x_1x + m < x_1 + m
Equations
• (_ : x + m < x + m) = (_ : x + m < x + m)
def OrderEmbedding.addRight {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) :
α ↪o α

The order embedding sending b to b + a, for some fixed a. See also OrderIso.addRight when working in an additive ordered group.

Equations
@[simp]
theorem OrderEmbedding.mulRight_apply {α : Type u_1} [inst : Mul α] [inst : ] [inst : CovariantClass α α (Function.swap fun x x_1 => x * x_1) fun x x_1 => x < x_1] (m : α) (n : α) :
().toEmbedding n = n * m
@[simp]
theorem OrderEmbedding.addRight_apply {α : Type u_1} [inst : Add α] [inst : ] [inst : CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1] (m : α) (n : α) :
().toEmbedding n = n + m
def OrderEmbedding.mulRight {α : Type u_1} [inst : Mul α] [inst : ] [inst : CovariantClass α α (Function.swap fun x x_1 => x * x_1) fun x x_1 => x < x_1] (m : α) :
α ↪o α

The order embedding sending b to b * a, for some fixed a. See also OrderIso.mulRight when working in an ordered group.

Equations