Changeset 453c2d in git
- Timestamp:
- Nov 22, 2006, 10:40:29 PM (17 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0604212ebb110535022efecad887940825b97c3f')
- Children:
- 0d8f37995e9b1387eccdb6e605e94ea50e2f0942
- Parents:
- 24e56ccf41ae2c738ecb93810f84af186c73c6f5
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/sagbi.lib
r24e56cc r453c2d 1 1 ////////////////////////////////////////////////////////////////////////////// 2 version="$Id: sagbi.lib,v 1. 4 2005-06-07 10:05:19 SingularExp $";2 version="$Id: sagbi.lib,v 1.5 2006-11-22 21:40:29 levandov Exp $"; 3 3 category="Commutative Algebra"; 4 4 info=" … … 50 50 if(b!=0) 51 51 { 52 id =reduce(id, std(0));52 id =reduce(id,groebner(0)); 53 53 } 54 54 int n,m=nvars(bsr),ncols(id); … … 75 75 //==================create anew ring with extra variables================ 76 76 77 execute("ring R1="+charstr(bsr)+",("+varstr(bsr)+", y(1..m)),(dp(n),dp(m));");77 execute("ring R1="+charstr(bsr)+",("+varstr(bsr)+",@y(1..m)),(dp(n),dp(m));"); 78 78 execute("minpoly=number("+mp+");"); 79 79 ideal id=imap(bsr,id); … … 82 82 for(z=1;z<=m;z++) 83 83 { 84 A[z]=lead(id[z])- y(z);85 } 86 87 A= std(A);84 A[z]=lead(id[z])-@y(z); 85 } 86 87 A=groebner(A); 88 88 ideal kern=nselect(A,1,n);// "kern" is the kernel of the ring map: 89 89 // R1----->bsr ;y(z)----> lead(id[z]). … … 151 151 152 152 if(size(I)==0) 153 {@result= std(J);}153 {@result=groebner(J);} 154 154 155 155 if((size(I)!=0) && (size(J)-size(I)>=1)) … … 158 158 qring Q=I; 159 159 ideal J=fetch(br,J); 160 J= std(J);160 J=groebner(J); 161 161 setring br; 162 162 Res=fetch(Q,J);// Res contains the generators that we add to I … … 188 188 if(b!=0) 189 189 { 190 I=reduce(I, std(0));191 J=reduce(J, std(0));190 I=reduce(I,groebner(0)); 191 J=reduce(J,groebner(0)); 192 192 } 193 193 … … 214 214 //================create a new ring with extra variables============== 215 215 216 execute("ring R1="+charstr(R)+",("+varstr(R)+", y((ii+1)..(ii+jj))),(dp(n),dp(kk+jj-n));");216 execute("ring R1="+charstr(R)+",("+varstr(R)+",@y((ii+1)..(ii+jj))),(dp(n),dp(kk+jj-n));"); 217 217 ideal kern1; 218 218 ideal A=fetch(R,A); … … 288 288 if(b !=0) //means that the basering is a quotient ring 289 289 { 290 p=reduce(p, std(0));291 dom=reduce( dom,std(0));290 p=reduce(p,groebner(0)); 291 dom=reduce(groebner,std(0)); 292 292 } 293 293 … … 359 359 if(choose==2) 360 360 { 361 ideal kern= nselect( std(dom),1,n);//"nselect" is combinatorial command361 ideal kern= nselect(groebner(dom),1,n);//"nselect" is combinatorial command 362 362 //which uses the internal command 363 363 // "simplify"
Note: See TracChangeset
for help on using the changeset viewer.