Macaulay2 » Documentation
Packages » KustinMiller :: Stellar Subdivisions
next | previous | forward | backward | up | index | toc

Stellar Subdivisions -- The Kustin-Miller complex for stellar subdivisions

We consider a Gorenstein* simplicial complex C and the complex C' obtained by stellar subdivision (see stellarSubdivision) of a face F of C, and the corresponding Stanley-Reisner ideals I and I'.

We construct a resolution of I' from a resolution of I and from a resolution of the Stanley-Reisner ideal of the link of F using the Kustin-Miller complex construction implemented in kustinMillerComplex. Note that this resolution is not necessarily minimal (for facets it is).

For details see

J. Boehm, S. Papadakis: Stellar subdivisions and Stanley-Reisner rings of Gorenstein complexes, http://arxiv.org/abs/0912.2151

(1) The simplest example:

Consider the stellar subdivision of the edge \{x_1,x_2\}\ of the triangle with vertices x_1,x_2,x_3. The new vertex is x_4 and z_1 is the base of the unprojection deformation.

i1 : K=QQ;
i2 : R=K[x_1..x_3,z_1];
i3 : I=ideal(x_1*x_2*x_3)

o3 = ideal(x x x )
            1 2 3

o3 : Ideal of R
i4 : Ilink=I:ideal(x_1*x_2)

o4 = ideal x
            3

o4 : Ideal of R
i5 : J=Ilink+ideal(z_1)

o5 = ideal (x , z )
             3   1

o5 : Ideal of R
i6 : cI=res I

      1      1
o6 = R  <-- R  <-- 0
                    
     0      1      2

o6 : ChainComplex
i7 : betti cI

            0 1
o7 = total: 1 1
         0: 1 .
         1: . .
         2: . 1

o7 : BettiTally
i8 : cJ=res J

      1      2      1
o8 = R  <-- R  <-- R  <-- 0
                           
     0      1      2      3

o8 : ChainComplex
i9 : betti cJ

            0 1 2
o9 = total: 1 2 1
         0: 1 2 1

o9 : BettiTally
i10 : cc=kustinMillerComplex(cI,cJ,K[x_4]);
i11 : S=ring cc

o11 = S

o11 : PolynomialRing
i12 : cc

       1      2      1
o12 = S  <-- S  <-- S
                     
      0      1      2

o12 : ChainComplex
i13 : betti cc

             0 1 2
o13 = total: 1 2 1
          0: 1 . .
          1: . 2 .
          2: . . 1

o13 : BettiTally
i14 : isExactRes cc

o14 = true
i15 : cc.dd_1

o15 = | x_4x_3 -x_1x_2+x_4z_1 |

              1      2
o15 : Matrix S  <-- S
i16 : cc.dd_2

o16 = {2} | -x_1x_2+x_4z_1 |
      {2} | -x_4x_3        |

              2      1
o16 : Matrix S  <-- S

Obviously the ideal resolved by the Kustin-Miller complex at the special fiber z_1=0 is the Stanley-Reisner ideal of the stellar subdivision (i.e., of a 4-gon).

(2) Stellar subdivision of the facet \{x_1,x_2,x_4,x_6\}\ of the simplicial complex associated to the complete intersection (x_1*x_2*x_3, x_4*x_5*x_6). The result is a Pfaffian:

i17 : R=K[x_1..x_6,z_1..z_3];
i18 : I=ideal(x_1*x_2*x_3,x_4*x_5*x_6)

o18 = ideal (x x x , x x x )
              1 2 3   4 5 6

o18 : Ideal of R
i19 : Ilink=I:ideal(x_1*x_2*x_4*x_6)

o19 = ideal (x , x )
              5   3

o19 : Ideal of R
i20 : J=Ilink+ideal(z_1*z_2*z_3)

o20 = ideal (x , x , z z z )
              5   3   1 2 3

o20 : Ideal of R
i21 : cI=res I

       1      2      1
o21 = R  <-- R  <-- R  <-- 0
                            
      0      1      2      3

o21 : ChainComplex
i22 : betti cI

             0 1 2
o22 = total: 1 2 1
          0: 1 . .
          1: . . .
          2: . 2 .
          3: . . .
          4: . . 1

o22 : BettiTally
i23 : cJ=res J

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

o23 : ChainComplex
i24 : betti cJ

             0 1 2 3
o24 = total: 1 3 3 1
          0: 1 2 1 .
          1: . . . .
          2: . 1 2 1

o24 : BettiTally
i25 : cc=kustinMillerComplex(cI,cJ,K[x_7]);
i26 : S=ring cc

o26 = S

o26 : PolynomialRing
i27 : cc

       1      5      5      1
o27 = S  <-- S  <-- S  <-- S
                            
      0      1      2      3

o27 : ChainComplex
i28 : betti cc

             0 1 2 3
o28 = total: 1 5 5 1
          0: 1 . . .
          1: . 2 1 .
          2: . 2 2 .
          3: . 1 2 .
          4: . . . 1

o28 : BettiTally
i29 : isExactRes cc

o29 = true
i30 : cc.dd_1

o30 = | x_1x_2x_3 x_4x_5x_6 x_7x_3 x_7x_5 x_1x_2x_4x_6+x_7z_1z_2z_3 |

              1      5
o30 : Matrix S  <-- S
i31 : cc.dd_2

o31 = {3} | 0    x_4x_6    0         x_7     0       |
      {3} | 0    0         x_1x_2    0       x_7     |
      {2} | x_5  z_1z_2z_3 0         -x_1x_2 0       |
      {2} | -x_3 0         z_1z_2z_3 0       -x_4x_6 |
      {4} | 0    -x_3      -x_5      0       0       |

              5      5
o31 : Matrix S  <-- S
i32 : cc.dd_3

o32 = {3} | -x_1x_2x_4x_6-x_7z_1z_2z_3 |
      {5} | x_7x_5                     |
      {5} | -x_7x_3                    |
      {4} | -x_4x_5x_6                 |
      {4} | x_1x_2x_3                  |

              5      1
o32 : Matrix S  <-- S

We compare with the combinatorics, i.e., check that the ideal resolved by the Kustin Miller complex at the special fiber is the Stanley-Reisner ideal of the stellar subdivision:

i33 : R=K[x_1..x_6];
i34 : C=simplicialComplex monomialIdeal(x_1*x_2*x_3,x_4*x_5*x_6)

o34 = simplicialComplex | x_2x_3x_5x_6 x_1x_3x_5x_6 x_1x_2x_5x_6 x_2x_3x_4x_6 x_1x_3x_4x_6 x_1x_2x_4x_6 x_2x_3x_4x_5 x_1x_3x_4x_5 x_1x_2x_4x_5 |

o34 : SimplicialComplex
i35 : fVector C

o35 = {1, 6, 15, 18, 9}

o35 : List
i36 : F=face {x_1,x_2,x_4,x_6}

o36 = x  x  x  x  
       1  2  4  6

o36 : face with 4 vertices in R
i37 : R'=K[x_1..x_7];
i38 : C'=substitute(stellarSubdivision(C,F,K[x_7]),R')

o38 = simplicialComplex | x_2x_4x_6x_7 x_1x_4x_6x_7 x_1x_2x_6x_7 x_1x_2x_4x_7 x_2x_3x_5x_6 x_1x_3x_5x_6 x_1x_2x_5x_6 x_2x_3x_4x_6 x_1x_3x_4x_6 x_2x_3x_4x_5 x_1x_3x_4x_5 x_1x_2x_4x_5 |

o38 : SimplicialComplex
i39 : fVector C'

o39 = {1, 7, 19, 24, 12}

o39 : List
i40 : I'=monomialIdeal(sub(cc.dd_1,R'))

o40 = monomialIdeal (x x x , x x x x , x x x , x x , x x )
                      1 2 3   1 2 4 6   4 5 6   3 7   5 7

o40 : MonomialIdeal of R'
i41 : C'===simplicialComplex I'

o41 = true

One observes that in this case the resulting complex is minimal This is always true for stellars of facets.

(3) Stellar subdivision of an edge:

i42 : R=K[x_1..x_5,z_1];
i43 : I=monomialIdeal(x_1*x_2*x_3,x_4*x_5)

o43 = monomialIdeal (x x x , x x )
                      1 2 3   4 5

o43 : MonomialIdeal of R
i44 : C=simplicialComplex I

o44 = simplicialComplex | x_2x_3x_5z_1 x_1x_3x_5z_1 x_1x_2x_5z_1 x_2x_3x_4z_1 x_1x_3x_4z_1 x_1x_2x_4z_1 |

o44 : SimplicialComplex
i45 : fVector C

o45 = {1, 6, 14, 15, 6}

o45 : List
i46 : F=face {x_1,x_2}

o46 = x  x  
       1  2

o46 : face with 2 vertices in R
i47 : Ilink=I:ideal(product vertices F)

o47 = monomialIdeal (x , x x )
                      3   4 5

o47 : MonomialIdeal of R
i48 : J=Ilink+ideal(z_1)

o48 = ideal (x , x x , z )
              3   4 5   1

o48 : Ideal of R
i49 : cI=res I

       1      2      1
o49 = R  <-- R  <-- R  <-- 0
                            
      0      1      2      3

o49 : ChainComplex
i50 : betti cI

             0 1 2
o50 = total: 1 2 1
          0: 1 . .
          1: . 1 .
          2: . 1 .
          3: . . 1

o50 : BettiTally
i51 : cJ=res J

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

o51 : ChainComplex
i52 : betti cJ

             0 1 2 3
o52 = total: 1 3 3 1
          0: 1 2 1 .
          1: . 1 2 1

o52 : BettiTally
i53 : cc=kustinMillerComplex(cI,cJ,K[x_6]);
i54 : S=ring cc

o54 = S

o54 : PolynomialRing
i55 : cc

       1      5      5      1
o55 = S  <-- S  <-- S  <-- S
                            
      0      1      2      3

o55 : ChainComplex
i56 : betti cc

             0 1 2 3
o56 = total: 1 5 5 1
          0: 1 . . .
          1: . 3 2 .
          2: . 2 3 .
          3: . . . 1

o56 : BettiTally
i57 : isExactRes cc

o57 = true
i58 : cc.dd_1

o58 = | x_4x_5 x_1x_2x_3 x_6x_3 x_1x_2+x_6z_1 x_6x_4x_5 |

              1      5
o58 : Matrix S  <-- S
i59 : cc.dd_2

o59 = {2} | 0    0      -x_1x_2 x_6 0       |
      {3} | 1    0      0       0   x_6     |
      {2} | z_1  x_4x_5 0       0   -x_1x_2 |
      {2} | -x_3 0      x_4x_5  0   0       |
      {3} | 0    -x_3   -z_1    -1  0       |

              5      5
o59 : Matrix S  <-- S
i60 : cc.dd_3

o60 = {3} | -x_6x_4x_5    |
      {4} | x_1x_2+x_6z_1 |
      {4} | -x_6x_3       |
      {3} | -x_1x_2x_3    |
      {4} | x_4x_5        |

              5      1
o60 : Matrix S  <-- S

(4) Starting out with the Pfaffian elliptic curve:

i61 : R=K[x_1..x_5,z_1];
i62 : I=ideal(x_1*x_2,x_2*x_3,x_3*x_4,x_4*x_5,x_5*x_1)

o62 = ideal (x x , x x , x x , x x , x x )
              1 2   2 3   3 4   4 5   1 5

o62 : Ideal of R
i63 : Ilink=I:ideal(x_1*x_3)

o63 = ideal (x , x , x )
              5   4   2

o63 : Ideal of R
i64 : J=Ilink+ideal(z_1)

o64 = ideal (x , x , x , z )
              5   4   2   1

o64 : Ideal of R
i65 : cI=res I

       1      5      5      1
o65 = R  <-- R  <-- R  <-- R  <-- 0
                                   
      0      1      2      3      4

o65 : ChainComplex
i66 : betti cI

             0 1 2 3
o66 = total: 1 5 5 1
          0: 1 . . .
          1: . 5 5 .
          2: . . . 1

o66 : BettiTally
i67 : cJ=res J

       1      4      6      4      1
o67 = R  <-- R  <-- R  <-- R  <-- R  <-- 0
                                          
      0      1      2      3      4      5

o67 : ChainComplex
i68 : betti cJ

             0 1 2 3 4
o68 = total: 1 4 6 4 1
          0: 1 4 6 4 1

o68 : BettiTally
i69 : cc=kustinMillerComplex(cI,cJ,K[x_10]);
i70 : betti cc

             0 1  2 3 4
o70 = total: 1 9 16 9 1
          0: 1 .  . . .
          1: . 9 16 9 .
          2: . .  . . 1

o70 : BettiTally

(5) One more example of a stellar subdivision of an edge starting with a codimension 4 complete intersection:

i71 : R=K[x_1..x_9,z_1];
i72 : I=monomialIdeal(x_1*x_2,x_3*x_4,x_5*x_6,x_7*x_8*x_9)

o72 = monomialIdeal (x x , x x , x x , x x x )
                      1 2   3 4   5 6   7 8 9

o72 : MonomialIdeal of R
i73 : Ilink=I:ideal(x_1*x_3)

o73 = monomialIdeal (x , x , x x , x x x )
                      2   4   5 6   7 8 9

o73 : MonomialIdeal of R
i74 : J=Ilink+ideal(z_1)

o74 = ideal (x , x , x x , x x x , z )
              2   4   5 6   7 8 9   1

o74 : Ideal of R
i75 : cI=res I

       1      4      6      4      1
o75 = R  <-- R  <-- R  <-- R  <-- R  <-- 0
                                          
      0      1      2      3      4      5

o75 : ChainComplex
i76 : betti cI

             0 1 2 3 4
o76 = total: 1 4 6 4 1
          0: 1 . . . .
          1: . 3 . . .
          2: . 1 3 . .
          3: . . 3 1 .
          4: . . . 3 .
          5: . . . . 1

o76 : BettiTally
i77 : cJ=res J

       1      5      10      10      5      1
o77 = R  <-- R  <-- R   <-- R   <-- R  <-- R  <-- 0
                                                   
      0      1      2       3       4      5      6

o77 : ChainComplex
i78 : betti cJ

             0 1  2  3 4 5
o78 = total: 1 5 10 10 5 1
          0: 1 3  3  1 . .
          1: . 1  3  3 1 .
          2: . 1  3  3 1 .
          3: . .  1  3 3 1

o78 : BettiTally
i79 : cc=kustinMillerComplex(cI,cJ,K[x_10]);
i80 : S=ring cc;
i81 : cc

       1      9      20      20      9      1
o81 = S  <-- S  <-- S   <-- S   <-- S  <-- S
                                            
      0      1      2       3       4      5

o81 : ChainComplex
i82 : betti cc

             0 1  2  3 4 5
o82 = total: 1 9 20 20 9 1
          0: 1 .  .  . . .
          1: . 6  6  1 . .
          2: . 2  7  6 1 .
          3: . 1  6  7 2 .
          4: . .  1  6 6 .
          5: . .  .  . . 1

o82 : BettiTally

We compare again with the combinatorics:

i83 : R=K[x_1..x_9];
i84 : C=simplicialComplex monomialIdeal(sub(I,R))

o84 = simplicialComplex | x_2x_4x_6x_8x_9 x_1x_4x_6x_8x_9 x_2x_3x_6x_8x_9 x_1x_3x_6x_8x_9 x_2x_4x_5x_8x_9 x_1x_4x_5x_8x_9 x_2x_3x_5x_8x_9 x_1x_3x_5x_8x_9 x_2x_4x_6x_7x_9 x_1x_4x_6x_7x_9 x_2x_3x_6x_7x_9 x_1x_3x_6x_7x_9 x_2x_4x_5x_7x_9 x_1x_4x_5x_7x_9 x_2x_3x_5x_7x_9 x_1x_3x_5x_7x_9 x_2x_4x_6x_7x_8 x_1x_4x_6x_7x_8 x_2x_3x_6x_7x_8 x_1x_3x_6x_7x_8 x_2x_4x_5x_7x_8 x_1x_4x_5x_7x_8 x_2x_3x_5x_7x_8 x_1x_3x_5x_7x_8 |

o84 : SimplicialComplex
i85 : fVector C

o85 = {1, 9, 33, 62, 60, 24}

o85 : List
i86 : F=face {x_1,x_3}

o86 = x  x  
       1  3

o86 : face with 2 vertices in R
i87 : R'=K[x_1..x_10];
i88 : C'=substitute(stellarSubdivision(C,F,K[x_10]),R')

o88 = simplicialComplex | x_3x_6x_8x_9x_10 x_1x_6x_8x_9x_10 x_3x_5x_8x_9x_10 x_1x_5x_8x_9x_10 x_3x_6x_7x_9x_10 x_1x_6x_7x_9x_10 x_3x_5x_7x_9x_10 x_1x_5x_7x_9x_10 x_3x_6x_7x_8x_10 x_1x_6x_7x_8x_10 x_3x_5x_7x_8x_10 x_1x_5x_7x_8x_10 x_2x_4x_6x_8x_9 x_1x_4x_6x_8x_9 x_2x_3x_6x_8x_9 x_2x_4x_5x_8x_9 x_1x_4x_5x_8x_9 x_2x_3x_5x_8x_9 x_2x_4x_6x_7x_9 x_1x_4x_6x_7x_9 x_2x_3x_6x_7x_9 x_2x_4x_5x_7x_9 x_1x_4x_5x_7x_9 x_2x_3x_5x_7x_9 x_2x_4x_6x_7x_8 x_1x_4x_6x_7x_8 x_2x_3x_6x_7x_8 x_2x_4x_5x_7x_8 x_1x_4x_5x_7x_8 x_2x_3x_5x_7x_8 |

o88 : SimplicialComplex
i89 : fVector C'

o89 = {1, 10, 39, 76, 75, 30}

o89 : List
i90 : I'=monomialIdeal(sub(cc.dd_1,R'))

o90 = monomialIdeal (x x , x x , x x , x x , x x x , x x  , x x  )
                      1 2   1 3   3 4   5 6   7 8 9   2 10   4 10

o90 : MonomialIdeal of R'
i91 : C'===simplicialComplex I'

o91 = true

See also