# FreeAbelianMonoid SΒΆ

The free abelian monoid on a set S is the monoid of finite sums of the form reduce(+, [ni * si]) where the si's are in S, and the ni's are non-negative integers. The operation is commutative.

0: %
from AbelianMonoid
*: (NonNegativeInteger, %) -> %
from AbelianMonoid
*: (NonNegativeInteger, S) -> %
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
*: (PositiveInteger, %) -> %
from AbelianSemiGroup
+: (%, %) -> %
from AbelianSemiGroup
+: (S, %) -> %
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
=: (%, %) -> Boolean
from BasicType
~=: (%, %) -> Boolean
from BasicType
coefficient: (S, %) -> NonNegativeInteger
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
coerce: % -> OutputForm
from CoercibleTo OutputForm
coerce: S -> %
from RetractableTo S
hash: % -> SingleInteger
from SetCategory
hashUpdate!: (HashState, %) -> HashState
from SetCategory
highCommonTerms: (%, %) -> %
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
latex: % -> String
from SetCategory
mapCoef: (NonNegativeInteger -> NonNegativeInteger, %) -> %
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
mapGen: (S -> S, %) -> %
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
nthCoef: (%, Integer) -> NonNegativeInteger
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
nthFactor: (%, Integer) -> S
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
opposite?: (%, %) -> Boolean
from AbelianMonoid
retract: % -> S
from RetractableTo S
retractIfCan: % -> Union(S, failed)
from RetractableTo S
sample: %
from AbelianMonoid
size: % -> NonNegativeInteger
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
subtractIfCan: (%, %) -> Union(%, failed)
from CancellationAbelianMonoid
terms: % -> List Record(gen: S, exp: NonNegativeInteger)
from FreeAbelianMonoidCategory(S, NonNegativeInteger)
zero?: % -> Boolean
from AbelianMonoid

AbelianMonoid

AbelianSemiGroup

BasicType

CancellationAbelianMonoid

SetCategory