Macaulay2 » Documentation
Packages » Macaulay2Doc > mathematical examples > Tutorial: Canonical Embeddings of Plane Curves and Gonality
next | previous | forward | backward | up | index | toc

Tutorial: Canonical Embeddings of Plane Curves and Gonality

MATHEMATICAL BACKGROUND

The gonality of a curve is defined to be the smallest degree of a morphism from the curve to the projective line $\PP^1$. It is known that a curve $C$ of genus $g$ admits a map to $\PP^1$ of degree at most $[(g+3)/2]$. Further, if $C$ is $d$-gonal, then in its canonical embedding $C$ lies on a rational normal scroll of dimension $d-1$, and the free resolution of the homogeneous coordinate ring of the scroll is a subcomplex of the free resolution of the homogeneous coordinate ring of $C$. Thus for example the $2$-linear part of that resolution has length at least $g-d$, and ``Green's Conjecture'' states that if one computes Clifford index instead of gonality, a slight refinement, then equality holds. For example, Green's conjecture predicts that the resolution of the homogeneous coordinate ring of a general curve of genus 7 and gonality 4 is:

     total: 1 10 25 25 10 1
         0: 1 .  .  .  .  .
         1: . 10 16 9  .  .
         2: . .  9  16 10 .
         3: . .  .  .  .  1

(Green's conjecture has actually been proven by Frank Schreyer in this case; in any case the result that the two-linear part is AT LEAST as long as predicted in Green's conjecture is easy.) If a curve can be represented as a plane curve of degree $e$ with an ordinary multiple point (that is, the branches have distinct tangents) of multiplicity $m$, then projection from the point defines a map to $\PP^1$ of degree $e-m$. In this example we will illustrate the ``principle'' that this is often the gonality of the curve by computing the canonical embedding and its resolution. To compute the canonical embedding, we will use ``adjunction'': the canonical series of a plane curve $C$ of degree $e$ with only ordinary multiple points of degrees $m_i$ as singularities is obtained as the linear series cut out by plane curves $D$ of degree $e-3$ passing through the nodes with multiplicities $m_i-1$; at a tacnode of multiplicity 2 the condition is that $D$ passes through the singular point and is tangent to the tangent line of $C$ at that point.

We will make these computations for three types of plane sextic curves (of genus seven):

C1 will have 3 ordinary nodes;

C2 will have one ordinary triple point;

C3 will have one tacnode and one ordinary node.

Computation

We take C1 to be a curve of degree $6$ having $3$ ordinary double points:

i1 : R = ZZ/31991[a,b,c] -- the coordinate ring of P^2

o1 = R

o1 : PolynomialRing

We define the ideals of the points. We could write

i2 : ipoint1 = ideal matrix({{a,b}})

o2 = ideal (a, b)

o2 : Ideal of R

but the following shortcut is faster!

i3 : ipoint1 = ideal(a,b)

o3 = ideal (a, b)

o3 : Ideal of R
i4 : ipoint2 = ideal(a,c)

o4 = ideal (a, c)

o4 : Ideal of R
i5 : ipoint3 = ideal(b,c)

o5 = ideal (b, c)

o5 : Ideal of R

For a curve to be double at the $3$ points, its equation must lie in the ideal

i6 : icurves1 = intersect(
                    ipoint1^2,
                    ipoint2^2,
                    ipoint3^2
                )

                    2 2   2 2   2 2
o6 = ideal (a*b*c, b c , a c , a b )

o6 : Ideal of R

The matrix with the generators of icurves1 as its entries is obtained by

i7 : Icurves1 = gens icurves1

o7 = | abc b2c2 a2c2 a2b2 |

             1      4
o7 : Matrix R  <-- R

We find the equation F1 of a general curve of degree $6$ with these double points by composing a random matrix of forms having the correct degree with the matrix of generators of icurves1.

i8 : F1 = Icurves1 * random(source Icurves1, R^{-6})

o8 = | -8239a4b2-6191a3b3+5864a2b4+107a4bc-5092a3b2c-4302a2b3c+8570ab4c-
     ------------------------------------------------------------------------
     7452a4c2-487a3bc2+12260a2b2c2-12679ab3c2-11938b4c2-13496a3c3+4964a2bc3-
     ------------------------------------------------------------------------
     11182ab2c3+5026b3c3-7204a2c4-10468abc4+9534b2c4 |

             1      1
o8 : Matrix R  <-- R
i9 : betti F1

            0 1
o9 = total: 1 1
         0: 1 .
         1: . .
         2: . .
         3: . .
         4: . .
         5: . 1

o9 : BettiTally

We now look for the equation F2 of C2, a curve with an ordinary triple point at point1. It must lie in the cube of the ideal ipoint1.

i10 : Icurves2 = gens (ipoint1^3)

o10 = | a3 a2b ab2 b3 |

              1      4
o10 : Matrix R  <-- R
i11 : F2 = Icurves2 * random(source Icurves2, R^{-6})

o11 = | 7256a6-6606a5b+126a4b2-6872a3b3+9483a2b4-12497ab5-13880b6+6230a5c+
      -----------------------------------------------------------------------
      15973a4bc-12234a3b2c-15204a2b3c-809ab4c-982b5c-3984a4c2+6941a3bc2-
      -----------------------------------------------------------------------
      8730a2b2c2+14943ab3c2+8971b4c2-11509a3c3+5679a2bc3+8922ab2c3-14153b3c3
      -----------------------------------------------------------------------
      |

              1      1
o11 : Matrix R  <-- R
i12 : betti F2

             0 1
o12 = total: 1 1
          0: 1 .
          1: . .
          2: . .
          3: . .
          4: . .
          5: . 1

o12 : BettiTally

Finally, the equation of a curve with a tacnode at $a=b=0$ having tangent line $a-b=0$ there must lie in the ideal

i13 : i = ideal((a-b)^2) + (ipoint1^4)

              2           2   4   3    2 2     3   4
o13 = ideal (a  - 2a*b + b , a , a b, a b , a*b , b )

o13 : Ideal of R

and adding a node at point3 we get

i14 : icurves3 = intersect(i, ipoint3^2)

              2 2         2    2 2   2          2     3    4     3   2 2
o14 = ideal (a c  - 2a*b*c  + b c , a b*c - 2a*b c + b c, b , a*b , a b )

o14 : Ideal of R
i15 : Icurves3 = gens icurves3

o15 = | a2c2-2abc2+b2c2 a2bc-2ab2c+b3c b4 ab3 a2b2 |

              1      5
o15 : Matrix R  <-- R

so

i16 : F3 = Icurves3 * random(source Icurves3, R^{-6})

o16 = | -6615a4b2-2888a3b3-62a2b4-10259ab5-11423b6-6441a4bc+11646a3b2c-
      -----------------------------------------------------------------------
      2688a2b3c+7542ab4c-10870b5c-2990a4c2-13464a3bc2-15258a2b2c2-8437ab3c2-
      -----------------------------------------------------------------------
      8369b4c2-10509a3c3+6993a2bc3-14450ab2c3-14025b3c3+1206a2c4-2412abc4+
      -----------------------------------------------------------------------
      1206b2c4 |

              1      1
o16 : Matrix R  <-- R
i17 : betti F3

             0 1
o17 = total: 1 1
          0: 1 .
          1: . .
          2: . .
          3: . .
          4: . .
          5: . 1

o17 : BettiTally

It is evident from the discussion above that C1 and C3 have gonality $\leq 5$ (indeed, every curve of genus $7$ has gonality $\leq 5$) and that C2 has gonality $\leq 4$. We can establish lower bounds for the gonalities by looking at the canonical embeddings. The canonical series of C1 is cut out by

i18 : can1 = basis(3, intersect(ipoint1,ipoint2,ipoint3))

o18 = {2} | b c 0 0 0 0 0 |
      {2} | 0 0 a c 0 0 0 |
      {2} | 0 0 0 0 a b c |

o18 : Matrix

Some explanation regarding the basis command is needed here. can1 is a matrix whose target is the ideal of the intersection of these three points:

i19 : target can1

o19 = image | bc ac ab |

                              1
o19 : R-module, submodule of R

and whose source is a free module over the coefficient ring:

i20 : source can1

       7
o20 = R

o20 : R-module, free, degrees {7:3}

For our purposes, there are two problems with this. The first is that we want a map where both the source and target have the base ring $R$. This can be accomplished by tensoring with $R$:

i21 : can1 = can1 ** R

o21 = {2} | b c 0 0 0 0 0 |
      {2} | 0 0 a c 0 0 0 |
      {2} | 0 0 0 0 a b c |

o21 : Matrix

The second problem is that the image of a basis element is not obviously in the ideal: it is represented in terms of the generators of $I$. This can be alleviated by applying super: this takes a homomorphism $f : M \rightarrow{} N$, where $N$ is a submodule of a quotient module $F/I$, and returns the homomorphism $f : M \rightarrow{} F/I$.

i22 : can1 = super can1

o22 = | b2c bc2 a2c ac2 a2b ab2 abc |

              1      7
o22 : Matrix R  <-- R

similarly, for C2 and C3:

i23 : can2 = basis(3, ipoint1^2)

o23 = {2} | a b c 0 0 0 0 |
      {2} | 0 0 0 b c 0 0 |
      {2} | 0 0 0 0 0 b c |

o23 : Matrix
i24 : can2 = super (can2 ** R)

o24 = | a3 a2b a2c ab2 abc b3 b2c |

              1      7
o24 : Matrix R  <-- R
i25 : can3 = basis(3, intersect(ideal(a-b) + ipoint1^2, ipoint3))

o25 = {2} | a c 0 0 0 0 0 |
      {2} | 0 0 b c 0 0 0 |
      {2} | 0 0 0 0 a b c |

o25 : Matrix

i26 : can3 = super (can3 ** R)

o26 = | a2c-abc ac2-bc2 b3 b2c a2b ab2 abc |

              1      7
o26 : Matrix R  <-- R

These should all give embeddings of the curves in $\PP^6$, so we expect them to be linear series of vector space dimension $7$. Here's how to check:

i27 : betti  can1

             0 1
o27 = total: 1 7
          0: 1 .
          1: . .
          2: . 7

o27 : BettiTally
i28 : betti  can2

             0 1
o28 = total: 1 7
          0: 1 .
          1: . .
          2: . 7

o28 : BettiTally
i29 : betti  can3

             0 1
o29 = total: 1 7
          0: 1 .
          1: . .
          2: . 7

o29 : BettiTally

To compute the homogeneous coordinate rings of the canonical curves, we must find the algebraic relations among the generators of cani modulo Fi.

The coordinate ring of $\PP^6$

i30 : S = (coefficientRing R)[x_0..x_6]

o30 = S

o30 : PolynomialRing

Find the canonical ideal IC1 of C1, that is, the kernel of the map $S \rightarrow{} R/(F1)$ defined by the canonical series.

i31 : T1 = R/ideal F1

o31 = T1

o31 : QuotientRing
i32 : f1 = map(T1,S,substitute(can1, T1))

                    2      2   2      2   2      2
o32 = map (T1, S, {b c, b*c , a c, a*c , a b, a*b , a*b*c})

o32 : RingMap T1 <-- S
i33 : IC1 = mingens ker f1

o33 = | x_3x_5-x_6^2 x_2x_5-x_4x_6 x_1x_5-x_0x_6 x_3x_4-x_2x_6 x_1x_4-x_6^2
      -----------------------------------------------------------------------
      x_0x_4-x_5x_6 x_0x_3-x_1x_6 x_1x_2-x_3x_6 x_0x_2-x_6^2
      -----------------------------------------------------------------------
      x_0^2-5644x_0x_1+13532x_1^2-5584x_2^2-9046x_1x_3+5977x_2x_3-14379x_3^2+
      -----------------------------------------------------------------------
      8460x_2x_4-11600x_4^2-15747x_0x_5-9928x_4x_5+9786x_5^2+13767x_0x_6-
      -----------------------------------------------------------------------
      12878x_1x_6+11724x_2x_6-11443x_3x_6-4657x_4x_6-11260x_5x_6+10509x_6^2 |

              1      10
o33 : Matrix S  <-- S

and similarly for C2, C3

i34 : T2 = R/ideal F2

o34 = T2

o34 : QuotientRing
i35 : f2 = map(T2,S,substitute(can2, T2))

                    3   2    2      2          3   2
o35 = map (T2, S, {a , a b, a c, a*b , a*b*c, b , b c})

o35 : RingMap T2 <-- S
i36 : IC2 = mingens ker f2

o36 = | x_4x_5-x_3x_6 x_2x_5-x_1x_6 x_4^2-x_2x_6 x_3x_4-x_1x_6 x_1x_4-x_0x_6
      -----------------------------------------------------------------------
      x_3^2-x_1x_5 x_2x_3-x_0x_6 x_1x_3-x_0x_5 x_1x_2-x_0x_4 x_1^2-x_0x_3
      -----------------------------------------------------------------------
      x_0^2x_5-8563x_0x_1x_5-12389x_0x_3x_5+14037x_0x_5^2+8268x_1x_5^2+11845x
      -----------------------------------------------------------------------
      _3x_5^2-2224x_5^3+9480x_0x_1x_6+7925x_0x_3x_6+6313x_0x_4x_6-12686x_2x_
      -----------------------------------------------------------------------
      4x_6+11629x_0x_5x_6+2026x_1x_5x_6+11247x_3x_5x_6+11754x_5^2x_6+14978x_
      -----------------------------------------------------------------------
      0x_6^2+3764x_1x_6^2+15163x_2x_6^2-6069x_3x_6^2+3255x_4x_6^2+10878x_5x_6
      -----------------------------------------------------------------------
      ^2-12704x_6^3 x_0^2x_3-13986x_0x_1x_5+9186x_0x_3x_5-15079x_0x_5^2+
      -----------------------------------------------------------------------
      14646x_1x_5^2+15041x_3x_5^2-9467x_5^3+9480x_0^2x_6-7993x_0x_1x_6+6313x_
      -----------------------------------------------------------------------
      0x_2x_6-12686x_2^2x_6-11498x_0x_3x_6+8407x_0x_4x_6-5610x_2x_4x_6-6830x_
      -----------------------------------------------------------------------
      0x_5x_6-11228x_1x_5x_6-5086x_3x_5x_6+5816x_5^2x_6+8459x_0x_6^2+10126x_
      -----------------------------------------------------------------------
      1x_6^2-7445x_2x_6^2-4585x_3x_6^2-4300x_4x_6^2-9478x_5x_6^2-14952x_6^3
      -----------------------------------------------------------------------
      x_0^2x_1+9480x_0^2x_4+6313x_0x_2x_4-12686x_2^2x_4-10619x_0x_1x_5+7614x_
      -----------------------------------------------------------------------
      0x_3x_5+7361x_0x_5^2+3824x_1x_5^2+5305x_3x_5^2-9612x_5^3-7993x_0^2x_6+
      -----------------------------------------------------------------------
      5078x_0x_1x_6+8407x_0x_2x_6-5610x_2^2x_6+15396x_0x_3x_6+6917x_0x_4x_6-
      -----------------------------------------------------------------------
      11755x_2x_4x_6-10278x_0x_5x_6-13476x_1x_5x_6+6611x_3x_5x_6-10305x_5^2x_
      -----------------------------------------------------------------------
      6+15366x_0x_6^2+13524x_1x_6^2-2921x_2x_6^2+13602x_3x_6^2-13715x_4x_6^2-
      -----------------------------------------------------------------------
      9488x_5x_6^2-130x_6^3 x_0^3+9480x_0^2x_2+6313x_0x_2^2-12686x_2^3-7993x_
      -----------------------------------------------------------------------
      0^2x_4+8407x_0x_2x_4-5610x_2^2x_4-4461x_0x_1x_5-4438x_0x_3x_5-15333x_0x
      -----------------------------------------------------------------------
      _5^2-12098x_1x_5^2+15822x_3x_5^2-7298x_5^3+5078x_0^2x_6+7839x_0x_1x_6+
      -----------------------------------------------------------------------
      6917x_0x_2x_6-11755x_2^2x_6+8967x_0x_3x_6-23x_0x_4x_6-1454x_2x_4x_6-
      -----------------------------------------------------------------------
      10385x_0x_5x_6-9238x_1x_5x_6-815x_3x_5x_6-13156x_5^2x_6+5654x_0x_6^2-
      -----------------------------------------------------------------------
      5232x_1x_6^2-8521x_2x_6^2+5666x_3x_6^2+14435x_4x_6^2-6019x_5x_6^2+2271x
      -----------------------------------------------------------------------
      _6^3 |

              1      14
o36 : Matrix S  <-- S
i37 : T3 = R/ideal F3

o37 = T3

o37 : QuotientRing
i38 : f3 = map(T3,S,substitute(can3, T3))

                    2              2      2   3   2    2      2
o38 = map (T3, S, {a c - a*b*c, a*c  - b*c , b , b c, a b, a*b , a*b*c})

o38 : RingMap T3 <-- S
i39 : IC3 = mingens ker f3

o39 = | x_3x_5-x_2x_6 x_1x_5+x_3x_6-x_6^2 x_0x_5-x_4x_6+x_5x_6 x_3x_4-x_5x_6
      -----------------------------------------------------------------------
      x_2x_4-x_5^2 x_1x_4-x_0x_6 x_0x_3+x_3x_6-x_6^2 x_1x_2+x_3^2-x_3x_6
      -----------------------------------------------------------------------
      x_0x_2+x_2x_6-x_5x_6 x_0^2+3438x_0x_1-3253x_1^2+11527x_2^2-3054x_1x_3+
      -----------------------------------------------------------------------
      10168x_2x_3-8011x_3^2+7267x_0x_4+11397x_4^2-13895x_2x_5-10142x_4x_5+
      -----------------------------------------------------------------------
      9929x_5^2-4744x_0x_6+3054x_1x_6+14035x_2x_6-1249x_3x_6+12142x_4x_6-
      -----------------------------------------------------------------------
      11212x_5x_6+3306x_6^2 |

              1      10
o39 : Matrix S  <-- S

We now find the $2$-linear part of the free resolution of IC1 and its betti numbers.

i40 : IC1res = res(coker IC1)

       1      10      25      25      10      1
o40 = S  <-- S   <-- S   <-- S   <-- S   <-- S  <-- 0
                                                     
      0      1       2       3       4       5      6

o40 : ChainComplex
i41 : betti  IC1res

             0  1  2  3  4 5
o41 = total: 1 10 25 25 10 1
          0: 1  .  .  .  . .
          1: . 10 16  9  . .
          2: .  .  9 16 10 .
          3: .  .  .  .  . 1

o41 : BettiTally

From this computation, and the easy implication of Green's conjecture explained above, we see that the gonality of C1 is exactly 4, the gonality of the linear series obtained by projection from any one of the three double points. We now do the same for IC2 and IC3:

i42 : IC2res = res(coker IC2)

       1      14      35      35      14      1
o42 = S  <-- S   <-- S   <-- S   <-- S   <-- S  <-- 0
                                                     
      0      1       2       3       4       5      6

o42 : ChainComplex
i43 : betti  IC2res

             0  1  2  3  4 5
o43 = total: 1 14 35 35 14 1
          0: 1  .  .  .  . .
          1: . 10 20 15  4 .
          2: .  4 15 20 10 .
          3: .  .  .  .  . 1

o43 : BettiTally
i44 : IC3res = res(coker IC3)

       1      10      25      25      10      1
o44 = S  <-- S   <-- S   <-- S   <-- S   <-- S  <-- 0
                                                     
      0      1       2       3       4       5      6

o44 : ChainComplex
i45 : betti  IC3res

             0  1  2  3  4 5
o45 = total: 1 10 25 25 10 1
          0: 1  .  .  .  . .
          1: . 10 16  9  . .
          2: .  .  9 16 10 .
          3: .  .  .  .  . 1

o45 : BettiTally

and we find that in the tacnodal case the gonality is still 4, while in the triple point case the gonality is 3. Note that we could have made the computation faster, as in the following example. In these cases the resolution is so fast that the speedup is not noticeable, but in larger cases it would be worthwhile. First clear the info computed in IC1

i46 : IC1 = matrix entries IC1

o46 = | x_3x_5-x_6^2 x_2x_5-x_4x_6 x_1x_5-x_0x_6 x_3x_4-x_2x_6 x_1x_4-x_6^2
      -----------------------------------------------------------------------
      x_0x_4-x_5x_6 x_0x_3-x_1x_6 x_1x_2-x_3x_6 x_0x_2-x_6^2
      -----------------------------------------------------------------------
      x_0^2-5644x_0x_1+13532x_1^2-5584x_2^2-9046x_1x_3+5977x_2x_3-14379x_3^2+
      -----------------------------------------------------------------------
      8460x_2x_4-11600x_4^2-15747x_0x_5-9928x_4x_5+9786x_5^2+13767x_0x_6-
      -----------------------------------------------------------------------
      12878x_1x_6+11724x_2x_6-11443x_3x_6-4657x_4x_6-11260x_5x_6+10509x_6^2 |

              1      10
o46 : Matrix S  <-- S

Now redo the resolution, this time bounding the degree to which the computation is carried.

i47 : IC1res = res(coker IC1, DegreeLimit => {1})

       1      10      16      9
o47 = S  <-- S   <-- S   <-- S  <-- 0
                                     
      0      1       2       3      4

o47 : ChainComplex
i48 : betti IC1res

             0  1  2 3
o48 = total: 1 10 16 9
          0: 1  .  . .
          1: . 10 16 9

o48 : BettiTally

Instead of computing the canonical model of C1 directly, we could have treated the structure sheaf of C1 as a sheaf on the projective plane, and compute its push-forward under the map to $\PP^6$ given by can1 (the image of the plane under this map is a Del Pezzo surface on which the canonical curve lies.) This is done as follows:

i49 : ff1 = map(R,S,can1)

                   2      2   2      2   2      2
o49 = map (R, S, {b c, b*c , a c, a*c , a b, a*b , a*b*c})

o49 : RingMap R <-- S
i50 : G = map(coker F1,ff1)

o50 = | 1 |

o50 : Matrix
i51 : trim coimage G

o51 = cokernel | x_3x_5-x_6^2 x_2x_5-x_4x_6 x_1x_5-x_0x_6 x_3x_4-x_2x_6 x_1x_4-x_6^2 x_0x_4-x_5x_6 x_0x_3-x_1x_6 x_1x_2-x_3x_6 x_0x_2-x_6^2 x_0^2-5644x_0x_1+13532x_1^2-5584x_2^2-9046x_1x_3+5977x_2x_3-14379x_3^2+8460x_2x_4-11600x_4^2-15747x_0x_5-9928x_4x_5+9786x_5^2+13767x_0x_6-12878x_1x_6+11724x_2x_6-11443x_3x_6-4657x_4x_6-11260x_5x_6+10509x_6^2 |

                             1
o51 : S-module, quotient of S