#20259: Polyhedron.restricted_automorphism_group(): allow returning the affine
matrix group
-------------------------------------+-------------------------------------
       Reporter:  jdemeyer           |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.2
      Component:  geometry           |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Jeroen Demeyer     |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  
u/jdemeyer/polyhedron_restricted_automorphism_group____allow_returning_the_affine_matrix_group|
  e70a1eae87ee937b21bd8f2767ffcb8353c914ea
   Dependencies:  #20279, #20287     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by jdemeyer):

 * status:  needs_work => needs_review


Old description:

> Currently, the method `Polyhedron.restricted_automorphism_group()`
> returns an abstract permutation on the vertices. In this ticket, we
> optionally allow returning a concrete affine matrix group on the ambient
> space.
>
> We also fix this bug:
> {{{
> sage: len(polytopes.dodecahedron().restricted_automorphism_group())
> ---------------------------------------------------------------------------
> UnboundLocalError                         Traceback (most recent call
> last)
> <ipython-input-6-d332241c23a2> in <module>()
> ----> 1 len(polytopes.dodecahedron().restricted_automorphism_group())
>
> /usr/local/src/sage-config/src/sage/misc/cachefunc.pyx in
> sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__
> (build/cythonized/sage/misc/cachefunc.c:12404)()
>    2233         if self.cache is None:
>    2234             f = self.f
> -> 2235             self.cache = f(self._instance)
>    2236         return self.cache
>    2237
>
> /usr/local/src/sage-config/local/lib/python2.7/site-
> packages/sage/geometry/polyhedron/base.pyc in
> restricted_automorphism_group(self)
>    4619                 v_i = v_list[i]
>    4620                 v_j = v_list[j]
> -> 4621                 c_ij = rational_approximation( v_i * Qinv * v_j )
>    4622                 G.add_edge(i+1,j+1, edge_label(i,j,c_ij))
>    4623
>
> UnboundLocalError: local variable 'rational_approximation' referenced
> before assignment
> }}}

New description:

 Currently, the method `Polyhedron.restricted_automorphism_group()` returns
 an abstract permutation on the vertices. In this ticket, we optionally
 allow returning a concrete matrix group on the ambient space, either as
 matrix group or list of matrices.

 We also fix this bug:
 {{{
 sage: len(polytopes.dodecahedron().restricted_automorphism_group())
 ---------------------------------------------------------------------------
 UnboundLocalError                         Traceback (most recent call
 last)
 <ipython-input-6-d332241c23a2> in <module>()
 ----> 1 len(polytopes.dodecahedron().restricted_automorphism_group())

 /usr/local/src/sage-config/src/sage/misc/cachefunc.pyx in
 sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__
 (build/cythonized/sage/misc/cachefunc.c:12404)()
    2233         if self.cache is None:
    2234             f = self.f
 -> 2235             self.cache = f(self._instance)
    2236         return self.cache
    2237

 /usr/local/src/sage-config/local/lib/python2.7/site-
 packages/sage/geometry/polyhedron/base.pyc in
 restricted_automorphism_group(self)
    4619                 v_i = v_list[i]
    4620                 v_j = v_list[j]
 -> 4621                 c_ij = rational_approximation( v_i * Qinv * v_j )
    4622                 G.add_edge(i+1,j+1, edge_label(i,j,c_ij))
    4623

 UnboundLocalError: local variable 'rational_approximation' referenced
 before assignment
 }}}

--

--
Ticket URL: <http://trac.sagemath.org/ticket/20259#comment:9>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to