Algebraic structures on the set of positive numbers #
In this file we define various instances (AddSemigroup
, OrderedCommMonoid
etc) on the
type {x : R // 0 < x}
. In each case we try to require the weakest possible typeclass
assumptions on R
but possibly, there is a room for improvements.
Equations
instance
Positive.addCommSemigroup
{M : Type u_3}
[AddCommMonoid M]
[Preorder M]
[AddLeftStrictMono M]
:
Equations
instance
Positive.addLeftCancelSemigroup
{M : Type u_3}
[AddLeftCancelMonoid M]
[Preorder M]
[AddLeftStrictMono M]
:
instance
Positive.addRightCancelSemigroup
{M : Type u_3}
[AddRightCancelMonoid M]
[Preorder M]
[AddLeftStrictMono M]
:
instance
Positive.addLeftStrictMono
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
:
instance
Positive.addRightStrictMono
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
[AddRightStrictMono M]
:
instance
Positive.addLeftReflectLT
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
[AddLeftReflectLT M]
:
instance
Positive.addRightReflectLT
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
[AddRightReflectLT M]
:
instance
Positive.addLeftReflectLE
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
[AddLeftReflectLE M]
:
instance
Positive.addRightReflectLE
{M : Type u_1}
[AddMonoid M]
[Preorder M]
[AddLeftStrictMono M]
[AddRightReflectLE M]
:
Equations
Equations
Equations
- Positive.instOneSubtypeLtOfNat = { one := ⟨1, ⋯⟩ }
Equations
If R
is a nontrivial linear ordered commutative semiring, then {x : R // 0 < x}
is a linear
ordered cancellative commutative monoid.