I am trying to use WORD functions on the elements of a finitely
presented group - but perhaps this is not allowed?
This is allowed, but the printing of words is confusing (to say the
least). We will try to change this in the next GAP release.
Back to the problem:
gap> el := Elements(S3); [ IdWord, F.1, F.2, F.1*F.2, F.2*F.1, F.2^2 ] gap> w := el; F.1*F.2 gap> MappedWord( w, [F.1,F.2], [F.3,F.4] ); F.1*F.2
<w> is an element of <S3> and not of <F> *although* the printing suggests
otherwise. The string used to print an abstract word has no meaning
for GAP. In order to replace <S3>.1 (which is printed as "F.1"!) by
<S3>.3 one has to use
gap> w; F.1*F.2 gap> MappedWord( w, [S3.1], [S3.3] ); F.3*F.2
The same is true for
gap> Position(gens,F.1); 1 gap> Position(gens,el); false !! and here I expected: 1
<el> is *not* equal <F>.1 although it is printed in the same way.