
Section 14, continued
gap> x := X(GF(2),"x"); x gap> g:=1+x+x^2+x^4+x^8; x^8+x^4+x^2+x+Z(2)^0 gap> Factors(g); [ x^4+x^3+Z(2)^0, x^4+x^3+x^2+x+Z(2)^0 ] gap> polyring := PolynomialRing(GF(16)); PolynomialRing(..., [ x ]) gap> Factors(polyring,g); [ x+Z(2^4)^3, x+Z(2^4)^6, x+Z(2^4)^7, x+Z(2^4)^9, x+Z(2^4)^11, x+Z(2^4)^12, x+Z(2^4)^13, x+Z(2^4)^14 ]
gap> f := CF(8); CF(8) gap> E(8)^2; E(4) gap> E(8)^4; -1 gap> Subfields(f); [ Rationals, GaussianRationals, CF(8), NF(8,[ 1, 3 ]), NF(8,[ 1, 7 ]) ] gap> g := GaloisGroup(AsField(Rationals,CF(8))); <group of size 4 with 2 generators> gap> Elements(g); [ IdentityMapping( CF(8) ), ANFAutomorphism( CF(8), 3 ), ANFAutomorphism( CF(8), 5 ), ANFAutomorphism( CF(8), 7 ) ]
Exercise 14.6 gap> g1 := GaloisGroup(AsField(Rationals,CF(9))); <group with 1 generators> gap> Order(g1); 6 gap> g2 := GaloisGroup(AsField(Rationals,CF(7))); <group with 1 generators> gap> Order(g2); 6
Exercise 14.7 gap> g1 := GaloisGroup(AsField(Rationals,CF(10))); <group with 1 generators> gap> Order(g1); 4 gap> g2 := GaloisGroup(AsField(Rationals,CF(8))); <group of size 4 with 2 generators> gap> IsCyclic(g2); false
Exercise 14.8
gap> g := GaloisGroup(AsField(Rationals,CF(15)));
<group with 2 generators>
gap> Order(g);
8
gap> Read("orderFrequency");
gap> orderFrequency(g);
[ [ 1, 1 ], [ 2, 3 ], [ 4, 4 ] ]
gap> e:=Elements(g);
[ IdentityMapping( CF(15) ), ANFAutomorphism( CF(15), 2 ), ANFAutomorphism( CF(15), 4 ),
ANFAutomorphism( CF(15), 7 ), ANFAutomorphism( CF(15), 8 ), ANFAutomorphism( CF(15), 11 ),
ANFAutomorphism( CF(15), 13 ), ANFAutomorphism( CF(15), 14 ) ]
gap> Order(e[2]);
4
Exercise 14.9 gap> g1 := GaloisGroup(AsField(Rationals,CF(64))); <group with 2 generators> gap> Order(g1); 32 gap> g2 := GaloisGroup(AsField(Rationals,CF(80))); <group with 3 generators> gap> Order(g2); 32 gap> orderFrequency(g1); [ [ 1, 1 ], [ 2, 3 ], [ 4, 4 ], [ 8, 8 ], [ 16, 16 ] ] gap> orderFrequency(g2); [ [ 1, 1 ], [ 2, 7 ], [ 4, 24 ] ] gap> IsAbelian(g1); true gap> IsAbelian(g2); true
Exercise 14.10 gap> f := Subfields(CF(60)); [ Rationals, CF(3), GaussianRationals, CF(5), NF(5,[ 1, 4 ]), CF(12), NF(12,[ 1, 11 ]), CF(15), NF(15,[ 1, 2, 4, 8 ]), NF(15,[ 1, 4 ]), NF(15,[ 1, 14 ]), CF(20), NF(20,[ 1, 3, 7, 9 ]), NF(20,[ 1, 9 ]), NF(20,[ 1, 19 ]), CF(60), NF(60,[ 1, 7, 11, 17, 43, 49, 53, 59 ]), NF(60,[ 1, 7, 43, 49 ]), NF(60,[ 1, 11 ]), NF(60,[ 1, 11, 19, 29 ]), NF(60,[ 1, 11, 49, 59 ]), NF(60,[ 1, 17, 49, 53 ]), NF(60,[ 1, 19 ]), NF(60,[ 1, 23, 47, 49 ]), NF(60,[ 1, 29 ]), NF(60,[ 1, 49 ]), NF(60,[ 1, 59 ]) ] gap> Size(f); 27
Exercise 14.11 gap> g := GaloisGroup(AsField(Rationals,CF(60))); <group of size 16 with 3 generators> gap> Elements(g); [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ), ANFAutomorphism( CF(60), 59 ) ] gap> IsAbelian(g); true gap> classes := ConjugacyClassesSubgroups(g); [ Group( IdentityMapping( CF(60) ) )^G, Group( [ ANFAutomorphism( CF(60), 11 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 19 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 29 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 31 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 41 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 49 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 59 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 19 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 31 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 49 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 41 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 31 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 41 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 7 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 13 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 17 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 23 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 7 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 13 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 7 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 17 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 7 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 13 ) ] )^G, Group( [ ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 37 ) ] )^G ] gap> Size(classes); 27 gap> subs:=List(classes, x -> Representative(x)); [ <trivial group>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 2 with 1 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 4 with 2 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 8 with 3 generators>, <group of size 16 with 3 generators> ] gap> subs_as_elts := List(subs, x -> Elements(x)); [ [ IdentityMapping( CF(60) ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 19 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 29 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 31 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 41 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 29 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 41 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 59 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ) ], [ IdentityMapping( CF(60) ), ANFAutomorphism( CF(60), 7 ), ANFAutomorphism( CF(60), 11 ), ANFAutomorphism( CF(60), 13 ), ANFAutomorphism( CF(60), 17 ), ANFAutomorphism( CF(60), 19 ), ANFAutomorphism( CF(60), 23 ), ANFAutomorphism( CF(60), 29 ), ANFAutomorphism( CF(60), 31 ), ANFAutomorphism( CF(60), 37 ), ANFAutomorphism( CF(60), 41 ), ANFAutomorphism( CF(60), 43 ), ANFAutomorphism( CF(60), 47 ), ANFAutomorphism( CF(60), 49 ), ANFAutomorphism( CF(60), 53 ), ANFAutomorphism( CF(60), 59 ) ] ] gap> f; [ Rationals, CF(3), GaussianRationals, CF(5), NF(5,[ 1, 4 ]), CF(12), NF(12,[ 1, 11 ]), CF(15), NF(15,[ 1, 2, 4, 8 ]), NF(15,[ 1, 4 ]), NF(15,[ 1, 14 ]), CF(20), NF(20,[ 1, 3, 7, 9 ]), NF(20,[ 1, 9 ]), NF(20,[ 1, 19 ]), CF(60), NF(60,[ 1, 7, 11, 17, 43, 49, 53, 59 ]), NF(60,[ 1, 7, 43, 49 ]), NF(60,[ 1, 11 ]), NF(60,[ 1, 11, 19, 29 ]), NF(60,[ 1, 11, 49, 59 ]), NF(60,[ 1, 17, 49, 53 ]), NF(60,[ 1, 19 ]), NF(60,[ 1, 23, 47, 49 ]), NF(60,[ 1, 29 ]), NF(60,[ 1, 49 ]), NF(60,[ 1, 59 ]) ] gap> g := GaloisGroup(AsField(NF(20,[ 1, 3, 7, 9 ]),CF(60))); <group with 2 generators> gap> Order(g); 8
Section 15: Another False Conjecture
gap> G:= Subgroup(SymmetricGroup(6), [(1,2,3)(4,5,6),(1,4)(2,6)(3,5)]); Group([ (1,2,3)(4,5,6), (1,4)(2,6)(3,5) ]) gap> Elements(G); [ (), (1,2,3)(4,5,6), (1,3,2)(4,6,5), (1,4)(2,6)(3,5), (1,5)(2,4)(3,6), (1,6)(2,5)(3,4) ] gap> d3:= SymmetricGroup(3); Sym( [ 1 .. 3 ] ) gap> IsomorphismGroups(d3,G); [ (1,2,3), (1,2) ] -> [ (1,2,3)(4,5,6), (1,5)(2,4)(3,6) ]
Exercise 15.1 gap> rotations4:= Subgroup(SymmetricGroup(8), [(1,2,3,4)(5,6,7,8), (1,8)(2,7)(3,6)(4,5)]); Group([ (1,2,3,4)(5,6,7,8), (1,8)(2,7)(3,6)(4,5) ]) gap> Size(rotations4); 8 gap> orderFrequency(rotations4); [ [ 1, 1 ], [ 2, 5 ], [ 4, 2 ] ]
Exercise 15.2 gap> rotations5:= Subgroup(SymmetricGroup(10), [(1,2,3,4,5)(6,7,8,9,10), (1,9)(2,8)(3,7)(4,6)(5,10)]); Group([ (1,2,3,4,5)(6,7,8,9,10), (1,9)(2,8)(3,7)(4,6)(5,10) ]) gap> Size(rotations5); 10 gap> orderFrequency(rotations5); [ [ 1, 1 ], [ 2, 5 ], [ 5, 4 ] ]
Exercise 15.6 gap> symmetries3:= Subgroup(SymmetricGroup(6), [(1,2,3)(4,5,6), (1,4)(2,6)(3,5) > , (2,3)(5,6)]); Group([ (1,2,3)(4,5,6), (1,4)(2,6)(3,5), (2,3)(5,6) ]) gap> Size(symmetries3); 12 gap> orderFrequency(symmetries3); [ [ 1, 1 ], [ 2, 7 ], [ 3, 2 ], [ 6, 2 ] ] gap> d6:= DihedralGroup(12); <pc group of size 12 with 3 generators> gap> orderFrequency(d6); [ [ 1, 1 ], [ 2, 7 ], [ 3, 2 ], [ 6, 2 ] ] gap> IsomorphismGroups(d6, symmetries3); [ f1, f2, f3 ] -> [ (1,4)(2,6)(3,5), (1,5,3,4,2,6), (1,3,2)(4,6,5) ]
Exercise 15.7 gap> symmetries5:= Subgroup(SymmetricGroup(10), [(1,2,3,4,5)(6,7,8,9,10), (1,9)(2,8)(3,7)(4,6)(5,10), > (1,4)(2,3)(6,9)(7,8)]); Group([ (1,2,3,4,5)(6,7,8,9,10), (1,9)(2,8)(3,7)(4,6)(5,10), (1,4)(2,3)(6,9)(7,8) ]) gap> Size(symmetries5); 20 gap> d10:= DihedralGroup(20); <pc group of size 20 with 3 generators> gap> IsomorphismGroups(d10, symmetries5); [ f1, f2, f3 ] -> [ (1,3)(4,5)(6,8)(9,10), (1,10,4,8,2,6,5,9,3,7), (1,4,2,5,3)(6,9,7,10,8) ] gap> symmetries4:= Subgroup(SymmetricGroup(8), [(1,2,3,4)(5,6,7,8), (1,8)(2,7)(3,6)(4,5), > (1,4)(2,3)(5,8)(6,7)]); Group([ (1,2,3,4)(5,6,7,8), (1,8)(2,7)(3,6)(4,5), (1,4)(2,3)(5,8)(6,7) ])
Exercise 15.9 gap> Size(symmetries4); 16 gap> d8:= DihedralGroup(16); <pc group of size 16 with 4 generators> gap> IsomorphismGroups(d8, symmetries4); fail gap> Elements(symmetries4); [ (), (2,4)(6,8), (1,2)(3,4)(5,6)(7,8), (1,2,3,4)(5,6,7,8), (1,3)(5,7), (1,3)(2,4)(5,7)(6,8), (1,4,3,2)(5,8,7,6), (1,4)(2,3)(5,8)(6,7), (1,5)(2,6)(3,7)(4,8), (1,5)(2,8)(3,7)(4,6), (1,6)(2,5)(3,8)(4,7), (1,6,3,8)(2,7,4,5), (1,7)(2,6)(3,5)(4,8), (1,7)(2,8)(3,5)(4,6), (1,8,3,6)(2,5,4,7), (1,8)(2,7)(3,6)(4,5) ]
Section 16: Gaussian Integers
gap> R:= GaussianIntegers; GaussianIntegers gap> quit;Back to Home Page
This PREP workshop is made possible by the NSF grant DUE: 0341481