Macaulay2 » Documentation
Packages » NormalToricVarieties :: abstractSheaf(NormalToricVariety,AbstractVariety,CoherentSheaf)
next | previous | forward | backward | up | index | toc

abstractSheaf(NormalToricVariety,AbstractVariety,CoherentSheaf) -- make the corresponding abstract sheaf

Synopsis

Description

This method converts a CoherentSheaf over a NormalToricVariety into an AbstractSheaf over the corresponding AbstractVariety, as defined in the Schubert2 package.

Since many routines from the Schubert2 package have been overloaded so that they apply directly to coherent sheaves on normal toric varieties, this method is primarily of interest to developers.

We illustrate this methods with some classic coherent sheaves on projective 3-space.

i1 : PP3 = toricProjectiveSpace 3;
i2 : F = OO_PP3 (2) ++ OO_PP3 (5);
i3 : aF = abstractSheaf (PP3, F);
i4 : chern aF

                  2
o4 = 1 + 7t  + 10t
           3      3

                     QQ[][t ..t ]
                           0   3
o4 : -------------------------------------------
     (t t t t , - t  + t , - t  + t , - t  + t )
       0 1 2 3     0    1     0    2     0    3
i5 : assert (chern aF === chern (OO_PP3 (2)) * chern (OO_PP3 (5)))
i6 : assert (chern aF == chern F)
i7 : Omega = cotangentSheaf PP3;
i8 : aOmega = abstractSheaf (PP3, Omega);
i9 : chern aOmega

                 2     3
o9 = 1 - 4t  + 6t  - 4t
           3     3     3

                     QQ[][t ..t ]
                           0   3
o9 : -------------------------------------------
     (t t t t , - t  + t , - t  + t , - t  + t )
       0 1 2 3     0    1     0    2     0    3
i10 : assert (aOmega === cotangentBundle abstractVariety PP3)

We also provide a similar collection of examples on a larger variety.

i11 : X = smoothFanoToricVariety (5, 100);
i12 : rank picardGroup X

o12 = 6
i13 : nefGenerators X

o13 = | 0 1 1  0 0 0 |
      | 1 1 1  0 0 0 |
      | 0 0 -1 0 0 0 |
      | 0 0 0  1 0 0 |
      | 0 0 0  0 0 1 |
      | 0 0 0  0 1 2 |

               6       6
o13 : Matrix ZZ  <-- ZZ
i14 : G = OO_X (1,1,-1,1,1,2) ++ OO_X (1,1,-1,0,0,1);
i15 : aG = abstractSheaf (X, G);
i16 : A = intersectionRing variety aG;
i17 : chern aG

                                                                          
o17 = 1 + (2t  + 2t  - t  + 2t  + 5t  ) + (- t t  - t t  + 2t t  + 2t t  +
             3     5    8     9     10        3 8    5 8     3 9     5 9  
      -----------------------------------------------------------------------
                                           2
      5t t   + 5t t   - t t   + 2t t   + 4t  )
        3 10     5 10    8 10     9 10     10

o17 : A
i18 : assert (chern aG === chern (OO_X (1,1,-1,1,1,2)) * chern (OO_X (1,1,-1,0,0,1)))
i19 : assert (chern aG == chern G)
i20 : Omega = cotangentSheaf X;
i21 : aOmega = abstractSheaf (X, Omega);
i22 : chern aOmega

                                                       2                  
o22 = 1 + (- 2t  - 3t  - 2t  + t  - 2t  - 5t  ) + (- 5t  - 2t t  - 3t t  -
               3     5     6    8     9     10         6     3 8     5 8  
      -----------------------------------------------------------------------
                                                                            
      2t t  + 4t t  + 6t t  + 4t t  + 10t t   + 15t t   + 10t t   - 5t t   +
        6 8     3 9     5 9     6 9      3 10      5 10      6 10     8 10  
      -----------------------------------------------------------------------
                  2          2        2        2                             
      7t t   + 11t  ) + (- 5t t  + 10t t  + 25t t   + 10t t t   + 15t t t   +
        9 10      10         6 8      6 9      6 10      3 8 10      5 8 10  
      -----------------------------------------------------------------------
                                                           2         2   
      10t t t   - 14t t t   - 21t t t   - 14t t t   - 22t t   - 33t t   -
         6 8 10      3 9 10      5 9 10      6 9 10      3 10      5 10  
      -----------------------------------------------------------------------
           2        2         2           2           2 2           2   
      22t t   - 8t t  ) + (25t t t   - 35t t t   - 55t t   + 16t t t   +
         6 10     9 10        6 8 10      6 9 10      6 10      3 9 10  
      -----------------------------------------------------------------------
             2           2        2   2
      24t t t   + 16t t t  ) + 40t t t
         5 9 10      6 9 10       6 9 10

o22 : A
i23 : assert (aOmega === cotangentBundle abstractVariety X)

See also

Ways to use this method: