# Re: [GAP Forum] Define a group action only on generators

```Dear Forum, Dear Nikos Apostolakis,

> Is there a standard way of defining an action of a group only on the
> generators of a group? Say I have a free group, I want to define an
> function that explains how each generator and its inverse acts and then gap
> should know how each word acts.```
```
There are basically two ways of doing so. The first uses that such an action
could be represented through homomorphic images. You can do so by giving
generators and corresponding images:
So for example, if F(2) acts on [1..3] by the permutations (1,2,3) and (2,3),
you could use:

gap> f:=FreeGroup(2);
<free group on the generators [ f1, f2 ]>
gap> hom:=ActionHomomorphism(f,[1..3],[f.1,f.2],[(1,2,3),(2,3)],OnPoints);

or (if you also want to give inverses, e.g. because the generator images do not
have finite order)

gap>
hom:=ActionHomomorphism(f,[1..3],[f.1,f.2,f.1^-1,f.2^-1],[(1,2,3),(2,3),(1,3,2),(2,3)],OnPoints);

Then you can use e.g.:

gap> Image(hom);
Group([ (1,2,3), (2,3) ])
gap> Index(f,Kernel(hom));
6

The manual
http://www.gap-system.org/Manuals/doc/ref/chap41.html#X83661AFD7B7BD1D9
describes this syntax.

Alternatively (but this is more of a hack), you could write your own action
function that would identify the acting element (which will always be a
generator) in a predefined list, and then do the appropriate thing.

Best wishes,

Alexander Hulpke

-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hul...@math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke

_______________________________________________
Forum mailing list
Forum@mail.gap-system.org
http://mail.gap-system.org/mailman/listinfo/forum
```