> On Friday, 7 November 2014 03:56:16 UTC+11, Nicolas M. Thiery wrote: > >> >> This might be the occasion to add a ``cartan type'' for G(r,1,n). >> > > Implementing these algebras properly would be painful...however, > implementing their action on a representation in terms of the natural > generators is not, which I guess is what you are suggesting. >
I've come across a similar situation with quantum group representations (where implementing the actual algebra is difficult compared to implementing the representations and the action of natural generators). What I ended up decided was best was have methods corresponding to each type of generator, and so if/when the algebra is implemented, the action would call the corresponding method. I'm very open to a discussion about this. > > I have realised that attaching the seminormal representations to the Hecke > algebras creates a few additional headaches that are associated with the > choice of base ring and the choice of parameters of the Iwahori-Hecke > algebra. For example, the seminormal representations are naturally defined > over Q(q), but the Hecke algebra defined over Z[q,q^-1] also acts on them > since this algebra embeds in the algebra over Q(q). Technically, however, > the seminormal representation is not a representation for the Hecke algebra > defined over Z[q,q^-1]. > > The question here is whether we should follow the strict mathematical > definitions and only allow the Hecke algebras with exactly the same base > ring to act or should we be more flexible? The former is easier in terms > of coding whereas the latter is more useful. > I think it depends on how you implement the action; where you could perhaps just do the action of a term generator by generator and then convert the coefficient into Q(q) and scale the result. Although (I believe) the coercion framework would naturally do a pushout construction of the Hecke algera over Q(q) and then do the action. I guess what I'm saying if you try to make this very mathematically strict, you will likely have a fight with the coercion system and it will be different than many other parts of Sage. > > Then there are other annoyances in that the seminormal representations for > the algebras with different quadratic relations, for example > $(T_r-q)(T_r+1)=0$, $(T_r-q)(T_r+q^{-1})=0$ or $(T_r-q)(T_r+v)=0$, are all > different and, of course, there are several different flavours of > seminormal representations. Any suggestions on what we should try and > support here would be appreciated. > The biggest thing (to me) is any convention choices that are made are well-documented. What about the relations used for the IwahoriHeckeAlgebra_nonstandard or some other "idiosyncratic (but convenient)" relations? > > Another thought that occurs to me, which I don't promise to follow through > on, is that I could use the seminormal representation to define Specht > modules for these algebras over an arbitrary ring. It is possible to do > this using some specialisation tricks. I am not sure how efficient this > would be but I suspect that it would be at least as good as my > implementation of the Murphy basis in chevie > <http://webusers.imj-prg.fr/~jean.michel/chevie/index.html> that I wrote > for the Hecke algebras of type A. > > In thinking about this it seems to me that currently there is no framework > in sage for dealing with module that has more than one "natural" basis. Is > this right? Of course, it is possible to define several different > CombinatoriaFreeModules and coercions between them. > As Anne said, combinat/descent_algebra.py, or the Iwahori-Hecke algebras. What you want to look (grep) for is "WithRealizations". > A final question: where should this code go? Currently the Iwahori-Hecke > algebras are defined in sage.algebras and the seminormal matrix > representations in sage.combinat. I think the best place might be to put > all of this code in a new directory sage.algebras.iwahoriheckeagebras/ > > I agree with Anne that iwahori_hecke_algebras is a better name for the subfolder as I can actually read that without getting cross-eyed. :P However I would say it depends on how many new files (python modules) you think you'll create. If it's only one or two, I think you can just put it in the algebras folder. Best, Travis -- 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.