GAP:Subgroups

From Groupprops
Jump to: navigation, search
This article is about a GAP function.

This GAP function takes as input a group. See more functions like this.

Using this GAP function requires the loading of the following package: sonata

Definition

Package requirement

The function is part of the SONATA package.

Function type

Subgroups is a GAP command that takes as input one argument representing a group and outputs a list of groups.

Behavior

Applying Subgroups to a given group returns a list of all its subgroups. These subgroups are listed in order of increasing order, and conjugate subgroups are listed together.

Related functions

Examples of usage

Some examples of prespecified groups

gap> G := SymmetricGroup(4);
Sym( [ 1 .. 4 ] )
gap> L := Subgroups(G);
[ Group(()), Group([ (1,3)(2,4) ]), Group([ (1,4)(2,3) ]),
  Group([ (1,2)(3,4) ]), Group([ (3,4) ]), Group([ (2,4) ]), Group([ (2,3) ]),
  Group([ (1,4) ]), Group([ (1,3) ]), Group([ (1,2) ]), Group([ (2,4,3) ]),
  Group([ (1,3,2) ]), Group([ (1,3,4) ]), Group([ (1,4,2) ]),
  Group([ (1,4)(2,3), (1,3)(2,4) ]), Group([ (1,2)(3,4), (3,4) ]),
  Group([ (1,3)(2,4), (2,4) ]), Group([ (1,4)(2,3), (2,3) ]),
  Group([ (1,2)(3,4), (1,3,2,4) ]), Group([ (1,3)(2,4), (1,2,3,4) ]),
  Group([ (1,4)(2,3), (1,2,4,3) ]), Group([ (3,4), (2,4,3) ]),
  Group([ (1,3), (1,3,2) ]), Group([ (1,3), (1,3,4) ]),
  Group([ (1,4), (1,4,2) ]), Group([ (1,3)(2,4), (1,4)(2,3), (1,2) ]),
  Group([ (1,2)(3,4), (1,4)(2,3), (1,3) ]),
  Group([ (1,2)(3,4), (1,3)(2,4), (1,4) ]),
  Group([ (1,3)(2,4), (1,4)(2,3), (2,4,3) ]),
  Group([ (1,3)(2,4), (1,4)(2,3), (2,4,3), (1,2) ]) ]
gap> List(L,IdGroup);
[ [ 1, 1 ], [ 2, 1 ], [ 2, 1 ], [ 2, 1 ], [ 2, 1 ], [ 2, 1 ], [ 2, 1 ],
  [ 2, 1 ], [ 2, 1 ], [ 2, 1 ], [ 3, 1 ], [ 3, 1 ], [ 3, 1 ], [ 3, 1 ],
  [ 4, 2 ], [ 4, 2 ], [ 4, 2 ], [ 4, 2 ], [ 4, 1 ], [ 4, 1 ], [ 4, 1 ],
  [ 6, 1 ], [ 6, 1 ], [ 6, 1 ], [ 6, 1 ], [ 8, 3 ], [ 8, 3 ], [ 8, 3 ],
  [ 12, 3 ], [ 24, 12 ] ]
gap> List(L,H -> IsNormal(G,H));
[ true, false, false, false, false, false, false, false, false, false, false,
  false, false, false, true, false, false, false, false, false, false, false,
  false, false, false, false, false, false, true, true ]

Some examples involving looking at a lot of groups

gap> L := List(AllSmallGroups(32),G->Size(Subgroups(G)));
[ 6, 50, 22, 22, 34, 50, 42, 26, 46, 30, 34, 22, 26, 26, 18, 14, 14, 36, 28,
  20, 54, 94, 54, 46, 62, 38, 106, 74, 50, 58, 58, 34, 42, 90, 42, 38, 38,
  34, 70, 54, 38, 46, 58, 42, 118, 158, 78, 94, 110, 78, 374 ]
gap> SortedList(L);
[ 6, 14, 14, 18, 20, 22, 22, 22, 26, 26, 26, 28, 30, 34, 34, 34, 34, 36, 38,
  38, 38, 38, 42, 42, 42, 42, 46, 46, 46, 50, 50, 50, 54, 54, 54, 58, 58,
  58, 62, 70, 74, 78, 78, 90, 94, 94, 106, 110, 118, 158, 374 ]