Gröbner Bases
Syzygies
Resolutions
Quantum Alg.
Left Maximality
Max. Twosided
Finding a Maximal Two-Sided Ideal in a Given Left Ideal - Computations
The preliminary settings:
ring r = 0,(e,f,h,a),Dp;
matrix d[4][4];
d[1,2]=-h;  d[1,3]=2e;  d[2,3]=-2f;
system("PLURAL",1,d);
int i,j,s;
ideal A,B;
poly p;
module U,W;
A=e, h-a;
A=std(A);

s=size(A);
for (i=1; i<=s; i++)
{
  W[i]=A[i]*gen(1)+gen(i+1);
  p=NF(A[i]*f,A);
  W[s+i]=p*gen(1)+gen(i+s+1);
}
The iteration cycle:
U=transpose(std(W));
B=0;
for (i=1; i<=nrows(U); i++)
{
  if (U[1][i]==0)
  {
     p=0;
     for(j=s+2;j<=ncols(U);j++)
     {
       if (U[j][i]!=0) { p=p + U[j][i]*A[j-s-1]; }
     }
     if (p!=0)
     {
       if (B==0) { B=B,p; B=std(B); }
       else { B=std(B,p);  }
     }
  }
}
B;

KL, 06/03 http://www.singular.uni-kl.de