Changeset f054d7f in git
- Timestamp:
- Feb 21, 2023, 1:12:34 PM (15 months ago)
- Branches:
- (u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
- Children:
- ede789c230c363f25cabc9b86289353362a7e251
- Parents:
- 0bb60db105363114233b0a88c89897236f812275
- Location:
- Singular/LIB
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/ainvar.lib
r0bb60d rf054d7f 1 1 ////////////////////////////////////////////////////////////////////////////// 2 version="version ainvar.lib 4. 1.2.0 Feb_2019"; // $Id$2 version="version ainvar.lib 4.3.1.3 Feb_2023 "; // $Id$ 3 3 category="Invariant theory"; 4 4 info=" … … 64 64 " 65 65 { 66 execute (typeof(id)+ " j;");67 66 ideal I = ideal(id); 68 67 matrix mh=matrix(jacob(I))*m; 69 if(typeof( j)=="poly")70 { j = mh[1,1];68 if(typeof(id)=="poly") 69 { poly j = mh[1,1]; 71 70 } 72 71 else 73 { if (typeof( j)=="vector") {j = mh[1]; /*the first column*/ }74 else { j = ideal(mh[1]);}72 { if (typeof(id)=="vector") { vector j = mh[1]; /*the first column*/ } 73 else { ideal j = ideal(mh[1]);} 75 74 } 76 75 return(j); … … 422 421 def br=basering; 423 422 ideal su; 423 list @l; 424 424 for (i=1; i<=z; i++) 425 425 { 426 426 su[i]=subst(id[i],q,0); 427 @l[i]="y("+string(i)+")"; 427 428 } 428 429 // -- define the map phi : r1 ---> br defined by y(i) ---> id[i](q=0) -- 429 execute ("ring r1="+charstr(basering)+",(y(1..z)),dp;");430 def r1=ring(list(ring_list(br)[1],@l,list(list("dp",1:z)),ideal(0))); 430 431 setring br; 431 432 map phi=r1,su; -
Singular/LIB/brnoeth.lib
r0bb60d rf054d7f 141 141 s=size(facts); 142 142 poly g; 143 string sg;144 143 for (i=1;i<=s;i=i+1) 145 144 { 146 145 g=facts[i]; 147 sg=string(g);148 146 setring raux1; 149 execute("G="+sg+";");147 G=imap(raux2,g); 150 148 G=subst(G,@a,y); 151 149 setring BR; … … 246 244 export(CHI); 247 245 kill embpol; 248 string s=string(subst(CHI,z,1));246 poly s=subst(CHI,z,1); 249 247 setring aff_r; 250 execute("poly CHI="+s+";");248 poly CHI=imap(Proj_R,s); 251 249 export(CHI); 252 250 ideal Aff_SLocus=s_locus(CHI); … … 580 578 // computes the residual degree of the basering with respect to its prime 581 579 // field 582 // warning : minpoly must depend on a parameter called "a"583 580 int ext; 584 581 string s_m=string(minpoly); … … 589 586 else 590 587 { 591 ring auxr=char(basering),a,lp; 592 execute("poly minp="+s_m+";"); 593 ext=deg(minp); 588 ext=pardeg(minpoly); 594 589 } 595 590 return(ext); … … 781 776 else 782 777 { 783 if (old_m<> string(0))778 if (old_m<>"0") 784 779 { 785 780 ring auxring=char(basering),(a,x),lp; -
Singular/LIB/chern.lib
r0bb60d rf054d7f 1 1 //////////////////////////////////////////////////////////////// 2 version = "version chern.lib 4. 1.3.0 Apr_2020"; // $Id$2 version = "version chern.lib 4.3.1.3 Feb_2023 "; // $Id$ 3 3 category = "Chern classes"; 4 4 info=" … … 258 258 setring br@; // come back to the initial base ring 259 259 // define the specialization homomorphism 260 execute("map FF = r@,"+varstr(br@)+",c[1..nV], V[1..nV];");260 map FF = r@,maxideal(1),c[1..nV], V[1..nV]; 261 261 return( list( FF(rez1), FF(rez2) ) ); 262 262 } … … 726 726 } 727 727 ring r@ = create_ring(ring_list(basering)[1], l3, "lp", "no_minpoly"); 728 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings729 list c= F(c); // embed c in the bigger ring728 // define the corresponding inclusion of rings: imap 729 list c=imap(br@,c); // embed c in the bigger ring 730 730 poly rez; 731 731 list A=a@(1..n); … … 742 742 rez = -subst(I[1], c@, 0); 743 743 setring br@; // come back to the initial base ring 744 execute( "map FF= r@,0,"+varstr(br@)+";"); // define the specialization homomorphism744 map FF= r@,0,maxideal(1); // define the specialization homomorphism 745 745 poly rez=FF(rez); // bring the result to the base ring 746 746 return( (1/factorial(n))*rez); … … 1067 1067 } 1068 1068 ring r@ = create_ring(ring_list(basering)[1], l4, "lp", "no_minpoly"); 1069 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1070 list c= F(c); // embed c in the bigger ring1071 list C= F(C); // embed C in the bigger ring1069 // define the corresponding inclusion of rings: imap 1070 list c=imap(br@,c); // embed c in the bigger ring 1071 list C=imap(br@,C); // embed C in the bigger ring 1072 1072 list A=a@(1..r); // list of Chern roots of the first vector bundle 1073 1073 list syma = symm(A); // symmetric functions in the Chern roots of the first vector bundles … … 1098 1098 } 1099 1099 setring br@; // come back to the initial base ring 1100 execute( "map FF= r@, 0,"+varstr(br@)+";"); // define the specialization homomorphism t@=01100 map FF= r@, 0,maxideal(1); // define the specialization homomorphism t@=0 1101 1101 list rez=FF(rez); // bring the result to the base ring 1102 1102 return(rez); // return the corresponding Chern classes … … 1161 1161 } 1162 1162 ring r@ = create_ring(ring_list(basering)[1], l5, "dp", "no_minpoly"); 1163 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1164 1163 list c, C; 1165 1164 int i; … … 1182 1181 setring br@; // come back to the initial base ring 1183 1182 // define the specialization homomorphism 1184 execute("map FF = r@,"+varstr(br@)+",0, c[1..r], C[1..R];");1183 map FF = r@,maxideal(1),0, c[1..r], C[1..R]; 1185 1184 return( FF( rez ) ); // bring the result to the initial ring 1186 1185 } … … 1306 1305 } 1307 1306 ring r@ = create_ring(ring_list(basering)[1], l6, "dp", "no_minpoly"); 1308 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1309 1307 list c, C; 1310 1308 int i; … … 1327 1325 setring br@; // come back to the initial base ring 1328 1326 // define the specialization homomorphism 1329 execute("map FF = r@,"+varstr(br@)+",0, c[1..r], C[1..R];");1327 map FF = r@,maxideal(1),0, c[1..r], C[1..R]; 1330 1328 return( FF( rez ) ); // bring the result to the initial ring 1331 1329 } … … 1649 1647 } 1650 1648 ring r@ = create_ring(ring_list(basering)[1], l7, "lp", "no_minpoly"); 1651 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1652 list c= F(c); // embed c into the bigger ring1649 // define the corresponding inclusion of rings: imap 1650 list c=imap(br@,c); // embed c into the bigger ring 1653 1651 list rez; // the Chern classes of the symmetric power are going to be written here 1654 1652 poly E = product( list( a@(1..r ) ) ); // product of the Chern roots … … 1725 1723 // define the specialization homomorphism, 1726 1724 // evaluate the formulas for the Chern classes on their given values 1727 execute( "map FF = r@,0,"+varstr(br@)+";");1725 map FF = r@,0,maxideal(1); 1728 1726 list rez=FF( rez ); // bring the result back to the initial ring 1729 1727 return( list( N, rez ) ); // return the result together with the rank of the symmetric power … … 1781 1779 } 1782 1780 ring r@ = create_ring(ring_list(basering)[1], l8, "dp", "no_minpoly"); 1783 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1784 1781 list c; 1785 1782 for(i=1;i<=r;i++) … … 1796 1793 } 1797 1794 setring br@; // come back to the initial base ring 1798 execute("map FF = r@,"+varstr(br@)+",0, c[1..r];"); // define the specialization homomorphism1795 map FF = r@,maxideal(1),0, c[1..r]; // define the specialization homomorphism 1799 1796 return( list(N, FF( rez )) ); // bring the result to the initial ring 1800 1797 } … … 1953 1950 } 1954 1951 ring r@ = create_ring(ring_list(basering)[1], l9, "lp", "no_minpoly"); 1955 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings1956 list c = F(c); // embed c into the bigger ring1952 // define the corresponding inclusion of rings: imap 1953 list c = imap(br@,c); // embed c into the bigger ring 1957 1954 list rez; // the result should be computed here 1958 1955 poly E = product( list( a@(1..r ) ) ); // product of the Chern roots to be eliminaned … … 2031 2028 // define the specialization homomorphism, 2032 2029 // evaluate the formulas for the Chern classes on their given values 2033 execute( "map FF = r@,0,"+varstr(br@)+";");2030 map FF = r@,0,maxideal(1); 2034 2031 list rez=FF( rez ); // bring the result back to the initial ring 2035 2032 return( list( N, rez ) ); //return the rank and the Chern classes of the exterior product … … 2087 2084 } 2088 2085 ring r@ = create_ring(ring_list(basering)[1], l10, "dp", "no_minpoly"); 2089 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings2090 2086 list c; 2091 2087 for(i=1;i<=r;i++) … … 2102 2098 } 2103 2099 setring br@; // come back to the initial base ring 2104 execute("map FF = r@,"+varstr(br@)+",0, c[1..r];"); // define the specialization homomorphism2100 map FF = r@,maxideal(1),0, c[1..r]; // define the specialization homomorphism 2105 2101 return( list(N, FF( rez )) ); // bring the result to the initial ring 2106 2102 } … … 2215 2211 } 2216 2212 ring r@ = create_ring(ring_list(basering)[1], l11, "dp", "no_minpoly"); 2217 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings2218 list c= F(c); // embed c into the bigger ring2213 // define the corresponding inclusion of rings: imap 2214 list c=imap(br@,c); // embed c into the bigger ring 2219 2215 list prev; 2220 2216 list next; … … 2251 2247 next = delete(next, 1); // throw away the zeroth term which is always equal to 1 2252 2248 setring br@; // come back to the initial base ring 2253 execute("map FF = r@,"+varstr(br@)+",0, c[1..n];"); // define the specialization homomorphism2249 map FF = r@,maxideal(1),0, c[1..n]; // define the specialization homomorphism 2254 2250 return( FF( next ) ); // bring the result to the initial ring 2255 2251 } … … 2303 2299 } 2304 2300 ring r@ = create_ring(ring_list(basering)[1], l12, "lp", "no_minpoly"); 2305 execute( "map F= br@,"+varstr(br@)+";" ); // define the corresponding inclusion of rings2306 list c= F(c); // embed c into the bigger ring2301 // define the corresponding inclusion of rings: imap 2302 list c=imap(br@,c); // embed c into the bigger ring 2307 2303 int j; 2308 2304 int k; … … 2332 2328 setring br@; // come back to the initial base ring 2333 2329 // define the specialization homomorphism (all added variables are set to zero) 2334 execute( "map FF = r@,0, "+varstr(br@)+";");2330 map FF = r@,0,maxideal(1); 2335 2331 poly rez=FF( rez ); // bring the result back to the initial base ring 2336 2332 return(rez);
Note: See TracChangeset
for help on using the changeset viewer.