On Thu, Aug 13, 2009 at 10:26 AM, Simon King<simon.k...@nuigalway.ie> wrote: > > Hi sage-supporters! > > I think Jeff's question below deserves an answer (and I don't know an > answer myself).
The answer is that Sage doesn't do anything interesting natively with multivariate factorization yet -- what functionality it has is actually implemented by calling Singular. This is an open area where somebody could do some great work and make a big impact in the open source math world, since really open source math software could greatly improve at multivariate polynomial factorization. -- William > Since it is still without a reply and disappeared from the screen, I > thought I bring it up again. I hope you don't mind. > > Cheers > Simon > > On Aug 10, 10:36 pm, Jeff <jeffpferre...@gmail.com> wrote: >> I am working in the area of non-symmetric Macdonald polynomials, >> specifically, I am trying to write a function that implements formula >> 7 of "A Combinatorial formula for nonsymmetric Macdonald Polynomials" >> by Haglund, Haiman, and Loehr. Currently, I am having difficulty >> factoring polynomials in sage. Here are some examples of what works >> and what doesn't work: >> >> Factoring in a polynomial ring over a polynomial ring fails in sage: >> >> sage: S.<q>=QQ[];S >> Univariate Polynomial Ring in q over Rational Field >> sage: R.<x0,x1>=S[];R >> Multivariate Polynomial Ring in x0, x1 over Univariate Polynomial Ring >> in q over Rational Field >> sage: f=(x0*x1+x1^2)/(x0+x1);f >> (x0*x1 + x1^2)/(x0 + x1) >> sage: f.factor() >> TypeError: no conversion of this ring to a Singular ring defined >> >> Factoring in a polynomial ring over a fraction field works with >> positive coefficients in sage: >> >> sage: S.<q> = QQ[]; S >> Univariate Polynomial Ring in q over Rational Field >> sage: S = FractionField(S); S >> Fraction Field of Univariate Polynomial Ring in q over Rational Field >> sage: R.<x0,x1> = S[]; R >> Multivariate Polynomial Ring in x0, x1 over Fraction Field of >> Univariate Polynomial Ring in q over Rational Field >> sage: f=(x0*x1+x1^2)/(x0+x1);f >> (x0*x1 + x1^2)/(x0 + x1) >> sage: f.factor() >> x1 >> >> But when negative coefficients are used, sage doesn't want to factor: >> >> sage: S.<q>=QQ[];S >> Univariate Polynomial Ring in q over Rational Field >> sage: S=FractionField(S);S >> Fraction Field of Univariate Polynomial Ring in q over Rational Field >> sage: R.<x0,x1>=S[];R >> Multivariate Polynomial Ring in x0, x1 over Fraction Field of >> Univariate Polynomial Ring in q over Rational Field >> sage: f=(-x0*x1+x1^2)/(-x0+x1);f >> (-x0*x1 + x1^2)/(-x0 + x1) >> sage: f.factor() >> TypeError: Cannot multiply (-1) * x1 * (x0 - x1) and (1/(-1)) * (x0 - >> x1)^-1 because they cannot be coerced into a common universe >> >> My desired result: I would like to be able to factor in polynomial >> rings over polynomial rings, like in example one above, regardless of >> coefficients. >> >> My question: Does anyone know of a quick and easy (I'm a newbie at >> sage) fix for these problems? And does anyone know if sage will have >> support for such factoring in a later version? >> >> Thanks for your help. >> Jeff > > > -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---