#14261: Iwahori-Hecke algebra with several bases
-------------------------------------+-------------------------------------
Reporter: brant | Owner: sage-combinat
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-5.13
Component: combinatorics | Resolution:
Keywords: Iwahori Hecke | Merged in:
algebra | Reviewers: Andrew Mathas, Brant
Authors: Brant Jones, | Jones, Travis Scrimshaw
Travis Scrimshaw, Andrew Mathas | Work issues:
Report Upstream: N/A | Commit:
Branch: | Stopgaps:
Dependencies: #13735 #14014 |
#14678 #14516 |
-------------------------------------+-------------------------------------
Comment (by andrew.mathas):
Hi Travis,
I think that we disagree, which is fine:) However, this means that we need
some one (Anne, Brant, Nicolas, ...) to express an opinion so that we can
reach a decision!
Replying to [comment:55 tscrim]:
>
> There are many instances of internal/helper classes being in the sage
documentation.
I am sure that there are but the main reason that I gave against doing
this is that thie generic Hecke algebra class is very likely to confuse
people and encourage them to make mistakes. The term "generic Hecke
algebra" is quite common in the literature but I hve NEVER seen it refer
to this particular choice of parameters and base ring.
> You've chosen a convention for the generic Hecke algebra that is
convenient for the code here and is clearly documented. Being much closer
to naming conventions seems better to me and less likely to cause
confusion for anyone who wants/needs the generic code.
As some one who has worked with these algebras and with Kazhdan-Lusztig
bases quite a lot, I doubt very much that any one will want to work with
this particular choice of parameters. As far as I am aware this particular
choice of parameters, and in fact this description of two variable KL-
bases, does not appear in the literature. Because of this I do not think
that any one will want or need this particular variation of "generic
code".
On the other hand, people will almost certainly want to work with the
"standard" generic Hecke algebras (with parameters `(q^2,-1)` or
`(q,q^-1)`) and it is quite likely that they will think that this class
provides that. I agee that the documentation explains what this class
actually does, but not everyone reads the manual cover-to-cover.
To my mind making this class public is a lose-lose situation: we provide
something that most people won't want and we risk confusing them because
it ounds like, but isn't somrthing they do want. I don't see any gains.
> It is only used in `QSym` and `NCSF` as far as I known, and they are
tied together. In particular, it is not used for symmetric functions.
However I was not importing it into the global namespace, but instead it
was just in the module's namespace. How about a middle ground of calling
it `_BasesCategory` or something else where it is private?
I didn't say we were poluting the global namespace, just the namespace:)
Whether it is private or public it's still a name that must be reserved in
sage and "maintained" further down the track - just like the current patch
needs to depreciate, and define pickle override for,
`IwahoriHeckeAlgebraT`.
I'm against creating the category class as a separate class - I don't care
what it is called:) - so I don't see this as midde ground. Given that you
are arguing for documenting the generic Hecke algebra code I am surprised
that you're uggesting that this could be a private (and hence
undocumented) class.
Ultimately, I don't see any benefits in making the class separate, but I
htink it is semantcally better to define it as a subclass and, more
importantly, doing this makes the code cleaner.
Anyways, I have stated my arguments, so I am happy to let some one wiser
decide.
Andrew
--
Ticket URL: <http://trac.sagemath.org/ticket/14261#comment:56>
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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.