  
  [1m[4m[31m4. An example of [1mUnitLib[1m[4m[31m usage[0m
  
  We will finish with several examples of [1mUnitLib[0m usage to give an idea how to
  work with the package.
  
  In  the first example we retrieve from the library the normalized unit group
  of  the  group  algebra of the dihedral group of order 128 over the field of
  two  elements, compute its center and express one of its generators in terms
  of group algebra elements:
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35m[0m
    [22m[35mgap> IdGroup(DihedralGroup(128));[0m
    [22m[35m[ 128, 161 ][0m
    [22m[35mgap> V := PcNormalizedUnitGroupSmallGroup( 128, 161 );[0m
    [22m[35m<pc group of size 170141183460469231731687303715884105728 [0m
    [22m[35m  with 127 generators>[0m
    [22m[35mgap> C := Center( V );           [0m
    [22m[35m<pc group with 34 generators>  [0m
    [22m[35mgap> gens := MinimalGeneratingSet( C );;[0m
    [22m[35mgap> KG := UnderlyingGroupRing( V );[0m
    [22m[35m<algebra-with-one over GF(2), with 7 generators>[0m
    [22m[35mgap> f := NaturalBijectionToNormalizedUnitGroup( KG );;[0m
    [22m[35mgap> gens[8]^f;[0m
    [22m[35m(Z(2)^0)*f3+(Z(2)^0)*f4+(Z(2)^0)*f7+(Z(2)^0)*f3*f4+(Z(2)^[0m
    [22m[35m0)*f3*f5+(Z(2)^0)*f3*f6+(Z(2)^0)*f3*f7+(Z(2)^0)*f4*f5+(Z(2)^[0m
    [22m[35m0)*f4*f6+(Z(2)^0)*f4*f7+(Z(2)^0)*f3*f4*f5+(Z(2)^0)*f3*f4*f6+([0m
    [22m[35mZ(2)^0)*f3*f4*f7+(Z(2)^0)*f3*f5*f6+(Z(2)^0)*f3*f5*f7+(Z(2)^[0m
    [22m[35m0)*f3*f6*f7+(Z(2)^0)*f4*f5*f6+(Z(2)^0)*f4*f5*f7+(Z(2)^[0m
    [22m[35m0)*f4*f6*f7+(Z(2)^0)*f3*f4*f5*f6+(Z(2)^0)*f3*f4*f5*f7+(Z(2)^[0m
    [22m[35m0)*f3*f4*f6*f7+(Z(2)^0)*f3*f5*f6*f7+(Z(2)^0)*f4*f5*f6*f7+(Z(2)^[0m
    [22m[35m0)*f3*f4*f5*f6*f7[0m
    [22m[35m[0m
  [22m[35m------------------------------------------------------------------[0m
  
  In  the second example we will check the conjecture about the coincidence of
  the lower and upper Lie nilpotency indices of the modular group algebras for
  all non-abelian groups of order 64.
  
  It is known that these indices coincide for p-groups with p>3 [BP92], but in
  the general case the problem remains open.
  
  The  indices  t_L(G)  and  t^L(G)  can be computed using the [1mLAGUNA[0m package.
  While  the  upper Lie nilpotency index can be expressed only in terms of the
  underlying  group  G,  the  lower  Lie nilpotency index is determined by the
  formula  t_L(G)  =  cl  V(KG)  +  1  [D92],  and can be computed immediately
  whenever V(KG) is known.
  
  In  the  program  below  we  enumerate  all  groups of size 64 and check the
  conjecture  (we  do  not  exclude  from  consideration  other cases when the
  conjecture  is  known to be true for p=2, because this is beyond the task of
  this manual).
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35m[0m
    [22m[35mgap> for n in [ 1 .. NrSmallGroups( 64 ) ] do[0m
    [22m[35m> if not IsAbelian( SmallGroup( 64, n ) ) then[0m
    [22m[35m>   V := PcNormalizedUnitGroupSmallGroup( 64, n );[0m
    [22m[35m>   if LieLowerNilpotencyIndex( KG ) <>[0m
    [22m[35m>      LieUpperNilpotencyIndex( KG ) then[0m
    [22m[35m>     Print( n," - counterexample !!! \n" );[0m
    [22m[35m>     break;[0m
    [22m[35m>   fi;[0m
    [22m[35m> fi;[0m
    [22m[35m> od;[0m
    [22m[35mgap>[0m
    [22m[35m[0m
  [22m[35m------------------------------------------------------------------[0m
  
  Thus, the test was finished without finding a counterexample.
  
  In  the  next  example we will answer the question about possible nilpotency
  classes  of  normalized  unit groups of modular group algebras of nonabelian
  groups of order 128:
  
  [22m[35m---------------------------  Example  ----------------------------[0m
    [22m[35m[0m
    [22m[35mgap> cl := [];[0m
    [22m[35mgap> for n in [ 1 .. NrSmallGroups( 128 ) ] do[0m
    [22m[35m> if not IsAbelian( SmallGroup( 128, n ) ) then[0m
    [22m[35m>   V := PcNormalizedUnitGroupSmallGroup( 128, n );  [0m
    [22m[35m>   AddSet( cl, NilpotencyClassOfGroup( V ) );[0m
    [22m[35m> fi;[0m
    [22m[35m> od;[0m
    [22m[35mgap> cl;[0m
    [22m[35m[ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 16, 32 ][0m
    [22m[35m[0m
  [22m[35m------------------------------------------------------------------[0m
  
  With  [1mUnitLib[0m  you  can  perform  the  computation  from the last example in
  several  hours on a modern computer. Without [1mUnitLib[0m you will spend the same
  time  to  compute  only  several  normalized unit groups V(KG) for groups of
  order 128 with the help of the [1mLAGUNA[0m package. Note that without [1mLAGUNA[0m such
  computation would not be feasible at all.
  
