  
  [1X2 [33X[0;0YTables[133X[101X
  
  [33X[0;0YFinite  dimensional algebras can be described by structure constants tables.
  For  nilpotent  algebras  it  is  not  necessary  to  store a full structure
  constants  table.  To  use  this  feature,  we introduce [13Xnilpotent structure
  constants  tables[113X or just [13Xnilpotent tables[113X for short. These are used heavily
  throughout the package.[133X
  
  
  [1X2.1 [33X[0;0YNilpotent tables[133X[101X
  
  [33X[0;0YLet  [22XA[122X be a finite-dimensional nilpotent associative algebra over a field [22XF[122X.
  Let  [22X(b_1, ..., b_d)[122X be a [13Xweighted basis[113X of [22XA[122X; that is, a basis with weights
  [22X(w_1, ..., w_d)[122X satisfying that [22XA^j = ⟨ b_i ∣ w_i ≥ j ⟩[122X. Let[133X
  
  
  [24X[33X[0;6Yb_i b_j = \sum_k a_{i,j,k} b_k.[133X
  
  [124X
  
  [33X[0;0YThe nilpotent table [22XT[122X for [22XA[122X (with respect to the basis [22X(b_1, ..., b_d)[122X) is a
  record with the following entries.[133X
  
  [8X[10Xdim[110X[8X[108X
        [33X[0;6Ythe dimension [22Xd[122X of [22XA[122X;[133X
  
  [8X[10Xfld[110X[8X[108X
        [33X[0;6Ythe field [22XF[122X of [22XA[122X;[133X
  
  [8X[10Xwgs[110X[8X[108X
        [33X[0;6Ythe weights [22X(w_1, ..., w_d)[122X;[133X
  
  [8X[10Xrnk[110X[8X[108X
        [33X[0;6Ythe rank [22Xe[122X of [22XA[122X (i.e. the dimension of [22XA/A^2[122X).[133X
  
  [8X[10Xwds[110X[8X[108X
        [33X[0;6Ya list of length [22Xd[122X with holes; if the [22Xi[122Xth entry is bounded, then it is
        of the form [22X[k,l][122X. In this case, [22Xw_i > 1[122X and [22Xb_i = b_k b_l[122X and [22Xw_k = 1[122X
        and [22Xw_l = w_i-1[122X holds.[133X
  
  [8X[10Xtab[110X[8X[108X
        [33X[0;6Ya partial structure constants table for [22XA[122X; if [10Xtab[i][j][k][110X is bounded,
        then  it is [22Xa_i,j,k[122X. Note that either a full vector [10Xtab[i][j][110X is given
        or [10Xtab[i][j][110X is unbounded. The entry [10Xtab[i][j][k][110X is available for [22X1 ≤
        i,j ≤ e[122X and if [10Xwds[i][110X is unbounded.[133X
  
  [8X[10Xcom[110X[8X[108X
        [33X[0;6Yoptional; if this is bounded, then it is a boolean. If this boolean is
        true, then the algebra is assumed to be commutative.[133X
  
  [33X[0;0YIn  a nilpotent table not all structure constants are readily available. The
  following  function  determines  the structure constants for the product [22Xb_i
  b_j[122X.  If  the  global  variable  [10XSTORE[110X is true, then the function stores the
  computed entry in the table.[133X
  
  [1X2.1-1 GetEntryTable[101X
  
  [33X[1;0Y[29X[2XGetEntryTable[102X( [3XT[103X, [3Xi[103X, [3Xj[103X ) [32X function[133X
  
  [33X[0;0YThe  result  of  the  multiplication  of  the  elements  [22Xv[122X and [22Xw[122X in [22XT[122X can be
  obtained  using  the  following  function. An example of its use is provided
  below.[133X
  
  [1X2.1-2 MultByTable[101X
  
  [33X[1;0Y[29X[2XMultByTable[102X( [3XT[103X, [3Xv[103X, [3Xw[103X ) [32X function[133X
  
  [33X[0;0YWe  consider  two  nilpotent tables as equal if they would be equal once the
  full set of structure constants is bound. The following function provides an
  effective check for this.[133X
  
  [1X2.1-3 CompareTables[101X
  
  [33X[1;0Y[29X[2XCompareTables[102X( [3XT1[103X, [3XT2[103X ) [32X function[133X
  
  [33X[0;0YA   nilpotent   table  contains  redundant  information  and  hence  can  be
  inconsistent. The next functions can be used to check this to some extent.[133X
  
  [1X2.1-4 CheckAssociativity[101X
  
  [33X[1;0Y[29X[2XCheckAssociativity[102X( [3XT[103X ) [32X function[133X
  
  [33X[0;0YChecks  that [22X(b_i b_j) b_k = b_i (b_j b_k)[122X for all [22Xi,j,k[122X. Note that this may
  be time-consuming.[133X
  
  [1X2.1-5 CheckCommutativity[101X
  
  [33X[1;0Y[29X[2XCheckCommutativity[102X( [3XT[103X ) [32X function[133X
  
  [33X[0;0YChecks  whether  [22XT[122X  defines  a  commutative  algebra  and sets the entry [10Xcom[110X
  accordingly.[133X
  
  [1X2.1-6 CheckConsistency[101X
  
  [33X[1;0Y[29X[2XCheckConsistency[102X( [3XT[103X ) [32X function[133X
  
  [33X[0;0YChecks that [10Xwds[110X and [10Xtab[110X are compatible. This assumes that CheckAssociativity
  returns true.[133X
  
  [33X[0;0YAll  algorithms  described  later  in  this  package  assume that the tables
  considered are fully consistent.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XT := rec( dim := 3, [127X[104X
    [4X[25X>[125X [27Xfld := GF(2), [127X[104X
    [4X[25X>[125X [27Xrnk := 2, [127X[104X
    [4X[25X>[125X [27Xwgs := [ 1, 1, 2 ],[127X[104X
    [4X[25X>[125X [27Xwds := [ ,, [ 2, 1 ] ],[127X[104X
    [4X[25X>[125X [27Xtab := [] );;[127X[104X
    [4X[25Xgap>[125X [27XT.tab[1] := [[0,0,0],[0,0,1]] * One(T.fld);;[127X[104X
    [4X[25Xgap>[125X [27XT.tab[2] := [[0,0,1],[0,0,0]] * One(T.fld);;[127X[104X
    [4X[25Xgap>[125X [27XGetEntryTable( T, 3, 1 );[127X[104X
    [4X[28X[ 0*Z(2), 0*Z(2), 0*Z(2) ][128X[104X
  [4X[32X[104X
  
  
  [1X2.2 [33X[0;0YAlgebras in the GAP sense[133X[101X
  
  [33X[0;0YWe  provide  functions to convert back and forth between algebras in the [5XGAP[105X
  sense and nilpotent tables.[133X
  
  [1X2.2-1 AlgebraByTable[101X
  
  [33X[1;0Y[29X[2XAlgebraByTable[102X( [3XT[103X ) [32X operation[133X
  [33X[1;0Y[29X[2XNilpotentTable[102X( [3XA[103X ) [32X function[133X
  
  [33X[0;0YNote that the second function fails if [22XA[122X is not nilpotent.[133X
  
  [33X[0;0YFor  modular  group  algebras  of  [22Xp[122X-groups, the group algebra itself is not
  nilpotent  (as  it  contains  a  unit),  but  its  Jacobson  radical is. The
  following function determines a nilpotent table for the Jacobson radical.[133X
  
  [1X2.2-2 NilpotentTableOfRad[101X
  
  [33X[1;0Y[29X[2XNilpotentTableOfRad[102X( [3XFG[103X ) [32X function[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XA := GroupRing(GF(2), SmallGroup(8,3));[127X[104X
    [4X[28X<algebra-with-one over GF(2), with 3 generators>[128X[104X
    [4X[25Xgap>[125X [27XNilpotentTableOfRad(A);[127X[104X
    [4X[28Xrec( dim := 7, fld := GF(2), rnk := 2, [128X[104X
    [4X[28X  tab := [128X[104X
    [4X[28X    [ [128X[104X
    [4X[28X      [ [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ] ], [128X[104X
    [4X[28X      [ [ 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ] ],, [128X[104X
    [4X[28X      [ [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ], [128X[104X
    [4X[28X          [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ] ] ], [128X[104X
    [4X[28X  wds := [ ,, [ 1, 2 ],, [ 1, 4 ], [ 2, 4 ], [ 1, 6 ] ], [128X[104X
    [4X[28X  wgs := [ 1, 1, 2, 2, 3, 3, 4 ] )[128X[104X
  [4X[32X[104X
  
  
  [1X2.3 [33X[0;0YTables for the Modular Isomorphism Problem[133X[101X
  
  [33X[0;0YA special kind of nilpotent table is available in the context of the Modular
  Isomorphism  Problem. Let [22XG[122X be a finite group, [22XF[122X a field of characteristic [22Xp[122X
  and  [22XI(FG)[122X  the  augmentation  ideal of [22XFG[122X which equals its radical and is a
  nilpotent  ideal.  Two functions can be used to compute the class-[22Xn[122X quotient
  of  [22XI(FG)[122X,  i.e.  [22XI(FG)/I(FG)^n+1[122X.  The output is a nilpotent table for this
  quotient,  but  in  addition to the standard entries of a nilpotent table it
  contains  further  entries,  which allow more efficient computations and can
  also facilitate manual calculations. This makes it possible to determine the
  class-[22Xn[122X  quotient  of  the  augmentation  ideal  without  computing the full
  augmentation  ideal  using  [2XNilpotentTableOfRad[102X  ([14X2.2-2[114X).  The corresponding
  table can be computed by[133X
  
  [1X2.3-1 TableOfRadQuotient[101X
  
  [33X[1;0Y[29X[2XTableOfRadQuotient[102X( [3XFG[103X, [3Xn[103X ) [32X function[133X
  
  [33X[0;0Yor[133X
  
  [1X2.3-2 ModIsomTable[101X
  
  [33X[1;0Y[29X[2XModIsomTable[102X( [3XG[103X, [3Xn[103X[, [3Xf[103X] ) [32X function[133X
  
  [33X[0;0YHere  [10XModIsomTable(G,  n)[110X  will  produce  the  quotient  with respect to the
  algebra [22Xℙ_pG[122X, while [10XModIsomTable( G, n, f )[110X will do the same for the algebra
  [22Xℙ_p^fG[122X.[133X
  
  [33X[0;0YThe  components  [22Xdim[122X,  [10Xfld[110X, [10Xrnk[110X, [10Xtab[110X, [10Xwgs[110X, [10Xwds[110X remain unchanged from a usual
  nilpotent  table. The additional components are [10Xcommwords[110X, [10Xpowwords[110X and [10Xpre[110X.
  These new components contain additional information on precisely which basis
  of [22XI(FG)/I(FG)^n+1[122X is used and what the result of multiplying basis elements
  is. We explain how users can understand how the basis looks and how they can
  multiply  two  elements  in  the  algebra.  The  components  [10XT.commwords[110X and
  [10XT.powwords[110X  contain information on how the elements of the basis behave with
  respect  to  commutators  and  [22Xp[122X-th  powers.  The  component  [10XT.pre[110X contains
  information  on  the  construction  of  the basis and we describe it in more
  detail.[133X
  
  [33X[0;0YThe  dimension  of  [22XI(FG)/I(FG)^n+1[122X  is  recorded  in  [10XT.dim[110X.  The  basis of
  [22XI(FG)/I(FG)^n+1[122X is found as in the theory of Jennings going back to [Jen41],
  cf.  [MM22]  for  the  information  needed here. The elements of [22XG[122X chosen to
  provide  the  basis  of  subsequent  quotients  of  dimension  subgroups are
  recorded  in  [10XT.pre.jen.pcgs[110X.  Let  us call these elements [22Xg_1,...,g_m[122X. Note
  that [22X|G| = p^m[122X. The weights of the elements [22Xg_1-1,... ,g_m-1[122X are recorded in
  [10XT.pre.jen.weights[110X.  If  now  [22Xr[122X  is an integer smaller than [10XT.dim[110X+1, then the
  [22Xr[122X-th   element  of  the  basis  of  [22XI(FG)/I(FG)^n+1[122X  is  [22X(g_1-1)^e_1  ⋅  ...
  (g_m-1)^e_m[122X  where [22X[e_1,...,e_m][122X = [10XT.pre.exps[r][110X. The weight of this element
  is  recorded  in [10XT.wgs[r][110X and also [10XT.pre.weights[r][110X. Moreover, the positions
  of  [22Xg_1-1,... ,g_m-1[122X in the chosen basis of [22XT[122X are recorded in [10XT.pre.poswone[110X.
  We elaborate using an example.[133X
  
  [33X[0;0YWe  consider  the  group  [22XG[122X = [10XSmallGroup(3^7, 19)[110X. The following calculation
  shows  that  [22XI(FG)/I(FG)^9[122X  has dimension [22X135[122X and that the full augmentation
  ideal [22XI(FG)[122X has dimension [22X2186[122X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XG := SmallGroup(3^7, 19);;[127X[104X
    [4X[25Xgap>[125X [27XT := ModIsomTable(G, 8);;[127X[104X
    [4X[25Xgap>[125X [27XT.dim;[127X[104X
    [4X[28X135[128X[104X
  [4X[32X[104X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XFG := GroupRing(GF(3), G);;[127X[104X
    [4X[25Xgap>[125X [27XTT := TableOfRadQuotient(FG, 8);;[127X[104X
    [4X[25Xgap>[125X [27XTT.dim;[127X[104X
    [4X[28X135[128X[104X
  [4X[32X[104X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XT := ModIsomTable(G, 38);;[127X[104X
    [4X[25Xgap>[125X [27XT.dim;[127X[104X
    [4X[28X2186[128X[104X
  [4X[32X[104X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XT := ModIsomTable(G, 39);;[127X[104X
    [4X[25Xgap>[125X [27XT.dim;[127X[104X
    [4X[28X2186[128X[104X
  [4X[32X[104X
  
  [33X[0;0YWe next consider an example of how the basis used can be recognized.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XG := DihedralGroup(8);;[127X[104X
    [4X[25Xgap>[125X [27XT := ModIsomTable(G, 4);;[127X[104X
    [4X[25Xgap>[125X [27XT.dim;[127X[104X
    [4X[28X7[128X[104X
    [4X[25Xgap>[125X [27Xpcgs := T.pre.jen.pcgs;[127X[104X
    [4X[28XPcgs([ f1, f2, f3 ])[128X[104X
    [4X[25Xgap>[125X [27XList(pcgs, Order);[127X[104X
    [4X[28X[ 2, 4, 2 ][128X[104X
    [4X[25Xgap>[125X [27Xpcgs[3] in Center(G);[127X[104X
    [4X[28Xtrue[128X[104X
    [4X[25Xgap>[125X [27XT.pre.exps{[1..7]};[127X[104X
    [4X[28X[ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 1, 1, 0 ], [ 0, 0, 1 ], [ 1, 0, 1 ], [128X[104X
    [4X[28X  [ 0, 1, 1 ], [ 1, 1, 1 ] ][128X[104X
  [4X[32X[104X
  
  [33X[0;0YWe  conclude  that  [22XI(FG)/I(FG)^5[122X  is  [22X7[122X-dimensional and if we denote by [22Xa[122X a
  reflection  and  by  [22Xb[122X a non-central rotation in [22XG[122X, then the basis used by [22XT[122X
  is,   in  this  order:  [22X(a-1)[122X,  [22X(b-1)[122X,  [22X(a-1)(b-1)[122X,  [22X(b^2-1)[122X,  [22X(a-1)(b^2-1)[122X,
  [22X(b-1)(b^2-1)[122X, [22X(a-1)(b-1)(b^2-1)[122X.[133X
  
  [33X[0;0YContinuing    the    previous    example,    say   we   want   to   multiply
  [22X(b-1)+(a-1)(b-1)+(a-1)(b^2-1)[122X and [22X(a-1)+(b-1)+(b^2-1)[122X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xv := Z(2)^0*[0,1,1,0,1,0,0];[127X[104X
    [4X[28X[ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ][128X[104X
    [4X[25Xgap>[125X [27Xw := Z(2)^0*[1,1,0,1,0,0,0];[127X[104X
    [4X[28X[ Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2) ][128X[104X
    [4X[25Xgap>[125X [27XMultByTable(T,v,w);[127X[104X
    [4X[28X[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ][128X[104X
  [4X[32X[104X
  
  [33X[0;0YSo the result is [22X(a-1)(b-1) + (a-1)(b^2-1)[122X.[133X
  
  [33X[0;0YTo  facilitate  the  translation  of  elements  of  the  group algebra and a
  corresponding table of a quotient of the augmentation ideal the functions[133X
  
  [1X2.3-3 MIPElementTableToAlgebra[101X
  
  [33X[1;0Y[29X[2XMIPElementTableToAlgebra[102X( [3Xv[103X, [3XT[103X, [3XFG[103X ) [32X function[133X
  
  [33X[0;0Yand[133X
  
  [1X2.3-4 MIPElementAlgebraToTable[101X
  
  [33X[1;0Y[29X[2XMIPElementAlgebraToTable[102X( [3Xel[103X, [3XFG[103X, [3XT[103X ) [32X function[133X
  
  [33X[0;0Ycan be used. In the second function of course only a possible representative
  of  [22Xv[122X  in [22XFG[122X is provided. Also, only elements from the augmentation ideal of
  [22XFG[122X can be represented using [2XMIPElementAlgebraToTable[102X. These functions can be
  used for instance to obtain representatives in the same class modulo a power
  of  the  augmentation  ideal  which  are more practical to work with, as the
  following example shows.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XG := SmallGroup(3^7, 19);[127X[104X
    [4X[28X<pc group of size 2187 with 7 generators>[128X[104X
    [4X[25Xgap>[125X [27XT := ModIsomTable(G, 4);;[127X[104X
    [4X[25Xgap>[125X [27XFG := GroupRing(GF(3), G);[127X[104X
    [4X[28X<algebra-with-one over GF(3), with 7 generators>[128X[104X
    [4X[25Xgap>[125X [27Xiota := Embedding(G, FG);[127X[104X
    [4X[28X<mapping: Group( [ f1, f2, f3, f4, f5, f6, f7 [128X[104X
    [4X[28X ] ) -> AlgebraWithOne( GF(3), ... ) >[128X[104X
    [4X[25Xgap>[125X [27Xa := (T.pre.jen.pcgs[1])^iota;[127X[104X
    [4X[28X(Z(3)^0)*f1[128X[104X
    [4X[25Xgap>[125X [27Xb := (T.pre.jen.pcgs[2])^iota;[127X[104X
    [4X[28X(Z(3)^0)*f2[128X[104X
    [4X[25Xgap>[125X [27Xz := One(FG);[127X[104X
    [4X[28X(Z(3)^0)*<identity> of ...[128X[104X
    [4X[25Xgap>[125X [27Xr := (z + (a-z)*(b-z) )^-1;;  [127X[104X
    [4X[25Xgap>[125X [27XSize(Support(r-z));[127X[104X
    [4X[28X1376[128X[104X
    [4X[25Xgap>[125X [27Xel := MIPElementAlgebraToTable(r-z, FG, T);[127X[104X
    [4X[28X[ 0*Z(3), 0*Z(3), 0*Z(3), Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), [128X[104X
    [4X[28X  0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3), Z(3)^0, 0*Z(3), 0*Z(3), [128X[104X
    [4X[28X  0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ][128X[104X
    [4X[25Xgap>[125X [27XMIPElementTableToAlgebra(el, T, FG);[127X[104X
    [4X[28X(Z(3))*<identity> of ...+(Z(3)^0)*f3+(Z(3)^0)*f1^2+(Z(3))*f1*f2+(Z(3))*f1*f3+([128X[104X
    [4X[28XZ(3)^0)*f2^2+(Z(3))*f2*f3+(Z(3)^0)*f1^2*f2+(Z(3)^0)*f1*f2^2+(Z(3)^[128X[104X
    [4X[28X0)*f1*f2*f3+(Z(3)^0)*f1^2*f2^2[128X[104X
  [4X[32X[104X
  
  [33X[0;0YWe illustrate the information in [10XT.pre.poswone[110X:[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xd := (T.pre.jen.pcgs[4])^iota;[127X[104X
    [4X[28X(Z(3)^0)*f4[128X[104X
    [4X[25Xgap>[125X [27Xel := MIPElementAlgebraToTable(d-z, FG, T);[127X[104X
    [4X[28X[ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), [128X[104X
    [4X[28X  0*Z(3), Z(3)^0, 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), [128X[104X
    [4X[28X  0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ][128X[104X
    [4X[25Xgap>[125X [27XPosition(last, Z(3)^0);[127X[104X
    [4X[28X11[128X[104X
    [4X[25Xgap>[125X [27XT.pre.poswone[4];[127X[104X
    [4X[28X11[128X[104X
  [4X[32X[104X
  
