[Up] [Previous] [Next] [Index]

3 Examples

Sections

  1. Constructing some nilpotent matrix groups
  2. Testing nilpotency and other functions
  3. Using the library of primitive nilpotent groups

In this chapter we give some examples of computing with the Package Nilmat.

3.1 Constructing some nilpotent matrix groups

gap> g1 := MaximalAbsolutelyIrreducibleNilpotentMatGroup(52,3,3);
<matrix group with 7 generators>

The group g1 is a subgroup of GL(52,33) generated by 7 matrices.

gap> g2 := MaximalAbsolutelyIrreducibleNilpotentMatGroup(180,11,2);
<matrix group with 41 generators>

The group g2 is a subgroup of GL(180,112) generated by 41 matrices.

gap> MaximalAbsolutelyIrreducibleNilpotentMatGroup(210,2,10);
fail

In this third example, absolutely irreducible nilpotent subgroups of GL(210,210) do not exist, because the degree of the matrices and the field size are both even.

gap> g3 := MonomialNilpotentMatGroup(450);
<matrix group with 24 generators>

Here g3 is a monomial nilpotent subgroup of GL(450,Q).

gap> g4 := ReducibleNilpotentReducibleMatGroup(3,180,11,2);
<matrix group with 82 generators>

Here g4 < GL(540,112) is the Kronecker product of a unipotent subgroup of GL(3,112) and the group g2.

gap> g5 := ReducibleNilpotentMatGroup(7,36);
<matrix group with 72 generators>

Here g5 < GL(252, Q) is a reducible nilpotent group constructed as the Kronecker product of a unipotent subgroup of GL(7,Q) with MonomialNilpotentMatGroup(36).

3.2 Testing nilpotency and other functions

We now illustrate use of the functions IsNilpotentMatGroup, SylowSubgroupsOfNilpotentFFMatGroup, IsFiniteNilpotentMatGroup, SizeOfNilpotentMatGroup, and IsCompletelyReducibleNilpotentMatGroup.

gap> IsNilpotentMatGroup(GL(200,Integers));
false

gap> IsNilpotentMatGroup(GL(150,11^3));
false

gap> g6 := MaximalAbsolutelyIrreducibleNilpotentMatGroup(127,2,7);
<matrix group with 3 generators>
gap> IsNilpotentMatGroup(g6);
true

gap> g7 := MonomialNilpotentMatGroup(350);
<matrix group with 6 generators>
gap> IsNilpotentMatGroup(g7);
true
gap> IsFiniteNilpotentMatGroup(g7);
true

gap> g8 := ReducibleNilpotentMatGroup(6,35);
<matrix group with 5 generators>
gap> IsNilpotentMatGroup(g8);
true
gap> IsFiniteNilpotentMatGroup(g8);
false

gap> g9 := ReducibleNilpotentMatGroup(2,36,5,2);
<matrix group with 21 generators>
gap> SylowSubgroupsOfNilpotentFFMatGroup(g9);
[ <matrix group with 5 generators>, <matrix group with 6 generators>,
  <matrix group with 1 generators> ]
gap> IsCompletelyReducibleNilpotentMatGroup(g9);
false

gap> g10 := MaximalAbsolutelyIrreducibleNilpotentMatGroup(24,5,2);
<matrix group with 17 generators>
gap> SizeOfNilpotentMatGroup(g10);
173946175488
gap> IsCompletelyReducibleNilpotentMatGroup(g10);
true

gap> g11 := MonomialNilpotentMatGroup(96);
<matrix group with 31 generators>
gap> SizeOfNilpotentMatGroup(g11);
6442450944
gap> IsCompletelyReducibleNilpotentMatGroup(g11);
true

3.3 Using the library of primitive nilpotent groups

This section gives examples of applying the functions from the Nilmat library of primitive nilpotent subgroups of GL(n,q).

gap> L0 := NilpotentPrimitiveMatGroups(2,3,1);
[ Group([ [ [ 0*Z(3), Z(3)^0 ], [ Z(3)^0, Z(3)^0 ] ] ]), 
  Group([ [ [ Z(3)^0, 0*Z(3) ], [ 0*Z(3), Z(3)^0 ] ], 
      [ [ Z(3), Z(3)^0 ], [ Z(3), Z(3) ] ], 
      [ [ Z(3)^0, 0*Z(3) ], [ 0*Z(3), Z(3) ] ] ]), 
  Group([ [ [ Z(3)^0, 0*Z(3) ], [ 0*Z(3), Z(3)^0 ] ], 
      [ [ 0*Z(3), Z(3)^0 ], [ Z(3), 0*Z(3) ] ], 
      [ [ Z(3), Z(3) ], [ Z(3), Z(3)^0 ] ] ]) ]
gap> SizesOfNilpotentPrimitiveMatGroups(2,3,1);
[ 8, 16, 8 ]
gap> List(L0,Size);
[ 8, 16, 8 ]

gap> L1 := NilpotentPrimitiveMatGroups(2,2,10);;
gap> Length(L1);
40
gap> Size(L1[38]);
209715
gap> s := SizesOfNilpotentPrimitiveMatGroups(2,2,10);
[ 5, 15, 25, 41, 55, 75, 123, 155, 165, 205, 275, 451, 465, 615, 775, 825, 
  1025, 1271, 1353, 1705, 2255, 2325, 3075, 3813, 5115, 6355, 6765, 8525, 
  11275, 13981, 19065, 25575, 31775, 33825, 41943, 69905, 95325, 209715, 
  349525, 1048575 ]

gap> L2 := NilpotentPrimitiveMatGroups(55,3,1);;
gap> Length(L2);
114

gap> L3 := NilpotentPrimitiveMatGroups(6,3,3);;
gap> Length(L3);
110

gap> L4 := NilpotentPrimitiveMatGroups(22,11,1);;
gap> Length(L4);
1002

The lists L1 and L2 contain only abelian groups, while L3 and L4 contain non-abelian nilpotent groups.

[Up] [Previous] [Next] [Index]

Nilmat manual
August 2022