On Mar 19, 2007, at 9:58 AM, Mike Hansen wrote:

> I guess this is mostly directed toward David Joyner, but if anyone
> else knows, feel free to chime in.  I've been trying to figure out the
> best way to do calculations in a group ring or group algebra.  I've
> checked around for GAP packages, but they seem to be pretty limited
> and very awkward to use.  Is there a nice way that I'm missing for
> dealing with these in GAP?
>
> I ended up writing my own hack for a group algebra for some recent
> work and would be interested in writing more complete code for it over
> the summer.  I would like to be able to do (almost) all of the
> calculations below in SAGE:
> http://magma.maths.usyd.edu.au/magma/htmlhelp/part10.htm

Here's my long-term take on this question (anyone else please feel  
free to chime in and agree/disagree).

There should really be a GroupAlgebra class, derived from Algebra (in  
algebra.py). Currently the functionality of Algebra, and its  
subclasses, is quite limited. There's some code for quarternion  
algebras, but it's not too efficient yet. I imagine that a  
GroupAlgebra would have a base ring R, and an associated group G. If  
the group G was finite, one could represent elements by vectors of  
elements of R; if G was infinite (or just really big), perhaps one  
would want a sparse representation. If G is abelian, and R  
commutative, special measures could be taken to speed up the  
arithmetic. (Does anyone do group algebras over non-commutative  
rings....? I don't know...). There would be coercions from R into R 
[G] and also from G into R[G] (assuming R is unital). There would be  
a specialisation for the case that R is a field. Then the harder  
stuff: decomposition into irreducibles, etc, which actually involves  
writing tricky code, or perhaps this has already been written.... I  
have no idea, I'm not a representation theory sort of guy.

One could probably already define these things in SAGE as a quotient  
of a free algebra, but I bet it wouldn't be too efficient that way,  
and not very useful.

So I guess we eventually want to see this:

sage: G = SymmetricGroup(3)
sage: ZZ[G]
  Group Algebra of Symmetric group of order 3! as a permutation group  
over Integer Ring

David


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to