- Timestamp:
- Jan 31, 2020, 11:38:02 AM (4 years ago)
- Branches:
- (u'spielwiese', '2a584933abf2a2d3082034c7586d38bb6de1a30a')
- Children:
- 3ada27bd457c540e7307b402cf08aeeebd40b113
- Parents:
- ef6df21e3783870d5dd988a568b01c19e2ccbbb5ed01f112cee60b9d71fdcff8400dab5c67a23882
- Location:
- kernel
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/GBEngine/kstd1.cc
red01f11 r9e03f3 263 263 return 0; 264 264 } 265 266 // NO! 265 if (TEST_OPT_IDLIFT) 266 { 267 if (h->p!=NULL) 268 { 269 if(p_GetComp(h->p,currRing)>strat->syzComp) 270 { 271 h->Delete(); 272 return 0; 273 } 274 } 275 else if (h->t_p!=NULL) 276 { 277 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 278 { 279 h->Delete(); 280 return 0; 281 } 282 } 283 } 284 #if 0 285 else if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ)) 286 { 287 if (h->p!=NULL) 288 { 289 if(p_GetComp(h->p,currRing)>strat->syzComp) 290 { 291 return 1; 292 } 293 } 294 else if (h->t_p!=NULL) 295 { 296 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 297 { 298 return 1; 299 } 300 } 301 } 302 #endif 303 304 // done ? NO! 267 305 h->SetShortExpVector(); 268 306 h->SetpFDeg(); … … 795 833 return 0; 796 834 } 835 if (TEST_OPT_IDLIFT) 836 { 837 if (h->p!=NULL) 838 { 839 if(p_GetComp(h->p,currRing)>strat->syzComp) 840 { 841 h->Delete(); 842 return 0; 843 } 844 } 845 else if (h->t_p!=NULL) 846 { 847 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 848 { 849 h->Delete(); 850 return 0; 851 } 852 } 853 } 854 #if 0 855 else if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ)) 856 { 857 if (h->p!=NULL) 858 { 859 if(p_GetComp(h->p,currRing)>strat->syzComp) 860 { 861 return 1; 862 } 863 } 864 else if (h->t_p!=NULL) 865 { 866 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 867 { 868 return 1; 869 } 870 } 871 } 872 #endif 797 873 h->SetShortExpVector(); 798 874 -
kernel/GBEngine/kstd2.cc
red01f11 r9e03f3 633 633 if (strat->tl<0) return 1; 634 634 635 int at /*,i*/;635 int at; 636 636 long d; 637 637 int j = 0; 638 638 int pass = 0; 639 // poly zeroPoly = NULL;640 639 641 640 // TODO warum SetpFDeg notwendig? … … 683 682 return 1; 684 683 } 685 } else { 684 } 685 else 686 { 686 687 /* not(lc(reducer) | lc(poly)) && not(lc(poly) | lc(reducer)) 687 688 * => we try to cut down the lead coefficient at least */ … … 702 703 tj.Clear(); 703 704 } 704 } else { 705 } 706 else 707 { 705 708 /* same lead monomial but lead coefficients do not divide each other: 706 709 * change the polys to h <- spoly(h,tj) and h2 <- gpoly(h,tj). */ … … 717 720 replaceInLAndSAndT(h2, j, strat); 718 721 } 719 } else { 722 } 723 else 724 { 720 725 ksReducePoly(h, &(strat->T[j]), NULL, NULL, strat); 721 726 } … … 974 979 return 0; 975 980 } 981 if (TEST_OPT_IDLIFT) 982 { 983 if (h->p!=NULL) 984 { 985 if(p_GetComp(h->p,currRing)>strat->syzComp) 986 { 987 h->Delete(); 988 return 0; 989 } 990 } 991 else if (h->t_p!=NULL) 992 { 993 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 994 { 995 h->Delete(); 996 return 0; 997 } 998 } 999 } 1000 #if 0 1001 else if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ)) 1002 { 1003 if (h->p!=NULL) 1004 { 1005 if(p_GetComp(h->p,currRing)>strat->syzComp) 1006 { 1007 return 1; 1008 } 1009 } 1010 else if (h->t_p!=NULL) 1011 { 1012 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 1013 { 1014 return 1; 1015 } 1016 } 1017 } 1018 #endif 976 1019 h->SetShortExpVector(); 977 1020 not_sev = ~ h->sev; … … 1671 1714 return 0; 1672 1715 } 1716 if (TEST_OPT_IDLIFT) 1717 { 1718 if (h->p!=NULL) 1719 { 1720 if(p_GetComp(h->p,currRing)>strat->syzComp) 1721 { 1722 h->Delete(); 1723 return 0; 1724 } 1725 } 1726 else if (h->t_p!=NULL) 1727 { 1728 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 1729 { 1730 h->Delete(); 1731 return 0; 1732 } 1733 } 1734 } 1735 #if 0 1736 else if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ)) 1737 { 1738 if (h->p!=NULL) 1739 { 1740 if(p_GetComp(h->p,currRing)>strat->syzComp) 1741 { 1742 return 1; 1743 } 1744 } 1745 else if (h->t_p!=NULL) 1746 { 1747 if(p_GetComp(h->t_p,strat->tailRing)>strat->syzComp) 1748 { 1749 return 1; 1750 } 1751 } 1752 } 1753 #endif 1673 1754 h->SetShortExpVector(); 1674 1755 not_sev = ~ h->sev; … … 1861 1942 } 1862 1943 } 1863 if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ))1944 else if ((strat->syzComp > 0)&&(!TEST_OPT_REDTAIL_SYZ)) 1864 1945 { 1865 1946 if (h->p!=NULL) … … 2414 2495 /* if we are computing over Z we always want to try and cut down 2415 2496 * the coefficients in the tail terms */ 2416 if (rField_is_Z(currRing) && !rHasLocalOrMixedOrdering(currRing)) { 2497 if (rField_is_Z(currRing) && !rHasLocalOrMixedOrdering(currRing)) 2498 { 2417 2499 redtailBbaAlsoLC_Z(&(strat->P), strat->tl, strat); 2418 2500 strat->P.pCleardenom(); -
kernel/GBEngine/kutil.cc
ref6df2 r9e03f3 9374 9374 void enterSBbaShift (LObject &p,int atS,kStrategy strat, int atR) 9375 9375 { 9376 enterSBba(p, atS, strat, atR); 9377 9376 9378 int maxPossibleShift = p_mLPmaxPossibleShift(p.p, strat->tailRing); 9377 9379 for (int i = maxPossibleShift; i > 0; i--) 9378 9380 { 9381 9379 9382 LObject qq; 9380 9383 qq.p = pLPCopyAndShiftLM(p.p, i); // don't use Set() because it'll test the poly order 9381 9384 qq.shift = i; 9382 9385 strat->initEcart(&qq); // initEcartBBA sets length, pLength, FDeg and ecart 9386 int atS = posInS(strat, strat->sl, qq.p, qq.ecart); // S needs to stay sorted because this is for example assumed when searching S later 9383 9387 enterSBba(qq, atS, strat, -1); 9384 9388 } 9385 enterSBba(p, atS, strat, atR);9386 9389 } 9387 9390 #endif -
kernel/ideals.cc
red01f11 r9e03f3 206 206 if ((idIs0(h1)) || (idIs0(h2))) return idInit(1,rank); 207 207 208 BITSET save_opt; 209 SI_SAVE_OPT1(save_opt); 210 if (TEST_OPT_RETURN_SB) si_opt_1 |= Sy_bit(OPT_REDTAIL_SYZ); 211 208 212 ideal first,second,temp,temp1,result; 209 213 poly p,q; … … 404 408 405 409 idSkipZeroes(result); 410 SI_RESTORE_OPT1(save_opt); 406 411 if (TEST_OPT_RETURN_SB) 407 412 { … … 793 798 idTest(s_h1); 794 799 800 BITSET save_opt; 801 SI_SAVE_OPT1(save_opt); 802 if (TEST_OPT_RETURN_SB) si_opt_1|=Sy_bit(OPT_REDTAIL_SYZ); 803 795 804 ideal s_h3=idPrepare(s_h1,h,k,w,alg); // main (syz) GB computation 805 806 SI_RESTORE_OPT1(save_opt); 796 807 797 808 if (s_h3==NULL) … … 1510 1521 #endif 1511 1522 ideal s_h3; 1523 BITSET old_test1; 1524 SI_SAVE_OPT1(old_test1); 1525 if (TEST_OPT_RETURN_SB) si_opt_1 |= Sy_bit(OPT_REDTAIL_SYZ); 1512 1526 if (addOnlyOne) 1513 1527 { 1514 BITSET old_test1;1515 SI_SAVE_OPT1(old_test1);1516 1528 if(!rField_is_Ring(currRing)) si_opt_1 |= Sy_bit(OPT_SB_1); 1517 1529 s_h3 = kStd(s_h4,currRing->qideal,hom,&weights1,NULL,0/*kmax-1*/,IDELEMS(s_h4)-1); 1518 SI_RESTORE_OPT1(old_test1);1519 1530 } 1520 1531 else … … 1522 1533 s_h3 = kStd(s_h4,currRing->qideal,hom,&weights1,NULL,kmax-1); 1523 1534 } 1535 SI_RESTORE_OPT1(old_test1); 1524 1536 #if 0 1525 1537 // only together with the above debug stuff … … 1894 1906 p_Delete(&q,currRing); 1895 1907 } 1896 1908 } 1897 1909 /*delete the matrix tmp*/ 1898 1910 for (i=1; i<=ar; i++) … … 2329 2341 2330 2342 idTest(s_temp); 2331 unsigned save_opt=si_opt_1; 2343 unsigned save_opt; 2344 SI_SAVE_OPT1(save_opt); 2332 2345 si_opt_1 |= Sy_bit(OPT_REDTAIL_SYZ); 2333 2346 ideal s_temp1 = kStd(s_temp,currRing->qideal,hom,&wtmp,NULL,length); 2334 si_opt_1=save_opt;2347 SI_RESTORE_OPT1(save_opt); 2335 2348 2336 2349 //if (wtmp!=NULL) Print("output weights:");wtmp->show(1);PrintLn();
Note: See TracChangeset
for help on using the changeset viewer.