FactorGroup( G, N )
FactorGroup
returns the factor group <G> / <N> where N must be a
normal subgroup of G (see IsNormal). This is the same as G / N
(see Operations for Groups).
NaturalHomomorphism
returns the natural homomorphism from G (or a
subgroup thereof) onto the factor group (see NaturalHomomorphism).
It is not specified how the factor group N is represented.
gap> a4 := Group( (1,2,3), (2,3,4) );; a4.name := "a4"; "a4" gap> v4 := Subgroup(a4,[(1,2)(3,4),(1,3)(2,4)]);; v4.name := "v4"; "v4" gap> f := FactorGroup( a4, v4 ); (a4 / v4) gap> Size( f ); 3 gap> Elements( f ); [ FactorGroupElement( v4, () ), FactorGroupElement( v4, (2,3,4) ), FactorGroupElement( v4, (2,4,3) ) ]
If G is the parent group of N, FactorGroup
first checks for the
knowledge component N.factorGroup
. If this component is bound,
FactorGroup
returns its value. Otherwise, FactorGroup
calls
G.operations.FactorGroup( G, N )
, remembers the returned value in
N.factorGroup
, and returns it. If G is not the parent group of
N, FactorGroup
calls G.operations.FactorGroup( G, N )
and
returns this value.
The default function called this way is GroupOps.FactorGroup
. It
returns the factor group as a group of factor group elements (see
FactorGroupElement). Look under FactorGroup in the index to see for
which groups this function is overlaid.
GAP 3.4.4