Macaulay2 » Documentation
Packages » NormalToricVarieties :: nefGenerators(NormalToricVariety)
next | previous | forward | backward | up | index | toc

nefGenerators(NormalToricVariety) -- compute generators of the nef cone

Synopsis

Description

The nef cone of a variety is the cone generated by classes of nef Cartier divisors in vector space of Cartier divisors modulo numerical equivalence. On a normal toric variety, numerical equivalence and linear equivalence coincide, so the nef cone lies in the Picard group. Assume that the normal toric variety is non-degenerate, its nef cone is a rational polyhedral cone in the Picard group; see Theorem 6.3.20 in Cox-Little-Schenck's Toric Varieties. This function calculates generators for the rays of this cone, and returns a matrix whose columns correspond to these generates (expressed as vectors in the chosen basis for the Picard group).

For some of our favourite normal toric varieties, we choose a basis for the Picard group which makes the nef cone into the positive orthant.

i1 : nefGenerators toricProjectiveSpace 1

o1 = | 1 |

              1       1
o1 : Matrix ZZ  <-- ZZ
i2 : nefGenerators toricProjectiveSpace 3

o2 = | 1 |

              1       1
o2 : Matrix ZZ  <-- ZZ
i3 : nefGenerators normalToricVariety ( id_(ZZ^3) | - id_(ZZ^3))

o3 = | 1 |

              1       1
o3 : Matrix ZZ  <-- ZZ
i4 : nefGenerators hirzebruchSurface 7

o4 = | 1 0 |
     | 0 1 |

              2       2
o4 : Matrix ZZ  <-- ZZ
i5 : nefGenerators kleinschmidt (3,{0,1})

o5 = | 1 0 |
     | 0 1 |

              2       2
o5 : Matrix ZZ  <-- ZZ
i6 : nefGenerators smoothFanoToricVariety (2,3)

o6 = | 1 0 0 |
     | 0 1 0 |
     | 0 0 1 |

              3       3
o6 : Matrix ZZ  <-- ZZ
i7 : nefGenerators smoothFanoToricVariety (3,12)

o7 = | 1 0 0 0 |
     | 0 1 0 0 |
     | 0 0 1 0 |
     | 0 0 0 1 |

              4       4
o7 : Matrix ZZ  <-- ZZ
i8 : nefGenerators smoothFanoToricVariety (4,90)

o8 = | 1 0 0 0 0 |
     | 0 1 0 0 0 |
     | 0 0 1 0 0 |
     | 0 0 0 1 0 |
     | 0 0 0 0 1 |

              5       5
o8 : Matrix ZZ  <-- ZZ

In general, the nef cone need not even be simplicial.

i9 : nefGenerators smoothFanoToricVariety (2,4)

o9 = | 1 0 0 1 0 |
     | 0 1 1 0 0 |
     | 0 0 1 0 1 |
     | 0 0 0 1 1 |

              4       5
o9 : Matrix ZZ  <-- ZZ
i10 : nefGenerators smoothFanoToricVariety (3,16)

o10 = | 1 0 1 0 0 0 |
      | 1 0 0 0 0 1 |
      | 0 1 1 0 0 0 |
      | 0 0 0 1 0 0 |
      | 0 0 0 0 1 1 |

               5       6
o10 : Matrix ZZ  <-- ZZ
i11 : nefGenerators smoothFanoToricVariety (4,120)

o11 = | 1 0 1 0 0 0 0 0 0 0 |
      | 0 1 0 1 0 0 0 0 0 0 |
      | 0 0 1 0 1 0 0 0 0 0 |
      | 0 0 0 1 1 0 0 0 0 0 |
      | 0 0 0 0 0 1 0 1 0 0 |
      | 0 0 0 0 0 0 1 0 1 0 |
      | 0 0 0 0 0 0 0 1 0 1 |
      | 0 0 0 0 0 0 0 0 1 1 |

               8       10
o11 : Matrix ZZ  <-- ZZ

There are smooth complete normal toric varieties with no nontrivial nef divisors.

i12 : X = normalToricVariety ({{1,0,0},{0,1,0},{0,0,1},{0,-1,2},{0,0,-1},{-1,1,-1},{-1,0,-1},{-1,-1,0}},{{0,1,2},{0,2,3},{0,3,4},{0,4,5},{0,1,5},{1,2,7},{2,3,7},{3,4,7},{4,5,6},{4,6,7},{5,6,7},{1,5,7}});
i13 : assert (isComplete X and not isProjective X and isSmooth X)
i14 : picardGroup X

        5
o14 = ZZ

o14 : ZZ-module, free
i15 : assert (nefGenerators X == 0)

See also

Ways to use this method: