- Timestamp:
- Oct 2, 2016, 12:17:02 PM (8 years ago)
- Branches:
- (u'spielwiese', '17f1d200f27c5bd38f5dfc6e8a0879242279d1d8')
- Children:
- 232f78f004b2f727c65dfc7f7ace7452e65dab43e946361c872c62f94d3098cd85858e5069cb55fa
- Parents:
- c715b624176bba2a51d05f1f060368d106adda27
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/classify_aeq.lib
rc715b6 r729b07 1715 1715 ideal G1=lead(G); 1716 1716 ideal I1=lead(I); 1717 1717 poly p1=lead(p); 1718 1718 //create new ring with extra variables - 1719 1719 execute 1720 1720 ("ring T=("+charstr(br)+",x(1),z(1..n)),(x(2),y(1..m)),dp;"); 1721 1721 execute 1722 1722 ("ring R=("+charstr(br)+"),(x(1..2),y(1..m),z(1..n)),(lp(2),dp(m),dp(n));"); 1723 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1724 map phi = br,x(1); 1725 ideal P = phi(G1); 1726 ideal S = phi(I1); 1727 poly check = phi(p1); 1728 poly keep=S[1]; 1729 S=S/keep; 1730 1731 check=check/keep; 1732 ideal M; 1733 poly q; 1734 for (int i=1;i<=m;i=i+1) 1735 { 1736 1736 M[i]=S[i]-y(i); 1737 1738 1739 1737 } 1738 for (i=1;i<=n;i=i+1) 1739 { 1740 1740 M[m+i]=P[i]-z(i); 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1741 } 1742 M[size(M)+1]=check-x(2); 1743 check=check*keep; 1744 1745 option(redSB); 1746 M=std(M); 1747 int j,s; 1748 1749 for(i=1;i<=size(M);i++) 1750 { 1751 1751 if((deg(M[i]/x(2))==0)&&(M[i]/x(1)==0)) 1752 1752 { … … 1757 1757 } 1758 1758 M[i]=M[i]-q+q*y(1); 1759 q=M[i];1759 q=M[i]; 1760 1760 setring T; 1761 1761 poly q=imap(R,q); 1762 s=deg(q);1762 s=deg(q); 1763 1763 setring R; 1764 1764 if(s==1){check=simplify(q,1);break;} 1765 1765 } 1766 1767 1768 1769 1766 } 1767 setring br; 1768 map psi=R,maxideal(1),p,I,G; 1769 return(psi(check)); 1770 1770 } 1771 1771 //////////////////////////////////////////////////////////////////////////////// … … 1781 1781 f=sagbiNFMODO(f,G,I,b); 1782 1782 } 1783 return(lead(f)+sagbiNFMOD( p-lead(p),G,I,b));1783 return(lead(f)+sagbiNFMOD(f-lead(f),G,I,b)); 1784 1784 } 1785 1785 //////////////////////////////////////////////////////////////////////////////// … … 2144 2144 phi=R,var(1)-1/number(m)*I[2][i]/var(1)^(m-1); 2145 2145 I=phi(I); 2146 G=sagbiAlg(I,b); 2146 2147 I[1]=lead(I[1])+reduc(I[1]-lead(I[1]),G,b); 2147 2148 I=normalMap(I,b); … … 2156 2157 phi=R,g; 2157 2158 I=phi(I); 2159 G=sagbiAlg(I,b); 2158 2160 I[1]=lead(I[1])+reduc(I[1]-lead(I[1]),G,b); 2159 2161 I[2]=lead(I[2])+reduc(I[2]-lead(I[2]),G,b); … … 2163 2165 } 2164 2166 } 2165 G=sagbiAlg(I,b);2166 2167 } 2167 2168 return(list(I,v,w,l,moduli));
Note: See TracChangeset
for help on using the changeset viewer.