The method "word_problem" for a permutation group element can be found at

    
http://doc.sagemath.org/html/en/reference/groups/sage/groups/perm_gps/permgroup_element.html#sage.groups.perm_gps.permgroup_element.PermutationGroupElement.word_problem

But if the permutation group G is finite, I wonder whether I can also 
obtain a shortest word of an element w in G that does not use the inverses? 
This is, is there a way to get a word in M(G) = < g1, ... gm >_{monoid} as 
a monoid (of course M(G) = G as sets for G finite)?

If this is not yet anywhere in Sage, is there maybe a function in gap that 
does provide that, which I could wrap?

One simple example would be:

    sage: pi
    
(1,12)(2,24)(3,19)(4,22)(5,17)(6,20)(7,23)(8,9)(10,21)(11,13)(14,18)(15,16)
    sage: G.gens()
    
[(1,3,9)(2,4,7)(5,10,18)(6,11,16)(8,12,19)(13,15,20)(14,17,21)(22,23,24),
     
(1,5,13)(2,6,10)(3,7,14)(4,8,15)(9,16,22)(11,12,17)(18,19,23)(20,21,24)]

    sage: pi.word_problem(G.gens(),False)[0]
    'x1*x2^-1*x1^-2*x2^-1'

    sage: pi.not_existing_word_problem_method_as_monoid(G.gens())
    'x2*x1*x1*x2*x1*x1'

Thanks! Christian

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to