XPolynomialRing(R, E)

xpoly.spad line 135 [edit on github]

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.

# : % -> NonNegativeInteger

# p returns the number of terms in p.

* : (%, %) -> %
from Magma
* : (%, R) -> %

p*r returns the product of p by r.

* : (R, %) -> %
from LeftModule(R)
* : (Integer, %) -> %
from AbelianGroup
* : (NonNegativeInteger, %) -> %
from AbelianMonoid
* : (PositiveInteger, %) -> %
from AbelianSemiGroup
+ : (%, %) -> %
from AbelianSemiGroup
- : % -> %
from AbelianGroup
- : (%, %) -> %
from AbelianGroup
/ : (%, R) -> % if R has Field

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

0 : () -> %
from AbelianMonoid
1 : () -> %
from MagmaWithUnit
= : (%, %) -> Boolean
from BasicType
^ : (%, NonNegativeInteger) -> %
from MagmaWithUnit
^ : (%, PositiveInteger) -> %
from Magma
annihilate? : (%, %) -> Boolean
from Rng
antiCommutator : (%, %) -> %
from NonAssociativeSemiRng
associator : (%, %, %) -> %
from NonAssociativeRng
characteristic : () -> NonNegativeInteger
from NonAssociativeRing
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 : E -> %

coerce(e) returns 1*e

coerce : R -> %
from XAlgebra(R)
coerce : Integer -> %
from NonAssociativeRing
coerce : % -> OutputForm
from CoercibleTo(OutputForm)
commutator : (%, %) -> %
from NonAssociativeRng
constant : % -> R

constant(p) return the constant term of p.

constant? : % -> Boolean

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

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
leadingCoefficient : % -> R
from IndexedProductCategory(R, E)
leadingMonomial : % -> %
from IndexedProductCategory(R, E)
leadingSupport : % -> 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 : (Mapping(R, E), %) -> R if R has CommutativeRing
from FreeModuleCategory(R, E)
listOfTerms : % -> List(Record(k : E, c : R))
from IndexedDirectProductCategory(R, E)
map : (Mapping(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 : (R, E) -> %
from IndexedProductCategory(R, E)
monomial? : % -> Boolean
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
from NonAssociativeAlgebra(R)
quasiRegular : % -> %

quasiRegular(x) return x minus its constant term.

quasiRegular? : % -> Boolean

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

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")
from CancellationAbelianMonoid
support : % -> List(E)
from FreeModuleCategory(R, E)
zero? : % -> Boolean
from AbelianMonoid
~= : (%, %) -> Boolean
from BasicType

Comparable

noZeroDivisors

RightModule(%)

Monoid

BiModule(R, R)

Algebra(R)

AbelianMonoid

NonAssociativeAlgebra(R)

CancellationAbelianMonoid

MagmaWithUnit

NonAssociativeRing

AbelianGroup

IndexedProductCategory(R, E)

LeftModule(%)

LeftModule(R)

canonicalUnitNormal

SetCategory

IndexedDirectProductCategory(R, E)

Rng

FreeModuleCategory(R, E)

SemiGroup

Magma

XAlgebra(R)

BiModule(%, %)

unitsKnown

CoercibleTo(OutputForm)

AbelianSemiGroup

NonAssociativeSemiRing

AbelianProductCategory(R)

Module(R)

RightModule(R)

NonAssociativeRng

Ring

SemiRng

NonAssociativeSemiRng

BasicType

SemiRing