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

Codimension 4 cyclic polytopes -- Constructing minimal resolutions for codimension 4 cyclic polytopes

The following code prints the combinatorial unprojection structure of a codimension 4 cyclic polytope.

Δ(0,4) -> Δ(2,6) -> Δ(4,8) -> Δ(6,10)

i1 : R=QQ[x_1..x_10];
i2 : cc=cycRes(6,R,verbose=>1);

delta(2,{z, x_2, x_3, x_4, x_5})   +   delta(0,{z, x_2, x_3, x_4})   ->   delta(2,{z, x_2, x_3, x_4, x_5, x_6})


delta(4,{z, x_2, x_3, x_4, x_5, x_6, x_7})   +   delta(2,{z, x_2, x_3, x_4, x_5, x_6})   ->   delta(4,{z, x_2, x_3, x_4, x_5, x_6, x_7, x_8})


delta(6,{x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9})   +   delta(4,{z, x_2, x_3, x_4, x_5, x_6, x_7, x_8})   ->   delta(6,{x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10})
i3 : betti cc

            0  1  2  3 4
o3 = total: 1 25 48 25 1
         0: 1  .  .  . .
         1: .  .  .  . .
         2: .  .  .  . .
         3: . 25 48 25 .
         4: .  .  .  . .
         5: .  .  .  . .
         6: .  .  .  . 1

o3 : BettiTally

We compute the differentials:

i4 : R=QQ[x_1..x_4];
i5 : cc=cycRes(0,R);
i6 : print cc.dd_1
| x_1 x_3 x_4 x_2 |
i7 : print cc.dd_2
{1} | x_3  x_4  x_2  0    0    0    |
{1} | -x_1 0    0    0    x_2  -x_4 |
{1} | 0    -x_1 0    -x_2 0    x_3  |
{1} | 0    0    -x_1 x_4  -x_3 0    |

i8 : R=QQ[x_1..x_6];
i9 : cc=cycRes(2,R);
i10 : print cc.dd_1
| x_2x_4 x_3x_5 x_1x_4 x_2x_5 x_1x_3 -x_1x_5 x_3x_6 x_4x_6 x_2x_6 |
i11 : print cc.dd_2
{2} | 0    x_1  0    0    -x_5 0    0    0    0    0    0    x_6  0    0    0    0    |
{2} | -x_1 0    x_2  0    0    -x_1 0    0    0    0    0    0    x_6  0    0    0    |
{2} | 0    -x_2 0    x_3  0    0    -x_5 0    0    0    0    0    0    x_6  0    0    |
{2} | 0    0    -x_3 0    x_4  0    0    -x_1 0    0    0    0    0    0    x_6  0    |
{2} | x_5  0    0    -x_4 0    0    0    0    0    0    0    0    0    0    0    x_6  |
{2} | 0    0    0    0    0    -x_3 -x_4 -x_2 0    0    0    0    0    0    0    0    |
{2} | 0    0    0    0    0    0    0    0    0    -x_2 x_4  0    -x_5 0    0    -x_1 |
{2} | 0    0    0    0    0    0    0    0    x_2  0    -x_3 0    0    -x_1 0    0    |
{2} | 0    0    0    0    0    0    0    0    -x_4 x_3  0    -x_4 0    0    -x_5 0    |

i12 : R=QQ[x_1..x_8];
i13 : cc=cycRes(4,R);
i14 : print cc.dd_1
| x_2x_4x_6 x_3x_5x_7 x_1x_4x_6 x_2x_5x_7 x_1x_3x_6 x_2x_4x_7 x_1x_3x_5 x_2x_4x_8 x_3x_5x_8 -x_1x_4x_7 x_2x_5x_8 -x_1x_3x_7 x_1x_5x_7 x_3x_6x_8 x_4x_6x_8 x_2x_6x_8 |
i15 : print cc.dd_2
{3} | 0    x_1  0    0    0    0    -x_7 0    0   0    0    0    0    0   0    0    0    0    0    0    0    0    0    x_8  0    0    0    0    0    0    |
{3} | -x_1 0    x_2  0    0    0    0    -x_1 0   0    0    0    -x_1 0   0    0    0    0    0    0    0    0    0    0    x_8  0    0    0    0    0    |
{3} | 0    -x_2 0    x_3  0    0    0    0    0   0    0    0    0    0   0    0    0    0    0    0    -x_7 0    0    0    0    x_8  0    0    0    0    |
{3} | 0    0    -x_3 0    x_4  0    0    0    0   0    0    0    0    0   -x_1 0    0    0    0    0    0    0    0    0    0    0    x_8  0    0    0    |
{3} | 0    0    0    -x_4 0    x_5  0    0    0   0    0    0    0    0   0    0    0    0    0    0    0    0    -x_7 0    0    0    0    x_8  0    0    |
{3} | 0    0    0    0    -x_5 0    x_6  0    x_1 0    0    0    0    0   0    0    0    0    0    0    0    0    0    0    0    0    0    0    x_8  0    |
{3} | x_7  0    0    0    0    -x_6 0    0    0   0    0    0    0    0   0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    x_8  |
{3} | 0    0    0    0    0    0    0    0    0   0    0    x_5  0    0   0    0    0    0    -x_6 0    0    0    0    -x_6 0    0    0    0    -x_7 0    |
{3} | 0    0    0    0    0    0    0    0    0   -x_2 0    0    0    0   0    0    0    0    0    -x_6 0    0    0    0    -x_7 0    0    0    0    -x_1 |
{3} | 0    0    0    0    0    0    0    0    x_2 0    -x_3 0    0    x_5 0    0    0    0    0    0    -x_6 0    0    0    0    0    0    0    0    0    |
{3} | 0    0    0    0    0    0    0    0    0   x_3  0    -x_4 0    0   0    0    0    0    0    0    0    -x_6 0    0    0    0    -x_7 0    0    0    |
{3} | 0    0    0    0    0    0    0    -x_5 0   0    x_4  0    0    0   0    0    0    0    0    0    0    0    -x_6 0    0    0    0    0    0    0    |
{3} | 0    0    0    0    0    0    0    0    0   0    0    0    x_3  x_4 x_2  0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    |
{3} | 0    0    0    0    0    0    0    0    0   0    0    0    0    0   0    0    x_2  -x_4 0    x_5  0    0    0    0    0    0    0    -x_1 0    0    |
{3} | 0    0    0    0    0    0    0    0    0   0    0    0    0    0   0    -x_2 0    x_3  0    0    0    0    0    0    0    -x_1 0    0    0    0    |
{3} | 0    0    0    0    0    0    0    0    0   0    0    0    0    0   0    x_4  -x_3 0    x_4  0    0    x_5  0    0    0    0    0    0    0    0    |

See also

  • cycRes -- Compute the minimal cyclic polytope resolutions via unprojection