On Tue, Mar 17, 2009 at 2:37 AM, Simon King <k...@mathematik.uni-jena.de> wrote: > > Dear developers, > > I implemented "Symmetric Polynomial Rings" -- these are polynomial > rings with countably many variables plus a permutation action on the > variables. Now I'd like to implement the algorithms of Aschenbrenner > and Hillar for computing Gröbner bases of Symmetric Ideals (i.e., > ideals that are set-wise fixed by the permutation action). > > I guess that my class ``SymmetricIdeal`` should inherit from > ``Ideal_generic``. > > ``Ideal_generic`` requires that the underlying ring R has the property > is_CommutativeRing(R), which just checks that R is an instance of > ``CommutativeRing``.
No it doesn't. > In my applications, the Symmetric Polynomial > Rings will be commutative, so, I could indeed inherit from > CommutativeRing. > > Nevertheless, out of curiosity: Why is there this restriction to the > commutative case? There isn't. Seriously -- the file ideal.py has only one use of is_CommutativeRing and that is in the Ideal function. But you can perfectly well derive from the Ideal_generic class without the ring being commutative. You just can't use the ideal function, and you have to overload the ideal method in your ring. That is of course annoying. Somebody should open a trac ticket... Another problem is that Ideal_generic derives from MonoidElement, and as I noticed tonight when implementing a non-commutative ideal class for quaternion algebras, ideals in a fixed order in a quaternion algebra aren't closed under multiplication! I made this last issue: http://trac.sagemath.org/sage_trac/ticket/5547 -- William > > I mean, there are non-commutative Gröbner bases -- wouldn't it be > better to deal with commutativity only in the classes that inherit > from Ideal_generic, rather than in Ideal_generic itself? Being in a > commutative ring is not a generic property of ideals. > > Cheers, > Simon > > > -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---