#8392: Implement RSK for generalized permutations
-------------------------------------+-------------------------------------
Reporter: nborie | Owner: tscrim
Type: enhancement | Status: closed
Priority: major | Milestone: sage-5.11
Component: combinatorics | Resolution: fixed
Keywords: permutation, | Merged in: sage-5.11.beta0
check, days38, days45 | Reviewers: Jeff Ferreira, Darij
Authors: Travis Scrimshaw | Grinberg
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: #6495, #13605, | Stopgaps:
#8703, #14459, #14319, #14302 |
-------------------------------------+-------------------------------------
Comment (by aschilling):
Hi Travis,
Replying to [comment:41 tscrim]:
> If we wanted to be fully OOP, then there needs to be a class of
something like `RSKUsable` which has an abstract method `RSK()` where each
type of object implements it's own version of RSK and `RSKUsable` would
implement the row-insertion procedure. The problem with this is that we
want to be able to handle (pairs of) lists, which we can't modify its
class structure and I don't want to have to wrap a list as a word, and I
also don't want to clutter up the MRO. Another reason why this is better
as a function is most of the operation is independent of the type of
object being passed in; all it does is it converts it into a pair of lists
of the same size. Thus it provides a uniform interface for objects, and
the fact that only permutations has such a method conflicts with this, so
I think it is worthwhile to deprecate this.
If a user makes a permutation p, it would be natural to try p.<tab
completion> to see all methods. Currently p.robinson_schensted() works and
it is the most natural entry point. There is no reason to deprecate this
method, it can just be a one-line function returning RSK(p).
> > - Also, I disagree with importing {{{RSK, RSK_inverse,
RobinsonSchenstedKnuth, RobinsonSchenstedKnuth_inverse}}} into the global
namespace when one object could easily handle all of these.
>
> Then what is your proposed interface?
Couldn't you just use options for the inverse?
> > The ability of doing RSK and EG is a great feature, but the
documentation isn't very clear. What is [3,3,2] mean with EG insertion?
Since it isn't a reduced word, how should this be interpreted?
>
> The documentation could use some expansion.
Right now it is not clear at all that the input to the Edelman-Greene
correspondence are reduced words. Also, if you want to put all insertion
algorithms in one method, it might be better to call it
insertion_algorithms rather than RSK since RSK is just one of them and I
as a user would not think that Edelman-Greene would be under RSK. Or you
should have Edelman-Greene as a different method. Plus the documentation
definitely needs more details! At least you need to explain what the input
is with the various options.
Best,
Anne
--
Ticket URL: <http://trac.sagemath.org/ticket/8392#comment:42>
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.