``_rmul_`` and ``_lmul_`` (it's the module element (i.e., ``self``) on the right or left respectively), and (somewhat unfortunately) I think you need to also inherit from ModuleElement (or copy the ``__mul__`` method).
Or is it preferred to use ``_acted_upon_`` (see in CombinatorialFreeModule)? Best, Travis On Thursday, November 6, 2014 1:04:30 AM UTC-8, Andrew wrote: > > Dear Bruce and Travis, > > Thanks for your suggestions. I realised after reading your posts that a > much better way to construct my coefficient ring is to start with a > polynomial ring over Q(q) with n+1 indeterminants and then quotient out by > a suitable ideal. This constructs the ring directly and the factorisation > properties that I wanted are now automatic: > > sage: SeminormalRepresentation([2,2]).tau_character(1,2) > 1/q*I*r3 > > > Just a short answer for now: it's been in the TODO list for a while to >> have representation matrices for the Hecke algebra (there might be a >> ticket about this, and almost certainly a note in the road map). So >> progress in this direction is surely welcome, especially if this can >> be done uniformly for symmetric groups versus hecke algebras and type >> A versus generic type. >> > > Yes, you're right, this is almost certainly on the roadmap. In any case, > as Nicolas and Travis are both in favour I'll try and make time to properly > wrap and prettify the code, create a ticket and push it to git and trac or > comments and review. I'll first have to think a little harder about the > best interface.I will probably end up implementing the seminormal > representations simultaneously for the symmetric groups and, more > generally, he Hecke algebras of type A, B, ..., G(r,1,n) as in the end thee > are all the same. > > >> By the way, this could be an occasion to make those methods of the >> symmetric group / hecke algebra. Something like: >> >> sage: SymmetricGroup(5).representation([3,2], "seminormal") >> >> > Yes this is a good idea, but now there are some questions. > > 1. Left modules or right modules, or both? (My current methods you can > interpret as either.) > 2. What is the best syntax for the action? > > The first question is not a big deal. For the second the following is > probably the most natural answer:: > sage: A=SymmetricGroupAlgebra(QQ,3) > sage: rep=SeminormalRepresentation([2,1]) > sage: a=A.an_element(); a > 2*[1, 2, 3] + 2*[1, 3, 2] + 3*[2, 1, 3] > sage: r=rep.an_element(); r > 2*f(1,2/3) + 2*f(1,3/2) > sage: a*r # left action > ??? > > > Using a*r for the left action, and r*a for the right action, seems to be > the natural syntax. Is there already a mechanism in place for doing this? I > assume that there is, but I don't know it. Can some one point me in the > right direction? > Andrew > -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-combinat-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-combinat-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-combinat-devel. For more options, visit https://groups.google.com/d/optout.