# FreeAbelianGroup SΒΆ

free.spad line 588

The free abelian group 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 integers. The operation is commutative.

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

AbelianGroup

AbelianMonoid

AbelianSemiGroup

BasicType

CancellationAbelianMonoid

Comparable if S has OrderedSet

OrderedSet if S has OrderedSet

PartialOrder if S has OrderedSet

SetCategory