next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
KustinMiller :: Stellar Subdivisions

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:

The stellar of the edge {x1,x2} of the triangle with vertices x1,x2,x3. The new vertex is x4 and z1 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 : print cc.dd_1
| x_4x_3 -x_1x_2+x_4z_1 |
i16 : print cc.dd_2
{2} | -x_1x_2+x_4z_1 |
{2} | -x_4x_3        |

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

(2) Stellar of the facet {x1,x2,x4,x6} of the simplicial complex of the complete intersection (x1*x2*x3,x4*x5*x6) resulting in 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 : print cc.dd_1
| x_1x_2x_3 x_4x_5x_6 x_7x_3 x_7x_5 -x_1x_2x_4x_6+x_7z_1z_2z_3 |
i31 : print cc.dd_2
{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       |
i32 : print cc.dd_3
{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                  |

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=idealToComplex ideal(x_1*x_2*x_3,x_4*x_5*x_6)

o34 = {x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  ,
        1  2  4  5    2  3  4  5    2  3  5  6    2  3  4  6    1  3  4  5  
      -----------------------------------------------------------------------
      x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  }
       1  3  5  6    1  3  4  6    1  2  5  6    1  2  4  6

o34 : complex with 9 facets on the vertices x  x  x  x  x  x  
                                             1  2  3  4  5  6
i35 : fvector C

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

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
i37 : R'=K[x_1..x_7];
i38 : C'=substituteComplex(stellarSubdivision(C,F,K[x_7]),R')

o38 = {x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  ,
        1  2  4  5    2  3  4  5    2  3  5  6    2  3  4  6    1  3  4  5  
      -----------------------------------------------------------------------
      x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  , x  x  x  x  ,
       1  3  5  6    1  3  4  6    1  2  5  6    7  2  4  6    7  1  4  6  
      -----------------------------------------------------------------------
      x  x  x  x  , x  x  x  x  }
       7  1  2  6    7  1  2  4

o38 : complex with 12 facets on the vertices x  x  x  x  x  x  x  
                                              1  2  3  4  5  6  7
i39 : fvector C'

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

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

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

o40 : Ideal of R'
i41 : C'==idealToComplex I'

o41 = true

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

(3) Stellar of an edge:

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

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

o43 : Ideal of R
i44 : C=idealToComplex I

o44 = {x  x  x  z  , x  x  x  z  , x  x  x  z  , x  x  x  z  , x  x  x  z  ,
        1  2  4  1    2  3  4  1    2  3  5  1    1  3  4  1    1  3  5  1  
      -----------------------------------------------------------------------
      x  x  x  z  }
       1  2  5  1

o44 : complex with 6 facets on the vertices x  x  x  x  x  z  
                                             1  2  3  4  5  1
i45 : fvector C

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

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

o46 = x  x  
       1  2

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

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

o47 : Ideal 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 : print cc.dd_1
| x_4x_5 x_1x_2x_3 x_6x_3 -x_1x_2+x_6z_1 x_6x_4x_5 |
i59 : print cc.dd_2
{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       |
i60 : print cc.dd_3
{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        |
i61 : print cc.dd_4
0

(4) Starting out with the Pfaffian elliptic curve:

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

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

o63 : Ideal of R
i64 : Ilink=I:ideal(x_1*x_3)

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

o64 : Ideal of R
i65 : J=Ilink+ideal(z_1)

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

o65 : Ideal of R
i66 : cI=res I

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

o66 : ChainComplex
i67 : betti cI

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

o67 : BettiTally
i68 : cJ=res J

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

o68 : ChainComplex
i69 : betti cJ

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

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

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

o71 : BettiTally

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

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

o73 = ideal (x x , x x , x x , x x x )
              1 2   3 4   5 6   7 8 9

o73 : Ideal of R
i74 : Ilink=I:ideal(x_1*x_3)

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

o74 : Ideal of R
i75 : J=Ilink+ideal(z_1)

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

o75 : Ideal of R
i76 : cI=res I

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

o76 : ChainComplex
i77 : betti cI

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

o77 : BettiTally
i78 : cJ=res J

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

o78 : ChainComplex
i79 : betti cJ

             0 1  2  3 4 5
o79 = 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

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

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

o82 : ChainComplex
i83 : betti cc

             0 1  2  3 4 5
o83 = 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

o83 : BettiTally

We compare again compare with the combinatorics:

i84 : R=K[x_1..x_9];
i85 : C=idealToComplex sub(I,R)

o85 = {x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x 
        1  3  5  7  8    2  3  5  7  8    2  4  5  7  8    2  4  6  7  8    2
      -----------------------------------------------------------------------
      x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x 
       4  6  8  9    2  4  6  7  9    2  4  5  8  9    2  4  5  7  9    2  3
      -----------------------------------------------------------------------
      x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x 
       6  7  8    2  3  6  8  9    2  3  6  7  9    2  3  5  8  9    2  3  5
      -----------------------------------------------------------------------
      x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x 
       7  9    1  4  5  7  8    1  4  6  7  8    1  4  6  8  9    1  4  6  7
      -----------------------------------------------------------------------
      x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x 
       9    1  4  5  8  9    1  4  5  7  9    1  3  6  7  8    1  3  6  8  9
      -----------------------------------------------------------------------
      , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  }
         1  3  6  7  9    1  3  5  8  9    1  3  5  7  9

o85 : complex with 24 facets on the vertices x  x  x  x  x  x  x  x  x  
                                              1  2  3  4  5  6  7  8  9
i86 : fvector C

o86 = {1, 9, 33, 62, 60, 24, 0, 0, 0, 0}

o86 : List
i87 : F=face {x_1,x_3}

o87 = x  x  
       1  3

o87 : face with 2 vertices
i88 : R'=K[x_1..x_10];
i89 : C'=substituteComplex(stellarSubdivision(C,F,K[x_10]),R')

o89 = {x  x  x  x   x  , x  x  x  x   x  , x  x  x  x  x  , x  x  x  x  x  ,
        5  7  8  10  3    5  7  8  10  1    2  3  5  7  8    2  4  5  7  8  
      -----------------------------------------------------------------------
      x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x 
       2  4  6  7  8    2  4  6  8  9    2  4  6  7  9    2  4  5  8  9    2
      -----------------------------------------------------------------------
      x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x 
       4  5  7  9    2  3  6  7  8    2  3  6  8  9    2  3  6  7  9    2  3
      -----------------------------------------------------------------------
      x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x 
       5  8  9    2  3  5  7  9    1  4  5  7  8    1  4  6  7  8    1  4  6
      -----------------------------------------------------------------------
      x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  x  , x  x  x  x  
       8  9    1  4  6  7  9    1  4  5  8  9    1  4  5  7  9    6  7  8  10
      -----------------------------------------------------------------------
      x  , x  x  x  x   x  , x  x  x  x   x  , x  x  x  x   x  , x  x  x  x  
       3    6  7  8  10  1    6  8  9  10  3    6  8  9  10  1    6  7  9  10
      -----------------------------------------------------------------------
      x  , x  x  x  x   x  , x  x  x  x   x  , x  x  x  x   x  , x  x  x  x  
       3    6  7  9  10  1    5  8  9  10  3    5  8  9  10  1    5  7  9  10
      -----------------------------------------------------------------------
      x  , x  x  x  x   x  }
       3    5  7  9  10  1

o89 : complex with 30 facets on the vertices x  x  x  x  x  x  x  x  x  x   
                                              1  2  3  4  5  6  7  8  9  10
i90 : fvector C'

o90 = {1, 10, 49, 94, 87, 30, 0, 0, 0, 0, 0}

o90 : List
i91 : I'=sub(ideal(cc.dd_1),R')

o91 = ideal (x x , x x , x x , x x x , x x  , x x  , -x x , x x x  ,
              1 2   3 4   5 6   7 8 9   2 10   4 10    1 3   5 6 10 
      -----------------------------------------------------------------------
      x x x x  )
       7 8 9 10

o91 : Ideal of R'
i92 : C'==idealToComplex I'

o92 = true

See also