Macaulay2 » Documentation
Packages » Matroids :: cogeneratorChowRing
next | previous | forward | backward | up | index | toc

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}   {3, 4, 5}   {1, 2, 5}   {0, 5}   {0, 2, 4}   {1, 4}   {2, 3}   {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          -
       {5}     {4}     {3}     {2}     {1}     {0}     {5} {3, 4, 5}  
     ------------------------------------------------------------------------
                                          2                            
     2t   t          - 2t   t          + t          - 2t   t          -
       {4} {3, 4, 5}     {3} {3, 4, 5}    {3, 4, 5}     {5} {1, 2, 5}  
     ------------------------------------------------------------------------
                                          2                         
     2t   t          - 2t   t          + t          - 2t   t       -
       {2} {1, 2, 5}     {1} {1, 2, 5}    {1, 2, 5}     {5} {0, 5}  
     ------------------------------------------------------------------------
                     2                                                     
     2t   t       + t       - 2t   t          - 2t   t          - 2t   t   
       {0} {0, 5}    {0, 5}     {4} {0, 2, 4}     {2} {0, 2, 4}     {0} {0,
     ------------------------------------------------------------------------
              2                                          2                 
           + t          - 2t   t       - 2t   t       + t       - 2t   t   
     2, 4}    {0, 2, 4}     {4} {1, 4}     {1} {1, 4}    {1, 4}     {3} {2,
     ------------------------------------------------------------------------
                          2                                           
        - 2t   t       + t       - 2t   t          - 2t   t          -
     3}     {2} {2, 3}    {2, 3}     {3} {0, 1, 3}     {1} {0, 1, 3}  
     ------------------------------------------------------------------------
                        2
     2t   t          + t
       {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}   {3, 4, 5}   {1, 2, 5}   {0, 5}   {0, 2, 4}   {1, 4}   {2, 3}   {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.