Changeset 6ad6d7 in git
- Timestamp:
- Dec 18, 2013, 6:42:50 PM (9 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'f875bbaccd0831e36aaed09ff6adeb3eb45aeb94')
- Children:
- 1129351bca33bc8786735f0f6b3ef6e938ff6352
- Parents:
- b5bb857a49ad6ba995c35f60c39498abec0f46fc
- Location:
- Singular/LIB
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/ellipticcovers.lib
-
Property
mode
changed from
100755
to100644
rb5bb857 r6ad6d7 13 13 We implement a formula for computing the number of covers of elliptic curves. 14 14 It has beed obtained by proving mirror symmetry 15 for arbitrary genus by tropical methods in [BBM]. A Feynman graph of genus 16 g is a trivalent, connected graph of genus g (with 2g-2 vertices 17 and 3g-3 edges). The branch type b=(b_1,...,b_(3g-3)) of a stable map is the 15 for arbitrary genus by tropical methods in [BBM]. A Feynman graph of genus 16 g is a trivalent, connected graph of genus g (with 2g-2 vertices 17 and 3g-3 edges). The branch type b=(b_1,...,b_(3g-3)) of a stable map is the 18 18 multiplicity of the the edge i over a fixed base point. 19 19 20 Given a Feynman graph G and a branch type b, we obtain the number 20 Given a Feynman graph G and a branch type b, we obtain the number 21 21 N_(G,b) of stable maps of branch type b from a genus g curve of topological type G 22 to the elliptic curve by computing a path integral 22 to the elliptic curve by computing a path integral 23 23 over a rational function. The path integral is computed as a residue. 24 24 … … 37 37 38 38 KEYWORDS: 39 40 39 tropical geometry; mirror symmetry; tropical mirror symmetry; Gromov-Witten invariants; elliptic curves; propagator; Feynman graph; path integral 41 40 … … 52 51 computeConstant(number, number) constant coefficient in the Laurent series expansion of a rational function in a given variable 53 52 evalutateIntegral(number, list) path integral for a given propagator and ordered sequence of variables 54 gromovWitten(number) sum of path integrals for a given propagator over all orderings of the variables, or 53 gromovWitten(number) sum of path integrals for a given propagator over all orderings of the variables, or 55 54 Gromov Witten invariant for a given graph and a fixed branch type, or 56 55 list of Gromov Witten invariants for a given graph and all branch types … … 60 59 partitions(int, int) partitions of an integer into a fixed number of summands 61 60 permute(list) all permutations of a list 62 sum(list)sum of the elements of a list61 lsum(list) sum of the elements of a list 63 62 64 63 "; … … 196 195 product of propagator(list(v[i],w[i]),b[i]) over all edges i with multiplicity b[i] over the base point 197 196 and vertices v[i] and w[i]. 198 199 KEYWORDS: propagator;elliptic curve197 198 KEYWORDS: elliptic curve 200 199 EXAMPLE: example propagator; shows an example 201 200 " … … 231 230 { "EXAMPLE:"; echo=2; 232 231 ring R=(0,x1,x2,x3,x4),(q1,q2,q3,q4,q5,q6),dp; 233 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 232 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 234 233 propagator(list(x1,x2),0); 235 234 propagator(list(x1,x2),2); … … 246 245 RETURN: number, the constant coefficient of the Laurent series of f in the variable x. 247 246 THEORY: Computes the constant coefficient of the Laurent series by iterative differentiation. 248 247 249 248 KEYWORDS: Laurent series 250 249 EXAMPLE: example computeConstant; shows an example … … 272 271 { "EXAMPLE:"; echo=2; 273 272 ring R=(0,x1,x2,x3,x4),(q1,q2,q3,q4,q5,q6),dp; 274 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 273 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 275 274 number P = propagator(G,list(1,1,1,0,0,0)); 276 275 computeConstant(P,x2); … … 287 286 288 287 In the setting of covers of elliptic curves this is the path integral over the 289 propagator divided by the product of all variables (corresponding to the vertices) 288 propagator divided by the product of all variables (corresponding to the vertices) 290 289 computed as a residue. 291 290 292 291 KEYWORDS: residue; Laurent series 293 292 EXAMPLE: example evaluateIntegral; shows an example … … 302 301 { "EXAMPLE:"; echo=2; 303 302 ring R=(0,x1,x2,x3,x4),(q1,q2,q3,q4,q5,q6),dp; 304 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 303 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 305 304 number p = propagator(G,list(0,2,1,0,0,1)); 306 305 evaluateIntegral(p,list(x1,x3,x4,x2)); … … 315 314 316 315 This will eventually be deleted and become a more efficient kernel function. 317 316 318 317 KEYWORDS: permutations 319 318 EXAMPLE: example permute; shows an example … … 350 349 351 350 This may eventually be deleted and become a more efficient kernel function. 352 351 353 352 KEYWORDS: partitions 354 353 EXAMPLE: example partitions; shows an example … … 384 383 - the invariant N_(G,d)*|Aut(G)| where d is the degree of the covering, or @* 385 384 386 - the number N_(G,b) of coverings with source G and target an elliptic curves with branch type a over a 385 - the number N_(G,b) of coverings with source G and target an elliptic curves with branch type a over a 387 386 fixed base point (that is, the i-th edge passes over the base point with multiplicity b[i]).@* 388 387 389 388 KEYWORDS: Gromov-Witten invariants; elliptic curves; coverings; Hurwitz numbers 390 389 EXAMPLE: example gromovWitten; shows an example … … 420 419 //print(string(j)+" / "+string(size(pa))+" "+string(pa[j])+" "+string(re[j])+" "+string(sum(re))+" "+string(ti)); 421 420 } 422 return( sum(re));421 return(lsum(re)); 423 422 } 424 423 } … … 427 426 { "EXAMPLE:"; echo=2; 428 427 ring R=(0,x1,x2,x3,x4),(q1,q2,q3,q4,q5,q6),dp; 429 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 428 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 430 429 number P = propagator(G,list(0,2,1,0,0,1)); 431 430 gromovWitten(P); … … 439 438 "USAGE: computeGromovWitten(G, d, st, en [, vb] ); G graph, d int, st int, en int, optional: vb int@* 440 439 ASSUME: G is a Feynman graph, d a non-negative integer, st specified the start- and en the end partition 441 in the list pa = partition(d). Specifying a positive optional integer vb leads to intermediate printout.@* 440 in the list pa = partition(d). Specifying a positive optional integer vb leads to intermediate printout.@* 442 441 We assume that the coefficient ring has one rational variable for each vertex of G.@* 443 442 RETURN: list L, where L[i] is gromovWitten(G,pa[i]) and all others are zero. 444 443 THEORY: This function does essentially the same as the function gromovWitten, but is designed for handling complicated examples. 445 444 Eventually it will also run in parallel.@* 446 445 447 446 KEYWORDS: Gromov-Witten invariants; elliptic curves; coverings; Hurwitz numbers 448 447 EXAMPLE: example computeGromovWitten; shows an example … … 463 462 re[j]=gromovWitten(propagator(P,pa[j])); 464 463 ti=timer-ti; 465 if (vb>0){print(string(j)+" / "+string(size(pa))+" "+string(pa[j])+" "+string(re[j])+" "+string( sum(re))+" "+string(ti));}464 if (vb>0){print(string(j)+" / "+string(size(pa))+" "+string(pa[j])+" "+string(re[j])+" "+string(lsum(re))+" "+string(ti));} 466 465 } else {re[j]=s;} 467 466 } … … 473 472 ring R=(0,x1,x2,x3,x4),(q1,q2,q3,q4,q5,q6),dp; 474 473 graph G = makeGraph(list(1,2,3,4),list(list(1,3),list(1,2),list(1,2),list(2,4),list(3,4),list(3,4))); 475 partitions(6,2); 474 partitions(6,2); 476 475 computeGromovWitten(G,2,3,7); 477 476 computeGromovWitten(G,2,3,7,1); … … 479 478 480 479 481 proc sum(list L)482 "USAGE: sum(L); L list@*483 ASSUME: L is a list of things with the binary operator + defined.@* 480 proc lsum(list L) 481 "USAGE: lsum(L); L list@* 482 ASSUME: L is a list of things with the binary operator + defined.@* 484 483 RETURN: The sum of the elements of L. 485 THEORY: Sums the elements of a list. 484 THEORY: Sums the elements of a list. 486 485 487 486 Eventually this will be deleted and become a more efficient kernel function.@* 488 489 KEYWORDS: sum 490 EXAMPLE: example sum; shows an example 487 488 EXAMPLE: example lsum; shows an example 491 489 " 492 490 { … … 499 497 { "EXAMPLE:"; echo=2; 500 498 list L = 1,2,3,4,5; 501 sum(L);499 lsum(L); 502 500 } 503 501 … … 507 505 "USAGE: generatingFunction(G, d); G graph, d int@* 508 506 ASSUME: G is a Feynman graph, d a non-negative integer. The basering has one polynomial variable for each 509 edge, and the coefficient ring has one rational variable for each vertex.@* 507 edge, and the coefficient ring has one rational variable for each vertex.@* 510 508 RETURN: poly. 511 509 THEORY: This function compute the multivariate generating function of all Gromov-Witten invariants up to 512 510 degree d, that is, the sum of all gromovWitten(G,b)*q^b.@* 513 511 514 512 KEYWORDS: generating function; Gromov-Witten invariants; elliptic curves; coverings; Hurwitz numbers 515 513 EXAMPLE: example generatingFunction; shows an example -
Property
mode
changed from
-
Singular/LIB/primdecint.lib
rb5bb857 r6ad6d7 1203 1203 //=== this is needed because quotient(I,f) does not work properly, should be 1204 1204 //=== replaced by quotient later 1205 if ( f==0 ) { return( ideal(1) ); } 1205 if ( f==0 ) { return( ideal(1) ); } 1206 1206 def R=basering; 1207 1207 int i; … … 1340 1340 ideal I=quotient(N,freemodule(nrows(N))); 1341 1341 if(size(I)==0){return(list(list(N,I)));} 1342 1342 1343 1343 list B=minAssZ(I); 1344 1344 list S,R,L; … … 1436 1436 else 1437 1437 { 1438 // this is the case that P=<p>, p prime 1438 // this is the case that P=<p>, p prime 1439 1439 I=std(I); 1440 1440 ideal IC=simplify(flatten(lead(I)),2);
Note: See TracChangeset
for help on using the changeset viewer.