#18034: symmetric_form weirdness for affine roots
------------------------------------------+------------------------
       Reporter:  bump                    |        Owner:
           Type:  defect                  |       Status:  new
       Priority:  major                   |    Milestone:  sage-6.6
      Component:  PLEASE CHANGE           |   Resolution:
       Keywords:  days64, symmetric_form  |    Merged in:
        Authors:                          |    Reviewers:
Report Upstream:  N/A                     |  Work issues:
         Branch:                          |       Commit:
   Dependencies:                          |     Stopgaps:
------------------------------------------+------------------------
Description changed by bump:

Old description:

> Affine weight lattices have a method called symmetric_form which
> implements the symmetric bilinear form on the weight lattice (or weight
> space) used extensively in representation theory. See Kac, *Infinite-
> dimensional Lie algebras* Chapter 2. It is an inner product, that is, a
> pairing of the space with itself. Here are some examples where it doesn't
> work right unless you coerce the root into the weight lattice.
>
> {{{
> sage: RS = RootSystem(['A',2,1])
> sage: P = RS.weight_lattice(extended=true)
> sage: Q = RS.root_lattice()
> sage: alpha = Q.simple_roots()
> sage: alphacheck = Q.simple_coroots()
> sage: omega = P.fundamental_weights()
> sage: [alpha[1].symmetric_form(omega[i]) for i in [0,1,2]]
> [-1, 2, -1]
> sage: [alpha[1].symmetric_form(alphacheck[i]) for i in [0,1,2]]
> [-1, 2, -1]
> sage: [P(alpha[1]).symmetric_form(alphacheck[i]) for i in [0,1,2]]
> [0, 1, 0]
> sage: [P(alpha[1]).symmetric_form(omega[i]) for i in [0,1,2]]
> [0, 1, 0]
> }}}
>
> The first three answers are (in my opinion) wrong for the following
> reasons.
> The last answer is correct. The first one is therefore wrong since
> the symmetric form should not depend on whether alpha is regarded as
> an element of Q or of P. The second two pairings should be undefined
> since
> alphacheck cannot be coerced into P.

New description:

 Affine weight lattices have a method called symmetric_form which
 implements the symmetric bilinear form on the weight lattice (or weight
 space) used extensively in representation theory. See Kac, *Infinite-
 dimensional Lie algebras* Chapter 2. It is an inner product, that is, a
 pairing of the space with itself. Here are some examples where it doesn't
 work right unless you coerce the root into the weight lattice.

 {{{
 sage: RS = RootSystem(['A',2,1])
 sage: P = RS.weight_lattice(extended=true)
 sage: Q = RS.root_lattice()
 sage: alpha = Q.simple_roots()
 sage: alphacheck = Q.simple_coroots()
 sage: omega = P.fundamental_weights()
 sage: [alpha[1].symmetric_form(omega[i]) for i in [0,1,2]]
 [-1, 2, -1]
 sage: [alpha[1].symmetric_form(alphacheck[i]) for i in [0,1,2]]
 [-1, 2, -1]
 sage: [P(alpha[1]).symmetric_form(alphacheck[i]) for i in [0,1,2]]
 [0, 1, 0]
 sage: [P(alpha[1]).symmetric_form(omega[i]) for i in [0,1,2]]
 [0, 1, 0]
 }}}

 The first three answers are (in my opinion) wrong for the following
 reasons.
 The last answer is correct. The first one is therefore wrong since
 the symmetric form should not depend on whether alpha is regarded as
 an element of Q or of P. The second two pairings should be undefined since
 alphacheck cannot be coerced into P.

 The pairing self.scalar(other) can be used to pair roots with coroots. The
 pairing self.symmetric_form(other) should then be defined for elements
 of the same space.

--

--
Ticket URL: <http://trac.sagemath.org/ticket/18034#comment:2>
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/d/optout.

Reply via email to