#13724: Improved support for relabelled Cartan types
----------------------------------------------------+-----------------------
Reporter: JesusTorrado | Owner: joyner
Type: defect | Status:
needs_review
Priority: minor | Milestone: sage-5.10
Component: combinatorics | Resolution:
Keywords: CartanType relabel | Work issues:
Report Upstream: N/A | Reviewers: Travis
Scrimshaw
Authors: Nicolas M. ThiƩry, Jesus Torrado | Merged in:
Dependencies: #4327 | Stopgaps:
----------------------------------------------------+-----------------------
Changes (by nthiery):
* status: needs_work => needs_review
* work_issues: Handling type F4 dual by relabelling =>
Old description:
> Currently, relabelled Cartan types lack some methods such as
> cartan_matrix():
>
> {{{
> sage: A3 = CartanType("A3")
> sage: A3.cartan_matrix()
> [ 2 -1 0]
> [-1 2 -1]
> [ 0 -1 2]
> sage: A3r = A3.relabel({1:2,2:3,3:1})
> sage: A3r.cartan_matrix()
> ...
> AttributeError: 'CartanType' object has no attribute 'cartan_matrix'
> }}}
>
> Here is a similar issue reported by Mark Shimozono:
> {{{
> sage: ct = CartanType(["D",4,3]).classical(); ct
> ['G', 2]^* relabelled by {1: 2, 2: 1}
> sage: ct.symmetrizer()
> Traceback (most recent call last)
> ...
> AttributeError: 'CartanType' object has no attribute 'symmetrizer'
> }}}
>
> The attached patch fixes this issue, and analogue ones for dual cartan
> types, by adding the appropriate abstract classes to those cartan
> types, depending on the abstract classes of the original cartan type.
>
> At this occasion, it also implements the ambient space for relabelled
> cartan types.
>
> Related discussion in sage-combinat-devel:
> https://groups.google.com/forum/?fromgroups=#!topic/sage-combinat-devel
> /On-VfvxjeDk
>
> There currently is a syntactic dependency upon #4327. It could be
> possibly be lifted but at a cost. I'd rather have #4327 be reviewed and
> merged :-)
New description:
This ticket implements features that were missing for relabelled
Cartan types and dual cartan types::
{{{
sage: A3 = CartanType("A3")
sage: A3.cartan_matrix()
[ 2 -1 0]
[-1 2 -1]
[ 0 -1 2]
sage: A3r = A3.relabel({1:2,2:3,3:1})
sage: A3r.cartan_matrix()
...
AttributeError: 'CartanType' object has no attribute 'cartan_matrix'
}}}
Here is a similar issue reported by Mark Shimozono:
{{{
sage: ct = CartanType(["D",4,3]).classical(); ct
['G', 2]^* relabelled by {1: 2, 2: 1}
sage: ct.symmetrizer()
Traceback (most recent call last)
...
AttributeError: 'CartanType' object has no attribute 'symmetrizer'
}}}
It does so by adding the appropriate abstract classes to those cartan
types, depending on the abstract classes of the original cartan type.
At this occasion, it also implements the ambient space for relabelled
Cartan types, and implements the dual of F4 and G2 as relabelled
Cartan types. This fixes missing features for those like:
{{{
sage: ct = CartanType(["G",2]).dual()
sage: ct.affine()
AttributeError: 'CartanType_with_superclass' object has no attribute
'affine'
}}}
WARNING: due to the above change, the ambient space for type G2^* and
F4^* is now constructed by relabelling those for G2 and F4 instead of
taking the dual. The end result is isomorphic but not equal to the
original one. This shows up in plot pictures. Computations should run
as before, except in the (hopefully unlikely case) one is writing
input weights for type G2^* or F4^* as elements of those ambient
spaces.
For safety, this ticket also turns on by default the recently added
global option ``latex_relabel`` for Cartan types.
Related discussion in sage-combinat-devel:
https://groups.google.com/forum/?fromgroups=#!topic/sage-combinat-devel
/On-VfvxjeDk
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13724#comment:8>
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.