This is in response to:
From: Phil Meier <email@example.com>
I have explicitly given a finitely generated
(non-abelian) free group G,
a finite index subgroup H,
and a finite index normal subgroup of H, called N.
(N is is in general not normal in G.)
(H and N are given as finitely generated subgroups of G).
Now my question:
Can GAP check if the intersection of H with
the normal closure of N in G is equal to N?
Here is one way to do this, assuming you start out with lists of
generators for H and N. I forget the exact GAP commands, but they
shouldn't be too hard to figure out.
1. Do a coset enumeration of the finitely presented group < G | N >,
i.e., the (finite) group with generators the generators of G, and
relators the generators of N. This will give you the action of G
on the cosets of N^G (the normal closure of N in G). Call this
2. Using the generator list for H, construct the corresponding image Q
of H in Sym(D), i.e., the image Q of H arising from the induced
action of H on the cosets of N^G. The order of Q will be the index
of (the intersection of H and N^G) in H, which you can then compare
with the index of N in H to see if they are equal.