MaybeSkewPolynomialCategory(R, E, VarSet)

polycat.spad line 165 [edit on github]

The category for general multi-variate possibly skew polynomials over a ring R, in variables from VarSet, with exponents from the OrderedAbelianMonoidSup.

0: %

from AbelianMonoid

1: % if R has SemiRing

from MagmaWithUnit

*: (%, %) -> %

from Magma

*: (%, Fraction Integer) -> % if R has Algebra Fraction Integer

from RightModule Fraction Integer

*: (%, Integer) -> % if R has Ring and R has LinearlyExplicitOver Integer

from RightModule Integer

*: (%, R) -> %

from RightModule R

*: (Fraction Integer, %) -> % if R has Algebra Fraction Integer

from LeftModule Fraction Integer

*: (Integer, %) -> % if R has AbelianGroup or % has AbelianGroup

from AbelianGroup

*: (NonNegativeInteger, %) -> %

from AbelianMonoid

*: (PositiveInteger, %) -> %

from AbelianSemiGroup

*: (R, %) -> %

from LeftModule R

+: (%, %) -> %

from AbelianSemiGroup

-: % -> % if R has AbelianGroup or % has AbelianGroup

from AbelianGroup

-: (%, %) -> % if R has AbelianGroup or % has AbelianGroup

from AbelianGroup

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

from AbelianMonoidRing(R, E)

=: (%, %) -> Boolean

from BasicType

^: (%, NonNegativeInteger) -> % if R has SemiRing

from MagmaWithUnit

^: (%, PositiveInteger) -> %

from Magma

~=: (%, %) -> Boolean

from BasicType

annihilate?: (%, %) -> Boolean if R has Ring

from Rng

antiCommutator: (%, %) -> %

from NonAssociativeSemiRng

associates?: (%, %) -> Boolean if R has EntireRing

from EntireRing

associator: (%, %, %) -> % if R has Ring

from NonAssociativeRng

binomThmExpt: (%, %, NonNegativeInteger) -> % if % has CommutativeRing

from FiniteAbelianMonoidRing(R, E)

characteristic: () -> NonNegativeInteger if R has Ring

from NonAssociativeRing

charthRoot: % -> Union(%, failed) if R has CharacteristicNonZero

from CharacteristicNonZero

coefficient: (%, E) -> R

from AbelianMonoidRing(R, E)

coefficient: (%, List VarSet, List NonNegativeInteger) -> %

coefficient(p, lv, ln) views the polynomial p as a polynomial in the variables of lv and returns the coefficient of the term lv^ln, i.e. prod(lv_i ^ ln_i).

coefficient: (%, VarSet, NonNegativeInteger) -> %

coefficient(p, v, n) views the polynomial p as a univariate polynomial in v and returns the coefficient of the v^n term.

coefficients: % -> List R

from FreeModuleCategory(R, E)

coerce: % -> % if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

from Algebra %

coerce: % -> OutputForm

from CoercibleTo OutputForm

coerce: Fraction Integer -> % if R has RetractableTo Fraction Integer or R has Algebra Fraction Integer

from CoercibleFrom Fraction Integer

coerce: Integer -> % if R has Ring or R has RetractableTo Integer

from NonAssociativeRing

coerce: R -> %

from CoercibleFrom R

commutator: (%, %) -> % if R has Ring

from NonAssociativeRng

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

from IndexedProductCategory(R, E)

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

from IndexedProductCategory(R, E)

content: % -> R if R has GcdDomain

from FiniteAbelianMonoidRing(R, E)

degree: % -> E

from AbelianMonoidRing(R, E)

degree: (%, List VarSet) -> List NonNegativeInteger

degree(p, lv) gives the list of degrees of polynomial p with respect to each of the variables in the list lv.

degree: (%, VarSet) -> NonNegativeInteger

degree(p, v) gives the degree of polynomial p with respect to the variable v.

exquo: (%, %) -> Union(%, failed) if R has EntireRing

from EntireRing

exquo: (%, R) -> Union(%, failed) if R has EntireRing

from FiniteAbelianMonoidRing(R, E)

fmecg: (%, E, R, %) -> % if R has Ring

from FiniteAbelianMonoidRing(R, E)

ground?: % -> Boolean

from FiniteAbelianMonoidRing(R, E)

ground: % -> R

from FiniteAbelianMonoidRing(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) -> % if R has SemiRing

from MagmaWithUnit

leftPower: (%, PositiveInteger) -> %

from Magma

leftRecip: % -> Union(%, failed) if R has SemiRing

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)

mainVariable: % -> Union(VarSet, failed)

mainVariable(p) returns the biggest variable which actually occurs in the polynomial p, or “failed” if no variables are present. fails precisely if polynomial satisfies ground?

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

from IndexedProductCategory(R, E)

mapExponents: (E -> E, %) -> %

from FiniteAbelianMonoidRing(R, E)

minimumDegree: % -> E

from FiniteAbelianMonoidRing(R, E)

monomial?: % -> Boolean

from IndexedProductCategory(R, E)

monomial: (%, List VarSet, List NonNegativeInteger) -> %

monomial(a, [v1..vn], [e1..en]) returns a*prod(vi^ei).

monomial: (%, VarSet, NonNegativeInteger) -> %

monomial(a, x, n) creates the monomial a*x^n where a is a polynomial, x is a variable and n is a nonnegative integer.

monomial: (R, E) -> %

from IndexedProductCategory(R, E)

monomials: % -> List %

monomials(p) returns the list of non-zero monomials of polynomial p, i.e. monomials(sum(a_(i) X^(i))) = [a_(1) X^(1), ..., a_(n) X^(n)].

numberOfMonomials: % -> NonNegativeInteger

from IndexedDirectProductCategory(R, E)

one?: % -> Boolean if R has SemiRing

from MagmaWithUnit

opposite?: (%, %) -> Boolean

from AbelianMonoid

plenaryPower: (%, PositiveInteger) -> % if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing or R has Algebra Fraction Integer

from NonAssociativeAlgebra Fraction Integer

pomopo!: (%, R, E, %) -> %

from FiniteAbelianMonoidRing(R, E)

primitiveMonomials: % -> List % if R has SemiRing

primitiveMonomials(p) gives the list of monomials of the polynomial p with their coefficients removed. Note: primitiveMonomials(sum(a_(i) X^(i))) = [X^(1), ..., X^(n)].

primitivePart: % -> % if R has GcdDomain

from FiniteAbelianMonoidRing(R, E)

recip: % -> Union(%, failed) if R has SemiRing

from MagmaWithUnit

reducedSystem: (Matrix %, Vector %) -> Record(mat: Matrix Integer, vec: Vector Integer) if R has Ring and R has LinearlyExplicitOver Integer

from LinearlyExplicitOver Integer

reducedSystem: (Matrix %, Vector %) -> Record(mat: Matrix R, vec: Vector R) if R has Ring

from LinearlyExplicitOver R

reducedSystem: Matrix % -> Matrix Integer if R has Ring and R has LinearlyExplicitOver Integer

from LinearlyExplicitOver Integer

reducedSystem: Matrix % -> Matrix R if R has Ring

from LinearlyExplicitOver R

reductum: % -> %

from IndexedProductCategory(R, E)

retract: % -> Fraction Integer if R has RetractableTo Fraction Integer

from RetractableTo Fraction Integer

retract: % -> Integer if R has RetractableTo Integer

from RetractableTo Integer

retract: % -> R

from RetractableTo R

retractIfCan: % -> Union(Fraction Integer, failed) if R has RetractableTo Fraction Integer

from RetractableTo Fraction Integer

retractIfCan: % -> Union(Integer, failed) if R has RetractableTo Integer

from RetractableTo Integer

retractIfCan: % -> Union(R, failed)

from RetractableTo R

rightPower: (%, NonNegativeInteger) -> % if R has SemiRing

from MagmaWithUnit

rightPower: (%, PositiveInteger) -> %

from Magma

rightRecip: % -> Union(%, failed) if R has SemiRing

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)

totalDegree: % -> NonNegativeInteger

totalDegree(p) returns the largest sum over all monomials of all exponents of a monomial.

totalDegree: (%, List VarSet) -> NonNegativeInteger

totalDegree(p, lv) returns the maximum sum (over all monomials of polynomial p) of the variables in the list lv.

totalDegreeSorted: (%, List VarSet) -> NonNegativeInteger

totalDegreeSorted(p, lv) returns the maximum sum (over all monomials of polynomial p) of the degree in variables in the list lv. lv is assumed to be sorted in decreasing order.

unit?: % -> Boolean if R has EntireRing

from EntireRing

unitCanonical: % -> % if R has EntireRing

from EntireRing

unitNormal: % -> Record(unit: %, canonical: %, associate: %) if R has EntireRing

from EntireRing

variables: % -> List VarSet

variables(p) returns the list of those variables actually appearing in the polynomial p.

zero?: % -> Boolean

from AbelianMonoid

AbelianGroup if R has AbelianGroup

AbelianMonoid

AbelianMonoidRing(R, E)

AbelianProductCategory R

AbelianSemiGroup

Algebra % if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

Algebra Fraction Integer if R has Algebra Fraction Integer

Algebra R if % has VariablesCommuteWithCoefficients and R has CommutativeRing

BasicType

BiModule(%, %)

BiModule(Fraction Integer, Fraction Integer) if R has Algebra Fraction Integer

BiModule(R, R)

CancellationAbelianMonoid

canonicalUnitNormal if R has canonicalUnitNormal

CharacteristicNonZero if R has CharacteristicNonZero

CharacteristicZero if R has CharacteristicZero

CoercibleFrom Fraction Integer if R has RetractableTo Fraction Integer

CoercibleFrom Integer if R has RetractableTo Integer

CoercibleFrom R

CoercibleTo OutputForm

CommutativeRing if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

CommutativeStar if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

Comparable if R has Comparable

EntireRing if R has EntireRing

FiniteAbelianMonoidRing(R, E)

FreeModuleCategory(R, E)

FullyLinearlyExplicitOver R if R has Ring

FullyRetractableTo R

IndexedDirectProductCategory(R, E)

IndexedProductCategory(R, E)

IntegralDomain if R has IntegralDomain and % has VariablesCommuteWithCoefficients

LeftModule %

LeftModule Fraction Integer if R has Algebra Fraction Integer

LeftModule R

LinearlyExplicitOver Integer if R has Ring and R has LinearlyExplicitOver Integer

LinearlyExplicitOver R if R has Ring

Magma

MagmaWithUnit if R has SemiRing

Module % if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

Module Fraction Integer if R has Algebra Fraction Integer

Module R if R has CommutativeRing

Monoid if R has SemiRing

NonAssociativeAlgebra % if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

NonAssociativeAlgebra Fraction Integer if R has Algebra Fraction Integer

NonAssociativeAlgebra R if % has VariablesCommuteWithCoefficients and R has CommutativeRing

NonAssociativeRing if R has Ring

NonAssociativeRng if R has Ring

NonAssociativeSemiRing if R has SemiRing

NonAssociativeSemiRng

noZeroDivisors if R has EntireRing

RetractableTo Fraction Integer if R has RetractableTo Fraction Integer

RetractableTo Integer if R has RetractableTo Integer

RetractableTo R

RightModule %

RightModule Fraction Integer if R has Algebra Fraction Integer

RightModule Integer if R has Ring and R has LinearlyExplicitOver Integer

RightModule R

Ring if R has Ring

Rng if R has Ring

SemiGroup

SemiRing if R has SemiRing

SemiRng

SetCategory

TwoSidedRecip if R has IntegralDomain and % has VariablesCommuteWithCoefficients or % has VariablesCommuteWithCoefficients and R has CommutativeRing

unitsKnown if R has Ring