# rays(NormalToricVariety) -- get the rays of the associated fan

## Synopsis

• Function: rays
• Usage:
rays X
• Inputs:
• X, ,
• Outputs:
• a list, of lists of integers; each entry corresponds to a minimal nonzero lattice point on the ray in the underlying fan

## Description

A normal toric variety corresponds to a strongly convex rational polyhedral fan in affine space. In this package, the fan associated to a normal $d$-dimensional toric variety lies in the rational vector space $\QQ^d$ with underlying lattice $N = {\ZZ}^d$. As a result, each ray in the fan is determined by the minimal nonzero lattice point it contains. Each such lattice point is given as a list of $d$ integers.

The examples show the rays for the projective plane, projective $3$-space, a Hirzebruch surface, and a weighted projective space. There is a canonical bijection between the rays and torus-invariant Weil divisor on the toric variety.

 i1 : PP2 = toricProjectiveSpace 2; i2 : rays PP2 o2 = {{-1, -1}, {1, 0}, {0, 1}} o2 : List i3 : dim PP2 o3 = 2 i4 : weilDivisorGroup PP2 3 o4 = ZZ o4 : ZZ-module, free i5 : PP2_0 o5 = PP2 0 o5 : ToricDivisor on PP2
 i6 : PP3 = toricProjectiveSpace 3; i7 : rays PP3 o7 = {{-1, -1, -1}, {1, 0, 0}, {0, 1, 0}, {0, 0, 1}} o7 : List i8 : dim PP3 o8 = 3 i9 : weilDivisorGroup PP3 4 o9 = ZZ o9 : ZZ-module, free
 i10 : FF7 = hirzebruchSurface 7; i11 : rays FF7 o11 = {{1, 0}, {0, 1}, {-1, 7}, {0, -1}} o11 : List i12 : dim FF7 o12 = 2 i13 : weilDivisorGroup FF7 4 o13 = ZZ o13 : ZZ-module, free
 i14 : X = weightedProjectiveSpace {1,2,3}; i15 : rays X o15 = {{-2, -3}, {1, 0}, {0, 1}} o15 : List i16 : weilDivisorGroup X 3 o16 = ZZ o16 : ZZ-module, free

When the normal toric variety is nondegerenate, the number of rays equals the number of variables in the total coordinate ring.

 i17 : #rays X == numgens ring X o17 = true

In this package, an ordered list of the minimal nonzero lattice points on the rays in the fan is part of the defining data of a toric variety, so this method does no computation.