#20469: Implement Ariki-Koike algebras
-------------------------------------+-------------------------------------
       Reporter:  tscrim             |        Owner:  sage-combinat
           Type:  enhancement        |       Status:  new
       Priority:  major              |    Milestone:  sage-7.3
      Component:  algebra            |   Resolution:
       Keywords:  hecke algebra,     |    Merged in:
  complex reflection group, ariki-   |
  koike                              |
        Authors:  Travis Scrimshaw,  |    Reviewers:  Andrew Mathas, Travis
  Andrew Mathas                      |  Scrimshaw
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  public/algebras/ariki_koike_algebras-20469|  
e9b6a594ae1e089b51b37081f35743402447a960
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by {'newvalue': u'Travis Scrimshaw, Andrew Mathas', 'oldvalue': 
u'Travis Scrimshaw'}):

 * cc: tscrim (added)
 * reviewer:   => Andrew Mathas, Travis Scrimshaw
 * author:  Travis Scrimshaw => Travis Scrimshaw, Andrew Mathas
 * milestone:  sage-7.2 => sage-7.3


Comment:

 Replying to [comment:8 andrew.mathas]:
 > I have been through your code and fixed the recursion issue. It was
 actually an infinite recursion loop. The problem was that as the terms in
 the products `....T_i L_k...` were being put into standard form "letter-
 by-letter" (so changing the previous expression to `\sum ... L_m T_j...`)
 you sometimes ended up going around in circles by pushing a `T_i` past an
 `L_k` that then created a large power of some `L_m` that, when reduced,
 got you back to the previous situation. I have rewritten the
 `product_on_basis` code to avoid this, so I'm afraid that I've replaced
 this section of your code. The product code is now less recursive with
 terms largely being rewritten into standard form "in place".

 Thank you very much for looking through this code and fixing the
 problem(s). Sorry it ended up being a bit of a mess. I'm very happy you
 were able to improve it.

 > On top of this I proved a formula for the expansion of `L_k^m` that,
 embarrassingly, I later found in one of my papers. This was my first guess
 for improving the multiplication issues but once I'd made this change I
 discovered the recursion loop. The other main change is that I rescaled
 `L_k` to `q**{1-k}*L_k`, in [AK] notation, because this renormalisation is
 what is normally used in the literature as it works better with the
 combinatorics.

 I probably could have looked harder in the literature. I'm okay with the
 renormalization (especially since I have more of an interest in the
 combinatorics too). I just kept the [AK] normalization since I was using
 that as my reference and didn't trust myself to correctly handle the
 renormalization.

 > I have made a start at adding the documentation.  As a result of the
 rescaling of the `L_k`'s quite a lot of doc-tests are currently failing,
 being off by the corresponding power of `q`. I am happy to fix these. I
 left them in only so that you can compare if you wish. I am also happy to
 fill out the documentation as I know this area quite well.

 I would appreciate all of your expertise in writing the documentation. I
 can go over it and do any necessary formatting. I can also fix the
 doctests afterwards.

 > Other issues that we could think about are:
 > - whether to allow the two parameter version: `(T_i-q1)(T_i+q2)=0`.
 Probably quite painful as all of the product formulas will change

 I think it is good to try and be as general as possible when it is not
 much work. I agree, I think it would be very annoying to switch because we
 would have to redo all of the product formulas (at least, I would have to
 put some thought on how to do this to make everything consistent). So, I
 think this is plenty good for now.

 > - whether to implement the degenerate algebras. This might be easy as it
 could be done as a derived class with slightly different `_product_LTwTv`,
 `_product_Tw_L`, and `_Li_power` methods

 > - I think having a slightly shorter `_repr_` string would be a good
 idea: `Ariki-Koike algebra of rank 5 with parameters q,u0,u2,u3` is enough
 I think

 I think we should give the base ring to better differentiate the
 instances. Plus this is consistent with what we do elsewhere in Sage. One
 slight issue is the default ring is a polynomial ring over a polynomial
 ring, and it is this that makes the repr very long. I decided to do this
 for the default ring so the q's would be grouped together.

 > - implementing other bases? This is probably best left for another
 ticket...especially as I think that the realisations code currently
 requires that the same indexing sets be used(?)

 I agree; this should be another ticket unless you have code ready. The
 realizations code itself does not require the same indexing set, but you
 have to do a bit more with the morphisms. For an example, see the descent
 algebra (`combinat/descent_algebra.py`).

 > Any way, I think that the code now works. Please have a look and let me
 know what you think. Happy to be a reviewer or coauthor on the ticket as
 you think best.

 I will play around with in shortly. We will both be both coauthors and
 reviewers (yet again :P).

 Replying to [comment:9 andrew.mathas]:
 > ps. With the degenerate algebras, the other option would be to use the
 Hu-Mathas presentation for the "main" algebra (this combines the Ariki-
 Koike algebras with `q\ne1` and the degenerate AK algebras (when `q=1`)
 and then implement the `q=1` version of the Ariki-Koike algebras as the
 "extra" case. I am biased, but personally I think that makes more sense
 because the Hu-M. presentation fits with the KLR categorifiction of
 integrable highest weight modules perfectly whereas the Ariki-Koike
 presentation does not.

 I'm +1 for getting things closer to the KLR algebra (something that I hope
 to eventually get into Sage at some point). Otherwise I don't have an
 opinion on which presentation we use. How much would have to be changed in
 order to move to the Hu-Mathas presentation?

--
Ticket URL: <https://trac.sagemath.org/ticket/20469#comment:10>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to