First time here? Check out the FAQ!

Ask Your Question
0

How do you factor Schubert Polynomials in Sage?

asked 12 years ago

mjoyce gravatar image

I am interested in factoring (sums of) Schubert polynomials using Sage (which uses Singular). Here's my input attempt:

> X = SchubertPolynomialRing(QQ)

> f = X([5,4,2,6,1,3]).expand(); f

> f.factor()

However, while the second line gives a correct output, x0^4*x1^3*x2^2*x3 + x0^4*x1^3*x2*x3^2, when I try to factor this output, I get the following error message: "NotImplementedError: Factorization of multivariate polynomials over non-fields is not implemented."

I don't know how to get Sage to recognize a SchubertPolynomialRing as being over a field. Any suggestions?

Preview: (hide)

1 Answer

Sort by » oldest newest most voted
1

answered 12 years ago

this post is marked as community wiki

This post is a wiki. Anyone with karma >750 is welcome to improve it.

This is because the defaut base ring is ZZ and not QQ.

sage: X = SchubertPolynomialRing(QQ)
sage: f = X([5,4,2,6,1,3]).expand(); f
x0^4*x1^3*x2^2*x3 + x0^4*x1^3*x2*x3^2
sage: f.parent()
Multivariate Polynomial Ring in x0, x1, x2, x3, x4, x5 over Integer Ring
sage: f.change_ring(QQ)
x0^4*x1^3*x2^2*x3 + x0^4*x1^3*x2*x3^2
sage: f.change_ring(QQ).factor()
x3 * x2 * (x2 + x3) * x1^3 * x0^4
sage:
Preview: (hide)
link

Comments

Thank you -- this helped a lot!

mjoyce gravatar imagemjoyce ( 11 years ago )

Your Answer

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

Add Answer

Question Tools

Stats

Asked: 12 years ago

Seen: 976 times

Last updated: Mar 22 '13