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
-~----------~----~----~----~------~----~------~--~---

Reply via email to