37.1 The Basic Groups Library

CyclicGroup( n ) CyclicGroup( D, n )

In the first form CyclicGroup returns the cyclic group of size n as a permutation group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and CyclicGroup returns the cyclic group of size n as a group of elements of that type.

    gap> c12 := CyclicGroup( 12 );
    Group( ( 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12) )
    gap> c105 := CyclicGroup( AgWords, 5*3*7 );
    Group( c105_1, c105_2, c105_3 )
    gap> Order(c105,c105.1); Order(c105,c105.2); Order(c105,c105.3);
    105
    35
    7 

AbelianGroup( sizes ) AbelianGroup( D, sizes )

In the first form AbelianGroup returns the abelian group C_{sizes[1]} * C_{sizes[2]} * ... * C_{sizes[n]}, where sizes must be a list of positive integers, as a permutation group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and AbelianGroup returns the abelian group as a group of elements of this type.

    gap> g := AbelianGroup( AgWords, [ 2, 3, 7 ] );
    Group( a, b, c )
    gap> Size( g );
    42
    gap> IsAbelian( g );
    true 

The default function GroupElementsOps.AbelianGroup uses the functions CyclicGroup and DirectProduct (see DirectProduct) to construct the abelian group.

ElementaryAbelianGroup( n ) ElementaryAbelianGroup( D, n )

In the first form ElementaryAbelianGroup returns the elementary abelian group of size n as a permutation group. n must be a positive prime power of course. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and ElementaryAbelianGroup returns the elementary abelian group as a group of elements of this type.

    gap> ElementaryAbelianGroup( 16 );
    Group( (1,2), (3,4), (5,6), (7,8) )
    gap> ElementaryAbelianGroup( AgWords, 3 ^ 10 );
    Group( m59049_1, m59049_2, m59049_3, m59049_4, m59049_5, m59049_6,
    m59049_7, m59049_8, m59049_9, m59049_10 ) 

The default function GroupElementsOps.ElementaryAbelianGroup uses CyclicGroup and DirectProduct (see DirectProduct to construct the elementary abelian group.

DihedralGroup( n ) DihedralGroup( D, n )

In the first form DihedralGroup returns the dihedral group of size n as a permutation group. n must be a positive even integer. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and DihedralGroup returns the dihedral group as a group of elements of this type.

    gap> DihedralGroup( 12 );
    Group( (1,2,3,4,5,6), (2,6)(3,5) ) 

PolyhedralGroup( p, q ) PolyhedralGroup( D, p, q )

In the first form PolyhedralGroup returns the polyhedral group of size p * q as a permutation group. p and q must be positive integers and there must exist a nontrivial p-th root of unity modulo every prime factor of q. In the second form D must be a domain of group elements, e.g., Permutations or Words, and PolyhedralGroup returns the polyhedral group as a group of elements of this type.

    gap> PolyhedralGroup( 3, 13 );
    Group( ( 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13), ( 2, 4,10)( 3, 7, 6)
    ( 5,13,11)( 8, 9,12) )
    gap> Size( last );
    39 

SymmetricGroup( d ) SymmetricGroup( D, d )

In the first form SymmetricGroup returns the symmetric group of degree d as a permutation group. d must be a positive integer. In the second form D must be a domain of group elements, e.g., Permutations or Words, and SymmetricGroup returns the symmetric group as a group of elements of this type.

    gap> SymmetricGroup( 8 );
    Group( (1,8), (2,8), (3,8), (4,8), (5,8), (6,8), (7,8) )
    gap> Size( last );
    40320 

AlternatingGroup( d ) AlternatingGroup( D, d )

In the first form AlternatingGroup returns the alternating group of degree d as a permutation group. d must be a positive integer. In the second form D must be a domain of group elements, e.g., Permutations or Words, and AlternatingGroup returns the alternating group as a group of elements of this type.

    gap> AlternatingGroup( 8 );
    Group( (1,2,8), (2,3,8), (3,4,8), (4,5,8), (5,6,8), (6,7,8) )
    gap> Size( last );
    20160 

GeneralLinearGroup( n, q ) GeneralLinearGroup( D, n, q )

In the first form GeneralLinearGroup returns the general linear group GL( <n>, <q> ) as a matrix group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and GeneralLinearGroup returns GL( <n>, <q> ) as a group of elements of that type.

    gap> g := GeneralLinearGroup( 2, 4 ); Size( g );
    GL(2,4)
    180 

SpecialLinearGroup( n, q ) SpecialLinearGroup( D, n, q )

In the first form SpecialLinearGroup returns the special linear group SL( <n>, <q> ) as a matrix group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and SpecialLinearGroup returns SL( <n>, <q> ) as a group of elements of that type.

    gap> g := SpecialLinearGroup( 3, 4 ); Size( g );
    SL(3,4)
    60480 

SymplecticGroup( n, q ) SymplecticGroup( D, n, q )

In the first form SymplecticGroup returns the symplectic group SP( <n>, <q> ) as a matrix group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and SymplecticGroup returns SP( <n>, <q> ) as a group of elements of that type.

    gap> g := SymplecticGroup( 4, 2 ); Size( g );
    SP(4,2)
    720 

GeneralUnitaryGroup( n, q ) GeneralUnitaryGroup( D, n, q )

In the first form GeneralUnitaryGroup returns the general unitary group GU( <n>, <q> ) as a matrix group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and GeneralUnitaryGroup returns GU( <n>, <q> ) as a group of elements of that type.

    gap> g := GeneralUnitaryGroup( 3, 3 ); Size( g );
    GU(3,3)
    24192 

SpecialUnitaryGroup( n, q ) SpecialUnitaryGroup( D, n, q )

In the first form SpecialUnitaryGroup returns the special unitary group SU( <n>, <q> ) as a matrix group. In the second form D must be a domain of group elements, e.g., Permutations or AgWords, and SpecialUnitaryGroup returns SU( <n>, <q> ) as a group of elements of that type.

    gap> g := SpecialUnitaryGroup( 3, 3 ); Size( g );
    SU(3,3)
    6048 

MathieuGroup( d )

MathieuGroup returns the Mathieu group of degree d as a permutation group. d is expected to be 11, 12, 22, 23, or 24.

    gap> g := MathieuGroup( 12 ); Size( g );
    Group( ( 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11), ( 3, 7,11, 8)
    ( 4,10, 5, 6), ( 1,12)( 2,11)( 3, 6)( 4, 8)( 5, 9)( 7,10) )
    95040

Up Top Next
Index

GAP 3.4.4
April 1997