#8044: Categories for finite/permutation/symmetric groups
---------------------------------+------------------------------------------
   Reporter:  nthiery            |       Owner:  nthiery                        
  
       Type:  enhancement        |      Status:  needs_review                   
  
   Priority:  major              |   Milestone:  sage-4.3.2                     
  
  Component:  group_theory       |    Keywords:  Finite groups, permutation 
groups
     Author:  Nicolas M. ThiƩry  |    Upstream:  N/A                            
  
   Reviewer:                     |      Merged:                                 
  
Work_issues:                     |  
---------------------------------+------------------------------------------
Changes (by nthiery):

  * status:  new => needs_review
  * type:  defect => enhancement
  * milestone:  => sage-4.3.2


Old description:

> This patch:
>
>  - Introduces two new categories, FiniteGroups and
> FinitePermutationGroups
>  - Deprecates the class sage.groups.group.FiniteGroup
>    (content moved to the FiniteGroups category; this is essentially
>    the cayley_graph method)
>  - Puts all permutation groups and most other finite groups in the
>    corresponding categories
>  - As a result, this standardizes the interface of those groups
>    (cardinality, one, ...), and reveals lots of failures in the
>    completely undocumented PariGroup (category not set properly yet)
>  - Makes a minor improvement to FiniteEnumeratedSets tests for
>    large finite enumerated sets
>
> Current (to be finalized patch) on:
> http://combinat.sagemath.org/hgwebdir.cgi/patches/file/tip/trac_8044
> -categories_finite_groups-nt.patch. Prereviews welcome!

New description:

 This patch:

  - Introduces two new categories: FiniteGroups and FinitePermutationGroups
  - As a result, this standardizes the interface of those groups
    (cardinality, one, ...).

  - Puts all permutation groups and some other finite groups in the
    corresponding categories. There remains to handle finite matrix
    groups and Galois groups in sage/rings/number_field/.

  - Deprecates the class sage.groups.group.FiniteGroup. Content moved
    to the FiniteGroups category; this was essentially the cayley_graph

  - Merges cayley_graph with that for FiniteSemigroups. In the merging,
    ``connecting_set`` was deprecated to ``generators``. Also providing
    a single element by itself as connecting set is no more supported.
    Finally the default is side = "right" (was "twosided" for
    semigroups). This method is also generalized to Semigroups with an
    ``elements`` option (should this be vertices?).

    Why do we care about the produced graph using implementation =
 "networkx"?
    I would tend to remove this implementation detail; this would
    change the order of the edges, which requires fixing a test in
    sage.graphs.generic_graphs

  - Provides group_generators defined from gens, as well as
    semigroup_generators defined from group_generators in the finite
    and coxeter cases.

  - Also puts the SymmetricGroup in the FiniteWeylGroups category.
    Beware: unusual product convention
    Beware: this changes the generators to the standard Weyl group
    generators, that is the elementary transpositions
  - Adds an has_descent method to permutation group elements

  - Make all named permutation groups have UniqueRepresentation
  - Questionable: the underlying set of an alternating or symmetric
    group is now a tuple. This is safer and helps UniqueRepresentation.
    However, this could break backward compatibility.  Also, maybe we
    want to keep the output as SymmetricGroup([1,3,4])?

  - Makes more systematic use of TestSuite(...).run()
  - Makes a minor improvement to FiniteEnumeratedSets tests for
    large finite enumerated sets
  - Strips away unused imports
  - Updates a couple doctests here and there

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8044#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 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