Ask Your Question

Polynomial decomposition

asked 2014-10-08 15:33:16 +0200

Jernej gravatar image

We say that a polynomial $f$ is decomposable if there are (not linear) polynomials $g,h$ such that $f = g \circ h.$

Is there a function in Sage doing this?

As far as I can see the function is present in Mathematica under the name Decompose

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-10-08 17:01:15 +0200

tmonteil gravatar image

Unfortunately i can not see any method about this for polynomials, but you can use sympy shich is shipped with Sage, though not imported by default (nor completely interfaced):

sage: R.<x> = PolynomialRing(QQ)
sage: f = 27*x^4 - 27/5*x^3 + 1737/100*x^2 - 171/100*x + 37/10
sage: from sympy import decompose
 sage: decompose(f)
[27*x**2 + 171*x/10 + 37/10, x**2 - x/10]
sage: a,b = _
sage: a
27*x**2 + 171*x/10 + 37/10
sage: type(a)
<class 'sympy.core.add.Add'>
sage: a = R(SR(a))
sage: b = R(SR(b))
sage: a
27*x^2 + 171/10*x + 37/10
sage: a.parent()
Univariate Polynomial Ring in x over Rational Field
sage: a(b) == f
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2014-10-08 15:33:16 +0200

Seen: 482 times

Last updated: Oct 08 '14