--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, and MATLAB
* owner: tbd => sage-combinat
* component: PLEASE CHANGE => combinatorics
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:1>
* keywords: tableaux => tableaux, days49
* dependencies: #11742 =>
Old description:
> A new class of weak and strong k-tableaux
New description:
A new class of weak k-tableaux
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:2>
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:3>
Comment (by zabrocki):
Strong tableaux was moved into ticket #14776
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:4>
* cc: npgallup (added)
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:5>
* status: new => needs_review
* reviewer: => Mike Zabrocki, Anne Schilling
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:6>
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:7>
* dependencies: => #14519
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:8>
Comment (by tscrim):
Hey Anne and Mike,
Thank you both for your work on this. However there are a few things I've
noticed while glancing over the patch:
- The inner bullet list on the `INPUT:` block for `WeakTableau` has one
too many spaces, so it is overly indented. It needs to line up as follows:
{{{
- item 1
- inner item a
- inner item b
- item 2
}}}
- `k_charge_I()` and `k_charge_J()` have the same docstring. In fact, it
might be worthwhile to actually describe the algorithm.
- I think it is worthwhile to have one abstract base class for all
`WeakTableau` elements which has it's abstract methods defined. For
example, you can also consolidate all of the more detailed explanations of
the methods in there and link to them in their concrete classes. In
particular, it because an easier/more straightforward to check to see if
it's a `WeakTableau` and allow you an easy way to compare `__eq__` between
different representations of a weak tableau.
- In the same vein, could we make it so that we can convert between
different representations with parents? I.e. I'd like to do the following:
{{{
sage: T = WeakTableaux(3, [5,2,1], [1,1,1,1,1,1])
sage: T2 = WeakTableaux(3, [3,2,1], [1,1,1,1,1,1],
representation='bounded')
sage: T2(T[0])
}}}
- Could we have a method like `T.representation('bounded')` which returns
the corresponding parent using a different representation. Same on the
elements (which of course would call the respective `to_*` method, but it
would make it consistent IMO)?
- I don't see an easy way to go to a factorized permutation from the other
2 representations. Right now it seems like I have to call
{{{
WeakTableau_factorized_permutation.from_core_tableau().
}}}
- I think the `from_*` (and quite possibly the `to_*`) methods maybe
should be available in the parents rather than as classmethods for the
element classes.
- The `.. SEEALSO::` block in `k_charge()` is not formatting correctly, so
it doesn't link the methods.
- Could you use the {{{:arxiv:`1234.5678`}}} autolink?
- Remove ``self`` as an input (ex. in `list_of_standard_cells()`)
Ack, that ended up being a longer list than I expected...
Best,[[BR]]
Travis
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:9>
* status: needs_review => needs_work
* reviewer: Mike Zabrocki, Anne Schilling => Mike Zabrocki
* author: Anne Schilling, Mike Zabrocki => Anne Schilling
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:10>
Comment (by aschilling):
Hi Travis and Mike,
Thank you for your review comments. I incorporated them all, except for
the input of the inner shape yet and the comments below:
> - In the same vein, could we make it so that we can convert between
different representations with parents? I.e. I'd like to do the following:
> {{{
> sage: T = WeakTableaux(3, [5,2,1], [1,1,1,1,1,1])
> sage: T2 = WeakTableaux(3, [3,2,1], [1,1,1,1,1,1],
representation='bounded')
> sage: T2(T[0])
> }}}
We discussed coercing during design discussions at Sage Days 49 and
currently decided against it. For now, it is easy to go between the
various representations with the representation method. If we really need
this feature, we can always add coercion later.
> - I think the `from_*` (and quite possibly the `to_*`) methods maybe
should be available in the parents rather than as classmethods for the
element classes.
This is what Nicolas suggested to me, so I will leave it as is.
Best,
Anne
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:11>
* status: needs_work => needs_review
* reviewer: Mike Zabrocki => Mike Zabrocki, Travis Scrimshaw
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:12>
Comment (by aschilling):
Hi Mike,
Thanks for your review patch! I incorporated the changes. The new version
now take as input
{{{
WeakTableaux(k, shape, weight, representation = 'core')
}}}
where shape is either a shape or a tuple of shapes in the skew case.
I hope everything looks ok now!
Anne
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:13>
* dependencies: #14519 => #14519, #14101
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:14>
Comment (by aschilling):
Hi Mike,
The updated patch incorporated all changes we discussed (by e-mail). It
- checks that the weight, shape, etc of the element agrees with its parent
- checks for semistandardness
- implements latex and pretty printing methods
- makes some changes Nicolas suggested
The semistandard checks and pretty printing rely on #14101, so I put this
as a dependency.
Best,
Anne
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12250#comment:15>