
gap> C4:=CyclicGroup(IsPermGroup,4);
Group([ (1,2,3,4) ])
gap> S3:=SymmetricGroup(3);
Sym( [ 1 .. 3 ] )
gap> D:=DirectProduct(S3,C4);
Group([ (1,2,3), (1,2), (4,5,6,7) ])
gap> Size(24);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `Size' on 1 arguments called from
<function>( <arguments> ) called from read-eval-loop
Entering break read-eval-print loop ...
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
brk> gap> Size(D);
24
gap> Elements(D);
[ (), (4,5,6,7), (4,6)(5,7), (4,7,6,5), (2,3), (2,3)(4,5,6,7), (2,3)(4,6)(5,7), (2,3)(4,7,6,5), (1,2), (1,2)(4,5,6,7),
(1,2)(4,6)(5,7), (1,2)(4,7,6,5), (1,2,3), (1,2,3)(4,5,6,7), (1,2,3)(4,6)(5,7), (1,2,3)(4,7,6,5), (1,3,2), (1,3,2)(4,5,6,7),
(1,3,2)(4,6)(5,7), (1,3,2)(4,7,6,5), (1,3), (1,3)(4,5,6,7), (1,3)(4,6)(5,7), (1,3)(4,7,6,5) ]
gap> Read("/Macintosh HD/Applications (Mac OS 9)/GAP/gap4r3/orderFrequency");
gap>
gap> orderFrequency:= function(g)
> local h,w;
> w:= [];
> w:= h -> Collected(List(Elements(h), Order));
> return w(g);
> end;
function( g ) ... end
gap> orderFrequency(D);
[ [ 1, 1 ], [ 2, 7 ], [ 3, 2 ], [ 4, 8 ], [ 6, 2 ], [ 12, 4 ] ]
gap> D10:=DihedralGroup(IsPermGroup,20);
Group([ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7) ])
gap> Size(D10);
20
gap> C2:=CyclicGroup(IsPermGroup,2);
Group([ (1,2) ])
gap> D:=DirectProduct(D10,C2);
Group([ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7), (11,12) ])
gap> orderFrequency(D);
[ [ 1, 1 ], [ 2, 23 ], [ 5, 4 ], [ 10, 12 ] ]
gap> D10:=DihedralGroup(20);
<pc group of size 20 with 3 generators>
gap> D5:=DihedralGroup(IsPermGroup,10);
Group([ (1,2,3,4,5), (2,5)(3,4) ])
gap> D:=DirectProduct(D5,C4);
Group([ (1,2,3,4,5), (2,5)(3,4), (6,7,8,9) ])
gap> orderFrequency(D);
[ [ 1, 1 ], [ 2, 11 ], [ 4, 12 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ]
gap> orderFrequency(DihedralGroup(40));
[ [ 1, 1 ], [ 2, 21 ], [ 4, 2 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ]
gap> AllSmallGroups(40);
[ <pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>,
<pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>,
<pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>,
<pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators>,
<pc group of size 40 with 4 generators>, <pc group of size 40 with 4 generators> ]
gap> NumberSmallGroups(40);
14
gap> G:=SmallGroup(40,4);
<pc group of size 40 with 4 generators>
gap> orderFrequency(G);
[ [ 1, 1 ], [ 2, 1 ], [ 4, 22 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ]
gap> List(AllSmallGroups(40),x->orderFrequency(x));
[ [ [ 1, 1 ], [ 2, 1 ], [ 4, 2 ], [ 5, 4 ], [ 8, 20 ], [ 10, 4 ], [ 20, 8 ] ],
[ [ 1, 1 ], [ 2, 1 ], [ 4, 2 ], [ 5, 4 ], [ 8, 4 ], [ 10, 4 ], [ 20, 8 ], [ 40, 16 ] ],
[ [ 1, 1 ], [ 2, 1 ], [ 4, 10 ], [ 5, 4 ], [ 8, 20 ], [ 10, 4 ] ],
[ [ 1, 1 ], [ 2, 1 ], [ 4, 22 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ],
[ [ 1, 1 ], [ 2, 11 ], [ 4, 12 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ],
[ [ 1, 1 ], [ 2, 21 ], [ 4, 2 ], [ 5, 4 ], [ 10, 4 ], [ 20, 8 ] ], [ [ 1, 1 ], [ 2, 3 ], [ 4, 20 ], [ 5, 4 ], [ 10, 12 ] ],
[ [ 1, 1 ], [ 2, 13 ], [ 4, 10 ], [ 5, 4 ], [ 10, 12 ] ], [ [ 1, 1 ], [ 2, 3 ], [ 4, 4 ], [ 5, 4 ], [ 10, 12 ], [ 20, 16 ] ],
[ [ 1, 1 ], [ 2, 5 ], [ 4, 2 ], [ 5, 4 ], [ 10, 20 ], [ 20, 8 ] ],
[ [ 1, 1 ], [ 2, 1 ], [ 4, 6 ], [ 5, 4 ], [ 10, 4 ], [ 20, 24 ] ], [ [ 1, 1 ], [ 2, 11 ], [ 4, 20 ], [ 5, 4 ], [ 10, 4 ] ],
[ [ 1, 1 ], [ 2, 23 ], [ 5, 4 ], [ 10, 12 ] ], [ [ 1, 1 ], [ 2, 7 ], [ 5, 4 ], [ 10, 28 ] ] ]
gap> Read("sylows");
gap> G:= SymmetricGroup(6);
Sym( [ 1 .. 6 ] )
gap> sylows(G,2);
[ Group([ (1,2), (3,4), (1,3)(2,4), (5,6) ]), Group([ (1,2), (3,5), (1,3)(2,5), (4,6) ]),
Group([ (1,2), (3,6), (1,3)(2,6), (4,5) ]), Group([ (1,2), (4,5), (1,4)(2,5), (3,6) ]),
Group([ (1,2), (4,6), (1,4)(2,6), (3,5) ]), Group([ (1,2), (5,6), (1,5)(2,6), (3,4) ]),
Group([ (1,3), (2,4), (1,2)(3,4), (5,6) ]), Group([ (1,3), (2,5), (1,2)(3,5), (4,6) ]),
Group([ (1,3), (2,6), (1,2)(3,6), (4,5) ]), Group([ (1,3), (4,5), (1,4)(3,5), (2,6) ]),
Group([ (1,3), (4,6), (1,4)(3,6), (2,5) ]), Group([ (1,3), (5,6), (1,5)(3,6), (2,4) ]),
Group([ (1,4), (2,3), (1,2)(3,4), (5,6) ]), Group([ (1,4), (2,5), (1,2)(4,5), (3,6) ]),
Group([ (1,4), (2,6), (1,2)(4,6), (3,5) ]), Group([ (1,4), (3,5), (1,3)(4,5), (2,6) ]),
Group([ (1,4), (3,6), (1,3)(4,6), (2,5) ]), Group([ (1,4), (5,6), (1,5)(4,6), (2,3) ]),
Group([ (1,5), (2,3), (1,2)(3,5), (4,6) ]), Group([ (1,5), (2,4), (1,2)(4,5), (3,6) ]),
Group([ (1,5), (2,6), (1,2)(5,6), (3,4) ]), Group([ (1,5), (3,4), (1,3)(4,5), (2,6) ]),
Group([ (1,5), (3,6), (1,3)(5,6), (2,4) ]), Group([ (1,5), (4,6), (1,4)(5,6), (2,3) ]),
Group([ (1,6), (2,3), (1,2)(3,6), (4,5) ]), Group([ (1,6), (2,4), (1,2)(4,6), (3,5) ]),
Group([ (1,6), (2,5), (1,2)(5,6), (3,4) ]), Group([ (1,6), (3,4), (1,3)(4,6), (2,5) ]),
Group([ (1,6), (3,5), (1,3)(5,6), (2,4) ]), Group([ (1,6), (4,5), (1,4)(5,6), (2,3) ]),
Group([ (2,3), (4,5), (2,4)(3,5), (1,6) ]), Group([ (2,3), (4,6), (2,4)(3,6), (1,5) ]),
Group([ (2,3), (5,6), (2,5)(3,6), (1,4) ]), Group([ (2,4), (3,5), (2,3)(4,5), (1,6) ]),
Group([ (2,4), (3,6), (2,3)(4,6), (1,5) ]), Group([ (2,4), (5,6), (2,5)(4,6), (1,3) ]),
Group([ (2,5), (3,4), (2,3)(4,5), (1,6) ]), Group([ (2,5), (3,6), (2,3)(5,6), (1,4) ]),
Group([ (2,5), (4,6), (2,4)(5,6), (1,3) ]), Group([ (2,6), (3,4), (2,3)(4,6), (1,5) ]),
Group([ (2,6), (3,5), (2,3)(5,6), (1,4) ]), Group([ (2,6), (4,5), (2,4)(5,6), (1,3) ]),
Group([ (3,4), (5,6), (3,5)(4,6), (1,2) ]), Group([ (3,5), (4,6), (3,4)(5,6), (1,2) ]),
Group([ (3,6), (4,5), (3,4)(5,6), (1,2) ]) ]
gap> Size(sylows(G,2));
45
gap> G:= SymmetricGroup(4);
Sym( [ 1 .. 4 ] )
gap> Size(sylows(G,2));
3
gap> Size(sylows(G,3));
4
gap> Size(AlternatingGroup(6));
360
gap> G:= AlternatingGroup(6);
Alt( [ 1 .. 6 ] )
gap> Size(sylows(G,3));
10
gap> Size(sylows(G,2));
45
gap> Size(sylows(G,5));
36
gap> HELP("subgroups");
Help: Showing `Reference: Subgroups'
gap> L:=LatticeSubgroups(G);
<subgroup lattice of Alt( [ 1 .. 6 ] ), 22 classes, 501 subgroups>
gap> Elements(L);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `EnumeratorSorted' on 1 arguments called from
EnumeratorSorted( coll ) called from
AsSSortedList( coll ) called from
<function>( <arguments> ) called from read-eval-loop
Entering break read-eval-print loop ...
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
brk> gap> ConjugacyClassesSubgroups(L);
[ Group( () )^G, Group( [ (3,4)(5,6) ] )^G, Group( [ (4,5,6) ] )^G, Group( [ (1,2,3)(4,5,6) ] )^G,
Group( [ (3,4)(5,6), (3,5)(4,6) ] )^G, Group( [ (3,4)(5,6), (1,2)(5,6) ] )^G, Group( [ (3,4)(5,6), (1,2)(3,5,4,6) ] )^G,
Group( [ (2,3,4,6,5) ] )^G, Group( [ (4,5,6), (2,3)(5,6) ] )^G, Group( [ (1,2,3)(4,5,6), (2,3)(5,6) ] )^G,
Group( [ (3,4)(5,6), (3,5)(4,6), (1,2)(5,6) ] )^G, Group( [ (4,5,6), (1,2,3) ] )^G, Group( [ (2,3,4,6,5), (3,5)(4,6) ] )^G,
Group( [ (3,4)(5,6), (3,5)(4,6), (4,5,6) ] )^G, Group( [ (3,4)(5,6), (1,2)(5,6), (1,3,5)(2,4,6) ] )^G,
Group( [ (4,5,6), (1,2,3), (2,3)(5,6) ] )^G, Group( [ (3,4)(5,6), (3,5)(4,6), (4,5,6), (1,2)(5,6) ] )^G,
Group( [ (3,4)(5,6), (1,2)(5,6), (1,3,5)(2,4,6), (3,5)(4,6) ] )^G, Group( [ (4,5,6), (1,2,3), (2,3)(5,6), (1,4)(2,5,3,6) ] )^G
, Group( [ (1,2,3,4,5), (3,4,5) ] )^G, Group( [ (1,2,3,4,6), (1,4)(5,6) ] )^G, AlternatingGroup( [ 1 .. 6 ] )^G ]
gap> C:= CyclicGroup(60);
<pc group of size 60 with 4 generators>
gap> Size(sylows(G,5));
36
gap>
gap> Size(sylows(C,5));
1
gap> Size(sylows(C,2));
1
gap> a4:= AlternatingGroup(4);
Alt( [ 1 .. 4 ] )
gap> ConjugacyClasses(a4);
[ ()^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,4)^G ]
gap> G:= AlternatingGroup(6);
Alt( [ 1 .. 6 ] )
gap> ConjugacyClasses(G);
[ ()^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,3)(4,5,6)^G, (1,2,3,4)(5,6)^G, (1,2,3,4,5)^G, (1,2,3,4,6)^G ]
gap> Size(ConjugacyClass(G,(1,2)(3,4));
Syntax error: ) expected
Size(ConjugacyClass(G,(1,2)(3,4));
^
gap> Size(ConjugacyClass(G,(1,2)(3,4)));
45
gap> Size(ConjugacyClass(G,(1,2,3)));
40
gap> Size(ConjugacyClass(G,(1,2,3)(4,5,6));
Syntax error: ) expected
Size(ConjugacyClass(G,(1,2,3)(4,5,6));
^
gap> Size(ConjugacyClass(G,(1,2,3)(4,5,6)));
40
gap> Size(ConjugacyClass(G,(1,2,3)(4,5,6)));
40
gap>
gap> Size(ConjugacyClass(G,(1,2,3,4)(5,6)));
90
gap> Size(ConjugacyClass(G,(1,2,3,4,5)));
72
gap> Size(ConjugacyClass(G,(1,2,3,4,6)));
72
gap> G:= AlternatingGroup(5);
Alt( [ 1 .. 5 ] )
gap> ConjugacyClasses(G);
[ ()^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,3,4,5)^G, (1,2,3,5,4)^G ]
gap> Size(ConjugacyClass(G,(1,2)(3,4));
Syntax error: ) expected
Size(ConjugacyClass(G,(1,2)(3,4));
^
gap> Size(ConjugacyClass(G,(1,2)(3,4)));
15
gap> G:= AlternatingGroup(4);
Alt( [ 1 .. 4 ] )
gap> ConjugacyClasses(G);
[ ()^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,4)^G ]
gap> Elements(ConjugacyClass(G, (1,2)(3,4));
Syntax error: ) expected
Elements(ConjugacyClass(G, (1,2)(3,4));
^
gap> Elements(ConjugacyClass(G, (1,2)(3,4)));
[ (1,2)(3,4), (1,3)(2,4), (1,4)(2,3) ]
gap> Elements(ConjugacyClass(G, (1,2,3)));
[ (2,4,3), (1,2,3), (1,3,4), (1,4,2) ]
gap> Elements(ConjugacyClass(G, (1,2,4)));
[ (2,3,4), (1,2,4), (1,3,2), (1,4,3) ]
gap> H:= Subgroup(G, [(1,2)(3,4), (1,3)(2,4)]);
Group([ (1,2)(3,4), (1,3)(2,4) ])
gap> IsNormal(G,H);
true
gap> a:= Random(G);
(1,2,3)
gap> b:= Ranndom(G);
Variable: 'Ranndom' must have a value
gap> b:= Random(G);
(1,2,4)
gap> Order(a*b);
2
gap> G:= DihedralGroup(IsPerm,20);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `DihedralGroupCons' on 2 arguments called from
DihedralGroupCons( arg[1], arg[2] ) called from
<function>( <arguments> ) called from read-eval-loop
Entering break read-eval-print loop ...
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
brk> gap> G:= DihedralGroup(IsPermGroup,20);
Group([ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7) ])
gap> b:= Ranndom(G);
Variable: 'Ranndom' must have a value
gap> a:= Random(G);
(1,2)(3,10)(4,9)(5,8)(6,7)
gap> b:= Random(G);
(1,5,9,3,7)(2,6,10,4,8)
gap> Order(a*b);
2
gap> quit;
Back to Home Page
This PREP workshop is made possible by the NSF grant DUE: 0089005