next | previous | forward | backward | up | top | index | toc | Macaulay2 website
Matroids :: cogeneratorChowRing

cogeneratorChowRing -- cogenerator of the Chow ring of a matroid

Synopsis

Description

If R is an Artinian Gorenstein k-algebra, then the Macaulay inverse system of R is generated by a single polynomial (in dual/differential variables), called the cogenerator (or dual socle generator) of R. By a result of Adiprasito, Katz, and Huh, the Chow ring of a matroid M is always Gorenstein. This function computes the cogenerator of the Chow ring of M, which is also called the volume polynomial of M. Note that this is a very fine invariant of M - indeed, this single polynomial can recover the entire Chow ring of M, and thus most of the lattice of flats of M.

i1 : M = matroid completeGraph 4

o1 = a matroid of rank 3 on 6 elements

o1 : Matroid
i2 : I = idealChowRing M;

o2 : Ideal of QQ[x   , x   , x   , x   , x   , x   , x      , x      , x      , x         , x         , x         , x         ]
                  {5}   {4}   {3}   {2}   {1}   {0}   {0, 5}   {1, 4}   {2, 3}   {3, 4, 5}   {1, 2, 5}   {0, 2, 4}   {0, 1, 3}
i3 : betti I

            0  1
o3 = total: 1 65
         0: 1  5
         1: . 60

o3 : BettiTally
i4 : F = cogeneratorChowRing M

       2       2       2       2       2       2                             
o4 = 2t    + 2t    + 2t    + 2t    + 2t    + 2t    - 2t   t       - 2t   t   
       {5}     {4}     {3}     {2}     {1}     {0}     {5} {0, 5}     {0} {0,
     ------------------------------------------------------------------------
           2                                       2                      
        + t       - 2t   t       - 2t   t       + t       - 2t   t       -
     5}    {0, 5}     {4} {1, 4}     {1} {1, 4}    {1, 4}     {3} {2, 3}  
     ------------------------------------------------------------------------
                     2                                                     
     2t   t       + t       - 2t   t          - 2t   t          - 2t   t   
       {2} {2, 3}    {2, 3}     {5} {3, 4, 5}     {4} {3, 4, 5}     {3} {3,
     ------------------------------------------------------------------------
              2                                                              
           + t          - 2t   t          - 2t   t          - 2t   t         
     4, 5}    {3, 4, 5}     {5} {1, 2, 5}     {2} {1, 2, 5}     {1} {1, 2, 5}
     ------------------------------------------------------------------------
        2                                                                
     + t          - 2t   t          - 2t   t          - 2t   t          +
        {1, 2, 5}     {4} {0, 2, 4}     {2} {0, 2, 4}     {0} {0, 2, 4}  
     ------------------------------------------------------------------------
      2                                                                  2
     t          - 2t   t          - 2t   t          - 2t   t          + t
      {0, 2, 4}     {3} {0, 1, 3}     {1} {0, 1, 3}     {0} {0, 1, 3}    {0,
     ------------------------------------------------------------------------
     1, 3}

o4 : QQ[t   , t   , t   , t   , t   , t   , t      , t      , t      , t         , t         , t         , t         ]
         {5}   {4}   {3}   {2}   {1}   {0}   {0, 5}   {1, 4}   {2, 3}   {3, 4, 5}   {1, 2, 5}   {0, 2, 4}   {0, 1, 3}
i5 : T = ring F

o5 = T

o5 : PolynomialRing
i6 : diff(gens((map(T, ring I, gens T)) I), F)

o6 = 0

             1       65
o6 : Matrix T  <--- T

See also

Ways to use cogeneratorChowRing :

For the programmer

The object cogeneratorChowRing is a method function.