Hi, Some remarks and questions...
I guess the order you want is 'degrevlex' as Sage's default order for multivariate polynomial ring and as the name of your functions suggest. Am I wrong ? At present, I did not modify a lot of things. A few signs, replaced seq[0] by the smallest item of the sequence sorted with the printing order. I guess we want symbolic variables to be bigger than numerics. So I changed the sign for different typeid's. What is your opinion about symbolic exponents ? (If I am not wrong, in mul object, they are encapsulated in power object so it counts for 1. So total_degree(a^b*x) == 2.) In the compare_mul_power, you decided to compare the exponent of the power object to the one of the smallest item (which could in fact be the same power object) of the mul object if it is symbolic. So 3*x^y will be smaller than x^y (considering that y > 1). That is not a "real" problem because 3*x^y+x^y will be simplified into 4*x^y. But we also get that a^b > a^b*x (if b > 1) with the current strategy and it prints a^b + a^b*x... Shouldn't we consider the degree of the power is 1, so at least the above case is solved. Or do something more complicated comparing exponents... I do not understand the comment of William Stein about symbols ordering. When a polynomial ring is created in Sage, the variables are ordered according to the order they were "created", i.e. PR.<x,y> = PolynomialRing(QQ) will result in x > y and PR.<y,x> = PolynomialRing(QQ) in y > x -- 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 URL: http://www.sagemath.org