#9559: *generalized* canonical generation in Cython
---------------------------------+------------------------------------------
       Reporter:  rlm            |         Owner:  rlm        
           Type:  enhancement    |        Status:  needs_work 
       Priority:  major          |     Milestone:  sage-5.6   
      Component:  group theory   |    Resolution:             
       Keywords:                 |   Work issues:  formatting 
Report Upstream:  N/A            |     Reviewers:  Tom Boothby
        Authors:  Robert Miller  |     Merged in:             
   Dependencies:                 |      Stopgaps:             
---------------------------------+------------------------------------------
Changes (by rlm):

  * dependencies:  #10549, #10804 =>


Old description:

> Depends on #10804
>
> The basic idea is that one has objects which satisfy the criteria set out
> in `sage/groups/perm_gps/partn_ref`. In particular, one has implemented a
> refinement function, a comparison function, and an equivalent-children
> function. Then one defines the following four functions, and the code
> which will appear here will do the rest.
>
> 1. Given an input object `X`, this function will return a number `k`.
> This is the number of augmentations from `X` to perform, thought of
> abstractly as the list `[0, 1, ..., k-1]`. The user will keep the data of
> what augmentations these actually are.
>
> 2. Given a permutation of `X` (acting on `[0, 1, ..., n-1]`), and a
> number `a` in `[0, 1, ..., k-1]`, outputs a number `b` in the same range,
> such that the augmentation represented by `a` maps to the one represented
> by `b` under the permutation.
>
> 3. Given a number in `[0, 1, ..., k-1]`, outputs an object `C` which
> realizes the augmentation.
>
> 4. Given a permutation `g`, and an object `C`, applies `g` to `C`,
> constructs an arbitrary parent object `P` of `C`, and returns
> `g^(-1)(P)`.
>
> Function (2) will be optional. If not provided, then the list of
> augmentations given in (1) will have to be a set of orbit
> representatives.
>
> NOTE: ticket #11369 should be set to needs_review once this one is ready

New description:

 The basic idea is that one has objects which satisfy the criteria set out
 in `sage/groups/perm_gps/partn_ref`. In particular, one has implemented a
 refinement function, a comparison function, and an equivalent-children
 function. Then one defines the following four functions, and the code
 which will appear here will do the rest.

 1. Given an input object `X`, this function will return a number `k`. This
 is the number of augmentations from `X` to perform, thought of abstractly
 as the list `[0, 1, ..., k-1]`. The user will keep the data of what
 augmentations these actually are.

 2. Given a permutation of `X` (acting on `[0, 1, ..., n-1]`), and a number
 `a` in `[0, 1, ..., k-1]`, outputs a number `b` in the same range, such
 that the augmentation represented by `a` maps to the one represented by
 `b` under the permutation.

 3. Given a number in `[0, 1, ..., k-1]`, outputs an object `C` which
 realizes the augmentation.

 4. Given a permutation `g`, and an object `C`, applies `g` to `C`,
 constructs an arbitrary parent object `P` of `C`, and returns `g^(-1)(P)`.

 Function (2) will be optional. If not provided, then the list of
 augmentations given in (1) will have to be a set of orbit representatives.

 NOTE: ticket #11369 should be set to needs_review once this one is ready

--

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