Polynomial RΒΆ

multpoly.spad line 1 [edit on github]

This type is the basic representation of sparse recursive multivariate polynomials whose variables are arbitrary symbols. The ordering is alphabetic determined by the Symbol type. The coefficient ring may be non commutative, but the variables are assumed to commute.

0: %

from AbelianMonoid

1: %

from MagmaWithUnit

*: (%, %) -> %

from LeftModule %

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

from RightModule Fraction Integer

*: (%, R) -> %

from RightModule R

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

from LeftModule Fraction Integer

*: (Integer, %) -> %

from AbelianGroup

*: (NonNegativeInteger, %) -> %

from AbelianMonoid

*: (PositiveInteger, %) -> %

from AbelianSemiGroup

*: (R, %) -> %

from LeftModule R

+: (%, %) -> %

from AbelianSemiGroup

-: % -> %

from AbelianGroup

-: (%, %) -> %

from AbelianGroup

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

from AbelianMonoidRing(R, IndexedExponents Symbol)

=: (%, %) -> Boolean

from BasicType

^: (%, NonNegativeInteger) -> %

from MagmaWithUnit

^: (%, PositiveInteger) -> %

from Magma

~=: (%, %) -> Boolean

from BasicType

annihilate?: (%, %) -> Boolean

from Rng

antiCommutator: (%, %) -> %

from NonAssociativeSemiRng

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

from EntireRing

associator: (%, %, %) -> %

from NonAssociativeRng

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

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

characteristic: () -> NonNegativeInteger

from NonAssociativeRing

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

from CharacteristicNonZero

coefficient: (%, IndexedExponents Symbol) -> R

from FreeModuleCategory(R, IndexedExponents Symbol)

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

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

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

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

coefficients: % -> List R

from FreeModuleCategory(R, IndexedExponents Symbol)

coerce: % -> % if R has CommutativeRing

from Algebra %

coerce: % -> OutputForm

from CoercibleTo OutputForm

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

from Algebra Fraction Integer

coerce: Integer -> %

from NonAssociativeRing

coerce: R -> %

from Algebra R

coerce: Symbol -> %

from CoercibleFrom Symbol

commutator: (%, %) -> %

from NonAssociativeRng

conditionP: Matrix % -> Union(Vector %, failed) if % has CharacteristicNonZero and R has PolynomialFactorizationExplicit

from PolynomialFactorizationExplicit

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

from IndexedProductCategory(R, IndexedExponents Symbol)

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

from IndexedProductCategory(R, IndexedExponents Symbol)

content: % -> R if R has GcdDomain

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

content: (%, Symbol) -> % if R has GcdDomain

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

convert: % -> InputForm if R has ConvertibleTo InputForm

from ConvertibleTo InputForm

convert: % -> Pattern Float if R has ConvertibleTo Pattern Float

from ConvertibleTo Pattern Float

convert: % -> Pattern Integer if R has ConvertibleTo Pattern Integer

from ConvertibleTo Pattern Integer

D: (%, List Symbol) -> %

from PartialDifferentialRing Symbol

D: (%, List Symbol, List NonNegativeInteger) -> %

from PartialDifferentialRing Symbol

D: (%, Symbol) -> %

from PartialDifferentialRing Symbol

D: (%, Symbol, NonNegativeInteger) -> %

from PartialDifferentialRing Symbol

degree: % -> IndexedExponents Symbol

from AbelianMonoidRing(R, IndexedExponents Symbol)

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

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

degree: (%, Symbol) -> NonNegativeInteger

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

differentiate: (%, List Symbol) -> %

from PartialDifferentialRing Symbol

differentiate: (%, List Symbol, List NonNegativeInteger) -> %

from PartialDifferentialRing Symbol

differentiate: (%, Symbol) -> %

from PartialDifferentialRing Symbol

differentiate: (%, Symbol, NonNegativeInteger) -> %

from PartialDifferentialRing Symbol

discriminant: (%, Symbol) -> % if R has CommutativeRing

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

eval: (%, %, %) -> %

from InnerEvalable(%, %)

eval: (%, Equation %) -> %

from Evalable %

eval: (%, List %, List %) -> %

from InnerEvalable(%, %)

eval: (%, List Equation %) -> %

from Evalable %

eval: (%, List Symbol, List %) -> %

from InnerEvalable(Symbol, %)

eval: (%, List Symbol, List R) -> %

from InnerEvalable(Symbol, R)

eval: (%, Symbol, %) -> %

from InnerEvalable(Symbol, %)

eval: (%, Symbol, R) -> %

from InnerEvalable(Symbol, R)

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

from EntireRing

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

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

factor: % -> Factored % if R has PolynomialFactorizationExplicit

from UniqueFactorizationDomain

factorPolynomial: SparseUnivariatePolynomial % -> Factored SparseUnivariatePolynomial % if R has PolynomialFactorizationExplicit

from PolynomialFactorizationExplicit

factorSquareFreePolynomial: SparseUnivariatePolynomial % -> Factored SparseUnivariatePolynomial % if R has PolynomialFactorizationExplicit

from PolynomialFactorizationExplicit

fmecg: (%, IndexedExponents Symbol, R, %) -> %

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

gcd: (%, %) -> % if R has GcdDomain

from GcdDomain

gcd: List % -> % if R has GcdDomain

from GcdDomain

gcdPolynomial: (SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> SparseUnivariatePolynomial % if R has GcdDomain

from GcdDomain

ground?: % -> Boolean

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

ground: % -> R

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

hash: % -> SingleInteger

from SetCategory

hashUpdate!: (HashState, %) -> HashState

from SetCategory

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

integrate(p, x) computes the integral of p*dx, i.e. integrates the polynomial p with respect to the variable x.

isExpt: % -> Union(Record(var: Symbol, exponent: NonNegativeInteger), failed)

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

isPlus: % -> Union(List %, failed)

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

isTimes: % -> Union(List %, failed)

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

latex: % -> String

from SetCategory

lcm: (%, %) -> % if R has GcdDomain

from GcdDomain

lcm: List % -> % if R has GcdDomain

from GcdDomain

lcmCoef: (%, %) -> Record(llcm_res: %, coeff1: %, coeff2: %) if R has GcdDomain

from LeftOreRing

leadingCoefficient: % -> R

from IndexedProductCategory(R, IndexedExponents Symbol)

leadingMonomial: % -> %

from IndexedProductCategory(R, IndexedExponents Symbol)

leadingSupport: % -> IndexedExponents Symbol

from IndexedProductCategory(R, IndexedExponents Symbol)

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

from IndexedProductCategory(R, IndexedExponents Symbol)

leftPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

leftPower: (%, PositiveInteger) -> %

from Magma

leftRecip: % -> Union(%, failed)

from MagmaWithUnit

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

from FreeModuleCategory(R, IndexedExponents Symbol)

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

from IndexedDirectProductCategory(R, IndexedExponents Symbol)

mainVariable: % -> Union(Symbol, failed)

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

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

from IndexedProductCategory(R, IndexedExponents Symbol)

mapExponents: (IndexedExponents Symbol -> IndexedExponents Symbol, %) -> %

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

minimumDegree: % -> IndexedExponents Symbol

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

minimumDegree: (%, List Symbol) -> List NonNegativeInteger

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

minimumDegree: (%, Symbol) -> NonNegativeInteger

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

monicDivide: (%, %, Symbol) -> Record(quotient: %, remainder: %)

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

monomial?: % -> Boolean

from IndexedProductCategory(R, IndexedExponents Symbol)

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

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

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

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

monomial: (R, IndexedExponents Symbol) -> %

from IndexedProductCategory(R, IndexedExponents Symbol)

monomials: % -> List %

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

multivariate: (SparseUnivariatePolynomial %, Symbol) -> %

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

multivariate: (SparseUnivariatePolynomial R, Symbol) -> %

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

numberOfMonomials: % -> NonNegativeInteger

from IndexedDirectProductCategory(R, IndexedExponents Symbol)

one?: % -> Boolean

from MagmaWithUnit

opposite?: (%, %) -> Boolean

from AbelianMonoid

patternMatch: (%, Pattern Float, PatternMatchResult(Float, %)) -> PatternMatchResult(Float, %) if R has PatternMatchable Float

from PatternMatchable Float

patternMatch: (%, Pattern Integer, PatternMatchResult(Integer, %)) -> PatternMatchResult(Integer, %) if R has PatternMatchable Integer

from PatternMatchable Integer

pomopo!: (%, R, IndexedExponents Symbol, %) -> %

from FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

prime?: % -> Boolean if R has PolynomialFactorizationExplicit

from UniqueFactorizationDomain

primitiveMonomials: % -> List %

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

primitivePart: % -> % if R has GcdDomain

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

primitivePart: (%, Symbol) -> % if R has GcdDomain

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

recip: % -> Union(%, failed)

from MagmaWithUnit

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

from LinearlyExplicitOver Integer

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

from LinearlyExplicitOver R

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

from LinearlyExplicitOver Integer

reducedSystem: Matrix % -> Matrix R

from LinearlyExplicitOver R

reductum: % -> %

from IndexedProductCategory(R, IndexedExponents Symbol)

resultant: (%, %, Symbol) -> % if R has CommutativeRing

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

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

retract: % -> Symbol

from RetractableTo Symbol

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

retractIfCan: % -> Union(Symbol, failed)

from RetractableTo Symbol

rightPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

rightPower: (%, PositiveInteger) -> %

from Magma

rightRecip: % -> Union(%, failed)

from MagmaWithUnit

sample: %

from AbelianMonoid

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

from Comparable

solveLinearPolynomialEquation: (List SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> Union(List SparseUnivariatePolynomial %, failed) if R has PolynomialFactorizationExplicit

from PolynomialFactorizationExplicit

squareFree: % -> Factored % if R has GcdDomain

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

squareFreePart: % -> % if R has GcdDomain

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

squareFreePolynomial: SparseUnivariatePolynomial % -> Factored SparseUnivariatePolynomial % if R has PolynomialFactorizationExplicit

from PolynomialFactorizationExplicit

subtractIfCan: (%, %) -> Union(%, failed)

from CancellationAbelianMonoid

support: % -> List IndexedExponents Symbol

from FreeModuleCategory(R, IndexedExponents Symbol)

totalDegree: % -> NonNegativeInteger

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

totalDegree: (%, List Symbol) -> NonNegativeInteger

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

totalDegreeSorted: (%, List Symbol) -> NonNegativeInteger

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

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

univariate: % -> SparseUnivariatePolynomial R

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

univariate: (%, Symbol) -> SparseUnivariatePolynomial %

from PolynomialCategory(R, IndexedExponents Symbol, Symbol)

variables: % -> List Symbol

from MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

zero?: % -> Boolean

from AbelianMonoid

AbelianGroup

AbelianMonoid

AbelianMonoidRing(R, IndexedExponents Symbol)

AbelianProductCategory R

AbelianSemiGroup

Algebra % if R has CommutativeRing

Algebra Fraction Integer if R has Algebra Fraction Integer

Algebra R if 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

CoercibleFrom Symbol

CoercibleTo OutputForm

CommutativeRing if R has CommutativeRing

CommutativeStar if R has CommutativeRing

Comparable if R has Comparable

ConvertibleTo InputForm if R has ConvertibleTo InputForm

ConvertibleTo Pattern Float if R has ConvertibleTo Pattern Float

ConvertibleTo Pattern Integer if R has ConvertibleTo Pattern Integer

EntireRing if R has EntireRing

Evalable %

FiniteAbelianMonoidRing(R, IndexedExponents Symbol)

FreeModuleCategory(R, IndexedExponents Symbol)

FullyLinearlyExplicitOver R

FullyRetractableTo R

GcdDomain if R has GcdDomain

IndexedDirectProductCategory(R, IndexedExponents Symbol)

IndexedProductCategory(R, IndexedExponents Symbol)

InnerEvalable(%, %)

InnerEvalable(Symbol, %)

InnerEvalable(Symbol, R)

IntegralDomain if R has IntegralDomain

LeftModule %

LeftModule Fraction Integer if R has Algebra Fraction Integer

LeftModule R

LeftOreRing if R has GcdDomain

LinearlyExplicitOver Integer if R has LinearlyExplicitOver Integer

LinearlyExplicitOver R

Magma

MagmaWithUnit

MaybeSkewPolynomialCategory(R, IndexedExponents Symbol, Symbol)

Module % if R has CommutativeRing

Module Fraction Integer if R has Algebra Fraction Integer

Module R if R has CommutativeRing

Monoid

NonAssociativeRing

NonAssociativeRng

NonAssociativeSemiRing

NonAssociativeSemiRng

noZeroDivisors if R has EntireRing

PartialDifferentialRing Symbol

PatternMatchable Float if R has PatternMatchable Float

PatternMatchable Integer if R has PatternMatchable Integer

PolynomialCategory(R, IndexedExponents Symbol, Symbol)

PolynomialFactorizationExplicit if R has PolynomialFactorizationExplicit

RetractableTo Fraction Integer if R has RetractableTo Fraction Integer

RetractableTo Integer if R has RetractableTo Integer

RetractableTo R

RetractableTo Symbol

RightModule %

RightModule Fraction Integer if R has Algebra Fraction Integer

RightModule R

Ring

Rng

SemiGroup

SemiRing

SemiRng

SetCategory

TwoSidedRecip if R has CommutativeRing

UniqueFactorizationDomain if R has PolynomialFactorizationExplicit

unitsKnown

VariablesCommuteWithCoefficients