Thank you for your report.

Note

sage: x = "(1,2)(3,7)(4,6)(5,8)"
sage: PermutationGroup([x])
Permutation Group with generators [(1,2)(3,7)(4,6)(5,8)]

works fine. The result of gap.Image is an instance of the
GapElement class, so it looks like it is a syntax issue for
such elements. I can take a look at it when I get the
time but definitely not in the next 3 days (too much teaching, grading, etc).


On 11/6/07, Carlo Hämäläinen <[EMAIL PROTECTED]> wrote:
>
> Hi,
>
> I'm doing some work with groups. Using gap.Image() I can get a
> permutation like this:
>
> sage: x
> (1,2)(3,7)(4,6)(5,8)
>
> But to make a permutation group out of this element I have to enclose
> the x in two sets of brackets:
>
> sage: PermutationGroup([[x]])
> Permutation Group with generators [(1,2)(3,7)(4,6)(5,8)]
>
> On the other hand, the following command fails (see below for code and 
> output):
>
> sage: PermutationGroup([x])
>
> In my mind the second version is clearer - x is a permutation so [x]
> is a list of permutations and I should be able to use that to get a
> group.
>
> Should SAGE do a coercion here, or am I doing something in a strange way?
>
> Code and output:
>
> ----------------------------------------------------------------------
> | SAGE Version 2.8.11, Release Date: 2007-11-02                      |
> | Type notebook() for the GUI, and license() for information.        |
> ----------------------------------------------------------------------
>
> sage: p = 2
> sage: assert is_prime(p)
> sage:
> sage: F = gap.new("FreeGroup(3)")
> sage:
> sage: a = F.gen(1)
> sage: b = F.gen(2)
> sage: c = F.gen(3)
> sage:
> sage: rels = []
> sage: rels.append( a**Integer(p) )
> sage: rels.append( b**Integer(p) )
> sage: rels.append( c**Integer(p) )
> sage: rels.append( a*b*((b*a*c)**Integer(-1)) )
> sage: rels.append( c*a*((a*c)**Integer(-1)) )
> sage: rels.append( c*b*((b*c)**Integer(-1)) )
> sage:
> sage: N = gap.NormalClosure(F, gap.Subgroup(F, rels))
> sage: niso = gap.NaturalHomomorphismByNormalSubgroupNC(F, N)
> sage:
> sage: x = gap.Image(niso, a)
> sage: x
> (1,2)(3,7)(4,6)(5,8)
> sage: PermutationGroup([[x]])
> Permutation Group with generators [(1,2)(3,7)(4,6)(5,8)]
> sage:
> sage: PermutationGroup([x])
> ---------------------------------------------------------------------------
> <type 'exceptions.TypeError'>             Traceback (most recent call last)
>
> /home/carlo/<ipython console> in <module>()
>
> /home/carlo/sage-source-current/local/lib/python2.5/site-packages/sage/groups/perm_gps/permgroup.py
> in PermutationGroup(x, from_group, check)
>     167     if not is_ExpectElement(x) and hasattr(x, '_permgroup_'):
>     168         return x._permgroup_()
> --> 169     return PermutationGroup_generic(x, from_group, check)
>     170
>     171
>
> /home/carlo/sage-source-current/local/lib/python2.5/site-packages/sage/groups/perm_gps/permgroup.py
> in __init__(self, gens, from_group, check)
>     212             elif not isinstance(gens, list):
>     213                 raise TypeError, "gens must be a tuple or list"
> --> 214             gens = [gap_format(x) for x in gens]
>     215
>     216         cmd = 'Group(%s)'%gens
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://sage.math.washington.edu/sage/ and http://sage.scipy.org/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to