Adjoining top/bottom elements to ordered monoids. #
@[simp]
@[simp]
Equations
- WithTop.add = { add := Option.map₂ fun x x_1 => x + x_1 }
instance
WithTop.covariantClass_add_le
{α : Type u}
[Add α]
[LE α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
:
CovariantClass (WithTop α) (WithTop α) (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1
instance
WithTop.covariantClass_swap_add_le
{α : Type u}
[Add α]
[LE α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
:
CovariantClass (WithTop α) (WithTop α) (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1
instance
WithTop.contravariantClass_add_lt
{α : Type u}
[Add α]
[LT α]
[ContravariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
:
ContravariantClass (WithTop α) (WithTop α) (fun x x_1 => x + x_1) fun x x_1 => x < x_1
instance
WithTop.contravariantClass_swap_add_lt
{α : Type u}
[Add α]
[LT α]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
:
ContravariantClass (WithTop α) (WithTop α) (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1
theorem
WithTop.add_le_add_iff_right
{α : Type u}
[Add α]
{a : WithTop α}
{b : WithTop α}
{c : WithTop α}
[LE α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
(ha : a ≠ ⊤)
:
theorem
WithTop.add_lt_add_iff_right
{α : Type u}
[Add α]
{a : WithTop α}
{b : WithTop α}
{c : WithTop α}
[LT α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
(ha : a ≠ ⊤)
:
theorem
WithTop.add_lt_add_of_le_of_lt
{α : Type u}
[Add α]
{a : WithTop α}
{b : WithTop α}
{c : WithTop α}
{d : WithTop α}
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
(ha : a ≠ ⊤)
(hab : a ≤ b)
(hcd : c < d)
:
theorem
WithTop.add_lt_add_of_lt_of_le
{α : Type u}
[Add α]
{a : WithTop α}
{b : WithTop α}
{c : WithTop α}
{d : WithTop α}
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
(hc : c ≠ ⊤)
(hab : a < b)
(hcd : c ≤ d)
:
@[simp]
theorem
WithTop.map_add
{α : Type u}
{β : Type v}
[Add α]
{F : Type u_1}
[Add β]
[AddHomClass F α β]
(f : F)
(a : WithTop α)
(b : WithTop α)
:
WithTop.map (↑f) (a + b) = WithTop.map (↑f) a + WithTop.map (↑f) b
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.
Equations
- One or more equations did not get rendered due to their size.
Equations
- WithTop.addMonoidWithOne = let src := WithTop.one; let src_1 := WithTop.addMonoid; AddMonoidWithOne.mk
Equations
Equations
- One or more equations did not get rendered due to their size.
instance
WithTop.existsAddOfLE
{α : Type u}
[LE α]
[Add α]
[ExistsAddOfLE α]
:
ExistsAddOfLE (WithTop α)
Equations
- One or more equations did not get rendered due to their size.
instance
WithTop.instCanonicallyLinearOrderedAddMonoidWithTop
{α : Type u}
[CanonicallyLinearOrderedAddMonoid α]
:
Equations
- One or more equations did not get rendered due to their size.
Coercion from α
to WithTop α
as an AddMonoidHom
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A version of WithTop.map
for ZeroHom
s
Equations
- ZeroHom.withTopMap f = { toFun := WithTop.map ↑f, map_zero' := (_ : WithTop.map (↑f) 0 = 0) }
Instances For
theorem
ZeroHom.withTopMap.proof_1
{M : Type u_2}
{N : Type u_1}
[Zero M]
[Zero N]
(f : ZeroHom M N)
:
WithTop.map (↑f) 0 = 0
@[simp]
theorem
ZeroHom.withTopMap_apply
{M : Type u_1}
{N : Type u_2}
[Zero M]
[Zero N]
(f : ZeroHom M N)
:
↑(ZeroHom.withTopMap f) = WithTop.map ↑f
@[simp]
theorem
OneHom.withTopMap_apply
{M : Type u_1}
{N : Type u_2}
[One M]
[One N]
(f : OneHom M N)
:
↑(OneHom.withTopMap f) = WithTop.map ↑f
A version of WithTop.map
for OneHom
s.
Equations
- OneHom.withTopMap f = { toFun := WithTop.map ↑f, map_one' := (_ : WithTop.map (↑f) 1 = 1) }
Instances For
@[simp]
theorem
AddHom.withTopMap_apply
{M : Type u_1}
{N : Type u_2}
[Add M]
[Add N]
(f : AddHom M N)
:
↑(AddHom.withTopMap f) = WithTop.map ↑f
A version of WithTop.map
for AddHom
s.
Equations
- AddHom.withTopMap f = { toFun := WithTop.map ↑f, map_add' := (_ : ∀ (a b : WithTop M), WithTop.map (↑f) (a + b) = WithTop.map (↑f) a + WithTop.map (↑f) b) }
Instances For
@[simp]
theorem
AddMonoidHom.withTopMap_apply
{M : Type u_1}
{N : Type u_2}
[AddZeroClass M]
[AddZeroClass N]
(f : M →+ N)
:
↑(AddMonoidHom.withTopMap f) = WithTop.map ↑f
def
AddMonoidHom.withTopMap
{M : Type u_1}
{N : Type u_2}
[AddZeroClass M]
[AddZeroClass N]
(f : M →+ N)
:
A version of WithTop.map
for AddMonoidHom
s.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- WithBot.AddSemigroup = WithTop.addSemigroup
Equations
- WithBot.addCommSemigroup = WithTop.addCommSemigroup
Equations
- WithBot.addZeroClass = WithTop.addZeroClass
Equations
- WithBot.addCommMonoid = WithTop.addCommMonoid
Equations
- WithBot.addMonoidWithOne = WithTop.addMonoidWithOne
Equations
- WithBot.addCommMonoidWithOne = WithTop.addCommMonoidWithOne
@[simp]
@[simp]
@[simp]
theorem
WithBot.map_add
{α : Type u}
{β : Type v}
[Add α]
{F : Type u_1}
[Add β]
[AddHomClass F α β]
(f : F)
(a : WithBot α)
(b : WithBot α)
:
WithBot.map (↑f) (a + b) = WithBot.map (↑f) a + WithBot.map (↑f) b
theorem
ZeroHom.withBotMap.proof_1
{M : Type u_2}
{N : Type u_1}
[Zero M]
[Zero N]
(f : ZeroHom M N)
:
WithBot.map (↑f) 0 = 0
A version of WithBot.map
for ZeroHom
s
Equations
- ZeroHom.withBotMap f = { toFun := WithBot.map ↑f, map_zero' := (_ : WithBot.map (↑f) 0 = 0) }
Instances For
@[simp]
theorem
OneHom.withBotMap_apply
{M : Type u_1}
{N : Type u_2}
[One M]
[One N]
(f : OneHom M N)
:
↑(OneHom.withBotMap f) = WithBot.map ↑f
@[simp]
theorem
ZeroHom.withBotMap_apply
{M : Type u_1}
{N : Type u_2}
[Zero M]
[Zero N]
(f : ZeroHom M N)
:
↑(ZeroHom.withBotMap f) = WithBot.map ↑f
A version of WithBot.map
for OneHom
s.
Equations
- OneHom.withBotMap f = { toFun := WithBot.map ↑f, map_one' := (_ : WithBot.map (↑f) 1 = 1) }
Instances For
@[simp]
theorem
AddHom.withBotMap_apply
{M : Type u_1}
{N : Type u_2}
[Add M]
[Add N]
(f : AddHom M N)
:
↑(AddHom.withBotMap f) = WithBot.map ↑f
A version of WithBot.map
for AddHom
s.
Equations
- AddHom.withBotMap f = { toFun := WithBot.map ↑f, map_add' := (_ : ∀ (a b : WithBot M), WithBot.map (↑f) (a + b) = WithBot.map (↑f) a + WithBot.map (↑f) b) }
Instances For
@[simp]
theorem
AddMonoidHom.withBotMap_apply
{M : Type u_1}
{N : Type u_2}
[AddZeroClass M]
[AddZeroClass N]
(f : M →+ N)
:
↑(AddMonoidHom.withBotMap f) = WithBot.map ↑f
def
AddMonoidHom.withBotMap
{M : Type u_1}
{N : Type u_2}
[AddZeroClass M]
[AddZeroClass N]
(f : M →+ N)
:
A version of WithBot.map
for AddMonoidHom
s.
Equations
- One or more equations did not get rendered due to their size.
Instances For
instance
WithBot.covariantClass_add_le
{α : Type u}
[Add α]
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
:
CovariantClass (WithBot α) (WithBot α) (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1
instance
WithBot.covariantClass_swap_add_le
{α : Type u}
[Add α]
[Preorder α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
:
CovariantClass (WithBot α) (WithBot α) (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1
instance
WithBot.contravariantClass_add_lt
{α : Type u}
[Add α]
[Preorder α]
[ContravariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
:
ContravariantClass (WithBot α) (WithBot α) (fun x x_1 => x + x_1) fun x x_1 => x < x_1
instance
WithBot.contravariantClass_swap_add_lt
{α : Type u}
[Add α]
[Preorder α]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
:
ContravariantClass (WithBot α) (WithBot α) (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1
theorem
WithBot.add_le_add_iff_right
{α : Type u}
[Add α]
{a : WithBot α}
{b : WithBot α}
{c : WithBot α}
[Preorder α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
(ha : a ≠ ⊥)
:
theorem
WithBot.add_lt_add_iff_left
{α : Type u}
[Add α]
{a : WithBot α}
{b : WithBot α}
{c : WithBot α}
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
[ContravariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
(ha : a ≠ ⊥)
:
theorem
WithBot.add_lt_add_iff_right
{α : Type u}
[Add α]
{a : WithBot α}
{b : WithBot α}
{c : WithBot α}
[Preorder α]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
[ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
(ha : a ≠ ⊥)
:
theorem
WithBot.add_lt_add_of_le_of_lt
{α : Type u}
[Add α]
{a : WithBot α}
{b : WithBot α}
{c : WithBot α}
{d : WithBot α}
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x < x_1]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
(hb : b ≠ ⊥)
(hab : a ≤ b)
(hcd : c < d)
:
theorem
WithBot.add_lt_add_of_lt_of_le
{α : Type u}
[Add α]
{a : WithBot α}
{b : WithBot α}
{c : WithBot α}
{d : WithBot α}
[Preorder α]
[CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1]
[CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x < x_1]
(hd : d ≠ ⊥)
(hab : a < b)
(hcd : c ≤ d)
:
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.