- Usage:
`classGroup X`

- Function: classGroup
- Inputs:
`X`, a normal toric variety

- Outputs:
- a module, a finitely generated abelian group

The class group of a variety is the group of Weil divisors divided by the subgroup of principal divisors. For a normal toric variety, the class group has a presentation defined by the map from the group of torus-characters to group of torus-invariant Weil divisors induced by minimal nonzero lattice points on the rays of the associated fan.

The following examples illustrate some possible class groups.

i1 : classGroup toricProjectiveSpace 1 1 o1 = ZZ o1 : ZZ-module, free |

i2 : classGroup hirzebruchSurface 7 2 o2 = ZZ o2 : ZZ-module, free |

i3 : classGroup affineSpace 3 o3 = 0 o3 : ZZ-module |

i4 : classGroup normalToricVariety ({{4,-1},{0,1}},{{0,1}}) o4 = cokernel | 4 | 1 o4 : ZZ-module, quotient of ZZ |

i5 : classGroup normalToricVariety ( id_(ZZ^3) | - id_(ZZ^3)) o5 = cokernel | 2 0 | | 0 2 | | 0 0 | | 0 0 | | 0 0 | | 0 0 | | 0 0 | 7 o5 : ZZ-module, quotient of ZZ |

The total coordinate ring of a toric variety is graded by its class group.

i6 : degrees ring toricProjectiveSpace 1 o6 = {{1}, {1}} o6 : List |

i7 : degrees ring hirzebruchSurface 7 o7 = {{1, 0}, {-7, 1}, {1, 0}, {0, 1}} o7 : List |

i8 : degrees ring affineSpace 3 o8 = {{}, {}, {}} o8 : List |

- Working with divisors and their associated groups
- rays(NormalToricVariety) -- get the rays of the associated fan
- weilDivisorGroup(NormalToricVariety) -- make the group of torus-invariant Weil divisors
- ring(NormalToricVariety) -- make the total coordinate ring (a.k.a. Cox ring)
- fromPicToCl(NormalToricVariety) -- get the map from Picard group to class group
- fromWDivToCl(NormalToricVariety) -- get the map from the group of Weil divisors to the class group