PREP - Professional Enhancement Programs of the MAA



 

Incorporating the Software GAP into Teaching Abstract Algebra

A PREP Workshop

GAP log - Friday July 14, 10:00 am - 11:30 am

Project by Benjamin and Tom
gap> 53^123456 mod 67;
64
gap> PowerMod(53,123456,67);
64
gap> p:=10047871;
10047871
gap> IsPrime(p);
true
gap> q:=134927809;
134927809
gap> IsPrime(q);
true
gap> n:=p*q;
1355737219144639
gap> m:=Lcm(p-1,q-1);
225956179028160
gap> Factors(m);
[ 2, 2, 2, 2, 2, 2, 3, 3, 5, 7, 41, 43, 59, 277, 389 ]
gap> r:=631;
631
gap> cof:=Gcdex(r,m);
rec( gcd := 1, coeff1 := -69827979255929, coeff2 := 195, 
  coeff3 := 225956179028160, coeff4 := -631 )
gap> s:=m+cof.coeff1;
156128199772231
gap> r*s mod m = 1;
true
gap> r*s mod m;
1
gap> Read("MAAPrepGap");
gap> M:=encode("Alas, poor Yorick, I knew him well",8);
[ 37221129, 63102625, 25281061, 25281913, 21631045, 10212415, 33101819, 
  23103315, 2222 ]
gap> R:=List(M, k -> PowerMod(k,r,n));
[ 72602654202368, 376215205974873, 241136266110619, 542298043964769, 
  197459041018296, 790077187566629, 256524549026441, 532858391181503, 
  275874642040213 ]
gap> D:=List(R, k -> PowerMod(k,s,n));
[ 37221129, 63102625, 25281061, 25281913, 21631045, 10212415, 33101819, 
  23103315, 2222 ]
gap> decode(D,8);
"Alas, poor Yorick, I knew him well"
Section 18
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> IsomorphismGroups(DihedralGroup(6), G);
[ f1, f2 ] -> [ (1,4)(2,6)(3,5), (1,2,3)(4,5,6) ]
gap> G:= 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> Order(G);
8
gap> IsomorphismGroups(DihedralGroup(IsPermGroup, 8), G);
[ (1,2,3,4), (2,4) ] -> [ (1,2,3,4)(5,6,7,8), (1,8)(2,7)(3,6)(4,5) ]
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> Order(symmetries3);
12
gap> IsomorphismGroups(DihedralGroup(IsPermGroup, 12), symmetrie3);
Variable: 'symmetrie3' must have a value

gap> IsomorphismGroups(DihedralGroup(IsPermGroup, 12), symmetries3);
[ (1,2,3,4,5,6), (2,6)(3,5) ] -> [ (1,6,2,4,3,5), (1,6)(2,5)(3,4) ]
gap> symmetries5:= Subgroup(SymmetricGroup(10), [(1,2,3,4,5)(6,7,8,9,10), 
> (1,10)(2,9)(3,8)(4,7)(5,6), (1,5)(2,4)(6,10)(7,9)]);;
gap> Order(symmetries5);
20
gap> IsomorphismGroups(DihedralGroup(IsPermGroup, 20), symmetries5);
[ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7) ] -> [ (1,7,3,9,5,6,2,8,4,10), (1,4)(2,3)(6,9)(7,8) ]
gap> symmetries4:= Subgroup(SymmetricGroup(8), [(1,2,3,4)(5,6,7,8), 
> (1,8)(4,5)(3,6)(2,7), (1,4)(2,3)(5,8)(6,7)]);;
gap> Order(symmetries4);
16
gap> IsomorphismGroups(DihedralGroup(IsPermGroup, 16), symmetries4);
fail
gap> LogTo();
Back to Home Page
 
 

This PREP workshop is made possible by the NSF grant DUE: 0341481

<\body>