NaturalHomomorphismByNormalSubgroup( G, N ) F
NaturalHomomorphismByNormalSubgroupNC( G, N ) F
returns a homomorphism from G to another group whose kernel is N.
GAP will try to select the image group as to make computations in it
as efficient as possible. As the factor group G /N can be identified
with the image of G this permits efficient computations in the factor
group. The homomorphism returned is not necessarily surjective, so
ImagesSource should be used instead of Range to get a group
isomorphic to the factor group.
The NC variant does not check whether N is normal in G.
FactorGroup( G, N ) F
FactorGroupNC( G, N ) O
returns the image of the NaturalHomomorphismByNormalSubgroup(G,N).
The NC version does not test whether N is normal in G.
gap> g:=Group((1,2,3,4),(1,2));;n:=Subgroup(g,[(1,2)(3,4),(1,3)(2,4)]);; gap> hom:=NaturalHomomorphismByNormalSubgroup(g,n); [ (3,4), (2,4,3), (1,2)(3,4), (1,3)(2,4) ] -> [ f1, f2, <identity> of ..., <identity> of ... ] gap> Size(ImagesSource(hom)); 6 gap> FactorGroup(g,n); <pc group of size 6 with 2 generators>
CommutatorFactorGroup( G ) A
computes the commutator factor group G /G ¢ of the group G.
gap> CommutatorFactorGroup(g); <pc group of size 2 with 1 generators>
HasAbelianFactorGroup( G, N ) O
tests whether G/N is abelian (without explicitly constructing the factor group).
HasElementaryAbelianFactorGroup( G, N ) O
tests whether G/N is elementary abelian (without explicitly constructing the factor group).
gap> HasAbelianFactorGroup(g,n); false gap> HasAbelianFactorGroup(DerivedSubgroup(g),n); true
CentralizerModulo( G, N, elm ) O
Computes the full preimage of the centralizer CG/N(elm·N) in G (without necessarily constructing the factor group).
gap> CentralizerModulo(g,n,(1,2)); Group( [ (3,4), (1,4)(2,3), (1,3)(2,4) ] )
[Top] [Previous] [Up] [Next] [Index]
GAP 4 manual