Changeset 8b4b7b in git


Ignore:
Timestamp:
Mar 22, 2000, 5:56:52 PM (24 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', '648d28f488f6ff08f5607ff229b9ad9e4a5b93c2')
Children:
4301a7d4e7af18768ce85c52e3d7744fa3c51348
Parents:
01cd520e3f85920b3d678626bea4f870041a3037
Message:
*hannes; debug for rComp0


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

Legend:

Unmodified
Added
Removed
  • Singular/polys-impl.cc

    r01cd520 r8b4b7b  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: polys-impl.cc,v 1.36 2000-03-21 16:21:41 Singular Exp $ */
     4/* $Id: polys-impl.cc,v 1.37 2000-03-22 16:56:52 Singular Exp $ */
    55
    66/***************************************************************
     
    927927
    928928#ifdef HAVE_SHIFTED_EXPONENTS
    929 int rComp_a(poly p1, poly p2, int i, int rr)
     929int rComp_a(poly p1, poly p2, int i)
    930930{
    931931  int j;
     
    939939  if (o1>o2)
    940940  {
    941     assume(rr==1);
     941    return  -1;
     942  }
     943  if (o1<o2)
     944  {
    942945    return 1;
    943946  }
    944   if (o1<o2)
    945   {
    946     assume(rr==-1);
    947     return -1;
    948   }
    949947  return 0;
    950948}
    951 int rComp_deg(poly p1, poly p2, int i, int rr)
     949int rComp_deg(poly p1, poly p2, int i)
    952950{
    953951  int j;
     
    959957    o2+=pGetExp(p2,j);
    960958  }
    961   if (o1>o2)
    962   {
    963     assume(rr==1);
    964     return 1;
    965   }
    966   if (o1<o2)
    967   {
    968     assume(rr==-1);
    969     return -1;
    970   }
     959  if (o1>o2) return 1;
     960  if (o1<o2) return -1;
    971961  return 0;
    972962}
    973 int rComp_lex(poly p1, poly p2, int i, int rr)
     963int rComp_lex(poly p1, poly p2, int i)
    974964{
    975965  int j;
     
    978968    if (pGetExp(p1,j) > pGetExp(p2,j))
    979969    {
    980       assume(rr==1);
    981970      return 1;
    982971    }
    983972    else if (pGetExp(p1,j) < pGetExp(p2,j))
    984973    {
    985       assume(rr==-1);
    986974      return -1;
    987975    }
     
    989977  return 0;
    990978}
    991 int rComp_revlex(poly p1, poly p2, int i, int rr)
     979int rComp_revlex(poly p1, poly p2, int i)
    992980{
    993981  int j;
     
    999987    if (e1 < e2)
    1000988    {
    1001       assume(rr== 1);
    1002989      return  1;
    1003990    }
    1004991    else if (e1 > e2)
    1005992    {
    1006       assume(rr== -1);
    1007993      return -1;
    1008994    }
     
    10171003  int n=rBlocks(currRing)-1;
    10181004  int i,j;
     1005  // check fur syzcomp - special case, not visible in currRing->order
     1006  if ((currRing->typ[0].ord_typ==ro_syz)
     1007  && (pGetComp(p1)!=pGetComp(p2)))
     1008  {
     1009    i=pGetComp(p1);
     1010    j=pGetComp(p2);
     1011    if (i>0)
     1012    {
     1013      if (i > currRing->typ[0].data.syz.limit)
     1014        i=currRing->typ[0].data.syz.curr_index;
     1015      else
     1016        i=currRing->typ[0].data.syz.syz_index[i];
     1017    }
     1018    if (j>0)
     1019    {
     1020      if (j > currRing->typ[0].data.syz.limit)
     1021        j=currRing->typ[0].data.syz.curr_index;
     1022      else
     1023        j=currRing->typ[0].data.syz.syz_index[j];
     1024    }
     1025    if (i >j ) { assume(rr== -1); return -1;}
     1026    if (i <j ) { assume(rr== 1); return 1;}
     1027  }
    10191028  for(i=0;i<n;i++)
    10201029  {
     
    10221031    {
    10231032      case ringorder_a:
    1024         r=rComp_a(p1,p2,i,rr);
    1025         if (r!=0) return r;
     1033        r=rComp_a(p1,p2,i);
     1034        if (r!=0) { assume(r==rr);return r;}
    10261035        break;
    10271036
     
    10591068
    10601069      case ringorder_lp:
    1061         r=rComp_lex(p1,p2,i,rr);
    1062         if (r!=0) return r;
     1070        r=rComp_lex(p1,p2,i);
     1071        if (r!=0) { assume(r==rr);return r;}
    10631072        break;
    10641073
    10651074      case ringorder_ls:
    1066         r=rComp_lex(p1,p2,i,-rr);
    1067         if (r!=0) return -r;
     1075        r=rComp_lex(p1,p2,i);
     1076        if (r!=0) { assume(r== -rr);return -r;}
    10681077        break;
    10691078
    10701079      case ringorder_dp:
    1071         r=rComp_deg(p1,p2,i,rr);
    1072         if (r!=0)  return r;
    1073         r=rComp_revlex(p1,p2,i,rr);
    1074         if (r!=0) return r;
     1080        r=rComp_deg(p1,p2,i);
     1081        if (r!=0) { assume(r==rr);return r;}
     1082        r=rComp_revlex(p1,p2,i);
     1083        if (r!=0) { assume(r==rr);return r;}
    10751084        break;
    10761085
    10771086      case ringorder_Dp:
    1078         r=rComp_deg(p1,p2,i,rr);
    1079         if (r!=0) return r;
    1080         r=rComp_lex(p1,p2,i,rr);
    1081         if (r!=0) return r;
     1087        r=rComp_deg(p1,p2,i);
     1088        if (r!=0) { assume(r==rr);return r;}
     1089        r=rComp_lex(p1,p2,i);
     1090        if (r!=0) { assume(r==rr);return r;}
    10821091        break;
    10831092
    10841093      case ringorder_ds:
    1085         r=rComp_deg(p1,p2,i,-rr);
    1086         if (r!=0) return -r;
    1087         r=rComp_revlex(p1,p2,i,rr);
    1088         if (r!=0) return r;
     1094        r= -rComp_deg(p1,p2,i);
     1095        if (r!=0) { assume(r==rr);return r;}
     1096        r=rComp_revlex(p1,p2,i);
     1097        if (r!=0) { assume(r==rr);return r;}
    10891098        break;
    10901099
    10911100      case ringorder_Ds:
    1092         r=rComp_deg(p1,p2,i,-rr);
    1093         if (r!=0) return -r;
    1094         r=rComp_lex(p1,p2,i,rr);
    1095         if (r!=0) return r;
     1101        r= -rComp_deg(p1,p2,i);
     1102        if (r!=0) { assume(r==rr);return r;}
     1103        r=rComp_lex(p1,p2,i);
     1104        if (r!=0) { assume(r==rr);return r;}
    10961105        break;
    10971106
    10981107      case ringorder_wp:
    1099         r=rComp_a(p1,p2,i,rr);
    1100         if (r!=0) return r;
    1101         r=rComp_revlex(p1,p2,i,rr);
    1102         if (r!=0) return r;
     1108        r=rComp_a(p1,p2,i);
     1109        if (r!=0) { assume(r==rr);return r;}
     1110        r=rComp_revlex(p1,p2,i);
     1111        if (r!=0) { assume(r==rr);return r;}
    11031112        break;
    11041113
    11051114      case ringorder_Wp:
    1106         r=rComp_a(p1,p2,i,rr);
    1107         if (r!=0) return r;
    1108         r=rComp_lex(p1,p2,i,rr);
    1109         if (r!=0) return r;
     1115        r=rComp_a(p1,p2,i);
     1116        if (r!=0) { assume(r==rr);return r;}
     1117        r=rComp_lex(p1,p2,i);
     1118        if (r!=0) { assume(r==rr);return r;}
    11101119        break;
    11111120
    11121121      case ringorder_ws:
    1113         r=rComp_a(p1,p2,i,-rr);
    1114         if (r!=0) return -r;
    1115         r=rComp_revlex(p1,p2,i,rr);
    1116         if (r!=0) return r;
     1122        r= -rComp_a(p1,p2,i);
     1123        if (r!=0) { assume(r==rr);return r;}
     1124        r=rComp_revlex(p1,p2,i);
     1125        if (r!=0) { assume(r==rr);return r;}
    11171126        break;
    11181127
    11191128      case ringorder_Ws:
    1120         r=rComp_a(p1,p2,i,-rr);
    1121         if (r!=0) return -r;
    1122         r=rComp_lex(p1,p2,i,rr);
    1123         if (r!=0) return r;
     1129        r= -rComp_a(p1,p2,i);
     1130        if (r!=0) { assume(r==rr);return r;}
     1131        r=rComp_lex(p1,p2,i);
     1132        if (r!=0) { assume(r==rr);return r;}
    11241133        break;
    11251134
     
    11321141        if ((pGetComp(p1) > pDBsyzComp) && (pGetComp(p2) > pDBsyzComp)) break;
    11331142        if ((pGetComp(p1) <= pDBsyzComp) && (pGetComp(p2) <= pDBsyzComp)) break;
    1134         if (pGetComp(p1) <= pDBsyzComp) return 1;
    1135         /* if (pGetComp(p2) <= pDBsyzComp) */ return -1;
     1143        if (pGetComp(p1) <= pDBsyzComp) { assume(rr==1); return 1;}
     1144        /* if (pGetComp(p2) <= pDBsyzComp) */ { assume (rr== -1); return -1; }
    11361145        break;
    11371146
Note: See TracChangeset for help on using the changeset viewer.