  
  [1X3 [33X[0;0YAn example application[133X[101X
  
  [33X[0;0YIn  this  section  we outline three example computations with functions from
  the previous chapter.[133X
  
  
  [1X3.1 [33X[0;0YPresentation for rational matrix groups[133X[101X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xmats :=[127X[104X
    [4X[28X[ [ [ 1, 0, -1/2, 0 ], [ 0, 1, 0, 1 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],[128X[104X
    [4X[28X  [ [ 1, 1/2, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 1 ], [ 0, 0, 0, 1 ] ],[128X[104X
    [4X[28X  [ [ 1, 0, 0, 1 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],[128X[104X
    [4X[28X  [ [ 1, -1/2, -3, 7/6 ], [ 0, 1, -1, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 0, 1 ] ],[128X[104X
    [4X[28X  [ [ -1, 3, 3, 0 ], [ 0, 0, 1, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 0, 1 ] ] ];[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XG := Group( mats );[127X[104X
    [4X[28X<matrix group with 5 generators>[128X[104X
    [4X[28X[128X[104X
    [4X[28X# calculate an isomorphism from G to a pcp-group[128X[104X
    [4X[25Xgap>[125X [27Xnat := IsomorphismPcpGroup( G );;[127X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XH := Image( nat );[127X[104X
    [4X[28XPcp-group with orders [ 2, 2, 3, 5, 5, 5, 0, 0, 0 ][128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27Xh := GeneratorsOfGroup( H );[127X[104X
    [4X[28X[ g1, g2, g3, g4, g5, g6, g7, g8, g9][128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27Xmats2 := List( h, x -> PreImage( nat, x ) );;[127X[104X
    [4X[28X[128X[104X
    [4X[28X# take a random element of G[128X[104X
    [4X[25Xgap>[125X [27Xexp :=  [ 1, 1, 1, 1, 0, 0, 0, 0, 1 ];;[127X[104X
    [4X[25Xgap>[125X [27Xg := MappedVector( exp, mats2 );[127X[104X
    [4X[28X[ [ -1, 17/2, -1, 233/6 ],[128X[104X
    [4X[28X  [ 0, 1, 0, -2 ],[128X[104X
    [4X[28X  [ 0, 1, -1, 2 ],[128X[104X
    [4X[28X  [ 0, 0, 0, 1 ] ][128X[104X
    [4X[28X[128X[104X
    [4X[28X# map g into the image of nat[128X[104X
    [4X[25Xgap>[125X [27Xi := ImageElm( nat, g );[127X[104X
    [4X[28Xg1*g2*g3*g4*g9[128X[104X
    [4X[28X[128X[104X
    [4X[28X# exponent vector[128X[104X
    [4X[25Xgap>[125X [27XExponents( i );[127X[104X
    [4X[28X[ 1, 1, 1, 1, 0, 0, 0, 0, 1 ][128X[104X
    [4X[28X[128X[104X
    [4X[28X# compare the preimage with g[128X[104X
    [4X[25Xgap>[125X [27XPreImagesRepresentative( nat, i );[127X[104X
    [4X[28X[ [ -1, 17/2, -1, 233/6 ],[128X[104X
    [4X[28X  [ 0, 1, 0, -2 ],[128X[104X
    [4X[28X  [ 0, 1, -1, 2 ],[128X[104X
    [4X[28X  [ 0, 0, 0, 1 ] ][128X[104X
    [4X[28X[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27Xlast = g;[127X[104X
    [4X[28Xtrue[128X[104X
    [4X[28X[128X[104X
  [4X[32X[104X
  
  
  [1X3.2 [33X[0;0YModules series[133X[101X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xgens :=[127X[104X
    [4X[28X[ [ [ 1746/1405, 524/7025, 418/1405, -77/2810 ],[128X[104X
    [4X[28X    [ 815/843, 899/843, -1675/843, 415/281 ],[128X[104X
    [4X[28X    [ -3358/4215, -3512/21075, 4631/4215, -629/1405 ],[128X[104X
    [4X[28X    [ 258/1405, 792/7025, 1404/1405, 832/1405 ] ],[128X[104X
    [4X[28X  [ [ -2389/2810, 3664/21075, 8942/4215, -35851/16860 ],[128X[104X
    [4X[28X    [ 395/281, 2498/2529, -5105/5058, 3260/2529 ],[128X[104X
    [4X[28X    [ 3539/2810, -13832/63225, -12001/12645, 87053/50580 ],[128X[104X
    [4X[28X    [ 5359/1405, -3128/21075, -13984/4215, 40561/8430 ] ] ];[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XH := Group( gens );[127X[104X
    [4X[28X<matrix group with 2 generators>[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XRadicalSeriesSolvableMatGroup( H );[127X[104X
    [4X[28X[ [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ], [ 0, 0, 1, 0 ], [ 0, 0, 0, 1 ] ],[128X[104X
    [4X[28X  [ [ 1, 0, 0, 79/138 ], [ 0, 1, 0, -275/828 ], [ 0, 0, 1, -197/414 ] ],[128X[104X
    [4X[28X  [ [ 1, 0, -3, 2 ], [ 0, 1, 55/4, -55/8 ] ],[128X[104X
    [4X[28X  [ [ 1, 4/15, 2/3, 1/6 ] ],[128X[104X
    [4X[28X  [  ] ][128X[104X
  [4X[32X[104X
  
  
  [1X3.3 [33X[0;0YTriangularizable subgroups[133X[101X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XG := PolExamples(3);[127X[104X
    [4X[28X<matrix group with 2 generators>[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XGeneratorsOfGroup( G );[127X[104X
    [4X[28X[ [ [ 73/10, -35/2, 42/5, 63/2 ],[128X[104X
    [4X[28X    [ 27/20, -11/4, 9/5, 27/4 ],[128X[104X
    [4X[28X    [ -3/5, 1, -4/5, -9 ],[128X[104X
    [4X[28X    [ -11/20, 7/4, -2/5, 1/4 ] ],[128X[104X
    [4X[28X  [ [ -42/5, 423/10, 27/5, 479/10 ],[128X[104X
    [4X[28X    [ -23/10, 227/20, 13/10, 231/20 ],[128X[104X
    [4X[28X    [ 14/5, -63/5, -4/5, -79/5 ],[128X[104X
    [4X[28X    [ -1/10, 9/20, 1/10, 37/20 ] ] ][128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27Xsubgroups := SubgroupsUnipotentByAbelianByFinite( G );[127X[104X
    [4X[28Xrec( T := <matrix group with 2 generators>,[128X[104X
    [4X[28X  U := <matrix group with 4 generators> )[128X[104X
    [4X[28X[128X[104X
    [4X[25Xgap>[125X [27XGeneratorsOfGroup( subgroups.T );[127X[104X
    [4X[28X[ [ [ 73/10, -35/2, 42/5, 63/2 ],[128X[104X
    [4X[28X    [ 27/20, -11/4, 9/5, 27/4 ],[128X[104X
    [4X[28X    [ -3/5, 1, -4/5, -9 ],[128X[104X
    [4X[28X    [ -11/20, 7/4, -2/5, 1/4 ] ],[128X[104X
    [4X[28X  [ [ -42/5, 423/10, 27/5, 479/10 ],[128X[104X
    [4X[28X    [ -23/10, 227/20, 13/10, 231/20 ],[128X[104X
    [4X[28X    [ 14/5, -63/5, -4/5, -79/5 ],[128X[104X
    [4X[28X    [ -1/10, 9/20, 1/10, 37/20 ] ] ][128X[104X
    [4X[28X[128X[104X
    [4X[28X# so G is triangularizable![128X[104X
  [4X[32X[104X
  
