Changeset 1c473f in git for kernel/kstd1.cc
- Timestamp:
- Feb 24, 2008, 6:41:32 PM (16 years ago)
- Branches:
- (u'spielwiese', '5b153614cbc72bfa198d75b1e9e33dab2645d9fe')
- Children:
- 4d43ff458adf4e30c9059ffaf846500aa5d64c61
- Parents:
- c1d4a79cef5604c9608af4eb2e48128ef65c70fb
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/kstd1.cc
rc1d4a79 r1c473f 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: kstd1.cc,v 1.3 2 2008-02-08 10:11:28 wienandExp $ */4 /* $Id: kstd1.cc,v 1.33 2008-02-24 17:41:31 levandov Exp $ */ 5 5 /* 6 6 * ABSTRACT: … … 1715 1715 r=bba(F,Q,NULL,hilb,strat); 1716 1716 } 1717 } 1718 #ifdef KDEBUG 1719 idTest(r); 1720 #endif 1721 if (toReset) 1722 { 1723 kModW = NULL; 1724 pRestoreDegProcs(pFDegOld, pLDegOld); 1725 } 1726 pLexOrder = b; 1727 //Print("%d reductions canceled \n",strat->cel); 1728 HCord=strat->HCord; 1729 delete(strat); 1730 if ((delete_w)&&(w!=NULL)&&(*w!=NULL)) delete *w; 1731 return r; 1732 } 1733 1734 ideal kStdShift(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb,int syzComp, 1735 int newIdeal, intvec *vw, int uptodeg, int lV) 1736 { 1737 ideal r; 1738 BOOLEAN b=pLexOrder,toReset=FALSE; 1739 BOOLEAN delete_w=(w==NULL); 1740 kStrategy strat=new skStrategy; 1741 1742 if(!TEST_OPT_RETURN_SB) 1743 strat->syzComp = syzComp; 1744 if (TEST_OPT_SB_1) 1745 strat->newIdeal = newIdeal; 1746 if (rField_has_simple_inverse()) 1747 strat->LazyPass=20; 1748 else 1749 strat->LazyPass=2; 1750 strat->LazyDegree = 1; 1751 strat->ak = idRankFreeModule(F); 1752 strat->kModW=kModW=NULL; 1753 strat->kHomW=kHomW=NULL; 1754 if (vw != NULL) 1755 { 1756 pLexOrder=FALSE; 1757 strat->kHomW=kHomW=vw; 1758 pFDegOld = pFDeg; 1759 pLDegOld = pLDeg; 1760 pSetDegProcs(kHomModDeg); 1761 toReset = TRUE; 1762 } 1763 if (h==testHomog) 1764 { 1765 if (strat->ak == 0) 1766 { 1767 h = (tHomog)idHomIdeal(F,Q); 1768 w=NULL; 1769 } 1770 else if (!TEST_OPT_DEGBOUND) 1771 { 1772 h = (tHomog)idHomModule(F,Q,w); 1773 } 1774 } 1775 pLexOrder=b; 1776 if (h==isHomog) 1777 { 1778 if (strat->ak > 0 && (w!=NULL) && (*w!=NULL)) 1779 { 1780 strat->kModW = kModW = *w; 1781 if (vw == NULL) 1782 { 1783 pFDegOld = pFDeg; 1784 pLDegOld = pLDeg; 1785 pSetDegProcs(kModDeg); 1786 toReset = TRUE; 1787 } 1788 } 1789 pLexOrder = TRUE; 1790 if (hilb==NULL) strat->LazyPass*=2; 1791 } 1792 strat->homog=h; 1793 #ifdef KDEBUG 1794 idTest(F); 1795 #endif 1796 if (pOrdSgn==-1) 1797 { 1798 /* error: no local ord yet with shifts */ 1799 Print("No local ordering possible for shifts"); 1800 return(NULL); 1801 } 1802 else 1803 { 1804 /* global ordering */ 1805 if (w!=NULL) 1806 r=bbaShift(F,Q,*w,hilb,strat,uptodeg,lV); 1807 else 1808 r=bbaShift(F,Q,NULL,hilb,strat,uptodeg,lV); 1717 1809 } 1718 1810 #ifdef KDEBUG
Note: See TracChangeset
for help on using the changeset viewer.