polylib::decompose

Functional decomposition of a polynomial

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.

Syntax

polylib::decompose(p)
polylib::decompose(p, x)

Description

polylib::decompose(p,x) returns a sequence of polynomials q1, …, qn such that p(x) = q1(… qn(x) …).

The second argument may be left out if the polynomial is univariate, as in Example 1.

If a polynomial has several decompositions, it is not specified which of them is returned.

Examples

Example 1

In the simplest case, an univariate polynomial is decomposed with respect to its only variable:

polylib::decompose(x^4+x^2+1)

Example 2

If there are several variables, a main variable must be specified:

polylib::decompose(y*x^4+y,y);

Parameters

p

Polynomial or polynomial expression

x

One of the indeterminates of the polynomial p

Return Values

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.

Overloaded By

p

References

A description of the algorithm behind polylib::decompose can be found in Barton and Zippel, Polynomial decomposition algorithms, Journal of Symbolic Computation, 1 (1985), pp. 159–168.

See Also

MuPAD Functions

Was this topic helpful?