################################################################### #David Joyner, 11-2006 # # # # +--------------+ # | 1 2 3 | # | 4 top 5 | # | 6 7 8 | # +--------------+--------------+--------------+--------------+ # | 9 10 11 | 17 18 19 | 25 26 27 | 33 34 35 | # | 12 left 13 | 20 front 21 | 28 right 29 | 36 rear 37 | # | 14 15 16 | 22 23 24 | 30 31 32 | 38 39 40 | # +--------------+--------------+--------------+--------------+ # | 41 42 43 | # | 44 bottom 45 | # | 46 47 48 | # +--------------+ # ################################################################### U:=( 1, 3, 8, 6)( 2, 5, 7, 4)( 9,33,25,17)(10,34,26,18)(11,35,27,19); L:=( 9,11,16,14)(10,13,15,12)( 1,17,41,40)( 4,20,44,37)( 6,22,46,35); F:= (17,19,24,22)(18,21,23,20)( 6,25,43,16)( 7,28,42,13)( 8,30,41,11); R:=(25,27,32,30)(26,29,31,28)( 3,38,43,19)( 5,36,45,21)( 8,33,48,24); B:=(33,35,40,38)(34,37,39,36)( 3, 9,46,32)( 2,12,47,29)( 1,14,48,27); D:=(41,43,48,46)(42,45,47,44)(14,22,30,38)(15,23,31,39)(16,24,32,40); cube := Group(U,L,F,R,B,D);; #gap> Size(cube); #43252003274489856000 square_group := Group(U^2,L^2,F^2,R^2,B^2,D^2);; #gap> Size(square_group); #663552 #gap> IsAbelian(square_group); #false square_two_faces := Group(U^2,R^2);; #gap> Size(square_two_faces); #12 #gap> IsAbelian(square_two_faces); #false two_faces:= Group(U,R); ## 2-faced cube #gap> Size(two_faces); #73483200 #LoadPackage("grape"); #Gamma := CayleyGraph( two_faces, [U,U^(-1), R, R^(-1)] );; #Diameter( Gamma ); #Gammatoo big? N1:= Size( cube ); Collected( Factors(N1) ); N2:=Size(square_group); Collected( Factors(N2) ); N3:=Size(two_faces); Collected( Factors(N3) ); Kgens:=[]; for g in G do if (8^g in [8,19,25]) and (3^g in [3,27,33]) then Kgens:=Concatenation([g],Kgens); fi; od; K:=Group(Kgens); # #gap> Size(K); #1620 Kgens:=[]; for g in G do if (8^g in [8,19,25]) and (3^g in [3,27,33]) and (6^g in [6,11,17]) then Kgens:=Concatenation([g],Kgens); fi; od; K:=Group(Kgens); # #gap> IsAbelian(K); #true #gap> IsNormal(two_faces,K); #true #gap> C := Complementclasses(two_faces,K);; #gap> Length(C); #3 #gap> IdGroup(C[1]); IdGroup(H); #[ 120, 34 ] #[ 120, 34 ] Kgens:=[]; for g in two_faces do if (8^g in [8,19,25]) and (3^g in [3,27,33]) and (6^g in [6,11,17])\ and (1^g in [1,9,35]) and (24^g in [24,30,43]) and (32^g in [32,38,48])\ and (7^g = 7) and (28^g = 28) then Kgens:=Concatenation([g],Kgens); fi; od; K:=Group(Kgens); # #gap> IsAbelian(K); #true #gap> IsNormal(two_faces,K); #false Kgens:=[]; for g in two_faces do if (8^g in [8,19,25]) and (3^g in [3,27,33]) and (6^g in [6,11,17])\ and (1^g in [1,9,35]) and (24^g in [24,30,43]) and (32^g in [32,38,48]) then Kgens:=Concatenation([g],Kgens); fi; od; K:=Group(Kgens); # #gap> IsAbelian(K); #false IsNormal(two_faces,K); #true