# XPolynomialRing(R, E)ΒΆ

This domain represents generalized polynomials with coefficients (from a not necessarily commutative ring), and words belonging to an arbitrary OrderedMonoid. This type is used, for instance, by the XDistributedPolynomial domain constructor where the Monoid is free.

0: %

from AbelianMonoid

1: %

from MagmaWithUnit

#: % -> NonNegativeInteger

`\# p` returns the number of terms in `p`.

*: (%, %) -> %

from Magma

*: (%, R) -> %

`p*r` returns the product of `p` by `r`.

*: (Integer, %) -> %

from AbelianGroup

*: (NonNegativeInteger, %) -> %

from AbelianMonoid

*: (PositiveInteger, %) -> %

from AbelianSemiGroup

*: (R, %) -> %

from LeftModule R

+: (%, %) -> %

from AbelianSemiGroup

-: % -> %

from AbelianGroup

-: (%, %) -> %

from AbelianGroup

/: (%, R) -> % if R has Field

`p/r` returns `p*(1/r)`.

=: (%, %) -> Boolean

from BasicType

^: (%, NonNegativeInteger) -> %

from MagmaWithUnit

^: (%, PositiveInteger) -> %

from Magma

~=: (%, %) -> Boolean

from BasicType

annihilate?: (%, %) -> Boolean

from Rng

antiCommutator: (%, %) -> %
associator: (%, %, %) -> %
characteristic: () -> NonNegativeInteger
coef: (%, E) -> R

`coef(p, e)` extracts the coefficient of the monomial `e`. Returns zero if `e` is not present.

coefficient: (%, E) -> R

from FreeModuleCategory(R, E)

coefficients: % -> List R

from FreeModuleCategory(R, E)

coerce: % -> OutputForm
coerce: E -> %

`coerce(e)` returns `1*e`

coerce: Integer -> %
coerce: R -> %

from XAlgebra R

commutator: (%, %) -> %
constant?: % -> Boolean

`constant?(p)` tests whether the polynomial `p` belongs to the coefficient ring.

constant: % -> R

`constant(p)` return the constant term of `p`.

construct: List Record(k: E, c: R) -> %

from IndexedProductCategory(R, E)

constructOrdered: List Record(k: E, c: R) -> %

from IndexedProductCategory(R, E)

latex: % -> String

from SetCategory

from IndexedProductCategory(R, E)

from IndexedProductCategory(R, E)

from IndexedProductCategory(R, E)

leadingTerm: % -> Record(k: E, c: R)

from IndexedProductCategory(R, E)

leftPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

leftPower: (%, PositiveInteger) -> %

from Magma

leftRecip: % -> Union(%, failed)

from MagmaWithUnit

linearExtend: (E -> R, %) -> R if R has CommutativeRing

from FreeModuleCategory(R, E)

listOfTerms: % -> List Record(k: E, c: R)

from IndexedDirectProductCategory(R, E)

map: (R -> R, %) -> %

`map(fn, x)` returns `Sum(fn(r_i) w_i)` if `x` writes `Sum(r_i w_i)`.

maxdeg: % -> E

`maxdeg(p)` returns the greatest word occurring in the polynomial `p` with a non-zero coefficient. An error is produced if `p` is zero.

mindeg: % -> E

`mindeg(p)` returns the smallest word occurring in the polynomial `p` with a non-zero coefficient. An error is produced if `p` is zero.

monomial?: % -> Boolean

from IndexedProductCategory(R, E)

monomial: (R, E) -> %

from IndexedProductCategory(R, E)

monomials: % -> List %

from FreeModuleCategory(R, E)

numberOfMonomials: % -> NonNegativeInteger

from IndexedDirectProductCategory(R, E)

one?: % -> Boolean

from MagmaWithUnit

opposite?: (%, %) -> Boolean

from AbelianMonoid

plenaryPower: (%, PositiveInteger) -> % if R has CommutativeRing
quasiRegular?: % -> Boolean

`quasiRegular?(x)` return `true` if `constant(p)` is zero.

quasiRegular: % -> %

`quasiRegular(x)` return `x` minus its constant term.

recip: % -> Union(%, failed)

from MagmaWithUnit

reductum: % -> %

`reductum(p)` returns `p` minus its leading term. An error is produced if `p` is zero.

rightPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

rightPower: (%, PositiveInteger) -> %

from Magma

rightRecip: % -> Union(%, failed)

from MagmaWithUnit

sample: %

from AbelianMonoid

smaller?: (%, %) -> Boolean if R has Comparable

from Comparable

subtractIfCan: (%, %) -> Union(%, failed)
support: % -> List E

from FreeModuleCategory(R, E)

zero?: % -> Boolean

from AbelianMonoid

AbelianGroup

AbelianMonoid

AbelianSemiGroup

Algebra R if R has CommutativeRing

BasicType

BiModule(%, %)

BiModule(R, R)

CancellationAbelianMonoid

Comparable if R has Comparable

FreeModuleCategory(R, E)

IndexedProductCategory(R, E)

Magma

MagmaWithUnit

Module R if R has CommutativeRing

Monoid

NonAssociativeAlgebra R if R has CommutativeRing

NonAssociativeRing

NonAssociativeRng

NonAssociativeSemiRing

NonAssociativeSemiRng

noZeroDivisors if R has noZeroDivisors

Ring

Rng

SemiGroup

SemiRing

SemiRng

SetCategory

unitsKnown