In the following example we construct the minimal resolution of the Stanley-Reisner ring of the cyclic polytope $\Delta(4,8)$ of embedding codimension 4 (as a subcomplex of the simplex on 8 vertices) from those of the cyclic polytopes $\Delta(2,6)$ and $\Delta(4,7)$ (the last one being Pfaffian).
This process can be iterated to give a recursive construction of the resolutions of all cyclic polytopes, for details see
J. Boehm, S. Papadakis: On the structure of Stanley-Reisner rings associated to cyclic polytopes, http://arxiv.org/abs/0912.2152, to appear in Osaka J. Math.
i1 : K=QQ; |
i2 : C26=delta(2,K[z,x_2..x_6]) o2 = | x_5x_6 zx_6 x_4x_5 x_3x_4 x_2x_3 zx_2 | o2 : SimplicialComplex |
i3 : R=K[z,x_1..x_7] o3 = R o3 : PolynomialRing |
i4 : J=sub(ideal C26,R) o4 = ideal (z*x , z*x , x x , z*x , x x , x x , x x , x x , x x ) 3 4 2 4 5 2 5 3 5 2 6 3 6 4 6 o4 : Ideal of R |
i5 : c26=res J; |
i6 : betti c26 0 1 2 3 4 o6 = total: 1 9 16 9 1 0: 1 . . . . 1: . 9 16 9 . 2: . . . . 1 o6 : BettiTally |
i7 : C47=delta(4,K[x_1..x_7]) o7 = | x_4x_5x_6x_7 x_1x_5x_6x_7 x_3x_4x_6x_7 x_2x_3x_6x_7 x_1x_2x_6x_7 x_1x_4x_5x_7 x_1x_3x_4x_7 x_1x_2x_3x_7 x_3x_4x_5x_6 x_2x_3x_5x_6 x_1x_2x_5x_6 x_2x_3x_4x_5 x_1x_2x_4x_5 x_1x_2x_3x_4 | o7 : SimplicialComplex |
i8 : I=sub(ideal C47,R) o8 = ideal (x x x , x x x , x x x , x x x , x x x , x x x , x x x ) 1 3 5 1 3 6 1 4 6 2 4 6 2 4 7 2 5 7 3 5 7 o8 : Ideal of R |
i9 : c47=res I; |
i10 : betti c47 0 1 2 3 o10 = total: 1 7 7 1 0: 1 . . . 1: . . . . 2: . 7 7 . 3: . . . . 4: . . . 1 o10 : BettiTally |
i11 : cc=kustinMillerComplex(c47,c26,K[x_8]); |
i12 : betti cc 0 1 2 3 4 o12 = total: 1 16 30 16 1 0: 1 . . . . 1: . . . . . 2: . 16 30 16 . 3: . . . . . 4: . . . . 1 o12 : BettiTally |
We compare with the combinatorics, that is, check that the Kustin-Miller complex at the special fiber z=0 indeed resolves the Stanley-Reisner ring of $\Delta(4,8)$.
i13 : R'=K[x_1..x_8]; |
i14 : C48=delta(4,R') o14 = | x_5x_6x_7x_8 x_1x_6x_7x_8 x_4x_5x_7x_8 x_3x_4x_7x_8 x_2x_3x_7x_8 x_1x_2x_7x_8 x_1x_5x_6x_8 x_1x_4x_5x_8 x_1x_3x_4x_8 x_1x_2x_3x_8 x_4x_5x_6x_7 x_3x_4x_6x_7 x_2x_3x_6x_7 x_1x_2x_6x_7 x_3x_4x_5x_6 x_2x_3x_5x_6 x_1x_2x_5x_6 x_2x_3x_4x_5 x_1x_2x_4x_5 x_1x_2x_3x_4 | o14 : SimplicialComplex |
i15 : I48=ideal C48 o15 = ideal (x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x , 1 3 5 1 3 6 1 4 6 2 4 6 1 3 7 1 4 7 2 4 7 1 5 7 2 5 7 3 5 7 2 4 8 2 5 8 3 5 8 2 6 8 --------------------------------------------------------------------------------------------------------------------------- x x x , x x x ) 3 6 8 4 6 8 o15 : Ideal of R' |
i16 : betti res I48 0 1 2 3 4 o16 = total: 1 16 30 16 1 0: 1 . . . . 1: . . . . . 2: . 16 30 16 . 3: . . . . . 4: . . . . 1 o16 : BettiTally |
i17 : I48==sub(ideal cc.dd_1,R') o17 = true |
We finish the example by printing the differentials of the Kustin-Miller complex:
i18 : print cc.dd_1 | x_1x_3x_5 x_1x_3x_6 x_1x_4x_6 x_2x_4x_6 x_2x_4x_7 x_2x_5x_7 x_3x_5x_7 x_8zx_3-x_1x_3x_7 x_8zx_4-x_1x_4x_7 x_8x_2x_4 x_8zx_5-x_1x_5x_7 x_8x_2x_5 x_8x_3x_5 x_8x_2x_6 x_8x_3x_6 x_8x_4x_6 | |
i19 : print cc.dd_2 {3} | 0 0 -x_6 -x_7 0 0 0 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} | 0 -x_4 x_5 0 0 0 0 0 0 0 0 0 0 0 0 x_7 0 0 0 0 0 0 0 0 x_8 0 0 0 0 0 | {3} | -x_2 x_3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_7 0 0 0 0 0 0 0 x_8 0 0 0 0 | {3} | x_1 0 0 0 0 0 -x_7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_8 0 0 0 | {3} | 0 0 0 0 0 -x_5 x_6 x_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_8 0 0 | {3} | 0 0 0 0 -x_3 x_4 0 0 0 x_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_8 0 | {3} | 0 0 0 x_1 x_2 0 0 0 0 0 0 x_1 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 x_4 0 x_5 0 0 0 0 x_6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {3} | 0 0 0 0 0 0 0 x_2 -x_3 0 0 0 0 x_5 0 0 0 x_6 0 0 0 0 0 0 0 0 0 0 0 0 | {3} | 0 0 0 0 0 0 0 -z 0 0 0 0 0 0 x_5 0 0 0 x_6 0 0 0 0 0 0 0 -x_6 -x_7 0 0 | {3} | 0 0 0 0 0 0 0 0 0 x_2 -x_3 x_3 0 -x_4 0 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 -z 0 0 x_3 0 -x_4 0 0 0 0 0 0 x_6 0 0 0 0 0 0 -x_7 0 | {3} | 0 0 0 0 0 0 0 0 0 0 0 -z -x_2 0 0 0 0 0 0 0 0 0 x_6 -x_1 0 0 0 0 0 -x_7 | {3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x_3 0 -x_4 x_4 0 -x_5 0 0 0 0 0 0 0 0 | {3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -z -x_2 0 0 0 x_4 0 -x_5 0 -x_1 0 0 0 0 0 | {3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -z 0 -x_2 -x_3 0 0 0 0 -x_1 0 0 0 0 | |
i20 : print cc.dd_3 {4} | 0 0 0 x_7 0 0 0 0 0 -x_8 0 0 0 0 0 0 | {4} | 0 0 0 0 -x_7 0 0 0 0 0 -x_8 0 0 0 0 0 | {4} | 0 0 0 0 0 0 -x_7 0 0 0 0 -x_8 0 0 0 0 | {4} | 0 0 0 0 0 0 x_6 0 0 0 0 0 -x_8 0 0 0 | {4} | -x_1 0 0 0 0 0 0 0 0 0 0 0 0 -x_8 0 0 | {4} | 0 -x_1 0 0 0 0 0 0 0 0 0 0 0 0 -x_8 0 | {4} | 0 0 0 x_1 0 0 0 0 0 0 0 0 0 0 0 -x_8 | {4} | 0 -x_5 0 -x_6 0 0 0 0 0 0 0 0 0 0 0 0 | {4} | 0 0 -x_5 0 x_6 0 0 0 0 0 0 0 0 0 0 0 | {4} | -x_3 x_4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {4} | 0 0 x_4 0 0 0 -x_6 0 0 0 0 0 0 0 0 0 | {4} | x_2 0 0 0 0 0 -x_6 0 0 0 0 0 0 0 0 0 | {4} | -z 0 0 0 0 0 0 -x_6 0 0 0 0 0 -x_7 0 0 | {4} | 0 x_2 -x_3 0 0 0 0 0 0 0 0 0 0 0 0 0 | {4} | 0 -z 0 0 0 0 0 0 -x_6 0 0 0 0 0 -x_7 0 | {4} | 0 0 0 0 -x_4 0 x_5 0 0 0 0 0 0 0 0 0 | {4} | 0 0 0 0 0 -x_4 0 x_5 0 0 0 0 0 0 0 0 | {4} | 0 0 0 x_2 x_3 0 0 0 0 0 0 0 0 0 0 0 | {4} | 0 0 0 -z 0 0 0 0 x_5 x_1 0 0 0 0 0 0 | {4} | 0 0 0 -z 0 x_3 0 0 0 x_1 0 0 0 0 0 0 | {4} | 0 0 0 0 -z -x_2 0 0 0 0 -x_1 0 0 0 0 0 | {4} | 0 0 0 0 0 0 0 x_3 -x_4 0 0 0 0 0 0 0 | {4} | 0 0 0 0 0 0 -z -x_2 0 0 0 -x_1 0 0 0 0 | {4} | 0 0 0 0 0 0 0 0 0 0 0 -x_6 -x_7 0 0 0 | {4} | 0 0 0 0 0 0 0 0 0 0 -x_4 x_5 0 0 0 0 | {4} | 0 0 0 0 0 0 0 0 0 -x_2 x_3 0 0 0 0 0 | {4} | 0 0 0 0 0 0 0 0 0 x_1 0 0 0 0 0 -x_7 | {4} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -x_5 x_6 | {4} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -x_3 x_4 0 | {4} | 0 0 0 0 0 0 0 0 0 0 0 0 x_1 x_2 0 0 | |