Hi Simon, I think one should not take it for granted a polynomial ring is a graded ring. Of course, you can view a polynomial ring as a graded ring. But one work with a polynomial ring, perhaps more often, not as a graded ring.
With a polynomial in a polynomial ring not as a graded ring, you have methods degree(x), degrees(), total_degree(). In this context, degree() can be most naturally identified with total_degree(), that is the sum of the exponents of variables. Assigning weights (grading or (in your usage) degrees) to variables signifies you view the polynomial ring as a graded ring, namely weighted polynomial ring. In this context, degree() can be most naturally interpreted as a method giving the grading (weighted degree or (in your usage) degree). However, to avoid a confusion and for convenience, it may be safe to define weighted_degree() or grading() for this usage while keeping the usual behavior of degree(). If we take the assumption that using weighted monomial orders does not automatically induces weights (grading or (in your usage) degree) of variables, then the polynomial ring should not be regarded as a graded ring, and hence degree() should return the total degree, that is, the sum of exponents of the variables. I think the assumption is good for more flexibility. I hope Sage follows better policy even if it implies breaking compatibility with Singular. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org