# fromPicToCl(NormalToricVariety) -- get the map from Picard group to class group

## Synopsis

• Function: fromPicToCl
• Usage:
fromPicToCl X
• Inputs:
• X, ,
• Outputs:
• , representing the inclusion map from the Picard group to the class group

## Description

The Picard group of a normal toric variety is a subgroup of the class group. This function returns a matrix representing this map with respect to the chosen bases.

On a smooth normal toric variety, the Picard group is isomorphic to the class group, so the inclusion map is the identity.

 i1 : PP3 = toricProjectiveSpace 3; i2 : assert (isSmooth PP3 and isProjective PP3) i3 : fromPicToCl PP3 o3 = | 1 | 1 1 o3 : Matrix ZZ <--- ZZ i4 : assert (fromPicToCl PP3 === id_(classGroup PP3))
 i5 : X = smoothFanoToricVariety (4,90); i6 : assert (isSmooth X and isProjective X and isFano X) i7 : fromPicToCl X o7 = | 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 o7 : Matrix ZZ <--- ZZ i8 : assert (fromPicToCl X === id_(classGroup X))
 i9 : U = normalToricVariety ({{4,-1},{0,1}},{{0},{1}}); i10 : assert (isSmooth U and not isComplete U and # max U =!= 1) i11 : fromPicToCl U o11 = | 1 | o11 : Matrix i12 : assert (fromPicToCl U === id_(classGroup U))

For weighted projective space, the inclusion corresponds to $l \ZZ$ in $\ZZ$ where $l = lcm(q_0, q_1, \dots, q_d {})$.

 i13 : P123 = weightedProjectiveSpace {1,2,3}; i14 : assert (isSimplicial P123 and isProjective P123) i15 : fromPicToCl P123 o15 = | 6 | 1 1 o15 : Matrix ZZ <--- ZZ i16 : assert (fromPicToCl P123 === lcm (1,2,3) * id_(classGroup P123))
 i17 : P12234 = weightedProjectiveSpace {1,2,2,3,4}; i18 : assert (isSimplicial P12234 and isProjective P12234) i19 : fromPicToCl P12234 o19 = | 12 | 1 1 o19 : Matrix ZZ <--- ZZ i20 : assert (fromPicToCl P12234 === lcm (1,2,2,3,4) * id_(classGroup P12234))

The following examples illustrate some other possibilities.

 i21 : Q = normalToricVariety ({{1,0,0},{0,1,0},{0,0,1},{1,1,-1}},{{0,1,2,3}}); i22 : assert (not isSimplicial Q and not isComplete Q and # max Q === 1) i23 : fromPicToCl Q o23 = 0 1 o23 : Matrix ZZ <--- 0 i24 : assert (fromPicToCl Q == 0)
 i25 : Y = normalToricVariety (id_(ZZ^3) | -id_(ZZ^3)); i26 : assert (not isSimplicial Y and isProjective Y) i27 : fromPicToCl Y o27 = | 0 | | 0 | | 0 | | 2 | | 2 | | 2 | | 2 | o27 : Matrix

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