121{
  124  {
  127  }
  128 
  130 
  134 
  138 
  139  for(
int j0=1,
j=2,
k=0;
j<=n+1;j0=
j,
j++)
 
  140  {
  144    {
  148    }
  149    else
  150    {
  153 
  154      j0--;
  155      for(
int i=1;
i<=n0;
i++)
 
  156        for(
int j=1;
j<=n0;
j++)
 
  158      for(
int i=1;
i<=n0;
i++)
 
  160 
  164      {
  167      }
  168 
  170      {
  172        {
  175        }
  176        else
  179        {
  184          else
  190        }
  191        else
  192        {
  198        }
  199      }
  200 
  201      delete(m0);
  203    }
  204  }
  205 
  208 
  209  for(int i0=0;i0<n-1;i0++)
  210  {
  211    for(int i1=i0+1;i1<n;i1++)
  212    {
  214      {
  215        (*m)[i0]+=(*m)[i1];
  216        (*m)[i1]=0;
  217      }
  218      else
  219      {
  227        {
  228          poly e1=e->m[i0];
  229          e->m[i0]=e->m[i1];
  230          e->m[i1]=e1;
  231          int m1=(*m)[i0];
  232          (*m)[i0]=(*m)[i1];
  233          (*m)[i1]=m1;
  234        }
  235      }
  236    }
  237  }
  238 
  239  int n0=0;
  242      n0++;
  243 
  246 
  247  for(
int i=0,i0=0;
i<n;
i++)
 
  249    {
  253      i0++;
  254    }
  255 
  258 
  264 
  266}
ideal singclap_factorize(poly f, intvec **v, int with_exps, const ring r)
 
BOOLEAN evHessenberg(leftv res, leftv h)
 
#define idDelete(H)
delete an ideal
 
matrix mpNew(int r, int c)
create a r x c zero-matrix
 
poly mp_DetBareiss(matrix a, const ring r)
returns the determinant of the matrix m; uses Bareiss algorithm
 
#define MATELEM(mat, i, j)
1-based access to matrix
 
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy
 
#define pHead(p)
returns newly allocated copy of Lm(p), coef is copied, next=NULL, p might be NULL
 
#define pGetExp(p, i)
Exponent.
 
#define pEqualPolys(p1, p2)
 
#define pCopy(p)
return a copy of the poly
 
ideal idInit(int idsize, int rank)
initialise an ideal / module