Testing latest pari + WASM + node.js... and it works?! Wow.
License: GPL3
ubuntu2004
Function: polrootsmod Section: polynomials C-Name: polrootsmod Prototype: GDG Help: polrootsmod(f,{D}): roots of the polynomial f over the finite field defined by the domain D. Doc: vector of roots of the polynomial $f$ over the finite field defined by the domain $D$ as follows: \item $D = p$ a prime: factor over $\F_p$; \item $D = [T,p]$ for a prime $p$ and $T(y)$ an irreducible polynomial over $\F_p$: factor over $\F_p[y]/(T)$ (as usual the main variable of $T$ must have lower priority than the main variable of $f$); \item $D$ a \typ{FFELT}: factor over the attached field; \item $D$ omitted: factor over the field of definition of $f$, which must be a finite field. \noindent Multiple roots are \emph{not} repeated. \bprog ? polrootsmod(x^2-1,2) %1 = [Mod(1, 2)]~ ? polrootsmod(x^2+1,3) %2 = []~ ? polrootsmod(x^2+1, [y^2+1,3]) %3 = [Mod(Mod(1, 3)*y, Mod(1, 3)*y^2 + Mod(1, 3)), Mod(Mod(2, 3)*y, Mod(1, 3)*y^2 + Mod(1, 3))]~ ? polrootsmod(x^2 + Mod(1,3)) %4 = []~ ? liftall( polrootsmod(x^2 + Mod(Mod(1,3),y^2+1)) ) %5 = [y, 2*y]~ ? t = ffgen(y^2+Mod(1,3)); polrootsmod(x^2 + t^0) %6 = [y, 2*y]~ @eprog