# ch(ZZ,CoherentSheaf) -- compute the Chern character of a coherent sheaf

## Synopsis

• Function: ch
• Usage:
ch (i, F)
• Inputs:
• i, an integer, that determines a component of the Chern character (optional)
• F, , on a complete simplicial normal toric variety
• Outputs:
• , in the intersection ring of the underlying variety

## Description

Given a locally-free sheaf $E$ of rank $r$ on a smooth variety such that its Chern class formally factor as chern $E = \prod_{j=1}^r (1 + \alpha_j)$, we define its Chern character to be ch $E := \sum_{j=1}^r exp(\alpha_j)$. The $i$-th graded piece of this power series is symmetric in the $\alpha_j$ and, hence, expressible as a polynomial in the elementary symmetric polynomials in the $\alpha_j$; we set ch $(i, E)$ to be this polynomial. Because the Chern character is additive on exact sequences of vector bundles and every coherent sheaf can be resolved by locally-free sheaves, we can extend this definition to all coherent sheaves.

The first few components of the Chern character are easily related to other invariants.

 i1 : X0 = kleinschmidt(4, {1,2,3}); i2 : E0 = cotangentSheaf X0 o2 = cokernel {2, 0} | x_2x_3 2x_1x_3 0 0 3x_0x_3 x_1x_2 0 0 0 0 2x_0x_2 0 0 0 0 x_0x_1 0 0 0 0 0 0 0 0 | {-4, 2} | x_4 0 0 x_1 0 0 0 0 0 2x_0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {-4, 2} | -x_5 0 0 0 0 0 0 x_1 0 0 0 0 2x_0 0 0 0 0 0 0 0 0 0 0 0 | {-3, 2} | 0 x_4 x_2 0 0 0 0 0 0 0 0 0 0 0 x_0 0 0 0 0 0 0 0 0 0 | {-3, 2} | 0 -x_5 0 0 0 0 x_2 0 0 0 0 0 0 0 0 0 0 x_0 0 0 0 0 0 0 | {-2, 2} | 0 0 -2x_3 -x_3 0 x_4 0 0 0 0 0 0 0 0 0 0 0 0 0 x_0 0 0 0 0 | {-2, 2} | 0 0 0 0 x_4 0 0 0 2x_2 0 0 0 0 x_1 0 0 0 0 0 0 0 0 0 0 | {-6, 3} | 0 0 -x_5 -x_5 0 0 -x_4 -x_4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_0 0 | {-2, 2} | 0 0 0 0 -x_5 0 0 0 0 0 0 2x_2 0 0 0 0 x_1 0 0 0 0 0 0 0 | {-2, 2} | 0 0 0 0 0 -x_5 -2x_3 -x_3 0 0 0 0 0 0 0 0 0 0 0 0 0 x_0 0 0 | {-1, 2} | 0 0 0 0 0 0 0 0 -3x_3 -x_3 x_4 0 0 0 0 0 0 0 x_1 0 0 0 0 0 | {-5, 3} | 0 0 0 0 0 0 0 0 -x_5 -x_5 0 -x_4 -x_4 0 0 0 0 0 0 0 0 0 0 x_1 | {-1, 2} | 0 0 0 0 0 0 0 0 0 0 -x_5 -3x_3 -x_3 0 0 0 0 0 0 0 x_1 0 0 0 | {0, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -3x_3 -2x_3 x_4 0 0 -2x_2 -x_2 0 0 0 0 | {-4, 3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -x_5 -x_5 0 -x_4 -x_4 0 0 0 0 -x_2 -2x_2 | {0, 2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -x_5 -3x_3 -2x_3 0 0 -2x_2 -x_2 0 0 | {-3, 3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -x_5 -x_5 -x_4 -x_4 2x_3 3x_3 | 1 2 2 2 1 2 1 1 1 1 1 1 1 o2 : coherent sheaf on X0, quotient of OO (-2, 0) ++ OO (4, -2) ++ OO (3, -2) ++ OO (2, -2) ++ OO (6, -3) ++ OO (2, -2) ++ OO (1, -2) ++ OO (5, -3) ++ OO (1, -2) ++ OO (0, -2) ++ OO (4, -3) ++ OO (0, -2) ++ OO (3, -3) X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 X0 i3 : A0 = intersectionRing X0; i4 : ch E0 2 2 3 2 o4 = 4 + (- 4t - 8t ) + (2t + 6t t ) + (- -t - 3t t ) 3 5 3 3 5 3 3 3 5 o4 : A0 i5 : assert (ch (0, E0) == rank E0 ) i6 : assert (ch (1, E0) === chern (1, E0)) i7 : assert (ch (2, E0) === (1/2)*((chern (1, E0))^2 - 2 * chern (2, E0)))

On a complete smooth normal toric variety, the Chern class of the cotangent bundle factors as a product over the irreducible torus-invariant divisors, so we can express the Chern character as a sum.

 i8 : X1 = smoothFanoToricVariety (4, 100); i9 : E1 = dual cotangentSheaf X1 o9 = image {0, -2, 0, 0, 0} | 0 0 0 -x_3 x_5 0 | {0, -2, 0, 0, 0} | 0 0 0 -x_4 0 x_5 | {0, -2, 0, 0, 0} | 0 0 0 0 -x_4 x_3 | {-2, 0, 0, 0, -2} | -x_1x_6 x_2x_7 0 0 0 0 | {0, 1, -2, 0, 0} | x_0x_5x_8 0 x_2x_5x_7 2x_0x_2x_7x_8 0 0 | {0, 1, 0, -2, 0} | 0 x_0x_5x_8 x_1x_5x_6 2x_0x_1x_6x_8 0 0 | {0, 1, -2, 0, 0} | x_0x_3x_8 0 x_2x_3x_7 0 2x_0x_2x_7x_8 0 | {0, 1, 0, -2, 0} | 0 x_0x_3x_8 x_1x_3x_6 0 2x_0x_1x_6x_8 0 | {0, 1, -2, 0, 0} | x_0x_4x_8 0 x_2x_4x_7 0 0 2x_0x_2x_7x_8 | {0, 1, 0, -2, 0} | 0 x_0x_4x_8 x_1x_4x_6 0 0 2x_0x_1x_6x_8 | 3 1 1 1 1 1 1 1 o9 : coherent sheaf on X1, subsheaf of OO (0, 2, 0, 0, 0) ++ OO (2, 0, 0, 0, 2) ++ OO (0, -1, 2, 0, 0) ++ OO (0, -1, 0, 2, 0) ++ OO (0, -1, 2, 0, 0) ++ OO (0, -1, 0, 2, 0) ++ OO (0, -1, 2, 0, 0) ++ OO (0, -1, 0, 2, 0) X1 X1 X1 X1 X1 X1 X1 X1 i10 : A1 = intersectionRing X1; i11 : f1 = ch E1 7 2 3 2 1 2 o11 = 4 + (t + t + 2t + t + 2t ) + (2t t + -t + -t + -t - t t ) + (- 2 5 6 7 8 2 5 2 5 2 6 2 7 7 8 ----------------------------------------------------------------------- 2 1 3 1 3 1 2 1 3 5 4 2t t - -t + -t + -t t + -t ) + --t 2 5 3 6 6 7 2 7 8 3 8 36 8 o11 : A1 i12 : n = # rays X1 o12 = 9 i13 : assert (f1 === (sum(n, i -> ch OO (X1_i)) - (n - dim X1)))