Changeset 933165b in git


Ignore:
Timestamp:
May 5, 2006, 4:34:01 PM (17 years ago)
Author:
Motsak Oleksandr <motsak@…>
Branches:
(u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
Children:
d5f47f4d77a27dca0d58409071b7d42fa0db141e
Parents:
070cdff7784db24ef603dc5c3c93b1fc4f8f3abd
Message:
*: makeUsl(n,p), makeUg2 were changed to conform GAP.
+: definitions of simple algebras: U(so_n), U(sp_n), U(e_{6/7/8}), U(f_4) were added.


git-svn-id: file:///usr/local/Singular/svn/trunk@9104 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/ncalg.lib

    r070cdff r933165b  
    11///////////////////////////////////////////////////////////////////////////////
    2 version="$Id: ncalg.lib,v 1.15 2005-08-12 16:47:08 levandov Exp $";
     2version="$Id: ncalg.lib,v 1.16 2006-05-05 14:34:01 motsak Exp $";
    33category="Noncommutative";
    44info="
     
    88
    99CONVENTIONS: This library provides pre-defined important noncommutative algebras.
    10 @* For universal enveloping algebras of finite dimensional Lie algebras sl_n, gl_n and g_2 there are functions @code{makeUsl}, @code{makeUgl} and @code{makeUg2}.
     10@* For universal enveloping algebras of finite dimensional Lie algebras sl_n, gl_n, g_2 etc.
     11there are functions @code{makeUsl}, @code{makeUgl}, @code{makeUg2} etc.
    1112@* There are quantized enveloping algebras U_q(sl_2) and U_q(sl_3) (via functions @code{makeQsl2}, @code{makeQsl3})
    1213@* and non-standard quantum deformation of so_3, accessible via @code{makeQso3} function.
    1314
    1415PROCEDURES:
     16makeUsl2([p]);    create U(sl_2) in the variables (e,f,h) in char p>=0
    1517makeUsl(n[,p]);   create U(sl_n) in char p>=0
    16 makeUsl2([p]);    create U(sl_2) in the variables (e,f,h) in char p>=0
    17 makeUg2([p]);     create U(g_2) in the variables (x(i),y(i),Ha,Hb) in char p>=0
    18 makeUgl(n,[p]);   create U(gl_n) in the variables (e_ij (1<i,j<n)) in char p>=0
     18makeUgl(n,[p]);   create U(gl_n) in the variables (e_i_j (1<i,j<n)) in char p>=0
     19
     20makeUso5([p]);          create U(so_5) in the variables (x(i),y(i),H(i)) in char p>=0
     21makeUso6([p]);          create U(so_6) in the variables (x(i),y(i),H(i)) in char p>=0
     22makeUso7([p]);          create U(so_7) in the variables (x(i),y(i),H(i)) in char p>=0
     23makeUso8([p]);          create U(so_8) in the variables (x(i),y(i),H(i)) in char p>=0
     24makeUso9([p]);          create U(so_9) in the variables (x(i),y(i),H(i)) in char p>=0
     25makeUso10([p]);         create U(so_{10}) in the variables (x(i),y(i),H(i)) in char p>=0
     26makeUso11([p]);         create U(so_{11}) in the variables (x(i),y(i),H(i)) in char p>=0
     27makeUso12([p]);         create U(so_{12}) in the variables (x(i),y(i),H(i)) in char p>=0
     28
     29makeUsp1([p]);          create U(sp_1) in the variables (x(i),y(i),H(i)) in char p>=0
     30makeUsp2([p]);          create U(sp_2) in the variables (x(i),y(i),H(i)) in char p>=0
     31makeUsp3([p]);          create U(sp_3) in the variables (x(i),y(i),H(i)) in char p>=0
     32makeUsp4([p]);          create U(sp_4) in the variables (x(i),y(i),H(i)) in char p>=0
     33makeUsp5([p]);          create U(sp_5) in the variables (x(i),y(i),H(i)) in char p>=0
     34
     35makeUg2([p]);     create U(g_2) in the variables (x(i),y(i),Ha,Hb) in char p>=0
     36makeUf4([p]);     create U(f_4) in the variables (x(i),y(i),H(i)) in char p>=0
     37makeUe6([p]);     create U(e_6) in the variables (x(i),y(i),H(i)) in char p>=0
     38makeUe7([p]);     create U(e_7) in the variables (x(i),y(i),H(i)) in char p>=0
     39makeUe8([p]);     create U(e_8) in the variables (x(i),y(i),H(i)) in char p>=0
     40
    1941makeQso3([n]);    create U_q(so_3) in the presentation of Klimyk (if int n is given, the quantum parameter will be specialized at the 2n-th root of unity)
    20 Qso3Casimir(n [,m]); returns a list with the (optionally normalized) Casimir elements of U_q(so_3) for the quantum parameter specialized at the 2n-th root of unity
    2142makeQsl2([n]);    preparation for U_q(sl_2) as factor-algebra; if n is specified, the quantum parameter q will be specialized at the n-th root of unity
    2243makeQsl3([n]);    preparation for U_q(sl_3) as factor-algebra; if n is specified, the quantum parameter q will be specialized at the n-th root of unity
     44
     45Qso3Casimir(n [,m]); returns a list with the (optionally normalized) Casimir elements of U_q(so_3) for the quantum parameter specialized at the 2n-th root of unity
    2346GKZsystem(A, sord, alg [,v]);  define a ring and a Gelfand-Kapranov-Zelevinsky system of differential equations
    2447";
     
    92115
    93116  int @p = defInt(#);
    94   ring @@@rr=@p,(x(1..n*(n-1)/2),y(1..n*(n-1)/2),h(1..n-1)),dp;
    95   intmat CNT[n][n]=0;
     117
     118  ring @@@rr=@p,(x(1..n*(n-1)/2),y(1..n*(n-1)/2 ),h(1..n-1)),dp;
    96119  matrix TMP[n][n]=0;
    97120  int k,l=1,1;
     
    103126    {
    104127      buf = (l-k-1)*(2*n-l+k)/2 + k;
    105       CNT[k,l] = buf;
    106       TMP[k,l] = 1;
     128      TMP[k,l] = -1; // for conformance with GAP
    107129      X[buf] = TMP;
    108130      TMP = 0;
    109       CNT[l,k] = buf;
    110       TMP[l,k] = 1;
     131      TMP[l,k] = -1;
    111132      Y[buf] = TMP;
    112133      TMP=0;
     
    120141    TMP=0;
    121142  }
     143
    122144  int i,j=1,1;
    123145  number p,q=0,0;
    124146  list V=X+Y+H;
    125   int v=size(V);
     147
     148  int v = size(V);
     149 
    126150  matrix D[v][v]=0;
     151
    127152  for(k=1; k<=v; k++)
    128153  {
     
    130155    {
    131156      TMP=V[l]*V[k]-V[k]*V[l];
     157     
    132158      for(i=1; i<=n; i++)
    133159      {
     
    137163          if (TMP[i,j]!=0)
    138164          {
    139             D[k,l]=D[k,l]+leadcoef(TMP[i,j])*x(buf);
     165            D[k,l]=D[k,l]+(leadcoef(TMP[i,j])/leadcoef(X[buf][i,j]))*x(buf);
    140166          }
    141167          if (TMP[j,i]!=0)
    142168          {
    143             D[k,l]=D[k,l]+leadcoef(TMP[j,i])*y(buf);
     169            D[k,l]=D[k,l]+(leadcoef(TMP[j,i])/leadcoef(Y[buf][j,i]))*y(buf);
    144170          }
    145171        }
    146172      }
    147       i=1;
     173     
     174      i=1;     
    148175      while ( (TMP[i,i]==0) && (i<n) ) { i++; }
     176     
    149177      for(j=i; j<=n-1; j++)
    150178      {
    151179        p=leadcoef(TMP[j,j]);
    152         q=leadcoef(TMP[j+1,j+1]);
    153         D[k,l]=D[k,l]+p*h(j);
    154         //        if ((j!=n-1)&&((p+q)!=0)) {D[k,l]=D[k,l]+(p+q)*h(j+1);}
    155         TMP[j+1,j+1]=TMP[j+1,j+1]+p;
     180        if( p != 0 )
     181        {
     182            // q=leadcoef(TMP[j+1,j+1]);
     183            D[k,l]=D[k,l]+(p/leadcoef(H[j][j,j]))*h(j);
     184            //        if ((j!=n-1)&&((p+q)!=0)) {D[k,l]=D[k,l]+(p+q)*h(j+1);}
     185            TMP[j+1,j+1]=TMP[j+1,j+1]-p*leadcoef(H[j][j+1,j+1]);
     186        }
    156187      }
    157188    }
     
    176207SEE ALSO: makeUsl, makeUgl
    177208EXAMPLE: example makeUg2; shows examples
    178 "{
    179   int @p = defInt(#);
    180   ring @@@rrr=@p,(x(1..6),y(1..6),Ha,Hb),dp;
    181   setring @@@rrr;
    182   matrix D[14][14];
    183   D[1,2]=-x(3);
    184   D[1,3]=-2*x(4);
    185   D[1,4]=3*x(5);
    186   D[1,7]=-Ha;
    187   D[1,9]=3*y(2);
    188   D[1,10]=2*y(3);
    189   D[1,11]=-y(4);
    190   D[1,13]=2*x(1);
    191   D[1,14]=-x(1);
    192   D[2,5]=x(6);
    193   D[2,8]=-Hb;
    194   D[2,9]=-y(1);
    195   D[2,12]=-y(5);
    196   D[2,13]=-3*x(2);
    197   D[2,14]=2*x(2);
    198   D[3,4]=3*x(6);
    199   D[3,7]=3*x(2);
    200   D[3,8]=-x(1);
    201   D[3,9]=-Ha-3*Hb;
    202   D[3,10]=-2*y(1);
    203   D[3,12]=-y(4);
    204   D[3,13]=-x(3);
    205   D[3,14]=x(3);
    206   D[4,7]=2*x(3);
    207   D[4,9]=-2*x(1);
    208   D[4,10]=-2*Ha-3*Hb;
    209   D[4,11]=y(1);
    210   D[4,12]=y(3);
    211   D[4,13]=x(4);
    212   D[5,7]=-x(4);
    213   D[5,10]=x(1);
    214   D[5,11]=-Ha-Hb;
    215   D[5,12]=y(2);
    216   D[5,13]=3*x(5);
    217   D[5,14]=-x(5);
    218   D[6,8]=-x(5);
    219   D[6,9]=-x(4);
    220   D[6,10]=x(3);
    221   D[6,11]=x(2);
    222   D[6,12]=-Ha-2*Hb;
    223   D[6,14]=x(6);
    224   D[7,8]=y(3);
    225   D[7,9]=2*y(4);
    226   D[7,10]=-3*y(5);
    227   D[7,13]=-2*y(1);
    228   D[7,14]=y(1);
    229   D[8,11]=-y(6);
    230   D[8,13]=3*y(2);
    231   D[8,14]=-2*y(2);
    232   D[9,10]=-3*y(6);
    233   D[9,13]=y(3);
    234   D[9,14]=-y(3);
    235   D[10,13]=-y(4);
    236   D[11,13]=-3*y(5);
    237   D[11,14]=y(5);
    238   D[12,14]=-y(6);
    239   ncalgebra(1,D);
    240   return(@@@rrr);
     209"
     210{
     211   int @p = defInt(#);
     212
     213   ring @@@rrr = @p,(x(1..6),y(1..6), Ha, Hb),dp;
     214   int N = nvars(@@@rrr);
     215   matrix D[N][N]=0;
     216
     217        // H(i) * X(j):
     218                D[1,13] = (2)*var(1); // [ var(13) , var(1) ]
     219                D[2,13] = (-3)*var(2); // [ var(13) , var(2) ]
     220                D[3,13] = (-1)*var(3); // [ var(13) , var(3) ]
     221                D[4,13] = var(4); // [ var(13) , var(4) ]
     222                D[5,13] = (3)*var(5); // [ var(13) , var(5) ]
     223                D[1,14] = (-1)*var(1); // [ var(14) , var(1) ]
     224                D[2,14] = (2)*var(2); // [ var(14) , var(2) ]
     225                D[3,14] = var(3); // [ var(14) , var(3) ]
     226                D[5,14] = (-1)*var(5); // [ var(14) , var(5) ]
     227                D[6,14] = var(6); // [ var(14) , var(6) ]
     228        // H(i) * Y(j):
     229                D[7,13] = (-2)*var(7); // [ var(13) , var(7) ]
     230                D[8,13] = (3)*var(8); // [ var(13) , var(8) ]
     231                D[9,13] = var(9); // [ var(13) , var(9) ]
     232                D[10,13] = (-1)*var(10); // [ var(13) , var(10) ]
     233                D[11,13] = (-3)*var(11); // [ var(13) , var(11) ]
     234                D[7,14] = var(7); // [ var(14) , var(7) ]
     235                D[8,14] = (-2)*var(8); // [ var(14) , var(8) ]
     236                D[9,14] = (-1)*var(9); // [ var(14) , var(9) ]
     237                D[11,14] = var(11); // [ var(14) , var(11) ]
     238                D[12,14] = (-1)*var(12); // [ var(14) , var(12) ]
     239        // Y(i) * X(j):
     240                D[1,7] = (-1)*var(13); // [ var(7) , var(1) ]
     241                D[3,7] = (-3)*var(2); // [ var(7) , var(3) ]
     242                D[4,7] = (-2)*var(3); // [ var(7) , var(4) ]
     243                D[5,7] = (-1)*var(4); // [ var(7) , var(5) ]
     244                D[2,8] = (-1)*var(14); // [ var(8) , var(2) ]
     245                D[3,8] = var(1); // [ var(8) , var(3) ]
     246                D[6,8] = (-1)*var(5); // [ var(8) , var(6) ]
     247                D[1,9] = (-3)*var(8); // [ var(9) , var(1) ]
     248                D[2,9] = var(7); // [ var(9) , var(2) ]
     249                D[3,9] = (-1)*var(13)+(-3)*var(14); // [ var(9) , var(3) ]
     250                D[4,9] = (2)*var(1); // [ var(9) , var(4) ]
     251                D[6,9] = var(4); // [ var(9) , var(6) ]
     252                D[1,10] = (-2)*var(9); // [ var(10) , var(1) ]
     253                D[3,10] = (2)*var(7); // [ var(10) , var(3) ]
     254                D[4,10] = (-2)*var(13)+(-3)*var(14); // [ var(10) , var(4) ]
     255                D[5,10] = var(1); // [ var(10) , var(5) ]
     256                D[6,10] = (-1)*var(3); // [ var(10) , var(6) ]
     257                D[1,11] = (-1)*var(10); // [ var(11) , var(1) ]
     258                D[4,11] = var(7); // [ var(11) , var(4) ]
     259                D[5,11] = (-1)*var(13)+(-1)*var(14); // [ var(11) , var(5) ]
     260                D[6,11] = var(2); // [ var(11) , var(6) ]
     261                D[2,12] = (-1)*var(11); // [ var(12) , var(2) ]
     262                D[3,12] = var(10); // [ var(12) , var(3) ]
     263                D[4,12] = (-1)*var(9); // [ var(12) , var(4) ]
     264                D[5,12] = var(8); // [ var(12) , var(5) ]
     265                D[6,12] = (-1)*var(13)+(-2)*var(14); // [ var(12) , var(6) ]
     266        // X(i) * X(j):
     267                D[1,2] = var(3); // [ var(2) , var(1) ]
     268                D[1,3] = (2)*var(4); // [ var(3) , var(1) ]
     269                D[1,4] = (3)*var(5); // [ var(4) , var(1) ]
     270                D[2,5] = var(6); // [ var(5) , var(2) ]
     271                D[3,4] = (-3)*var(6); // [ var(4) , var(3) ]
     272        // Y(i) * Y(j):
     273                D[7,8] = (-1)*var(9); // [ var(8) , var(7) ]
     274                D[7,9] = (-2)*var(10); // [ var(9) , var(7) ]
     275                D[7,10] = (-3)*var(11); // [ var(10) , var(7) ]
     276                D[8,11] = (-1)*var(12); // [ var(11) , var(8) ]
     277                D[9,10] = (3)*var(12); // [ var(10) , var(9) ]
     278
     279   ncalgebra(1,D);
     280   return(@@@rrr);
     281
    241282}
    242283example
     
    608649//   intmat A[2][3]=2,1,0,0,1,2;
    609650///////////////////////////////////////////////////////////////////////////////
     651
     652
     653
     654
     655
     656
     657
     658// Algebra: so5(Q) has the type: B2, and defined by:
     659
     660proc makeUso5(list #)
     661"USAGE:   makeUso5([p]); p an optional integer (field characteristic)
     662RETURN:  a ring, describing U(so_5)
     663NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_5) is derived from the Chevalley representation of so_5, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     664SEE ALSO: makeUsl, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     665EXAMPLE: example makeUso5; shows examples
     666"
     667{
     668   int @p = defInt(#);
     669
     670   ring @@@rrr = @p,(X(1..4),Y(1..4),H(1..2)),dp;
     671   int N = nvars(@@@rrr);
     672   matrix D[N][N]=0;
     673
     674        // H(i) * X(j):
     675                D[1,9] = (2)*var(1); // [ var(9) , var(1) ]
     676                D[2,9] = (-1)*var(2); // [ var(9) , var(2) ]
     677                D[3,9] = var(3); // [ var(9) , var(3) ]
     678                D[1,10] = (-2)*var(1); // [ var(10) , var(1) ]
     679                D[2,10] = (2)*var(2); // [ var(10) , var(2) ]
     680                D[4,10] = (2)*var(4); // [ var(10) , var(4) ]
     681        // H(i) * Y(j):
     682                D[5,9] = (-2)*var(5); // [ var(9) , var(5) ]
     683                D[6,9] = var(6); // [ var(9) , var(6) ]
     684                D[7,9] = (-1)*var(7); // [ var(9) , var(7) ]
     685                D[5,10] = (2)*var(5); // [ var(10) , var(5) ]
     686                D[6,10] = (-2)*var(6); // [ var(10) , var(6) ]
     687                D[8,10] = (-2)*var(8); // [ var(10) , var(8) ]
     688        // Y(i) * X(j):
     689                D[1,5] = (-1)*var(9); // [ var(5) , var(1) ]
     690                D[3,5] = var(2); // [ var(5) , var(3) ]
     691                D[2,6] = (-1)*var(10); // [ var(6) , var(2) ]
     692                D[3,6] = (-2)*var(1); // [ var(6) , var(3) ]
     693                D[4,6] = (-1)*var(3); // [ var(6) , var(4) ]
     694                D[1,7] = var(6); // [ var(7) , var(1) ]
     695                D[2,7] = (-2)*var(5); // [ var(7) , var(2) ]
     696                D[3,7] = (-2)*var(9)+(-1)*var(10); // [ var(7) , var(3) ]
     697                D[4,7] = var(2); // [ var(7) , var(4) ]
     698                D[2,8] = (-1)*var(7); // [ var(8) , var(2) ]
     699                D[3,8] = var(6); // [ var(8) , var(3) ]
     700                D[4,8] = (-1)*var(9)+(-1)*var(10); // [ var(8) , var(4) ]
     701        // X(i) * X(j):
     702                D[1,2] = (-1)*var(3); // [ var(2) , var(1) ]
     703                D[2,3] = (2)*var(4); // [ var(3) , var(2) ]
     704        // Y(i) * Y(j):
     705                D[5,6] = var(7); // [ var(6) , var(5) ]
     706                D[6,7] = (-2)*var(8); // [ var(7) , var(6) ]
     707   ncalgebra(1,D);
     708   return(@@@rrr);
     709}
     710example
     711{ "EXAMPLE:"; echo = 2;
     712   def ncAlgebra = makeUso5();
     713   setring ncAlgebra;
     714   ncAlgebra;
     715}
     716////////////////////////////////////////////////////////////////////
     717
     718// Algebra: so7(Q) has the type: B3, and defined by:
     719
     720proc makeUso7(list #)
     721"USAGE:   makeUso7([p]); p an optional integer (field characteristic)
     722RETURN:  a ring, describing U(so_7)
     723NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_7) is derived from the Chevalley representation of so_7, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     724SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     725EXAMPLE: example makeUso7; shows examples
     726"
     727{
     728   int @p = defInt(#);
     729
     730   ring @@@rrr = @p,(X(1..9),Y(1..9),H(1..3)),dp;
     731   int N = nvars(@@@rrr);
     732   matrix D[N][N]=0;
     733
     734        // H(i) * X(j):
     735                D[1,19] = (2)*var(1); // [ var(19) , var(1) ]
     736                D[2,19] = (-1)*var(2); // [ var(19) , var(2) ]
     737                D[4,19] = var(4); // [ var(19) , var(4) ]
     738                D[5,19] = (-1)*var(5); // [ var(19) , var(5) ]
     739                D[6,19] = var(6); // [ var(19) , var(6) ]
     740                D[7,19] = (-1)*var(7); // [ var(19) , var(7) ]
     741                D[8,19] = var(8); // [ var(19) , var(8) ]
     742                D[1,20] = (-1)*var(1); // [ var(20) , var(1) ]
     743                D[2,20] = (2)*var(2); // [ var(20) , var(2) ]
     744                D[3,20] = (-1)*var(3); // [ var(20) , var(3) ]
     745                D[4,20] = var(4); // [ var(20) , var(4) ]
     746                D[5,20] = var(5); // [ var(20) , var(5) ]
     747                D[8,20] = (-1)*var(8); // [ var(20) , var(8) ]
     748                D[9,20] = var(9); // [ var(20) , var(9) ]
     749                D[2,21] = (-2)*var(2); // [ var(21) , var(2) ]
     750                D[3,21] = (2)*var(3); // [ var(21) , var(3) ]
     751                D[4,21] = (-2)*var(4); // [ var(21) , var(4) ]
     752                D[7,21] = (2)*var(7); // [ var(21) , var(7) ]
     753                D[8,21] = (2)*var(8); // [ var(21) , var(8) ]
     754        // H(i) * Y(j):
     755                D[10,19] = (-2)*var(10); // [ var(19) , var(10) ]
     756                D[11,19] = var(11); // [ var(19) , var(11) ]
     757                D[13,19] = (-1)*var(13); // [ var(19) , var(13) ]
     758                D[14,19] = var(14); // [ var(19) , var(14) ]
     759                D[15,19] = (-1)*var(15); // [ var(19) , var(15) ]
     760                D[16,19] = var(16); // [ var(19) , var(16) ]
     761                D[17,19] = (-1)*var(17); // [ var(19) , var(17) ]
     762                D[10,20] = var(10); // [ var(20) , var(10) ]
     763                D[11,20] = (-2)*var(11); // [ var(20) , var(11) ]
     764                D[12,20] = var(12); // [ var(20) , var(12) ]
     765                D[13,20] = (-1)*var(13); // [ var(20) , var(13) ]
     766                D[14,20] = (-1)*var(14); // [ var(20) , var(14) ]
     767                D[17,20] = var(17); // [ var(20) , var(17) ]
     768                D[18,20] = (-1)*var(18); // [ var(20) , var(18) ]
     769                D[11,21] = (2)*var(11); // [ var(21) , var(11) ]
     770                D[12,21] = (-2)*var(12); // [ var(21) , var(12) ]
     771                D[13,21] = (2)*var(13); // [ var(21) , var(13) ]
     772                D[16,21] = (-2)*var(16); // [ var(21) , var(16) ]
     773                D[17,21] = (-2)*var(17); // [ var(21) , var(17) ]
     774        // Y(i) * X(j):
     775                D[1,10] = (-1)*var(19); // [ var(10) , var(1) ]
     776                D[4,10] = var(2); // [ var(10) , var(4) ]
     777                D[6,10] = var(5); // [ var(10) , var(6) ]
     778                D[8,10] = var(7); // [ var(10) , var(8) ]
     779                D[2,11] = (-1)*var(20); // [ var(11) , var(2) ]
     780                D[4,11] = (-1)*var(1); // [ var(11) , var(4) ]
     781                D[5,11] = var(3); // [ var(11) , var(5) ]
     782                D[9,11] = var(8); // [ var(11) , var(9) ]
     783                D[3,12] = (-1)*var(21); // [ var(12) , var(3) ]
     784                D[5,12] = (-2)*var(2); // [ var(12) , var(5) ]
     785                D[6,12] = (-2)*var(4); // [ var(12) , var(6) ]
     786                D[7,12] = (-1)*var(5); // [ var(12) , var(7) ]
     787                D[8,12] = (-1)*var(6); // [ var(12) , var(8) ]
     788                D[1,13] = var(11); // [ var(13) , var(1) ]
     789                D[2,13] = (-1)*var(10); // [ var(13) , var(2) ]
     790                D[4,13] = (-1)*var(19)+(-1)*var(20); // [ var(13) , var(4) ]
     791                D[6,13] = var(3); // [ var(13) , var(6) ]
     792                D[9,13] = (-1)*var(7); // [ var(13) , var(9) ]
     793                D[2,14] = var(12); // [ var(14) , var(2) ]
     794                D[3,14] = (-2)*var(11); // [ var(14) , var(3) ]
     795                D[5,14] = (-2)*var(20)+(-1)*var(21); // [ var(14) , var(5) ]
     796                D[6,14] = (-2)*var(1); // [ var(14) , var(6) ]
     797                D[7,14] = var(3); // [ var(14) , var(7) ]
     798                D[9,14] = (-1)*var(6); // [ var(14) , var(9) ]
     799                D[1,15] = var(14); // [ var(15) , var(1) ]
     800                D[3,15] = (-2)*var(13); // [ var(15) , var(3) ]
     801                D[4,15] = var(12); // [ var(15) , var(4) ]
     802                D[5,15] = (-2)*var(10); // [ var(15) , var(5) ]
     803                D[6,15] = (-2)*var(19)+(-2)*var(20)+(-1)*var(21); // [ var(15) , var(6) ]
     804                D[8,15] = var(3); // [ var(15) , var(8) ]
     805                D[9,15] = var(5); // [ var(15) , var(9) ]
     806                D[3,16] = (-1)*var(14); // [ var(16) , var(3) ]
     807                D[5,16] = var(12); // [ var(16) , var(5) ]
     808                D[7,16] = (-1)*var(20)+(-1)*var(21); // [ var(16) , var(7) ]
     809                D[8,16] = (-1)*var(1); // [ var(16) , var(8) ]
     810                D[9,16] = var(4); // [ var(16) , var(9) ]
     811                D[1,17] = var(16); // [ var(17) , var(1) ]
     812                D[3,17] = (-1)*var(15); // [ var(17) , var(3) ]
     813                D[6,17] = var(12); // [ var(17) , var(6) ]
     814                D[7,17] = (-1)*var(10); // [ var(17) , var(7) ]
     815                D[8,17] = (-1)*var(19)+(-1)*var(20)+(-1)*var(21); // [ var(17) , var(8) ]
     816                D[9,17] = (-1)*var(2); // [ var(17) , var(9) ]
     817                D[2,18] = var(17); // [ var(18) , var(2) ]
     818                D[4,18] = (-1)*var(16); // [ var(18) , var(4) ]
     819                D[5,18] = (-1)*var(15); // [ var(18) , var(5) ]
     820                D[6,18] = var(14); // [ var(18) , var(6) ]
     821                D[7,18] = var(13); // [ var(18) , var(7) ]
     822                D[8,18] = (-1)*var(11); // [ var(18) , var(8) ]
     823                D[9,18] = (-1)*var(19)+(-2)*var(20)+(-1)*var(21); // [ var(18) , var(9) ]
     824        // X(i) * X(j):
     825                D[1,2] = (-1)*var(4); // [ var(2) , var(1) ]
     826                D[1,5] = (-1)*var(6); // [ var(5) , var(1) ]
     827                D[1,7] = (-1)*var(8); // [ var(7) , var(1) ]
     828                D[2,3] = (-1)*var(5); // [ var(3) , var(2) ]
     829                D[2,8] = (-1)*var(9); // [ var(8) , var(2) ]
     830                D[3,4] = var(6); // [ var(4) , var(3) ]
     831                D[3,5] = (2)*var(7); // [ var(5) , var(3) ]
     832                D[3,6] = (2)*var(8); // [ var(6) , var(3) ]
     833                D[4,7] = var(9); // [ var(7) , var(4) ]
     834                D[5,6] = (2)*var(9); // [ var(6) , var(5) ]
     835        // Y(i) * Y(j):
     836                D[10,11] = var(13); // [ var(11) , var(10) ]
     837                D[10,14] = var(15); // [ var(14) , var(10) ]
     838                D[10,16] = var(17); // [ var(16) , var(10) ]
     839                D[11,12] = var(14); // [ var(12) , var(11) ]
     840                D[11,17] = var(18); // [ var(17) , var(11) ]
     841                D[12,13] = (-1)*var(15); // [ var(13) , var(12) ]
     842                D[12,14] = (-2)*var(16); // [ var(14) , var(12) ]
     843                D[12,15] = (-2)*var(17); // [ var(15) , var(12) ]
     844                D[13,16] = (-1)*var(18); // [ var(16) , var(13) ]
     845                D[14,15] = (-2)*var(18); // [ var(15) , var(14) ]
     846   ncalgebra(1,D);
     847   return(@@@rrr);
     848}
     849example
     850{ "EXAMPLE:"; echo = 2;
     851   def ncAlgebra = makeUso7();
     852   setring ncAlgebra;
     853   ncAlgebra;
     854}
     855////////////////////////////////////////////////////////////////////
     856
     857// Algebra: so9(Q) has the type: B4, and defined by:
     858
     859proc makeUso9(list #)
     860"USAGE:   makeUso9([p]); p an optional integer (field characteristic)
     861RETURN:  a ring, describing U(so_9)
     862NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_9) is derived from the Chevalley representation of so_9, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     863SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     864EXAMPLE: example makeUso9; shows examples
     865"
     866{
     867   int @p = defInt(#);
     868
     869   ring @@@rrr = @p,(X(1..16),Y(1..16),H(1..4)),dp;
     870   int N = nvars(@@@rrr);
     871   matrix D[N][N]=0;
     872
     873        // H(i) * X(j):
     874                D[1,33] = (2)*var(1); // [ var(33) , var(1) ]
     875                D[2,33] = (-1)*var(2); // [ var(33) , var(2) ]
     876                D[5,33] = var(5); // [ var(33) , var(5) ]
     877                D[6,33] = (-1)*var(6); // [ var(33) , var(6) ]
     878                D[8,33] = var(8); // [ var(33) , var(8) ]
     879                D[9,33] = (-1)*var(9); // [ var(33) , var(9) ]
     880                D[11,33] = var(11); // [ var(33) , var(11) ]
     881                D[12,33] = (-1)*var(12); // [ var(33) , var(12) ]
     882                D[13,33] = var(13); // [ var(33) , var(13) ]
     883                D[14,33] = (-1)*var(14); // [ var(33) , var(14) ]
     884                D[15,33] = var(15); // [ var(33) , var(15) ]
     885                D[1,34] = (-1)*var(1); // [ var(34) , var(1) ]
     886                D[2,34] = (2)*var(2); // [ var(34) , var(2) ]
     887                D[3,34] = (-1)*var(3); // [ var(34) , var(3) ]
     888                D[5,34] = var(5); // [ var(34) , var(5) ]
     889                D[6,34] = var(6); // [ var(34) , var(6) ]
     890                D[7,34] = (-1)*var(7); // [ var(34) , var(7) ]
     891                D[9,34] = var(9); // [ var(34) , var(9) ]
     892                D[10,34] = (-1)*var(10); // [ var(34) , var(10) ]
     893                D[12,34] = var(12); // [ var(34) , var(12) ]
     894                D[15,34] = (-1)*var(15); // [ var(34) , var(15) ]
     895                D[16,34] = var(16); // [ var(34) , var(16) ]
     896                D[2,35] = (-1)*var(2); // [ var(35) , var(2) ]
     897                D[3,35] = (2)*var(3); // [ var(35) , var(3) ]
     898                D[4,35] = (-1)*var(4); // [ var(35) , var(4) ]
     899                D[5,35] = (-1)*var(5); // [ var(35) , var(5) ]
     900                D[6,35] = var(6); // [ var(35) , var(6) ]
     901                D[7,35] = var(7); // [ var(35) , var(7) ]
     902                D[8,35] = var(8); // [ var(35) , var(8) ]
     903                D[12,35] = (-1)*var(12); // [ var(35) , var(12) ]
     904                D[13,35] = (-1)*var(13); // [ var(35) , var(13) ]
     905                D[14,35] = var(14); // [ var(35) , var(14) ]
     906                D[15,35] = var(15); // [ var(35) , var(15) ]
     907                D[3,36] = (-2)*var(3); // [ var(36) , var(3) ]
     908                D[4,36] = (2)*var(4); // [ var(36) , var(4) ]
     909                D[6,36] = (-2)*var(6); // [ var(36) , var(6) ]
     910                D[8,36] = (-2)*var(8); // [ var(36) , var(8) ]
     911                D[10,36] = (2)*var(10); // [ var(36) , var(10) ]
     912                D[12,36] = (2)*var(12); // [ var(36) , var(12) ]
     913                D[13,36] = (2)*var(13); // [ var(36) , var(13) ]
     914        // H(i) * Y(j):
     915                D[17,33] = (-2)*var(17); // [ var(33) , var(17) ]
     916                D[18,33] = var(18); // [ var(33) , var(18) ]
     917                D[21,33] = (-1)*var(21); // [ var(33) , var(21) ]
     918                D[22,33] = var(22); // [ var(33) , var(22) ]
     919                D[24,33] = (-1)*var(24); // [ var(33) , var(24) ]
     920                D[25,33] = var(25); // [ var(33) , var(25) ]
     921                D[27,33] = (-1)*var(27); // [ var(33) , var(27) ]
     922                D[28,33] = var(28); // [ var(33) , var(28) ]
     923                D[29,33] = (-1)*var(29); // [ var(33) , var(29) ]
     924                D[30,33] = var(30); // [ var(33) , var(30) ]
     925                D[31,33] = (-1)*var(31); // [ var(33) , var(31) ]
     926                D[17,34] = var(17); // [ var(34) , var(17) ]
     927                D[18,34] = (-2)*var(18); // [ var(34) , var(18) ]
     928                D[19,34] = var(19); // [ var(34) , var(19) ]
     929                D[21,34] = (-1)*var(21); // [ var(34) , var(21) ]
     930                D[22,34] = (-1)*var(22); // [ var(34) , var(22) ]
     931                D[23,34] = var(23); // [ var(34) , var(23) ]
     932                D[25,34] = (-1)*var(25); // [ var(34) , var(25) ]
     933                D[26,34] = var(26); // [ var(34) , var(26) ]
     934                D[28,34] = (-1)*var(28); // [ var(34) , var(28) ]
     935                D[31,34] = var(31); // [ var(34) , var(31) ]
     936                D[32,34] = (-1)*var(32); // [ var(34) , var(32) ]
     937                D[18,35] = var(18); // [ var(35) , var(18) ]
     938                D[19,35] = (-2)*var(19); // [ var(35) , var(19) ]
     939                D[20,35] = var(20); // [ var(35) , var(20) ]
     940                D[21,35] = var(21); // [ var(35) , var(21) ]
     941                D[22,35] = (-1)*var(22); // [ var(35) , var(22) ]
     942                D[23,35] = (-1)*var(23); // [ var(35) , var(23) ]
     943                D[24,35] = (-1)*var(24); // [ var(35) , var(24) ]
     944                D[28,35] = var(28); // [ var(35) , var(28) ]
     945                D[29,35] = var(29); // [ var(35) , var(29) ]
     946                D[30,35] = (-1)*var(30); // [ var(35) , var(30) ]
     947                D[31,35] = (-1)*var(31); // [ var(35) , var(31) ]
     948                D[19,36] = (2)*var(19); // [ var(36) , var(19) ]
     949                D[20,36] = (-2)*var(20); // [ var(36) , var(20) ]
     950                D[22,36] = (2)*var(22); // [ var(36) , var(22) ]
     951                D[24,36] = (2)*var(24); // [ var(36) , var(24) ]
     952                D[26,36] = (-2)*var(26); // [ var(36) , var(26) ]
     953                D[28,36] = (-2)*var(28); // [ var(36) , var(28) ]
     954                D[29,36] = (-2)*var(29); // [ var(36) , var(29) ]
     955        // Y(i) * X(j):
     956                D[1,17] = (-1)*var(33); // [ var(17) , var(1) ]
     957                D[5,17] = var(2); // [ var(17) , var(5) ]
     958                D[8,17] = var(6); // [ var(17) , var(8) ]
     959                D[11,17] = var(9); // [ var(17) , var(11) ]
     960                D[13,17] = var(12); // [ var(17) , var(13) ]
     961                D[15,17] = var(14); // [ var(17) , var(15) ]
     962                D[2,18] = (-1)*var(34); // [ var(18) , var(2) ]
     963                D[5,18] = (-1)*var(1); // [ var(18) , var(5) ]
     964                D[6,18] = var(3); // [ var(18) , var(6) ]
     965                D[9,18] = var(7); // [ var(18) , var(9) ]
     966                D[12,18] = var(10); // [ var(18) , var(12) ]
     967                D[16,18] = var(15); // [ var(18) , var(16) ]
     968                D[3,19] = (-1)*var(35); // [ var(19) , var(3) ]
     969                D[6,19] = (-1)*var(2); // [ var(19) , var(6) ]
     970                D[7,19] = var(4); // [ var(19) , var(7) ]
     971                D[8,19] = (-1)*var(5); // [ var(19) , var(8) ]
     972                D[14,19] = var(12); // [ var(19) , var(14) ]
     973                D[15,19] = var(13); // [ var(19) , var(15) ]
     974                D[4,20] = (-1)*var(36); // [ var(20) , var(4) ]
     975                D[7,20] = (-2)*var(3); // [ var(20) , var(7) ]
     976                D[9,20] = (-2)*var(6); // [ var(20) , var(9) ]
     977                D[10,20] = (-1)*var(7); // [ var(20) , var(10) ]
     978                D[11,20] = (-2)*var(8); // [ var(20) , var(11) ]
     979                D[12,20] = (-1)*var(9); // [ var(20) , var(12) ]
     980                D[13,20] = (-1)*var(11); // [ var(20) , var(13) ]
     981                D[1,21] = var(18); // [ var(21) , var(1) ]
     982                D[2,21] = (-1)*var(17); // [ var(21) , var(2) ]
     983                D[5,21] = (-1)*var(33)+(-1)*var(34); // [ var(21) , var(5) ]
     984                D[8,21] = var(3); // [ var(21) , var(8) ]
     985                D[11,21] = var(7); // [ var(21) , var(11) ]
     986                D[13,21] = var(10); // [ var(21) , var(13) ]
     987                D[16,21] = (-1)*var(14); // [ var(21) , var(16) ]
     988                D[2,22] = var(19); // [ var(22) , var(2) ]
     989                D[3,22] = (-1)*var(18); // [ var(22) , var(3) ]
     990                D[6,22] = (-1)*var(34)+(-1)*var(35); // [ var(22) , var(6) ]
     991                D[8,22] = (-1)*var(1); // [ var(22) , var(8) ]
     992                D[9,22] = var(4); // [ var(22) , var(9) ]
     993                D[14,22] = (-1)*var(10); // [ var(22) , var(14) ]
     994                D[16,22] = var(13); // [ var(22) , var(16) ]
     995                D[3,23] = var(20); // [ var(23) , var(3) ]
     996                D[4,23] = (-2)*var(19); // [ var(23) , var(4) ]
     997                D[7,23] = (-2)*var(35)+(-1)*var(36); // [ var(23) , var(7) ]
     998                D[9,23] = (-2)*var(2); // [ var(23) , var(9) ]
     999                D[10,23] = var(4); // [ var(23) , var(10) ]
     1000                D[11,23] = (-2)*var(5); // [ var(23) , var(11) ]
     1001                D[14,23] = (-1)*var(9); // [ var(23) , var(14) ]
     1002                D[15,23] = (-1)*var(11); // [ var(23) , var(15) ]
     1003                D[1,24] = var(22); // [ var(24) , var(1) ]
     1004                D[3,24] = (-1)*var(21); // [ var(24) , var(3) ]
     1005                D[5,24] = var(19); // [ var(24) , var(5) ]
     1006                D[6,24] = (-1)*var(17); // [ var(24) , var(6) ]
     1007                D[8,24] = (-1)*var(33)+(-1)*var(34)+(-1)*var(35); // [ var(24) , var(8) ]
     1008                D[11,24] = var(4); // [ var(24) , var(11) ]
     1009                D[15,24] = (-1)*var(10); // [ var(24) , var(15) ]
     1010                D[16,24] = (-1)*var(12); // [ var(24) , var(16) ]
     1011                D[2,25] = var(23); // [ var(25) , var(2) ]
     1012                D[4,25] = (-2)*var(22); // [ var(25) , var(4) ]
     1013                D[6,25] = var(20); // [ var(25) , var(6) ]
     1014                D[7,25] = (-2)*var(18); // [ var(25) , var(7) ]
     1015                D[9,25] = (-2)*var(34)+(-2)*var(35)+(-1)*var(36); // [ var(25) , var(9) ]
     1016                D[11,25] = (-2)*var(1); // [ var(25) , var(11) ]
     1017                D[12,25] = var(4); // [ var(25) , var(12) ]
     1018                D[14,25] = var(7); // [ var(25) , var(14) ]
     1019                D[16,25] = (-1)*var(11); // [ var(25) , var(16) ]
     1020                D[4,26] = (-1)*var(23); // [ var(26) , var(4) ]
     1021                D[7,26] = var(20); // [ var(26) , var(7) ]
     1022                D[10,26] = (-1)*var(35)+(-1)*var(36); // [ var(26) , var(10) ]
     1023                D[12,26] = (-1)*var(2); // [ var(26) , var(12) ]
     1024                D[13,26] = (-1)*var(5); // [ var(26) , var(13) ]
     1025                D[14,26] = var(6); // [ var(26) , var(14) ]
     1026                D[15,26] = var(8); // [ var(26) , var(15) ]
     1027                D[1,27] = var(25); // [ var(27) , var(1) ]
     1028                D[4,27] = (-2)*var(24); // [ var(27) , var(4) ]
     1029                D[5,27] = var(23); // [ var(27) , var(5) ]
     1030                D[7,27] = (-2)*var(21); // [ var(27) , var(7) ]
     1031                D[8,27] = var(20); // [ var(27) , var(8) ]
     1032                D[9,27] = (-2)*var(17); // [ var(27) , var(9) ]
     1033                D[11,27] = (-2)*var(33)+(-2)*var(34)+(-2)*var(35)+(-1)*var(36); // [ var(27) , var(11) ]
     1034                D[13,27] = var(4); // [ var(27) , var(13) ]
     1035                D[15,27] = var(7); // [ var(27) , var(15) ]
     1036                D[16,27] = var(9); // [ var(27) , var(16) ]
     1037                D[2,28] = var(26); // [ var(28) , var(2) ]
     1038                D[4,28] = (-1)*var(25); // [ var(28) , var(4) ]
     1039                D[9,28] = var(20); // [ var(28) , var(9) ]
     1040                D[10,28] = (-1)*var(18); // [ var(28) , var(10) ]
     1041                D[12,28] = (-1)*var(34)+(-1)*var(35)+(-1)*var(36); // [ var(28) , var(12) ]
     1042                D[13,28] = (-1)*var(1); // [ var(28) , var(13) ]
     1043                D[14,28] = (-1)*var(3); // [ var(28) , var(14) ]
     1044                D[16,28] = var(8); // [ var(28) , var(16) ]
     1045                D[1,29] = var(28); // [ var(29) , var(1) ]
     1046                D[4,29] = (-1)*var(27); // [ var(29) , var(4) ]
     1047                D[5,29] = var(26); // [ var(29) , var(5) ]
     1048                D[10,29] = (-1)*var(21); // [ var(29) , var(10) ]
     1049                D[11,29] = var(20); // [ var(29) , var(11) ]
     1050                D[12,29] = (-1)*var(17); // [ var(29) , var(12) ]
     1051                D[13,29] = (-1)*var(33)+(-1)*var(34)+(-1)*var(35)+(-1)*var(36); // [ var(29) , var(13) ]
     1052                D[15,29] = (-1)*var(3); // [ var(29) , var(15) ]
     1053                D[16,29] = (-1)*var(6); // [ var(29) , var(16) ]
     1054                D[3,30] = var(28); // [ var(30) , var(3) ]
     1055                D[6,30] = (-1)*var(26); // [ var(30) , var(6) ]
     1056                D[7,30] = (-1)*var(25); // [ var(30) , var(7) ]
     1057                D[9,30] = var(23); // [ var(30) , var(9) ]
     1058                D[10,30] = var(22); // [ var(30) , var(10) ]
     1059                D[12,30] = (-1)*var(19); // [ var(30) , var(12) ]
     1060                D[14,30] = (-1)*var(34)+(-2)*var(35)+(-1)*var(36); // [ var(30) , var(14) ]
     1061                D[15,30] = (-1)*var(1); // [ var(30) , var(15) ]
     1062                D[16,30] = var(5); // [ var(30) , var(16) ]
     1063                D[1,31] = var(30); // [ var(31) , var(1) ]
     1064                D[3,31] = var(29); // [ var(31) , var(3) ]
     1065                D[7,31] = (-1)*var(27); // [ var(31) , var(7) ]
     1066                D[8,31] = (-1)*var(26); // [ var(31) , var(8) ]
     1067                D[10,31] = var(24); // [ var(31) , var(10) ]
     1068                D[11,31] = var(23); // [ var(31) , var(11) ]
     1069                D[13,31] = (-1)*var(19); // [ var(31) , var(13) ]
     1070                D[14,31] = (-1)*var(17); // [ var(31) , var(14) ]
     1071                D[15,31] = (-1)*var(33)+(-1)*var(34)+(-2)*var(35)+(-1)*var(36); // [ var(31) , var(15) ]
     1072                D[16,31] = (-1)*var(2); // [ var(31) , var(16) ]
     1073                D[2,32] = var(31); // [ var(32) , var(2) ]
     1074                D[5,32] = (-1)*var(30); // [ var(32) , var(5) ]
     1075                D[6,32] = var(29); // [ var(32) , var(6) ]
     1076                D[8,32] = (-1)*var(28); // [ var(32) , var(8) ]
     1077                D[9,32] = (-1)*var(27); // [ var(32) , var(9) ]
     1078                D[11,32] = var(25); // [ var(32) , var(11) ]
     1079                D[12,32] = var(24); // [ var(32) , var(12) ]
     1080                D[13,32] = (-1)*var(22); // [ var(32) , var(13) ]
     1081                D[14,32] = var(21); // [ var(32) , var(14) ]
     1082                D[15,32] = (-1)*var(18); // [ var(32) , var(15) ]
     1083                D[16,32] = (-1)*var(33)+(-2)*var(34)+(-2)*var(35)+(-1)*var(36); // [ var(32) , var(16) ]
     1084        // X(i) * X(j):
     1085                D[1,2] = (-1)*var(5); // [ var(2) , var(1) ]
     1086                D[1,6] = (-1)*var(8); // [ var(6) , var(1) ]
     1087                D[1,9] = (-1)*var(11); // [ var(9) , var(1) ]
     1088                D[1,12] = (-1)*var(13); // [ var(12) , var(1) ]
     1089                D[1,14] = (-1)*var(15); // [ var(14) , var(1) ]
     1090                D[2,3] = (-1)*var(6); // [ var(3) , var(2) ]
     1091                D[2,7] = (-1)*var(9); // [ var(7) , var(2) ]
     1092                D[2,10] = (-1)*var(12); // [ var(10) , var(2) ]
     1093                D[2,15] = (-1)*var(16); // [ var(15) , var(2) ]
     1094                D[3,4] = (-1)*var(7); // [ var(4) , var(3) ]
     1095                D[3,5] = var(8); // [ var(5) , var(3) ]
     1096                D[3,12] = (-1)*var(14); // [ var(12) , var(3) ]
     1097                D[3,13] = (-1)*var(15); // [ var(13) , var(3) ]
     1098                D[4,6] = var(9); // [ var(6) , var(4) ]
     1099                D[4,7] = (2)*var(10); // [ var(7) , var(4) ]
     1100                D[4,8] = var(11); // [ var(8) , var(4) ]
     1101                D[4,9] = (2)*var(12); // [ var(9) , var(4) ]
     1102                D[4,11] = (2)*var(13); // [ var(11) , var(4) ]
     1103                D[5,7] = (-1)*var(11); // [ var(7) , var(5) ]
     1104                D[5,10] = (-1)*var(13); // [ var(10) , var(5) ]
     1105                D[5,14] = var(16); // [ var(14) , var(5) ]
     1106                D[6,10] = var(14); // [ var(10) , var(6) ]
     1107                D[6,13] = (-1)*var(16); // [ var(13) , var(6) ]
     1108                D[7,9] = (2)*var(14); // [ var(9) , var(7) ]
     1109                D[7,11] = (2)*var(15); // [ var(11) , var(7) ]
     1110                D[8,10] = var(15); // [ var(10) , var(8) ]
     1111                D[8,12] = var(16); // [ var(12) , var(8) ]
     1112                D[9,11] = (2)*var(16); // [ var(11) , var(9) ]
     1113        // Y(i) * Y(j):
     1114                D[17,18] = var(21); // [ var(18) , var(17) ]
     1115                D[17,22] = var(24); // [ var(22) , var(17) ]
     1116                D[17,25] = var(27); // [ var(25) , var(17) ]
     1117                D[17,28] = var(29); // [ var(28) , var(17) ]
     1118                D[17,30] = var(31); // [ var(30) , var(17) ]
     1119                D[18,19] = var(22); // [ var(19) , var(18) ]
     1120                D[18,23] = var(25); // [ var(23) , var(18) ]
     1121                D[18,26] = var(28); // [ var(26) , var(18) ]
     1122                D[18,31] = var(32); // [ var(31) , var(18) ]
     1123                D[19,20] = var(23); // [ var(20) , var(19) ]
     1124                D[19,21] = (-1)*var(24); // [ var(21) , var(19) ]
     1125                D[19,28] = var(30); // [ var(28) , var(19) ]
     1126                D[19,29] = var(31); // [ var(29) , var(19) ]
     1127                D[20,22] = (-1)*var(25); // [ var(22) , var(20) ]
     1128                D[20,23] = (-2)*var(26); // [ var(23) , var(20) ]
     1129                D[20,24] = (-1)*var(27); // [ var(24) , var(20) ]
     1130                D[20,25] = (-2)*var(28); // [ var(25) , var(20) ]
     1131                D[20,27] = (-2)*var(29); // [ var(27) , var(20) ]
     1132                D[21,23] = var(27); // [ var(23) , var(21) ]
     1133                D[21,26] = var(29); // [ var(26) , var(21) ]
     1134                D[21,30] = (-1)*var(32); // [ var(30) , var(21) ]
     1135                D[22,26] = (-1)*var(30); // [ var(26) , var(22) ]
     1136                D[22,29] = var(32); // [ var(29) , var(22) ]
     1137                D[23,25] = (-2)*var(30); // [ var(25) , var(23) ]
     1138                D[23,27] = (-2)*var(31); // [ var(27) , var(23) ]
     1139                D[24,26] = (-1)*var(31); // [ var(26) , var(24) ]
     1140                D[24,28] = (-1)*var(32); // [ var(28) , var(24) ]
     1141                D[25,27] = (-2)*var(32); // [ var(27) , var(25) ]
     1142   ncalgebra(1,D);
     1143   return(@@@rrr);
     1144}
     1145example
     1146{ "EXAMPLE:"; echo = 2;
     1147   def ncAlgebra = makeUso9();
     1148   setring ncAlgebra;
     1149   ncAlgebra;
     1150}
     1151////////////////////////////////////////////////////////////////////
     1152
     1153// Algebra: so11(Q) has the type: B5, and defined by:
     1154
     1155proc makeUso11(list #)
     1156"USAGE:   makeUso11([p]); p an optional integer (field characteristic)
     1157RETURN:  a ring, describing U(so_{11})
     1158NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_{11}) is derived from the Chevalley representation of so_{11}, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     1159SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     1160EXAMPLE: example makeUso11; shows examples
     1161"
     1162{
     1163   int @p = defInt(#);
     1164
     1165   ring @@@rrr = @p,(X(1..25),Y(1..25),H(1..5)),dp;
     1166   int N = nvars(@@@rrr);
     1167   matrix D[N][N]=0;
     1168
     1169        // H(i) * X(j):
     1170                D[1,51] = (2)*var(1); // [ var(51) , var(1) ]
     1171                D[2,51] = (-1)*var(2); // [ var(51) , var(2) ]
     1172                D[6,51] = var(6); // [ var(51) , var(6) ]
     1173                D[7,51] = (-1)*var(7); // [ var(51) , var(7) ]
     1174                D[10,51] = var(10); // [ var(51) , var(10) ]
     1175                D[11,51] = (-1)*var(11); // [ var(51) , var(11) ]
     1176                D[14,51] = var(14); // [ var(51) , var(14) ]
     1177                D[15,51] = (-1)*var(15); // [ var(51) , var(15) ]
     1178                D[17,51] = var(17); // [ var(51) , var(17) ]
     1179                D[18,51] = (-1)*var(18); // [ var(51) , var(18) ]
     1180                D[20,51] = var(20); // [ var(51) , var(20) ]
     1181                D[21,51] = (-1)*var(21); // [ var(51) , var(21) ]
     1182                D[22,51] = var(22); // [ var(51) , var(22) ]
     1183                D[23,51] = (-1)*var(23); // [ var(51) , var(23) ]
     1184                D[24,51] = var(24); // [ var(51) , var(24) ]
     1185                D[1,52] = (-1)*var(1); // [ var(52) , var(1) ]
     1186                D[2,52] = (2)*var(2); // [ var(52) , var(2) ]
     1187                D[3,52] = (-1)*var(3); // [ var(52) , var(3) ]
     1188                D[6,52] = var(6); // [ var(52) , var(6) ]
     1189                D[7,52] = var(7); // [ var(52) , var(7) ]
     1190                D[8,52] = (-1)*var(8); // [ var(52) , var(8) ]
     1191                D[11,52] = var(11); // [ var(52) , var(11) ]
     1192                D[12,52] = (-1)*var(12); // [ var(52) , var(12) ]
     1193                D[15,52] = var(15); // [ var(52) , var(15) ]
     1194                D[16,52] = (-1)*var(16); // [ var(52) , var(16) ]
     1195                D[18,52] = var(18); // [ var(52) , var(18) ]
     1196                D[19,52] = (-1)*var(19); // [ var(52) , var(19) ]
     1197                D[21,52] = var(21); // [ var(52) , var(21) ]
     1198                D[24,52] = (-1)*var(24); // [ var(52) , var(24) ]
     1199                D[25,52] = var(25); // [ var(52) , var(25) ]
     1200                D[2,53] = (-1)*var(2); // [ var(53) , var(2) ]
     1201                D[3,53] = (2)*var(3); // [ var(53) , var(3) ]
     1202                D[4,53] = (-1)*var(4); // [ var(53) , var(4) ]
     1203                D[6,53] = (-1)*var(6); // [ var(53) , var(6) ]
     1204                D[7,53] = var(7); // [ var(53) , var(7) ]
     1205                D[8,53] = var(8); // [ var(53) , var(8) ]
     1206                D[9,53] = (-1)*var(9); // [ var(53) , var(9) ]
     1207                D[10,53] = var(10); // [ var(53) , var(10) ]
     1208                D[12,53] = var(12); // [ var(53) , var(12) ]
     1209                D[13,53] = (-1)*var(13); // [ var(53) , var(13) ]
     1210                D[16,53] = var(16); // [ var(53) , var(16) ]
     1211                D[21,53] = (-1)*var(21); // [ var(53) , var(21) ]
     1212                D[22,53] = (-1)*var(22); // [ var(53) , var(22) ]
     1213                D[23,53] = var(23); // [ var(53) , var(23) ]
     1214                D[24,53] = var(24); // [ var(53) , var(24) ]
     1215                D[3,54] = (-1)*var(3); // [ var(54) , var(3) ]
     1216                D[4,54] = (2)*var(4); // [ var(54) , var(4) ]
     1217                D[5,54] = (-1)*var(5); // [ var(54) , var(5) ]
     1218                D[7,54] = (-1)*var(7); // [ var(54) , var(7) ]
     1219                D[8,54] = var(8); // [ var(54) , var(8) ]
     1220                D[9,54] = var(9); // [ var(54) , var(9) ]
     1221                D[10,54] = (-1)*var(10); // [ var(54) , var(10) ]
     1222                D[11,54] = var(11); // [ var(54) , var(11) ]
     1223                D[14,54] = var(14); // [ var(54) , var(14) ]
     1224                D[16,54] = (-1)*var(16); // [ var(54) , var(16) ]
     1225                D[18,54] = (-1)*var(18); // [ var(54) , var(18) ]
     1226                D[19,54] = var(19); // [ var(54) , var(19) ]
     1227                D[20,54] = (-1)*var(20); // [ var(54) , var(20) ]
     1228                D[21,54] = var(21); // [ var(54) , var(21) ]
     1229                D[22,54] = var(22); // [ var(54) , var(22) ]
     1230                D[4,55] = (-2)*var(4); // [ var(55) , var(4) ]
     1231                D[5,55] = (2)*var(5); // [ var(55) , var(5) ]
     1232                D[8,55] = (-2)*var(8); // [ var(55) , var(8) ]
     1233                D[11,55] = (-2)*var(11); // [ var(55) , var(11) ]
     1234                D[13,55] = (2)*var(13); // [ var(55) , var(13) ]
     1235                D[14,55] = (-2)*var(14); // [ var(55) , var(14) ]
     1236                D[16,55] = (2)*var(16); // [ var(55) , var(16) ]
     1237                D[18,55] = (2)*var(18); // [ var(55) , var(18) ]
     1238                D[20,55] = (2)*var(20); // [ var(55) , var(20) ]
     1239        // H(i) * Y(j):
     1240                D[26,51] = (-2)*var(26); // [ var(51) , var(26) ]
     1241                D[27,51] = var(27); // [ var(51) , var(27) ]
     1242                D[31,51] = (-1)*var(31); // [ var(51) , var(31) ]
     1243                D[32,51] = var(32); // [ var(51) , var(32) ]
     1244                D[35,51] = (-1)*var(35); // [ var(51) , var(35) ]
     1245                D[36,51] = var(36); // [ var(51) , var(36) ]
     1246                D[39,51] = (-1)*var(39); // [ var(51) , var(39) ]
     1247                D[40,51] = var(40); // [ var(51) , var(40) ]
     1248                D[42,51] = (-1)*var(42); // [ var(51) , var(42) ]
     1249                D[43,51] = var(43); // [ var(51) , var(43) ]
     1250                D[45,51] = (-1)*var(45); // [ var(51) , var(45) ]
     1251                D[46,51] = var(46); // [ var(51) , var(46) ]
     1252                D[47,51] = (-1)*var(47); // [ var(51) , var(47) ]
     1253                D[48,51] = var(48); // [ var(51) , var(48) ]
     1254                D[49,51] = (-1)*var(49); // [ var(51) , var(49) ]
     1255                D[26,52] = var(26); // [ var(52) , var(26) ]
     1256                D[27,52] = (-2)*var(27); // [ var(52) , var(27) ]
     1257                D[28,52] = var(28); // [ var(52) , var(28) ]
     1258                D[31,52] = (-1)*var(31); // [ var(52) , var(31) ]
     1259                D[32,52] = (-1)*var(32); // [ var(52) , var(32) ]
     1260                D[33,52] = var(33); // [ var(52) , var(33) ]
     1261                D[36,52] = (-1)*var(36); // [ var(52) , var(36) ]
     1262                D[37,52] = var(37); // [ var(52) , var(37) ]
     1263                D[40,52] = (-1)*var(40); // [ var(52) , var(40) ]
     1264                D[41,52] = var(41); // [ var(52) , var(41) ]
     1265                D[43,52] = (-1)*var(43); // [ var(52) , var(43) ]
     1266                D[44,52] = var(44); // [ var(52) , var(44) ]
     1267                D[46,52] = (-1)*var(46); // [ var(52) , var(46) ]
     1268                D[49,52] = var(49); // [ var(52) , var(49) ]
     1269                D[50,52] = (-1)*var(50); // [ var(52) , var(50) ]
     1270                D[27,53] = var(27); // [ var(53) , var(27) ]
     1271                D[28,53] = (-2)*var(28); // [ var(53) , var(28) ]
     1272                D[29,53] = var(29); // [ var(53) , var(29) ]
     1273                D[31,53] = var(31); // [ var(53) , var(31) ]
     1274                D[32,53] = (-1)*var(32); // [ var(53) , var(32) ]
     1275                D[33,53] = (-1)*var(33); // [ var(53) , var(33) ]
     1276                D[34,53] = var(34); // [ var(53) , var(34) ]
     1277                D[35,53] = (-1)*var(35); // [ var(53) , var(35) ]
     1278                D[37,53] = (-1)*var(37); // [ var(53) , var(37) ]
     1279                D[38,53] = var(38); // [ var(53) , var(38) ]
     1280                D[41,53] = (-1)*var(41); // [ var(53) , var(41) ]
     1281                D[46,53] = var(46); // [ var(53) , var(46) ]
     1282                D[47,53] = var(47); // [ var(53) , var(47) ]
     1283                D[48,53] = (-1)*var(48); // [ var(53) , var(48) ]
     1284                D[49,53] = (-1)*var(49); // [ var(53) , var(49) ]
     1285                D[28,54] = var(28); // [ var(54) , var(28) ]
     1286                D[29,54] = (-2)*var(29); // [ var(54) , var(29) ]
     1287                D[30,54] = var(30); // [ var(54) , var(30) ]
     1288                D[32,54] = var(32); // [ var(54) , var(32) ]
     1289                D[33,54] = (-1)*var(33); // [ var(54) , var(33) ]
     1290                D[34,54] = (-1)*var(34); // [ var(54) , var(34) ]
     1291                D[35,54] = var(35); // [ var(54) , var(35) ]
     1292                D[36,54] = (-1)*var(36); // [ var(54) , var(36) ]
     1293                D[39,54] = (-1)*var(39); // [ var(54) , var(39) ]
     1294                D[41,54] = var(41); // [ var(54) , var(41) ]
     1295                D[43,54] = var(43); // [ var(54) , var(43) ]
     1296                D[44,54] = (-1)*var(44); // [ var(54) , var(44) ]
     1297                D[45,54] = var(45); // [ var(54) , var(45) ]
     1298                D[46,54] = (-1)*var(46); // [ var(54) , var(46) ]
     1299                D[47,54] = (-1)*var(47); // [ var(54) , var(47) ]
     1300                D[29,55] = (2)*var(29); // [ var(55) , var(29) ]
     1301                D[30,55] = (-2)*var(30); // [ var(55) , var(30) ]
     1302                D[33,55] = (2)*var(33); // [ var(55) , var(33) ]
     1303                D[36,55] = (2)*var(36); // [ var(55) , var(36) ]
     1304                D[38,55] = (-2)*var(38); // [ var(55) , var(38) ]
     1305                D[39,55] = (2)*var(39); // [ var(55) , var(39) ]
     1306                D[41,55] = (-2)*var(41); // [ var(55) , var(41) ]
     1307                D[43,55] = (-2)*var(43); // [ var(55) , var(43) ]
     1308                D[45,55] = (-2)*var(45); // [ var(55) , var(45) ]
     1309        // Y(i) * X(j):
     1310                D[1,26] = (-1)*var(51); // [ var(26) , var(1) ]
     1311                D[6,26] = var(2); // [ var(26) , var(6) ]
     1312                D[10,26] = var(7); // [ var(26) , var(10) ]
     1313                D[14,26] = var(11); // [ var(26) , var(14) ]
     1314                D[17,26] = var(15); // [ var(26) , var(17) ]
     1315                D[20,26] = var(18); // [ var(26) , var(20) ]
     1316                D[22,26] = var(21); // [ var(26) , var(22) ]
     1317                D[24,26] = var(23); // [ var(26) , var(24) ]
     1318                D[2,27] = (-1)*var(52); // [ var(27) , var(2) ]
     1319                D[6,27] = (-1)*var(1); // [ var(27) , var(6) ]
     1320                D[7,27] = var(3); // [ var(27) , var(7) ]
     1321                D[11,27] = var(8); // [ var(27) , var(11) ]
     1322                D[15,27] = var(12); // [ var(27) , var(15) ]
     1323                D[18,27] = var(16); // [ var(27) , var(18) ]
     1324                D[21,27] = var(19); // [ var(27) , var(21) ]
     1325                D[25,27] = var(24); // [ var(27) , var(25) ]
     1326                D[3,28] = (-1)*var(53); // [ var(28) , var(3) ]
     1327                D[7,28] = (-1)*var(2); // [ var(28) , var(7) ]
     1328                D[8,28] = var(4); // [ var(28) , var(8) ]
     1329                D[10,28] = (-1)*var(6); // [ var(28) , var(10) ]
     1330                D[12,28] = var(9); // [ var(28) , var(12) ]
     1331                D[16,28] = var(13); // [ var(28) , var(16) ]
     1332                D[23,28] = var(21); // [ var(28) , var(23) ]
     1333                D[24,28] = var(22); // [ var(28) , var(24) ]
     1334                D[4,29] = (-1)*var(54); // [ var(29) , var(4) ]
     1335                D[8,29] = (-1)*var(3); // [ var(29) , var(8) ]
     1336                D[9,29] = var(5); // [ var(29) , var(9) ]
     1337                D[11,29] = (-1)*var(7); // [ var(29) , var(11) ]
     1338                D[14,29] = (-1)*var(10); // [ var(29) , var(14) ]
     1339                D[19,29] = var(16); // [ var(29) , var(19) ]
     1340                D[21,29] = var(18); // [ var(29) , var(21) ]
     1341                D[22,29] = var(20); // [ var(29) , var(22) ]
     1342                D[5,30] = (-1)*var(55); // [ var(30) , var(5) ]
     1343                D[9,30] = (-2)*var(4); // [ var(30) , var(9) ]
     1344                D[12,30] = (-2)*var(8); // [ var(30) , var(12) ]
     1345                D[13,30] = (-1)*var(9); // [ var(30) , var(13) ]
     1346                D[15,30] = (-2)*var(11); // [ var(30) , var(15) ]
     1347                D[16,30] = (-1)*var(12); // [ var(30) , var(16) ]
     1348                D[17,30] = (-2)*var(14); // [ var(30) , var(17) ]
     1349                D[18,30] = (-1)*var(15); // [ var(30) , var(18) ]
     1350                D[20,30] = (-1)*var(17); // [ var(30) , var(20) ]
     1351                D[1,31] = var(27); // [ var(31) , var(1) ]
     1352                D[2,31] = (-1)*var(26); // [ var(31) , var(2) ]
     1353                D[6,31] = (-1)*var(51)+(-1)*var(52); // [ var(31) , var(6) ]
     1354                D[10,31] = var(3); // [ var(31) , var(10) ]
     1355                D[14,31] = var(8); // [ var(31) , var(14) ]
     1356                D[17,31] = var(12); // [ var(31) , var(17) ]
     1357                D[20,31] = var(16); // [ var(31) , var(20) ]
     1358                D[22,31] = var(19); // [ var(31) , var(22) ]
     1359                D[25,31] = (-1)*var(23); // [ var(31) , var(25) ]
     1360                D[2,32] = var(28); // [ var(32) , var(2) ]
     1361                D[3,32] = (-1)*var(27); // [ var(32) , var(3) ]
     1362                D[7,32] = (-1)*var(52)+(-1)*var(53); // [ var(32) , var(7) ]
     1363                D[10,32] = (-1)*var(1); // [ var(32) , var(10) ]
     1364                D[11,32] = var(4); // [ var(32) , var(11) ]
     1365                D[15,32] = var(9); // [ var(32) , var(15) ]
     1366                D[18,32] = var(13); // [ var(32) , var(18) ]
     1367                D[23,32] = (-1)*var(19); // [ var(32) , var(23) ]
     1368                D[25,32] = var(22); // [ var(32) , var(25) ]
     1369                D[3,33] = var(29); // [ var(33) , var(3) ]
     1370                D[4,33] = (-1)*var(28); // [ var(33) , var(4) ]
     1371                D[8,33] = (-1)*var(53)+(-1)*var(54); // [ var(33) , var(8) ]
     1372                D[11,33] = (-1)*var(2); // [ var(33) , var(11) ]
     1373                D[12,33] = var(5); // [ var(33) , var(12) ]
     1374                D[14,33] = (-1)*var(6); // [ var(33) , var(14) ]
     1375                D[19,33] = (-1)*var(13); // [ var(33) , var(19) ]
     1376                D[23,33] = var(18); // [ var(33) , var(23) ]
     1377                D[24,33] = var(20); // [ var(33) , var(24) ]
     1378                D[4,34] = var(30); // [ var(34) , var(4) ]
     1379                D[5,34] = (-2)*var(29); // [ var(34) , var(5) ]
     1380                D[9,34] = (-2)*var(54)+(-1)*var(55); // [ var(34) , var(9) ]
     1381                D[12,34] = (-2)*var(3); // [ var(34) , var(12) ]
     1382                D[13,34] = var(5); // [ var(34) , var(13) ]
     1383                D[15,34] = (-2)*var(7); // [ var(34) , var(15) ]
     1384                D[17,34] = (-2)*var(10); // [ var(34) , var(17) ]
     1385                D[19,34] = (-1)*var(12); // [ var(34) , var(19) ]
     1386                D[21,34] = (-1)*var(15); // [ var(34) , var(21) ]
     1387                D[22,34] = (-1)*var(17); // [ var(34) , var(22) ]
     1388                D[1,35] = var(32); // [ var(35) , var(1) ]
     1389                D[3,35] = (-1)*var(31); // [ var(35) , var(3) ]
     1390                D[6,35] = var(28); // [ var(35) , var(6) ]
     1391                D[7,35] = (-1)*var(26); // [ var(35) , var(7) ]
     1392                D[10,35] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53); // [ var(35) , var(10) ]
     1393                D[14,35] = var(4); // [ var(35) , var(14) ]
     1394                D[17,35] = var(9); // [ var(35) , var(17) ]
     1395                D[20,35] = var(13); // [ var(35) , var(20) ]
     1396                D[24,35] = (-1)*var(19); // [ var(35) , var(24) ]
     1397                D[25,35] = (-1)*var(21); // [ var(35) , var(25) ]
     1398                D[2,36] = var(33); // [ var(36) , var(2) ]
     1399                D[4,36] = (-1)*var(32); // [ var(36) , var(4) ]
     1400                D[7,36] = var(29); // [ var(36) , var(7) ]
     1401                D[8,36] = (-1)*var(27); // [ var(36) , var(8) ]
     1402                D[11,36] = (-1)*var(52)+(-1)*var(53)+(-1)*var(54); // [ var(36) , var(11) ]
     1403                D[14,36] = (-1)*var(1); // [ var(36) , var(14) ]
     1404                D[15,36] = var(5); // [ var(36) , var(15) ]
     1405                D[21,36] = (-1)*var(13); // [ var(36) , var(21) ]
     1406                D[23,36] = (-1)*var(16); // [ var(36) , var(23) ]
     1407                D[25,36] = var(20); // [ var(36) , var(25) ]
     1408                D[3,37] = var(34); // [ var(37) , var(3) ]
     1409                D[5,37] = (-2)*var(33); // [ var(37) , var(5) ]
     1410                D[8,37] = var(30); // [ var(37) , var(8) ]
     1411                D[9,37] = (-2)*var(28); // [ var(37) , var(9) ]
     1412                D[12,37] = (-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(37) , var(12) ]
     1413                D[15,37] = (-2)*var(2); // [ var(37) , var(15) ]
     1414                D[16,37] = var(5); // [ var(37) , var(16) ]
     1415                D[17,37] = (-2)*var(6); // [ var(37) , var(17) ]
     1416                D[19,37] = var(9); // [ var(37) , var(19) ]
     1417                D[23,37] = (-1)*var(15); // [ var(37) , var(23) ]
     1418                D[24,37] = (-1)*var(17); // [ var(37) , var(24) ]
     1419                D[5,38] = (-1)*var(34); // [ var(38) , var(5) ]
     1420                D[9,38] = var(30); // [ var(38) , var(9) ]
     1421                D[13,38] = (-1)*var(54)+(-1)*var(55); // [ var(38) , var(13) ]
     1422                D[16,38] = (-1)*var(3); // [ var(38) , var(16) ]
     1423                D[18,38] = (-1)*var(7); // [ var(38) , var(18) ]
     1424                D[19,38] = var(8); // [ var(38) , var(19) ]
     1425                D[20,38] = (-1)*var(10); // [ var(38) , var(20) ]
     1426                D[21,38] = var(11); // [ var(38) , var(21) ]
     1427                D[22,38] = var(14); // [ var(38) , var(22) ]
     1428                D[1,39] = var(36); // [ var(39) , var(1) ]
     1429                D[4,39] = (-1)*var(35); // [ var(39) , var(4) ]
     1430                D[6,39] = var(33); // [ var(39) , var(6) ]
     1431                D[8,39] = (-1)*var(31); // [ var(39) , var(8) ]
     1432                D[10,39] = var(29); // [ var(39) , var(10) ]
     1433                D[11,39] = (-1)*var(26); // [ var(39) , var(11) ]
     1434                D[14,39] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-1)*var(54); // [ var(39) , var(14) ]
     1435                D[17,39] = var(5); // [ var(39) , var(17) ]
     1436                D[22,39] = (-1)*var(13); // [ var(39) , var(22) ]
     1437                D[24,39] = (-1)*var(16); // [ var(39) , var(24) ]
     1438                D[25,39] = (-1)*var(18); // [ var(39) , var(25) ]
     1439                D[2,40] = var(37); // [ var(40) , var(2) ]
     1440                D[5,40] = (-2)*var(36); // [ var(40) , var(5) ]
     1441                D[7,40] = var(34); // [ var(40) , var(7) ]
     1442                D[9,40] = (-2)*var(32); // [ var(40) , var(9) ]
     1443                D[11,40] = var(30); // [ var(40) , var(11) ]
     1444                D[12,40] = (-2)*var(27); // [ var(40) , var(12) ]
     1445                D[15,40] = (-2)*var(52)+(-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(40) , var(15) ]
     1446                D[17,40] = (-2)*var(1); // [ var(40) , var(17) ]
     1447                D[18,40] = var(5); // [ var(40) , var(18) ]
     1448                D[21,40] = var(9); // [ var(40) , var(21) ]
     1449                D[23,40] = var(12); // [ var(40) , var(23) ]
     1450                D[25,40] = (-1)*var(17); // [ var(40) , var(25) ]
     1451                D[3,41] = var(38); // [ var(41) , var(3) ]
     1452                D[5,41] = (-1)*var(37); // [ var(41) , var(5) ]
     1453                D[12,41] = var(30); // [ var(41) , var(12) ]
     1454                D[13,41] = (-1)*var(28); // [ var(41) , var(13) ]
     1455                D[16,41] = (-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(41) , var(16) ]
     1456                D[18,41] = (-1)*var(2); // [ var(41) , var(18) ]
     1457                D[19,41] = (-1)*var(4); // [ var(41) , var(19) ]
     1458                D[20,41] = (-1)*var(6); // [ var(41) , var(20) ]
     1459                D[23,41] = var(11); // [ var(41) , var(23) ]
     1460                D[24,41] = var(14); // [ var(41) , var(24) ]
     1461                D[1,42] = var(40); // [ var(42) , var(1) ]
     1462                D[5,42] = (-2)*var(39); // [ var(42) , var(5) ]
     1463                D[6,42] = var(37); // [ var(42) , var(6) ]
     1464                D[9,42] = (-2)*var(35); // [ var(42) , var(9) ]
     1465                D[10,42] = var(34); // [ var(42) , var(10) ]
     1466                D[12,42] = (-2)*var(31); // [ var(42) , var(12) ]
     1467                D[14,42] = var(30); // [ var(42) , var(14) ]
     1468                D[15,42] = (-2)*var(26); // [ var(42) , var(15) ]
     1469                D[17,42] = (-2)*var(51)+(-2)*var(52)+(-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(42) , var(17) ]
     1470                D[20,42] = var(5); // [ var(42) , var(20) ]
     1471                D[22,42] = var(9); // [ var(42) , var(22) ]
     1472                D[24,42] = var(12); // [ var(42) , var(24) ]
     1473                D[25,42] = var(15); // [ var(42) , var(25) ]
     1474                D[2,43] = var(41); // [ var(43) , var(2) ]
     1475                D[5,43] = (-1)*var(40); // [ var(43) , var(5) ]
     1476                D[7,43] = var(38); // [ var(43) , var(7) ]
     1477                D[13,43] = (-1)*var(32); // [ var(43) , var(13) ]
     1478                D[15,43] = var(30); // [ var(43) , var(15) ]
     1479                D[16,43] = (-1)*var(27); // [ var(43) , var(16) ]
     1480                D[18,43] = (-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(43) , var(18) ]
     1481                D[20,43] = (-1)*var(1); // [ var(43) , var(20) ]
     1482                D[21,43] = (-1)*var(4); // [ var(43) , var(21) ]
     1483                D[23,43] = (-1)*var(8); // [ var(43) , var(23) ]
     1484                D[25,43] = var(14); // [ var(43) , var(25) ]
     1485                D[4,44] = var(41); // [ var(44) , var(4) ]
     1486                D[8,44] = (-1)*var(38); // [ var(44) , var(8) ]
     1487                D[9,44] = (-1)*var(37); // [ var(44) , var(9) ]
     1488                D[12,44] = var(34); // [ var(44) , var(12) ]
     1489                D[13,44] = var(33); // [ var(44) , var(13) ]
     1490                D[16,44] = (-1)*var(29); // [ var(44) , var(16) ]
     1491                D[19,44] = (-1)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(44) , var(19) ]
     1492                D[21,44] = (-1)*var(2); // [ var(44) , var(21) ]
     1493                D[22,44] = (-1)*var(6); // [ var(44) , var(22) ]
     1494                D[23,44] = var(7); // [ var(44) , var(23) ]
     1495                D[24,44] = var(10); // [ var(44) , var(24) ]
     1496                D[1,45] = var(43); // [ var(45) , var(1) ]
     1497                D[5,45] = (-1)*var(42); // [ var(45) , var(5) ]
     1498                D[6,45] = var(41); // [ var(45) , var(6) ]
     1499                D[10,45] = var(38); // [ var(45) , var(10) ]
     1500                D[13,45] = (-1)*var(35); // [ var(45) , var(13) ]
     1501                D[16,45] = (-1)*var(31); // [ var(45) , var(16) ]
     1502                D[17,45] = var(30); // [ var(45) , var(17) ]
     1503                D[18,45] = (-1)*var(26); // [ var(45) , var(18) ]
     1504                D[20,45] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(45) , var(20) ]
     1505                D[22,45] = (-1)*var(4); // [ var(45) , var(22) ]
     1506                D[24,45] = (-1)*var(8); // [ var(45) , var(24) ]
     1507                D[25,45] = (-1)*var(11); // [ var(45) , var(25) ]
     1508                D[2,46] = var(44); // [ var(46) , var(2) ]
     1509                D[4,46] = var(43); // [ var(46) , var(4) ]
     1510                D[9,46] = (-1)*var(40); // [ var(46) , var(9) ]
     1511                D[11,46] = (-1)*var(38); // [ var(46) , var(11) ]
     1512                D[13,46] = var(36); // [ var(46) , var(13) ]
     1513                D[15,46] = var(34); // [ var(46) , var(15) ]
     1514                D[18,46] = (-1)*var(29); // [ var(46) , var(18) ]
     1515                D[19,46] = (-1)*var(27); // [ var(46) , var(19) ]
     1516                D[21,46] = (-1)*var(52)+(-1)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(46) , var(21) ]
     1517                D[22,46] = (-1)*var(1); // [ var(46) , var(22) ]
     1518                D[23,46] = (-1)*var(3); // [ var(46) , var(23) ]
     1519                D[25,46] = var(10); // [ var(46) , var(25) ]
     1520                D[1,47] = var(46); // [ var(47) , var(1) ]
     1521                D[4,47] = var(45); // [ var(47) , var(4) ]
     1522                D[6,47] = var(44); // [ var(47) , var(6) ]
     1523                D[9,47] = (-1)*var(42); // [ var(47) , var(9) ]
     1524                D[13,47] = var(39); // [ var(47) , var(13) ]
     1525                D[14,47] = (-1)*var(38); // [ var(47) , var(14) ]
     1526                D[17,47] = var(34); // [ var(47) , var(17) ]
     1527                D[19,47] = (-1)*var(31); // [ var(47) , var(19) ]
     1528                D[20,47] = (-1)*var(29); // [ var(47) , var(20) ]
     1529                D[21,47] = (-1)*var(26); // [ var(47) , var(21) ]
     1530                D[22,47] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(47) , var(22) ]
     1531                D[24,47] = (-1)*var(3); // [ var(47) , var(24) ]
     1532                D[25,47] = (-1)*var(7); // [ var(47) , var(25) ]
     1533                D[3,48] = var(46); // [ var(48) , var(3) ]
     1534                D[7,48] = (-1)*var(44); // [ var(48) , var(7) ]
     1535                D[8,48] = var(43); // [ var(48) , var(8) ]
     1536                D[11,48] = (-1)*var(41); // [ var(48) , var(11) ]
     1537                D[12,48] = (-1)*var(40); // [ var(48) , var(12) ]
     1538                D[15,48] = var(37); // [ var(48) , var(15) ]
     1539                D[16,48] = var(36); // [ var(48) , var(16) ]
     1540                D[18,48] = (-1)*var(33); // [ var(48) , var(18) ]
     1541                D[19,48] = var(32); // [ var(48) , var(19) ]
     1542                D[21,48] = (-1)*var(28); // [ var(48) , var(21) ]
     1543                D[23,48] = (-1)*var(52)+(-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(48) , var(23) ]
     1544                D[24,48] = (-1)*var(1); // [ var(48) , var(24) ]
     1545                D[25,48] = var(6); // [ var(48) , var(25) ]
     1546                D[1,49] = var(48); // [ var(49) , var(1) ]
     1547                D[3,49] = var(47); // [ var(49) , var(3) ]
     1548                D[8,49] = var(45); // [ var(49) , var(8) ]
     1549                D[10,49] = (-1)*var(44); // [ var(49) , var(10) ]
     1550                D[12,49] = (-1)*var(42); // [ var(49) , var(12) ]
     1551                D[14,49] = (-1)*var(41); // [ var(49) , var(14) ]
     1552                D[16,49] = var(39); // [ var(49) , var(16) ]
     1553                D[17,49] = var(37); // [ var(49) , var(17) ]
     1554                D[19,49] = var(35); // [ var(49) , var(19) ]
     1555                D[20,49] = (-1)*var(33); // [ var(49) , var(20) ]
     1556                D[22,49] = (-1)*var(28); // [ var(49) , var(22) ]
     1557                D[23,49] = (-1)*var(26); // [ var(49) , var(23) ]
     1558                D[24,49] = (-1)*var(51)+(-1)*var(52)+(-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(49) , var(24) ]
     1559                D[25,49] = (-1)*var(2); // [ var(49) , var(25) ]
     1560                D[2,50] = var(49); // [ var(50) , var(2) ]
     1561                D[6,50] = (-1)*var(48); // [ var(50) , var(6) ]
     1562                D[7,50] = var(47); // [ var(50) , var(7) ]
     1563                D[10,50] = (-1)*var(46); // [ var(50) , var(10) ]
     1564                D[11,50] = var(45); // [ var(50) , var(11) ]
     1565                D[14,50] = (-1)*var(43); // [ var(50) , var(14) ]
     1566                D[15,50] = (-1)*var(42); // [ var(50) , var(15) ]
     1567                D[17,50] = var(40); // [ var(50) , var(17) ]
     1568                D[18,50] = var(39); // [ var(50) , var(18) ]
     1569                D[20,50] = (-1)*var(36); // [ var(50) , var(20) ]
     1570                D[21,50] = var(35); // [ var(50) , var(21) ]
     1571                D[22,50] = (-1)*var(32); // [ var(50) , var(22) ]
     1572                D[23,50] = var(31); // [ var(50) , var(23) ]
     1573                D[24,50] = (-1)*var(27); // [ var(50) , var(24) ]
     1574                D[25,50] = (-1)*var(51)+(-2)*var(52)+(-2)*var(53)+(-2)*var(54)+(-1)*var(55); // [ var(50) , var(25) ]
     1575        // X(i) * X(j):
     1576                D[1,2] = (-1)*var(6); // [ var(2) , var(1) ]
     1577                D[1,7] = (-1)*var(10); // [ var(7) , var(1) ]
     1578                D[1,11] = (-1)*var(14); // [ var(11) , var(1) ]
     1579                D[1,15] = (-1)*var(17); // [ var(15) , var(1) ]
     1580                D[1,18] = (-1)*var(20); // [ var(18) , var(1) ]
     1581                D[1,21] = (-1)*var(22); // [ var(21) , var(1) ]
     1582                D[1,23] = (-1)*var(24); // [ var(23) , var(1) ]
     1583                D[2,3] = (-1)*var(7); // [ var(3) , var(2) ]
     1584                D[2,8] = (-1)*var(11); // [ var(8) , var(2) ]
     1585                D[2,12] = (-1)*var(15); // [ var(12) , var(2) ]
     1586                D[2,16] = (-1)*var(18); // [ var(16) , var(2) ]
     1587                D[2,19] = (-1)*var(21); // [ var(19) , var(2) ]
     1588                D[2,24] = (-1)*var(25); // [ var(24) , var(2) ]
     1589                D[3,4] = (-1)*var(8); // [ var(4) , var(3) ]
     1590                D[3,6] = var(10); // [ var(6) , var(3) ]
     1591                D[3,9] = (-1)*var(12); // [ var(9) , var(3) ]
     1592                D[3,13] = (-1)*var(16); // [ var(13) , var(3) ]
     1593                D[3,21] = (-1)*var(23); // [ var(21) , var(3) ]
     1594                D[3,22] = (-1)*var(24); // [ var(22) , var(3) ]
     1595                D[4,5] = (-1)*var(9); // [ var(5) , var(4) ]
     1596                D[4,7] = var(11); // [ var(7) , var(4) ]
     1597                D[4,10] = var(14); // [ var(10) , var(4) ]
     1598                D[4,16] = (-1)*var(19); // [ var(16) , var(4) ]
     1599                D[4,18] = (-1)*var(21); // [ var(18) , var(4) ]
     1600                D[4,20] = (-1)*var(22); // [ var(20) , var(4) ]
     1601                D[5,8] = var(12); // [ var(8) , var(5) ]
     1602                D[5,9] = (2)*var(13); // [ var(9) , var(5) ]
     1603                D[5,11] = var(15); // [ var(11) , var(5) ]
     1604                D[5,12] = (2)*var(16); // [ var(12) , var(5) ]
     1605                D[5,14] = var(17); // [ var(14) , var(5) ]
     1606                D[5,15] = (2)*var(18); // [ var(15) , var(5) ]
     1607                D[5,17] = (2)*var(20); // [ var(17) , var(5) ]
     1608                D[6,8] = (-1)*var(14); // [ var(8) , var(6) ]
     1609                D[6,12] = (-1)*var(17); // [ var(12) , var(6) ]
     1610                D[6,16] = (-1)*var(20); // [ var(16) , var(6) ]
     1611                D[6,19] = (-1)*var(22); // [ var(19) , var(6) ]
     1612                D[6,23] = var(25); // [ var(23) , var(6) ]
     1613                D[7,9] = (-1)*var(15); // [ var(9) , var(7) ]
     1614                D[7,13] = (-1)*var(18); // [ var(13) , var(7) ]
     1615                D[7,19] = var(23); // [ var(19) , var(7) ]
     1616                D[7,22] = (-1)*var(25); // [ var(22) , var(7) ]
     1617                D[8,13] = var(19); // [ var(13) , var(8) ]
     1618                D[8,18] = (-1)*var(23); // [ var(18) , var(8) ]
     1619                D[8,20] = (-1)*var(24); // [ var(20) , var(8) ]
     1620                D[9,10] = var(17); // [ var(10) , var(9) ]
     1621                D[9,12] = (2)*var(19); // [ var(12) , var(9) ]
     1622                D[9,15] = (2)*var(21); // [ var(15) , var(9) ]
     1623                D[9,17] = (2)*var(22); // [ var(17) , var(9) ]
     1624                D[10,13] = (-1)*var(20); // [ var(13) , var(10) ]
     1625                D[10,19] = var(24); // [ var(19) , var(10) ]
     1626                D[10,21] = var(25); // [ var(21) , var(10) ]
     1627                D[11,13] = var(21); // [ var(13) , var(11) ]
     1628                D[11,16] = var(23); // [ var(16) , var(11) ]
     1629                D[11,20] = (-1)*var(25); // [ var(20) , var(11) ]
     1630                D[12,15] = (2)*var(23); // [ var(15) , var(12) ]
     1631                D[12,17] = (2)*var(24); // [ var(17) , var(12) ]
     1632                D[13,14] = (-1)*var(22); // [ var(14) , var(13) ]
     1633                D[14,16] = var(24); // [ var(16) , var(14) ]
     1634                D[14,18] = var(25); // [ var(18) , var(14) ]
     1635                D[15,17] = (2)*var(25); // [ var(17) , var(15) ]
     1636        // Y(i) * Y(j):
     1637                D[26,27] = var(31); // [ var(27) , var(26) ]
     1638                D[26,32] = var(35); // [ var(32) , var(26) ]
     1639                D[26,36] = var(39); // [ var(36) , var(26) ]
     1640                D[26,40] = var(42); // [ var(40) , var(26) ]
     1641                D[26,43] = var(45); // [ var(43) , var(26) ]
     1642                D[26,46] = var(47); // [ var(46) , var(26) ]
     1643                D[26,48] = var(49); // [ var(48) , var(26) ]
     1644                D[27,28] = var(32); // [ var(28) , var(27) ]
     1645                D[27,33] = var(36); // [ var(33) , var(27) ]
     1646                D[27,37] = var(40); // [ var(37) , var(27) ]
     1647                D[27,41] = var(43); // [ var(41) , var(27) ]
     1648                D[27,44] = var(46); // [ var(44) , var(27) ]
     1649                D[27,49] = var(50); // [ var(49) , var(27) ]
     1650                D[28,29] = var(33); // [ var(29) , var(28) ]
     1651                D[28,31] = (-1)*var(35); // [ var(31) , var(28) ]
     1652                D[28,34] = var(37); // [ var(34) , var(28) ]
     1653                D[28,38] = var(41); // [ var(38) , var(28) ]
     1654                D[28,46] = var(48); // [ var(46) , var(28) ]
     1655                D[28,47] = var(49); // [ var(47) , var(28) ]
     1656                D[29,30] = var(34); // [ var(30) , var(29) ]
     1657                D[29,32] = (-1)*var(36); // [ var(32) , var(29) ]
     1658                D[29,35] = (-1)*var(39); // [ var(35) , var(29) ]
     1659                D[29,41] = var(44); // [ var(41) , var(29) ]
     1660                D[29,43] = var(46); // [ var(43) , var(29) ]
     1661                D[29,45] = var(47); // [ var(45) , var(29) ]
     1662                D[30,33] = (-1)*var(37); // [ var(33) , var(30) ]
     1663                D[30,34] = (-2)*var(38); // [ var(34) , var(30) ]
     1664                D[30,36] = (-1)*var(40); // [ var(36) , var(30) ]
     1665                D[30,37] = (-2)*var(41); // [ var(37) , var(30) ]
     1666                D[30,39] = (-1)*var(42); // [ var(39) , var(30) ]
     1667                D[30,40] = (-2)*var(43); // [ var(40) , var(30) ]
     1668                D[30,42] = (-2)*var(45); // [ var(42) , var(30) ]
     1669                D[31,33] = var(39); // [ var(33) , var(31) ]
     1670                D[31,37] = var(42); // [ var(37) , var(31) ]
     1671                D[31,41] = var(45); // [ var(41) , var(31) ]
     1672                D[31,44] = var(47); // [ var(44) , var(31) ]
     1673                D[31,48] = (-1)*var(50); // [ var(48) , var(31) ]
     1674                D[32,34] = var(40); // [ var(34) , var(32) ]
     1675                D[32,38] = var(43); // [ var(38) , var(32) ]
     1676                D[32,44] = (-1)*var(48); // [ var(44) , var(32) ]
     1677                D[32,47] = var(50); // [ var(47) , var(32) ]
     1678                D[33,38] = (-1)*var(44); // [ var(38) , var(33) ]
     1679                D[33,43] = var(48); // [ var(43) , var(33) ]
     1680                D[33,45] = var(49); // [ var(45) , var(33) ]
     1681                D[34,35] = (-1)*var(42); // [ var(35) , var(34) ]
     1682                D[34,37] = (-2)*var(44); // [ var(37) , var(34) ]
     1683                D[34,40] = (-2)*var(46); // [ var(40) , var(34) ]
     1684                D[34,42] = (-2)*var(47); // [ var(42) , var(34) ]
     1685                D[35,38] = var(45); // [ var(38) , var(35) ]
     1686                D[35,44] = (-1)*var(49); // [ var(44) , var(35) ]
     1687                D[35,46] = (-1)*var(50); // [ var(46) , var(35) ]
     1688                D[36,38] = (-1)*var(46); // [ var(38) , var(36) ]
     1689                D[36,41] = (-1)*var(48); // [ var(41) , var(36) ]
     1690                D[36,45] = var(50); // [ var(45) , var(36) ]
     1691                D[37,40] = (-2)*var(48); // [ var(40) , var(37) ]
     1692                D[37,42] = (-2)*var(49); // [ var(42) , var(37) ]
     1693                D[38,39] = var(47); // [ var(39) , var(38) ]
     1694                D[39,41] = (-1)*var(49); // [ var(41) , var(39) ]
     1695                D[39,43] = (-1)*var(50); // [ var(43) , var(39) ]
     1696                D[40,42] = (-2)*var(50); // [ var(42) , var(40) ]
     1697   ncalgebra(1,D);
     1698   return(@@@rrr);
     1699}
     1700example
     1701{ "EXAMPLE:"; echo = 2;
     1702   def ncAlgebra = makeUso11();
     1703   setring ncAlgebra;
     1704   ncAlgebra;
     1705}
     1706////////////////////////////////////////////////////////////////////
     1707
     1708// Algebra: sp1(Q) has the type: C1, and defined by:
     1709
     1710proc makeUsp1(list #)
     1711"USAGE:   makeUsp1([p]); p an optional integer (field characteristic)
     1712RETURN:  a ring, describing U(sp_1)
     1713NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(sp_1) is derived from the Chevalley representation of sp_1, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     1714SEE ALSO: makeUsl, makeUso5, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     1715EXAMPLE: example makeUsp1; shows examples
     1716"
     1717{
     1718   int @p = defInt(#);
     1719
     1720   ring @@@rrr = @p,(X(1..1),Y(1..1),H(1..1)),dp;
     1721   int N = nvars(@@@rrr);
     1722   matrix D[N][N]=0;
     1723
     1724        // H(i) * X(j):
     1725                D[1,3] = (2)*var(1); // [ var(3) , var(1) ]
     1726        // H(i) * Y(j):
     1727                D[2,3] = (-2)*var(2); // [ var(3) , var(2) ]
     1728        // Y(i) * X(j):
     1729                D[1,2] = (-1)*var(3); // [ var(2) , var(1) ]
     1730        // X(i) * X(j):
     1731        // Y(i) * Y(j):
     1732   ncalgebra(1,D);
     1733   return(@@@rrr);
     1734}
     1735example
     1736{ "EXAMPLE:"; echo = 2;
     1737   def ncAlgebra = makeUsp1();
     1738   setring ncAlgebra;
     1739   ncAlgebra;
     1740}
     1741////////////////////////////////////////////////////////////////////
     1742
     1743// Algebra: sp2(Q) has the type: C2, and defined by:
     1744
     1745proc makeUsp2(list #)
     1746"USAGE:   makeUsp2([p]); p an optional integer (field characteristic)
     1747RETURN:  a ring, describing U(sp_2)
     1748NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(sp_2) is derived from the Chevalley representation of sp_2, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     1749SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     1750EXAMPLE: example makeUsp2; shows examples
     1751"
     1752{
     1753   int @p = defInt(#);
     1754
     1755   ring @@@rrr = @p,(X(1..4),Y(1..4),H(1..2)),dp;
     1756   int N = nvars(@@@rrr);
     1757   matrix D[N][N]=0;
     1758
     1759        // H(i) * X(j):
     1760                D[1,9] = (2)*var(1); // [ var(9) , var(1) ]
     1761                D[2,9] = (-2)*var(2); // [ var(9) , var(2) ]
     1762                D[4,9] = (2)*var(4); // [ var(9) , var(4) ]
     1763                D[1,10] = (-1)*var(1); // [ var(10) , var(1) ]
     1764                D[2,10] = (2)*var(2); // [ var(10) , var(2) ]
     1765                D[3,10] = var(3); // [ var(10) , var(3) ]
     1766        // H(i) * Y(j):
     1767                D[5,9] = (-2)*var(5); // [ var(9) , var(5) ]
     1768                D[6,9] = (2)*var(6); // [ var(9) , var(6) ]
     1769                D[8,9] = (-2)*var(8); // [ var(9) , var(8) ]
     1770                D[5,10] = var(5); // [ var(10) , var(5) ]
     1771                D[6,10] = (-2)*var(6); // [ var(10) , var(6) ]
     1772                D[7,10] = (-1)*var(7); // [ var(10) , var(7) ]
     1773        // Y(i) * X(j):
     1774                D[1,5] = (-1)*var(9); // [ var(5) , var(1) ]
     1775                D[3,5] = (-2)*var(2); // [ var(5) , var(3) ]
     1776                D[4,5] = (-1)*var(3); // [ var(5) , var(4) ]
     1777                D[2,6] = (-1)*var(10); // [ var(6) , var(2) ]
     1778                D[3,6] = var(1); // [ var(6) , var(3) ]
     1779                D[1,7] = (-2)*var(6); // [ var(7) , var(1) ]
     1780                D[2,7] = var(5); // [ var(7) , var(2) ]
     1781                D[3,7] = (-1)*var(9)+(-2)*var(10); // [ var(7) , var(3) ]
     1782                D[4,7] = var(1); // [ var(7) , var(4) ]
     1783                D[1,8] = (-1)*var(7); // [ var(8) , var(1) ]
     1784                D[3,8] = var(5); // [ var(8) , var(3) ]
     1785                D[4,8] = (-1)*var(9)+(-1)*var(10); // [ var(8) , var(4) ]
     1786        // X(i) * X(j):
     1787                D[1,2] = var(3); // [ var(2) , var(1) ]
     1788                D[1,3] = (2)*var(4); // [ var(3) , var(1) ]
     1789        // Y(i) * Y(j):
     1790                D[5,6] = (-1)*var(7); // [ var(6) , var(5) ]
     1791                D[5,7] = (-2)*var(8); // [ var(7) , var(5) ]
     1792   ncalgebra(1,D);
     1793   return(@@@rrr);
     1794}
     1795example
     1796{ "EXAMPLE:"; echo = 2;
     1797   def ncAlgebra = makeUsp2();
     1798   setring ncAlgebra;
     1799   ncAlgebra;
     1800}
     1801////////////////////////////////////////////////////////////////////
     1802
     1803// Algebra: sp3(Q) has the type: C3, and defined by:
     1804
     1805proc makeUsp3(list #)
     1806"USAGE:   makeUsp3([p]); p an optional integer (field characteristic)
     1807RETURN:  a ring, describing U(sp_3)
     1808NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(sp_3) is derived from the Chevalley representation of sp_3, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     1809SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     1810EXAMPLE: example makeUsp3; shows examples
     1811"
     1812{
     1813   int @p = defInt(#);
     1814
     1815   ring @@@rrr = @p,(X(1..9),Y(1..9),H(1..3)),dp;
     1816   int N = nvars(@@@rrr);
     1817   matrix D[N][N]=0;
     1818
     1819        // H(i) * X(j):
     1820                D[1,19] = (2)*var(1); // [ var(19) , var(1) ]
     1821                D[2,19] = (-1)*var(2); // [ var(19) , var(2) ]
     1822                D[4,19] = var(4); // [ var(19) , var(4) ]
     1823                D[5,19] = (-1)*var(5); // [ var(19) , var(5) ]
     1824                D[6,19] = var(6); // [ var(19) , var(6) ]
     1825                D[7,19] = (-2)*var(7); // [ var(19) , var(7) ]
     1826                D[9,19] = (2)*var(9); // [ var(19) , var(9) ]
     1827                D[1,20] = (-1)*var(1); // [ var(20) , var(1) ]
     1828                D[2,20] = (2)*var(2); // [ var(20) , var(2) ]
     1829                D[3,20] = (-2)*var(3); // [ var(20) , var(3) ]
     1830                D[4,20] = var(4); // [ var(20) , var(4) ]
     1831                D[6,20] = (-1)*var(6); // [ var(20) , var(6) ]
     1832                D[7,20] = (2)*var(7); // [ var(20) , var(7) ]
     1833                D[8,20] = var(8); // [ var(20) , var(8) ]
     1834                D[2,21] = (-1)*var(2); // [ var(21) , var(2) ]
     1835                D[3,21] = (2)*var(3); // [ var(21) , var(3) ]
     1836                D[4,21] = (-1)*var(4); // [ var(21) , var(4) ]
     1837                D[5,21] = var(5); // [ var(21) , var(5) ]
     1838                D[6,21] = var(6); // [ var(21) , var(6) ]
     1839        // H(i) * Y(j):
     1840                D[10,19] = (-2)*var(10); // [ var(19) , var(10) ]
     1841                D[11,19] = var(11); // [ var(19) , var(11) ]
     1842                D[13,19] = (-1)*var(13); // [ var(19) , var(13) ]
     1843                D[14,19] = var(14); // [ var(19) , var(14) ]
     1844                D[15,19] = (-1)*var(15); // [ var(19) , var(15) ]
     1845                D[16,19] = (2)*var(16); // [ var(19) , var(16) ]
     1846                D[18,19] = (-2)*var(18); // [ var(19) , var(18) ]
     1847                D[10,20] = var(10); // [ var(20) , var(10) ]
     1848                D[11,20] = (-2)*var(11); // [ var(20) , var(11) ]
     1849                D[12,20] = (2)*var(12); // [ var(20) , var(12) ]
     1850                D[13,20] = (-1)*var(13); // [ var(20) , var(13) ]
     1851                D[15,20] = var(15); // [ var(20) , var(15) ]
     1852                D[16,20] = (-2)*var(16); // [ var(20) , var(16) ]
     1853                D[17,20] = (-1)*var(17); // [ var(20) , var(17) ]
     1854                D[11,21] = var(11); // [ var(21) , var(11) ]
     1855                D[12,21] = (-2)*var(12); // [ var(21) , var(12) ]
     1856                D[13,21] = var(13); // [ var(21) , var(13) ]
     1857                D[14,21] = (-1)*var(14); // [ var(21) , var(14) ]
     1858                D[15,21] = (-1)*var(15); // [ var(21) , var(15) ]
     1859        // Y(i) * X(j):
     1860                D[1,10] = (-1)*var(19); // [ var(10) , var(1) ]
     1861                D[4,10] = (-1)*var(2); // [ var(10) , var(4) ]
     1862                D[6,10] = (-1)*var(5); // [ var(10) , var(6) ]
     1863                D[8,10] = (-2)*var(7); // [ var(10) , var(8) ]
     1864                D[9,10] = (-1)*var(8); // [ var(10) , var(9) ]
     1865                D[2,11] = (-1)*var(20); // [ var(11) , var(2) ]
     1866                D[4,11] = var(1); // [ var(11) , var(4) ]
     1867                D[5,11] = (-2)*var(3); // [ var(11) , var(5) ]
     1868                D[7,11] = (-1)*var(5); // [ var(11) , var(7) ]
     1869                D[8,11] = (-1)*var(6); // [ var(11) , var(8) ]
     1870                D[3,12] = (-1)*var(21); // [ var(12) , var(3) ]
     1871                D[5,12] = var(2); // [ var(12) , var(5) ]
     1872                D[6,12] = var(4); // [ var(12) , var(6) ]
     1873                D[1,13] = (-1)*var(11); // [ var(13) , var(1) ]
     1874                D[2,13] = var(10); // [ var(13) , var(2) ]
     1875                D[4,13] = (-1)*var(19)+(-1)*var(20); // [ var(13) , var(4) ]
     1876                D[6,13] = (-2)*var(3); // [ var(13) , var(6) ]
     1877                D[8,13] = (-1)*var(5); // [ var(13) , var(8) ]
     1878                D[9,13] = (-1)*var(6); // [ var(13) , var(9) ]
     1879                D[2,14] = (-2)*var(12); // [ var(14) , var(2) ]
     1880                D[3,14] = var(11); // [ var(14) , var(3) ]
     1881                D[5,14] = (-1)*var(20)+(-2)*var(21); // [ var(14) , var(5) ]
     1882                D[6,14] = var(1); // [ var(14) , var(6) ]
     1883                D[7,14] = var(2); // [ var(14) , var(7) ]
     1884                D[8,14] = var(4); // [ var(14) , var(8) ]
     1885                D[1,15] = (-1)*var(14); // [ var(15) , var(1) ]
     1886                D[3,15] = var(13); // [ var(15) , var(3) ]
     1887                D[4,15] = (-2)*var(12); // [ var(15) , var(4) ]
     1888                D[5,15] = var(10); // [ var(15) , var(5) ]
     1889                D[6,15] = (-1)*var(19)+(-1)*var(20)+(-2)*var(21); // [ var(15) , var(6) ]
     1890                D[8,15] = var(2); // [ var(15) , var(8) ]
     1891                D[9,15] = var(4); // [ var(15) , var(9) ]
     1892                D[2,16] = (-1)*var(14); // [ var(16) , var(2) ]
     1893                D[5,16] = var(11); // [ var(16) , var(5) ]
     1894                D[7,16] = (-1)*var(20)+(-1)*var(21); // [ var(16) , var(7) ]
     1895                D[8,16] = var(1); // [ var(16) , var(8) ]
     1896                D[1,17] = (-2)*var(16); // [ var(17) , var(1) ]
     1897                D[2,17] = (-1)*var(15); // [ var(17) , var(2) ]
     1898                D[4,17] = (-1)*var(14); // [ var(17) , var(4) ]
     1899                D[5,17] = var(13); // [ var(17) , var(5) ]
     1900                D[6,17] = var(11); // [ var(17) , var(6) ]
     1901                D[7,17] = var(10); // [ var(17) , var(7) ]
     1902                D[8,17] = (-1)*var(19)+(-2)*var(20)+(-2)*var(21); // [ var(17) , var(8) ]
     1903                D[9,17] = var(1); // [ var(17) , var(9) ]
     1904                D[1,18] = (-1)*var(17); // [ var(18) , var(1) ]
     1905                D[4,18] = (-1)*var(15); // [ var(18) , var(4) ]
     1906                D[6,18] = var(13); // [ var(18) , var(6) ]
     1907                D[8,18] = var(10); // [ var(18) , var(8) ]
     1908                D[9,18] = (-1)*var(19)+(-1)*var(20)+(-1)*var(21); // [ var(18) , var(9) ]
     1909        // X(i) * X(j):
     1910                D[1,2] = var(4); // [ var(2) , var(1) ]
     1911                D[1,5] = var(6); // [ var(5) , var(1) ]
     1912                D[1,7] = var(8); // [ var(7) , var(1) ]
     1913                D[1,8] = (2)*var(9); // [ var(8) , var(1) ]
     1914                D[2,3] = var(5); // [ var(3) , var(2) ]
     1915                D[2,5] = (2)*var(7); // [ var(5) , var(2) ]
     1916                D[2,6] = var(8); // [ var(6) , var(2) ]
     1917                D[3,4] = (-1)*var(6); // [ var(4) , var(3) ]
     1918                D[4,5] = var(8); // [ var(5) , var(4) ]
     1919                D[4,6] = (2)*var(9); // [ var(6) , var(4) ]
     1920        // Y(i) * Y(j):
     1921                D[10,11] = (-1)*var(13); // [ var(11) , var(10) ]
     1922                D[10,14] = (-1)*var(15); // [ var(14) , var(10) ]
     1923                D[10,16] = (-1)*var(17); // [ var(16) , var(10) ]
     1924                D[10,17] = (-2)*var(18); // [ var(17) , var(10) ]
     1925                D[11,12] = (-1)*var(14); // [ var(12) , var(11) ]
     1926                D[11,14] = (-2)*var(16); // [ var(14) , var(11) ]
     1927                D[11,15] = (-1)*var(17); // [ var(15) , var(11) ]
     1928                D[12,13] = var(15); // [ var(13) , var(12) ]
     1929                D[13,14] = (-1)*var(17); // [ var(14) , var(13) ]
     1930                D[13,15] = (-2)*var(18); // [ var(15) , var(13) ]
     1931   ncalgebra(1,D);
     1932   return(@@@rrr);
     1933}
     1934example
     1935{ "EXAMPLE:"; echo = 2;
     1936   def ncAlgebra = makeUsp3();
     1937   setring ncAlgebra;
     1938   ncAlgebra;
     1939}
     1940////////////////////////////////////////////////////////////////////
     1941
     1942// Algebra: sp4(Q) has the type: C4, and defined by:
     1943
     1944proc makeUsp4(list #)
     1945"USAGE:   makeUsp4([p]); p an optional integer (field characteristic)
     1946RETURN:  a ring, describing U(sp_4)
     1947NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(sp_4) is derived from the Chevalley representation of sp_4, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     1948SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     1949EXAMPLE: example makeUsp4; shows examples
     1950"
     1951{
     1952   int @p = defInt(#);
     1953
     1954   ring @@@rrr = @p,(X(1..16),Y(1..16),H(1..4)),dp;
     1955   int N = nvars(@@@rrr);
     1956   matrix D[N][N]=0;
     1957
     1958        // H(i) * X(j):
     1959                D[1,33] = (2)*var(1); // [ var(33) , var(1) ]
     1960                D[2,33] = (-1)*var(2); // [ var(33) , var(2) ]
     1961                D[5,33] = var(5); // [ var(33) , var(5) ]
     1962                D[6,33] = (-1)*var(6); // [ var(33) , var(6) ]
     1963                D[8,33] = var(8); // [ var(33) , var(8) ]
     1964                D[9,33] = (-1)*var(9); // [ var(33) , var(9) ]
     1965                D[11,33] = var(11); // [ var(33) , var(11) ]
     1966                D[12,33] = (-1)*var(12); // [ var(33) , var(12) ]
     1967                D[13,33] = var(13); // [ var(33) , var(13) ]
     1968                D[14,33] = (-2)*var(14); // [ var(33) , var(14) ]
     1969                D[16,33] = (2)*var(16); // [ var(33) , var(16) ]
     1970                D[1,34] = (-1)*var(1); // [ var(34) , var(1) ]
     1971                D[2,34] = (2)*var(2); // [ var(34) , var(2) ]
     1972                D[3,34] = (-1)*var(3); // [ var(34) , var(3) ]
     1973                D[5,34] = var(5); // [ var(34) , var(5) ]
     1974                D[6,34] = var(6); // [ var(34) , var(6) ]
     1975                D[7,34] = (-1)*var(7); // [ var(34) , var(7) ]
     1976                D[9,34] = var(9); // [ var(34) , var(9) ]
     1977                D[10,34] = (-2)*var(10); // [ var(34) , var(10) ]
     1978                D[13,34] = (-1)*var(13); // [ var(34) , var(13) ]
     1979                D[14,34] = (2)*var(14); // [ var(34) , var(14) ]
     1980                D[15,34] = var(15); // [ var(34) , var(15) ]
     1981                D[2,35] = (-1)*var(2); // [ var(35) , var(2) ]
     1982                D[3,35] = (2)*var(3); // [ var(35) , var(3) ]
     1983                D[4,35] = (-2)*var(4); // [ var(35) , var(4) ]
     1984                D[5,35] = (-1)*var(5); // [ var(35) , var(5) ]
     1985                D[6,35] = var(6); // [ var(35) , var(6) ]
     1986                D[8,35] = var(8); // [ var(35) , var(8) ]
     1987                D[9,35] = (-1)*var(9); // [ var(35) , var(9) ]
     1988                D[10,35] = (2)*var(10); // [ var(35) , var(10) ]
     1989                D[11,35] = (-1)*var(11); // [ var(35) , var(11) ]
     1990                D[12,35] = var(12); // [ var(35) , var(12) ]
     1991                D[13,35] = var(13); // [ var(35) , var(13) ]
     1992                D[3,36] = (-1)*var(3); // [ var(36) , var(3) ]
     1993                D[4,36] = (2)*var(4); // [ var(36) , var(4) ]
     1994                D[6,36] = (-1)*var(6); // [ var(36) , var(6) ]
     1995                D[7,36] = var(7); // [ var(36) , var(7) ]
     1996                D[8,36] = (-1)*var(8); // [ var(36) , var(8) ]
     1997                D[9,36] = var(9); // [ var(36) , var(9) ]
     1998                D[11,36] = var(11); // [ var(36) , var(11) ]
     1999        // H(i) * Y(j):
     2000                D[17,33] = (-2)*var(17); // [ var(33) , var(17) ]
     2001                D[18,33] = var(18); // [ var(33) , var(18) ]
     2002                D[21,33] = (-1)*var(21); // [ var(33) , var(21) ]
     2003                D[22,33] = var(22); // [ var(33) , var(22) ]
     2004                D[24,33] = (-1)*var(24); // [ var(33) , var(24) ]
     2005                D[25,33] = var(25); // [ var(33) , var(25) ]
     2006                D[27,33] = (-1)*var(27); // [ var(33) , var(27) ]
     2007                D[28,33] = var(28); // [ var(33) , var(28) ]
     2008                D[29,33] = (-1)*var(29); // [ var(33) , var(29) ]
     2009                D[30,33] = (2)*var(30); // [ var(33) , var(30) ]
     2010                D[32,33] = (-2)*var(32); // [ var(33) , var(32) ]
     2011                D[17,34] = var(17); // [ var(34) , var(17) ]
     2012                D[18,34] = (-2)*var(18); // [ var(34) , var(18) ]
     2013                D[19,34] = var(19); // [ var(34) , var(19) ]
     2014                D[21,34] = (-1)*var(21); // [ var(34) , var(21) ]
     2015                D[22,34] = (-1)*var(22); // [ var(34) , var(22) ]
     2016                D[23,34] = var(23); // [ var(34) , var(23) ]
     2017                D[25,34] = (-1)*var(25); // [ var(34) , var(25) ]
     2018                D[26,34] = (2)*var(26); // [ var(34) , var(26) ]
     2019                D[29,34] = var(29); // [ var(34) , var(29) ]
     2020                D[30,34] = (-2)*var(30); // [ var(34) , var(30) ]
     2021                D[31,34] = (-1)*var(31); // [ var(34) , var(31) ]
     2022                D[18,35] = var(18); // [ var(35) , var(18) ]
     2023                D[19,35] = (-2)*var(19); // [ var(35) , var(19) ]
     2024                D[20,35] = (2)*var(20); // [ var(35) , var(20) ]
     2025                D[21,35] = var(21); // [ var(35) , var(21) ]
     2026                D[22,35] = (-1)*var(22); // [ var(35) , var(22) ]
     2027                D[24,35] = (-1)*var(24); // [ var(35) , var(24) ]
     2028                D[25,35] = var(25); // [ var(35) , var(25) ]
     2029                D[26,35] = (-2)*var(26); // [ var(35) , var(26) ]
     2030                D[27,35] = var(27); // [ var(35) , var(27) ]
     2031                D[28,35] = (-1)*var(28); // [ var(35) , var(28) ]
     2032                D[29,35] = (-1)*var(29); // [ var(35) , var(29) ]
     2033                D[19,36] = var(19); // [ var(36) , var(19) ]
     2034                D[20,36] = (-2)*var(20); // [ var(36) , var(20) ]
     2035                D[22,36] = var(22); // [ var(36) , var(22) ]
     2036                D[23,36] = (-1)*var(23); // [ var(36) , var(23) ]
     2037                D[24,36] = var(24); // [ var(36) , var(24) ]
     2038                D[25,36] = (-1)*var(25); // [ var(36) , var(25) ]
     2039                D[27,36] = (-1)*var(27); // [ var(36) , var(27) ]
     2040        // Y(i) * X(j):
     2041                D[1,17] = (-1)*var(33); // [ var(17) , var(1) ]
     2042                D[5,17] = (-1)*var(2); // [ var(17) , var(5) ]
     2043                D[8,17] = (-1)*var(6); // [ var(17) , var(8) ]
     2044                D[11,17] = (-1)*var(9); // [ var(17) , var(11) ]
     2045                D[13,17] = (-1)*var(12); // [ var(17) , var(13) ]
     2046                D[15,17] = (-2)*var(14); // [ var(17) , var(15) ]
     2047                D[16,17] = (-1)*var(15); // [ var(17) , var(16) ]
     2048                D[2,18] = (-1)*var(34); // [ var(18) , var(2) ]
     2049                D[5,18] = var(1); // [ var(18) , var(5) ]
     2050                D[6,18] = (-1)*var(3); // [ var(18) , var(6) ]
     2051                D[9,18] = (-1)*var(7); // [ var(18) , var(9) ]
     2052                D[12,18] = (-2)*var(10); // [ var(18) , var(12) ]
     2053                D[14,18] = (-1)*var(12); // [ var(18) , var(14) ]
     2054                D[15,18] = (-1)*var(13); // [ var(18) , var(15) ]
     2055                D[3,19] = (-1)*var(35); // [ var(19) , var(3) ]
     2056                D[6,19] = var(2); // [ var(19) , var(6) ]
     2057                D[7,19] = (-2)*var(4); // [ var(19) , var(7) ]
     2058                D[8,19] = var(5); // [ var(19) , var(8) ]
     2059                D[10,19] = (-1)*var(7); // [ var(19) , var(10) ]
     2060                D[12,19] = (-1)*var(9); // [ var(19) , var(12) ]
     2061                D[13,19] = (-1)*var(11); // [ var(19) , var(13) ]
     2062                D[4,20] = (-1)*var(36); // [ var(20) , var(4) ]
     2063                D[7,20] = var(3); // [ var(20) , var(7) ]
     2064                D[9,20] = var(6); // [ var(20) , var(9) ]
     2065                D[11,20] = var(8); // [ var(20) , var(11) ]
     2066                D[1,21] = (-1)*var(18); // [ var(21) , var(1) ]
     2067                D[2,21] = var(17); // [ var(21) , var(2) ]
     2068                D[5,21] = (-1)*var(33)+(-1)*var(34); // [ var(21) , var(5) ]
     2069                D[8,21] = (-1)*var(3); // [ var(21) , var(8) ]
     2070                D[11,21] = (-1)*var(7); // [ var(21) , var(11) ]
     2071                D[13,21] = (-2)*var(10); // [ var(21) , var(13) ]
     2072                D[15,21] = (-1)*var(12); // [ var(21) , var(15) ]
     2073                D[16,21] = (-1)*var(13); // [ var(21) , var(16) ]
     2074                D[2,22] = (-1)*var(19); // [ var(22) , var(2) ]
     2075                D[3,22] = var(18); // [ var(22) , var(3) ]
     2076                D[6,22] = (-1)*var(34)+(-1)*var(35); // [ var(22) , var(6) ]
     2077                D[8,22] = var(1); // [ var(22) , var(8) ]
     2078                D[9,22] = (-2)*var(4); // [ var(22) , var(9) ]
     2079                D[12,22] = (-1)*var(7); // [ var(22) , var(12) ]
     2080                D[14,22] = (-1)*var(9); // [ var(22) , var(14) ]
     2081                D[15,22] = (-1)*var(11); // [ var(22) , var(15) ]
     2082                D[3,23] = (-2)*var(20); // [ var(23) , var(3) ]
     2083                D[4,23] = var(19); // [ var(23) , var(4) ]
     2084                D[7,23] = (-1)*var(35)+(-2)*var(36); // [ var(23) , var(7) ]
     2085                D[9,23] = var(2); // [ var(23) , var(9) ]
     2086                D[10,23] = var(3); // [ var(23) , var(10) ]
     2087                D[11,23] = var(5); // [ var(23) , var(11) ]
     2088                D[12,23] = var(6); // [ var(23) , var(12) ]
     2089                D[13,23] = var(8); // [ var(23) , var(13) ]
     2090                D[1,24] = (-1)*var(22); // [ var(24) , var(1) ]
     2091                D[3,24] = var(21); // [ var(24) , var(3) ]
     2092                D[5,24] = (-1)*var(19); // [ var(24) , var(5) ]
     2093                D[6,24] = var(17); // [ var(24) , var(6) ]
     2094                D[8,24] = (-1)*var(33)+(-1)*var(34)+(-1)*var(35); // [ var(24) , var(8) ]
     2095                D[11,24] = (-2)*var(4); // [ var(24) , var(11) ]
     2096                D[13,24] = (-1)*var(7); // [ var(24) , var(13) ]
     2097                D[15,24] = (-1)*var(9); // [ var(24) , var(15) ]
     2098                D[16,24] = (-1)*var(11); // [ var(24) , var(16) ]
     2099                D[2,25] = (-1)*var(23); // [ var(25) , var(2) ]
     2100                D[4,25] = var(22); // [ var(25) , var(4) ]
     2101                D[6,25] = (-2)*var(20); // [ var(25) , var(6) ]
     2102                D[7,25] = var(18); // [ var(25) , var(7) ]
     2103                D[9,25] = (-1)*var(34)+(-1)*var(35)+(-2)*var(36); // [ var(25) , var(9) ]
     2104                D[11,25] = var(1); // [ var(25) , var(11) ]
     2105                D[12,25] = var(3); // [ var(25) , var(12) ]
     2106                D[14,25] = var(6); // [ var(25) , var(14) ]
     2107                D[15,25] = var(8); // [ var(25) , var(15) ]
     2108                D[3,26] = (-1)*var(23); // [ var(26) , var(3) ]
     2109                D[7,26] = var(19); // [ var(26) , var(7) ]
     2110                D[10,26] = (-1)*var(35)+(-1)*var(36); // [ var(26) , var(10) ]
     2111                D[12,26] = var(2); // [ var(26) , var(12) ]
     2112                D[13,26] = var(5); // [ var(26) , var(13) ]
     2113                D[1,27] = (-1)*var(25); // [ var(27) , var(1) ]
     2114                D[4,27] = var(24); // [ var(27) , var(4) ]
     2115                D[5,27] = (-1)*var(23); // [ var(27) , var(5) ]
     2116                D[7,27] = var(21); // [ var(27) , var(7) ]
     2117                D[8,27] = (-2)*var(20); // [ var(27) , var(8) ]
     2118                D[9,27] = var(17); // [ var(27) , var(9) ]
     2119                D[11,27] = (-1)*var(33)+(-1)*var(34)+(-1)*var(35)+(-2)*var(36); // [ var(27) , var(11) ]
     2120                D[13,27] = var(3); // [ var(27) , var(13) ]
     2121                D[15,27] = var(6); // [ var(27) , var(15) ]
     2122                D[16,27] = var(8); // [ var(27) , var(16) ]
     2123                D[2,28] = (-2)*var(26); // [ var(28) , var(2) ]
     2124                D[3,28] = (-1)*var(25); // [ var(28) , var(3) ]
     2125                D[6,28] = (-1)*var(23); // [ var(28) , var(6) ]
     2126                D[7,28] = var(22); // [ var(28) , var(7) ]
     2127                D[9,28] = var(19); // [ var(28) , var(9) ]
     2128                D[10,28] = var(18); // [ var(28) , var(10) ]
     2129                D[12,28] = (-1)*var(34)+(-2)*var(35)+(-2)*var(36); // [ var(28) , var(12) ]
     2130                D[13,28] = var(1); // [ var(28) , var(13) ]
     2131                D[14,28] = var(2); // [ var(28) , var(14) ]
     2132                D[15,28] = var(5); // [ var(28) , var(15) ]
     2133                D[1,29] = (-1)*var(28); // [ var(29) , var(1) ]
     2134                D[3,29] = (-1)*var(27); // [ var(29) , var(3) ]
     2135                D[5,29] = (-2)*var(26); // [ var(29) , var(5) ]
     2136                D[7,29] = var(24); // [ var(29) , var(7) ]
     2137                D[8,29] = (-1)*var(23); // [ var(29) , var(8) ]
     2138                D[10,29] = var(21); // [ var(29) , var(10) ]
     2139                D[11,29] = var(19); // [ var(29) , var(11) ]
     2140                D[12,29] = var(17); // [ var(29) , var(12) ]
     2141                D[13,29] = (-1)*var(33)+(-1)*var(34)+(-2)*var(35)+(-2)*var(36); // [ var(29) , var(13) ]
     2142                D[15,29] = var(2); // [ var(29) , var(15) ]
     2143                D[16,29] = var(5); // [ var(29) , var(16) ]
     2144                D[2,30] = (-1)*var(28); // [ var(30) , var(2) ]
     2145                D[6,30] = (-1)*var(25); // [ var(30) , var(6) ]
     2146                D[9,30] = var(22); // [ var(30) , var(9) ]
     2147                D[12,30] = var(18); // [ var(30) , var(12) ]
     2148                D[14,30] = (-1)*var(34)+(-1)*var(35)+(-1)*var(36); // [ var(30) , var(14) ]
     2149                D[15,30] = var(1); // [ var(30) , var(15) ]
     2150                D[1,31] = (-2)*var(30); // [ var(31) , var(1) ]
     2151                D[2,31] = (-1)*var(29); // [ var(31) , var(2) ]
     2152                D[5,31] = (-1)*var(28); // [ var(31) , var(5) ]
     2153                D[6,31] = (-1)*var(27); // [ var(31) , var(6) ]
     2154                D[8,31] = (-1)*var(25); // [ var(31) , var(8) ]
     2155                D[9,31] = var(24); // [ var(31) , var(9) ]
     2156                D[11,31] = var(22); // [ var(31) , var(11) ]
     2157                D[12,31] = var(21); // [ var(31) , var(12) ]
     2158                D[13,31] = var(18); // [ var(31) , var(13) ]
     2159                D[14,31] = var(17); // [ var(31) , var(14) ]
     2160                D[15,31] = (-1)*var(33)+(-2)*var(34)+(-2)*var(35)+(-2)*var(36); // [ var(31) , var(15) ]
     2161                D[16,31] = var(1); // [ var(31) , var(16) ]
     2162                D[1,32] = (-1)*var(31); // [ var(32) , var(1) ]
     2163                D[5,32] = (-1)*var(29); // [ var(32) , var(5) ]
     2164                D[8,32] = (-1)*var(27); // [ var(32) , var(8) ]
     2165                D[11,32] = var(24); // [ var(32) , var(11) ]
     2166                D[13,32] = var(21); // [ var(32) , var(13) ]
     2167                D[15,32] = var(17); // [ var(32) , var(15) ]
     2168                D[16,32] = (-1)*var(33)+(-1)*var(34)+(-1)*var(35)+(-1)*var(36); // [ var(32) , var(16) ]
     2169        // X(i) * X(j):
     2170                D[1,2] = var(5); // [ var(2) , var(1) ]
     2171                D[1,6] = var(8); // [ var(6) , var(1) ]
     2172                D[1,9] = var(11); // [ var(9) , var(1) ]
     2173                D[1,12] = var(13); // [ var(12) , var(1) ]
     2174                D[1,14] = var(15); // [ var(14) , var(1) ]
     2175                D[1,15] = (2)*var(16); // [ var(15) , var(1) ]
     2176                D[2,3] = var(6); // [ var(3) , var(2) ]
     2177                D[2,7] = var(9); // [ var(7) , var(2) ]
     2178                D[2,10] = var(12); // [ var(10) , var(2) ]
     2179                D[2,12] = (2)*var(14); // [ var(12) , var(2) ]
     2180                D[2,13] = var(15); // [ var(13) , var(2) ]
     2181                D[3,4] = var(7); // [ var(4) , var(3) ]
     2182                D[3,5] = (-1)*var(8); // [ var(5) , var(3) ]
     2183                D[3,7] = (2)*var(10); // [ var(7) , var(3) ]
     2184                D[3,9] = var(12); // [ var(9) , var(3) ]
     2185                D[3,11] = var(13); // [ var(11) , var(3) ]
     2186                D[4,6] = (-1)*var(9); // [ var(6) , var(4) ]
     2187                D[4,8] = (-1)*var(11); // [ var(8) , var(4) ]
     2188                D[5,7] = var(11); // [ var(7) , var(5) ]
     2189                D[5,10] = var(13); // [ var(10) , var(5) ]
     2190                D[5,12] = var(15); // [ var(12) , var(5) ]
     2191                D[5,13] = (2)*var(16); // [ var(13) , var(5) ]
     2192                D[6,7] = var(12); // [ var(7) , var(6) ]
     2193                D[6,9] = (2)*var(14); // [ var(9) , var(6) ]
     2194                D[6,11] = var(15); // [ var(11) , var(6) ]
     2195                D[7,8] = (-1)*var(13); // [ var(8) , var(7) ]
     2196                D[8,9] = var(15); // [ var(9) , var(8) ]
     2197                D[8,11] = (2)*var(16); // [ var(11) , var(8) ]
     2198        // Y(i) * Y(j):
     2199                D[17,18] = (-1)*var(21); // [ var(18) , var(17) ]
     2200                D[17,22] = (-1)*var(24); // [ var(22) , var(17) ]
     2201                D[17,25] = (-1)*var(27); // [ var(25) , var(17) ]
     2202                D[17,28] = (-1)*var(29); // [ var(28) , var(17) ]
     2203                D[17,30] = (-1)*var(31); // [ var(30) , var(17) ]
     2204                D[17,31] = (-2)*var(32); // [ var(31) , var(17) ]
     2205                D[18,19] = (-1)*var(22); // [ var(19) , var(18) ]
     2206                D[18,23] = (-1)*var(25); // [ var(23) , var(18) ]
     2207                D[18,26] = (-1)*var(28); // [ var(26) , var(18) ]
     2208                D[18,28] = (-2)*var(30); // [ var(28) , var(18) ]
     2209                D[18,29] = (-1)*var(31); // [ var(29) , var(18) ]
     2210                D[19,20] = (-1)*var(23); // [ var(20) , var(19) ]
     2211                D[19,21] = var(24); // [ var(21) , var(19) ]
     2212                D[19,23] = (-2)*var(26); // [ var(23) , var(19) ]
     2213                D[19,25] = (-1)*var(28); // [ var(25) , var(19) ]
     2214                D[19,27] = (-1)*var(29); // [ var(27) , var(19) ]
     2215                D[20,22] = var(25); // [ var(22) , var(20) ]
     2216                D[20,24] = var(27); // [ var(24) , var(20) ]
     2217                D[21,23] = (-1)*var(27); // [ var(23) , var(21) ]
     2218                D[21,26] = (-1)*var(29); // [ var(26) , var(21) ]
     2219                D[21,28] = (-1)*var(31); // [ var(28) , var(21) ]
     2220                D[21,29] = (-2)*var(32); // [ var(29) , var(21) ]
     2221                D[22,23] = (-1)*var(28); // [ var(23) , var(22) ]
     2222                D[22,25] = (-2)*var(30); // [ var(25) , var(22) ]
     2223                D[22,27] = (-1)*var(31); // [ var(27) , var(22) ]
     2224                D[23,24] = var(29); // [ var(24) , var(23) ]
     2225                D[24,25] = (-1)*var(31); // [ var(25) , var(24) ]
     2226                D[24,27] = (-2)*var(32); // [ var(27) , var(24) ]
     2227   ncalgebra(1,D);
     2228   return(@@@rrr);
     2229}
     2230example
     2231{ "EXAMPLE:"; echo = 2;
     2232   def ncAlgebra = makeUsp4();
     2233   setring ncAlgebra;
     2234   ncAlgebra;
     2235}
     2236////////////////////////////////////////////////////////////////////
     2237
     2238// Algebra: sp5(Q) has the type: C5, and defined by:
     2239
     2240proc makeUsp5(list #)
     2241"USAGE:   makeUsp5([p]); p an optional integer (field characteristic)
     2242RETURN:  a ring, describing U(sp_5)
     2243NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(sp_5) is derived from the Chevalley representation of sp_5, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     2244SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     2245EXAMPLE: example makeUsp5; shows examples
     2246"
     2247{
     2248   int @p = defInt(#);
     2249
     2250   ring @@@rrr = @p,(X(1..25),Y(1..25),H(1..5)),dp;
     2251   int N = nvars(@@@rrr);
     2252   matrix D[N][N]=0;
     2253
     2254        // H(i) * X(j):
     2255                D[1,51] = (2)*var(1); // [ var(51) , var(1) ]
     2256                D[2,51] = (-1)*var(2); // [ var(51) , var(2) ]
     2257                D[6,51] = var(6); // [ var(51) , var(6) ]
     2258                D[7,51] = (-1)*var(7); // [ var(51) , var(7) ]
     2259                D[10,51] = var(10); // [ var(51) , var(10) ]
     2260                D[11,51] = (-1)*var(11); // [ var(51) , var(11) ]
     2261                D[14,51] = var(14); // [ var(51) , var(14) ]
     2262                D[15,51] = (-1)*var(15); // [ var(51) , var(15) ]
     2263                D[17,51] = var(17); // [ var(51) , var(17) ]
     2264                D[18,51] = (-1)*var(18); // [ var(51) , var(18) ]
     2265                D[20,51] = var(20); // [ var(51) , var(20) ]
     2266                D[21,51] = (-1)*var(21); // [ var(51) , var(21) ]
     2267                D[22,51] = var(22); // [ var(51) , var(22) ]
     2268                D[23,51] = (-2)*var(23); // [ var(51) , var(23) ]
     2269                D[25,51] = (2)*var(25); // [ var(51) , var(25) ]
     2270                D[1,52] = (-1)*var(1); // [ var(52) , var(1) ]
     2271                D[2,52] = (2)*var(2); // [ var(52) , var(2) ]
     2272                D[3,52] = (-1)*var(3); // [ var(52) , var(3) ]
     2273                D[6,52] = var(6); // [ var(52) , var(6) ]
     2274                D[7,52] = var(7); // [ var(52) , var(7) ]
     2275                D[8,52] = (-1)*var(8); // [ var(52) , var(8) ]
     2276                D[11,52] = var(11); // [ var(52) , var(11) ]
     2277                D[12,52] = (-1)*var(12); // [ var(52) , var(12) ]
     2278                D[15,52] = var(15); // [ var(52) , var(15) ]
     2279                D[16,52] = (-1)*var(16); // [ var(52) , var(16) ]
     2280                D[18,52] = var(18); // [ var(52) , var(18) ]
     2281                D[19,52] = (-2)*var(19); // [ var(52) , var(19) ]
     2282                D[22,52] = (-1)*var(22); // [ var(52) , var(22) ]
     2283                D[23,52] = (2)*var(23); // [ var(52) , var(23) ]
     2284                D[24,52] = var(24); // [ var(52) , var(24) ]
     2285                D[2,53] = (-1)*var(2); // [ var(53) , var(2) ]
     2286                D[3,53] = (2)*var(3); // [ var(53) , var(3) ]
     2287                D[4,53] = (-1)*var(4); // [ var(53) , var(4) ]
     2288                D[6,53] = (-1)*var(6); // [ var(53) , var(6) ]
     2289                D[7,53] = var(7); // [ var(53) , var(7) ]
     2290                D[8,53] = var(8); // [ var(53) , var(8) ]
     2291                D[9,53] = (-1)*var(9); // [ var(53) , var(9) ]
     2292                D[10,53] = var(10); // [ var(53) , var(10) ]
     2293                D[12,53] = var(12); // [ var(53) , var(12) ]
     2294                D[13,53] = (-2)*var(13); // [ var(53) , var(13) ]
     2295                D[18,53] = (-1)*var(18); // [ var(53) , var(18) ]
     2296                D[19,53] = (2)*var(19); // [ var(53) , var(19) ]
     2297                D[20,53] = (-1)*var(20); // [ var(53) , var(20) ]
     2298                D[21,53] = var(21); // [ var(53) , var(21) ]
     2299                D[22,53] = var(22); // [ var(53) , var(22) ]
     2300                D[3,54] = (-1)*var(3); // [ var(54) , var(3) ]
     2301                D[4,54] = (2)*var(4); // [ var(54) , var(4) ]
     2302                D[5,54] = (-2)*var(5); // [ var(54) , var(5) ]
     2303                D[7,54] = (-1)*var(7); // [ var(54) , var(7) ]
     2304                D[8,54] = var(8); // [ var(54) , var(8) ]
     2305                D[10,54] = (-1)*var(10); // [ var(54) , var(10) ]
     2306                D[11,54] = var(11); // [ var(54) , var(11) ]
     2307                D[12,54] = (-1)*var(12); // [ var(54) , var(12) ]
     2308                D[13,54] = (2)*var(13); // [ var(54) , var(13) ]
     2309                D[14,54] = var(14); // [ var(54) , var(14) ]
     2310                D[15,54] = (-1)*var(15); // [ var(54) , var(15) ]
     2311                D[16,54] = var(16); // [ var(54) , var(16) ]
     2312                D[17,54] = (-1)*var(17); // [ var(54) , var(17) ]
     2313                D[18,54] = var(18); // [ var(54) , var(18) ]
     2314                D[20,54] = var(20); // [ var(54) , var(20) ]
     2315                D[4,55] = (-1)*var(4); // [ var(55) , var(4) ]
     2316                D[5,55] = (2)*var(5); // [ var(55) , var(5) ]
     2317                D[8,55] = (-1)*var(8); // [ var(55) , var(8) ]
     2318                D[9,55] = var(9); // [ var(55) , var(9) ]
     2319                D[11,55] = (-1)*var(11); // [ var(55) , var(11) ]
     2320                D[12,55] = var(12); // [ var(55) , var(12) ]
     2321                D[14,55] = (-1)*var(14); // [ var(55) , var(14) ]
     2322                D[15,55] = var(15); // [ var(55) , var(15) ]
     2323                D[17,55] = var(17); // [ var(55) , var(17) ]
     2324        // H(i) * Y(j):
     2325                D[26,51] = (-2)*var(26); // [ var(51) , var(26) ]
     2326                D[27,51] = var(27); // [ var(51) , var(27) ]
     2327                D[31,51] = (-1)*var(31); // [ var(51) , var(31) ]
     2328                D[32,51] = var(32); // [ var(51) , var(32) ]
     2329                D[35,51] = (-1)*var(35); // [ var(51) , var(35) ]
     2330                D[36,51] = var(36); // [ var(51) , var(36) ]
     2331                D[39,51] = (-1)*var(39); // [ var(51) , var(39) ]
     2332                D[40,51] = var(40); // [ var(51) , var(40) ]
     2333                D[42,51] = (-1)*var(42); // [ var(51) , var(42) ]
     2334                D[43,51] = var(43); // [ var(51) , var(43) ]
     2335                D[45,51] = (-1)*var(45); // [ var(51) , var(45) ]
     2336                D[46,51] = var(46); // [ var(51) , var(46) ]
     2337                D[47,51] = (-1)*var(47); // [ var(51) , var(47) ]
     2338                D[48,51] = (2)*var(48); // [ var(51) , var(48) ]
     2339                D[50,51] = (-2)*var(50); // [ var(51) , var(50) ]
     2340                D[26,52] = var(26); // [ var(52) , var(26) ]
     2341                D[27,52] = (-2)*var(27); // [ var(52) , var(27) ]
     2342                D[28,52] = var(28); // [ var(52) , var(28) ]
     2343                D[31,52] = (-1)*var(31); // [ var(52) , var(31) ]
     2344                D[32,52] = (-1)*var(32); // [ var(52) , var(32) ]
     2345                D[33,52] = var(33); // [ var(52) , var(33) ]
     2346                D[36,52] = (-1)*var(36); // [ var(52) , var(36) ]
     2347                D[37,52] = var(37); // [ var(52) , var(37) ]
     2348                D[40,52] = (-1)*var(40); // [ var(52) , var(40) ]
     2349                D[41,52] = var(41); // [ var(52) , var(41) ]
     2350                D[43,52] = (-1)*var(43); // [ var(52) , var(43) ]
     2351                D[44,52] = (2)*var(44); // [ var(52) , var(44) ]
     2352                D[47,52] = var(47); // [ var(52) , var(47) ]
     2353                D[48,52] = (-2)*var(48); // [ var(52) , var(48) ]
     2354                D[49,52] = (-1)*var(49); // [ var(52) , var(49) ]
     2355                D[27,53] = var(27); // [ var(53) , var(27) ]
     2356                D[28,53] = (-2)*var(28); // [ var(53) , var(28) ]
     2357                D[29,53] = var(29); // [ var(53) , var(29) ]
     2358                D[31,53] = var(31); // [ var(53) , var(31) ]
     2359                D[32,53] = (-1)*var(32); // [ var(53) , var(32) ]
     2360                D[33,53] = (-1)*var(33); // [ var(53) , var(33) ]
     2361                D[34,53] = var(34); // [ var(53) , var(34) ]
     2362                D[35,53] = (-1)*var(35); // [ var(53) , var(35) ]
     2363                D[37,53] = (-1)*var(37); // [ var(53) , var(37) ]
     2364                D[38,53] = (2)*var(38); // [ var(53) , var(38) ]
     2365                D[43,53] = var(43); // [ var(53) , var(43) ]
     2366                D[44,53] = (-2)*var(44); // [ var(53) , var(44) ]
     2367                D[45,53] = var(45); // [ var(53) , var(45) ]
     2368                D[46,53] = (-1)*var(46); // [ var(53) , var(46) ]
     2369                D[47,53] = (-1)*var(47); // [ var(53) , var(47) ]
     2370                D[28,54] = var(28); // [ var(54) , var(28) ]
     2371                D[29,54] = (-2)*var(29); // [ var(54) , var(29) ]
     2372                D[30,54] = (2)*var(30); // [ var(54) , var(30) ]
     2373                D[32,54] = var(32); // [ var(54) , var(32) ]
     2374                D[33,54] = (-1)*var(33); // [ var(54) , var(33) ]
     2375                D[35,54] = var(35); // [ var(54) , var(35) ]
     2376                D[36,54] = (-1)*var(36); // [ var(54) , var(36) ]
     2377                D[37,54] = var(37); // [ var(54) , var(37) ]
     2378                D[38,54] = (-2)*var(38); // [ var(54) , var(38) ]
     2379                D[39,54] = (-1)*var(39); // [ var(54) , var(39) ]
     2380                D[40,54] = var(40); // [ var(54) , var(40) ]
     2381                D[41,54] = (-1)*var(41); // [ var(54) , var(41) ]
     2382                D[42,54] = var(42); // [ var(54) , var(42) ]
     2383                D[43,54] = (-1)*var(43); // [ var(54) , var(43) ]
     2384                D[45,54] = (-1)*var(45); // [ var(54) , var(45) ]
     2385                D[29,55] = var(29); // [ var(55) , var(29) ]
     2386                D[30,55] = (-2)*var(30); // [ var(55) , var(30) ]
     2387                D[33,55] = var(33); // [ var(55) , var(33) ]
     2388                D[34,55] = (-1)*var(34); // [ var(55) , var(34) ]
     2389                D[36,55] = var(36); // [ var(55) , var(36) ]
     2390                D[37,55] = (-1)*var(37); // [ var(55) , var(37) ]
     2391                D[39,55] = var(39); // [ var(55) , var(39) ]
     2392                D[40,55] = (-1)*var(40); // [ var(55) , var(40) ]
     2393                D[42,55] = (-1)*var(42); // [ var(55) , var(42) ]
     2394        // Y(i) * X(j):
     2395                D[1,26] = (-1)*var(51); // [ var(26) , var(1) ]
     2396                D[6,26] = (-1)*var(2); // [ var(26) , var(6) ]
     2397                D[10,26] = (-1)*var(7); // [ var(26) , var(10) ]
     2398                D[14,26] = (-1)*var(11); // [ var(26) , var(14) ]
     2399                D[17,26] = (-1)*var(15); // [ var(26) , var(17) ]
     2400                D[20,26] = (-1)*var(18); // [ var(26) , var(20) ]
     2401                D[22,26] = (-1)*var(21); // [ var(26) , var(22) ]
     2402                D[24,26] = (-2)*var(23); // [ var(26) , var(24) ]
     2403                D[25,26] = (-1)*var(24); // [ var(26) , var(25) ]
     2404                D[2,27] = (-1)*var(52); // [ var(27) , var(2) ]
     2405                D[6,27] = var(1); // [ var(27) , var(6) ]
     2406                D[7,27] = (-1)*var(3); // [ var(27) , var(7) ]
     2407                D[11,27] = (-1)*var(8); // [ var(27) , var(11) ]
     2408                D[15,27] = (-1)*var(12); // [ var(27) , var(15) ]
     2409                D[18,27] = (-1)*var(16); // [ var(27) , var(18) ]
     2410                D[21,27] = (-2)*var(19); // [ var(27) , var(21) ]
     2411                D[23,27] = (-1)*var(21); // [ var(27) , var(23) ]
     2412                D[24,27] = (-1)*var(22); // [ var(27) , var(24) ]
     2413                D[3,28] = (-1)*var(53); // [ var(28) , var(3) ]
     2414                D[7,28] = var(2); // [ var(28) , var(7) ]
     2415                D[8,28] = (-1)*var(4); // [ var(28) , var(8) ]
     2416                D[10,28] = var(6); // [ var(28) , var(10) ]
     2417                D[12,28] = (-1)*var(9); // [ var(28) , var(12) ]
     2418                D[16,28] = (-2)*var(13); // [ var(28) , var(16) ]
     2419                D[19,28] = (-1)*var(16); // [ var(28) , var(19) ]
     2420                D[21,28] = (-1)*var(18); // [ var(28) , var(21) ]
     2421                D[22,28] = (-1)*var(20); // [ var(28) , var(22) ]
     2422                D[4,29] = (-1)*var(54); // [ var(29) , var(4) ]
     2423                D[8,29] = var(3); // [ var(29) , var(8) ]
     2424                D[9,29] = (-2)*var(5); // [ var(29) , var(9) ]
     2425                D[11,29] = var(7); // [ var(29) , var(11) ]
     2426                D[13,29] = (-1)*var(9); // [ var(29) , var(13) ]
     2427                D[14,29] = var(10); // [ var(29) , var(14) ]
     2428                D[16,29] = (-1)*var(12); // [ var(29) , var(16) ]
     2429                D[18,29] = (-1)*var(15); // [ var(29) , var(18) ]
     2430                D[20,29] = (-1)*var(17); // [ var(29) , var(20) ]
     2431                D[5,30] = (-1)*var(55); // [ var(30) , var(5) ]
     2432                D[9,30] = var(4); // [ var(30) , var(9) ]
     2433                D[12,30] = var(8); // [ var(30) , var(12) ]
     2434                D[15,30] = var(11); // [ var(30) , var(15) ]
     2435                D[17,30] = var(14); // [ var(30) , var(17) ]
     2436                D[1,31] = (-1)*var(27); // [ var(31) , var(1) ]
     2437                D[2,31] = var(26); // [ var(31) , var(2) ]
     2438                D[6,31] = (-1)*var(51)+(-1)*var(52); // [ var(31) , var(6) ]
     2439                D[10,31] = (-1)*var(3); // [ var(31) , var(10) ]
     2440                D[14,31] = (-1)*var(8); // [ var(31) , var(14) ]
     2441                D[17,31] = (-1)*var(12); // [ var(31) , var(17) ]
     2442                D[20,31] = (-1)*var(16); // [ var(31) , var(20) ]
     2443                D[22,31] = (-2)*var(19); // [ var(31) , var(22) ]
     2444                D[24,31] = (-1)*var(21); // [ var(31) , var(24) ]
     2445                D[25,31] = (-1)*var(22); // [ var(31) , var(25) ]
     2446                D[2,32] = (-1)*var(28); // [ var(32) , var(2) ]
     2447                D[3,32] = var(27); // [ var(32) , var(3) ]
     2448                D[7,32] = (-1)*var(52)+(-1)*var(53); // [ var(32) , var(7) ]
     2449                D[10,32] = var(1); // [ var(32) , var(10) ]
     2450                D[11,32] = (-1)*var(4); // [ var(32) , var(11) ]
     2451                D[15,32] = (-1)*var(9); // [ var(32) , var(15) ]
     2452                D[18,32] = (-2)*var(13); // [ var(32) , var(18) ]
     2453                D[21,32] = (-1)*var(16); // [ var(32) , var(21) ]
     2454                D[23,32] = (-1)*var(18); // [ var(32) , var(23) ]
     2455                D[24,32] = (-1)*var(20); // [ var(32) , var(24) ]
     2456                D[3,33] = (-1)*var(29); // [ var(33) , var(3) ]
     2457                D[4,33] = var(28); // [ var(33) , var(4) ]
     2458                D[8,33] = (-1)*var(53)+(-1)*var(54); // [ var(33) , var(8) ]
     2459                D[11,33] = var(2); // [ var(33) , var(11) ]
     2460                D[12,33] = (-2)*var(5); // [ var(33) , var(12) ]
     2461                D[14,33] = var(6); // [ var(33) , var(14) ]
     2462                D[16,33] = (-1)*var(9); // [ var(33) , var(16) ]
     2463                D[19,33] = (-1)*var(12); // [ var(33) , var(19) ]
     2464                D[21,33] = (-1)*var(15); // [ var(33) , var(21) ]
     2465                D[22,33] = (-1)*var(17); // [ var(33) , var(22) ]
     2466                D[4,34] = (-2)*var(30); // [ var(34) , var(4) ]
     2467                D[5,34] = var(29); // [ var(34) , var(5) ]
     2468                D[9,34] = (-1)*var(54)+(-2)*var(55); // [ var(34) , var(9) ]
     2469                D[12,34] = var(3); // [ var(34) , var(12) ]
     2470                D[13,34] = var(4); // [ var(34) , var(13) ]
     2471                D[15,34] = var(7); // [ var(34) , var(15) ]
     2472                D[16,34] = var(8); // [ var(34) , var(16) ]
     2473                D[17,34] = var(10); // [ var(34) , var(17) ]
     2474                D[18,34] = var(11); // [ var(34) , var(18) ]
     2475                D[20,34] = var(14); // [ var(34) , var(20) ]
     2476                D[1,35] = (-1)*var(32); // [ var(35) , var(1) ]
     2477                D[3,35] = var(31); // [ var(35) , var(3) ]
     2478                D[6,35] = (-1)*var(28); // [ var(35) , var(6) ]
     2479                D[7,35] = var(26); // [ var(35) , var(7) ]
     2480                D[10,35] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53); // [ var(35) , var(10) ]
     2481                D[14,35] = (-1)*var(4); // [ var(35) , var(14) ]
     2482                D[17,35] = (-1)*var(9); // [ var(35) , var(17) ]
     2483                D[20,35] = (-2)*var(13); // [ var(35) , var(20) ]
     2484                D[22,35] = (-1)*var(16); // [ var(35) , var(22) ]
     2485                D[24,35] = (-1)*var(18); // [ var(35) , var(24) ]
     2486                D[25,35] = (-1)*var(20); // [ var(35) , var(25) ]
     2487                D[2,36] = (-1)*var(33); // [ var(36) , var(2) ]
     2488                D[4,36] = var(32); // [ var(36) , var(4) ]
     2489                D[7,36] = (-1)*var(29); // [ var(36) , var(7) ]
     2490                D[8,36] = var(27); // [ var(36) , var(8) ]
     2491                D[11,36] = (-1)*var(52)+(-1)*var(53)+(-1)*var(54); // [ var(36) , var(11) ]
     2492                D[14,36] = var(1); // [ var(36) , var(14) ]
     2493                D[15,36] = (-2)*var(5); // [ var(36) , var(15) ]
     2494                D[18,36] = (-1)*var(9); // [ var(36) , var(18) ]
     2495                D[21,36] = (-1)*var(12); // [ var(36) , var(21) ]
     2496                D[23,36] = (-1)*var(15); // [ var(36) , var(23) ]
     2497                D[24,36] = (-1)*var(17); // [ var(36) , var(24) ]
     2498                D[3,37] = (-1)*var(34); // [ var(37) , var(3) ]
     2499                D[5,37] = var(33); // [ var(37) , var(5) ]
     2500                D[8,37] = (-2)*var(30); // [ var(37) , var(8) ]
     2501                D[9,37] = var(28); // [ var(37) , var(9) ]
     2502                D[12,37] = (-1)*var(53)+(-1)*var(54)+(-2)*var(55); // [ var(37) , var(12) ]
     2503                D[15,37] = var(2); // [ var(37) , var(15) ]
     2504                D[16,37] = var(4); // [ var(37) , var(16) ]
     2505                D[17,37] = var(6); // [ var(37) , var(17) ]
     2506                D[19,37] = var(8); // [ var(37) , var(19) ]
     2507                D[21,37] = var(11); // [ var(37) , var(21) ]
     2508                D[22,37] = var(14); // [ var(37) , var(22) ]
     2509                D[4,38] = (-1)*var(34); // [ var(38) , var(4) ]
     2510                D[9,38] = var(29); // [ var(38) , var(9) ]
     2511                D[13,38] = (-1)*var(54)+(-1)*var(55); // [ var(38) , var(13) ]
     2512                D[16,38] = var(3); // [ var(38) , var(16) ]
     2513                D[18,38] = var(7); // [ var(38) , var(18) ]
     2514                D[20,38] = var(10); // [ var(38) , var(20) ]
     2515                D[1,39] = (-1)*var(36); // [ var(39) , var(1) ]
     2516                D[4,39] = var(35); // [ var(39) , var(4) ]
     2517                D[6,39] = (-1)*var(33); // [ var(39) , var(6) ]
     2518                D[8,39] = var(31); // [ var(39) , var(8) ]
     2519                D[10,39] = (-1)*var(29); // [ var(39) , var(10) ]
     2520                D[11,39] = var(26); // [ var(39) , var(11) ]
     2521                D[14,39] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-1)*var(54); // [ var(39) , var(14) ]
     2522                D[17,39] = (-2)*var(5); // [ var(39) , var(17) ]
     2523                D[20,39] = (-1)*var(9); // [ var(39) , var(20) ]
     2524                D[22,39] = (-1)*var(12); // [ var(39) , var(22) ]
     2525                D[24,39] = (-1)*var(15); // [ var(39) , var(24) ]
     2526                D[25,39] = (-1)*var(17); // [ var(39) , var(25) ]
     2527                D[2,40] = (-1)*var(37); // [ var(40) , var(2) ]
     2528                D[5,40] = var(36); // [ var(40) , var(5) ]
     2529                D[7,40] = (-1)*var(34); // [ var(40) , var(7) ]
     2530                D[9,40] = var(32); // [ var(40) , var(9) ]
     2531                D[11,40] = (-2)*var(30); // [ var(40) , var(11) ]
     2532                D[12,40] = var(27); // [ var(40) , var(12) ]
     2533                D[15,40] = (-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-2)*var(55); // [ var(40) , var(15) ]
     2534                D[17,40] = var(1); // [ var(40) , var(17) ]
     2535                D[18,40] = var(4); // [ var(40) , var(18) ]
     2536                D[21,40] = var(8); // [ var(40) , var(21) ]
     2537                D[23,40] = var(11); // [ var(40) , var(23) ]
     2538                D[24,40] = var(14); // [ var(40) , var(24) ]
     2539                D[3,41] = (-2)*var(38); // [ var(41) , var(3) ]
     2540                D[4,41] = (-1)*var(37); // [ var(41) , var(4) ]
     2541                D[8,41] = (-1)*var(34); // [ var(41) , var(8) ]
     2542                D[9,41] = var(33); // [ var(41) , var(9) ]
     2543                D[12,41] = var(29); // [ var(41) , var(12) ]
     2544                D[13,41] = var(28); // [ var(41) , var(13) ]
     2545                D[16,41] = (-1)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(41) , var(16) ]
     2546                D[18,41] = var(2); // [ var(41) , var(18) ]
     2547                D[19,41] = var(3); // [ var(41) , var(19) ]
     2548                D[20,41] = var(6); // [ var(41) , var(20) ]
     2549                D[21,41] = var(7); // [ var(41) , var(21) ]
     2550                D[22,41] = var(10); // [ var(41) , var(22) ]
     2551                D[1,42] = (-1)*var(40); // [ var(42) , var(1) ]
     2552                D[5,42] = var(39); // [ var(42) , var(5) ]
     2553                D[6,42] = (-1)*var(37); // [ var(42) , var(6) ]
     2554                D[9,42] = var(35); // [ var(42) , var(9) ]
     2555                D[10,42] = (-1)*var(34); // [ var(42) , var(10) ]
     2556                D[12,42] = var(31); // [ var(42) , var(12) ]
     2557                D[14,42] = (-2)*var(30); // [ var(42) , var(14) ]
     2558                D[15,42] = var(26); // [ var(42) , var(15) ]
     2559                D[17,42] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-2)*var(55); // [ var(42) , var(17) ]
     2560                D[20,42] = var(4); // [ var(42) , var(20) ]
     2561                D[22,42] = var(8); // [ var(42) , var(22) ]
     2562                D[24,42] = var(11); // [ var(42) , var(24) ]
     2563                D[25,42] = var(14); // [ var(42) , var(25) ]
     2564                D[2,43] = (-1)*var(41); // [ var(43) , var(2) ]
     2565                D[4,43] = (-1)*var(40); // [ var(43) , var(4) ]
     2566                D[7,43] = (-2)*var(38); // [ var(43) , var(7) ]
     2567                D[9,43] = var(36); // [ var(43) , var(9) ]
     2568                D[11,43] = (-1)*var(34); // [ var(43) , var(11) ]
     2569                D[13,43] = var(32); // [ var(43) , var(13) ]
     2570                D[15,43] = var(29); // [ var(43) , var(15) ]
     2571                D[16,43] = var(27); // [ var(43) , var(16) ]
     2572                D[18,43] = (-1)*var(52)+(-1)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(43) , var(18) ]
     2573                D[20,43] = var(1); // [ var(43) , var(20) ]
     2574                D[21,43] = var(3); // [ var(43) , var(21) ]
     2575                D[23,43] = var(7); // [ var(43) , var(23) ]
     2576                D[24,43] = var(10); // [ var(43) , var(24) ]
     2577                D[3,44] = (-1)*var(41); // [ var(44) , var(3) ]
     2578                D[8,44] = (-1)*var(37); // [ var(44) , var(8) ]
     2579                D[12,44] = var(33); // [ var(44) , var(12) ]
     2580                D[16,44] = var(28); // [ var(44) , var(16) ]
     2581                D[19,44] = (-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(44) , var(19) ]
     2582                D[21,44] = var(2); // [ var(44) , var(21) ]
     2583                D[22,44] = var(6); // [ var(44) , var(22) ]
     2584                D[1,45] = (-1)*var(43); // [ var(45) , var(1) ]
     2585                D[4,45] = (-1)*var(42); // [ var(45) , var(4) ]
     2586                D[6,45] = (-1)*var(41); // [ var(45) , var(6) ]
     2587                D[9,45] = var(39); // [ var(45) , var(9) ]
     2588                D[10,45] = (-2)*var(38); // [ var(45) , var(10) ]
     2589                D[13,45] = var(35); // [ var(45) , var(13) ]
     2590                D[14,45] = (-1)*var(34); // [ var(45) , var(14) ]
     2591                D[16,45] = var(31); // [ var(45) , var(16) ]
     2592                D[17,45] = var(29); // [ var(45) , var(17) ]
     2593                D[18,45] = var(26); // [ var(45) , var(18) ]
     2594                D[20,45] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(45) , var(20) ]
     2595                D[22,45] = var(3); // [ var(45) , var(22) ]
     2596                D[24,45] = var(7); // [ var(45) , var(24) ]
     2597                D[25,45] = var(10); // [ var(45) , var(25) ]
     2598                D[2,46] = (-2)*var(44); // [ var(46) , var(2) ]
     2599                D[3,46] = (-1)*var(43); // [ var(46) , var(3) ]
     2600                D[7,46] = (-1)*var(41); // [ var(46) , var(7) ]
     2601                D[8,46] = (-1)*var(40); // [ var(46) , var(8) ]
     2602                D[11,46] = (-1)*var(37); // [ var(46) , var(11) ]
     2603                D[12,46] = var(36); // [ var(46) , var(12) ]
     2604                D[15,46] = var(33); // [ var(46) , var(15) ]
     2605                D[16,46] = var(32); // [ var(46) , var(16) ]
     2606                D[18,46] = var(28); // [ var(46) , var(18) ]
     2607                D[19,46] = var(27); // [ var(46) , var(19) ]
     2608                D[21,46] = (-1)*var(52)+(-2)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(46) , var(21) ]
     2609                D[22,46] = var(1); // [ var(46) , var(22) ]
     2610                D[23,46] = var(2); // [ var(46) , var(23) ]
     2611                D[24,46] = var(6); // [ var(46) , var(24) ]
     2612                D[1,47] = (-1)*var(46); // [ var(47) , var(1) ]
     2613                D[3,47] = (-1)*var(45); // [ var(47) , var(3) ]
     2614                D[6,47] = (-2)*var(44); // [ var(47) , var(6) ]
     2615                D[8,47] = (-1)*var(42); // [ var(47) , var(8) ]
     2616                D[10,47] = (-1)*var(41); // [ var(47) , var(10) ]
     2617                D[12,47] = var(39); // [ var(47) , var(12) ]
     2618                D[14,47] = (-1)*var(37); // [ var(47) , var(14) ]
     2619                D[16,47] = var(35); // [ var(47) , var(16) ]
     2620                D[17,47] = var(33); // [ var(47) , var(17) ]
     2621                D[19,47] = var(31); // [ var(47) , var(19) ]
     2622                D[20,47] = var(28); // [ var(47) , var(20) ]
     2623                D[21,47] = var(26); // [ var(47) , var(21) ]
     2624                D[22,47] = (-1)*var(51)+(-1)*var(52)+(-2)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(47) , var(22) ]
     2625                D[24,47] = var(2); // [ var(47) , var(24) ]
     2626                D[25,47] = var(6); // [ var(47) , var(25) ]
     2627                D[2,48] = (-1)*var(46); // [ var(48) , var(2) ]
     2628                D[7,48] = (-1)*var(43); // [ var(48) , var(7) ]
     2629                D[11,48] = (-1)*var(40); // [ var(48) , var(11) ]
     2630                D[15,48] = var(36); // [ var(48) , var(15) ]
     2631                D[18,48] = var(32); // [ var(48) , var(18) ]
     2632                D[21,48] = var(27); // [ var(48) , var(21) ]
     2633                D[23,48] = (-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(48) , var(23) ]
     2634                D[24,48] = var(1); // [ var(48) , var(24) ]
     2635                D[1,49] = (-2)*var(48); // [ var(49) , var(1) ]
     2636                D[2,49] = (-1)*var(47); // [ var(49) , var(2) ]
     2637                D[6,49] = (-1)*var(46); // [ var(49) , var(6) ]
     2638                D[7,49] = (-1)*var(45); // [ var(49) , var(7) ]
     2639                D[10,49] = (-1)*var(43); // [ var(49) , var(10) ]
     2640                D[11,49] = (-1)*var(42); // [ var(49) , var(11) ]
     2641                D[14,49] = (-1)*var(40); // [ var(49) , var(14) ]
     2642                D[15,49] = var(39); // [ var(49) , var(15) ]
     2643                D[17,49] = var(36); // [ var(49) , var(17) ]
     2644                D[18,49] = var(35); // [ var(49) , var(18) ]
     2645                D[20,49] = var(32); // [ var(49) , var(20) ]
     2646                D[21,49] = var(31); // [ var(49) , var(21) ]
     2647                D[22,49] = var(27); // [ var(49) , var(22) ]
     2648                D[23,49] = var(26); // [ var(49) , var(23) ]
     2649                D[24,49] = (-1)*var(51)+(-2)*var(52)+(-2)*var(53)+(-2)*var(54)+(-2)*var(55); // [ var(49) , var(24) ]
     2650                D[25,49] = var(1); // [ var(49) , var(25) ]
     2651                D[1,50] = (-1)*var(49); // [ var(50) , var(1) ]
     2652                D[6,50] = (-1)*var(47); // [ var(50) , var(6) ]
     2653                D[10,50] = (-1)*var(45); // [ var(50) , var(10) ]
     2654                D[14,50] = (-1)*var(42); // [ var(50) , var(14) ]
     2655                D[17,50] = var(39); // [ var(50) , var(17) ]
     2656                D[20,50] = var(35); // [ var(50) , var(20) ]
     2657                D[22,50] = var(31); // [ var(50) , var(22) ]
     2658                D[24,50] = var(26); // [ var(50) , var(24) ]
     2659                D[25,50] = (-1)*var(51)+(-1)*var(52)+(-1)*var(53)+(-1)*var(54)+(-1)*var(55); // [ var(50) , var(25) ]
     2660        // X(i) * X(j):
     2661                D[1,2] = var(6); // [ var(2) , var(1) ]
     2662                D[1,7] = var(10); // [ var(7) , var(1) ]
     2663                D[1,11] = var(14); // [ var(11) , var(1) ]
     2664                D[1,15] = var(17); // [ var(15) , var(1) ]
     2665                D[1,18] = var(20); // [ var(18) , var(1) ]
     2666                D[1,21] = var(22); // [ var(21) , var(1) ]
     2667                D[1,23] = var(24); // [ var(23) , var(1) ]
     2668                D[1,24] = (2)*var(25); // [ var(24) , var(1) ]
     2669                D[2,3] = var(7); // [ var(3) , var(2) ]
     2670                D[2,8] = var(11); // [ var(8) , var(2) ]
     2671                D[2,12] = var(15); // [ var(12) , var(2) ]
     2672                D[2,16] = var(18); // [ var(16) , var(2) ]
     2673                D[2,19] = var(21); // [ var(19) , var(2) ]
     2674                D[2,21] = (2)*var(23); // [ var(21) , var(2) ]
     2675                D[2,22] = var(24); // [ var(22) , var(2) ]
     2676                D[3,4] = var(8); // [ var(4) , var(3) ]
     2677                D[3,6] = (-1)*var(10); // [ var(6) , var(3) ]
     2678                D[3,9] = var(12); // [ var(9) , var(3) ]
     2679                D[3,13] = var(16); // [ var(13) , var(3) ]
     2680                D[3,16] = (2)*var(19); // [ var(16) , var(3) ]
     2681                D[3,18] = var(21); // [ var(18) , var(3) ]
     2682                D[3,20] = var(22); // [ var(20) , var(3) ]
     2683                D[4,5] = var(9); // [ var(5) , var(4) ]
     2684                D[4,7] = (-1)*var(11); // [ var(7) , var(4) ]
     2685                D[4,9] = (2)*var(13); // [ var(9) , var(4) ]
     2686                D[4,10] = (-1)*var(14); // [ var(10) , var(4) ]
     2687                D[4,12] = var(16); // [ var(12) , var(4) ]
     2688                D[4,15] = var(18); // [ var(15) , var(4) ]
     2689                D[4,17] = var(20); // [ var(17) , var(4) ]
     2690                D[5,8] = (-1)*var(12); // [ var(8) , var(5) ]
     2691                D[5,11] = (-1)*var(15); // [ var(11) , var(5) ]
     2692                D[5,14] = (-1)*var(17); // [ var(14) , var(5) ]
     2693                D[6,8] = var(14); // [ var(8) , var(6) ]
     2694                D[6,12] = var(17); // [ var(12) , var(6) ]
     2695                D[6,16] = var(20); // [ var(16) , var(6) ]
     2696                D[6,19] = var(22); // [ var(19) , var(6) ]
     2697                D[6,21] = var(24); // [ var(21) , var(6) ]
     2698                D[6,22] = (2)*var(25); // [ var(22) , var(6) ]
     2699                D[7,9] = var(15); // [ var(9) , var(7) ]
     2700                D[7,13] = var(18); // [ var(13) , var(7) ]
     2701                D[7,16] = var(21); // [ var(16) , var(7) ]
     2702                D[7,18] = (2)*var(23); // [ var(18) , var(7) ]
     2703                D[7,20] = var(24); // [ var(20) , var(7) ]
     2704                D[8,9] = var(16); // [ var(9) , var(8) ]
     2705                D[8,12] = (2)*var(19); // [ var(12) , var(8) ]
     2706                D[8,15] = var(21); // [ var(15) , var(8) ]
     2707                D[8,17] = var(22); // [ var(17) , var(8) ]
     2708                D[9,10] = (-1)*var(17); // [ var(10) , var(9) ]
     2709                D[9,11] = (-1)*var(18); // [ var(11) , var(9) ]
     2710                D[9,14] = (-1)*var(20); // [ var(14) , var(9) ]
     2711                D[10,13] = var(20); // [ var(13) , var(10) ]
     2712                D[10,16] = var(22); // [ var(16) , var(10) ]
     2713                D[10,18] = var(24); // [ var(18) , var(10) ]
     2714                D[10,20] = (2)*var(25); // [ var(20) , var(10) ]
     2715                D[11,12] = var(21); // [ var(12) , var(11) ]
     2716                D[11,15] = (2)*var(23); // [ var(15) , var(11) ]
     2717                D[11,17] = var(24); // [ var(17) , var(11) ]
     2718                D[12,14] = (-1)*var(22); // [ var(14) , var(12) ]
     2719                D[14,15] = var(24); // [ var(15) , var(14) ]
     2720                D[14,17] = (2)*var(25); // [ var(17) , var(14) ]
     2721        // Y(i) * Y(j):
     2722                D[26,27] = (-1)*var(31); // [ var(27) , var(26) ]
     2723                D[26,32] = (-1)*var(35); // [ var(32) , var(26) ]
     2724                D[26,36] = (-1)*var(39); // [ var(36) , var(26) ]
     2725                D[26,40] = (-1)*var(42); // [ var(40) , var(26) ]
     2726                D[26,43] = (-1)*var(45); // [ var(43) , var(26) ]
     2727                D[26,46] = (-1)*var(47); // [ var(46) , var(26) ]
     2728                D[26,48] = (-1)*var(49); // [ var(48) , var(26) ]
     2729                D[26,49] = (-2)*var(50); // [ var(49) , var(26) ]
     2730                D[27,28] = (-1)*var(32); // [ var(28) , var(27) ]
     2731                D[27,33] = (-1)*var(36); // [ var(33) , var(27) ]
     2732                D[27,37] = (-1)*var(40); // [ var(37) , var(27) ]
     2733                D[27,41] = (-1)*var(43); // [ var(41) , var(27) ]
     2734                D[27,44] = (-1)*var(46); // [ var(44) , var(27) ]
     2735                D[27,46] = (-2)*var(48); // [ var(46) , var(27) ]
     2736                D[27,47] = (-1)*var(49); // [ var(47) , var(27) ]
     2737                D[28,29] = (-1)*var(33); // [ var(29) , var(28) ]
     2738                D[28,31] = var(35); // [ var(31) , var(28) ]
     2739                D[28,34] = (-1)*var(37); // [ var(34) , var(28) ]
     2740                D[28,38] = (-1)*var(41); // [ var(38) , var(28) ]
     2741                D[28,41] = (-2)*var(44); // [ var(41) , var(28) ]
     2742                D[28,43] = (-1)*var(46); // [ var(43) , var(28) ]
     2743                D[28,45] = (-1)*var(47); // [ var(45) , var(28) ]
     2744                D[29,30] = (-1)*var(34); // [ var(30) , var(29) ]
     2745                D[29,32] = var(36); // [ var(32) , var(29) ]
     2746                D[29,34] = (-2)*var(38); // [ var(34) , var(29) ]
     2747                D[29,35] = var(39); // [ var(35) , var(29) ]
     2748                D[29,37] = (-1)*var(41); // [ var(37) , var(29) ]
     2749                D[29,40] = (-1)*var(43); // [ var(40) , var(29) ]
     2750                D[29,42] = (-1)*var(45); // [ var(42) , var(29) ]
     2751                D[30,33] = var(37); // [ var(33) , var(30) ]
     2752                D[30,36] = var(40); // [ var(36) , var(30) ]
     2753                D[30,39] = var(42); // [ var(39) , var(30) ]
     2754                D[31,33] = (-1)*var(39); // [ var(33) , var(31) ]
     2755                D[31,37] = (-1)*var(42); // [ var(37) , var(31) ]
     2756                D[31,41] = (-1)*var(45); // [ var(41) , var(31) ]
     2757                D[31,44] = (-1)*var(47); // [ var(44) , var(31) ]
     2758                D[31,46] = (-1)*var(49); // [ var(46) , var(31) ]
     2759                D[31,47] = (-2)*var(50); // [ var(47) , var(31) ]
     2760                D[32,34] = (-1)*var(40); // [ var(34) , var(32) ]
     2761                D[32,38] = (-1)*var(43); // [ var(38) , var(32) ]
     2762                D[32,41] = (-1)*var(46); // [ var(41) , var(32) ]
     2763                D[32,43] = (-2)*var(48); // [ var(43) , var(32) ]
     2764                D[32,45] = (-1)*var(49); // [ var(45) , var(32) ]
     2765                D[33,34] = (-1)*var(41); // [ var(34) , var(33) ]
     2766                D[33,37] = (-2)*var(44); // [ var(37) , var(33) ]
     2767                D[33,40] = (-1)*var(46); // [ var(40) , var(33) ]
     2768                D[33,42] = (-1)*var(47); // [ var(42) , var(33) ]
     2769                D[34,35] = var(42); // [ var(35) , var(34) ]
     2770                D[34,36] = var(43); // [ var(36) , var(34) ]
     2771                D[34,39] = var(45); // [ var(39) , var(34) ]
     2772                D[35,38] = (-1)*var(45); // [ var(38) , var(35) ]
     2773                D[35,41] = (-1)*var(47); // [ var(41) , var(35) ]
     2774                D[35,43] = (-1)*var(49); // [ var(43) , var(35) ]
     2775                D[35,45] = (-2)*var(50); // [ var(45) , var(35) ]
     2776                D[36,37] = (-1)*var(46); // [ var(37) , var(36) ]
     2777                D[36,40] = (-2)*var(48); // [ var(40) , var(36) ]
     2778                D[36,42] = (-1)*var(49); // [ var(42) , var(36) ]
     2779                D[37,39] = var(47); // [ var(39) , var(37) ]
     2780                D[39,40] = (-1)*var(49); // [ var(40) , var(39) ]
     2781                D[39,42] = (-2)*var(50); // [ var(42) , var(39) ]
     2782   ncalgebra(1,D);
     2783   return(@@@rrr);
     2784}
     2785example
     2786{ "EXAMPLE:"; echo = 2;
     2787   def ncAlgebra = makeUsp5();
     2788   setring ncAlgebra;
     2789   ncAlgebra;
     2790}
     2791////////////////////////////////////////////////////////////////////
     2792
     2793// Algebra: so6(Q) has the type: D3, and defined by:
     2794
     2795proc makeUso6(list #)
     2796"USAGE:   makeUso6([p]); p an optional integer (field characteristic)
     2797RETURN:  a ring, describing U(so_6)
     2798NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_6) is derived from the Chevalley representation of so_6, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     2799SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     2800EXAMPLE: example makeUso6; shows examples
     2801"
     2802{
     2803   int @p = defInt(#);
     2804
     2805   ring @@@rrr = @p,(X(1..6),Y(1..6),H(1..3)),dp;
     2806   int N = nvars(@@@rrr);
     2807   matrix D[N][N]=0;
     2808
     2809        // H(i) * X(j):
     2810                D[1,13] = (2)*var(1); // [ var(13) , var(1) ]
     2811                D[2,13] = (-1)*var(2); // [ var(13) , var(2) ]
     2812                D[3,13] = (-1)*var(3); // [ var(13) , var(3) ]
     2813                D[4,13] = var(4); // [ var(13) , var(4) ]
     2814                D[5,13] = var(5); // [ var(13) , var(5) ]
     2815                D[1,14] = (-1)*var(1); // [ var(14) , var(1) ]
     2816                D[2,14] = (2)*var(2); // [ var(14) , var(2) ]
     2817                D[4,14] = var(4); // [ var(14) , var(4) ]
     2818                D[5,14] = (-1)*var(5); // [ var(14) , var(5) ]
     2819                D[6,14] = var(6); // [ var(14) , var(6) ]
     2820                D[1,15] = (-1)*var(1); // [ var(15) , var(1) ]
     2821                D[3,15] = (2)*var(3); // [ var(15) , var(3) ]
     2822                D[4,15] = (-1)*var(4); // [ var(15) , var(4) ]
     2823                D[5,15] = var(5); // [ var(15) , var(5) ]
     2824                D[6,15] = var(6); // [ var(15) , var(6) ]
     2825        // H(i) * Y(j):
     2826                D[7,13] = (-2)*var(7); // [ var(13) , var(7) ]
     2827                D[8,13] = var(8); // [ var(13) , var(8) ]
     2828                D[9,13] = var(9); // [ var(13) , var(9) ]
     2829                D[10,13] = (-1)*var(10); // [ var(13) , var(10) ]
     2830                D[11,13] = (-1)*var(11); // [ var(13) , var(11) ]
     2831                D[7,14] = var(7); // [ var(14) , var(7) ]
     2832                D[8,14] = (-2)*var(8); // [ var(14) , var(8) ]
     2833                D[10,14] = (-1)*var(10); // [ var(14) , var(10) ]
     2834                D[11,14] = var(11); // [ var(14) , var(11) ]
     2835                D[12,14] = (-1)*var(12); // [ var(14) , var(12) ]
     2836                D[7,15] = var(7); // [ var(15) , var(7) ]
     2837                D[9,15] = (-2)*var(9); // [ var(15) , var(9) ]
     2838                D[10,15] = var(10); // [ var(15) , var(10) ]
     2839                D[11,15] = (-1)*var(11); // [ var(15) , var(11) ]
     2840                D[12,15] = (-1)*var(12); // [ var(15) , var(12) ]
     2841        // Y(i) * X(j):
     2842                D[1,7] = (-1)*var(13); // [ var(7) , var(1) ]
     2843                D[4,7] = (-1)*var(2); // [ var(7) , var(4) ]
     2844                D[5,7] = (-1)*var(3); // [ var(7) , var(5) ]
     2845                D[2,8] = (-1)*var(14); // [ var(8) , var(2) ]
     2846                D[4,8] = var(1); // [ var(8) , var(4) ]
     2847                D[6,8] = var(5); // [ var(8) , var(6) ]
     2848                D[3,9] = (-1)*var(15); // [ var(9) , var(3) ]
     2849                D[5,9] = var(1); // [ var(9) , var(5) ]
     2850                D[6,9] = var(4); // [ var(9) , var(6) ]
     2851                D[1,10] = (-1)*var(8); // [ var(10) , var(1) ]
     2852                D[2,10] = var(7); // [ var(10) , var(2) ]
     2853                D[4,10] = (-1)*var(13)+(-1)*var(14); // [ var(10) , var(4) ]
     2854                D[6,10] = (-1)*var(3); // [ var(10) , var(6) ]
     2855                D[1,11] = (-1)*var(9); // [ var(11) , var(1) ]
     2856                D[3,11] = var(7); // [ var(11) , var(3) ]
     2857                D[5,11] = (-1)*var(13)+(-1)*var(15); // [ var(11) , var(5) ]
     2858                D[6,11] = (-1)*var(2); // [ var(11) , var(6) ]
     2859                D[2,12] = var(11); // [ var(12) , var(2) ]
     2860                D[3,12] = var(10); // [ var(12) , var(3) ]
     2861                D[4,12] = (-1)*var(9); // [ var(12) , var(4) ]
     2862                D[5,12] = (-1)*var(8); // [ var(12) , var(5) ]
     2863                D[6,12] = (-1)*var(13)+(-1)*var(14)+(-1)*var(15); // [ var(12) , var(6) ]
     2864        // X(i) * X(j):
     2865                D[1,2] = var(4); // [ var(2) , var(1) ]
     2866                D[1,3] = var(5); // [ var(3) , var(1) ]
     2867                D[2,5] = (-1)*var(6); // [ var(5) , var(2) ]
     2868                D[3,4] = (-1)*var(6); // [ var(4) , var(3) ]
     2869        // Y(i) * Y(j):
     2870                D[7,8] = (-1)*var(10); // [ var(8) , var(7) ]
     2871                D[7,9] = (-1)*var(11); // [ var(9) , var(7) ]
     2872                D[8,11] = var(12); // [ var(11) , var(8) ]
     2873                D[9,10] = var(12); // [ var(10) , var(9) ]
     2874   ncalgebra(1,D);
     2875   return(@@@rrr);
     2876}
     2877example
     2878{ "EXAMPLE:"; echo = 2;
     2879   def ncAlgebra = makeUso6();
     2880   setring ncAlgebra;
     2881   ncAlgebra;
     2882}
     2883////////////////////////////////////////////////////////////////////
     2884
     2885// Algebra: so8(Q) has the type: D4, and defined by:
     2886
     2887proc makeUso8(list #)
     2888"USAGE:   makeUso8([p]); p an optional integer (field characteristic)
     2889RETURN:  a ring, describing U(so_8)
     2890NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_8) is derived from the Chevalley representation of so_8, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     2891SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     2892EXAMPLE: example makeUso8; shows examples
     2893"
     2894{
     2895   int @p = defInt(#);
     2896
     2897   ring @@@rrr = @p,(X(1..12),Y(1..12),H(1..4)),dp;
     2898   int N = nvars(@@@rrr);
     2899   matrix D[N][N]=0;
     2900
     2901        // H(i) * X(j):
     2902                D[1,25] = (2)*var(1); // [ var(25) , var(1) ]
     2903                D[2,25] = (-1)*var(2); // [ var(25) , var(2) ]
     2904                D[5,25] = var(5); // [ var(25) , var(5) ]
     2905                D[6,25] = (-1)*var(6); // [ var(25) , var(6) ]
     2906                D[7,25] = (-1)*var(7); // [ var(25) , var(7) ]
     2907                D[8,25] = var(8); // [ var(25) , var(8) ]
     2908                D[9,25] = var(9); // [ var(25) , var(9) ]
     2909                D[10,25] = (-1)*var(10); // [ var(25) , var(10) ]
     2910                D[11,25] = var(11); // [ var(25) , var(11) ]
     2911                D[1,26] = (-1)*var(1); // [ var(26) , var(1) ]
     2912                D[2,26] = (2)*var(2); // [ var(26) , var(2) ]
     2913                D[3,26] = (-1)*var(3); // [ var(26) , var(3) ]
     2914                D[4,26] = (-1)*var(4); // [ var(26) , var(4) ]
     2915                D[5,26] = var(5); // [ var(26) , var(5) ]
     2916                D[6,26] = var(6); // [ var(26) , var(6) ]
     2917                D[7,26] = var(7); // [ var(26) , var(7) ]
     2918                D[11,26] = (-1)*var(11); // [ var(26) , var(11) ]
     2919                D[12,26] = var(12); // [ var(26) , var(12) ]
     2920                D[2,27] = (-1)*var(2); // [ var(27) , var(2) ]
     2921                D[3,27] = (2)*var(3); // [ var(27) , var(3) ]
     2922                D[5,27] = (-1)*var(5); // [ var(27) , var(5) ]
     2923                D[6,27] = var(6); // [ var(27) , var(6) ]
     2924                D[7,27] = (-1)*var(7); // [ var(27) , var(7) ]
     2925                D[8,27] = var(8); // [ var(27) , var(8) ]
     2926                D[9,27] = (-1)*var(9); // [ var(27) , var(9) ]
     2927                D[10,27] = var(10); // [ var(27) , var(10) ]
     2928                D[11,27] = var(11); // [ var(27) , var(11) ]
     2929                D[2,28] = (-1)*var(2); // [ var(28) , var(2) ]
     2930                D[4,28] = (2)*var(4); // [ var(28) , var(4) ]
     2931                D[5,28] = (-1)*var(5); // [ var(28) , var(5) ]
     2932                D[6,28] = (-1)*var(6); // [ var(28) , var(6) ]
     2933                D[7,28] = var(7); // [ var(28) , var(7) ]
     2934                D[8,28] = (-1)*var(8); // [ var(28) , var(8) ]
     2935                D[9,28] = var(9); // [ var(28) , var(9) ]
     2936                D[10,28] = var(10); // [ var(28) , var(10) ]
     2937                D[11,28] = var(11); // [ var(28) , var(11) ]
     2938        // H(i) * Y(j):
     2939                D[13,25] = (-2)*var(13); // [ var(25) , var(13) ]
     2940                D[14,25] = var(14); // [ var(25) , var(14) ]
     2941                D[17,25] = (-1)*var(17); // [ var(25) , var(17) ]
     2942                D[18,25] = var(18); // [ var(25) , var(18) ]
     2943                D[19,25] = var(19); // [ var(25) , var(19) ]
     2944                D[20,25] = (-1)*var(20); // [ var(25) , var(20) ]
     2945                D[21,25] = (-1)*var(21); // [ var(25) , var(21) ]
     2946                D[22,25] = var(22); // [ var(25) , var(22) ]
     2947                D[23,25] = (-1)*var(23); // [ var(25) , var(23) ]
     2948                D[13,26] = var(13); // [ var(26) , var(13) ]
     2949                D[14,26] = (-2)*var(14); // [ var(26) , var(14) ]
     2950                D[15,26] = var(15); // [ var(26) , var(15) ]
     2951                D[16,26] = var(16); // [ var(26) , var(16) ]
     2952                D[17,26] = (-1)*var(17); // [ var(26) , var(17) ]
     2953                D[18,26] = (-1)*var(18); // [ var(26) , var(18) ]
     2954                D[19,26] = (-1)*var(19); // [ var(26) , var(19) ]
     2955                D[23,26] = var(23); // [ var(26) , var(23) ]
     2956                D[24,26] = (-1)*var(24); // [ var(26) , var(24) ]
     2957                D[14,27] = var(14); // [ var(27) , var(14) ]
     2958                D[15,27] = (-2)*var(15); // [ var(27) , var(15) ]
     2959                D[17,27] = var(17); // [ var(27) , var(17) ]
     2960                D[18,27] = (-1)*var(18); // [ var(27) , var(18) ]
     2961                D[19,27] = var(19); // [ var(27) , var(19) ]
     2962                D[20,27] = (-1)*var(20); // [ var(27) , var(20) ]
     2963                D[21,27] = var(21); // [ var(27) , var(21) ]
     2964                D[22,27] = (-1)*var(22); // [ var(27) , var(22) ]
     2965                D[23,27] = (-1)*var(23); // [ var(27) , var(23) ]
     2966                D[14,28] = var(14); // [ var(28) , var(14) ]
     2967                D[16,28] = (-2)*var(16); // [ var(28) , var(16) ]
     2968                D[17,28] = var(17); // [ var(28) , var(17) ]
     2969                D[18,28] = var(18); // [ var(28) , var(18) ]
     2970                D[19,28] = (-1)*var(19); // [ var(28) , var(19) ]
     2971                D[20,28] = var(20); // [ var(28) , var(20) ]
     2972                D[21,28] = (-1)*var(21); // [ var(28) , var(21) ]
     2973                D[22,28] = (-1)*var(22); // [ var(28) , var(22) ]
     2974                D[23,28] = (-1)*var(23); // [ var(28) , var(23) ]
     2975        // Y(i) * X(j):
     2976                D[1,13] = (-1)*var(25); // [ var(13) , var(1) ]
     2977                D[5,13] = (-1)*var(2); // [ var(13) , var(5) ]
     2978                D[8,13] = (-1)*var(6); // [ var(13) , var(8) ]
     2979                D[9,13] = (-1)*var(7); // [ var(13) , var(9) ]
     2980                D[11,13] = (-1)*var(10); // [ var(13) , var(11) ]
     2981                D[2,14] = (-1)*var(26); // [ var(14) , var(2) ]
     2982                D[5,14] = var(1); // [ var(14) , var(5) ]
     2983                D[6,14] = (-1)*var(3); // [ var(14) , var(6) ]
     2984                D[7,14] = (-1)*var(4); // [ var(14) , var(7) ]
     2985                D[12,14] = (-1)*var(11); // [ var(14) , var(12) ]
     2986                D[3,15] = (-1)*var(27); // [ var(15) , var(3) ]
     2987                D[6,15] = var(2); // [ var(15) , var(6) ]
     2988                D[8,15] = var(5); // [ var(15) , var(8) ]
     2989                D[10,15] = var(7); // [ var(15) , var(10) ]
     2990                D[11,15] = var(9); // [ var(15) , var(11) ]
     2991                D[4,16] = (-1)*var(28); // [ var(16) , var(4) ]
     2992                D[7,16] = var(2); // [ var(16) , var(7) ]
     2993                D[9,16] = var(5); // [ var(16) , var(9) ]
     2994                D[10,16] = var(6); // [ var(16) , var(10) ]
     2995                D[11,16] = var(8); // [ var(16) , var(11) ]
     2996                D[1,17] = (-1)*var(14); // [ var(17) , var(1) ]
     2997                D[2,17] = var(13); // [ var(17) , var(2) ]
     2998                D[5,17] = (-1)*var(25)+(-1)*var(26); // [ var(17) , var(5) ]
     2999                D[8,17] = (-1)*var(3); // [ var(17) , var(8) ]
     3000                D[9,17] = (-1)*var(4); // [ var(17) , var(9) ]
     3001                D[12,17] = var(10); // [ var(17) , var(12) ]
     3002                D[2,18] = (-1)*var(15); // [ var(18) , var(2) ]
     3003                D[3,18] = var(14); // [ var(18) , var(3) ]
     3004                D[6,18] = (-1)*var(26)+(-1)*var(27); // [ var(18) , var(6) ]
     3005                D[8,18] = var(1); // [ var(18) , var(8) ]
     3006                D[10,18] = (-1)*var(4); // [ var(18) , var(10) ]
     3007                D[12,18] = var(9); // [ var(18) , var(12) ]
     3008                D[2,19] = (-1)*var(16); // [ var(19) , var(2) ]
     3009                D[4,19] = var(14); // [ var(19) , var(4) ]
     3010                D[7,19] = (-1)*var(26)+(-1)*var(28); // [ var(19) , var(7) ]
     3011                D[9,19] = var(1); // [ var(19) , var(9) ]
     3012                D[10,19] = (-1)*var(3); // [ var(19) , var(10) ]
     3013                D[12,19] = var(8); // [ var(19) , var(12) ]
     3014                D[1,20] = (-1)*var(18); // [ var(20) , var(1) ]
     3015                D[3,20] = var(17); // [ var(20) , var(3) ]
     3016                D[5,20] = (-1)*var(15); // [ var(20) , var(5) ]
     3017                D[6,20] = var(13); // [ var(20) , var(6) ]
     3018                D[8,20] = (-1)*var(25)+(-1)*var(26)+(-1)*var(27); // [ var(20) , var(8) ]
     3019                D[11,20] = (-1)*var(4); // [ var(20) , var(11) ]
     3020                D[12,20] = (-1)*var(7); // [ var(20) , var(12) ]
     3021                D[1,21] = (-1)*var(19); // [ var(21) , var(1) ]
     3022                D[4,21] = var(17); // [ var(21) , var(4) ]
     3023                D[5,21] = (-1)*var(16); // [ var(21) , var(5) ]
     3024                D[7,21] = var(13); // [ var(21) , var(7) ]
     3025                D[9,21] = (-1)*var(25)+(-1)*var(26)+(-1)*var(28); // [ var(21) , var(9) ]
     3026                D[11,21] = (-1)*var(3); // [ var(21) , var(11) ]
     3027                D[12,21] = (-1)*var(6); // [ var(21) , var(12) ]
     3028                D[3,22] = var(19); // [ var(22) , var(3) ]
     3029                D[4,22] = var(18); // [ var(22) , var(4) ]
     3030                D[6,22] = (-1)*var(16); // [ var(22) , var(6) ]
     3031                D[7,22] = (-1)*var(15); // [ var(22) , var(7) ]
     3032                D[10,22] = (-1)*var(26)+(-1)*var(27)+(-1)*var(28); // [ var(22) , var(10) ]
     3033                D[11,22] = var(1); // [ var(22) , var(11) ]
     3034                D[12,22] = (-1)*var(5); // [ var(22) , var(12) ]
     3035                D[1,23] = (-1)*var(22); // [ var(23) , var(1) ]
     3036                D[3,23] = var(21); // [ var(23) , var(3) ]
     3037                D[4,23] = var(20); // [ var(23) , var(4) ]
     3038                D[8,23] = (-1)*var(16); // [ var(23) , var(8) ]
     3039                D[9,23] = (-1)*var(15); // [ var(23) , var(9) ]
     3040                D[10,23] = var(13); // [ var(23) , var(10) ]
     3041                D[11,23] = (-1)*var(25)+(-1)*var(26)+(-1)*var(27)+(-1)*var(28); // [ var(23) , var(11) ]
     3042                D[12,23] = var(2); // [ var(23) , var(12) ]
     3043                D[2,24] = (-1)*var(23); // [ var(24) , var(2) ]
     3044                D[5,24] = var(22); // [ var(24) , var(5) ]
     3045                D[6,24] = var(21); // [ var(24) , var(6) ]
     3046                D[7,24] = var(20); // [ var(24) , var(7) ]
     3047                D[8,24] = (-1)*var(19); // [ var(24) , var(8) ]
     3048                D[9,24] = (-1)*var(18); // [ var(24) , var(9) ]
     3049                D[10,24] = (-1)*var(17); // [ var(24) , var(10) ]
     3050                D[11,24] = var(14); // [ var(24) , var(11) ]
     3051                D[12,24] = (-1)*var(25)+(-2)*var(26)+(-1)*var(27)+(-1)*var(28); // [ var(24) , var(12) ]
     3052        // X(i) * X(j):
     3053                D[1,2] = var(5); // [ var(2) , var(1) ]
     3054                D[1,6] = var(8); // [ var(6) , var(1) ]
     3055                D[1,7] = var(9); // [ var(7) , var(1) ]
     3056                D[1,10] = var(11); // [ var(10) , var(1) ]
     3057                D[2,3] = var(6); // [ var(3) , var(2) ]
     3058                D[2,4] = var(7); // [ var(4) , var(2) ]
     3059                D[2,11] = var(12); // [ var(11) , var(2) ]
     3060                D[3,5] = (-1)*var(8); // [ var(5) , var(3) ]
     3061                D[3,7] = (-1)*var(10); // [ var(7) , var(3) ]
     3062                D[3,9] = (-1)*var(11); // [ var(9) , var(3) ]
     3063                D[4,5] = (-1)*var(9); // [ var(5) , var(4) ]
     3064                D[4,6] = (-1)*var(10); // [ var(6) , var(4) ]
     3065                D[4,8] = (-1)*var(11); // [ var(8) , var(4) ]
     3066                D[5,10] = (-1)*var(12); // [ var(10) , var(5) ]
     3067                D[6,9] = (-1)*var(12); // [ var(9) , var(6) ]
     3068                D[7,8] = (-1)*var(12); // [ var(8) , var(7) ]
     3069        // Y(i) * Y(j):
     3070                D[13,14] = (-1)*var(17); // [ var(14) , var(13) ]
     3071                D[13,18] = (-1)*var(20); // [ var(18) , var(13) ]
     3072                D[13,19] = (-1)*var(21); // [ var(19) , var(13) ]
     3073                D[13,22] = (-1)*var(23); // [ var(22) , var(13) ]
     3074                D[14,15] = (-1)*var(18); // [ var(15) , var(14) ]
     3075                D[14,16] = (-1)*var(19); // [ var(16) , var(14) ]
     3076                D[14,23] = (-1)*var(24); // [ var(23) , var(14) ]
     3077                D[15,17] = var(20); // [ var(17) , var(15) ]
     3078                D[15,19] = var(22); // [ var(19) , var(15) ]
     3079                D[15,21] = var(23); // [ var(21) , var(15) ]
     3080                D[16,17] = var(21); // [ var(17) , var(16) ]
     3081                D[16,18] = var(22); // [ var(18) , var(16) ]
     3082                D[16,20] = var(23); // [ var(20) , var(16) ]
     3083                D[17,22] = var(24); // [ var(22) , var(17) ]
     3084                D[18,21] = var(24); // [ var(21) , var(18) ]
     3085                D[19,20] = var(24); // [ var(20) , var(19) ]
     3086   ncalgebra(1,D);
     3087   return(@@@rrr);
     3088}
     3089example
     3090{ "EXAMPLE:"; echo = 2;
     3091   def ncAlgebra = makeUso8();
     3092   setring ncAlgebra;
     3093   ncAlgebra;
     3094}
     3095////////////////////////////////////////////////////////////////////
     3096
     3097// Algebra: so10(Q) has the type: D5, and defined by:
     3098
     3099proc makeUso10(list #)
     3100"USAGE:   makeUso10([p]); p an optional integer (field characteristic)
     3101RETURN:  a ring, describing U(so_{10})
     3102NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_{10}) is derived from the Chevalley representation of so_{10}, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     3103SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     3104EXAMPLE: example makeUso10; shows examples
     3105"
     3106{
     3107   int @p = defInt(#);
     3108
     3109   ring @@@rrr = @p,(X(1..20),Y(1..20),H(1..5)),dp;
     3110   int N = nvars(@@@rrr);
     3111   matrix D[N][N]=0;
     3112
     3113        // H(i) * X(j):
     3114                D[1,41] = (2)*var(1); // [ var(41) , var(1) ]
     3115                D[2,41] = (-1)*var(2); // [ var(41) , var(2) ]
     3116                D[6,41] = var(6); // [ var(41) , var(6) ]
     3117                D[7,41] = (-1)*var(7); // [ var(41) , var(7) ]
     3118                D[10,41] = var(10); // [ var(41) , var(10) ]
     3119                D[11,41] = (-1)*var(11); // [ var(41) , var(11) ]
     3120                D[12,41] = (-1)*var(12); // [ var(41) , var(12) ]
     3121                D[14,41] = var(14); // [ var(41) , var(14) ]
     3122                D[15,41] = var(15); // [ var(41) , var(15) ]
     3123                D[16,41] = (-1)*var(16); // [ var(41) , var(16) ]
     3124                D[17,41] = var(17); // [ var(41) , var(17) ]
     3125                D[18,41] = (-1)*var(18); // [ var(41) , var(18) ]
     3126                D[19,41] = var(19); // [ var(41) , var(19) ]
     3127                D[1,42] = (-1)*var(1); // [ var(42) , var(1) ]
     3128                D[2,42] = (2)*var(2); // [ var(42) , var(2) ]
     3129                D[3,42] = (-1)*var(3); // [ var(42) , var(3) ]
     3130                D[6,42] = var(6); // [ var(42) , var(6) ]
     3131                D[7,42] = var(7); // [ var(42) , var(7) ]
     3132                D[8,42] = (-1)*var(8); // [ var(42) , var(8) ]
     3133                D[9,42] = (-1)*var(9); // [ var(42) , var(9) ]
     3134                D[11,42] = var(11); // [ var(42) , var(11) ]
     3135                D[12,42] = var(12); // [ var(42) , var(12) ]
     3136                D[13,42] = (-1)*var(13); // [ var(42) , var(13) ]
     3137                D[16,42] = var(16); // [ var(42) , var(16) ]
     3138                D[19,42] = (-1)*var(19); // [ var(42) , var(19) ]
     3139                D[20,42] = var(20); // [ var(42) , var(20) ]
     3140                D[2,43] = (-1)*var(2); // [ var(43) , var(2) ]
     3141                D[3,43] = (2)*var(3); // [ var(43) , var(3) ]
     3142                D[4,43] = (-1)*var(4); // [ var(43) , var(4) ]
     3143                D[5,43] = (-1)*var(5); // [ var(43) , var(5) ]
     3144                D[6,43] = (-1)*var(6); // [ var(43) , var(6) ]
     3145                D[7,43] = var(7); // [ var(43) , var(7) ]
     3146                D[8,43] = var(8); // [ var(43) , var(8) ]
     3147                D[9,43] = var(9); // [ var(43) , var(9) ]
     3148                D[10,43] = var(10); // [ var(43) , var(10) ]
     3149                D[16,43] = (-1)*var(16); // [ var(43) , var(16) ]
     3150                D[17,43] = (-1)*var(17); // [ var(43) , var(17) ]
     3151                D[18,43] = var(18); // [ var(43) , var(18) ]
     3152                D[19,43] = var(19); // [ var(43) , var(19) ]
     3153                D[3,44] = (-1)*var(3); // [ var(44) , var(3) ]
     3154                D[4,44] = (2)*var(4); // [ var(44) , var(4) ]
     3155                D[7,44] = (-1)*var(7); // [ var(44) , var(7) ]
     3156                D[8,44] = var(8); // [ var(44) , var(8) ]
     3157                D[9,44] = (-1)*var(9); // [ var(44) , var(9) ]
     3158                D[10,44] = (-1)*var(10); // [ var(44) , var(10) ]
     3159                D[11,44] = var(11); // [ var(44) , var(11) ]
     3160                D[12,44] = (-1)*var(12); // [ var(44) , var(12) ]
     3161                D[13,44] = var(13); // [ var(44) , var(13) ]
     3162                D[14,44] = var(14); // [ var(44) , var(14) ]
     3163                D[15,44] = (-1)*var(15); // [ var(44) , var(15) ]
     3164                D[16,44] = var(16); // [ var(44) , var(16) ]
     3165                D[17,44] = var(17); // [ var(44) , var(17) ]
     3166                D[3,45] = (-1)*var(3); // [ var(45) , var(3) ]
     3167                D[5,45] = (2)*var(5); // [ var(45) , var(5) ]
     3168                D[7,45] = (-1)*var(7); // [ var(45) , var(7) ]
     3169                D[8,45] = (-1)*var(8); // [ var(45) , var(8) ]
     3170                D[9,45] = var(9); // [ var(45) , var(9) ]
     3171                D[10,45] = (-1)*var(10); // [ var(45) , var(10) ]
     3172                D[11,45] = (-1)*var(11); // [ var(45) , var(11) ]
     3173                D[12,45] = var(12); // [ var(45) , var(12) ]
     3174                D[13,45] = var(13); // [ var(45) , var(13) ]
     3175                D[14,45] = (-1)*var(14); // [ var(45) , var(14) ]
     3176                D[15,45] = var(15); // [ var(45) , var(15) ]
     3177                D[16,45] = var(16); // [ var(45) , var(16) ]
     3178                D[17,45] = var(17); // [ var(45) , var(17) ]
     3179        // H(i) * Y(j):
     3180                D[21,41] = (-2)*var(21); // [ var(41) , var(21) ]
     3181                D[22,41] = var(22); // [ var(41) , var(22) ]
     3182                D[26,41] = (-1)*var(26); // [ var(41) , var(26) ]
     3183                D[27,41] = var(27); // [ var(41) , var(27) ]
     3184                D[30,41] = (-1)*var(30); // [ var(41) , var(30) ]
     3185                D[31,41] = var(31); // [ var(41) , var(31) ]
     3186                D[32,41] = var(32); // [ var(41) , var(32) ]
     3187                D[34,41] = (-1)*var(34); // [ var(41) , var(34) ]
     3188                D[35,41] = (-1)*var(35); // [ var(41) , var(35) ]
     3189                D[36,41] = var(36); // [ var(41) , var(36) ]
     3190                D[37,41] = (-1)*var(37); // [ var(41) , var(37) ]
     3191                D[38,41] = var(38); // [ var(41) , var(38) ]
     3192                D[39,41] = (-1)*var(39); // [ var(41) , var(39) ]
     3193                D[21,42] = var(21); // [ var(42) , var(21) ]
     3194                D[22,42] = (-2)*var(22); // [ var(42) , var(22) ]
     3195                D[23,42] = var(23); // [ var(42) , var(23) ]
     3196                D[26,42] = (-1)*var(26); // [ var(42) , var(26) ]
     3197                D[27,42] = (-1)*var(27); // [ var(42) , var(27) ]
     3198                D[28,42] = var(28); // [ var(42) , var(28) ]
     3199                D[29,42] = var(29); // [ var(42) , var(29) ]
     3200                D[31,42] = (-1)*var(31); // [ var(42) , var(31) ]
     3201                D[32,42] = (-1)*var(32); // [ var(42) , var(32) ]
     3202                D[33,42] = var(33); // [ var(42) , var(33) ]
     3203                D[36,42] = (-1)*var(36); // [ var(42) , var(36) ]
     3204                D[39,42] = var(39); // [ var(42) , var(39) ]
     3205                D[40,42] = (-1)*var(40); // [ var(42) , var(40) ]
     3206                D[22,43] = var(22); // [ var(43) , var(22) ]
     3207                D[23,43] = (-2)*var(23); // [ var(43) , var(23) ]
     3208                D[24,43] = var(24); // [ var(43) , var(24) ]
     3209                D[25,43] = var(25); // [ var(43) , var(25) ]
     3210                D[26,43] = var(26); // [ var(43) , var(26) ]
     3211                D[27,43] = (-1)*var(27); // [ var(43) , var(27) ]
     3212                D[28,43] = (-1)*var(28); // [ var(43) , var(28) ]
     3213                D[29,43] = (-1)*var(29); // [ var(43) , var(29) ]
     3214                D[30,43] = (-1)*var(30); // [ var(43) , var(30) ]
     3215                D[36,43] = var(36); // [ var(43) , var(36) ]
     3216                D[37,43] = var(37); // [ var(43) , var(37) ]
     3217                D[38,43] = (-1)*var(38); // [ var(43) , var(38) ]
     3218                D[39,43] = (-1)*var(39); // [ var(43) , var(39) ]
     3219                D[23,44] = var(23); // [ var(44) , var(23) ]
     3220                D[24,44] = (-2)*var(24); // [ var(44) , var(24) ]
     3221                D[27,44] = var(27); // [ var(44) , var(27) ]
     3222                D[28,44] = (-1)*var(28); // [ var(44) , var(28) ]
     3223                D[29,44] = var(29); // [ var(44) , var(29) ]
     3224                D[30,44] = var(30); // [ var(44) , var(30) ]
     3225                D[31,44] = (-1)*var(31); // [ var(44) , var(31) ]
     3226                D[32,44] = var(32); // [ var(44) , var(32) ]
     3227                D[33,44] = (-1)*var(33); // [ var(44) , var(33) ]
     3228                D[34,44] = (-1)*var(34); // [ var(44) , var(34) ]
     3229                D[35,44] = var(35); // [ var(44) , var(35) ]
     3230                D[36,44] = (-1)*var(36); // [ var(44) , var(36) ]
     3231                D[37,44] = (-1)*var(37); // [ var(44) , var(37) ]
     3232                D[23,45] = var(23); // [ var(45) , var(23) ]
     3233                D[25,45] = (-2)*var(25); // [ var(45) , var(25) ]
     3234                D[27,45] = var(27); // [ var(45) , var(27) ]
     3235                D[28,45] = var(28); // [ var(45) , var(28) ]
     3236                D[29,45] = (-1)*var(29); // [ var(45) , var(29) ]
     3237                D[30,45] = var(30); // [ var(45) , var(30) ]
     3238                D[31,45] = var(31); // [ var(45) , var(31) ]
     3239                D[32,45] = (-1)*var(32); // [ var(45) , var(32) ]
     3240                D[33,45] = (-1)*var(33); // [ var(45) , var(33) ]
     3241                D[34,45] = var(34); // [ var(45) , var(34) ]
     3242                D[35,45] = (-1)*var(35); // [ var(45) , var(35) ]
     3243                D[36,45] = (-1)*var(36); // [ var(45) , var(36) ]
     3244                D[37,45] = (-1)*var(37); // [ var(45) , var(37) ]
     3245        // Y(i) * X(j):
     3246                D[1,21] = (-1)*var(41); // [ var(21) , var(1) ]
     3247                D[6,21] = (-1)*var(2); // [ var(21) , var(6) ]
     3248                D[10,21] = (-1)*var(7); // [ var(21) , var(10) ]
     3249                D[14,21] = (-1)*var(11); // [ var(21) , var(14) ]
     3250                D[15,21] = (-1)*var(12); // [ var(21) , var(15) ]
     3251                D[17,21] = (-1)*var(16); // [ var(21) , var(17) ]
     3252                D[19,21] = (-1)*var(18); // [ var(21) , var(19) ]
     3253                D[2,22] = (-1)*var(42); // [ var(22) , var(2) ]
     3254                D[6,22] = var(1); // [ var(22) , var(6) ]
     3255                D[7,22] = (-1)*var(3); // [ var(22) , var(7) ]
     3256                D[11,22] = (-1)*var(8); // [ var(22) , var(11) ]
     3257                D[12,22] = (-1)*var(9); // [ var(22) , var(12) ]
     3258                D[16,22] = (-1)*var(13); // [ var(22) , var(16) ]
     3259                D[20,22] = (-1)*var(19); // [ var(22) , var(20) ]
     3260                D[3,23] = (-1)*var(43); // [ var(23) , var(3) ]
     3261                D[7,23] = var(2); // [ var(23) , var(7) ]
     3262                D[8,23] = (-1)*var(4); // [ var(23) , var(8) ]
     3263                D[9,23] = (-1)*var(5); // [ var(23) , var(9) ]
     3264                D[10,23] = var(6); // [ var(23) , var(10) ]
     3265                D[18,23] = (-1)*var(16); // [ var(23) , var(18) ]
     3266                D[19,23] = (-1)*var(17); // [ var(23) , var(19) ]
     3267                D[4,24] = (-1)*var(44); // [ var(24) , var(4) ]
     3268                D[8,24] = var(3); // [ var(24) , var(8) ]
     3269                D[11,24] = var(7); // [ var(24) , var(11) ]
     3270                D[13,24] = var(9); // [ var(24) , var(13) ]
     3271                D[14,24] = var(10); // [ var(24) , var(14) ]
     3272                D[16,24] = var(12); // [ var(24) , var(16) ]
     3273                D[17,24] = var(15); // [ var(24) , var(17) ]
     3274                D[5,25] = (-1)*var(45); // [ var(25) , var(5) ]
     3275                D[9,25] = var(3); // [ var(25) , var(9) ]
     3276                D[12,25] = var(7); // [ var(25) , var(12) ]
     3277                D[13,25] = var(8); // [ var(25) , var(13) ]
     3278                D[15,25] = var(10); // [ var(25) , var(15) ]
     3279                D[16,25] = var(11); // [ var(25) , var(16) ]
     3280                D[17,25] = var(14); // [ var(25) , var(17) ]
     3281                D[1,26] = (-1)*var(22); // [ var(26) , var(1) ]
     3282                D[2,26] = var(21); // [ var(26) , var(2) ]
     3283                D[6,26] = (-1)*var(41)+(-1)*var(42); // [ var(26) , var(6) ]
     3284                D[10,26] = (-1)*var(3); // [ var(26) , var(10) ]
     3285                D[14,26] = (-1)*var(8); // [ var(26) , var(14) ]
     3286                D[15,26] = (-1)*var(9); // [ var(26) , var(15) ]
     3287                D[17,26] = (-1)*var(13); // [ var(26) , var(17) ]
     3288                D[20,26] = var(18); // [ var(26) , var(20) ]
     3289                D[2,27] = (-1)*var(23); // [ var(27) , var(2) ]
     3290                D[3,27] = var(22); // [ var(27) , var(3) ]
     3291                D[7,27] = (-1)*var(42)+(-1)*var(43); // [ var(27) , var(7) ]
     3292                D[10,27] = var(1); // [ var(27) , var(10) ]
     3293                D[11,27] = (-1)*var(4); // [ var(27) , var(11) ]
     3294                D[12,27] = (-1)*var(5); // [ var(27) , var(12) ]
     3295                D[18,27] = var(13); // [ var(27) , var(18) ]
     3296                D[20,27] = (-1)*var(17); // [ var(27) , var(20) ]
     3297                D[3,28] = (-1)*var(24); // [ var(28) , var(3) ]
     3298                D[4,28] = var(23); // [ var(28) , var(4) ]
     3299                D[8,28] = (-1)*var(43)+(-1)*var(44); // [ var(28) , var(8) ]
     3300                D[11,28] = var(2); // [ var(28) , var(11) ]
     3301                D[13,28] = (-1)*var(5); // [ var(28) , var(13) ]
     3302                D[14,28] = var(6); // [ var(28) , var(14) ]
     3303                D[18,28] = var(12); // [ var(28) , var(18) ]
     3304                D[19,28] = var(15); // [ var(28) , var(19) ]
     3305                D[3,29] = (-1)*var(25); // [ var(29) , var(3) ]
     3306                D[5,29] = var(23); // [ var(29) , var(5) ]
     3307                D[9,29] = (-1)*var(43)+(-1)*var(45); // [ var(29) , var(9) ]
     3308                D[12,29] = var(2); // [ var(29) , var(12) ]
     3309                D[13,29] = (-1)*var(4); // [ var(29) , var(13) ]
     3310                D[15,29] = var(6); // [ var(29) , var(15) ]
     3311                D[18,29] = var(11); // [ var(29) , var(18) ]
     3312                D[19,29] = var(14); // [ var(29) , var(19) ]
     3313                D[1,30] = (-1)*var(27); // [ var(30) , var(1) ]
     3314                D[3,30] = var(26); // [ var(30) , var(3) ]
     3315                D[6,30] = (-1)*var(23); // [ var(30) , var(6) ]
     3316                D[7,30] = var(21); // [ var(30) , var(7) ]
     3317                D[10,30] = (-1)*var(41)+(-1)*var(42)+(-1)*var(43); // [ var(30) , var(10) ]
     3318                D[14,30] = (-1)*var(4); // [ var(30) , var(14) ]
     3319                D[15,30] = (-1)*var(5); // [ var(30) , var(15) ]
     3320                D[19,30] = var(13); // [ var(30) , var(19) ]
     3321                D[20,30] = var(16); // [ var(30) , var(20) ]
     3322                D[2,31] = (-1)*var(28); // [ var(31) , var(2) ]
     3323                D[4,31] = var(27); // [ var(31) , var(4) ]
     3324                D[7,31] = (-1)*var(24); // [ var(31) , var(7) ]
     3325                D[8,31] = var(22); // [ var(31) , var(8) ]
     3326                D[11,31] = (-1)*var(42)+(-1)*var(43)+(-1)*var(44); // [ var(31) , var(11) ]
     3327                D[14,31] = var(1); // [ var(31) , var(14) ]
     3328                D[16,31] = (-1)*var(5); // [ var(31) , var(16) ]
     3329                D[18,31] = (-1)*var(9); // [ var(31) , var(18) ]
     3330                D[20,31] = var(15); // [ var(31) , var(20) ]
     3331                D[2,32] = (-1)*var(29); // [ var(32) , var(2) ]
     3332                D[5,32] = var(27); // [ var(32) , var(5) ]
     3333                D[7,32] = (-1)*var(25); // [ var(32) , var(7) ]
     3334                D[9,32] = var(22); // [ var(32) , var(9) ]
     3335                D[12,32] = (-1)*var(42)+(-1)*var(43)+(-1)*var(45); // [ var(32) , var(12) ]
     3336                D[15,32] = var(1); // [ var(32) , var(15) ]
     3337                D[16,32] = (-1)*var(4); // [ var(32) , var(16) ]
     3338                D[18,32] = (-1)*var(8); // [ var(32) , var(18) ]
     3339                D[20,32] = var(14); // [ var(32) , var(20) ]
     3340                D[4,33] = var(29); // [ var(33) , var(4) ]
     3341                D[5,33] = var(28); // [ var(33) , var(5) ]
     3342                D[8,33] = (-1)*var(25); // [ var(33) , var(8) ]
     3343                D[9,33] = (-1)*var(24); // [ var(33) , var(9) ]
     3344                D[13,33] = (-1)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(33) , var(13) ]
     3345                D[16,33] = var(2); // [ var(33) , var(16) ]
     3346                D[17,33] = var(6); // [ var(33) , var(17) ]
     3347                D[18,33] = (-1)*var(7); // [ var(33) , var(18) ]
     3348                D[19,33] = (-1)*var(10); // [ var(33) , var(19) ]
     3349                D[1,34] = (-1)*var(31); // [ var(34) , var(1) ]
     3350                D[4,34] = var(30); // [ var(34) , var(4) ]
     3351                D[6,34] = (-1)*var(28); // [ var(34) , var(6) ]
     3352                D[8,34] = var(26); // [ var(34) , var(8) ]
     3353                D[10,34] = (-1)*var(24); // [ var(34) , var(10) ]
     3354                D[11,34] = var(21); // [ var(34) , var(11) ]
     3355                D[14,34] = (-1)*var(41)+(-1)*var(42)+(-1)*var(43)+(-1)*var(44); // [ var(34) , var(14) ]
     3356                D[17,34] = (-1)*var(5); // [ var(34) , var(17) ]
     3357                D[19,34] = (-1)*var(9); // [ var(34) , var(19) ]
     3358                D[20,34] = (-1)*var(12); // [ var(34) , var(20) ]
     3359                D[1,35] = (-1)*var(32); // [ var(35) , var(1) ]
     3360                D[5,35] = var(30); // [ var(35) , var(5) ]
     3361                D[6,35] = (-1)*var(29); // [ var(35) , var(6) ]
     3362                D[9,35] = var(26); // [ var(35) , var(9) ]
     3363                D[10,35] = (-1)*var(25); // [ var(35) , var(10) ]
     3364                D[12,35] = var(21); // [ var(35) , var(12) ]
     3365                D[15,35] = (-1)*var(41)+(-1)*var(42)+(-1)*var(43)+(-1)*var(45); // [ var(35) , var(15) ]
     3366                D[17,35] = (-1)*var(4); // [ var(35) , var(17) ]
     3367                D[19,35] = (-1)*var(8); // [ var(35) , var(19) ]
     3368                D[20,35] = (-1)*var(11); // [ var(35) , var(20) ]
     3369                D[2,36] = (-1)*var(33); // [ var(36) , var(2) ]
     3370                D[4,36] = var(32); // [ var(36) , var(4) ]
     3371                D[5,36] = var(31); // [ var(36) , var(5) ]
     3372                D[11,36] = (-1)*var(25); // [ var(36) , var(11) ]
     3373                D[12,36] = (-1)*var(24); // [ var(36) , var(12) ]
     3374                D[13,36] = var(22); // [ var(36) , var(13) ]
     3375                D[16,36] = (-1)*var(42)+(-1)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(36) , var(16) ]
     3376                D[17,36] = var(1); // [ var(36) , var(17) ]
     3377                D[18,36] = var(3); // [ var(36) , var(18) ]
     3378                D[20,36] = (-1)*var(10); // [ var(36) , var(20) ]
     3379                D[1,37] = (-1)*var(36); // [ var(37) , var(1) ]
     3380                D[4,37] = var(35); // [ var(37) , var(4) ]
     3381                D[5,37] = var(34); // [ var(37) , var(5) ]
     3382                D[6,37] = (-1)*var(33); // [ var(37) , var(6) ]
     3383                D[13,37] = var(26); // [ var(37) , var(13) ]
     3384                D[14,37] = (-1)*var(25); // [ var(37) , var(14) ]
     3385                D[15,37] = (-1)*var(24); // [ var(37) , var(15) ]
     3386                D[16,37] = var(21); // [ var(37) , var(16) ]
     3387                D[17,37] = (-1)*var(41)+(-1)*var(42)+(-1)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(37) , var(17) ]
     3388                D[19,37] = var(3); // [ var(37) , var(19) ]
     3389                D[20,37] = var(7); // [ var(37) , var(20) ]
     3390                D[3,38] = (-1)*var(36); // [ var(38) , var(3) ]
     3391                D[7,38] = var(33); // [ var(38) , var(7) ]
     3392                D[8,38] = var(32); // [ var(38) , var(8) ]
     3393                D[9,38] = var(31); // [ var(38) , var(9) ]
     3394                D[11,38] = (-1)*var(29); // [ var(38) , var(11) ]
     3395                D[12,38] = (-1)*var(28); // [ var(38) , var(12) ]
     3396                D[13,38] = (-1)*var(27); // [ var(38) , var(13) ]
     3397                D[16,38] = var(23); // [ var(38) , var(16) ]
     3398                D[18,38] = (-1)*var(42)+(-2)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(38) , var(18) ]
     3399                D[19,38] = var(1); // [ var(38) , var(19) ]
     3400                D[20,38] = (-1)*var(6); // [ var(38) , var(20) ]
     3401                D[1,39] = (-1)*var(38); // [ var(39) , var(1) ]
     3402                D[3,39] = (-1)*var(37); // [ var(39) , var(3) ]
     3403                D[8,39] = var(35); // [ var(39) , var(8) ]
     3404                D[9,39] = var(34); // [ var(39) , var(9) ]
     3405                D[10,39] = var(33); // [ var(39) , var(10) ]
     3406                D[13,39] = (-1)*var(30); // [ var(39) , var(13) ]
     3407                D[14,39] = (-1)*var(29); // [ var(39) , var(14) ]
     3408                D[15,39] = (-1)*var(28); // [ var(39) , var(15) ]
     3409                D[17,39] = var(23); // [ var(39) , var(17) ]
     3410                D[18,39] = var(21); // [ var(39) , var(18) ]
     3411                D[19,39] = (-1)*var(41)+(-1)*var(42)+(-2)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(39) , var(19) ]
     3412                D[20,39] = var(2); // [ var(39) , var(20) ]
     3413                D[2,40] = (-1)*var(39); // [ var(40) , var(2) ]
     3414                D[6,40] = var(38); // [ var(40) , var(6) ]
     3415                D[7,40] = (-1)*var(37); // [ var(40) , var(7) ]
     3416                D[10,40] = var(36); // [ var(40) , var(10) ]
     3417                D[11,40] = var(35); // [ var(40) , var(11) ]
     3418                D[12,40] = var(34); // [ var(40) , var(12) ]
     3419                D[14,40] = (-1)*var(32); // [ var(40) , var(14) ]
     3420                D[15,40] = (-1)*var(31); // [ var(40) , var(15) ]
     3421                D[16,40] = (-1)*var(30); // [ var(40) , var(16) ]
     3422                D[17,40] = var(27); // [ var(40) , var(17) ]
     3423                D[18,40] = (-1)*var(26); // [ var(40) , var(18) ]
     3424                D[19,40] = var(22); // [ var(40) , var(19) ]
     3425                D[20,40] = (-1)*var(41)+(-2)*var(42)+(-2)*var(43)+(-1)*var(44)+(-1)*var(45); // [ var(40) , var(20) ]
     3426        // X(i) * X(j):
     3427                D[1,2] = var(6); // [ var(2) , var(1) ]
     3428                D[1,7] = var(10); // [ var(7) , var(1) ]
     3429                D[1,11] = var(14); // [ var(11) , var(1) ]
     3430                D[1,12] = var(15); // [ var(12) , var(1) ]
     3431                D[1,16] = var(17); // [ var(16) , var(1) ]
     3432                D[1,18] = var(19); // [ var(18) , var(1) ]
     3433                D[2,3] = var(7); // [ var(3) , var(2) ]
     3434                D[2,8] = var(11); // [ var(8) , var(2) ]
     3435                D[2,9] = var(12); // [ var(9) , var(2) ]
     3436                D[2,13] = var(16); // [ var(13) , var(2) ]
     3437                D[2,19] = var(20); // [ var(19) , var(2) ]
     3438                D[3,4] = var(8); // [ var(4) , var(3) ]
     3439                D[3,5] = var(9); // [ var(5) , var(3) ]
     3440                D[3,6] = (-1)*var(10); // [ var(6) , var(3) ]
     3441                D[3,16] = var(18); // [ var(16) , var(3) ]
     3442                D[3,17] = var(19); // [ var(17) , var(3) ]
     3443                D[4,7] = (-1)*var(11); // [ var(7) , var(4) ]
     3444                D[4,9] = (-1)*var(13); // [ var(9) , var(4) ]
     3445                D[4,10] = (-1)*var(14); // [ var(10) , var(4) ]
     3446                D[4,12] = (-1)*var(16); // [ var(12) , var(4) ]
     3447                D[4,15] = (-1)*var(17); // [ var(15) , var(4) ]
     3448                D[5,7] = (-1)*var(12); // [ var(7) , var(5) ]
     3449                D[5,8] = (-1)*var(13); // [ var(8) , var(5) ]
     3450                D[5,10] = (-1)*var(15); // [ var(10) , var(5) ]
     3451                D[5,11] = (-1)*var(16); // [ var(11) , var(5) ]
     3452                D[5,14] = (-1)*var(17); // [ var(14) , var(5) ]
     3453                D[6,8] = var(14); // [ var(8) , var(6) ]
     3454                D[6,9] = var(15); // [ var(9) , var(6) ]
     3455                D[6,13] = var(17); // [ var(13) , var(6) ]
     3456                D[6,18] = (-1)*var(20); // [ var(18) , var(6) ]
     3457                D[7,13] = (-1)*var(18); // [ var(13) , var(7) ]
     3458                D[7,17] = var(20); // [ var(17) , var(7) ]
     3459                D[8,12] = (-1)*var(18); // [ var(12) , var(8) ]
     3460                D[8,15] = (-1)*var(19); // [ var(15) , var(8) ]
     3461                D[9,11] = (-1)*var(18); // [ var(11) , var(9) ]
     3462                D[9,14] = (-1)*var(19); // [ var(14) , var(9) ]
     3463                D[10,13] = (-1)*var(19); // [ var(13) , var(10) ]
     3464                D[10,16] = (-1)*var(20); // [ var(16) , var(10) ]
     3465                D[11,15] = (-1)*var(20); // [ var(15) , var(11) ]
     3466                D[12,14] = (-1)*var(20); // [ var(14) , var(12) ]
     3467        // Y(i) * Y(j):
     3468                D[21,22] = (-1)*var(26); // [ var(22) , var(21) ]
     3469                D[21,27] = (-1)*var(30); // [ var(27) , var(21) ]
     3470                D[21,31] = (-1)*var(34); // [ var(31) , var(21) ]
     3471                D[21,32] = (-1)*var(35); // [ var(32) , var(21) ]
     3472                D[21,36] = (-1)*var(37); // [ var(36) , var(21) ]
     3473                D[21,38] = (-1)*var(39); // [ var(38) , var(21) ]
     3474                D[22,23] = (-1)*var(27); // [ var(23) , var(22) ]
     3475                D[22,28] = (-1)*var(31); // [ var(28) , var(22) ]
     3476                D[22,29] = (-1)*var(32); // [ var(29) , var(22) ]
     3477                D[22,33] = (-1)*var(36); // [ var(33) , var(22) ]
     3478                D[22,39] = (-1)*var(40); // [ var(39) , var(22) ]
     3479                D[23,24] = (-1)*var(28); // [ var(24) , var(23) ]
     3480                D[23,25] = (-1)*var(29); // [ var(25) , var(23) ]
     3481                D[23,26] = var(30); // [ var(26) , var(23) ]
     3482                D[23,36] = (-1)*var(38); // [ var(36) , var(23) ]
     3483                D[23,37] = (-1)*var(39); // [ var(37) , var(23) ]
     3484                D[24,27] = var(31); // [ var(27) , var(24) ]
     3485                D[24,29] = var(33); // [ var(29) , var(24) ]
     3486                D[24,30] = var(34); // [ var(30) , var(24) ]
     3487                D[24,32] = var(36); // [ var(32) , var(24) ]
     3488                D[24,35] = var(37); // [ var(35) , var(24) ]
     3489                D[25,27] = var(32); // [ var(27) , var(25) ]
     3490                D[25,28] = var(33); // [ var(28) , var(25) ]
     3491                D[25,30] = var(35); // [ var(30) , var(25) ]
     3492                D[25,31] = var(36); // [ var(31) , var(25) ]
     3493                D[25,34] = var(37); // [ var(34) , var(25) ]
     3494                D[26,28] = (-1)*var(34); // [ var(28) , var(26) ]
     3495                D[26,29] = (-1)*var(35); // [ var(29) , var(26) ]
     3496                D[26,33] = (-1)*var(37); // [ var(33) , var(26) ]
     3497                D[26,38] = var(40); // [ var(38) , var(26) ]
     3498                D[27,33] = var(38); // [ var(33) , var(27) ]
     3499                D[27,37] = (-1)*var(40); // [ var(37) , var(27) ]
     3500                D[28,32] = var(38); // [ var(32) , var(28) ]
     3501                D[28,35] = var(39); // [ var(35) , var(28) ]
     3502                D[29,31] = var(38); // [ var(31) , var(29) ]
     3503                D[29,34] = var(39); // [ var(34) , var(29) ]
     3504                D[30,33] = var(39); // [ var(33) , var(30) ]
     3505                D[30,36] = var(40); // [ var(36) , var(30) ]
     3506                D[31,35] = var(40); // [ var(35) , var(31) ]
     3507                D[32,34] = var(40); // [ var(34) , var(32) ]
     3508   ncalgebra(1,D);
     3509   return(@@@rrr);
     3510}
     3511example
     3512{ "EXAMPLE:"; echo = 2;
     3513   def ncAlgebra = makeUso10();
     3514   setring ncAlgebra;
     3515   ncAlgebra;
     3516}
     3517////////////////////////////////////////////////////////////////////
     3518
     3519// Algebra: so12(Q) has the type: D6, and defined by:
     3520
     3521proc makeUso12(list #)
     3522"USAGE:   makeUso12([p]); p an optional integer (field characteristic)
     3523RETURN:  a ring, describing U(so_{12})
     3524NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(so_{12}) is derived from the Chevalley representation of so_{12}, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     3525SEE ALSO: makeUsl, makeUso5, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     3526EXAMPLE: example makeUso12; shows examples
     3527"
     3528{
     3529   int @p = defInt(#);
     3530
     3531   ring @@@rrr = @p,(X(1..30),Y(1..30),H(1..6)),dp;
     3532   int N = nvars(@@@rrr);
     3533   matrix D[N][N]=0;
     3534
     3535        // H(i) * X(j):
     3536                D[1,61] = (2)*var(1); // [ var(61) , var(1) ]
     3537                D[2,61] = (-1)*var(2); // [ var(61) , var(2) ]
     3538                D[7,61] = var(7); // [ var(61) , var(7) ]
     3539                D[8,61] = (-1)*var(8); // [ var(61) , var(8) ]
     3540                D[12,61] = var(12); // [ var(61) , var(12) ]
     3541                D[13,61] = (-1)*var(13); // [ var(61) , var(13) ]
     3542                D[17,61] = var(17); // [ var(61) , var(17) ]
     3543                D[18,61] = (-1)*var(18); // [ var(61) , var(18) ]
     3544                D[19,61] = (-1)*var(19); // [ var(61) , var(19) ]
     3545                D[21,61] = var(21); // [ var(61) , var(21) ]
     3546                D[22,61] = var(22); // [ var(61) , var(22) ]
     3547                D[23,61] = (-1)*var(23); // [ var(61) , var(23) ]
     3548                D[25,61] = var(25); // [ var(61) , var(25) ]
     3549                D[26,61] = (-1)*var(26); // [ var(61) , var(26) ]
     3550                D[27,61] = var(27); // [ var(61) , var(27) ]
     3551                D[28,61] = (-1)*var(28); // [ var(61) , var(28) ]
     3552                D[29,61] = var(29); // [ var(61) , var(29) ]
     3553                D[1,62] = (-1)*var(1); // [ var(62) , var(1) ]
     3554                D[2,62] = (2)*var(2); // [ var(62) , var(2) ]
     3555                D[3,62] = (-1)*var(3); // [ var(62) , var(3) ]
     3556                D[7,62] = var(7); // [ var(62) , var(7) ]
     3557                D[8,62] = var(8); // [ var(62) , var(8) ]
     3558                D[9,62] = (-1)*var(9); // [ var(62) , var(9) ]
     3559                D[13,62] = var(13); // [ var(62) , var(13) ]
     3560                D[14,62] = (-1)*var(14); // [ var(62) , var(14) ]
     3561                D[15,62] = (-1)*var(15); // [ var(62) , var(15) ]
     3562                D[18,62] = var(18); // [ var(62) , var(18) ]
     3563                D[19,62] = var(19); // [ var(62) , var(19) ]
     3564                D[20,62] = (-1)*var(20); // [ var(62) , var(20) ]
     3565                D[23,62] = var(23); // [ var(62) , var(23) ]
     3566                D[24,62] = (-1)*var(24); // [ var(62) , var(24) ]
     3567                D[26,62] = var(26); // [ var(62) , var(26) ]
     3568                D[29,62] = (-1)*var(29); // [ var(62) , var(29) ]
     3569                D[30,62] = var(30); // [ var(62) , var(30) ]
     3570                D[2,63] = (-1)*var(2); // [ var(63) , var(2) ]
     3571                D[3,63] = (2)*var(3); // [ var(63) , var(3) ]
     3572                D[4,63] = (-1)*var(4); // [ var(63) , var(4) ]
     3573                D[7,63] = (-1)*var(7); // [ var(63) , var(7) ]
     3574                D[8,63] = var(8); // [ var(63) , var(8) ]
     3575                D[9,63] = var(9); // [ var(63) , var(9) ]
     3576                D[10,63] = (-1)*var(10); // [ var(63) , var(10) ]
     3577                D[11,63] = (-1)*var(11); // [ var(63) , var(11) ]
     3578                D[12,63] = var(12); // [ var(63) , var(12) ]
     3579                D[14,63] = var(14); // [ var(63) , var(14) ]
     3580                D[15,63] = var(15); // [ var(63) , var(15) ]
     3581                D[16,63] = (-1)*var(16); // [ var(63) , var(16) ]
     3582                D[20,63] = var(20); // [ var(63) , var(20) ]
     3583                D[26,63] = (-1)*var(26); // [ var(63) , var(26) ]
     3584                D[27,63] = (-1)*var(27); // [ var(63) , var(27) ]
     3585                D[28,63] = var(28); // [ var(63) , var(28) ]
     3586                D[29,63] = var(29); // [ var(63) , var(29) ]
     3587                D[3,64] = (-1)*var(3); // [ var(64) , var(3) ]
     3588                D[4,64] = (2)*var(4); // [ var(64) , var(4) ]
     3589                D[5,64] = (-1)*var(5); // [ var(64) , var(5) ]
     3590                D[6,64] = (-1)*var(6); // [ var(64) , var(6) ]
     3591                D[8,64] = (-1)*var(8); // [ var(64) , var(8) ]
     3592                D[9,64] = var(9); // [ var(64) , var(9) ]
     3593                D[10,64] = var(10); // [ var(64) , var(10) ]
     3594                D[11,64] = var(11); // [ var(64) , var(11) ]
     3595                D[12,64] = (-1)*var(12); // [ var(64) , var(12) ]
     3596                D[13,64] = var(13); // [ var(64) , var(13) ]
     3597                D[17,64] = var(17); // [ var(64) , var(17) ]
     3598                D[20,64] = (-1)*var(20); // [ var(64) , var(20) ]
     3599                D[23,64] = (-1)*var(23); // [ var(64) , var(23) ]
     3600                D[24,64] = var(24); // [ var(64) , var(24) ]
     3601                D[25,64] = (-1)*var(25); // [ var(64) , var(25) ]
     3602                D[26,64] = var(26); // [ var(64) , var(26) ]
     3603                D[27,64] = var(27); // [ var(64) , var(27) ]
     3604                D[4,65] = (-1)*var(4); // [ var(65) , var(4) ]
     3605                D[5,65] = (2)*var(5); // [ var(65) , var(5) ]
     3606                D[9,65] = (-1)*var(9); // [ var(65) , var(9) ]
     3607                D[10,65] = var(10); // [ var(65) , var(10) ]
     3608                D[11,65] = (-1)*var(11); // [ var(65) , var(11) ]
     3609                D[13,65] = (-1)*var(13); // [ var(65) , var(13) ]
     3610                D[14,65] = var(14); // [ var(65) , var(14) ]
     3611                D[15,65] = (-1)*var(15); // [ var(65) , var(15) ]
     3612                D[16,65] = var(16); // [ var(65) , var(16) ]
     3613                D[17,65] = (-1)*var(17); // [ var(65) , var(17) ]
     3614                D[18,65] = var(18); // [ var(65) , var(18) ]
     3615                D[19,65] = (-1)*var(19); // [ var(65) , var(19) ]
     3616                D[20,65] = var(20); // [ var(65) , var(20) ]
     3617                D[21,65] = var(21); // [ var(65) , var(21) ]
     3618                D[22,65] = (-1)*var(22); // [ var(65) , var(22) ]
     3619                D[23,65] = var(23); // [ var(65) , var(23) ]
     3620                D[25,65] = var(25); // [ var(65) , var(25) ]
     3621                D[4,66] = (-1)*var(4); // [ var(66) , var(4) ]
     3622                D[6,66] = (2)*var(6); // [ var(66) , var(6) ]
     3623                D[9,66] = (-1)*var(9); // [ var(66) , var(9) ]
     3624                D[10,66] = (-1)*var(10); // [ var(66) , var(10) ]
     3625                D[11,66] = var(11); // [ var(66) , var(11) ]
     3626                D[13,66] = (-1)*var(13); // [ var(66) , var(13) ]
     3627                D[14,66] = (-1)*var(14); // [ var(66) , var(14) ]
     3628                D[15,66] = var(15); // [ var(66) , var(15) ]
     3629                D[16,66] = var(16); // [ var(66) , var(16) ]
     3630                D[17,66] = (-1)*var(17); // [ var(66) , var(17) ]
     3631                D[18,66] = (-1)*var(18); // [ var(66) , var(18) ]
     3632                D[19,66] = var(19); // [ var(66) , var(19) ]
     3633                D[20,66] = var(20); // [ var(66) , var(20) ]
     3634                D[21,66] = (-1)*var(21); // [ var(66) , var(21) ]
     3635                D[22,66] = var(22); // [ var(66) , var(22) ]
     3636                D[23,66] = var(23); // [ var(66) , var(23) ]
     3637                D[25,66] = var(25); // [ var(66) , var(25) ]
     3638        // H(i) * Y(j):
     3639                D[31,61] = (-2)*var(31); // [ var(61) , var(31) ]
     3640                D[32,61] = var(32); // [ var(61) , var(32) ]
     3641                D[37,61] = (-1)*var(37); // [ var(61) , var(37) ]
     3642                D[38,61] = var(38); // [ var(61) , var(38) ]
     3643                D[42,61] = (-1)*var(42); // [ var(61) , var(42) ]
     3644                D[43,61] = var(43); // [ var(61) , var(43) ]
     3645                D[47,61] = (-1)*var(47); // [ var(61) , var(47) ]
     3646                D[48,61] = var(48); // [ var(61) , var(48) ]
     3647                D[49,61] = var(49); // [ var(61) , var(49) ]
     3648                D[51,61] = (-1)*var(51); // [ var(61) , var(51) ]
     3649                D[52,61] = (-1)*var(52); // [ var(61) , var(52) ]
     3650                D[53,61] = var(53); // [ var(61) , var(53) ]
     3651                D[55,61] = (-1)*var(55); // [ var(61) , var(55) ]
     3652                D[56,61] = var(56); // [ var(61) , var(56) ]
     3653                D[57,61] = (-1)*var(57); // [ var(61) , var(57) ]
     3654                D[58,61] = var(58); // [ var(61) , var(58) ]
     3655                D[59,61] = (-1)*var(59); // [ var(61) , var(59) ]
     3656                D[31,62] = var(31); // [ var(62) , var(31) ]
     3657                D[32,62] = (-2)*var(32); // [ var(62) , var(32) ]
     3658                D[33,62] = var(33); // [ var(62) , var(33) ]
     3659                D[37,62] = (-1)*var(37); // [ var(62) , var(37) ]
     3660                D[38,62] = (-1)*var(38); // [ var(62) , var(38) ]
     3661                D[39,62] = var(39); // [ var(62) , var(39) ]
     3662                D[43,62] = (-1)*var(43); // [ var(62) , var(43) ]
     3663                D[44,62] = var(44); // [ var(62) , var(44) ]
     3664                D[45,62] = var(45); // [ var(62) , var(45) ]
     3665                D[48,62] = (-1)*var(48); // [ var(62) , var(48) ]
     3666                D[49,62] = (-1)*var(49); // [ var(62) , var(49) ]
     3667                D[50,62] = var(50); // [ var(62) , var(50) ]
     3668                D[53,62] = (-1)*var(53); // [ var(62) , var(53) ]
     3669                D[54,62] = var(54); // [ var(62) , var(54) ]
     3670                D[56,62] = (-1)*var(56); // [ var(62) , var(56) ]
     3671                D[59,62] = var(59); // [ var(62) , var(59) ]
     3672                D[60,62] = (-1)*var(60); // [ var(62) , var(60) ]
     3673                D[32,63] = var(32); // [ var(63) , var(32) ]
     3674                D[33,63] = (-2)*var(33); // [ var(63) , var(33) ]
     3675                D[34,63] = var(34); // [ var(63) , var(34) ]
     3676                D[37,63] = var(37); // [ var(63) , var(37) ]
     3677                D[38,63] = (-1)*var(38); // [ var(63) , var(38) ]
     3678                D[39,63] = (-1)*var(39); // [ var(63) , var(39) ]
     3679                D[40,63] = var(40); // [ var(63) , var(40) ]
     3680                D[41,63] = var(41); // [ var(63) , var(41) ]
     3681                D[42,63] = (-1)*var(42); // [ var(63) , var(42) ]
     3682                D[44,63] = (-1)*var(44); // [ var(63) , var(44) ]
     3683                D[45,63] = (-1)*var(45); // [ var(63) , var(45) ]
     3684                D[46,63] = var(46); // [ var(63) , var(46) ]
     3685                D[50,63] = (-1)*var(50); // [ var(63) , var(50) ]
     3686                D[56,63] = var(56); // [ var(63) , var(56) ]
     3687                D[57,63] = var(57); // [ var(63) , var(57) ]
     3688                D[58,63] = (-1)*var(58); // [ var(63) , var(58) ]
     3689                D[59,63] = (-1)*var(59); // [ var(63) , var(59) ]
     3690                D[33,64] = var(33); // [ var(64) , var(33) ]
     3691                D[34,64] = (-2)*var(34); // [ var(64) , var(34) ]
     3692                D[35,64] = var(35); // [ var(64) , var(35) ]
     3693                D[36,64] = var(36); // [ var(64) , var(36) ]
     3694                D[38,64] = var(38); // [ var(64) , var(38) ]
     3695                D[39,64] = (-1)*var(39); // [ var(64) , var(39) ]
     3696                D[40,64] = (-1)*var(40); // [ var(64) , var(40) ]
     3697                D[41,64] = (-1)*var(41); // [ var(64) , var(41) ]
     3698                D[42,64] = var(42); // [ var(64) , var(42) ]
     3699                D[43,64] = (-1)*var(43); // [ var(64) , var(43) ]
     3700                D[47,64] = (-1)*var(47); // [ var(64) , var(47) ]
     3701                D[50,64] = var(50); // [ var(64) , var(50) ]
     3702                D[53,64] = var(53); // [ var(64) , var(53) ]
     3703                D[54,64] = (-1)*var(54); // [ var(64) , var(54) ]
     3704                D[55,64] = var(55); // [ var(64) , var(55) ]
     3705                D[56,64] = (-1)*var(56); // [ var(64) , var(56) ]
     3706                D[57,64] = (-1)*var(57); // [ var(64) , var(57) ]
     3707                D[34,65] = var(34); // [ var(65) , var(34) ]
     3708                D[35,65] = (-2)*var(35); // [ var(65) , var(35) ]
     3709                D[39,65] = var(39); // [ var(65) , var(39) ]
     3710                D[40,65] = (-1)*var(40); // [ var(65) , var(40) ]
     3711                D[41,65] = var(41); // [ var(65) , var(41) ]
     3712                D[43,65] = var(43); // [ var(65) , var(43) ]
     3713                D[44,65] = (-1)*var(44); // [ var(65) , var(44) ]
     3714                D[45,65] = var(45); // [ var(65) , var(45) ]
     3715                D[46,65] = (-1)*var(46); // [ var(65) , var(46) ]
     3716                D[47,65] = var(47); // [ var(65) , var(47) ]
     3717                D[48,65] = (-1)*var(48); // [ var(65) , var(48) ]
     3718                D[49,65] = var(49); // [ var(65) , var(49) ]
     3719                D[50,65] = (-1)*var(50); // [ var(65) , var(50) ]
     3720                D[51,65] = (-1)*var(51); // [ var(65) , var(51) ]
     3721                D[52,65] = var(52); // [ var(65) , var(52) ]
     3722                D[53,65] = (-1)*var(53); // [ var(65) , var(53) ]
     3723                D[55,65] = (-1)*var(55); // [ var(65) , var(55) ]
     3724                D[34,66] = var(34); // [ var(66) , var(34) ]
     3725                D[36,66] = (-2)*var(36); // [ var(66) , var(36) ]
     3726                D[39,66] = var(39); // [ var(66) , var(39) ]
     3727                D[40,66] = var(40); // [ var(66) , var(40) ]
     3728                D[41,66] = (-1)*var(41); // [ var(66) , var(41) ]
     3729                D[43,66] = var(43); // [ var(66) , var(43) ]
     3730                D[44,66] = var(44); // [ var(66) , var(44) ]
     3731                D[45,66] = (-1)*var(45); // [ var(66) , var(45) ]
     3732                D[46,66] = (-1)*var(46); // [ var(66) , var(46) ]
     3733                D[47,66] = var(47); // [ var(66) , var(47) ]
     3734                D[48,66] = var(48); // [ var(66) , var(48) ]
     3735                D[49,66] = (-1)*var(49); // [ var(66) , var(49) ]
     3736                D[50,66] = (-1)*var(50); // [ var(66) , var(50) ]
     3737                D[51,66] = var(51); // [ var(66) , var(51) ]
     3738                D[52,66] = (-1)*var(52); // [ var(66) , var(52) ]
     3739                D[53,66] = (-1)*var(53); // [ var(66) , var(53) ]
     3740                D[55,66] = (-1)*var(55); // [ var(66) , var(55) ]
     3741        // Y(i) * X(j):
     3742                D[1,31] = (-1)*var(61); // [ var(31) , var(1) ]
     3743                D[7,31] = (-1)*var(2); // [ var(31) , var(7) ]
     3744                D[12,31] = (-1)*var(8); // [ var(31) , var(12) ]
     3745                D[17,31] = (-1)*var(13); // [ var(31) , var(17) ]
     3746                D[21,31] = (-1)*var(18); // [ var(31) , var(21) ]
     3747                D[22,31] = (-1)*var(19); // [ var(31) , var(22) ]
     3748                D[25,31] = (-1)*var(23); // [ var(31) , var(25) ]
     3749                D[27,31] = (-1)*var(26); // [ var(31) , var(27) ]
     3750                D[29,31] = (-1)*var(28); // [ var(31) , var(29) ]
     3751                D[2,32] = (-1)*var(62); // [ var(32) , var(2) ]
     3752                D[7,32] = var(1); // [ var(32) , var(7) ]
     3753                D[8,32] = (-1)*var(3); // [ var(32) , var(8) ]
     3754                D[13,32] = (-1)*var(9); // [ var(32) , var(13) ]
     3755                D[18,32] = (-1)*var(14); // [ var(32) , var(18) ]
     3756                D[19,32] = (-1)*var(15); // [ var(32) , var(19) ]
     3757                D[23,32] = (-1)*var(20); // [ var(32) , var(23) ]
     3758                D[26,32] = (-1)*var(24); // [ var(32) , var(26) ]
     3759                D[30,32] = (-1)*var(29); // [ var(32) , var(30) ]
     3760                D[3,33] = (-1)*var(63); // [ var(33) , var(3) ]
     3761                D[8,33] = var(2); // [ var(33) , var(8) ]
     3762                D[9,33] = (-1)*var(4); // [ var(33) , var(9) ]
     3763                D[12,33] = var(7); // [ var(33) , var(12) ]
     3764                D[14,33] = (-1)*var(10); // [ var(33) , var(14) ]
     3765                D[15,33] = (-1)*var(11); // [ var(33) , var(15) ]
     3766                D[20,33] = (-1)*var(16); // [ var(33) , var(20) ]
     3767                D[28,33] = (-1)*var(26); // [ var(33) , var(28) ]
     3768                D[29,33] = (-1)*var(27); // [ var(33) , var(29) ]
     3769                D[4,34] = (-1)*var(64); // [ var(34) , var(4) ]
     3770                D[9,34] = var(3); // [ var(34) , var(9) ]
     3771                D[10,34] = (-1)*var(5); // [ var(34) , var(10) ]
     3772                D[11,34] = (-1)*var(6); // [ var(34) , var(11) ]
     3773                D[13,34] = var(8); // [ var(34) , var(13) ]
     3774                D[17,34] = var(12); // [ var(34) , var(17) ]
     3775                D[24,34] = (-1)*var(20); // [ var(34) , var(24) ]
     3776                D[26,34] = (-1)*var(23); // [ var(34) , var(26) ]
     3777                D[27,34] = (-1)*var(25); // [ var(34) , var(27) ]
     3778                D[5,35] = (-1)*var(65); // [ var(35) , var(5) ]
     3779                D[10,35] = var(4); // [ var(35) , var(10) ]
     3780                D[14,35] = var(9); // [ var(35) , var(14) ]
     3781                D[16,35] = var(11); // [ var(35) , var(16) ]
     3782                D[18,35] = var(13); // [ var(35) , var(18) ]
     3783                D[20,35] = var(15); // [ var(35) , var(20) ]
     3784                D[21,35] = var(17); // [ var(35) , var(21) ]
     3785                D[23,35] = var(19); // [ var(35) , var(23) ]
     3786                D[25,35] = var(22); // [ var(35) , var(25) ]
     3787                D[6,36] = (-1)*var(66); // [ var(36) , var(6) ]
     3788                D[11,36] = var(4); // [ var(36) , var(11) ]
     3789                D[15,36] = var(9); // [ var(36) , var(15) ]
     3790                D[16,36] = var(10); // [ var(36) , var(16) ]
     3791                D[19,36] = var(13); // [ var(36) , var(19) ]
     3792                D[20,36] = var(14); // [ var(36) , var(20) ]
     3793                D[22,36] = var(17); // [ var(36) , var(22) ]
     3794                D[23,36] = var(18); // [ var(36) , var(23) ]
     3795                D[25,36] = var(21); // [ var(36) , var(25) ]
     3796                D[1,37] = (-1)*var(32); // [ var(37) , var(1) ]
     3797                D[2,37] = var(31); // [ var(37) , var(2) ]
     3798                D[7,37] = (-1)*var(61)+(-1)*var(62); // [ var(37) , var(7) ]
     3799                D[12,37] = (-1)*var(3); // [ var(37) , var(12) ]
     3800                D[17,37] = (-1)*var(9); // [ var(37) , var(17) ]
     3801                D[21,37] = (-1)*var(14); // [ var(37) , var(21) ]
     3802                D[22,37] = (-1)*var(15); // [ var(37) , var(22) ]
     3803                D[25,37] = (-1)*var(20); // [ var(37) , var(25) ]
     3804                D[27,37] = (-1)*var(24); // [ var(37) , var(27) ]
     3805                D[30,37] = var(28); // [ var(37) , var(30) ]
     3806                D[2,38] = (-1)*var(33); // [ var(38) , var(2) ]
     3807                D[3,38] = var(32); // [ var(38) , var(3) ]
     3808                D[8,38] = (-1)*var(62)+(-1)*var(63); // [ var(38) , var(8) ]
     3809                D[12,38] = var(1); // [ var(38) , var(12) ]
     3810                D[13,38] = (-1)*var(4); // [ var(38) , var(13) ]
     3811                D[18,38] = (-1)*var(10); // [ var(38) , var(18) ]
     3812                D[19,38] = (-1)*var(11); // [ var(38) , var(19) ]
     3813                D[23,38] = (-1)*var(16); // [ var(38) , var(23) ]
     3814                D[28,38] = var(24); // [ var(38) , var(28) ]
     3815                D[30,38] = (-1)*var(27); // [ var(38) , var(30) ]
     3816                D[3,39] = (-1)*var(34); // [ var(39) , var(3) ]
     3817                D[4,39] = var(33); // [ var(39) , var(4) ]
     3818                D[9,39] = (-1)*var(63)+(-1)*var(64); // [ var(39) , var(9) ]
     3819                D[13,39] = var(2); // [ var(39) , var(13) ]
     3820                D[14,39] = (-1)*var(5); // [ var(39) , var(14) ]
     3821                D[15,39] = (-1)*var(6); // [ var(39) , var(15) ]
     3822                D[17,39] = var(7); // [ var(39) , var(17) ]
     3823                D[24,39] = var(16); // [ var(39) , var(24) ]
     3824                D[28,39] = (-1)*var(23); // [ var(39) , var(28) ]
     3825                D[29,39] = (-1)*var(25); // [ var(39) , var(29) ]
     3826                D[4,40] = (-1)*var(35); // [ var(40) , var(4) ]
     3827                D[5,40] = var(34); // [ var(40) , var(5) ]
     3828                D[10,40] = (-1)*var(64)+(-1)*var(65); // [ var(40) , var(10) ]
     3829                D[14,40] = var(3); // [ var(40) , var(14) ]
     3830                D[16,40] = (-1)*var(6); // [ var(40) , var(16) ]
     3831                D[18,40] = var(8); // [ var(40) , var(18) ]
     3832                D[21,40] = var(12); // [ var(40) , var(21) ]
     3833                D[24,40] = var(15); // [ var(40) , var(24) ]
     3834                D[26,40] = var(19); // [ var(40) , var(26) ]
     3835                D[27,40] = var(22); // [ var(40) , var(27) ]
     3836                D[4,41] = (-1)*var(36); // [ var(41) , var(4) ]
     3837                D[6,41] = var(34); // [ var(41) , var(6) ]
     3838                D[11,41] = (-1)*var(64)+(-1)*var(66); // [ var(41) , var(11) ]
     3839                D[15,41] = var(3); // [ var(41) , var(15) ]
     3840                D[16,41] = (-1)*var(5); // [ var(41) , var(16) ]
     3841                D[19,41] = var(8); // [ var(41) , var(19) ]
     3842                D[22,41] = var(12); // [ var(41) , var(22) ]
     3843                D[24,41] = var(14); // [ var(41) , var(24) ]
     3844                D[26,41] = var(18); // [ var(41) , var(26) ]
     3845                D[27,41] = var(21); // [ var(41) , var(27) ]
     3846                D[1,42] = (-1)*var(38); // [ var(42) , var(1) ]
     3847                D[3,42] = var(37); // [ var(42) , var(3) ]
     3848                D[7,42] = (-1)*var(33); // [ var(42) , var(7) ]
     3849                D[8,42] = var(31); // [ var(42) , var(8) ]
     3850                D[12,42] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63); // [ var(42) , var(12) ]
     3851                D[17,42] = (-1)*var(4); // [ var(42) , var(17) ]
     3852                D[21,42] = (-1)*var(10); // [ var(42) , var(21) ]
     3853                D[22,42] = (-1)*var(11); // [ var(42) , var(22) ]
     3854                D[25,42] = (-1)*var(16); // [ var(42) , var(25) ]
     3855                D[29,42] = var(24); // [ var(42) , var(29) ]
     3856                D[30,42] = var(26); // [ var(42) , var(30) ]
     3857                D[2,43] = (-1)*var(39); // [ var(43) , var(2) ]
     3858                D[4,43] = var(38); // [ var(43) , var(4) ]
     3859                D[8,43] = (-1)*var(34); // [ var(43) , var(8) ]
     3860                D[9,43] = var(32); // [ var(43) , var(9) ]
     3861                D[13,43] = (-1)*var(62)+(-1)*var(63)+(-1)*var(64); // [ var(43) , var(13) ]
     3862                D[17,43] = var(1); // [ var(43) , var(17) ]
     3863                D[18,43] = (-1)*var(5); // [ var(43) , var(18) ]
     3864                D[19,43] = (-1)*var(6); // [ var(43) , var(19) ]
     3865                D[26,43] = var(16); // [ var(43) , var(26) ]
     3866                D[28,43] = var(20); // [ var(43) , var(28) ]
     3867                D[30,43] = (-1)*var(25); // [ var(43) , var(30) ]
     3868                D[3,44] = (-1)*var(40); // [ var(44) , var(3) ]
     3869                D[5,44] = var(39); // [ var(44) , var(5) ]
     3870                D[9,44] = (-1)*var(35); // [ var(44) , var(9) ]
     3871                D[10,44] = var(33); // [ var(44) , var(10) ]
     3872                D[14,44] = (-1)*var(63)+(-1)*var(64)+(-1)*var(65); // [ var(44) , var(14) ]
     3873                D[18,44] = var(2); // [ var(44) , var(18) ]
     3874                D[20,44] = (-1)*var(6); // [ var(44) , var(20) ]
     3875                D[21,44] = var(7); // [ var(44) , var(21) ]
     3876                D[24,44] = (-1)*var(11); // [ var(44) , var(24) ]
     3877                D[28,44] = var(19); // [ var(44) , var(28) ]
     3878                D[29,44] = var(22); // [ var(44) , var(29) ]
     3879                D[3,45] = (-1)*var(41); // [ var(45) , var(3) ]
     3880                D[6,45] = var(39); // [ var(45) , var(6) ]
     3881                D[9,45] = (-1)*var(36); // [ var(45) , var(9) ]
     3882                D[11,45] = var(33); // [ var(45) , var(11) ]
     3883                D[15,45] = (-1)*var(63)+(-1)*var(64)+(-1)*var(66); // [ var(45) , var(15) ]
     3884                D[19,45] = var(2); // [ var(45) , var(19) ]
     3885                D[20,45] = (-1)*var(5); // [ var(45) , var(20) ]
     3886                D[22,45] = var(7); // [ var(45) , var(22) ]
     3887                D[24,45] = (-1)*var(10); // [ var(45) , var(24) ]
     3888                D[28,45] = var(18); // [ var(45) , var(28) ]
     3889                D[29,45] = var(21); // [ var(45) , var(29) ]
     3890                D[5,46] = var(41); // [ var(46) , var(5) ]
     3891                D[6,46] = var(40); // [ var(46) , var(6) ]
     3892                D[10,46] = (-1)*var(36); // [ var(46) , var(10) ]
     3893                D[11,46] = (-1)*var(35); // [ var(46) , var(11) ]
     3894                D[16,46] = (-1)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(46) , var(16) ]
     3895                D[20,46] = var(3); // [ var(46) , var(20) ]
     3896                D[23,46] = var(8); // [ var(46) , var(23) ]
     3897                D[24,46] = (-1)*var(9); // [ var(46) , var(24) ]
     3898                D[25,46] = var(12); // [ var(46) , var(25) ]
     3899                D[26,46] = (-1)*var(13); // [ var(46) , var(26) ]
     3900                D[27,46] = (-1)*var(17); // [ var(46) , var(27) ]
     3901                D[1,47] = (-1)*var(43); // [ var(47) , var(1) ]
     3902                D[4,47] = var(42); // [ var(47) , var(4) ]
     3903                D[7,47] = (-1)*var(39); // [ var(47) , var(7) ]
     3904                D[9,47] = var(37); // [ var(47) , var(9) ]
     3905                D[12,47] = (-1)*var(34); // [ var(47) , var(12) ]
     3906                D[13,47] = var(31); // [ var(47) , var(13) ]
     3907                D[17,47] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63)+(-1)*var(64); // [ var(47) , var(17) ]
     3908                D[21,47] = (-1)*var(5); // [ var(47) , var(21) ]
     3909                D[22,47] = (-1)*var(6); // [ var(47) , var(22) ]
     3910                D[27,47] = var(16); // [ var(47) , var(27) ]
     3911                D[29,47] = var(20); // [ var(47) , var(29) ]
     3912                D[30,47] = var(23); // [ var(47) , var(30) ]
     3913                D[2,48] = (-1)*var(44); // [ var(48) , var(2) ]
     3914                D[5,48] = var(43); // [ var(48) , var(5) ]
     3915                D[8,48] = (-1)*var(40); // [ var(48) , var(8) ]
     3916                D[10,48] = var(38); // [ var(48) , var(10) ]
     3917                D[13,48] = (-1)*var(35); // [ var(48) , var(13) ]
     3918                D[14,48] = var(32); // [ var(48) , var(14) ]
     3919                D[18,48] = (-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(65); // [ var(48) , var(18) ]
     3920                D[21,48] = var(1); // [ var(48) , var(21) ]
     3921                D[23,48] = (-1)*var(6); // [ var(48) , var(23) ]
     3922                D[26,48] = (-1)*var(11); // [ var(48) , var(26) ]
     3923                D[28,48] = (-1)*var(15); // [ var(48) , var(28) ]
     3924                D[30,48] = var(22); // [ var(48) , var(30) ]
     3925                D[2,49] = (-1)*var(45); // [ var(49) , var(2) ]
     3926                D[6,49] = var(43); // [ var(49) , var(6) ]
     3927                D[8,49] = (-1)*var(41); // [ var(49) , var(8) ]
     3928                D[11,49] = var(38); // [ var(49) , var(11) ]
     3929                D[13,49] = (-1)*var(36); // [ var(49) , var(13) ]
     3930                D[15,49] = var(32); // [ var(49) , var(15) ]
     3931                D[19,49] = (-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(66); // [ var(49) , var(19) ]
     3932                D[22,49] = var(1); // [ var(49) , var(22) ]
     3933                D[23,49] = (-1)*var(5); // [ var(49) , var(23) ]
     3934                D[26,49] = (-1)*var(10); // [ var(49) , var(26) ]
     3935                D[28,49] = (-1)*var(14); // [ var(49) , var(28) ]
     3936                D[30,49] = var(21); // [ var(49) , var(30) ]
     3937                D[3,50] = (-1)*var(46); // [ var(50) , var(3) ]
     3938                D[5,50] = var(45); // [ var(50) , var(5) ]
     3939                D[6,50] = var(44); // [ var(50) , var(6) ]
     3940                D[14,50] = (-1)*var(36); // [ var(50) , var(14) ]
     3941                D[15,50] = (-1)*var(35); // [ var(50) , var(15) ]
     3942                D[16,50] = var(33); // [ var(50) , var(16) ]
     3943                D[20,50] = (-1)*var(63)+(-1)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(50) , var(20) ]
     3944                D[23,50] = var(2); // [ var(50) , var(23) ]
     3945                D[24,50] = var(4); // [ var(50) , var(24) ]
     3946                D[25,50] = var(7); // [ var(50) , var(25) ]
     3947                D[28,50] = (-1)*var(13); // [ var(50) , var(28) ]
     3948                D[29,50] = (-1)*var(17); // [ var(50) , var(29) ]
     3949                D[1,51] = (-1)*var(48); // [ var(51) , var(1) ]
     3950                D[5,51] = var(47); // [ var(51) , var(5) ]
     3951                D[7,51] = (-1)*var(44); // [ var(51) , var(7) ]
     3952                D[10,51] = var(42); // [ var(51) , var(10) ]
     3953                D[12,51] = (-1)*var(40); // [ var(51) , var(12) ]
     3954                D[14,51] = var(37); // [ var(51) , var(14) ]
     3955                D[17,51] = (-1)*var(35); // [ var(51) , var(17) ]
     3956                D[18,51] = var(31); // [ var(51) , var(18) ]
     3957                D[21,51] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(65); // [ var(51) , var(21) ]
     3958                D[25,51] = (-1)*var(6); // [ var(51) , var(25) ]
     3959                D[27,51] = (-1)*var(11); // [ var(51) , var(27) ]
     3960                D[29,51] = (-1)*var(15); // [ var(51) , var(29) ]
     3961                D[30,51] = (-1)*var(19); // [ var(51) , var(30) ]
     3962                D[1,52] = (-1)*var(49); // [ var(52) , var(1) ]
     3963                D[6,52] = var(47); // [ var(52) , var(6) ]
     3964                D[7,52] = (-1)*var(45); // [ var(52) , var(7) ]
     3965                D[11,52] = var(42); // [ var(52) , var(11) ]
     3966                D[12,52] = (-1)*var(41); // [ var(52) , var(12) ]
     3967                D[15,52] = var(37); // [ var(52) , var(15) ]
     3968                D[17,52] = (-1)*var(36); // [ var(52) , var(17) ]
     3969                D[19,52] = var(31); // [ var(52) , var(19) ]
     3970                D[22,52] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(66); // [ var(52) , var(22) ]
     3971                D[25,52] = (-1)*var(5); // [ var(52) , var(25) ]
     3972                D[27,52] = (-1)*var(10); // [ var(52) , var(27) ]
     3973                D[29,52] = (-1)*var(14); // [ var(52) , var(29) ]
     3974                D[30,52] = (-1)*var(18); // [ var(52) , var(30) ]
     3975                D[2,53] = (-1)*var(50); // [ var(53) , var(2) ]
     3976                D[5,53] = var(49); // [ var(53) , var(5) ]
     3977                D[6,53] = var(48); // [ var(53) , var(6) ]
     3978                D[8,53] = (-1)*var(46); // [ var(53) , var(8) ]
     3979                D[16,53] = var(38); // [ var(53) , var(16) ]
     3980                D[18,53] = (-1)*var(36); // [ var(53) , var(18) ]
     3981                D[19,53] = (-1)*var(35); // [ var(53) , var(19) ]
     3982                D[20,53] = var(32); // [ var(53) , var(20) ]
     3983                D[23,53] = (-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(53) , var(23) ]
     3984                D[25,53] = var(1); // [ var(53) , var(25) ]
     3985                D[26,53] = var(4); // [ var(53) , var(26) ]
     3986                D[28,53] = var(9); // [ var(53) , var(28) ]
     3987                D[30,53] = (-1)*var(17); // [ var(53) , var(30) ]
     3988                D[4,54] = (-1)*var(50); // [ var(54) , var(4) ]
     3989                D[9,54] = var(46); // [ var(54) , var(9) ]
     3990                D[10,54] = var(45); // [ var(54) , var(10) ]
     3991                D[11,54] = var(44); // [ var(54) , var(11) ]
     3992                D[14,54] = (-1)*var(41); // [ var(54) , var(14) ]
     3993                D[15,54] = (-1)*var(40); // [ var(54) , var(15) ]
     3994                D[16,54] = (-1)*var(39); // [ var(54) , var(16) ]
     3995                D[20,54] = var(34); // [ var(54) , var(20) ]
     3996                D[24,54] = (-1)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(54) , var(24) ]
     3997                D[26,54] = var(2); // [ var(54) , var(26) ]
     3998                D[27,54] = var(7); // [ var(54) , var(27) ]
     3999                D[28,54] = (-1)*var(8); // [ var(54) , var(28) ]
     4000                D[29,54] = (-1)*var(12); // [ var(54) , var(29) ]
     4001                D[1,55] = (-1)*var(53); // [ var(55) , var(1) ]
     4002                D[5,55] = var(52); // [ var(55) , var(5) ]
     4003                D[6,55] = var(51); // [ var(55) , var(6) ]
     4004                D[7,55] = (-1)*var(50); // [ var(55) , var(7) ]
     4005                D[12,55] = (-1)*var(46); // [ var(55) , var(12) ]
     4006                D[16,55] = var(42); // [ var(55) , var(16) ]
     4007                D[20,55] = var(37); // [ var(55) , var(20) ]
     4008                D[21,55] = (-1)*var(36); // [ var(55) , var(21) ]
     4009                D[22,55] = (-1)*var(35); // [ var(55) , var(22) ]
     4010                D[23,55] = var(31); // [ var(55) , var(23) ]
     4011                D[25,55] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63)+(-1)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(55) , var(25) ]
     4012                D[27,55] = var(4); // [ var(55) , var(27) ]
     4013                D[29,55] = var(9); // [ var(55) , var(29) ]
     4014                D[30,55] = var(13); // [ var(55) , var(30) ]
     4015                D[2,56] = (-1)*var(54); // [ var(56) , var(2) ]
     4016                D[4,56] = (-1)*var(53); // [ var(56) , var(4) ]
     4017                D[10,56] = var(49); // [ var(56) , var(10) ]
     4018                D[11,56] = var(48); // [ var(56) , var(11) ]
     4019                D[13,56] = var(46); // [ var(56) , var(13) ]
     4020                D[16,56] = (-1)*var(43); // [ var(56) , var(16) ]
     4021                D[18,56] = (-1)*var(41); // [ var(56) , var(18) ]
     4022                D[19,56] = (-1)*var(40); // [ var(56) , var(19) ]
     4023                D[23,56] = var(34); // [ var(56) , var(23) ]
     4024                D[24,56] = var(32); // [ var(56) , var(24) ]
     4025                D[26,56] = (-1)*var(62)+(-1)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(56) , var(26) ]
     4026                D[27,56] = var(1); // [ var(56) , var(27) ]
     4027                D[28,56] = var(3); // [ var(56) , var(28) ]
     4028                D[30,56] = (-1)*var(12); // [ var(56) , var(30) ]
     4029                D[1,57] = (-1)*var(56); // [ var(57) , var(1) ]
     4030                D[4,57] = (-1)*var(55); // [ var(57) , var(4) ]
     4031                D[7,57] = (-1)*var(54); // [ var(57) , var(7) ]
     4032                D[10,57] = var(52); // [ var(57) , var(10) ]
     4033                D[11,57] = var(51); // [ var(57) , var(11) ]
     4034                D[16,57] = (-1)*var(47); // [ var(57) , var(16) ]
     4035                D[17,57] = var(46); // [ var(57) , var(17) ]
     4036                D[21,57] = (-1)*var(41); // [ var(57) , var(21) ]
     4037                D[22,57] = (-1)*var(40); // [ var(57) , var(22) ]
     4038                D[24,57] = var(37); // [ var(57) , var(24) ]
     4039                D[25,57] = var(34); // [ var(57) , var(25) ]
     4040                D[26,57] = var(31); // [ var(57) , var(26) ]
     4041                D[27,57] = (-1)*var(61)+(-1)*var(62)+(-1)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(57) , var(27) ]
     4042                D[29,57] = var(3); // [ var(57) , var(29) ]
     4043                D[30,57] = var(8); // [ var(57) , var(30) ]
     4044                D[3,58] = (-1)*var(56); // [ var(58) , var(3) ]
     4045                D[8,58] = var(54); // [ var(58) , var(8) ]
     4046                D[9,58] = (-1)*var(53); // [ var(58) , var(9) ]
     4047                D[13,58] = var(50); // [ var(58) , var(13) ]
     4048                D[14,58] = var(49); // [ var(58) , var(14) ]
     4049                D[15,58] = var(48); // [ var(58) , var(15) ]
     4050                D[18,58] = (-1)*var(45); // [ var(58) , var(18) ]
     4051                D[19,58] = (-1)*var(44); // [ var(58) , var(19) ]
     4052                D[20,58] = (-1)*var(43); // [ var(58) , var(20) ]
     4053                D[23,58] = var(39); // [ var(58) , var(23) ]
     4054                D[24,58] = (-1)*var(38); // [ var(58) , var(24) ]
     4055                D[26,58] = var(33); // [ var(58) , var(26) ]
     4056                D[28,58] = (-1)*var(62)+(-2)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(58) , var(28) ]
     4057                D[29,58] = var(1); // [ var(58) , var(29) ]
     4058                D[30,58] = (-1)*var(7); // [ var(58) , var(30) ]
     4059                D[1,59] = (-1)*var(58); // [ var(59) , var(1) ]
     4060                D[3,59] = (-1)*var(57); // [ var(59) , var(3) ]
     4061                D[9,59] = (-1)*var(55); // [ var(59) , var(9) ]
     4062                D[12,59] = var(54); // [ var(59) , var(12) ]
     4063                D[14,59] = var(52); // [ var(59) , var(14) ]
     4064                D[15,59] = var(51); // [ var(59) , var(15) ]
     4065                D[17,59] = var(50); // [ var(59) , var(17) ]
     4066                D[20,59] = (-1)*var(47); // [ var(59) , var(20) ]
     4067                D[21,59] = (-1)*var(45); // [ var(59) , var(21) ]
     4068                D[22,59] = (-1)*var(44); // [ var(59) , var(22) ]
     4069                D[24,59] = (-1)*var(42); // [ var(59) , var(24) ]
     4070                D[25,59] = var(39); // [ var(59) , var(25) ]
     4071                D[27,59] = var(33); // [ var(59) , var(27) ]
     4072                D[28,59] = var(31); // [ var(59) , var(28) ]
     4073                D[29,59] = (-1)*var(61)+(-1)*var(62)+(-2)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(59) , var(29) ]
     4074                D[30,59] = var(2); // [ var(59) , var(30) ]
     4075                D[2,60] = (-1)*var(59); // [ var(60) , var(2) ]
     4076                D[7,60] = var(58); // [ var(60) , var(7) ]
     4077                D[8,60] = (-1)*var(57); // [ var(60) , var(8) ]
     4078                D[12,60] = var(56); // [ var(60) , var(12) ]
     4079                D[13,60] = (-1)*var(55); // [ var(60) , var(13) ]
     4080                D[17,60] = var(53); // [ var(60) , var(17) ]
     4081                D[18,60] = var(52); // [ var(60) , var(18) ]
     4082                D[19,60] = var(51); // [ var(60) , var(19) ]
     4083                D[21,60] = (-1)*var(49); // [ var(60) , var(21) ]
     4084                D[22,60] = (-1)*var(48); // [ var(60) , var(22) ]
     4085                D[23,60] = (-1)*var(47); // [ var(60) , var(23) ]
     4086                D[25,60] = var(43); // [ var(60) , var(25) ]
     4087                D[26,60] = (-1)*var(42); // [ var(60) , var(26) ]
     4088                D[27,60] = var(38); // [ var(60) , var(27) ]
     4089                D[28,60] = (-1)*var(37); // [ var(60) , var(28) ]
     4090                D[29,60] = var(32); // [ var(60) , var(29) ]
     4091                D[30,60] = (-1)*var(61)+(-2)*var(62)+(-2)*var(63)+(-2)*var(64)+(-1)*var(65)+(-1)*var(66); // [ var(60) , var(30) ]
     4092        // X(i) * X(j):
     4093                D[1,2] = var(7); // [ var(2) , var(1) ]
     4094                D[1,8] = var(12); // [ var(8) , var(1) ]
     4095                D[1,13] = var(17); // [ var(13) , var(1) ]
     4096                D[1,18] = var(21); // [ var(18) , var(1) ]
     4097                D[1,19] = var(22); // [ var(19) , var(1) ]
     4098                D[1,23] = var(25); // [ var(23) , var(1) ]
     4099                D[1,26] = var(27); // [ var(26) , var(1) ]
     4100                D[1,28] = var(29); // [ var(28) , var(1) ]
     4101                D[2,3] = var(8); // [ var(3) , var(2) ]
     4102                D[2,9] = var(13); // [ var(9) , var(2) ]
     4103                D[2,14] = var(18); // [ var(14) , var(2) ]
     4104                D[2,15] = var(19); // [ var(15) , var(2) ]
     4105                D[2,20] = var(23); // [ var(20) , var(2) ]
     4106                D[2,24] = var(26); // [ var(24) , var(2) ]
     4107                D[2,29] = var(30); // [ var(29) , var(2) ]
     4108                D[3,4] = var(9); // [ var(4) , var(3) ]
     4109                D[3,7] = (-1)*var(12); // [ var(7) , var(3) ]
     4110                D[3,10] = var(14); // [ var(10) , var(3) ]
     4111                D[3,11] = var(15); // [ var(11) , var(3) ]
     4112                D[3,16] = var(20); // [ var(16) , var(3) ]
     4113                D[3,26] = var(28); // [ var(26) , var(3) ]
     4114                D[3,27] = var(29); // [ var(27) , var(3) ]
     4115                D[4,5] = var(10); // [ var(5) , var(4) ]
     4116                D[4,6] = var(11); // [ var(6) , var(4) ]
     4117                D[4,8] = (-1)*var(13); // [ var(8) , var(4) ]
     4118                D[4,12] = (-1)*var(17); // [ var(12) , var(4) ]
     4119                D[4,20] = var(24); // [ var(20) , var(4) ]
     4120                D[4,23] = var(26); // [ var(23) , var(4) ]
     4121                D[4,25] = var(27); // [ var(25) , var(4) ]
     4122                D[5,9] = (-1)*var(14); // [ var(9) , var(5) ]
     4123                D[5,11] = (-1)*var(16); // [ var(11) , var(5) ]
     4124                D[5,13] = (-1)*var(18); // [ var(13) , var(5) ]
     4125                D[5,15] = (-1)*var(20); // [ var(15) , var(5) ]
     4126                D[5,17] = (-1)*var(21); // [ var(17) , var(5) ]
     4127                D[5,19] = (-1)*var(23); // [ var(19) , var(5) ]
     4128                D[5,22] = (-1)*var(25); // [ var(22) , var(5) ]
     4129                D[6,9] = (-1)*var(15); // [ var(9) , var(6) ]
     4130                D[6,10] = (-1)*var(16); // [ var(10) , var(6) ]
     4131                D[6,13] = (-1)*var(19); // [ var(13) , var(6) ]
     4132                D[6,14] = (-1)*var(20); // [ var(14) , var(6) ]
     4133                D[6,17] = (-1)*var(22); // [ var(17) , var(6) ]
     4134                D[6,18] = (-1)*var(23); // [ var(18) , var(6) ]
     4135                D[6,21] = (-1)*var(25); // [ var(21) , var(6) ]
     4136                D[7,9] = var(17); // [ var(9) , var(7) ]
     4137                D[7,14] = var(21); // [ var(14) , var(7) ]
     4138                D[7,15] = var(22); // [ var(15) , var(7) ]
     4139                D[7,20] = var(25); // [ var(20) , var(7) ]
     4140                D[7,24] = var(27); // [ var(24) , var(7) ]
     4141                D[7,28] = (-1)*var(30); // [ var(28) , var(7) ]
     4142                D[8,10] = var(18); // [ var(10) , var(8) ]
     4143                D[8,11] = var(19); // [ var(11) , var(8) ]
     4144                D[8,16] = var(23); // [ var(16) , var(8) ]
     4145                D[8,24] = (-1)*var(28); // [ var(24) , var(8) ]
     4146                D[8,27] = var(30); // [ var(27) , var(8) ]
     4147                D[9,16] = (-1)*var(24); // [ var(16) , var(9) ]
     4148                D[9,23] = var(28); // [ var(23) , var(9) ]
     4149                D[9,25] = var(29); // [ var(25) , var(9) ]
     4150                D[10,12] = (-1)*var(21); // [ var(12) , var(10) ]
     4151                D[10,15] = (-1)*var(24); // [ var(15) , var(10) ]
     4152                D[10,19] = (-1)*var(26); // [ var(19) , var(10) ]
     4153                D[10,22] = (-1)*var(27); // [ var(22) , var(10) ]
     4154                D[11,12] = (-1)*var(22); // [ var(12) , var(11) ]
     4155                D[11,14] = (-1)*var(24); // [ var(14) , var(11) ]
     4156                D[11,18] = (-1)*var(26); // [ var(18) , var(11) ]
     4157                D[11,21] = (-1)*var(27); // [ var(21) , var(11) ]
     4158                D[12,16] = var(25); // [ var(16) , var(12) ]
     4159                D[12,24] = (-1)*var(29); // [ var(24) , var(12) ]
     4160                D[12,26] = (-1)*var(30); // [ var(26) , var(12) ]
     4161                D[13,16] = (-1)*var(26); // [ var(16) , var(13) ]
     4162                D[13,20] = (-1)*var(28); // [ var(20) , var(13) ]
     4163                D[13,25] = var(30); // [ var(25) , var(13) ]
     4164                D[14,19] = (-1)*var(28); // [ var(19) , var(14) ]
     4165                D[14,22] = (-1)*var(29); // [ var(22) , var(14) ]
     4166                D[15,18] = (-1)*var(28); // [ var(18) , var(15) ]
     4167                D[15,21] = (-1)*var(29); // [ var(21) , var(15) ]
     4168                D[16,17] = var(27); // [ var(17) , var(16) ]
     4169                D[17,20] = (-1)*var(29); // [ var(20) , var(17) ]
     4170                D[17,23] = (-1)*var(30); // [ var(23) , var(17) ]
     4171                D[18,22] = (-1)*var(30); // [ var(22) , var(18) ]
     4172                D[19,21] = (-1)*var(30); // [ var(21) , var(19) ]
     4173        // Y(i) * Y(j):
     4174                D[31,32] = (-1)*var(37); // [ var(32) , var(31) ]
     4175                D[31,38] = (-1)*var(42); // [ var(38) , var(31) ]
     4176                D[31,43] = (-1)*var(47); // [ var(43) , var(31) ]
     4177                D[31,48] = (-1)*var(51); // [ var(48) , var(31) ]
     4178                D[31,49] = (-1)*var(52); // [ var(49) , var(31) ]
     4179                D[31,53] = (-1)*var(55); // [ var(53) , var(31) ]
     4180                D[31,56] = (-1)*var(57); // [ var(56) , var(31) ]
     4181                D[31,58] = (-1)*var(59); // [ var(58) , var(31) ]
     4182                D[32,33] = (-1)*var(38); // [ var(33) , var(32) ]
     4183                D[32,39] = (-1)*var(43); // [ var(39) , var(32) ]
     4184                D[32,44] = (-1)*var(48); // [ var(44) , var(32) ]
     4185                D[32,45] = (-1)*var(49); // [ var(45) , var(32) ]
     4186                D[32,50] = (-1)*var(53); // [ var(50) , var(32) ]
     4187                D[32,54] = (-1)*var(56); // [ var(54) , var(32) ]
     4188                D[32,59] = (-1)*var(60); // [ var(59) , var(32) ]
     4189                D[33,34] = (-1)*var(39); // [ var(34) , var(33) ]
     4190                D[33,37] = var(42); // [ var(37) , var(33) ]
     4191                D[33,40] = (-1)*var(44); // [ var(40) , var(33) ]
     4192                D[33,41] = (-1)*var(45); // [ var(41) , var(33) ]
     4193                D[33,46] = (-1)*var(50); // [ var(46) , var(33) ]
     4194                D[33,56] = (-1)*var(58); // [ var(56) , var(33) ]
     4195                D[33,57] = (-1)*var(59); // [ var(57) , var(33) ]
     4196                D[34,35] = (-1)*var(40); // [ var(35) , var(34) ]
     4197                D[34,36] = (-1)*var(41); // [ var(36) , var(34) ]
     4198                D[34,38] = var(43); // [ var(38) , var(34) ]
     4199                D[34,42] = var(47); // [ var(42) , var(34) ]
     4200                D[34,50] = (-1)*var(54); // [ var(50) , var(34) ]
     4201                D[34,53] = (-1)*var(56); // [ var(53) , var(34) ]
     4202                D[34,55] = (-1)*var(57); // [ var(55) , var(34) ]
     4203                D[35,39] = var(44); // [ var(39) , var(35) ]
     4204                D[35,41] = var(46); // [ var(41) , var(35) ]
     4205                D[35,43] = var(48); // [ var(43) , var(35) ]
     4206                D[35,45] = var(50); // [ var(45) , var(35) ]
     4207                D[35,47] = var(51); // [ var(47) , var(35) ]
     4208                D[35,49] = var(53); // [ var(49) , var(35) ]
     4209                D[35,52] = var(55); // [ var(52) , var(35) ]
     4210                D[36,39] = var(45); // [ var(39) , var(36) ]
     4211                D[36,40] = var(46); // [ var(40) , var(36) ]
     4212                D[36,43] = var(49); // [ var(43) , var(36) ]
     4213                D[36,44] = var(50); // [ var(44) , var(36) ]
     4214                D[36,47] = var(52); // [ var(47) , var(36) ]
     4215                D[36,48] = var(53); // [ var(48) , var(36) ]
     4216                D[36,51] = var(55); // [ var(51) , var(36) ]
     4217                D[37,39] = (-1)*var(47); // [ var(39) , var(37) ]
     4218                D[37,44] = (-1)*var(51); // [ var(44) , var(37) ]
     4219                D[37,45] = (-1)*var(52); // [ var(45) , var(37) ]
     4220                D[37,50] = (-1)*var(55); // [ var(50) , var(37) ]
     4221                D[37,54] = (-1)*var(57); // [ var(54) , var(37) ]
     4222                D[37,58] = var(60); // [ var(58) , var(37) ]
     4223                D[38,40] = (-1)*var(48); // [ var(40) , var(38) ]
     4224                D[38,41] = (-1)*var(49); // [ var(41) , var(38) ]
     4225                D[38,46] = (-1)*var(53); // [ var(46) , var(38) ]
     4226                D[38,54] = var(58); // [ var(54) , var(38) ]
     4227                D[38,57] = (-1)*var(60); // [ var(57) , var(38) ]
     4228                D[39,46] = var(54); // [ var(46) , var(39) ]
     4229                D[39,53] = (-1)*var(58); // [ var(53) , var(39) ]
     4230                D[39,55] = (-1)*var(59); // [ var(55) , var(39) ]
     4231                D[40,42] = var(51); // [ var(42) , var(40) ]
     4232                D[40,45] = var(54); // [ var(45) , var(40) ]
     4233                D[40,49] = var(56); // [ var(49) , var(40) ]
     4234                D[40,52] = var(57); // [ var(52) , var(40) ]
     4235                D[41,42] = var(52); // [ var(42) , var(41) ]
     4236                D[41,44] = var(54); // [ var(44) , var(41) ]
     4237                D[41,48] = var(56); // [ var(48) , var(41) ]
     4238                D[41,51] = var(57); // [ var(51) , var(41) ]
     4239                D[42,46] = (-1)*var(55); // [ var(46) , var(42) ]
     4240                D[42,54] = var(59); // [ var(54) , var(42) ]
     4241                D[42,56] = var(60); // [ var(56) , var(42) ]
     4242                D[43,46] = var(56); // [ var(46) , var(43) ]
     4243                D[43,50] = var(58); // [ var(50) , var(43) ]
     4244                D[43,55] = (-1)*var(60); // [ var(55) , var(43) ]
     4245                D[44,49] = var(58); // [ var(49) , var(44) ]
     4246                D[44,52] = var(59); // [ var(52) , var(44) ]
     4247                D[45,48] = var(58); // [ var(48) , var(45) ]
     4248                D[45,51] = var(59); // [ var(51) , var(45) ]
     4249                D[46,47] = (-1)*var(57); // [ var(47) , var(46) ]
     4250                D[47,50] = var(59); // [ var(50) , var(47) ]
     4251                D[47,53] = var(60); // [ var(53) , var(47) ]
     4252                D[48,52] = var(60); // [ var(52) , var(48) ]
     4253                D[49,51] = var(60); // [ var(51) , var(49) ]
     4254   ncalgebra(1,D);
     4255   return(@@@rrr);
     4256}
     4257example
     4258{ "EXAMPLE:"; echo = 2;
     4259   def ncAlgebra = makeUso12();
     4260   setring ncAlgebra;
     4261   ncAlgebra;
     4262}
     4263////////////////////////////////////////////////////////////////////
     4264
     4265// Algebra: f4(Q) has the type: F4, and defined by:
     4266
     4267proc makeUf4(list #)
     4268"USAGE:   makeUf4([p]); p an optional integer (field characteristic)
     4269RETURN:  a ring, describing U(f_4)
     4270NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(f_4) is derived from the Chevalley representation of f_4, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     4271SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUe8
     4272EXAMPLE: example makeUf4; shows examples
     4273"
     4274{
     4275   int @p = defInt(#);
     4276
     4277   ring @@@rrr = @p,(X(1..24),Y(1..24),H(1..4)),dp;
     4278   int N = nvars(@@@rrr);
     4279   matrix D[N][N]=0;
     4280
     4281        // H(i) * X(j):
     4282                D[1,49] = (2)*var(1); // [ var(49) , var(1) ]
     4283                D[3,49] = (-1)*var(3); // [ var(49) , var(3) ]
     4284                D[5,49] = var(5); // [ var(49) , var(5) ]
     4285                D[7,49] = (-1)*var(7); // [ var(49) , var(7) ]
     4286                D[8,49] = var(8); // [ var(49) , var(8) ]
     4287                D[9,49] = (-1)*var(9); // [ var(49) , var(9) ]
     4288                D[10,49] = (-2)*var(10); // [ var(49) , var(10) ]
     4289                D[11,49] = var(11); // [ var(49) , var(11) ]
     4290                D[13,49] = (-2)*var(13); // [ var(49) , var(13) ]
     4291                D[15,49] = (2)*var(15); // [ var(49) , var(15) ]
     4292                D[16,49] = (-2)*var(16); // [ var(49) , var(16) ]
     4293                D[18,49] = (2)*var(18); // [ var(49) , var(18) ]
     4294                D[19,49] = (-1)*var(19); // [ var(49) , var(19) ]
     4295                D[20,49] = (2)*var(20); // [ var(49) , var(20) ]
     4296                D[21,49] = var(21); // [ var(49) , var(21) ]
     4297                D[2,50] = (2)*var(2); // [ var(50) , var(2) ]
     4298                D[4,50] = (-1)*var(4); // [ var(50) , var(4) ]
     4299                D[6,50] = var(6); // [ var(50) , var(6) ]
     4300                D[7,50] = (-1)*var(7); // [ var(50) , var(7) ]
     4301                D[8,50] = (-1)*var(8); // [ var(50) , var(8) ]
     4302                D[9,50] = var(9); // [ var(50) , var(9) ]
     4303                D[10,50] = (-1)*var(10); // [ var(50) , var(10) ]
     4304                D[11,50] = var(11); // [ var(50) , var(11) ]
     4305                D[12,50] = (-1)*var(12); // [ var(50) , var(12) ]
     4306                D[13,50] = var(13); // [ var(50) , var(13) ]
     4307                D[14,50] = var(14); // [ var(50) , var(14) ]
     4308                D[15,50] = (-1)*var(15); // [ var(50) , var(15) ]
     4309                D[18,50] = var(18); // [ var(50) , var(18) ]
     4310                D[23,50] = (-1)*var(23); // [ var(50) , var(23) ]
     4311                D[24,50] = var(24); // [ var(50) , var(24) ]
     4312                D[1,51] = (-1)*var(1); // [ var(51) , var(1) ]
     4313                D[3,51] = (2)*var(3); // [ var(51) , var(3) ]
     4314                D[4,51] = (-2)*var(4); // [ var(51) , var(4) ]
     4315                D[5,51] = var(5); // [ var(51) , var(5) ]
     4316                D[6,51] = (-2)*var(6); // [ var(51) , var(6) ]
     4317                D[8,51] = (-1)*var(8); // [ var(51) , var(8) ]
     4318                D[10,51] = (2)*var(10); // [ var(51) , var(10) ]
     4319                D[11,51] = (-1)*var(11); // [ var(51) , var(11) ]
     4320                D[12,51] = var(12); // [ var(51) , var(12) ]
     4321                D[13,51] = (2)*var(13); // [ var(51) , var(13) ]
     4322                D[14,51] = var(14); // [ var(51) , var(14) ]
     4323                D[17,51] = (-1)*var(17); // [ var(51) , var(17) ]
     4324                D[19,51] = var(19); // [ var(51) , var(19) ]
     4325                D[20,51] = (-2)*var(20); // [ var(51) , var(20) ]
     4326                D[22,51] = (2)*var(22); // [ var(51) , var(22) ]
     4327                D[2,52] = (-1)*var(2); // [ var(52) , var(2) ]
     4328                D[3,52] = (-1)*var(3); // [ var(52) , var(3) ]
     4329                D[4,52] = (2)*var(4); // [ var(52) , var(4) ]
     4330                D[5,52] = (-1)*var(5); // [ var(52) , var(5) ]
     4331                D[6,52] = var(6); // [ var(52) , var(6) ]
     4332                D[7,52] = var(7); // [ var(52) , var(7) ]
     4333                D[8,52] = var(8); // [ var(52) , var(8) ]
     4334                D[13,52] = (-1)*var(13); // [ var(52) , var(13) ]
     4335                D[14,52] = (-1)*var(14); // [ var(52) , var(14) ]
     4336                D[16,52] = var(16); // [ var(52) , var(16) ]
     4337                D[17,52] = var(17); // [ var(52) , var(17) ]
     4338                D[18,52] = (-1)*var(18); // [ var(52) , var(18) ]
     4339                D[20,52] = var(20); // [ var(52) , var(20) ]
     4340                D[22,52] = (-1)*var(22); // [ var(52) , var(22) ]
     4341                D[23,52] = var(23); // [ var(52) , var(23) ]
     4342        // H(i) * Y(j):
     4343                D[25,49] = (-2)*var(25); // [ var(49) , var(25) ]
     4344                D[27,49] = var(27); // [ var(49) , var(27) ]
     4345                D[29,49] = (-1)*var(29); // [ var(49) , var(29) ]
     4346                D[31,49] = var(31); // [ var(49) , var(31) ]
     4347                D[32,49] = (-1)*var(32); // [ var(49) , var(32) ]
     4348                D[33,49] = var(33); // [ var(49) , var(33) ]
     4349                D[34,49] = (2)*var(34); // [ var(49) , var(34) ]
     4350                D[35,49] = (-1)*var(35); // [ var(49) , var(35) ]
     4351                D[37,49] = (2)*var(37); // [ var(49) , var(37) ]
     4352                D[39,49] = (-2)*var(39); // [ var(49) , var(39) ]
     4353                D[40,49] = (2)*var(40); // [ var(49) , var(40) ]
     4354                D[42,49] = (-2)*var(42); // [ var(49) , var(42) ]
     4355                D[43,49] = var(43); // [ var(49) , var(43) ]
     4356                D[44,49] = (-2)*var(44); // [ var(49) , var(44) ]
     4357                D[45,49] = (-1)*var(45); // [ var(49) , var(45) ]
     4358                D[26,50] = (-2)*var(26); // [ var(50) , var(26) ]
     4359                D[28,50] = var(28); // [ var(50) , var(28) ]
     4360                D[30,50] = (-1)*var(30); // [ var(50) , var(30) ]
     4361                D[31,50] = var(31); // [ var(50) , var(31) ]
     4362                D[32,50] = var(32); // [ var(50) , var(32) ]
     4363                D[33,50] = (-1)*var(33); // [ var(50) , var(33) ]
     4364                D[34,50] = var(34); // [ var(50) , var(34) ]
     4365                D[35,50] = (-1)*var(35); // [ var(50) , var(35) ]
     4366                D[36,50] = var(36); // [ var(50) , var(36) ]
     4367                D[37,50] = (-1)*var(37); // [ var(50) , var(37) ]
     4368                D[38,50] = (-1)*var(38); // [ var(50) , var(38) ]
     4369                D[39,50] = var(39); // [ var(50) , var(39) ]
     4370                D[42,50] = (-1)*var(42); // [ var(50) , var(42) ]
     4371                D[47,50] = var(47); // [ var(50) , var(47) ]
     4372                D[48,50] = (-1)*var(48); // [ var(50) , var(48) ]
     4373                D[25,51] = var(25); // [ var(51) , var(25) ]
     4374                D[27,51] = (-2)*var(27); // [ var(51) , var(27) ]
     4375                D[28,51] = (2)*var(28); // [ var(51) , var(28) ]
     4376                D[29,51] = (-1)*var(29); // [ var(51) , var(29) ]
     4377                D[30,51] = (2)*var(30); // [ var(51) , var(30) ]
     4378                D[32,51] = var(32); // [ var(51) , var(32) ]
     4379                D[34,51] = (-2)*var(34); // [ var(51) , var(34) ]
     4380                D[35,51] = var(35); // [ var(51) , var(35) ]
     4381                D[36,51] = (-1)*var(36); // [ var(51) , var(36) ]
     4382                D[37,51] = (-2)*var(37); // [ var(51) , var(37) ]
     4383                D[38,51] = (-1)*var(38); // [ var(51) , var(38) ]
     4384                D[41,51] = var(41); // [ var(51) , var(41) ]
     4385                D[43,51] = (-1)*var(43); // [ var(51) , var(43) ]
     4386                D[44,51] = (2)*var(44); // [ var(51) , var(44) ]
     4387                D[46,51] = (-2)*var(46); // [ var(51) , var(46) ]
     4388                D[26,52] = var(26); // [ var(52) , var(26) ]
     4389                D[27,52] = var(27); // [ var(52) , var(27) ]
     4390                D[28,52] = (-2)*var(28); // [ var(52) , var(28) ]
     4391                D[29,52] = var(29); // [ var(52) , var(29) ]
     4392                D[30,52] = (-1)*var(30); // [ var(52) , var(30) ]
     4393                D[31,52] = (-1)*var(31); // [ var(52) , var(31) ]
     4394                D[32,52] = (-1)*var(32); // [ var(52) , var(32) ]
     4395                D[37,52] = var(37); // [ var(52) , var(37) ]
     4396                D[38,52] = var(38); // [ var(52) , var(38) ]
     4397                D[40,52] = (-1)*var(40); // [ var(52) , var(40) ]
     4398                D[41,52] = (-1)*var(41); // [ var(52) , var(41) ]
     4399                D[42,52] = var(42); // [ var(52) , var(42) ]
     4400                D[44,52] = (-1)*var(44); // [ var(52) , var(44) ]
     4401                D[46,52] = var(46); // [ var(52) , var(46) ]
     4402                D[47,52] = (-1)*var(47); // [ var(52) , var(47) ]
     4403        // Y(i) * X(j):
     4404                D[1,25] = (-1)*var(49); // [ var(25) , var(1) ]
     4405                D[5,25] = (-1)*var(3); // [ var(25) , var(5) ]
     4406                D[8,25] = (-1)*var(7); // [ var(25) , var(8) ]
     4407                D[11,25] = (-1)*var(9); // [ var(25) , var(11) ]
     4408                D[12,25] = (-2)*var(10); // [ var(25) , var(12) ]
     4409                D[14,25] = (-2)*var(13); // [ var(25) , var(14) ]
     4410                D[15,25] = (-1)*var(12); // [ var(25) , var(15) ]
     4411                D[17,25] = (-2)*var(16); // [ var(25) , var(17) ]
     4412                D[18,25] = (-1)*var(14); // [ var(25) , var(18) ]
     4413                D[20,25] = (-1)*var(17); // [ var(25) , var(20) ]
     4414                D[21,25] = (-1)*var(19); // [ var(25) , var(21) ]
     4415                D[2,26] = (-1)*var(50); // [ var(26) , var(2) ]
     4416                D[6,26] = (-1)*var(4); // [ var(26) , var(6) ]
     4417                D[9,26] = (-1)*var(7); // [ var(26) , var(9) ]
     4418                D[11,26] = (-1)*var(8); // [ var(26) , var(11) ]
     4419                D[13,26] = (-1)*var(10); // [ var(26) , var(13) ]
     4420                D[14,26] = (-1)*var(12); // [ var(26) , var(14) ]
     4421                D[18,26] = (-1)*var(15); // [ var(26) , var(18) ]
     4422                D[24,26] = var(23); // [ var(26) , var(24) ]
     4423                D[3,27] = (-1)*var(51); // [ var(27) , var(3) ]
     4424                D[5,27] = var(1); // [ var(27) , var(5) ]
     4425                D[7,27] = (-2)*var(4); // [ var(27) , var(7) ]
     4426                D[9,27] = (-2)*var(6); // [ var(27) , var(9) ]
     4427                D[10,27] = (-1)*var(7); // [ var(27) , var(10) ]
     4428                D[12,27] = (-1)*var(8); // [ var(27) , var(12) ]
     4429                D[13,27] = (-1)*var(9); // [ var(27) , var(13) ]
     4430                D[14,27] = (-1)*var(11); // [ var(27) , var(14) ]
     4431                D[19,27] = (-1)*var(17); // [ var(27) , var(19) ]
     4432                D[21,27] = (-2)*var(20); // [ var(27) , var(21) ]
     4433                D[22,27] = (-1)*var(21); // [ var(27) , var(22) ]
     4434                D[4,28] = (-1)*var(52); // [ var(28) , var(4) ]
     4435                D[6,28] = var(2); // [ var(28) , var(6) ]
     4436                D[7,28] = var(3); // [ var(28) , var(7) ]
     4437                D[8,28] = var(5); // [ var(28) , var(8) ]
     4438                D[16,28] = (-1)*var(13); // [ var(28) , var(16) ]
     4439                D[17,28] = (-1)*var(14); // [ var(28) , var(17) ]
     4440                D[20,28] = (-1)*var(18); // [ var(28) , var(20) ]
     4441                D[23,28] = var(22); // [ var(28) , var(23) ]
     4442                D[1,29] = (-1)*var(27); // [ var(29) , var(1) ]
     4443                D[3,29] = var(25); // [ var(29) , var(3) ]
     4444                D[5,29] = (-1)*var(49)+(-1)*var(51); // [ var(29) , var(5) ]
     4445                D[8,29] = (-2)*var(4); // [ var(29) , var(8) ]
     4446                D[11,29] = (-2)*var(6); // [ var(29) , var(11) ]
     4447                D[12,29] = (-1)*var(7); // [ var(29) , var(12) ]
     4448                D[14,29] = (-1)*var(9); // [ var(29) , var(14) ]
     4449                D[15,29] = (-1)*var(8); // [ var(29) , var(15) ]
     4450                D[18,29] = (-1)*var(11); // [ var(29) , var(18) ]
     4451                D[19,29] = (2)*var(16); // [ var(29) , var(19) ]
     4452                D[21,29] = var(17); // [ var(29) , var(21) ]
     4453                D[22,29] = var(19); // [ var(29) , var(22) ]
     4454                D[2,30] = (-1)*var(28); // [ var(30) , var(2) ]
     4455                D[4,30] = var(26); // [ var(30) , var(4) ]
     4456                D[6,30] = (-1)*var(50)+(-1)*var(52); // [ var(30) , var(6) ]
     4457                D[9,30] = var(3); // [ var(30) , var(9) ]
     4458                D[11,30] = var(5); // [ var(30) , var(11) ]
     4459                D[16,30] = var(10); // [ var(30) , var(16) ]
     4460                D[17,30] = var(12); // [ var(30) , var(17) ]
     4461                D[20,30] = var(15); // [ var(30) , var(20) ]
     4462                D[24,30] = (-1)*var(22); // [ var(30) , var(24) ]
     4463                D[3,31] = (-2)*var(28); // [ var(31) , var(3) ]
     4464                D[4,31] = var(27); // [ var(31) , var(4) ]
     4465                D[7,31] = (-1)*var(51)+(-2)*var(52); // [ var(31) , var(7) ]
     4466                D[8,31] = var(1); // [ var(31) , var(8) ]
     4467                D[9,31] = (2)*var(2); // [ var(31) , var(9) ]
     4468                D[10,31] = var(3); // [ var(31) , var(10) ]
     4469                D[12,31] = var(5); // [ var(31) , var(12) ]
     4470                D[16,31] = var(9); // [ var(31) , var(16) ]
     4471                D[17,31] = var(11); // [ var(31) , var(17) ]
     4472                D[19,31] = (-1)*var(14); // [ var(31) , var(19) ]
     4473                D[21,31] = (-2)*var(18); // [ var(31) , var(21) ]
     4474                D[23,31] = (-1)*var(21); // [ var(31) , var(23) ]
     4475                D[1,32] = (-1)*var(31); // [ var(32) , var(1) ]
     4476                D[4,32] = var(29); // [ var(32) , var(4) ]
     4477                D[5,32] = (-2)*var(28); // [ var(32) , var(5) ]
     4478                D[7,32] = var(25); // [ var(32) , var(7) ]
     4479                D[8,32] = (-1)*var(49)+(-1)*var(51)+(-2)*var(52); // [ var(32) , var(8) ]
     4480                D[11,32] = (2)*var(2); // [ var(32) , var(11) ]
     4481                D[12,32] = var(3); // [ var(32) , var(12) ]
     4482                D[15,32] = var(5); // [ var(32) , var(15) ]
     4483                D[17,32] = var(9); // [ var(32) , var(17) ]
     4484                D[19,32] = (2)*var(13); // [ var(32) , var(19) ]
     4485                D[20,32] = var(11); // [ var(32) , var(20) ]
     4486                D[21,32] = var(14); // [ var(32) , var(21) ]
     4487                D[23,32] = var(19); // [ var(32) , var(23) ]
     4488                D[2,33] = (-1)*var(31); // [ var(33) , var(2) ]
     4489                D[3,33] = (-2)*var(30); // [ var(33) , var(3) ]
     4490                D[6,33] = var(27); // [ var(33) , var(6) ]
     4491                D[7,33] = (2)*var(26); // [ var(33) , var(7) ]
     4492                D[9,33] = (-2)*var(50)+(-1)*var(51)+(-2)*var(52); // [ var(33) , var(9) ]
     4493                D[11,33] = var(1); // [ var(33) , var(11) ]
     4494                D[13,33] = var(3); // [ var(33) , var(13) ]
     4495                D[14,33] = var(5); // [ var(33) , var(14) ]
     4496                D[16,33] = (-1)*var(7); // [ var(33) , var(16) ]
     4497                D[17,33] = (-1)*var(8); // [ var(33) , var(17) ]
     4498                D[19,33] = var(12); // [ var(33) , var(19) ]
     4499                D[21,33] = (2)*var(15); // [ var(33) , var(21) ]
     4500                D[24,33] = var(21); // [ var(33) , var(24) ]
     4501                D[3,34] = (-1)*var(31); // [ var(34) , var(3) ]
     4502                D[7,34] = var(27); // [ var(34) , var(7) ]
     4503                D[10,34] = (-1)*var(51)+(-1)*var(52); // [ var(34) , var(10) ]
     4504                D[12,34] = var(1); // [ var(34) , var(12) ]
     4505                D[13,34] = var(2); // [ var(34) , var(13) ]
     4506                D[16,34] = (-1)*var(6); // [ var(34) , var(16) ]
     4507                D[19,34] = var(11); // [ var(34) , var(19) ]
     4508                D[22,34] = (-1)*var(18); // [ var(34) , var(22) ]
     4509                D[23,34] = var(20); // [ var(34) , var(23) ]
     4510                D[1,35] = (-1)*var(33); // [ var(35) , var(1) ]
     4511                D[2,35] = (-1)*var(32); // [ var(35) , var(2) ]
     4512                D[5,35] = (-2)*var(30); // [ var(35) , var(5) ]
     4513                D[6,35] = var(29); // [ var(35) , var(6) ]
     4514                D[8,35] = (2)*var(26); // [ var(35) , var(8) ]
     4515                D[9,35] = var(25); // [ var(35) , var(9) ]
     4516                D[11,35] = (-1)*var(49)+(-2)*var(50)+(-1)*var(51)+(-2)*var(52); // [ var(35) , var(11) ]
     4517                D[14,35] = var(3); // [ var(35) , var(14) ]
     4518                D[17,35] = (-1)*var(7); // [ var(35) , var(17) ]
     4519                D[18,35] = var(5); // [ var(35) , var(18) ]
     4520                D[19,35] = (-2)*var(10); // [ var(35) , var(19) ]
     4521                D[20,35] = (-1)*var(8); // [ var(35) , var(20) ]
     4522                D[21,35] = (-1)*var(12); // [ var(35) , var(21) ]
     4523                D[24,35] = (-1)*var(19); // [ var(35) , var(24) ]
     4524                D[1,36] = (-2)*var(34); // [ var(36) , var(1) ]
     4525                D[3,36] = (-1)*var(32); // [ var(36) , var(3) ]
     4526                D[5,36] = (-1)*var(31); // [ var(36) , var(5) ]
     4527                D[7,36] = var(29); // [ var(36) , var(7) ]
     4528                D[8,36] = var(27); // [ var(36) , var(8) ]
     4529                D[10,36] = var(25); // [ var(36) , var(10) ]
     4530                D[12,36] = (-1)*var(49)+(-2)*var(51)+(-2)*var(52); // [ var(36) , var(12) ]
     4531                D[14,36] = (2)*var(2); // [ var(36) , var(14) ]
     4532                D[15,36] = var(1); // [ var(36) , var(15) ]
     4533                D[17,36] = (-2)*var(6); // [ var(36) , var(17) ]
     4534                D[19,36] = (-1)*var(9); // [ var(36) , var(19) ]
     4535                D[21,36] = var(11); // [ var(36) , var(21) ]
     4536                D[22,36] = var(14); // [ var(36) , var(22) ]
     4537                D[23,36] = (-1)*var(17); // [ var(36) , var(23) ]
     4538                D[2,37] = (-1)*var(34); // [ var(37) , var(2) ]
     4539                D[3,37] = (-1)*var(33); // [ var(37) , var(3) ]
     4540                D[9,37] = var(27); // [ var(37) , var(9) ]
     4541                D[10,37] = var(26); // [ var(37) , var(10) ]
     4542                D[13,37] = (-1)*var(50)+(-1)*var(51)+(-1)*var(52); // [ var(37) , var(13) ]
     4543                D[14,37] = var(1); // [ var(37) , var(14) ]
     4544                D[16,37] = var(4); // [ var(37) , var(16) ]
     4545                D[19,37] = (-1)*var(8); // [ var(37) , var(19) ]
     4546                D[22,37] = var(15); // [ var(37) , var(22) ]
     4547                D[24,37] = (-1)*var(20); // [ var(37) , var(24) ]
     4548                D[1,38] = (-2)*var(37); // [ var(38) , var(1) ]
     4549                D[2,38] = (-1)*var(36); // [ var(38) , var(2) ]
     4550                D[3,38] = (-1)*var(35); // [ var(38) , var(3) ]
     4551                D[5,38] = (-1)*var(33); // [ var(38) , var(5) ]
     4552                D[9,38] = var(29); // [ var(38) , var(9) ]
     4553                D[11,38] = var(27); // [ var(38) , var(11) ]
     4554                D[12,38] = (2)*var(26); // [ var(38) , var(12) ]
     4555                D[13,38] = var(25); // [ var(38) , var(13) ]
     4556                D[14,38] = (-1)*var(49)+(-2)*var(50)+(-2)*var(51)+(-2)*var(52); // [ var(38) , var(14) ]
     4557                D[17,38] = (2)*var(4); // [ var(38) , var(17) ]
     4558                D[18,38] = var(1); // [ var(38) , var(18) ]
     4559                D[19,38] = var(7); // [ var(38) , var(19) ]
     4560                D[21,38] = (-1)*var(8); // [ var(38) , var(21) ]
     4561                D[22,38] = (-1)*var(12); // [ var(38) , var(22) ]
     4562                D[24,38] = var(17); // [ var(38) , var(24) ]
     4563                D[1,39] = (-1)*var(36); // [ var(39) , var(1) ]
     4564                D[5,39] = (-1)*var(32); // [ var(39) , var(5) ]
     4565                D[8,39] = var(29); // [ var(39) , var(8) ]
     4566                D[12,39] = var(25); // [ var(39) , var(12) ]
     4567                D[15,39] = (-1)*var(49)+(-1)*var(51)+(-1)*var(52); // [ var(39) , var(15) ]
     4568                D[18,39] = var(2); // [ var(39) , var(18) ]
     4569                D[20,39] = (-1)*var(6); // [ var(39) , var(20) ]
     4570                D[21,39] = (-1)*var(9); // [ var(39) , var(21) ]
     4571                D[22,39] = (-1)*var(13); // [ var(39) , var(22) ]
     4572                D[23,39] = var(16); // [ var(39) , var(23) ]
     4573                D[4,40] = (-1)*var(37); // [ var(40) , var(4) ]
     4574                D[6,40] = var(34); // [ var(40) , var(6) ]
     4575                D[7,40] = var(33); // [ var(40) , var(7) ]
     4576                D[9,40] = (-1)*var(31); // [ var(40) , var(9) ]
     4577                D[10,40] = (-1)*var(30); // [ var(40) , var(10) ]
     4578                D[13,40] = var(28); // [ var(40) , var(13) ]
     4579                D[16,40] = (-1)*var(50)+(-1)*var(51)+(-2)*var(52); // [ var(40) , var(16) ]
     4580                D[17,40] = var(1); // [ var(40) , var(17) ]
     4581                D[19,40] = (-1)*var(5); // [ var(40) , var(19) ]
     4582                D[23,40] = (-1)*var(15); // [ var(40) , var(23) ]
     4583                D[24,40] = var(18); // [ var(40) , var(24) ]
     4584                D[1,41] = (-2)*var(40); // [ var(41) , var(1) ]
     4585                D[4,41] = (-1)*var(38); // [ var(41) , var(4) ]
     4586                D[6,41] = var(36); // [ var(41) , var(6) ]
     4587                D[7,41] = var(35); // [ var(41) , var(7) ]
     4588                D[8,41] = var(33); // [ var(41) , var(8) ]
     4589                D[9,41] = (-1)*var(32); // [ var(41) , var(9) ]
     4590                D[11,41] = (-1)*var(31); // [ var(41) , var(11) ]
     4591                D[12,41] = (-2)*var(30); // [ var(41) , var(12) ]
     4592                D[14,41] = (2)*var(28); // [ var(41) , var(14) ]
     4593                D[16,41] = var(25); // [ var(41) , var(16) ]
     4594                D[17,41] = (-1)*var(49)+(-2)*var(50)+(-2)*var(51)+(-4)*var(52); // [ var(41) , var(17) ]
     4595                D[19,41] = var(3); // [ var(41) , var(19) ]
     4596                D[20,41] = var(1); // [ var(41) , var(20) ]
     4597                D[21,41] = (-1)*var(5); // [ var(41) , var(21) ]
     4598                D[23,41] = var(12); // [ var(41) , var(23) ]
     4599                D[24,41] = (-1)*var(14); // [ var(41) , var(24) ]
     4600                D[1,42] = (-1)*var(38); // [ var(42) , var(1) ]
     4601                D[2,42] = (-1)*var(39); // [ var(42) , var(2) ]
     4602                D[5,42] = (-1)*var(35); // [ var(42) , var(5) ]
     4603                D[11,42] = var(29); // [ var(42) , var(11) ]
     4604                D[14,42] = var(25); // [ var(42) , var(14) ]
     4605                D[15,42] = var(26); // [ var(42) , var(15) ]
     4606                D[18,42] = (-1)*var(49)+(-1)*var(50)+(-1)*var(51)+(-1)*var(52); // [ var(42) , var(18) ]
     4607                D[20,42] = var(4); // [ var(42) , var(20) ]
     4608                D[21,42] = var(7); // [ var(42) , var(21) ]
     4609                D[22,42] = var(10); // [ var(42) , var(22) ]
     4610                D[24,42] = (-1)*var(16); // [ var(42) , var(24) ]
     4611                D[3,43] = (-1)*var(41); // [ var(43) , var(3) ]
     4612                D[5,43] = (2)*var(40); // [ var(43) , var(5) ]
     4613                D[7,43] = (-1)*var(38); // [ var(43) , var(7) ]
     4614                D[8,43] = (2)*var(37); // [ var(43) , var(8) ]
     4615                D[9,43] = var(36); // [ var(43) , var(9) ]
     4616                D[10,43] = var(35); // [ var(43) , var(10) ]
     4617                D[11,43] = (-2)*var(34); // [ var(43) , var(11) ]
     4618                D[12,43] = (-1)*var(33); // [ var(43) , var(12) ]
     4619                D[13,43] = (-1)*var(32); // [ var(43) , var(13) ]
     4620                D[14,43] = var(31); // [ var(43) , var(14) ]
     4621                D[16,43] = (-1)*var(29); // [ var(43) , var(16) ]
     4622                D[17,43] = var(27); // [ var(43) , var(17) ]
     4623                D[19,43] = (-1)*var(49)+(-2)*var(50)+(-3)*var(51)+(-4)*var(52); // [ var(43) , var(19) ]
     4624                D[21,43] = var(1); // [ var(43) , var(21) ]
     4625                D[22,43] = (-1)*var(5); // [ var(43) , var(22) ]
     4626                D[23,43] = (-1)*var(8); // [ var(43) , var(23) ]
     4627                D[24,43] = var(11); // [ var(43) , var(24) ]
     4628                D[1,44] = (-1)*var(41); // [ var(44) , var(1) ]
     4629                D[4,44] = (-1)*var(42); // [ var(44) , var(4) ]
     4630                D[6,44] = var(39); // [ var(44) , var(6) ]
     4631                D[8,44] = var(35); // [ var(44) , var(8) ]
     4632                D[11,44] = (-1)*var(32); // [ var(44) , var(11) ]
     4633                D[15,44] = (-1)*var(30); // [ var(44) , var(15) ]
     4634                D[17,44] = var(25); // [ var(44) , var(17) ]
     4635                D[18,44] = var(28); // [ var(44) , var(18) ]
     4636                D[20,44] = (-1)*var(49)+(-1)*var(50)+(-1)*var(51)+(-2)*var(52); // [ var(44) , var(20) ]
     4637                D[21,44] = var(3); // [ var(44) , var(21) ]
     4638                D[23,44] = (-1)*var(10); // [ var(44) , var(23) ]
     4639                D[24,44] = var(13); // [ var(44) , var(24) ]
     4640                D[1,45] = (-1)*var(43); // [ var(45) , var(1) ]
     4641                D[3,45] = (-2)*var(44); // [ var(45) , var(3) ]
     4642                D[5,45] = var(41); // [ var(45) , var(5) ]
     4643                D[7,45] = (-2)*var(42); // [ var(45) , var(7) ]
     4644                D[8,45] = var(38); // [ var(45) , var(8) ]
     4645                D[9,45] = (2)*var(39); // [ var(45) , var(9) ]
     4646                D[11,45] = (-1)*var(36); // [ var(45) , var(11) ]
     4647                D[12,45] = var(35); // [ var(45) , var(12) ]
     4648                D[14,45] = (-1)*var(32); // [ var(45) , var(14) ]
     4649                D[15,45] = (-1)*var(33); // [ var(45) , var(15) ]
     4650                D[17,45] = (-1)*var(29); // [ var(45) , var(17) ]
     4651                D[18,45] = var(31); // [ var(45) , var(18) ]
     4652                D[19,45] = var(25); // [ var(45) , var(19) ]
     4653                D[20,45] = var(27); // [ var(45) , var(20) ]
     4654                D[21,45] = (-2)*var(49)+(-2)*var(50)+(-3)*var(51)+(-4)*var(52); // [ var(45) , var(21) ]
     4655                D[22,45] = var(3); // [ var(45) , var(22) ]
     4656                D[23,45] = var(7); // [ var(45) , var(23) ]
     4657                D[24,45] = (-1)*var(9); // [ var(45) , var(24) ]
     4658                D[3,46] = (-1)*var(45); // [ var(46) , var(3) ]
     4659                D[5,46] = var(43); // [ var(46) , var(5) ]
     4660                D[10,46] = (-1)*var(42); // [ var(46) , var(10) ]
     4661                D[12,46] = var(38); // [ var(46) , var(12) ]
     4662                D[13,46] = var(39); // [ var(46) , var(13) ]
     4663                D[14,46] = (-1)*var(36); // [ var(46) , var(14) ]
     4664                D[15,46] = (-1)*var(37); // [ var(46) , var(15) ]
     4665                D[18,46] = var(34); // [ var(46) , var(18) ]
     4666                D[19,46] = (-1)*var(29); // [ var(46) , var(19) ]
     4667                D[21,46] = var(27); // [ var(46) , var(21) ]
     4668                D[22,46] = (-1)*var(49)+(-1)*var(50)+(-2)*var(51)+(-2)*var(52); // [ var(46) , var(22) ]
     4669                D[23,46] = (-1)*var(4); // [ var(46) , var(23) ]
     4670                D[24,46] = var(6); // [ var(46) , var(24) ]
     4671                D[4,47] = var(46); // [ var(47) , var(4) ]
     4672                D[7,47] = (-1)*var(45); // [ var(47) , var(7) ]
     4673                D[8,47] = var(43); // [ var(47) , var(8) ]
     4674                D[10,47] = var(44); // [ var(47) , var(10) ]
     4675                D[12,47] = (-1)*var(41); // [ var(47) , var(12) ]
     4676                D[15,47] = var(40); // [ var(47) , var(15) ]
     4677                D[16,47] = (-1)*var(39); // [ var(47) , var(16) ]
     4678                D[17,47] = var(36); // [ var(47) , var(17) ]
     4679                D[19,47] = (-1)*var(32); // [ var(47) , var(19) ]
     4680                D[20,47] = (-1)*var(34); // [ var(47) , var(20) ]
     4681                D[21,47] = var(31); // [ var(47) , var(21) ]
     4682                D[22,47] = (-1)*var(28); // [ var(47) , var(22) ]
     4683                D[23,47] = (-1)*var(49)+(-1)*var(50)+(-2)*var(51)+(-3)*var(52); // [ var(47) , var(23) ]
     4684                D[24,47] = (-1)*var(2); // [ var(47) , var(24) ]
     4685                D[2,48] = var(47); // [ var(48) , var(2) ]
     4686                D[6,48] = (-1)*var(46); // [ var(48) , var(6) ]
     4687                D[9,48] = var(45); // [ var(48) , var(9) ]
     4688                D[11,48] = (-1)*var(43); // [ var(48) , var(11) ]
     4689                D[13,48] = (-1)*var(44); // [ var(48) , var(13) ]
     4690                D[14,48] = var(41); // [ var(48) , var(14) ]
     4691                D[16,48] = var(42); // [ var(48) , var(16) ]
     4692                D[17,48] = (-1)*var(38); // [ var(48) , var(17) ]
     4693                D[18,48] = (-1)*var(40); // [ var(48) , var(18) ]
     4694                D[19,48] = var(35); // [ var(48) , var(19) ]
     4695                D[20,48] = var(37); // [ var(48) , var(20) ]
     4696                D[21,48] = (-1)*var(33); // [ var(48) , var(21) ]
     4697                D[22,48] = var(30); // [ var(48) , var(22) ]
     4698                D[23,48] = (-1)*var(26); // [ var(48) , var(23) ]
     4699                D[24,48] = (-1)*var(49)+(-2)*var(50)+(-2)*var(51)+(-3)*var(52); // [ var(48) , var(24) ]
     4700        // X(i) * X(j):
     4701                D[1,3] = var(5); // [ var(3) , var(1) ]
     4702                D[1,7] = var(8); // [ var(7) , var(1) ]
     4703                D[1,9] = var(11); // [ var(9) , var(1) ]
     4704                D[1,10] = var(12); // [ var(10) , var(1) ]
     4705                D[1,12] = (2)*var(15); // [ var(12) , var(1) ]
     4706                D[1,13] = var(14); // [ var(13) , var(1) ]
     4707                D[1,14] = (2)*var(18); // [ var(14) , var(1) ]
     4708                D[1,16] = var(17); // [ var(16) , var(1) ]
     4709                D[1,17] = (2)*var(20); // [ var(17) , var(1) ]
     4710                D[1,19] = var(21); // [ var(19) , var(1) ]
     4711                D[2,4] = var(6); // [ var(4) , var(2) ]
     4712                D[2,7] = var(9); // [ var(7) , var(2) ]
     4713                D[2,8] = var(11); // [ var(8) , var(2) ]
     4714                D[2,10] = var(13); // [ var(10) , var(2) ]
     4715                D[2,12] = var(14); // [ var(12) , var(2) ]
     4716                D[2,15] = var(18); // [ var(15) , var(2) ]
     4717                D[2,23] = (-1)*var(24); // [ var(23) , var(2) ]
     4718                D[3,4] = var(7); // [ var(4) , var(3) ]
     4719                D[3,6] = var(9); // [ var(6) , var(3) ]
     4720                D[3,7] = (2)*var(10); // [ var(7) , var(3) ]
     4721                D[3,8] = var(12); // [ var(8) , var(3) ]
     4722                D[3,9] = (2)*var(13); // [ var(9) , var(3) ]
     4723                D[3,11] = var(14); // [ var(11) , var(3) ]
     4724                D[3,17] = var(19); // [ var(17) , var(3) ]
     4725                D[3,20] = var(21); // [ var(20) , var(3) ]
     4726                D[3,21] = (2)*var(22); // [ var(21) , var(3) ]
     4727                D[4,5] = (-1)*var(8); // [ var(5) , var(4) ]
     4728                D[4,13] = var(16); // [ var(13) , var(4) ]
     4729                D[4,14] = var(17); // [ var(14) , var(4) ]
     4730                D[4,18] = var(20); // [ var(18) , var(4) ]
     4731                D[4,22] = (-1)*var(23); // [ var(22) , var(4) ]
     4732                D[5,6] = var(11); // [ var(6) , var(5) ]
     4733                D[5,7] = var(12); // [ var(7) , var(5) ]
     4734                D[5,8] = (2)*var(15); // [ var(8) , var(5) ]
     4735                D[5,9] = var(14); // [ var(9) , var(5) ]
     4736                D[5,11] = (2)*var(18); // [ var(11) , var(5) ]
     4737                D[5,16] = (-1)*var(19); // [ var(16) , var(5) ]
     4738                D[5,17] = (-1)*var(21); // [ var(17) , var(5) ]
     4739                D[5,19] = (-2)*var(22); // [ var(19) , var(5) ]
     4740                D[6,10] = (-1)*var(16); // [ var(10) , var(6) ]
     4741                D[6,12] = (-1)*var(17); // [ var(12) , var(6) ]
     4742                D[6,15] = (-1)*var(20); // [ var(15) , var(6) ]
     4743                D[6,22] = var(24); // [ var(22) , var(6) ]
     4744                D[7,9] = (-2)*var(16); // [ var(9) , var(7) ]
     4745                D[7,11] = (-1)*var(17); // [ var(11) , var(7) ]
     4746                D[7,14] = var(19); // [ var(14) , var(7) ]
     4747                D[7,18] = var(21); // [ var(18) , var(7) ]
     4748                D[7,21] = (2)*var(23); // [ var(21) , var(7) ]
     4749                D[8,9] = (-1)*var(17); // [ var(9) , var(8) ]
     4750                D[8,11] = (-2)*var(20); // [ var(11) , var(8) ]
     4751                D[8,13] = (-1)*var(19); // [ var(13) , var(8) ]
     4752                D[8,14] = (-1)*var(21); // [ var(14) , var(8) ]
     4753                D[8,19] = (-2)*var(23); // [ var(19) , var(8) ]
     4754                D[9,12] = (-1)*var(19); // [ var(12) , var(9) ]
     4755                D[9,15] = (-1)*var(21); // [ var(15) , var(9) ]
     4756                D[9,21] = (-2)*var(24); // [ var(21) , var(9) ]
     4757                D[10,11] = (-1)*var(19); // [ var(11) , var(10) ]
     4758                D[10,18] = var(22); // [ var(18) , var(10) ]
     4759                D[10,20] = (-1)*var(23); // [ var(20) , var(10) ]
     4760                D[11,12] = var(21); // [ var(12) , var(11) ]
     4761                D[11,19] = (2)*var(24); // [ var(19) , var(11) ]
     4762                D[12,14] = (-2)*var(22); // [ var(14) , var(12) ]
     4763                D[12,17] = (2)*var(23); // [ var(17) , var(12) ]
     4764                D[13,15] = (-1)*var(22); // [ var(15) , var(13) ]
     4765                D[13,20] = var(24); // [ var(20) , var(13) ]
     4766                D[14,17] = (-2)*var(24); // [ var(17) , var(14) ]
     4767                D[15,16] = (-1)*var(23); // [ var(16) , var(15) ]
     4768                D[16,18] = (-1)*var(24); // [ var(18) , var(16) ]
     4769        // Y(i) * Y(j):
     4770                D[25,27] = (-1)*var(29); // [ var(27) , var(25) ]
     4771                D[25,31] = (-1)*var(32); // [ var(31) , var(25) ]
     4772                D[25,33] = (-1)*var(35); // [ var(33) , var(25) ]
     4773                D[25,34] = (-1)*var(36); // [ var(34) , var(25) ]
     4774                D[25,36] = (-2)*var(39); // [ var(36) , var(25) ]
     4775                D[25,37] = (-1)*var(38); // [ var(37) , var(25) ]
     4776                D[25,38] = (-2)*var(42); // [ var(38) , var(25) ]
     4777                D[25,40] = (-1)*var(41); // [ var(40) , var(25) ]
     4778                D[25,41] = (-2)*var(44); // [ var(41) , var(25) ]
     4779                D[25,43] = (-1)*var(45); // [ var(43) , var(25) ]
     4780                D[26,28] = (-1)*var(30); // [ var(28) , var(26) ]
     4781                D[26,31] = (-1)*var(33); // [ var(31) , var(26) ]
     4782                D[26,32] = (-1)*var(35); // [ var(32) , var(26) ]
     4783                D[26,34] = (-1)*var(37); // [ var(34) , var(26) ]
     4784                D[26,36] = (-1)*var(38); // [ var(36) , var(26) ]
     4785                D[26,39] = (-1)*var(42); // [ var(39) , var(26) ]
     4786                D[26,47] = var(48); // [ var(47) , var(26) ]
     4787                D[27,28] = (-1)*var(31); // [ var(28) , var(27) ]
     4788                D[27,30] = (-1)*var(33); // [ var(30) , var(27) ]
     4789                D[27,31] = (-2)*var(34); // [ var(31) , var(27) ]
     4790                D[27,32] = (-1)*var(36); // [ var(32) , var(27) ]
     4791                D[27,33] = (-2)*var(37); // [ var(33) , var(27) ]
     4792                D[27,35] = (-1)*var(38); // [ var(35) , var(27) ]
     4793                D[27,41] = (-1)*var(43); // [ var(41) , var(27) ]
     4794                D[27,44] = (-1)*var(45); // [ var(44) , var(27) ]
     4795                D[27,45] = (-2)*var(46); // [ var(45) , var(27) ]
     4796                D[28,29] = var(32); // [ var(29) , var(28) ]
     4797                D[28,37] = (-1)*var(40); // [ var(37) , var(28) ]
     4798                D[28,38] = (-1)*var(41); // [ var(38) , var(28) ]
     4799                D[28,42] = (-1)*var(44); // [ var(42) , var(28) ]
     4800                D[28,46] = var(47); // [ var(46) , var(28) ]
     4801                D[29,30] = (-1)*var(35); // [ var(30) , var(29) ]
     4802                D[29,31] = (-1)*var(36); // [ var(31) , var(29) ]
     4803                D[29,32] = (-2)*var(39); // [ var(32) , var(29) ]
     4804                D[29,33] = (-1)*var(38); // [ var(33) , var(29) ]
     4805                D[29,35] = (-2)*var(42); // [ var(35) , var(29) ]
     4806                D[29,40] = var(43); // [ var(40) , var(29) ]
     4807                D[29,41] = var(45); // [ var(41) , var(29) ]
     4808                D[29,43] = (2)*var(46); // [ var(43) , var(29) ]
     4809                D[30,34] = var(40); // [ var(34) , var(30) ]
     4810                D[30,36] = var(41); // [ var(36) , var(30) ]
     4811                D[30,39] = var(44); // [ var(39) , var(30) ]
     4812                D[30,46] = (-1)*var(48); // [ var(46) , var(30) ]
     4813                D[31,33] = (2)*var(40); // [ var(33) , var(31) ]
     4814                D[31,35] = var(41); // [ var(35) , var(31) ]
     4815                D[31,38] = (-1)*var(43); // [ var(38) , var(31) ]
     4816                D[31,42] = (-1)*var(45); // [ var(42) , var(31) ]
     4817                D[31,45] = (-2)*var(47); // [ var(45) , var(31) ]
     4818                D[32,33] = var(41); // [ var(33) , var(32) ]
     4819                D[32,35] = (2)*var(44); // [ var(35) , var(32) ]
     4820                D[32,37] = var(43); // [ var(37) , var(32) ]
     4821                D[32,38] = var(45); // [ var(38) , var(32) ]
     4822                D[32,43] = (2)*var(47); // [ var(43) , var(32) ]
     4823                D[33,36] = var(43); // [ var(36) , var(33) ]
     4824                D[33,39] = var(45); // [ var(39) , var(33) ]
     4825                D[33,45] = (2)*var(48); // [ var(45) , var(33) ]
     4826                D[34,35] = var(43); // [ var(35) , var(34) ]
     4827                D[34,42] = (-1)*var(46); // [ var(42) , var(34) ]
     4828                D[34,44] = var(47); // [ var(44) , var(34) ]
     4829                D[35,36] = (-1)*var(45); // [ var(36) , var(35) ]
     4830                D[35,43] = (-2)*var(48); // [ var(43) , var(35) ]
     4831                D[36,38] = (2)*var(46); // [ var(38) , var(36) ]
     4832                D[36,41] = (-2)*var(47); // [ var(41) , var(36) ]
     4833                D[37,39] = var(46); // [ var(39) , var(37) ]
     4834                D[37,44] = (-1)*var(48); // [ var(44) , var(37) ]
     4835                D[38,41] = (2)*var(48); // [ var(41) , var(38) ]
     4836                D[39,40] = var(47); // [ var(40) , var(39) ]
     4837                D[40,42] = var(48); // [ var(42) , var(40) ]
     4838   ncalgebra(1,D);
     4839   return(@@@rrr);
     4840}
     4841example
     4842{ "EXAMPLE:"; echo = 2;
     4843   def ncAlgebra = makeUf4();
     4844   setring ncAlgebra;
     4845   ncAlgebra;
     4846}
     4847////////////////////////////////////////////////////////////////////
     4848
     4849// Algebra: e6(Q) has the type: E6, and defined by:
     4850
     4851proc makeUe6(list #)
     4852"USAGE:   makeUe6([p]); p an optional integer (field characteristic)
     4853RETURN:  a ring, describing U(e_6)
     4854NOTE:    You have to activate this ring with the 'setring' command. The presentation of U(e_6) is derived from the Chevalley representation of e_6, positive resp. negative roots are denoted by x(i) resp. y(i); Cartan elements are denoted by h(i).
     4855SEE ALSO: makeUsl, makeUso5, makeUsp1, makeUe6, makeUe7, makeUe8, makeUg2, makeUf4
     4856EXAMPLE: example makeUe6; shows examples
     4857"
     4858{
     4859   int @p = defInt(#);
     4860
     4861   ring @@@rrr = @p,(X(1..36),Y(1..36),H(1..6)),dp;
     4862   int N = nvars(@@@rrr);
     4863   matrix D[N][N]=0;
     4864
     4865        // H(i) * X(j):
     4866                D[1,73] = (2)*var(1); // [ var(73) , var(1) ]
     4867                D[3,73] = (-1)*var(3); // [ var(73) , var(3) ]
     4868                D[7,73] = var(7); // [ var(73) , var(7) ]
     4869                D[9,73] = (-1)*var(9); // [ var(73) , var(9) ]
     4870                D[12,73] = var(12); // [ var(73) , var(12) ]
     4871                D[13,73] = (-1)*var(13); // [ var(73) , var(13) ]
     4872                D[15,73] = (-1)*var(15); // [ var(73) , var(15) ]
     4873                D[17,73] = var(17); // [ var(73) , var(17) ]
     4874                D[18,73] = var(18); // [ var(73) , var(18) ]
     4875                D[19,73] = (-1)*var(19); // [ var(73) , var(19) ]
     4876                D[21,73] = (-1)*var(21); // [ var(73) , var(21) ]
     4877                D[22,73] = var(22); // [ var(73) , var(22) ]
     4878                D[23,73] = var(23); // [ var(73) , var(23) ]
     4879                D[24,73] = (-1)*var(24); // [ var(73) , var(24) ]
     4880                D[25,73] = (-1)*var(25); // [ var(73) , var(25) ]
     4881                D[26,73] = var(26); // [ var(73) , var(26) ]
     4882                D[27,73] = var(27); // [ var(73) , var(27) ]
     4883                D[28,73] = (-1)*var(28); // [ var(73) , var(28) ]
     4884                D[30,73] = var(30); // [ var(73) , var(30) ]
     4885                D[31,73] = (-1)*var(31); // [ var(73) , var(31) ]
     4886                D[33,73] = var(33); // [ var(73) , var(33) ]
     4887                D[2,74] = (2)*var(2); // [ var(74) , var(2) ]
     4888                D[4,74] = (-1)*var(4); // [ var(74) , var(4) ]
     4889                D[8,74] = var(8); // [ var(74) , var(8) ]
     4890                D[9,74] = (-1)*var(9); // [ var(74) , var(9) ]
     4891                D[10,74] = (-1)*var(10); // [ var(74) , var(10) ]
     4892                D[12,74] = (-1)*var(12); // [ var(74) , var(12) ]
     4893                D[13,74] = var(13); // [ var(74) , var(13) ]
     4894                D[14,74] = var(14); // [ var(74) , var(14) ]
     4895                D[15,74] = (-1)*var(15); // [ var(74) , var(15) ]
     4896                D[16,74] = (-1)*var(16); // [ var(74) , var(16) ]
     4897                D[17,74] = var(17); // [ var(74) , var(17) ]
     4898                D[18,74] = (-1)*var(18); // [ var(74) , var(18) ]
     4899                D[19,74] = var(19); // [ var(74) , var(19) ]
     4900                D[20,74] = var(20); // [ var(74) , var(20) ]
     4901                D[21,74] = (-1)*var(21); // [ var(74) , var(21) ]
     4902                D[22,74] = var(22); // [ var(74) , var(22) ]
     4903                D[23,74] = (-1)*var(23); // [ var(74) , var(23) ]
     4904                D[25,74] = var(25); // [ var(74) , var(25) ]
     4905                D[27,74] = var(27); // [ var(74) , var(27) ]
     4906                D[35,74] = (-1)*var(35); // [ var(74) , var(35) ]
     4907                D[36,74] = var(36); // [ var(74) , var(36) ]
     4908                D[1,75] = (-1)*var(1); // [ var(75) , var(1) ]
     4909                D[3,75] = (2)*var(3); // [ var(75) , var(3) ]
     4910                D[4,75] = (-1)*var(4); // [ var(75) , var(4) ]
     4911                D[7,75] = var(7); // [ var(75) , var(7) ]
     4912                D[8,75] = (-1)*var(8); // [ var(75) , var(8) ]
     4913                D[9,75] = var(9); // [ var(75) , var(9) ]
     4914                D[10,75] = (-1)*var(10); // [ var(75) , var(10) ]
     4915                D[13,75] = var(13); // [ var(75) , var(13) ]
     4916                D[14,75] = (-1)*var(14); // [ var(75) , var(14) ]
     4917                D[15,75] = var(15); // [ var(75) , var(15) ]
     4918                D[16,75] = (-1)*var(16); // [ var(75) , var(16) ]
     4919                D[19,75] = var(19); // [ var(75) , var(19) ]
     4920                D[20,75] = (-1)*var(20); // [ var(75) , var(20) ]
     4921                D[21,75] = var(21); // [ var(75) , var(21) ]
     4922                D[25,75] = var(25); // [ var(75) , var(25) ]
     4923                D[26,75] = (-1)*var(26); // [ var(75) , var(26) ]
     4924                D[29,75] = var(29); // [ var(75) , var(29) ]
     4925                D[30,75] = (-1)*var(30); // [ var(75) , var(30) ]
     4926                D[32,75] = var(32); // [ var(75) , var(32) ]
     4927                D[33,75] = (-1)*var(33); // [ var(75) , var(33) ]
     4928                D[34,75] = var(34); // [ var(75) , var(34) ]
     4929                D[2,76] = (-1)*var(2); // [ var(76) , var(2) ]
     4930                D[3,76] = (-1)*var(3); // [ var(76) , var(3) ]
     4931                D[4,76] = (2)*var(4); // [ var(76) , var(4) ]
     4932                D[5,76] = (-1)*var(5); // [ var(76) , var(5) ]
     4933                D[7,76] = (-1)*var(7); // [ var(76) , var(7) ]
     4934                D[8,76] = var(8); // [ var(76) , var(8) ]
     4935                D[9,76] = var(9); // [ var(76) , var(9) ]
     4936                D[10,76] = var(10); // [ var(76) , var(10) ]
     4937                D[11,76] = (-1)*var(11); // [ var(76) , var(11) ]
     4938                D[12,76] = var(12); // [ var(76) , var(12) ]
     4939                D[16,76] = var(16); // [ var(76) , var(16) ]
     4940                D[19,76] = (-1)*var(19); // [ var(76) , var(19) ]
     4941                D[22,76] = (-1)*var(22); // [ var(76) , var(22) ]
     4942                D[24,76] = var(24); // [ var(76) , var(24) ]
     4943                D[25,76] = (-1)*var(25); // [ var(76) , var(25) ]
     4944                D[26,76] = var(26); // [ var(76) , var(26) ]
     4945                D[27,76] = (-1)*var(27); // [ var(76) , var(27) ]
     4946                D[28,76] = var(28); // [ var(76) , var(28) ]
     4947                D[30,76] = var(30); // [ var(76) , var(30) ]
     4948                D[34,76] = (-1)*var(34); // [ var(76) , var(34) ]
     4949                D[35,76] = var(35); // [ var(76) , var(35) ]
     4950                D[4,77] = (-1)*var(4); // [ var(77) , var(4) ]
     4951                D[5,77] = (2)*var(5); // [ var(77) , var(5) ]
     4952                D[6,77] = (-1)*var(6); // [ var(77) , var(6) ]
     4953                D[8,77] = (-1)*var(8); // [ var(77) , var(8) ]
     4954                D[9,77] = (-1)*var(9); // [ var(77) , var(9) ]
     4955                D[10,77] = var(10); // [ var(77) , var(10) ]
     4956                D[11,77] = var(11); // [ var(77) , var(11) ]
     4957                D[12,77] = (-1)*var(12); // [ var(77) , var(12) ]
     4958                D[13,77] = (-1)*var(13); // [ var(77) , var(13) ]
     4959                D[14,77] = var(14); // [ var(77) , var(14) ]
     4960                D[15,77] = var(15); // [ var(77) , var(15) ]
     4961                D[17,77] = (-1)*var(17); // [ var(77) , var(17) ]
     4962                D[18,77] = var(18); // [ var(77) , var(18) ]
     4963                D[19,77] = var(19); // [ var(77) , var(19) ]
     4964                D[22,77] = var(22); // [ var(77) , var(22) ]
     4965                D[28,77] = (-1)*var(28); // [ var(77) , var(28) ]
     4966                D[30,77] = (-1)*var(30); // [ var(77) , var(30) ]
     4967                D[31,77] = var(31); // [ var(77) , var(31) ]
     4968                D[32,77] = (-1)*var(32); // [ var(77) , var(32) ]
     4969                D[33,77] = var(33); // [ var(77) , var(33) ]
     4970                D[34,77] = var(34); // [ var(77) , var(34) ]
     4971                D[5,78] = (-1)*var(5); // [ var(78) , var(5) ]
     4972                D[6,78] = (2)*var(6); // [ var(78) , var(6) ]
     4973                D[10,78] = (-1)*var(10); // [ var(78) , var(10) ]
     4974                D[11,78] = var(11); // [ var(78) , var(11) ]
     4975                D[14,78] = (-1)*var(14); // [ var(78) , var(14) ]
     4976                D[15,78] = (-1)*var(15); // [ var(78) , var(15) ]
     4977                D[16,78] = var(16); // [ var(78) , var(16) ]
     4978                D[18,78] = (-1)*var(18); // [ var(78) , var(18) ]
     4979                D[19,78] = (-1)*var(19); // [ var(78) , var(19) ]
     4980                D[20,78] = var(20); // [ var(78) , var(20) ]
     4981                D[21,78] = var(21); // [ var(78) , var(21) ]
     4982                D[22,78] = (-1)*var(22); // [ var(78) , var(22) ]
     4983                D[23,78] = var(23); // [ var(78) , var(23) ]
     4984                D[24,78] = (-1)*var(24); // [ var(78) , var(24) ]
     4985                D[25,78] = var(25); // [ var(78) , var(25) ]
     4986                D[26,78] = (-1)*var(26); // [ var(78) , var(26) ]
     4987                D[27,78] = var(27); // [ var(78) , var(27) ]
     4988                D[28,78] = var(28); // [ var(78) , var(28) ]
     4989                D[29,78] = (-1)*var(29); // [ var(78) , var(29) ]
     4990                D[30,78] = var(30); // [ var(78) , var(30) ]
     4991                D[32,78] = var(32); // [ var(78) , var(32) ]
     4992        // H(i) * Y(j):
     4993                D[37,73] = (-2)*var(37); // [ var(73) , var(37) ]
     4994                D[39,73] = var(39); // [ var(73) , var(39) ]
     4995                D[43,73] = (-1)*var(43); // [ var(73) , var(43) ]
     4996                D[45,73] = var(45); // [ var(73) , var(45) ]
     4997                D[48,73] = (-1)*var(48); // [ var(73) , var(48) ]
     4998                D[49,73] = var(49); // [ var(73) , var(49) ]
     4999                D[51,73] = var(51); // [ var(73) , var(51) ]
     5000                D[53,73] = (-1)*var(53); // [ var(73) , var(53) ]
     5001                D[54,73] = (-1)*var(54); // [ var(73) , var(54) ]
     5002                D[55,73] = var(55); // [ var(73) , var(55) ]
     5003                D[57,73] = var(57); // [ var(73) , var(57) ]
     5004                D[58,73] = (-1)*var(58); // [ var(73) , var(58) ]
     5005                D[59,73] = (-1)*var(59); // [ var(73) , var(59) ]
     5006                D[60,73] = var(60); // [ var(73) , var(60) ]
     5007                D[61,73] = var(61); // [ var(73) , var(61) ]
     5008                D[62,73] = (-1)*var(62); // [ var(73) , var(62) ]
     5009                D[63,73] = (-1)*var(63); // [ var(73) , var(63) ]
     5010                D[64,73] = var(64); // [ var(73) , var(64) ]
     5011                D[66,73] = (-1)*var(66); // [ var(73) , var(66) ]
     5012                D[67,73] = var(67); // [ var(73) , var(67) ]
     5013                D[69,73] = (-1)*var(69); // [ var(73) , var(69) ]
     5014                D[38,74] = (-2)*var(38); // [ var(74) , var(38) ]
     5015                D[40,74] = var(40); // [ var(74) , var(40) ]
     5016                D[44,74] = (-1)*var(44); // [ var(74) , var(44) ]
     5017                D[45,74] = var(45); // [ var(74) , var(45) ]
     5018                D[46,74] = var(46); // [ var(74) , var(46) ]
     5019                D[48,74] = var(48); // [ var(74) , var(48) ]
     5020                D[49,74] = (-1)*var(49); // [ var(74) , var(49) ]
     5021                D[50,74] = (-1)*var(50); // [ var(74) , var(50) ]
     5022                D[51,74] = var(51); // [ var(74) , var(51) ]
     5023                D[52,74] = var(52); // [ var(74) , var(52) ]
     5024                D[53,74] = (-1)*var(53); // [ var(74) , var(53) ]
     5025                D[54,74] = var(54); // [ var(74) , var(54) ]
     5026                D[55,74] = (-1)*var(55); // [ var(74) , var(55) ]
     5027                D[56,74] = (-1)*var(56); // [ var(74) , var(56) ]
     5028                D[57,74] = var(57); // [ var(74) , var(57) ]
     5029                D[58,74] = (-1)*var(58); // [ var(74) , var(58) ]
     5030                D[59,74] = var(59); // [ var(74) , var(59) ]
     5031                D[61,74] = (-1)*var(61); // [ var(74) , var(61) ]
     5032                D[63,74] = (-1)*var(63); // [ var(74) , var(63) ]
     5033                D[71,74] = var(71); // [ var(74) , var(71) ]
     5034                D[72,74] = (-1)*var(72); // [ var(74) , var(72) ]
     5035                D[37,75] = var(37); // [ var(75) , var(37) ]
     5036                D[39,75] = (-2)*var(39); // [ var(75) , var(39) ]
     5037                D[40,75] = var(40); // [ var(75) , var(40) ]
     5038                D[43,75] = (-1)*var(43); // [ var(75) , var(43) ]
     5039                D[44,75] = var(44); // [ var(75) , var(44) ]
     5040                D[45,75] = (-1)*var(45); // [ var(75) , var(45) ]
     5041                D[46,75] = var(46); // [ var(75) , var(46) ]
     5042                D[49,75] = (-1)*var(49); // [ var(75) , var(49) ]
     5043                D[50,75] = var(50); // [ var(75) , var(50) ]
     5044                D[51,75] = (-1)*var(51); // [ var(75) , var(51) ]
     5045                D[52,75] = var(52); // [ var(75) , var(52) ]
     5046                D[55,75] = (-1)*var(55); // [ var(75) , var(55) ]
     5047                D[56,75] = var(56); // [ var(75) , var(56) ]
     5048                D[57,75] = (-1)*var(57); // [ var(75) , var(57) ]
     5049                D[61,75] = (-1)*var(61); // [ var(75) , var(61) ]
     5050                D[62,75] = var(62); // [ var(75) , var(62) ]
     5051                D[65,75] = (-1)*var(65); // [ var(75) , var(65) ]
     5052                D[66,75] = var(66); // [ var(75) , var(66) ]
     5053                D[68,75] = (-1)*var(68); // [ var(75) , var(68) ]
     5054                D[69,75] = var(69); // [ var(75) , var(69) ]
     5055                D[70,75] = (-1)*var(70); // [ var(75) , var(70) ]
     5056                D[38,76] = var(38); // [ var(76) , var(38) ]
     5057                D[39,76] = var(39); // [ var(76) , var(39) ]
     5058                D[40,76] = (-2)*var(40); // [ var(76) , var(40) ]
     5059                D[41,76] = var(41); // [ var(76) , var(41) ]
     5060                D[43,76] = var(43); // [ var(76) , var(43) ]
     5061                D[44,76] = (-1)*var(44); // [ var(76) , var(44) ]
     5062                D[45,76] = (-1)*var(45); // [ var(76) , var(45) ]
     5063                D[46,76] = (-1)*var(46); // [ var(76) , var(46) ]
     5064                D[47,76] = var(47); // [ var(76) , var(47) ]
     5065                D[48,76] = (-1)*var(48); // [ var(76) , var(48) ]
     5066                D[52,76] = (-1)*var(52); // [ var(76) , var(52) ]
     5067                D[55,76] = var(55); // [ var(76) , var(55) ]
     5068                D[58,76] = var(58); // [ var(76) , var(58) ]
     5069                D[60,76] = (-1)*var(60); // [ var(76) , var(60) ]
     5070                D[61,76] = var(61); // [ var(76) , var(61) ]
     5071                D[62,76] = (-1)*var(62); // [ var(76) , var(62) ]
     5072                D[63,76] = var(63); // [ var(76) , var(63) ]
     5073                D[64,76] = (-1)*var(64); // [ var(76) , var(64) ]
     5074                D[66,76] = (-1)*var(66); // [ var(76) , var(66) ]
     5075                D[70,76] = var(70); // [ var(76) , var(70) ]
     5076                D[71,76] = (-1)*var(71); // [ var(76) , var(71) ]
     5077                D[40,77] = var(40); // [ var(77) , var(40) ]
     5078                D[41,77] = (-2)*var(41); // [ var(77) , var(41) ]
     5079                D[42,77] = var(42); // [ var(77) , var(42) ]
     5080                D[44,77] = var(44); // [ var(77) , var(44) ]
     5081                D[45,77] = var(45); // [ var(77) , var(45) ]
     5082                D[46,77] = (-1)*var(46); // [ var(77) , var(46) ]
     5083                D[47,77] = (-1)*var(47); // [ var(77) , var(47) ]
     5084                D[48,77] = var(48); // [ var(77) , var(48) ]
     5085                D[49,77] = var(49); // [ var(77) , var(49) ]
     5086                D[50,77] = (-1)*var(50); // [ var(77) , var(50) ]
     5087                D[51,77] = (-1)*var(51); // [ var(77) , var(51) ]
     5088                D[53,77] = var(53); // [ var(77) , var(53) ]
     5089                D[54,77] = (-1)*var(54); // [ var(77) , var(54) ]
     5090                D[55,77] = (-1)*var(55); // [ var(77) , var(55) ]
     5091                D[58,77] = (-1)*var(58); // [ var(77) , var(58) ]
     5092                D[64,77] = var(64); // [ var(77) , var(64) ]
     5093                D[66,77] = var(66); // [ var(77) , var(66) ]
     5094                D[67,77] = (-1)*var(67); // [ var(77) , var(67) ]
     5095                D[68,77] = var(68); // [ var(77) , var(68) ]
     5096                D[69,77] = (-1)*var(69); // [ var(77) , var(69) ]
     5097                D[70,77] = (-1)*var(70); // [ var(77) , var(70) ]
     5098                D[41,78] = var(41); // [ var(78) , var(41) ]
     5099                D[42,78] = (-2)*var(42); // [ var(78) , var(42) ]
     5100                D[46,78] = var(46); // [ var(78) , var(46) ]
     5101                D[47,78] = (-1)*var(47); // [ var(78) , var(47) ]
     5102                D[50,78] = var(50); // [ var(78) , var(50) ]
     5103                D[51,78] = var(51); // [ var(78) , var(51) ]
     5104                D[52,78] = (-1)*var(52); // [ var(78) , var(52) ]
     5105                D[54,78] = var(54); // [ var(78) , var(54) ]
     5106                D[55,78] = var(55); // [ var(78) , var(55) ]
     5107                D[56,78] = (-1)*var(56); // [ var(78) , var(56) ]
     5108                D[57,78] = (-1)*var(57); // [ var(78) , var(57) ]
     5109                D[58,78] = var(58); // [ var(78) , var(58) ]
     5110                D[59,78] = (-1)*var(59); // [ var(78) , var(59) ]
     5111                D[60,78] = var(60); // [ var(78) , var(60) ]
     5112                D[61,78] = (-1)*var(61); // [ var(78) , var(61) ]
     5113                D[62,78] = var(62); // [ var(78) , var(62) ]
     5114                D[63,78] = (-1)*var(63); // [ var(78) , var(63) ]
     5115                D[64,78] = (-1)*var(64); // [ var(78) , var(64) ]
     5116                D[65,78] = var(65); // [ var(78) , var(65) ]
     5117                D[66,78] = (-1)*var(66); // [ var(78) , var(66) ]
     5118                D[68,78] = (-1)*var(68); // [ var(78) , var(68) ]
     5119        // Y(i) * X(j):
     5120                D[1,37] = (-1)*var(73); // [ var(37) , var(1) ]
     5121                D[7,37] = (-1)*var(3); // [ var(37) , var(7) ]
     5122                D[12,37] = (-1)*var(9); // [ var(37) , var(12) ]
     5123                D[17,37] = (-1)*var(13); // [ var(37) , var(17) ]
     5124                D[18,37] = (-1)*var(15); // [ var(37) , var(18) ]
     5125                D[22,37] = (-1)*var(19); // [ var(37) , var(22) ]
     5126                D[23,37] = (-1)*var(21); // [ var(37) , var(23) ]
     5127                D[26,37] = (-1)*var(24); // [ var(37) , var(26) ]
     5128                D[27,37] = (-1)*var(25); // [ var(37) , var(27) ]
     5129                D[30,37] = (-1)*var(28); // [ var(37) , var(30) ]
     5130                D[33,37] = (-1)*var(31); // [ var(37) , var(33) ]
     5131                D[2,38] = (-1)*var(74); // [ var(38) , var(2) ]
     5132                D[8,38] = (-1)*var(4); // [ var(38) , var(8) ]
     5133                D[13,38] = (-1)*var(9); // [ var(38) , var(13) ]
     5134                D[14,38] = (-1)*var(10); // [ var(38) , var(14) ]
     5135                D[17,38] = (-1)*var(12); // [ var(38) , var(17) ]
     5136                D[19,38] = (-1)*var(15); // [ var(38) , var(19) ]
     5137                D[20,38] = (-1)*var(16); // [ var(38) , var(20) ]
     5138                D[22,38] = (-1)*var(18); // [ var(38) , var(22) ]
     5139                D[25,38] = (-1)*var(21); // [ var(38) , var(25) ]
     5140                D[27,38] = (-1)*var(23); // [ var(38) , var(27) ]
     5141                D[36,38] = var(35); // [ var(38) , var(36) ]
     5142                D[3,39] = (-1)*var(75); // [ var(39) , var(3) ]
     5143                D[7,39] = var(1); // [ var(39) , var(7) ]
     5144                D[9,39] = (-1)*var(4); // [ var(39) , var(9) ]
     5145                D[13,39] = (-1)*var(8); // [ var(39) , var(13) ]
     5146                D[15,39] = (-1)*var(10); // [ var(39) , var(15) ]
     5147                D[19,39] = (-1)*var(14); // [ var(39) , var(19) ]
     5148                D[21,39] = (-1)*var(16); // [ var(39) , var(21) ]
     5149                D[25,39] = (-1)*var(20); // [ var(39) , var(25) ]
     5150                D[29,39] = (-1)*var(26); // [ var(39) , var(29) ]
     5151                D[32,39] = (-1)*var(30); // [ var(39) , var(32) ]
     5152                D[34,39] = (-1)*var(33); // [ var(39) , var(34) ]
     5153                D[4,40] = (-1)*var(76); // [ var(40) , var(4) ]
     5154                D[8,40] = var(2); // [ var(40) , var(8) ]
     5155                D[9,40] = var(3); // [ var(40) , var(9) ]
     5156                D[10,40] = (-1)*var(5); // [ var(40) , var(10) ]
     5157                D[12,40] = var(7); // [ var(40) , var(12) ]
     5158                D[16,40] = (-1)*var(11); // [ var(40) , var(16) ]
     5159                D[24,40] = var(19); // [ var(40) , var(24) ]
     5160                D[26,40] = var(22); // [ var(40) , var(26) ]
     5161                D[28,40] = var(25); // [ var(40) , var(28) ]
     5162                D[30,40] = var(27); // [ var(40) , var(30) ]
     5163                D[35,40] = var(34); // [ var(40) , var(35) ]
     5164                D[5,41] = (-1)*var(77); // [ var(41) , var(5) ]
     5165                D[10,41] = var(4); // [ var(41) , var(10) ]
     5166                D[11,41] = (-1)*var(6); // [ var(41) , var(11) ]
     5167                D[14,41] = var(8); // [ var(41) , var(14) ]
     5168                D[15,41] = var(9); // [ var(41) , var(15) ]
     5169                D[18,41] = var(12); // [ var(41) , var(18) ]
     5170                D[19,41] = var(13); // [ var(41) , var(19) ]
     5171                D[22,41] = var(17); // [ var(41) , var(22) ]
     5172                D[31,41] = var(28); // [ var(41) , var(31) ]
     5173                D[33,41] = var(30); // [ var(41) , var(33) ]
     5174                D[34,41] = var(32); // [ var(41) , var(34) ]
     5175                D[6,42] = (-1)*var(78); // [ var(42) , var(6) ]
     5176                D[11,42] = var(5); // [ var(42) , var(11) ]
     5177                D[16,42] = var(10); // [ var(42) , var(16) ]
     5178                D[20,42] = var(14); // [ var(42) , var(20) ]
     5179                D[21,42] = var(15); // [ var(42) , var(21) ]
     5180                D[23,42] = var(18); // [ var(42) , var(23) ]
     5181                D[25,42] = var(19); // [ var(42) , var(25) ]
     5182                D[27,42] = var(22); // [ var(42) , var(27) ]
     5183                D[28,42] = var(24); // [ var(42) , var(28) ]
     5184                D[30,42] = var(26); // [ var(42) , var(30) ]
     5185                D[32,42] = var(29); // [ var(42) , var(32) ]
     5186                D[1,43] = (-1)*var(39); // [ var(43) , var(1) ]
     5187                D[3,43] = var(37); // [ var(43) , var(3) ]
     5188                D[7,43] = (-1)*var(73)+(-1)*var(75); // [ var(43) , var(7) ]
     5189                D[12,43] = (-1)*var(4); // [ var(43) , var(12) ]
     5190                D[17,43] = (-1)*var(8); // [ var(43) , var(17) ]
     5191                D[18,43] = (-1)*var(10); // [ var(43) , var(18) ]
     5192                D[22,43] = (-1)*var(14); // [ var(43) , var(22) ]
     5193                D[23,43] = (-1)*var(16); // [ var(43) , var(23) ]
     5194                D[27,43] = (-1)*var(20); // [ var(43) , var(27) ]
     5195                D[29,43] = var(24); // [ var(43) , var(29) ]
     5196                D[32,43] = var(28); // [ var(43) , var(32) ]
     5197                D[34,43] = var(31); // [ var(43) , var(34) ]
     5198                D[2,44] = (-1)*var(40); // [ var(44) , var(2) ]
     5199                D[4,44] = var(38); // [ var(44) , var(4) ]
     5200                D[8,44] = (-1)*var(74)+(-1)*var(76); // [ var(44) , var(8) ]
     5201                D[13,44] = var(3); // [ var(44) , var(13) ]
     5202                D[14,44] = (-1)*var(5); // [ var(44) , var(14) ]
     5203                D[17,44] = var(7); // [ var(44) , var(17) ]
     5204                D[20,44] = (-1)*var(11); // [ var(44) , var(20) ]
     5205                D[24,44] = (-1)*var(15); // [ var(44) , var(24) ]
     5206                D[26,44] = (-1)*var(18); // [ var(44) , var(26) ]
     5207                D[28,44] = (-1)*var(21); // [ var(44) , var(28) ]
     5208                D[30,44] = (-1)*var(23); // [ var(44) , var(30) ]
     5209                D[36,44] = (-1)*var(34); // [ var(44) , var(36) ]
     5210                D[3,45] = (-1)*var(40); // [ var(45) , var(3) ]
     5211                D[4,45] = var(39); // [ var(45) , var(4) ]
     5212                D[9,45] = (-1)*var(75)+(-1)*var(76); // [ var(45) , var(9) ]
     5213                D[12,45] = var(1); // [ var(45) , var(12) ]
     5214                D[13,45] = var(2); // [ var(45) , var(13) ]
     5215                D[15,45] = (-1)*var(5); // [ var(45) , var(15) ]
     5216                D[21,45] = (-1)*var(11); // [ var(45) , var(21) ]
     5217                D[24,45] = (-1)*var(14); // [ var(45) , var(24) ]
     5218                D[28,45] = (-1)*var(20); // [ var(45) , var(28) ]
     5219                D[29,45] = var(22); // [ var(45) , var(29) ]
     5220                D[32,45] = var(27); // [ var(45) , var(32) ]
     5221                D[35,45] = (-1)*var(33); // [ var(45) , var(35) ]
     5222                D[4,46] = (-1)*var(41); // [ var(46) , var(4) ]
     5223                D[5,46] = var(40); // [ var(46) , var(5) ]
     5224                D[10,46] = (-1)*var(76)+(-1)*var(77); // [ var(46) , var(10) ]
     5225                D[14,46] = var(2); // [ var(46) , var(14) ]
     5226                D[15,46] = var(3); // [ var(46) , var(15) ]
     5227                D[16,46] = (-1)*var(6); // [ var(46) , var(16) ]
     5228                D[18,46] = var(7); // [ var(46) , var(18) ]
     5229                D[24,46] = (-1)*var(13); // [ var(46) , var(24) ]
     5230                D[26,46] = (-1)*var(17); // [ var(46) , var(26) ]
     5231                D[31,46] = var(25); // [ var(46) , var(31) ]
     5232                D[33,46] = var(27); // [ var(46) , var(33) ]
     5233                D[35,46] = (-1)*var(32); // [ var(46) , var(35) ]
     5234                D[5,47] = (-1)*var(42); // [ var(47) , var(5) ]
     5235                D[6,47] = var(41); // [ var(47) , var(6) ]
     5236                D[11,47] = (-1)*var(77)+(-1)*var(78); // [ var(47) , var(11) ]
     5237                D[16,47] = var(4); // [ var(47) , var(16) ]
     5238                D[20,47] = var(8); // [ var(47) , var(20) ]
     5239                D[21,47] = var(9); // [ var(47) , var(21) ]
     5240                D[23,47] = var(12); // [ var(47) , var(23) ]
     5241                D[25,47] = var(13); // [ var(47) , var(25) ]
     5242                D[27,47] = var(17); // [ var(47) , var(27) ]
     5243                D[31,47] = (-1)*var(24); // [ var(47) , var(31) ]
     5244                D[33,47] = (-1)*var(26); // [ var(47) , var(33) ]
     5245                D[34,47] = (-1)*var(29); // [ var(47) , var(34) ]
     5246                D[1,48] = (-1)*var(45); // [ var(48) , var(1) ]
     5247                D[4,48] = var(43); // [ var(48) , var(4) ]
     5248                D[7,48] = (-1)*var(40); // [ var(48) , var(7) ]
     5249                D[9,48] = var(37); // [ var(48) , var(9) ]
     5250                D[12,48] = (-1)*var(73)+(-1)*var(75)+(-1)*var(76); // [ var(48) , var(12) ]
     5251                D[17,48] = var(2); // [ var(48) , var(17) ]
     5252                D[18,48] = (-1)*var(5); // [ var(48) , var(18) ]
     5253                D[23,48] = (-1)*var(11); // [ var(48) , var(23) ]
     5254                D[26,48] = (-1)*var(14); // [ var(48) , var(26) ]
     5255                D[29,48] = (-1)*var(19); // [ var(48) , var(29) ]
     5256                D[30,48] = (-1)*var(20); // [ var(48) , var(30) ]
     5257                D[32,48] = (-1)*var(25); // [ var(48) , var(32) ]
     5258                D[35,48] = var(31); // [ var(48) , var(35) ]
     5259                D[2,49] = (-1)*var(45); // [ var(49) , var(2) ]
     5260                D[3,49] = (-1)*var(44); // [ var(49) , var(3) ]
     5261                D[8,49] = var(39); // [ var(49) , var(8) ]
     5262                D[9,49] = var(38); // [ var(49) , var(9) ]
     5263                D[13,49] = (-1)*var(74)+(-1)*var(75)+(-1)*var(76); // [ var(49) , var(13) ]
     5264                D[17,49] = var(1); // [ var(49) , var(17) ]
     5265                D[19,49] = (-1)*var(5); // [ var(49) , var(19) ]
     5266                D[24,49] = var(10); // [ var(49) , var(24) ]
     5267                D[25,49] = (-1)*var(11); // [ var(49) , var(25) ]
     5268                D[28,49] = var(16); // [ var(49) , var(28) ]
     5269                D[29,49] = (-1)*var(18); // [ var(49) , var(29) ]
     5270                D[32,49] = (-1)*var(23); // [ var(49) , var(32) ]
     5271                D[36,49] = var(33); // [ var(49) , var(36) ]
     5272                D[2,50] = (-1)*var(46); // [ var(50) , var(2) ]
     5273                D[5,50] = var(44); // [ var(50) , var(5) ]
     5274                D[8,50] = (-1)*var(41); // [ var(50) , var(8) ]
     5275                D[10,50] = var(38); // [ var(50) , var(10) ]
     5276                D[14,50] = (-1)*var(74)+(-1)*var(76)+(-1)*var(77); // [ var(50) , var(14) ]
     5277                D[19,50] = var(3); // [ var(50) , var(19) ]
     5278                D[20,50] = (-1)*var(6); // [ var(50) , var(20) ]
     5279                D[22,50] = var(7); // [ var(50) , var(22) ]
     5280                D[24,50] = var(9); // [ var(50) , var(24) ]
     5281                D[26,50] = var(12); // [ var(50) , var(26) ]
     5282                D[31,50] = (-1)*var(21); // [ var(50) , var(31) ]
     5283                D[33,50] = (-1)*var(23); // [ var(50) , var(33) ]
     5284                D[36,50] = var(32); // [ var(50) , var(36) ]
     5285                D[3,51] = (-1)*var(46); // [ var(51) , var(3) ]
     5286                D[5,51] = var(45); // [ var(51) , var(5) ]
     5287                D[9,51] = (-1)*var(41); // [ var(51) , var(9) ]
     5288                D[10,51] = var(39); // [ var(51) , var(10) ]
     5289                D[15,51] = (-1)*var(75)+(-1)*var(76)+(-1)*var(77); // [ var(51) , var(15) ]
     5290                D[18,51] = var(1); // [ var(51) , var(18) ]
     5291                D[19,51] = var(2); // [ var(51) , var(19) ]
     5292                D[21,51] = (-1)*var(6); // [ var(51) , var(21) ]
     5293                D[24,51] = var(8); // [ var(51) , var(24) ]
     5294                D[29,51] = (-1)*var(17); // [ var(51) , var(29) ]
     5295                D[31,51] = (-1)*var(20); // [ var(51) , var(31) ]
     5296                D[34,51] = var(27); // [ var(51) , var(34) ]
     5297                D[35,51] = var(30); // [ var(51) , var(35) ]
     5298                D[4,52] = (-1)*var(47); // [ var(52) , var(4) ]
     5299                D[6,52] = var(46); // [ var(52) , var(6) ]
     5300                D[10,52] = (-1)*var(42); // [ var(52) , var(10) ]
     5301                D[11,52] = var(40); // [ var(52) , var(11) ]
     5302                D[16,52] = (-1)*var(76)+(-1)*var(77)+(-1)*var(78); // [ var(52) , var(16) ]
     5303                D[20,52] = var(2); // [ var(52) , var(20) ]
     5304                D[21,52] = var(3); // [ var(52) , var(21) ]
     5305                D[23,52] = var(7); // [ var(52) , var(23) ]
     5306                D[28,52] = (-1)*var(13); // [ var(52) , var(28) ]
     5307                D[30,52] = (-1)*var(17); // [ var(52) , var(30) ]
     5308                D[31,52] = (-1)*var(19); // [ var(52) , var(31) ]
     5309                D[33,52] = (-1)*var(22); // [ var(52) , var(33) ]
     5310                D[35,52] = var(29); // [ var(52) , var(35) ]
     5311                D[1,53] = (-1)*var(49); // [ var(53) , var(1) ]
     5312                D[2,53] = (-1)*var(48); // [ var(53) , var(2) ]
     5313                D[7,53] = (-1)*var(44); // [ var(53) , var(7) ]
     5314                D[8,53] = var(43); // [ var(53) , var(8) ]
     5315                D[12,53] = var(38); // [ var(53) , var(12) ]
     5316                D[13,53] = var(37); // [ var(53) , var(13) ]
     5317                D[17,53] = (-1)*var(73)+(-1)*var(74)+(-1)*var(75)+(-1)*var(76); // [ var(53) , var(17) ]
     5318                D[22,53] = (-1)*var(5); // [ var(53) , var(22) ]
     5319                D[26,53] = var(10); // [ var(53) , var(26) ]
     5320                D[27,53] = (-1)*var(11); // [ var(53) , var(27) ]
     5321                D[29,53] = var(15); // [ var(53) , var(29) ]
     5322                D[30,53] = var(16); // [ var(53) , var(30) ]
     5323                D[32,53] = var(21); // [ var(53) , var(32) ]
     5324                D[36,53] = (-1)*var(31); // [ var(53) , var(36) ]
     5325                D[1,54] = (-1)*var(51); // [ var(54) , var(1) ]
     5326                D[5,54] = var(48); // [ var(54) , var(5) ]
     5327                D[7,54] = (-1)*var(46); // [ var(54) , var(7) ]
     5328                D[10,54] = var(43); // [ var(54) , var(10) ]
     5329                D[12,54] = (-1)*var(41); // [ var(54) , var(12) ]
     5330                D[15,54] = var(37); // [ var(54) , var(15) ]
     5331                D[18,54] = (-1)*var(73)+(-1)*var(75)+(-1)*var(76)+(-1)*var(77); // [ var(54) , var(18) ]
     5332                D[22,54] = var(2); // [ var(54) , var(22) ]
     5333                D[23,54] = (-1)*var(6); // [ var(54) , var(23) ]
     5334                D[26,54] = var(8); // [ var(54) , var(26) ]
     5335                D[29,54] = var(13); // [ var(54) , var(29) ]
     5336                D[33,54] = (-1)*var(20); // [ var(54) , var(33) ]
     5337                D[34,54] = (-1)*var(25); // [ var(54) , var(34) ]
     5338                D[35,54] = (-1)*var(28); // [ var(54) , var(35) ]
     5339                D[2,55] = (-1)*var(51); // [ var(55) , var(2) ]
     5340                D[3,55] = (-1)*var(50); // [ var(55) , var(3) ]
     5341                D[5,55] = var(49); // [ var(55) , var(5) ]
     5342                D[13,55] = (-1)*var(41); // [ var(55) , var(13) ]
     5343                D[14,55] = var(39); // [ var(55) , var(14) ]
     5344                D[15,55] = var(38); // [ var(55) , var(15) ]
     5345                D[19,55] = (-1)*var(74)+(-1)*var(75)+(-1)*var(76)+(-1)*var(77); // [ var(55) , var(19) ]
     5346                D[22,55] = var(1); // [ var(55) , var(22) ]
     5347                D[24,55] = (-1)*var(4); // [ var(55) , var(24) ]
     5348                D[25,55] = (-1)*var(6); // [ var(55) , var(25) ]
     5349                D[29,55] = var(12); // [ var(55) , var(29) ]
     5350                D[31,55] = var(16); // [ var(55) , var(31) ]
     5351                D[34,55] = (-1)*var(23); // [ var(55) , var(34) ]
     5352                D[36,55] = (-1)*var(30); // [ var(55) , var(36) ]
     5353                D[2,56] = (-1)*var(52); // [ var(56) , var(2) ]
     5354                D[6,56] = var(50); // [ var(56) , var(6) ]
     5355                D[8,56] = (-1)*var(47); // [ var(56) , var(8) ]
     5356                D[11,56] = var(44); // [ var(56) , var(11) ]
     5357                D[14,56] = (-1)*var(42); // [ var(56) , var(14) ]
     5358                D[16,56] = var(38); // [ var(56) , var(16) ]
     5359                D[20,56] = (-1)*var(74)+(-1)*var(76)+(-1)*var(77)+(-1)*var(78); // [ var(56) , var(20) ]
     5360                D[25,56] = var(3); // [ var(56) , var(25) ]
     5361                D[27,56] = var(7); // [ var(56) , var(27) ]
     5362                D[28,56] = var(9); // [ var(56) , var(28) ]
     5363                D[30,56] = var(12); // [ var(56) , var(30) ]
     5364                D[31,56] = var(15); // [ var(56) , var(31) ]
     5365                D[33,56] = var(18); // [ var(56) , var(33) ]
     5366                D[36,56] = (-1)*var(29); // [ var(56) , var(36) ]
     5367                D[3,57] = (-1)*var(52); // [ var(57) , var(3) ]
     5368                D[6,57] = var(51); // [ var(57) , var(6) ]
     5369                D[9,57] = (-1)*var(47); // [ var(57) , var(9) ]
     5370                D[11,57] = var(45); // [ var(57) , var(11) ]
     5371                D[15,57] = (-1)*var(42); // [ var(57) , var(15) ]
     5372                D[16,57] = var(39); // [ var(57) , var(16) ]
     5373                D[21,57] = (-1)*var(75)+(-1)*var(76)+(-1)*var(77)+(-1)*var(78); // [ var(57) , var(21) ]
     5374                D[23,57] = var(1); // [ var(57) , var(23) ]
     5375                D[25,57] = var(2); // [ var(57) , var(25) ]
     5376                D[28,57] = var(8); // [ var(57) , var(28) ]
     5377                D[31,57] = var(14); // [ var(57) , var(31) ]
     5378                D[32,57] = (-1)*var(17); // [ var(57) , var(32) ]
     5379                D[34,57] = (-1)*var(22); // [ var(57) , var(34) ]
     5380                D[35,57] = (-1)*var(26); // [ var(57) , var(35) ]
     5381                D[1,58] = (-1)*var(55); // [ var(58) , var(1) ]
     5382                D[2,58] = (-1)*var(54); // [ var(58) , var(2) ]
     5383                D[5,58] = var(53); // [ var(58) , var(5) ]
     5384                D[7,58] = (-1)*var(50); // [ var(58) , var(7) ]
     5385                D[14,58] = var(43); // [ var(58) , var(14) ]
     5386                D[17,58] = (-1)*var(41); // [ var(58) , var(17) ]
     5387                D[18,58] = var(38); // [ var(58) , var(18) ]
     5388                D[19,58] = var(37); // [ var(58) , var(19) ]
     5389                D[22,58] = (-1)*var(73)+(-1)*var(74)+(-1)*var(75)+(-1)*var(76)+(-1)*var(77); // [ var(58) , var(22) ]
     5390                D[26,58] = (-1)*var(4); // [ var(58) , var(26) ]
     5391                D[27,58] = (-1)*var(6); // [ var(58) , var(27) ]
     5392                D[29,58] = (-1)*var(9); // [ var(58) , var(29) ]
     5393                D[33,58] = var(16); // [ var(58) , var(33) ]
     5394                D[34,58] = var(21); // [ var(58) , var(34) ]
     5395                D[36,58] = var(28); // [ var(58) , var(36) ]
     5396                D[1,59] = (-1)*var(57); // [ var(59) , var(1) ]
     5397                D[6,59] = var(54); // [ var(59) , var(6) ]
     5398                D[7,59] = (-1)*var(52); // [ var(59) , var(7) ]
     5399                D[11,59] = var(48); // [ var(59) , var(11) ]
     5400                D[12,59] = (-1)*var(47); // [ var(59) , var(12) ]
     5401                D[16,59] = var(43); // [ var(59) , var(16) ]
     5402                D[18,59] = (-1)*var(42); // [ var(59) , var(18) ]
     5403                D[21,59] = var(37); // [ var(59) , var(21) ]
     5404                D[23,59] = (-1)*var(73)+(-1)*var(75)+(-1)*var(76)+(-1)*var(77)+(-1)*var(78); // [ var(59) , var(23) ]
     5405                D[27,59] = var(2); // [ var(59) , var(27) ]
     5406                D[30,59] = var(8); // [ var(59) , var(30) ]
     5407                D[32,59] = var(13); // [ var(59) , var(32) ]
     5408                D[33,59] = var(14); // [ var(59) , var(33) ]
     5409                D[34,59] = var(19); // [ var(59) , var(34) ]
     5410                D[35,59] = var(24); // [ var(59) , var(35) ]
     5411                D[4,60] = var(55); // [ var(60) , var(4) ]
     5412                D[8,60] = (-1)*var(51); // [ var(60) , var(8) ]
     5413                D[9,60] = (-1)*var(50); // [ var(60) , var(9) ]
     5414                D[10,60] = (-1)*var(49); // [ var(60) , var(10) ]
     5415                D[13,60] = var(46); // [ var(60) , var(13) ]
     5416                D[14,60] = var(45); // [ var(60) , var(14) ]
     5417                D[15,60] = var(44); // [ var(60) , var(15) ]
     5418                D[19,60] = (-1)*var(40); // [ var(60) , var(19) ]
     5419                D[24,60] = (-1)*var(74)+(-1)*var(75)+(-2)*var(76)+(-1)*var(77); // [ var(60) , var(24) ]
     5420                D[26,60] = var(1); // [ var(60) , var(26) ]
     5421                D[28,60] = (-1)*var(6); // [ var(60) , var(28) ]
     5422                D[29,60] = (-1)*var(7); // [ var(60) , var(29) ]
     5423                D[31,60] = var(11); // [ var(60) , var(31) ]
     5424                D[35,60] = (-1)*var(23); // [ var(60) , var(35) ]
     5425                D[36,60] = var(27); // [ var(60) , var(36) ]
     5426                D[2,61] = (-1)*var(57); // [ var(61) , var(2) ]
     5427                D[3,61] = (-1)*var(56); // [ var(61) , var(3) ]
     5428                D[6,61] = var(55); // [ var(61) , var(6) ]
     5429                D[11,61] = var(49); // [ var(61) , var(11) ]
     5430                D[13,61] = (-1)*var(47); // [ var(61) , var(13) ]
     5431                D[19,61] = (-1)*var(42); // [ var(61) , var(19) ]
     5432                D[20,61] = var(39); // [ var(61) , var(20) ]
     5433                D[21,61] = var(38); // [ var(61) , var(21) ]
     5434                D[25,61] = (-1)*var(74)+(-1)*var(75)+(-1)*var(76)+(-1)*var(77)+(-1)*var(78); // [ var(61) , var(25) ]
     5435                D[27,61] = var(1); // [ var(61) , var(27) ]