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.