Macaulay2 » Documentation
Packages » NormalToricVarieties :: ch(ZZ,CoherentSheaf)
next | previous | forward | backward | up | index | toc

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

- Function: ch
- Usage:
    `ch (i, F)`
- Inputs:
  - i, an integer, that determines a component of the Chern character (optional)
  - F, a coherent sheaf, on a complete simplicial normal toric variety
- Outputs:
  - a ring element, 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)))

## See also

- working with sheaves -- information about coherent sheaves and total coordinate rings (a.k.a. Cox rings)
- chern(CoherentSheaf)
- intersectionRing(NormalToricVariety) -- make the rational Chow ring

## Ways to use this method:

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

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/NormalToricVarieties/ChowDocumentation.m2:446:0.