
gap> G:= DihedralGroup(IsPermGroup, 16);; gap> obj:= [G]; [ Group([ (1,2,3,4,5,6,7,8), (2,8)(3,7)(4,6) ]) ] gap> code:= ApplicableMethod(IsCyclic, obj,1); #I Searching Method for IsCyclic with 1 arguments: #I Total: 6 entries #I Method 3: ``IsCyclic'', value: 22 function( G ) ... end gap> print(code); Variable: 'print' must have a value gap> Print(code); function ( G ) if Length( GeneratorsOfGroup( G ) ) = 1 then return true; else return TRY_NEXT_METHOD; fi; return; endgap>
Section 6: Factor Groups
gap> S6 := SymmetricGroup(6); Sym( [ 1 .. 6 ] ) gap> A6 := AlternatingGroup(6); Alt( [ 1 .. 6 ] ) gap> D6 := DihedralGroup(IsPermGroup, 12); Group([ (1,2,3,4,5,6), (2,6)(3,5) ]) gap> Z6 := Center(D6); Group([ (1,4)(2,5)(3,6) ]) gap> IsNormal(S6,A6); true gap> IsNormal(S6,D6); false gap> IsNormal(D6,Z6); true gap> RightCosets(S6,A6); [ RightCoset(AlternatingGroup( [ 1 .. 6 ] ),()), RightCoset(AlternatingGroup( [ 1 .. 6 ] ),(5,6)) ] gap> Order(FactorGroup(S6,A6)); 2 gap> RightCosets(D6,Z6); [ RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),()), RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),(2,6)(3,5)), RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),(1,5,3)(2,6,4)), RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),(1,5) (2,4)), RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),(1,3,5)(2,4,6)), RightCoset(Group( [ ( 1, 4)( 2, 5)( 3, 6) ] ),(1,3)(4,6)) ] gap> Order(FactorGroup(D6,Z6)); 6 gap> H := FactorGroup(D6,Z6); Group([ f1, f2 ]) gap> KnownAttributesOfObject(H); [ "Size", "OneImmutable", "Order", "ParentAttr", "GeneratorsOfMagmaWithInverses", "MultiplicativeNeutralElement", "FamilyPcgs", "HomePcgs" ] gap> Size(RightCosets(D6,Z6)); 6 gap> H; Group([ f1, f2 ]) gap> IsAbelian(H); false gap> IsomorphismGroups(H,SymmetricGroup(3)); [ f1, f2 ] -> [ (2,3), (1,2,3) ] gap> Elements(RightCoset(Z6,(2,6)(3,5))); [ (2,6)(3,5), (1,4)(2,3)(5,6) ]
Exercise 6.1 gap> D8 := DihedralGroup(IsPermGroup,16); Group([ (1,2,3,4,5,6,7,8), (2,8)(3,7)(4,6) ]) gap> Z8 := Center(D8); Group([ (1,5)(2,6)(3,7)(4,8) ]) gap> RightCosets(D8,Z8); [ RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),()), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ), (2,8)(3,7)(4,6)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,7,5,3)(2,8,6,4)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,7)(2,6)(3,5)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,8,7,6,5,4,3,2)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,8)(2,7)(3,6)(4,5)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,6,3,8,5,2,7,4)), RightCoset(Group( [ ( 1, 5)( 2, 6)( 3, 7)( 4, 8) ] ),(1,6)(2,5)(3,4)(7,8)) ] gap> e := Elements(SymmetricGroup(3)); [ (), (2,3), (1,2), (1,2,3), (1,3,2), (1,3) ]
gap> PrintArray(MultiplicationTable(e)); [ [ 1, 2, 3, 4, 5, 6 ], [ 2, 1, 4, 3, 6, 5 ], [ 3, 5, 1, 6, 2, 4 ], [ 4, 6, 2, 5, 1, 3 ], [ 5, 3, 6, 1, 4, 2 ], [ 6, 4, 5, 2, 3, 1 ] ]
Exercise 6.3 gap> F := FactorGroup(D8,Z8); Group([ f1, f2, f3 ]) gap> Elements(F); [ <identity> of ..., f1, f2, f3, f1*f2, f1*f3, f2*f3, f1*f2*f3 ] gap> e2:=Elements(F); [ <identity> of ..., f1, f2, f3, f1*f2, f1*f3, f2*f3, f1*f2*f3 ] gap> PrintArray(MultiplicationTable(e2)); [ [ 1, 2, 3, 4, 5, 6, 7, 8 ], [ 2, 1, 5, 6, 3, 4, 8, 7 ], [ 3, 8, 4, 7, 2, 5, 1, 6 ], [ 4, 6, 7, 1, 8, 2, 3, 5 ], [ 5, 7, 6, 8, 1, 3, 2, 4 ], [ 6, 4, 8, 2, 7, 1, 5, 3 ], [ 7, 5, 1, 3, 6, 8, 4, 2 ], [ 8, 3, 2, 5, 4, 7, 6, 1 ] ] gap> F := D8/Z8; Group([ f1, f2, f3 ]) gap> Elements(F); [ <identity> of ..., f1, f2, f3, f1*f2, f1*f3, f2*f3, f1*f2*f3 ] gap> e2 := Elements(F); [ <identity> of ..., f1, f2, f3, f1*f2, f1*f3, f2*f3, f1*f2*f3 ] gap> PrintArray(MultiplicationTable(e2)); [ [ 1, 2, 3, 4, 5, 6, 7, 8 ], [ 2, 1, 5, 6, 3, 4, 8, 7 ], [ 3, 8, 4, 7, 2, 5, 1, 6 ], [ 4, 6, 7, 1, 8, 2, 3, 5 ], [ 5, 7, 6, 8, 1, 3, 2, 4 ], [ 6, 4, 8, 2, 7, 1, 5, 3 ], [ 7, 5, 1, 3, 6, 8, 4, 2 ], [ 8, 3, 2, 5, 4, 7, 6, 1 ] ] gap> IsomorphismGroups(F,DihedralGroup(IsPermGroup,8)); [ f1, f2, f3 ] -> [ (2,4), (1,2,3,4), (1,3)(2,4) ]
Exercise 6.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> Z10 := Center(D10); Group([ (1,6)(2,7)(3,8)(4,9)(5,10) ]) gap> F := D10/Z10; Group([ f1, f2 ]) gap> e10 := Elements(F); [ <identity> of ..., f1, f2, f1*f2, f2^2, f1*f2^2, f2^3, f1*f2^3, f2^4, f1*f2^4 ] gap> PrintArray(MultiplicationTable(e10)); [ [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 2, 1, 4, 3, 6, 5, 8, 7, 10, 9 ], [ 3, 10, 5, 2, 7, 4, 9, 6, 1, 8 ], [ 4, 9, 6, 1, 8, 3, 10, 5, 2, 7 ], [ 5, 8, 7, 10, 9, 2, 1, 4, 3, 6 ], [ 6, 7, 8, 9, 10, 1, 2, 3, 4, 5 ], [ 7, 6, 9, 8, 1, 10, 3, 2, 5, 4 ], [ 8, 5, 10, 7, 2, 9, 4, 1, 6, 3 ], [ 9, 4, 1, 6, 3, 8, 5, 10, 7, 2 ], [ 10, 3, 2, 5, 4, 7, 6, 9, 8, 1 ] ] gap> IsomorphismGroups(F,DihedralGroup(IsPermGroup,10)); [ f1, f2 ] -> [ (2,5)(3,4), (1,2,3,4,5) ] gap> D12 := DihedralGroup(IsPermGroup,24); Group([ (1,2,3,4,5,6,7,8,9,10,11,12), (2,12)(3,11)(4,10)(5,9)(6,8) ]) gap> Z12 := Center(D12); Group([ (1,7)(2,8)(3,9)(4,10)(5,11)(6,12) ]) gap> F := D12/Z12; Group([ f1, f2, f3 ]) gap> e12 := Elements(F); [ <identity> of ..., f1, f2, f3, f1*f2, f1*f3, f2*f3, f3^2, f1*f2*f3, f1*f3^2, f2*f3^2, f1*f2*f3^2 ] gap> PrintArray(MultiplicationTable(e12)); [ [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ], [ 2, 1, 5, 6, 3, 4, 9, 10, 7, 8, 12, 11 ], [ 3, 9, 8, 7, 2, 12, 1, 11, 6, 5, 4, 10 ], [ 4, 10, 7, 8, 12, 2, 11, 1, 5, 6, 3, 9 ], [ 5, 7, 10, 9, 1, 11, 2, 12, 4, 3, 6, 8 ], [ 6, 8, 9, 10, 11, 1, 12, 2, 3, 4, 5, 7 ], [ 7, 5, 1, 11, 10, 9, 4, 3, 2, 12, 8, 6 ], [ 8, 6, 11, 1, 9, 10, 3, 4, 12, 2, 7, 5 ], [ 9, 3, 2, 12, 8, 7, 6, 5, 1, 11, 10, 4 ], [ 10, 4, 12, 2, 7, 8, 5, 6, 11, 1, 9, 3 ], [ 11, 12, 4, 3, 6, 5, 8, 7, 10, 9, 1, 2 ], [ 12, 11, 6, 5, 4, 3, 10, 9, 8, 7, 2, 1 ] ] gap> IsomorphismGroups(F,DihedralGroup(IsPermGroup,12)); [ f1, f2, f3 ] -> [ (1,6)(2,5)(3,4), (1,2,3,4,5,6), (1,5,3)(2,6,4) ]
Section 7: Group Homomorphisms
gap> S3:= SymmetricGroup(3);
Sym( [ 1 .. 3 ] )
gap> f1:= GroupHomomorphismByImages(S3, S3, [(1,2,3),(1,3)], [(1,3,2), (1,2)]);
[ (1,2,3), (1,3) ] -> [ (1,3,2), (1,2) ]
gap> Image(f1, (2,3));
(2,3)
gap> Image(f1, (1,2));
(1,3)
gap> f1:= GroupHomomorphismByImages(S3, S3, [(1,2,3),(1,3)], [(1,2), (1,2)]);
fail
gap> f1:= GroupHomomorphismByImages(S3, S3, [(1,2,3),(1,3)], [(1,3,2), (1,2)]);
[ (1,2,3), (1,3) ] -> [ (1,3,2), (1,2) ]
gap> Kernel(f1);
Group(())
gap> Read("autoDn");
gap> Read("homoDn");
gap> d6:= DihedralGroup(IsPermGroup,12);
Group([ (1,2,3,4,5,6), (2,6)(3,5) ])
gap> autoDn(d6);
[ [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,2,3,4,5,6), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,2,3,4,5,6), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,6)(2,5)(3,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,6,5,4,3,2), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,6,5,4,3,2), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,6)(2,5)(3,4) ] ]
gap> homoDn(d6);
[ [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), () ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (2,6)(3,5) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,4)(2,5)(3,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (), (1,6)(2,5)(3,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (2,6)(3,5), () ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (2,6)(3,5), (2,6)(3,5) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (2,6)(3,5), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (2,6)(3,5), (1,4)(2,5)(3,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2)(3,6)(4,5), () ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2)(3,6)(4,5), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,2)(3,6)(4,5), (1,4)(2,5)(3,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2)(3,6)(4,5), (1,5)(2,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,2,3,4,5,6), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,2,3,4,5,6), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,2,3,4,5,6), (1,6)(2,5)(3,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3)(4,6), () ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3)(4,6), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3)(4,6), (1,4)(2,5)(3,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,3)(4,6), (1,6)(2,5)(3,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3,5)(2,4,6), (2,6)(3,5) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3,5)(2,4,6), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,3,5)(2,4,6), (1,3)(4,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3,5)(2,4,6), (1,4)(2,3)(5,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,3,5)(2,4,6), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,3,5)(2,4,6), (1,6)(2,5)(3,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,3)(5,6), () ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,3)(5,6), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,4)(2,3)(5,6), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,3)(5,6), (1,4)(2,5)(3,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,5)(3,6), () ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,4)(2,5)(3,6), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,5)(3,6), (1,2)(3,6)(4,5) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,5)(3,6), (1,3)(4,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,4)(2,5)(3,6), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,5)(3,6), (1,4)(2,5)(3,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,4)(2,5)(3,6), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,4)(2,5)(3,6), (1,6)(2,5)(3,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5)(2,4), () ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5)(2,4), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,5)(2,4), (1,4)(2,5)(3,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5)(2,4), (1,5)(2,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5,3)(2,6,4), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,5,3)(2,6,4), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5,3)(2,6,4), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5,3)(2,6,4), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,5,3)(2,6,4), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,5,3)(2,6,4), (1,6)(2,5)(3,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (2,6)(3,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,6,5,4,3,2), (1,2)(3,6)(4,5) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,3)(4,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,4)(2,3)(5,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,6,5,4,3,2), (1,5)(2,4) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,5,4,3,2), (1,6)(2,5)(3,4) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6)(2,5)(3,4), () ], [ (1,2,3,4,5,6), (2,6)(3,5) ] ->
[ (1,6)(2,5)(3,4), (1,3)(4,6) ], [ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6)(2,5)(3,4), (1,4)(2,5)(3,6) ],
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6)(2,5)(3,4), (1,6)(2,5)(3,4) ] ]
Exercise 7.2 gap> d4:= DihedralGroup(IsPermGroup,8); Group([ (1,2,3,4), (2,4) ]) gap> autoDn(d4); [ [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,4)(2,3) ] ] gap> f1:= GroupHomomorphismByImages(d4, d4, [(1,2,3,4),(1,3)], [(1,2,3,4), (2,4)]); [ (1,2,3,4), (1,3) ] -> [ (1,2,3,4), (2,4) ] gap> Image(f1, (2,4)); (1,3) gap> homoDn(d4); [ [ (1,2,3,4), (2,4) ] -> [ (), () ], [ (1,2,3,4), (2,4) ] -> [ (), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (2,4), () ], [ (1,2,3,4), (2,4) ] -> [ (2,4), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (2,4), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (2,4), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2)(3,4), () ], [ (1,2,3,4), (2,4) ] -> [ (1,2)(3,4), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2)(3,4), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2)(3,4), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,2,3,4), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,3), () ], [ (1,2,3,4), (2,4) ] -> [ (1,3), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,3), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,3), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), () ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,3)(2,4), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,4,3,2), (1,4)(2,3) ], [ (1,2,3,4), (2,4) ] -> [ (1,4)(2,3), () ], [ (1,2,3,4), (2,4) ] -> [ (1,4)(2,3), (1,2)(3,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4)(2,3), (1,3)(2,4) ], [ (1,2,3,4), (2,4) ] -> [ (1,4)(2,3), (1,4)(2,3) ] ]
Exercise 7.4 gap> d19:= DihedralGroup(IsPermGroup,38); Group([ (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), (2,19)(3,18)(4,17)(5,16)(6,15)(7,14)(8,13)(9,12)(10,11) ]) gap> Size(homoDn(d19)); 362 gap> Size(autoDn(d19)); 342 gap> d21:= DihedralGroup(IsPermGroup,42); Group([ (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21), (2,21)(3,20)(4,19)(5,18)(6,17)(7,16)(8,15)(9,14)(10, 13)(11,12) ]) gap> Size(autoDn(d21)); 252 gap> Size(homoDn(d21)); 442
Section 8: Introduction to Rings
gap> r:= Integers mod 8; (Integers mod 8) gap> Elements(r); [ ZmodnZObj( 0, 8 ), ZmodnZObj( 1, 8 ), ZmodnZObj( 2, 8 ), ZmodnZObj( 3, 8 ), ZmodnZObj( 4, 8 ), ZmodnZObj( 5, 8 ), ZmodnZObj( 6, 8 ), ZmodnZObj( 7, 8 ) ] gap> s:= Integers mod 7; GF(7) gap> Elements(s); [ 0*Z(7), Z(7)^0, Z(7), Z(7)^2, Z(7)^3, Z(7)^4, Z(7)^5 ] gap> Int(Z(7)) > ; 3 gap> 5*One(s); Z(7)^5 gap> 3^5 mod 7; 5
Exercise 8.1
gap> R:= Integers mod 3;
GF(3)
gap> Elements(R);
[ 0*Z(3), Z(3)^0, Z(3) ]
gap> Int(Z(3));
2
gap> z:= Z(3);
Z(3)
gap> z^2+z^2;
Z(3)
gap> (z^0)^2+z^2;
Z(3)
gap> R:= Integers mod 5;
GF(5)
gap> Elements(R);
[ 0*Z(5), Z(5)^0, Z(5), Z(5)^2, Z(5)^3 ]
gap> Int(Z(5))
> ;
2
gap> z:= Z(5);
Z(5)
gap> (z^0)^2+z^2;
0*Z(5)
gap> R:= Integers mod 11;
GF(11)
gap> Elements(R);
[ 0*Z(11), Z(11)^0, Z(11), Z(11)^2, Z(11)^3, Z(11)^4, Z(11)^5, Z(11)^6, Z(11)^7, Z(11)^8, Z(11)^9 ]
gap> Int(Z(11))
> ;
2
gap> z:= Z(11);
Z(11)
gap> (z^0)^2+z^2;
Z(11)^4
gap> (z)^2+z^2;
Z(11)^3
gap> Read("intror");
gap> intror(3);
false
gap> intror(5);
true
gap> intror(7);
false
gap> M:= Integers mod 6;
(Integers mod 6)
gap> Idempotents(M);
[ ZmodnZObj( 0, 6 ), ZmodnZObj( 1, 6 ), ZmodnZObj( 3, 6 ), ZmodnZObj( 4, 6 ) ]
gap> N:= Integers mod 9;
(Integers mod 9)
gap> Idempotents(N);
[ ZmodnZObj( 0, 9 ), ZmodnZObj( 1, 9 ) ]
gap> Read("nilpotentCount");
gap> nilpotentCount(N);
3
gap> nilpotentCount(M);
1
gap> quit;
Back to Home Page
This PREP workshop is made possible by the NSF grant DUE: 0341481