Please note that the functions below are only implemented for finite groups.
‣ RepresentativesAutomorphismClasses ( G ) | ( function ) |
Let G be a group. This command returns a list of the automorphisms of G up to composition with inner automorphisms.
‣ RepresentativesEndomorphismClasses ( G ) | ( function ) |
Let G be a group. This command returns a list of the endomorphisms of G up to composition with inner automorphisms. This does the same as calling AllHomomorphismClasses(G,G)
, but should be faster for abelian and non-2-generated groups. For 2-generated groups, this function takes its source code from AllHomomorphismClasses
.
‣ RepresentativesHomomorphismClasses ( H, G ) | ( function ) |
Let G and H be groups. This command returns a list of the homomorphisms from H to G, up to composition with inner automorphisms of G. This does the same as calling AllHomomorphismClasses(H,G)
, but should be faster for abelian and non-2-generated groups. For 2-generated groups, this function takes its source code from AllHomomorphismClasses
.
gap> G := SymmetricGroup( 6 );; gap> Auts := RepresentativesAutomorphismClasses( G );; gap> Size( Auts ); 2 gap> ForAll( Auts, IsGroupHomomorphism and IsEndoMapping and IsBijective ); true gap> Ends := RepresentativesEndomorphismClasses( G );; gap> Size( Ends ); 6 gap> ForAll( Ends, IsGroupHomomorphism and IsEndoMapping ); true gap> H := SymmetricGroup( 5 );; gap> Homs := RepresentativesHomomorphismClasses( H, G );; gap> Size( Homs ); 6 gap> ForAll( Homs, IsGroupHomomorphism ); true
‣ FixedPointGroup ( endo ) | ( function ) |
Let endo be an endomorphism of a group G. This command returns the subgroup of G consisting of the elements fixed under the endomorphism endo.
This function does the same as CoincidenceGroup
(endo,\operatorname{id}_G).
‣ CoincidenceGroup ( hom1, hom2[, ...] ) | ( function ) |
Let hom1, hom2, ... be group homomorphisms from a group H to a group G. This command returns the subgroup of H consisting of the elements h for which h^hom1 = h^hom2 = ...
For infinite non-abelian groups, this function relies on a mixture of the algorithms described in [Rom16, Thm. 2], [BKL+20, Sec. 5.4] and [Rom21, Sec. 7].
gap> phi := GroupHomomorphismByImages( G, G, [ (1,2,5,6,4), (1,2)(3,6)(4,5) ], > [ (2,3,4,5,6), (1,2) ] );; gap> Set( FixedPointGroup( phi ) ); [ (), (1,2,3,6,5), (1,3,5,2,6), (1,5,6,3,2), (1,6,2,5,3) ] gap> psi := GroupHomomorphismByImages( H, G, [ (1,2,3,4,5), (1,2) ], > [ (), (1,2) ] );; gap> khi := GroupHomomorphismByImages( H, G, [ (1,2,3,4,5), (1,2) ], > [ (), (1,2)(3,4) ] );; gap> CoincidenceGroup( psi, khi ) = AlternatingGroup( 5 ); true
‣ InducedHomomorphism ( epi1, epi2, hom ) | ( function ) |
Let hom be a group homomorphism from a group H to a group G, let epi1 be an epimorphism from H to a group Q and let epi2 be an epimorphism from G to a group P such that the kernel of epi1 is mapped into the kernel of epi2 by hom. This command returns the homomorphism from Q to P induced by hom via epi1 and epi2, that is, the homomorphism from Q to P which maps h^epi1
to (
h^hom)^epi2
, for any element h of H. This generalises InducedAutomorphism
to homomorphisms.
‣ RestrictedHomomorphism ( hom, N, M ) | ( function ) |
Let hom be a group homomorphism from a group H to a group G, and let N be subgroup of H such that its image under hom is a subgroup of M. This command returns the homomorphism from N to M induced by hom. This is similar to RestrictedMapping
, but the range is explicitly set to M.
gap> G := PcGroupCode( 1018013, 28 );; gap> phi := GroupHomomorphismByImages( G, G, [ G.1, G.3 ], > [ G.1*G.2*G.3^2, G.3^4 ] );; gap> N := DerivedSubgroup( G );; gap> p := NaturalHomomorphismByNormalSubgroup( G, N ); [ f1, f2, f3 ] -> [ f1, f2, <identity> of ... ] gap> ind := InducedHomomorphism( p, p, phi ); [ f1 ] -> [ f1*f2 ] gap> Source( ind ) = Range( p ) and Range( ind ) = Range( p ); true gap> res := RestrictedHomomorphism( phi, N, N ); [ f3 ] -> [ f3^4 ] gap> Source( res ) = N and Range( res ) = N; true
generated by GAPDoc2HTML