SemiRng

catdef.spad line 1371 [edit on github]

The category of associative semirings, not necessarily commutative, and not necessarily with a 1.

* : (%, %) -> %
from LeftModule(%)
* : (Integer, %) -> % if % has AbelianGroup
from AbelianGroup
* : (NonNegativeInteger, %) -> % if % has AbelianMonoid
from AbelianMonoid
* : (PositiveInteger, %) -> %
from AbelianSemiGroup
+ : (%, %) -> %
from AbelianSemiGroup
- : % -> % if % has AbelianGroup
from AbelianGroup
- : (%, %) -> % if % has AbelianGroup
from AbelianGroup
0 : () -> % if % has AbelianMonoid
from AbelianMonoid
= : (%, %) -> Boolean
from BasicType
^ : (%, PositiveInteger) -> %
from Magma
antiCommutator : (%, %) -> %
from NonAssociativeSemiRng
coerce : % -> OutputForm
from CoercibleTo(OutputForm)
latex : % -> String
from SetCategory
leftPower : (%, PositiveInteger) -> %
from Magma
opposite? : (%, %) -> Boolean if % has AbelianMonoid
from AbelianMonoid
rightPower : (%, PositiveInteger) -> %
from Magma
sample : () -> % if % has AbelianMonoid
from AbelianMonoid
subtractIfCan : (%, %) -> Union(%, "failed") if % has AbelianGroup
from CancellationAbelianMonoid
zero? : % -> Boolean if % has AbelianMonoid
from AbelianMonoid
~= : (%, %) -> Boolean
from BasicType

LeftModule(%)

BasicType

CoercibleTo(OutputForm)

BiModule(%, %)

RightModule(%)

SemiGroup

SetCategory

Magma

NonAssociativeSemiRng

CancellationAbelianMonoid

AbelianSemiGroup