Macaulay2 » Documentation
Packages » Cremona :: ChernSchwartzMacPherson
next | previous | forward | backward | up | index | toc

# ChernSchwartzMacPherson -- Chern-Schwartz-MacPherson class of a projective scheme

- Usage:
    `ChernSchwartzMacPherson I`
- Inputs:
  - I, an ideal, a homogeneous ideal defining a closed subscheme $X\subset\mathbb{P}^n$
- Optional inputs:
  - BlowUpStrategy => ..., default value "Eliminate",
  - Certify => ..., default value false, whether to ensure correctness of output
  - Verbose => ..., default value true,
- Outputs:
  - a ring element, the push-forward to the Chow ring of $\mathbb{P}^n$ of the Chern-Schwartz-MacPherson class $c_{SM}(X)$ of $X$. In particular, the coefficient of $H^n$ gives the Euler characteristic of the support of $X$, where $H$ denotes the hyperplane class.

## Description

This is an example of application of the method projectiveDegrees, due to results shown in Computing characteristic classes of projective schemes, by P. Aluffi. See also the corresponding methods in the packages CSM-A, by P. Aluffi, and CharacteristicClasses, by M. Helmer and C. Jost.

In the example below, we compute the push-forward to the Chow ring of $\mathbb{P}^4$ of the Chern-Schwartz-MacPherson class of the cone over the twisted cubic curve, using both a probabilistic and a non-probabilistic approach.

    i1 : GF(5^7)[x_0..x_4]

    o1 = GF 78125[x ..x ]
                   0   4

    o1 : PolynomialRing

    i2 : C = minors(2,matrix{{x_0,x_1,x_2},{x_1,x_2,x_3}})

                   2                           2
    o2 = ideal (- x  + x x , - x x  + x x , - x  + x x )
                   1    0 2     1 2    0 3     2    1 3

    o2 : Ideal of GF 78125[x ..x ]
                            0   4

    i3 : time ChernSchwartzMacPherson C
     -- used 1.79749s (cpu); 1.12711s (thread); 0s (gc)

           4     3     2
    o3 = 3H  + 5H  + 3H

         ZZ[H]
    o3 : -----
            5
           H

    i4 : time ChernSchwartzMacPherson(C,Certify=>true)
    Certify: output certified!
     -- used 1.19704s (cpu); 0.899408s (thread); 0s (gc)

           4     3     2
    o4 = 3H  + 5H  + 3H

         ZZ[H]
    o4 : -----
            5
           H

    i5 : oo == ooo

    o5 = true

In the case when the input ideal I defines a smooth projective variety $X$, the push-forward of $c_{SM}(X)$ can be computed much more efficiently using SegreClass. Indeed, in this case, $c_{SM}(X)$ coincides with the (total) Chern class of the tangent bundle of $X$ and can be obtained as follows (in general the method below gives the push-forward of the so-called Chern-Fulton class).

    i6 : ChernClass = method(Options=>{Certify=>false});

    i7 : ChernClass (Ideal) := o -> (I) -> (
            s := SegreClass(I,Certify=>o.Certify);
            s*(1+first gens ring s)^(numgens ring I));

    i8 : -- example: Chern class of G(1,4)
         G = Grassmannian(1,4,CoefficientRing=>ZZ/190181)

    o8 = ideal (p   p    - p   p    + p   p   , p   p    - p   p    + p   p   ,
                 2,3 1,4    1,3 2,4    1,2 3,4   2,3 0,4    0,3 2,4    0,2 3,4
         ------------------------------------------------------------------------
         p   p    - p   p    + p   p   , p   p    - p   p    + p   p   , p   p
          1,3 0,4    0,3 1,4    0,1 3,4   1,2 0,4    0,2 1,4    0,1 2,4   1,2 0,3
         ------------------------------------------------------------------------
         - p   p    + p   p   )
            0,2 1,3    0,1 2,3

                    ZZ
    o8 : Ideal of ------[p   ..p   , p   , p   , p   , p   , p   , p   , p   , p   ]
                  190181  0,1   0,2   1,2   0,3   1,3   2,3   0,4   1,4   2,4   3,4

    i9 : time ChernClass G
     -- used 0.269106s (cpu); 0.174033s (thread); 0s (gc)

            9      8      7      6      5      4     3
    o9 = 10H  + 30H  + 60H  + 75H  + 57H  + 25H  + 5H

         ZZ[H]
    o9 : -----
           10
          H

    i10 : time ChernClass(G,Certify=>true)
    Certify: output certified!
     -- used 0.0878422s (cpu); 0.0364589s (thread); 0s (gc)

             9      8      7      6      5      4     3
    o10 = 10H  + 30H  + 60H  + 75H  + 57H  + 25H  + 5H

          ZZ[H]
    o10 : -----
            10
           H

## See also

- SegreClass -- Segre class of a closed subscheme of a projective variety
- EulerCharacteristic -- topological Euler characteristic of a (smooth) projective variety
- euler(ProjectiveVariety) -- topological Euler characteristic of a (smooth) projective variety

## Ways to use ChernSchwartzMacPherson:

- `ChernSchwartzMacPherson(Ideal)`

## For the programmer

The object ChernSchwartzMacPherson is a method function with options.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Cremona/documentation.m2:326:0.