next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Posets :: resolutionPoset

resolutionPoset -- generates a poset from a resolution

Synopsis

Description

Given a resolution C, a poset can be defined by the non-zero entries of the matrices of each component of the resolution.
i1 : R = QQ[x,y,z];
i2 : C = res ideal(x,y,z)

      1      3      3      1
o2 = R  <-- R  <-- R  <-- R  <-- 0
                                  
     0      1      2      3      4

o2 : ChainComplex
i3 : resolutionPoset C

o3 = Poset{cache => CacheTable{}                                                                                                                                                                                                                }
           GroundSet => {{0, 0}, {1, 0}, {1, 1}, {1, 2}, {2, 0}, {2, 1}, {2, 2}, {3, 0}}
           RelationMatrix => | 1 1 1 1 1 1 1 1 |
                             | 0 1 0 0 1 1 0 1 |
                             | 0 0 1 0 1 0 1 1 |
                             | 0 0 0 1 0 1 1 1 |
                             | 0 0 0 0 1 0 0 1 |
                             | 0 0 0 0 0 1 0 1 |
                             | 0 0 0 0 0 0 1 1 |
                             | 0 0 0 0 0 0 0 1 |
           Relations => {{{0, 0}, {1, 0}}, {{0, 0}, {1, 1}}, {{0, 0}, {1, 2}}, {{1, 0}, {2, 0}}, {{1, 0}, {2, 1}}, {{1, 1}, {2, 0}}, {{1, 1}, {2, 2}}, {{1, 2}, {2, 1}}, {{1, 2}, {2, 2}}, {{2, 0}, {3, 0}}, {{2, 1}, {3, 0}}, {{2, 2}, {3, 0}}}

o3 : Poset
Moreover, the resolution-poset of a MonomialIdeal can be labeled as the lcm of the generators involved at each level. As the lcm needn’t be unique at each step, we simply append it to the base labeling, as above.
i4 : resolutionPoset monomialIdeal(x,y,z)

o4 = Poset{cache => CacheTable{...2...}                                                                                                                                                                                                                                                                                                                              }
           GroundSet => {{0, 0, {0, 0}}, {1, 0, x}, {1, 1, y}, {1, 2, z}, {2, 0, x*y}, {2, 1, x*z}, {2, 2, y*z}, {3, 0, x*y*z}}
           RelationMatrix => | 1 1 1 1 1 1 1 1 |
                             | 0 1 0 0 1 1 0 1 |
                             | 0 0 1 0 1 0 1 1 |
                             | 0 0 0 1 0 1 1 1 |
                             | 0 0 0 0 1 0 0 1 |
                             | 0 0 0 0 0 1 0 1 |
                             | 0 0 0 0 0 0 1 1 |
                             | 0 0 0 0 0 0 0 1 |
           Relations => {{{0, 0, {0, 0}}, {1, 0, x}}, {{0, 0, {0, 0}}, {1, 1, y}}, {{0, 0, {0, 0}}, {1, 2, z}}, {{1, 0, x}, {2, 0, x*y}}, {{1, 0, x}, {2, 1, x*z}}, {{1, 1, y}, {2, 0, x*y}}, {{1, 1, y}, {2, 2, y*z}}, {{1, 2, z}, {2, 1, x*z}}, {{1, 2, z}, {2, 2, y*z}}, {{2, 0, x*y}, {3, 0, x*y*z}}, {{2, 1, x*z}, {3, 0, x*y*z}}, {{2, 2, y*z}, {3, 0, x*y*z}}}

o4 : Poset

Ways to use resolutionPoset :