> < ^ From:

< ^ Subject:

Dear Gap-Forum,

Jerry Swan asked:

Forgive me if it transpires that this question has arisen from my

inexperience with Group Theory, rather than with GAP itself:Let F be the free group of rank 4 freely generated

by a1,a2,a3,a4,Let w :=a1^2*a2^2*a3^2*a4^2.How do I determine the cyclically reduced conjugates of w?

Th command `RelatorRepresentatives' takes a list of words in the free group

and returns a list of their cyclically reduced forms (in minimal

permutation). Conjugating these words in turn with their first letters will

create all permutations of this reduced form (which are the cyclically

reduced conjugates). This task is performed for example by the following GAP4

function:

CyclicallyReducedConjugates:=function(w)

local rep,result,i;

rep:=RelatorRepresentatives([w])[1]; # cyclically reduced relator in

# minimal permutation

result:=[rep];

# now create all cyclic permutations of rep:

for i in [1..Length(rep)-1] do

# (in GAP3 one would have to use `LengthWord' instead of `Length')

rep:=rep^Subword(rep,1,1); # conjugate with first letter

Add(result,rep);

od;

return result;

end;

For example:

gap> f:=FreeGroup("a1","a2","a3","a4"); <free group on the generators [ a1, a2, a3, a4 ]> gap> w:=f.1^2*f.2^2*f.3^2*f.4^2; a1^2*a2^2*a3^2*a4^2 gap> CyclicallyReducedConjugates(w); [ a1^2*a2^2*a3^2*a4^2, a1*a2^2*a3^2*a4^2*a1, a2^2*a3^2*a4^2*a1^2, a2*a3^2*a4^2*a1^2*a2, a3^2*a4^2*a1^2*a2^2, a3*a4^2*a1^2*a2^2*a3, a4^2*a1^2*a2^2*a3^2, a4*a1^2*a2^2*a3^2*a4 ]

I hope this is of help,

Alexander Hulpke

> < [top]