11.5.4 Building a polynomial from its evaluation
The genpoly command
finds a polynomial which evaluates to a given polynomial.
-
genpoly takes three arguments:
-
P, a polynomial with n−1 variables.
- b, an integer.
- x, the name of a variable.
- genpoly(P,b,x)
returns the polynomial Q with n variables (the n−1 variables in
P and the variable x) such that the
coefficients of Q are in the interval (−b/2,b/2] and Q|x=b=
P.
In other words, P is written in base b but using the
convention that the Euclidean remainder belongs to (−b/2,b/2]
(this convention is also known as s-mod representation).
Examples
Indeed 61 divided by 6 is 10 with remainder 1, then 10 divided by 6 is 2
with remainder −2 (instead of the usual quotient 1 and remainder 4 out of bounds),
61=2· 62−2· 6+1.
Indeed, 5=6−1.
Indeed, 7=6+1.
Indeed, xy+x+y−1=y(x+1)+(x−1).
Indeed, xy+xz+y−z=y(x+1)+z(x−1).