GAP (LINS) - Chapter 1: Introduction

Goto Chapter: Top 1 2 3 4 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax on]

1 Introduction
1.1 Overview
1.2 Examples
1.2-1 Example : all normal subgroups up to index n
1.2-2 Example : all normal subgroups of index n
1.3 Main Functions
1.3-1 LowIndexNormalSubs

### 1 Introduction

This chapter serves as an introduction of the package LINS.

#### 1.1 Overview

The package LINS provides an algorithm for computing the normal subgroups of a finitely presented group up to some given index bound.

Moreover it provides an interface for searching in the normal subgroup lattice of a finitely presented group. For example, one can use this interface to search for l normal subgroups of index n.

The algorithm is based on work of David Firth [Fir05]. He implemented that algorithm in the algebra software MAGMA. That implementation in MAGMA has been revised and rewritten to a great extent by Derek Holt.

The current implementation in GAP uses a table of groups that was computed by the code in `createTables.gi`.

#### 1.2 Examples

In this section we present example sessions which demonstrate how to use the main high-level functions provided by LINS.

##### 1.2-1 Example : all normal subgroups up to index n

We compute all normal subgroups in D_50, the dihedral group of size 50.

    gap> G := DihedralGroup(50);
    <pc group of size 50 with 3 generators>
    gap> L := LowIndexNormalSubs(G, 50);;
    gap> IsoTypes := List(L, StructureDescription);
    [ "D50", "C25", "C5", "1" ]

##### 1.2-2 Example : all normal subgroups of index n

We compute all normal subgroups of index 5^2 = 25 in C_5^4, the direct product of 4 copies of the cyclic group of order 5:

    gap> G := ElementaryAbelianGroup(5^4);
    <pc group of size 625 with 4 generators>
    gap> L := LowIndexNormalSubs(G, 5 ^ 2 : allSubgroups := false);;
    gap> IsoTypes := Collected(List(L, StructureDescription));
    [ [ "C5 x C5", 806 ] ]

#### 1.3 Main Functions

In this section, we include all the main high-level functions provided to the user. For advanced search methods in the lattice of normal subgroups, take a look at Chapter 2.

##### 1.3-1 LowIndexNormalSubs

`‣ LowIndexNormalSubs`( G, n: allSubgroups := true ) | ( operation )

Returns a list of all normal subgroups of G with index at most n. If the option allSubgroups is set to `false`, then only the normal subgroups of G with index equal to n are returned.

The generic method uses `IsomorphismFpGroup` (Reference: IsomorphismFpGroup) to transform G into an fp-group and then calls some variant of the low-level function `LowIndexNormalSubgroupsSearch` (2.3-1).

Note that a similar operation `LowIndexNormalSubgroups` (polycyclic: LowIndexNormalSubgroups) exists in the package polycyclic. Due to technical incompabilities, those operations could not be unified.

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 Bib Ind

generated by GAPDoc2HTML