next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
NodalCurves :: randomCanonicalNodalCurve

randomCanonicalNodalCurve -- get a random canonical nodal curve of genus g

Synopsis

Description

Construct a canonical rational curve with g double points.

Step 1. Choose the prime p=32003. We then work over kk=ZZ/p and S=kk[x0,x1].

Step 2. Choose 2 times g points Pi,Qi randomly in PP1(kk) which we indentify.

Step 3. Compute the canonical series of the singular curves and the multiplier A at the points, i.e. the ratio between the values of the sections at Pi and Qi.

Step 4. Computer the homogeneous ideal I of the image curve under the linear system

Return the basic objects L=(kk,S,PQ,A,s,T) and I

i1 : g=6;
i2 : time (L,I)=randomCanonicalNodalCurve(g);
     -- used 0.092799 seconds
i3 : L_0

       ZZ
o3 = -----
     32003

o3 : QuotientRing
i4 : (kk,S,PQ,A,s,T)=L;
i5 : PQ

o5 = (| 14750  -3404 12662 -11788 -2727 -11006 |, | -11631 -9701  9811  
      | -13290 2423  9395  -14782 -266  -425   |  | 1312   -11718 -12012
     ------------------------------------------------------------------------
     2398  3536 5497  |)
     -3824 3060 -2566 |

o5 : Sequence
i6 : A

o6 = | -9946 -10088 15570 12621 9721  -3389 |
     | 3739  -11922 -7503 11248 13519 515   |

             2       6
o6 : Matrix S  <--- S
i7 : s;

             1       6
o7 : Matrix S  <--- S
i8 : betti res I

            0 1  2 3 4
o8 = total: 1 6 10 6 1
         0: 1 .  . . .
         1: . 6  5 . .
         2: . .  5 6 .
         3: . .  . . 1

o8 : BettiTally
i9 : numgens T==g, degree I== 2*g-2, genus(T/I)==g

o9 = (true, true, true)

o9 : Sequence

Ways to use randomCanonicalNodalCurve :

  • randomCanonicalNodalCurve(ZZ)