IsNormal( G, U )
IsNormal returns true if the group G normalizes the group U and
false otherwise.
A group G normalizes a group U if and only if for every g in <G> and u in <U> the element u^g is a member of U. Note that U need not be a subgroup of G but they must have a common parent group.
Note that IsNormal tests and sets U.isNormal if G is the parent
group of U.
gap> s4 := Group( (1,2,3,4), (1,2) );;
gap> d8 := Subgroup( s4, [ (1,2,3,4), (1,2)(3,4) ] );;
gap> c2 := Subgroup( s4, [ (1,3)(2,4) ] );;
gap> IsNormal( s4, c2 );
false
gap> IsNormal( d8, c2 );
true
Let G be a finite group. Then the default function GroupOps.IsNormal
checks whether the conjugate of each generator of U under each
generator of G is an element of U.
If G is an infinite group, then the default function
GroupOps.IsNormal checks whether the conjugate of each generator of U
under each generator of G and its inverse is an element of U.
GAP 3.4.4