#6588: Categories for root systems
----------------------------------------------+-----------------------------
   Reporter:  nthiery                         |          Owner:  mhansen        
         
       Type:  enhancement                     |         Status:  needs_review   
         
   Priority:  major                           |      Milestone:  sage-5.0       
         
  Component:  combinatorics                   |       Keywords:  root systems, 
categories
Work_issues:                                  |       Upstream:  N/A            
         
   Reviewer:  Anne Schilling, Mark Shimozono  |         Author:  Nicolas M. 
ThiƩry       
     Merged:                                  |   Dependencies:  #10817         
         
----------------------------------------------+-----------------------------
Changes (by aschilling):

  * reviewer:  => Anne Schilling, Mark Shimozono


Comment:

 Hi Nicolas,

 Impressive patch! Thanks for working on this.
 Here are some first comments:

 - In /sage/categories/affine_weyl_groups.py there is a new import
 from sage.categories.infinite_enumerated_sets import
 InfiniteEnumeratedSets
 which is not used. Please either remove this line or add
 InfiniteEnumeratedSets
 in the class (which is probably preferable).

 - In /sage/categories/affine_weyl_groups.py please add a
 `TestSuite(s).run()` doctest.

 - I am not sure this is related to the patch, but there are some
 strange methods in /sage/categories/coxeter_groups.py without doctests:

         @abstract_method(optional = True)
         def has_right_descent(self, i):
             """
             Returns whether i is a right descent of self.

 #            EXAMPLES::
 #
 #                sage:
             """

         def has_left_descent(self, i):
             """
             Returns whether `i` is a left descent of self.

             This default implementation uses that a left descent of
             `w` is a right descent of `w^{-1}`.
             """
             return (~self).has_right_descent(i)

 Should has_left_descent also be an abstract_method? Or is that implicit
 through
 has_right_descent?

 - Why is the cateogry RootLatticeRealization in
 /sage/combinat/root_system/root_lattice_realization.py
 here and not in categories (if it is a category as specified in the
 docstring)?

 The same question holds for
 WeightLatticeRealizations(Category_over_base_ring)
 in /sage/combinat/root_system/weight_lattice_realization.py.

 - When using the extended weight lattice, the list of fundamental weights
 does not include `\delta`. On the other hand it is possible to input
 `\delta` into the method fundamental_weight. This seems a little
 inconsistent.

 {{{
     sage: Q = RootSystem(['A', 3, 1]).weight_lattice(extended = True); Q
     Extended weight lattice of the Root system of type ['A', 3, 1]
     sage: Q.fundamental_weights()
     Finite family {0: Lambda[0], 1: Lambda[1], 2: Lambda[2], 3: Lambda[3]}
     sage: Q.fundamental_weight('delta')
     delta
 }}}

 Also, I posted a first reviewer's patch on sage-combinat with mostly just
 trivial changes. Please fold it if you are satisfied.

 Thanks!

 Anne

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6588#comment:10>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to