Changeset fca547 in git


Ignore:
Timestamp:
Apr 3, 1998, 7:38:45 PM (25 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
Children:
5480dab448af565abfd5b8f28e1766de56df7613
Parents:
36ff0ee47861d9c243c573d5f915206fde045c9b
Message:
*** empty log message ***


git-svn-id: file:///usr/local/Singular/svn/trunk@1317 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
Singular
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • Singular/extra.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR      *
    33*****************************************/
    4 /* $Id: extra.cc,v 1.31 1998-03-27 15:43:27 obachman Exp $ */
     4/* $Id: extra.cc,v 1.32 1998-04-03 17:38:35 Singular Exp $ */
    55/*
    66* ABSTRACT: general interface to internals of Singular ("system" command)
     
    7474  if(h->Typ() == STRING_CMD)
    7575  {
    76 /*==================== test ==================================*/
    77     if(strcmp((char*)(h->Data()),"x")==0)
    78     {
    79      int i=3;
    80      int j=2;
    81      j=i/(j-j);
    82      res->data=(void *)j;
    83      return FALSE;
    84     }
    85     else
    8676/*==================== lib ==================================*/
    8777    if(strcmp((char*)(h->Data()),"LIB")==0)
     
    10292    if(strcmp((char*)(h->Data()),"proclist")==0)
    10393    {
    104       int piShowProcList();
    105       res->rtyp=STRING_CMD;
    106       res->data=(void *)mstrdup("");
     94      void piShowProcList();
     95      //res->rtyp=STRING_CMD;
     96      //res->data=(void *)mstrdup("");
    10797      piShowProcList();
    10898      return FALSE;
  • Singular/iparith.cc

    r36ff0ee rfca547  
    209209  { "monitor",     0, MONITOR_CMD ,       CMD_12},
    210210  { "mult",        0, MULTIPLICITY_CMD ,  CMD_1},
     211  #ifdef OLD_RES
    211212  { "mres",        0, MRES_CMD ,          CMD_23},
     213  #else
     214  { "mres",        0, MRES_CMD ,          CMD_2},
     215  #endif
    212216  { "mstd",        0, MSTD_CMD ,          CMD_1},
    213217  { "nameof",      0, NAMEOF_CMD ,        CMD_1},
     
    243247  { "reduce",      0, REDUCE_CMD ,        CMD_23},
    244248  { "regularity",  0, REGULARITY_CMD ,    CMD_1},
     249  #ifdef OLD_RES
    245250  { "res",         0, RES_CMD ,           CMD_23},
     251  #else
     252  { "res",         0, RES_CMD ,           CMD_2},
     253  #endif
    246254  { "reservedName",0, RESERVEDNAME_CMD ,  CMD_M},
    247255  { "resolution",  0, RESOLUTION_CMD ,    RING_DECL},
     
    255263  { "size",        0, COUNT_CMD ,         CMD_1},
    256264  { "sortvec",     0, SORTVEC_CMD ,       CMD_1},
     265  #ifdef OLD_RES
    257266  { "sres",        0, SRES_CMD ,          CMD_23},
     267  #else
     268  { "sres",        0, SRES_CMD ,          CMD_2},
     269  #endif
    258270  { "status",      0, STATUS_CMD,         CMD_23},
    259271  { "std",         0, STD_CMD ,           CMD_12},
     
    16991711  if (r==NULL) return TRUE;
    17001712  res->data=(void *)liMakeResolv(r,l,wmaxl,u->Typ(),weights);
     1713  //res->data=(void *)syMakeResolution(r,l);
    17011714  return FALSE;
    17021715}
     
    20412054,{jjRES,       MRES_CMD,       LIST_CMD,       IDEAL_CMD,  INT_CMD PROFILER}
    20422055,{jjRES,       MRES_CMD,       LIST_CMD,       MODUL_CMD,  INT_CMD PROFILER}
     2056//,{jjRES,       MRES_CMD,       RESOLUTION_CMD, IDEAL_CMD,  INT_CMD PROFILER}
     2057//,{jjRES,       MRES_CMD,       RESOLUTION_CMD, MODUL_CMD,  INT_CMD PROFILER}
    20432058,{jjPARSTR2,   PARSTR_CMD,     STRING_CMD,     RING_CMD,   INT_CMD PROFILER}
    20442059,{jjPARSTR2,   PARSTR_CMD,     STRING_CMD,     QRING_CMD,  INT_CMD PROFILER}
     
    20572072,{jjRES,       RES_CMD,        LIST_CMD,       IDEAL_CMD,  INT_CMD PROFILER}
    20582073,{jjRES,       RES_CMD,        LIST_CMD,       MODUL_CMD,  INT_CMD PROFILER}
     2074//,{jjRES,       RES_CMD,        RESOLUTION_CMD, IDEAL_CMD,  INT_CMD PROFILER}
     2075//,{jjRES,       RES_CMD,        RESOLUTION_CMD, MODUL_CMD,  INT_CMD PROFILER}
    20592076,{jjSTATUS2,   STATUS_CMD,     STRING_CMD,     LINK_CMD,   STRING_CMD PROFILER}
    20602077,{jjSIMPL_P,   SIMPLIFY_CMD,   POLY_CMD,       POLY_CMD,   INT_CMD PROFILER}
     
    20642081,{jjRES,       SRES_CMD,       LIST_CMD,       IDEAL_CMD,  INT_CMD PROFILER}
    20652082,{jjRES,       SRES_CMD,       LIST_CMD,       MODUL_CMD,  INT_CMD PROFILER}
     2083//,{jjRES,       SRES_CMD,       RESOLUTION_CMD, IDEAL_CMD,  INT_CMD PROFILER}
     2084//,{jjRES,       SRES_CMD,       RESOLUTION_CMD, MODUL_CMD,  INT_CMD PROFILER}
    20662085,{jjCALL2MANY, SYSTEM_CMD,     ANY_TYPE/*set by p*/,STRING_CMD, DEF_CMD PROFILER}
    20672086,{jjSTD_1,     STD_CMD,        IDEAL_CMD,      IDEAL_CMD,  POLY_CMD PROFILER}
     
    31243143,{jjKBASE,      KBASE_CMD,       MODUL_CMD,      MODUL_CMD }
    31253144,{atKILLATTR1,  KILLATTR_CMD,    NONE,           IDHDL }
    3126 ,{jjCALL1MANY,  LIST_CMD,        LIST_CMD,       DEF_CMD }
    31273145#ifdef MDEBUG
    31283146,{jjpHead,      LEAD_CMD,        POLY_CMD,       POLY_CMD }
     
    31413159,{jjLEADEXP,    LEADEXP_CMD,     INTVEC_CMD,     POLY_CMD }
    31423160,{jjLEADEXP,    LEADEXP_CMD,     INTVEC_CMD,     VECTOR_CMD }
     3161,{jjCALL1MANY,  LIST_CMD,        LIST_CMD,       DEF_CMD }
    31433162,{jjWRONG,      MAP_CMD,         0,              ANY_TYPE}
    31443163,{jjDUMMY,      MATRIX_CMD,      MATRIX_CMD,     MATRIX_CMD }
     
    37433762  return FALSE;
    37443763}
     3764#ifdef OLD_RES
    37453765static BOOLEAN jjRES3(leftv res, leftv u, leftv v, leftv w)
    37463766{
    3747 #ifdef OLD_RES
    37483767  int maxl=(int)v->Data();
    37493768  int l=0;
     
    37783797  iiMakeResolv(r,l,wmaxl,w->name,t3,weights);
    37793798  return FALSE;
    3780 #else
    37813799  return TRUE;
     3800}
    37823801#endif
    3783 }
    37843802static BOOLEAN jjSTATUS3(leftv res, leftv u, leftv v, leftv w)
    37853803{
     
    38303848,{jjMATRIX_Ma,      MATRIX_CMD, MATRIX_CMD, MATRIX_CMD, INT_CMD,    INT_CMD }
    38313849,{jjCALL3MANY,      MODUL_CMD,  MODUL_CMD,  DEF_CMD,    DEF_CMD,    DEF_CMD }
     3850#ifdef OLD_RES
    38323851,{jjRES3,           MRES_CMD,   NONE,       IDEAL_CMD,  INT_CMD,    ANY_TYPE }
    38333852,{jjRES3,           MRES_CMD,   NONE,       MODUL_CMD,  INT_CMD,    ANY_TYPE }
     3853#endif
    38343854,{jjPREIMAGE,       PREIMAGE_CMD, IDEAL_CMD, RING_CMD,  ANY_TYPE,   ANY_TYPE }
    38353855,{jjPREIMAGE,       PREIMAGE_CMD, IDEAL_CMD, QRING_CMD, ANY_TYPE,   ANY_TYPE }
     
    38413861,{jjREDUCE3_ID,     REDUCE_CMD, MODUL_CMD,  MODUL_CMD,  MODUL_CMD,  INT_CMD }
    38423862,{jjREDUCE3_ID,     REDUCE_CMD, MODUL_CMD,  MODUL_CMD,  IDEAL_CMD,  INT_CMD }
     3863#ifdef OLD_RES
    38433864,{jjRES3,           RES_CMD,    NONE,       IDEAL_CMD,  INT_CMD,    ANY_TYPE }
    38443865,{jjRES3,           RES_CMD,    NONE,       MODUL_CMD,  INT_CMD,    ANY_TYPE }
     3866#endif
    38453867#ifdef HAVE_FACTORY
    38463868,{jjRESULTANT,      RESULTANT_CMD, POLY_CMD,POLY_CMD,   POLY_CMD,   POLY_CMD }
     
    38483870,{jjWRONG3,         RESULTANT_CMD, POLY_CMD,POLY_CMD,   POLY_CMD,   POLY_CMD }
    38493871#endif
     3872#ifdef OLD_RES
    38503873,{jjRES3,           SRES_CMD,   NONE,       IDEAL_CMD,  INT_CMD,    ANY_TYPE }
    38513874,{jjRES3,           SRES_CMD,   NONE,       MODUL_CMD,  INT_CMD,    ANY_TYPE }
     3875#endif
    38523876,{jjSTATUS3,        STATUS_CMD, INT_CMD,    LINK_CMD,   STRING_CMD, STRING_CMD}
    38533877,{jjSUBST_P,        SUBST_CMD,  POLY_CMD,   POLY_CMD,   POLY_CMD,   POLY_CMD }
  • Singular/ipassign.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipassign.cc,v 1.24 1998-03-13 15:18:16 Singular Exp $ */
     4/* $Id: ipassign.cc,v 1.25 1998-04-03 17:38:38 Singular Exp $ */
    55
    66/*
     
    235235  return FALSE;
    236236}
     237static BOOLEAN jiA_LIST_RES(leftv res, leftv a,Subexpr e)
     238{
     239  syStrategy r=(syStrategy)a->CopyD();
     240  if (res->data!=NULL) ((lists)res->data)->Clean();
     241  res->data=(void *)syConvRes(r);
     242  //jiAssignAttr(res,a);
     243  return FALSE;
     244}
    237245static BOOLEAN jiA_LIST(leftv res, leftv a,Subexpr e)
    238246{
     
    505513,{jiA_INTVEC,   INTMAT_CMD,     INTMAT_CMD }
    506514,{jiA_NUMBER,   NUMBER_CMD,     NUMBER_CMD }
     515,{jiA_LIST_RES, LIST_CMD,       RESOLUTION_CMD }
    507516,{jiA_LIST,     LIST_CMD,       LIST_CMD }
    508517,{jiA_LINK,     LINK_CMD,       STRING_CMD }
     
    12221231      ||((l->rtyp>=VALTVARS)&&(l->rtyp<=VMINPOLY)))
    12231232      {
    1224          b=iiAssign_sys(l,r);
    1225          r->CleanUp();
    1226          //l->CleanUp();
    1227          return b;
     1233        b=iiAssign_sys(l,r);
     1234        r->CleanUp();
     1235        //l->CleanUp();
     1236        return b;
    12281237      }
    12291238      rt=r->Typ();
     
    12331242      &&((lt==rt)||(lt!=LIST_CMD)))
    12341243      {
    1235          b=jiAssign_1(l,r);
    1236          if (l->rtyp==IDHDL)
    1237          {
    1238            if ((lt==DEF_CMD)||(lt=LIST_CMD)) ipMoveId((idhdl)l->data);
    1239            l->attribute=IDATTR((idhdl)l->data);
    1240            l->flag=IDFLAG((idhdl)l->data);
    1241            l->CleanUp();
    1242          }
    1243          r->CleanUp();
    1244          return b;
    1245       }
    1246       if ((lt!=LIST_CMD)
    1247       &&((rt==MATRIX_CMD)
    1248         ||(rt==INTMAT_CMD)
    1249         ||(rt==INTVEC_CMD)
    1250         ||(rt==MODUL_CMD)))
    1251       {
    1252          b=jiAssign_1(l,r);
    1253          if((l->rtyp==IDHDL)&&(l->data!=NULL))
    1254          {
    1255            if (lt==DEF_CMD) ipMoveId((idhdl)l->data);
    1256            l->attribute=IDATTR((idhdl)l->data);
    1257            l->flag=IDFLAG((idhdl)l->data);
    1258          }
    1259          r->CleanUp();
    1260          Subexpr h;
    1261          while (l->e!=NULL)
    1262          {
    1263            h=l->e->next;
    1264            Free((ADDRESS)l->e,sizeof(*(l->e)));
    1265            l->e=h;
    1266          }
    1267          return b;
     1244        b=jiAssign_1(l,r);
     1245        if (l->rtyp==IDHDL)
     1246        {
     1247          if ((lt==DEF_CMD)||(lt=LIST_CMD)) ipMoveId((idhdl)l->data);
     1248          l->attribute=IDATTR((idhdl)l->data);
     1249          l->flag=IDFLAG((idhdl)l->data);
     1250          l->CleanUp();
     1251        }
     1252        r->CleanUp();
     1253        return b;
     1254      }
     1255      if (((lt!=LIST_CMD)
     1256        &&((rt==MATRIX_CMD)
     1257          ||(rt==INTMAT_CMD)
     1258          ||(rt==INTVEC_CMD)
     1259          ||(rt==MODUL_CMD)))
     1260      ||((lt==LIST_CMD)
     1261        &&(rt==RESOLUTION_CMD))
     1262      )
     1263      {
     1264        b=jiAssign_1(l,r);
     1265        if((l->rtyp==IDHDL)&&(l->data!=NULL))
     1266        {
     1267          if (lt==DEF_CMD) ipMoveId((idhdl)l->data);
     1268          l->attribute=IDATTR((idhdl)l->data);
     1269          l->flag=IDFLAG((idhdl)l->data);
     1270        }
     1271        r->CleanUp();
     1272        Subexpr h;
     1273        while (l->e!=NULL)
     1274        {
     1275          h=l->e->next;
     1276          Free((ADDRESS)l->e,sizeof(*(l->e)));
     1277          l->e=h;
     1278        }
     1279        return b;
    12681280      }
    12691281    }
  • Singular/ipid.h

    r36ff0ee rfca547  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: ipid.h,v 1.10 1998-03-23 22:50:58 obachman Exp $ */
     6/* $Id: ipid.h,v 1.11 1998-04-03 17:38:39 Singular Exp $ */
    77/*
    88* ABSTRACT: identfier handling
     
    4141
    4242#ifdef RDEBUG
    43   short      no;
    44 #endif
     43  short      no; /* unique id for rings */
     44#endif 
    4545};
    4646
  • Singular/iplib.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: iplib.cc,v 1.12 1998-03-16 16:21:55 Singular Exp $ */
     4/* $Id: iplib.cc,v 1.13 1998-04-03 17:38:40 Singular Exp $ */
    55/*
    66* ABSTRACT: interpreter: LIB and help
     
    242242  }
    243243  /* start interpreter ======================================*/
    244   //Print("PStart <<%s>>\n",IDID(pn));
    245244  myynest++;
     245  //Print("%-*.*s PStart <<%s>>, level:%d\n",2*myynest,2*myynest," ",IDID(pn),myynest);
    246246  err=yyparse();
    247247  killlocals(myynest);
    248248  myynest--;
    249249  si_echo=old_echo;
    250   //Print("PEnd <<%s>>\n",IDID(pn));
     250  //Print("%-*.*s PEnd  <<%s>>, level:%d\n",2*myynest,2*myynest," ",IDID(pn),myynest);
    251251
    252252  return err;
     
    303303  if (traceit&TRACE_SHOW_PROC)
    304304  {
    305     if (traceit&TRACE_SHOW_LINENO) printf("\n");
    306     printf("entering %s (level %d)\n",IDID(pn),myynest);
     305    if (traceit&TRACE_SHOW_LINENO) PrintLn();
     306    Print("entering%-*.*s %s (level %d)\n",myynest*2,myynest*2," ",IDID(pn),myynest);
    307307  }
    308308#ifdef RDEBUG
     
    332332  if (traceit&TRACE_SHOW_PROC)
    333333  {
    334     if (traceit&TRACE_SHOW_LINENO) printf("\n");
    335     printf("leaving  %s (level %d)\n",IDID(pn),myynest);
     334    if (traceit&TRACE_SHOW_LINENO) PrintLn();
     335    Print("leaving %-*.*s %s (level %d)\n",myynest*2,myynest*2," ",IDID(pn),myynest);
    336336  }
    337337#ifdef RDEBUG
     
    722722
    723723/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
    724 int piShowProcList()
     724void piShowProcList()
    725725{
    726726  idhdl h;
     
    754754
    755755/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
    756 char *iiLineNo(char *procname, int lineno)
    757 {
    758   char buf[256];
    759   idhdl pn = ggetid(procname);
    760   procinfo *pi = IDPROC(pn);
    761 
    762   sprintf(buf, "%s %3d\0", procname, lineno);
    763   //sprintf(buf, "%s::%s %3d\0", pi->libname, pi->procname,
    764   //  lineno + pi->data.s.body_lineno);
    765   return(buf);
    766 }
     756//char *iiLineNo(char *procname, int lineno)
     757//{
     758//  char buf[256];
     759//  idhdl pn = ggetid(procname);
     760//  procinfo *pi = IDPROC(pn);
     761//
     762//  sprintf(buf, "%s %3d\0", procname, lineno);
     763//  //sprintf(buf, "%s::%s %3d\0", pi->libname, pi->procname,
     764//  //  lineno + pi->data.s.body_lineno);
     765//  return(buf);
     766//}
    767767/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
    768768#ifdef HAVE_LIBPARSER
  • Singular/ipshell.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipshell.cc,v 1.16 1998-02-27 14:06:20 Singular Exp $ */
     4/* $Id: ipshell.cc,v 1.17 1998-04-03 17:38:41 Singular Exp $ */
    55/*
    66* ABSTRACT:
     
    194194  {
    195195    int vv;
     196    //Print("consider %s, lev: %d:",IDID(h),IDLEV(h));
    196197    if ((vv=IDLEV(h))>0)
    197198    {
    198199      if (vv < v)
    199200      {
    200         if (iiNoKeepRing) return;
     201        if (iiNoKeepRing)
     202        {
     203          //PrintS(" break\n");
     204          return;
     205        } 
    201206        h = IDNEXT(h);
     207        //PrintLn();
    202208      }
    203209      else if (vv >= v)
    204210      {
    205211        idhdl nexth = IDNEXT(h);
    206         //Print("kill %s, lev: %d\n",IDID(h),IDLEV(h));
    207212        killhdl(h,localhdl);
    208213        h = nexth;
     214        //PrintS("kill\n");
    209215      }
    210216    }
    211217    else
     218    {
    212219      h = IDNEXT(h);
     220      //PrintLn();
     221    }
    213222  }
    214223}
     
    238247    rSetHdl(sh,TRUE);
    239248  }
    240   iiNoKeepRing=TRUE;
     249  if (myynest<=1) iiNoKeepRing=TRUE;
    241250}
    242251
  • Singular/ring.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ring.cc,v 1.20 1998-03-31 12:18:46 obachman Exp $ */
     4/* $Id: ring.cc,v 1.21 1998-04-03 17:38:41 Singular Exp $ */
    55
    66/*
     
    188188  /*currRing->P     = 0; Alloc0 in idhdl::set, ipid.cc*/
    189189#ifdef RDEBUG
    190   currRing->no    =rNumber; rNumber++;
     190  rNumber++;
     191  currRing->no    =rNumber;
    191192#endif
    192193#ifdef SRING
     
    653654 
    654655#ifdef RDEBUG
    655   currRing->no    =rNumber; rNumber++;
    656 #endif
     656  rNumber++;
     657  currRing->no    =rNumber;
     658#endif 
    657659 
    658660  return currRingHdl;
     
    16511653  res->idroot = NULL;
    16521654  if (r->qideal!=NULL) res->qideal= idCopy(r->qideal);
     1655
    16531656#ifdef RDEBUG
    1654   res->no=rNumber; rNumber++;
     1657  rNumber++;
     1658  res->no=rNumber;
    16551659#endif
     1660
    16561661  return res;
    16571662}
  • Singular/ring.h

    r36ff0ee rfca547  
    77* ABSTRACT - the interpreter related ring operations
    88*/
    9 /* $Id: ring.h,v 1.11 1998-03-23 22:51:07 obachman Exp $ */
     9/* $Id: ring.h,v 1.12 1998-04-03 17:38:42 Singular Exp $ */
    1010
    1111/* includes */
     
    8181
    8282#ifdef RDEBUG
    83 extern short rNumber;
     83extern short rNumber; /* current ring id (r->no) */
    8484#endif
    8585
  • Singular/subexpr.cc

    r36ff0ee rfca547  
    511511        break;
    512512      }
     513    case RESOLUTION_CMD:
     514      data=(void*)syCopy((syStrategy)d);
     515      break;
    513516#ifdef TEST
    514517    case DEF_CMD:
  • Singular/syz.h

    r36ff0ee rfca547  
    44*  Computer Algebra System SINGULAR     *
    55****************************************/
    6 /* $Id: syz.h,v 1.6 1997-09-29 08:51:44 siebert Exp $ */
     6/* $Id: syz.h,v 1.7 1998-04-03 17:38:44 Singular Exp $ */
    77/*
    88* ABSTRACT: Resolutions
     
    8585syStrategy syForceMin(lists li);
    8686syStrategy syMinimize(syStrategy syzstr);
     87syStrategy syMakeResolution(resolvente r, int length);
    8788#endif
  • Singular/syz1.cc

    r36ff0ee rfca547  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: syz1.cc,v 1.23 1998-04-01 19:01:42 Singular Exp $ */
     4/* $Id: syz1.cc,v 1.24 1998-04-03 17:38:45 Singular Exp $ */
    55/*
    66* ABSTRACT: resolutions
     
    22652265  }
    22662266  Free((ADDRESS)fr,(result->length)*sizeof(ideal));
     2267  return result;
     2268}
     2269
     2270syStrategy syMakeResolution(resolvente r, int length,
     2271           intvec ** weights)
     2272{
     2273  syStrategy result=(syStrategy)Alloc0(sizeof(ssyStrategy));
     2274
     2275  length = max(length,0);
     2276  int i=0;
     2277 
     2278  while (i<length)
     2279  {
     2280    if (r[i]!=NULL)
     2281    {
     2282      if (i!=0)
     2283      {
     2284        int rank=IDELEMS(r[i-1]);
     2285        if (idIs0(r[i-1]))
     2286        {
     2287          idDelete(&(r[i]));
     2288          r[i]=idFreeModule(rank);
     2289        }
     2290        else
     2291        {
     2292          r[i]->rank=max(rank,idRankFreeModule(r[i]));
     2293        }
     2294        idSkipZeroes(r[i]);
     2295      }
     2296    }
     2297    else
     2298    {
     2299      // should not happen:
     2300      Warn("internal NULL in resolvente");
     2301      r[i]=idInit(1,1);
     2302    }
     2303    i++;
     2304  }
     2305  result->fullres = r;
     2306  result->length = length;
    22672307  return result;
    22682308}
Note: See TracChangeset for help on using the changeset viewer.