Hi sage-supporters! I think Jeff's question below deserves an answer (and I don't know an answer myself).
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 <[email protected]> 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 --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
