PrimGCDΒΆ
amodgcd.spad line 67 [edit on github]
This is unfinished package for computing primitive gcd over algebraic extensions. Algebraic extension is defined by list of polynomial forming triangular system. Currently implemented is only trial division.
- alg_reduce0: (SparseMultivariatePolynomial(Integer, Symbol), SparseMultivariatePolynomial(Integer, Symbol), List Symbol, Symbol) -> SparseMultivariatePolynomial(Integer, Symbol)
alg_reduce0(x, m, lv, z)performs single reduction step.
- alg_reduce: (SparseMultivariatePolynomial(Integer, Symbol), List SparseMultivariatePolynomial(Integer, Symbol), List Symbol, List Symbol) -> SparseMultivariatePolynomial(Integer, Symbol)
alg_reduce(x, lm, lv, lz)reducesxmodulo elements oflm.
- alg_trial_division: (SparseMultivariatePolynomial(Integer, Symbol), SparseMultivariatePolynomial(Integer, Symbol), List SparseMultivariatePolynomial(Integer, Symbol), List Symbol, List Symbol) -> Boolean
alg_trial_division(x, y, lm, lv, lz)checks ifxis divisible byyin algebraic extension defined bylm.lzis list of algebraic variables,lvis list of independent (polynomial) variables. Other variables serve as parameters.
- coeffs0: (SparseMultivariatePolynomial(Integer, Symbol), List Symbol, List SparseMultivariatePolynomial(Integer, Symbol)) -> List SparseMultivariatePolynomial(Integer, Symbol)
coeffs0(x, lv, lp)is used bycoeffs1
- coeffs1: (SparseMultivariatePolynomial(Integer, Symbol), List Symbol) -> List SparseMultivariatePolynomial(Integer, Symbol)
coeffs1(x, lv)computes list of coefficients ofxwith respect to variables inlv. Variables inlvmust be decreasing and bigger than all other variables ofx.
- lcx0: (SparseMultivariatePolynomial(Integer, Symbol), List Symbol) -> Record(lcx0lc: SparseMultivariatePolynomial(Integer, Symbol), lcx0m: SparseMultivariatePolynomial(Integer, Symbol))
lcx0(x, lv)computes leading coefficient ofxand corresponding product of variables (monomial with coefficient 1) with respect to variables inlvVariables inlvmust be decreasing and bigger than all other variables ofx.
- lcz: (SparseMultivariatePolynomial(Integer, Symbol), Symbol) -> Record(lczlc: SparseMultivariatePolynomial(Integer, Symbol), k: Integer)
lcz(x, z)computes leading coefficient and degree ofxwith respect to variablez.