ModularEvaluationCategory(PT, MP)

evalut.spad line 177 [edit on github]

ModularEvaluationCategory(PT, MP) defines interface to evaluation functions for ModularAlgebraicGcd2.

degree : (MP, Symbol) -> NonNegativeInteger

degree(p, v) computes degree of p with respect to v.

eval1 : (MP, Symbol, Integer, Record(prime : Integer, eval1coeffbuf : U32Vector, eval1expbuf : SortedExponentVector)) -> Union(MP, "failed")

eval1(p, v, r, pss) evaluates p with respect to single variable v at r. pss is global state.

ldegree : (PT, Symbol) -> NonNegativeInteger

ldegree(p, v) computes degree of p with respect to v. v must be one of auxiliary variables and must be lexicographically first variable which appears in p. Moreover, p must be a polynomial in v (not a rational function).

modpreduction : (MP, Integer) -> Union(MP, "failed")

modpreduction(p, q) reduces all coefficients of p modulo q.

subst_vars : (PT, List(Symbol), List(Symbol)) -> MP

subst_vars(p, lv1, lv2) substitutes variables from list lv2 for corresponding variables from lv1.

trial_division : (MP, Polynomial(Integer), List(MP), Symbol, List(Symbol)) -> Boolean

trial_division(p, q, lm, v, lz) checks if p is divisible by q. lm is a list of defining equations for algebraic parameters, v is main variable, lz is the list of algebraic parameters.