polylib::decompose
--
functional decomposition of a polynomialpolylib::decompose
(p,x)
returns a sequence
of polynomials q1, ..., qn such that
p(x) = q1(...qn(x) ...).
polylib::decompose(p)
polylib::decompose(p, x)
p |
- | polynomial or polynomial expression |
x |
- | one of the indeterminates of the polynomial
p |
If a decomposition is possible, polylib::decompose
returns it as an expression sequence, each element being of the same
type as the input. If no decomposition is possible, the input is
returned.
p
In the simplest case, an univariate polynomial is decomposed with respect to its only variable:
>> polylib::decompose(x^4+x^2+1)
2 2 x + x + 1, x
If there are several variables, a main variable must be specified:
>> polylib::decompose(y*x^4+y,y);
4 y + x y
polylib::decompose
can be found in Barton and
Zippel, Polynomial decomposition algorithms, Journal of Symbolic
Computation, 1 (1985), pp. 159-168.decompose