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

fromCDivToPic(NormalToricVariety) -- get the map from Cartier divisors to the Picard group

Synopsis

Description

The Picard group of a variety is the group of Cartier divisors divided by the subgroup of principal divisors. For a normal toric variety , the Picard group has a presentation defined by the map from the group of torus-characters to the group of torus-invariant Cartier divisors. Hence, there is a surjective map from the group of torus-invariant Cartier divisors to the Picard group. This function returns a matrix representing this map with respect to the chosen bases. For more information, see Theorem 4.2.1 in Cox-Little-Schenck's Toric Varieties.

On a smooth normal toric variety, the map from the torus-invariant Cartier divisors to the Picard group is the same as the map from the Weil divisors to the class group.

i1 : PP2 = toricProjectiveSpace 2;
i2 : assert (isSmooth PP2 and isProjective PP2)
i3 : fromCDivToPic PP2

o3 = | 1 1 1 |

              1       3
o3 : Matrix ZZ  <-- ZZ
i4 : assert (fromCDivToPic PP2 === fromWDivToCl PP2)
i5 : X = smoothFanoToricVariety (4,20);
i6 : assert (isSmooth X and isProjective X and isFano X)
i7 : fromCDivToPic X

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

              3       7
o7 : Matrix ZZ  <-- ZZ
i8 : assert (fromCDivToPic X === fromWDivToCl X)
i9 : U = normalToricVariety ({{4,-1},{0,1}},{{0},{1}});
i10 : assert (isSmooth U and not isComplete U)
i11 : fromCDivToPic U

o11 = | 1 1 |

o11 : Matrix
i12 : assert (fromCDivToPic U === fromWDivToCl U)

In general, there is a commutative diagram relating the map from the group of torus-invariant Cartier divisors to the Picard group and the map from the group of torus-invariant Weil divisors to the class group.

i13 : Q = normalToricVariety ({{1,0,0},{0,1,0},{0,0,1},{1,1,-1}},{{0,1,2,3}});
i14 : assert (not isSimplicial Q and not isComplete Q)
i15 : fromCDivToPic Q

o15 = 0

                     3
o15 : Matrix 0 <-- ZZ
i16 : assert (fromWDivToCl Q * fromCDivToWDiv Q == fromPicToCl Q * fromCDivToPic Q)
i17 : Y = normalToricVariety (id_(ZZ^3) | -id_(ZZ^3));
i18 : assert (not isSimplicial Y and isProjective Y)
i19 : fromCDivToPic Y

o19 = | 0 0 0 1 |

               1       4
o19 : Matrix ZZ  <-- ZZ
i20 : fromPicToCl Y

o20 = | 0 |
      | 0 |
      | 0 |
      | 2 |
      | 2 |
      | 2 |
      | 2 |

o20 : Matrix
i21 : fromPicToCl Y * fromCDivToPic Y

o21 = | 0 0 0 0 |
      | 0 0 0 0 |
      | 0 0 0 0 |
      | 0 0 0 2 |
      | 0 0 0 2 |
      | 0 0 0 2 |
      | 0 0 0 2 |

o21 : Matrix
i22 : fromCDivToWDiv Y

o22 = | 1  1  1  1 |
      | -1 1  1  1 |
      | 1  -1 1  1 |
      | -1 -1 1  1 |
      | 1  1  -1 1 |
      | -1 1  -1 1 |
      | 1  -1 -1 1 |
      | -1 -1 -1 1 |

               8       4
o22 : Matrix ZZ  <-- ZZ
i23 : fromWDivToCl Y

o23 = | 1  0  1  0 0 0 0 0 |
      | 1  1  0  0 0 0 0 0 |
      | 1  -1 -1 1 0 0 0 0 |
      | -1 1  1  0 1 0 0 0 |
      | 0  0  1  0 0 1 0 0 |
      | 0  1  0  0 0 0 1 0 |
      | 1  0  0  0 0 0 0 1 |

o23 : Matrix
i24 : assert (fromWDivToCl Y * fromCDivToWDiv Y == fromPicToCl Y * fromCDivToPic Y)

This map is computed and cached when the Picard group is first constructed.

See also

Ways to use this method: