Macaulay2 » Documentation
Packages » SimplicialModules :: SimplicialModule Array
next | previous | forward | backward | up | index | toc

SimplicialModule Array -- shift a simplicial module or simplicial module map

Description

The shifted simplicial module $D$ is not as simple to define as the shift in the category of chain complexes. This method naively normalizes the given simplicial module/map, applies the shift in the category of chain complexes, then applies the Dold-Kan functor to the result.

As the following example shows, this is not the same thing as simply shifting all terms of the simplicial module.

i1 : S = ZZ/101[a..d]

o1 = S

o1 : PolynomialRing
i2 : D = simplicialModule(S^1, 5)

      1      1      1      1      1      1
o2 = S  <-- S  <-- S  <-- S  <-- S  <-- S <-- ...
                                         
     0      1      2      3      4      5

o2 : SimplicialModule
i3 : D[-1]

            1      2      3      4      5
o3 = 0 <-- S  <-- S  <-- S  <-- S  <-- S <-- ...
                                        
     0     1      2      3      4      5

o3 : SimplicialModule
i4 : oo.dd

                        1
o4 = (0, 0) : 0 <----- S  : (1, 0)
                   0

                        1
     (0, 1) : 0 <----- S  : (1, 1)
                   0

               1               2
     (1, 0) : S  <----------- S  : (2, 0)
                    | 0 1 |

               1               2
     (1, 1) : S  <----------- S  : (2, 1)
                    | 1 1 |

               1               2
     (1, 2) : S  <----------- S  : (2, 2)
                    | 1 0 |

               2                 3
     (2, 0) : S  <------------- S  : (3, 0)
                    | 0 1 0 |
                    | 0 0 1 |

               2                 3
     (2, 1) : S  <------------- S  : (3, 1)
                    | 1 1 0 |
                    | 0 0 1 |

               2                 3
     (2, 2) : S  <------------- S  : (3, 2)
                    | 1 0 0 |
                    | 0 1 1 |

               2                 3
     (2, 3) : S  <------------- S  : (3, 3)
                    | 1 0 0 |
                    | 0 1 0 |

               3                   4
     (3, 0) : S  <--------------- S  : (4, 0)
                    | 0 1 0 0 |
                    | 0 0 1 0 |
                    | 0 0 0 1 |

               3                   4
     (3, 1) : S  <--------------- S  : (4, 1)
                    | 1 1 0 0 |
                    | 0 0 1 0 |
                    | 0 0 0 1 |

               3                   4
     (3, 2) : S  <--------------- S  : (4, 2)
                    | 1 0 0 0 |
                    | 0 1 1 0 |
                    | 0 0 0 1 |

               3                   4
     (3, 3) : S  <--------------- S  : (4, 3)
                    | 1 0 0 0 |
                    | 0 1 0 0 |
                    | 0 0 1 1 |

               3                   4
     (3, 4) : S  <--------------- S  : (4, 4)
                    | 1 0 0 0 |
                    | 0 1 0 0 |
                    | 0 0 1 0 |

               4                     5
     (4, 0) : S  <----------------- S  : (5, 0)
                    | 0 1 0 0 0 |
                    | 0 0 1 0 0 |
                    | 0 0 0 1 0 |
                    | 0 0 0 0 1 |

               4                     5
     (4, 1) : S  <----------------- S  : (5, 1)
                    | 1 1 0 0 0 |
                    | 0 0 1 0 0 |
                    | 0 0 0 1 0 |
                    | 0 0 0 0 1 |

               4                     5
     (4, 2) : S  <----------------- S  : (5, 2)
                    | 1 0 0 0 0 |
                    | 0 1 1 0 0 |
                    | 0 0 0 1 0 |
                    | 0 0 0 0 1 |

               4                     5
     (4, 3) : S  <----------------- S  : (5, 3)
                    | 1 0 0 0 0 |
                    | 0 1 0 0 0 |
                    | 0 0 1 1 0 |
                    | 0 0 0 0 1 |

               4                     5
     (4, 4) : S  <----------------- S  : (5, 4)
                    | 1 0 0 0 0 |
                    | 0 1 0 0 0 |
                    | 0 0 1 0 0 |
                    | 0 0 0 1 1 |

               4                     5
     (4, 5) : S  <----------------- S  : (5, 5)
                    | 1 0 0 0 0 |
                    | 0 1 0 0 0 |
                    | 0 0 1 0 0 |
                    | 0 0 0 1 0 |

o4 : SimplicialModuleMap
i5 : D[-2]

                  1      3      6      10
o5 = 0 <-- 0 <-- S  <-- S  <-- S  <-- S  <-- ...
                                       
     0     1     2      3      4      5

o5 : SimplicialModule
i6 : C = simplicialModule(freeResolution coker vars S, Degeneracy => true)

      1      5      15      35      70
o6 = S  <-- S  <-- S   <-- S   <-- S  <-- ...
                                    
     0      1      2       3       4

o6 : SimplicialModule
i7 : dd^C_(3,0)

o7 = {0} | 1 a b c d 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 0
     {1} | 0 0 0 0 0 1 0 0 0 0 0 0 0 -b -c 0  -d 0  0  0  0  0  0  0  0  0 0
     {1} | 0 0 0 0 0 0 1 0 0 0 0 0 0 a  0  -c 0  -d 0  0  0  0  0  0  0  0 0
     {1} | 0 0 0 0 0 0 0 1 0 0 0 0 0 0  a  b  0  0  -d 0  0  0  0  0  0  0 0
     {1} | 0 0 0 0 0 0 0 0 1 0 0 0 0 0  0  0  a  b  c  0  0  0  0  0  0  0 0
     {1} | 0 0 0 0 0 0 0 0 0 1 0 0 0 0  0  0  0  0  0  -b -c 0  -d 0  0  0 0
     {1} | 0 0 0 0 0 0 0 0 0 0 1 0 0 0  0  0  0  0  0  a  0  -c 0  -d 0  0 0
     {1} | 0 0 0 0 0 0 0 0 0 0 0 1 0 0  0  0  0  0  0  0  a  b  0  0  -d 0 0
     {1} | 0 0 0 0 0 0 0 0 0 0 0 0 1 0  0  0  0  0  0  0  0  0  a  b  c  0 0
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  1 0
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 1
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 0
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 0
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 0
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0 0
     ------------------------------------------------------------------------
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 0  0  0  0  |
     0 0 0 0 c  d  0  0  |
     0 0 0 0 -b 0  d  0  |
     1 0 0 0 a  0  0  d  |
     0 1 0 0 0  -b -c 0  |
     0 0 1 0 0  a  0  -c |
     0 0 0 1 0  0  a  b  |

             15      35
o7 : Matrix S   <-- S
i8 : ss^C_(2,0)

o8 = {0} | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 |
     {1} | 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 |
     {2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 |
     {3} | 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 |
     {3} | 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 |

             35      15
o8 : Matrix S   <-- S
i9 : D = C[1]

      4      10      20      35      56
o9 = S  <-- S   <-- S   <-- S   <-- S  <-- ...
                                     
     0      1       2       3       4

o9 : SimplicialModule
i10 : assert isWellDefined D
i11 : dd^D_(2,0)

o11 = {1} | 1 0 0 0 b  c  0  d  0  0  0 0 0 0 0 0 0  0  0  0  |
      {1} | 0 1 0 0 -a 0  c  0  d  0  0 0 0 0 0 0 0  0  0  0  |
      {1} | 0 0 1 0 0  -a -b 0  0  d  0 0 0 0 0 0 0  0  0  0  |
      {1} | 0 0 0 1 0  0  0  -a -b -c 0 0 0 0 0 0 0  0  0  0  |
      {2} | 0 0 0 0 0  0  0  0  0  0  1 0 0 0 0 0 -c -d 0  0  |
      {2} | 0 0 0 0 0  0  0  0  0  0  0 1 0 0 0 0 b  0  -d 0  |
      {2} | 0 0 0 0 0  0  0  0  0  0  0 0 1 0 0 0 -a 0  0  -d |
      {2} | 0 0 0 0 0  0  0  0  0  0  0 0 0 1 0 0 0  b  c  0  |
      {2} | 0 0 0 0 0  0  0  0  0  0  0 0 0 0 1 0 0  -a 0  c  |
      {2} | 0 0 0 0 0  0  0  0  0  0  0 0 0 0 0 1 0  0  -a -b |

              10      20
o11 : Matrix S   <-- S
i12 : ss^D_(1,0)

o12 = {1} | 1 0 0 0 0 0 0 0 0 0 |
      {1} | 0 1 0 0 0 0 0 0 0 0 |
      {1} | 0 0 1 0 0 0 0 0 0 0 |
      {1} | 0 0 0 1 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 0 0 0 0 0 0 |
      {2} | 0 0 0 0 1 0 0 0 0 0 |
      {2} | 0 0 0 0 0 1 0 0 0 0 |
      {2} | 0 0 0 0 0 0 1 0 0 0 |
      {2} | 0 0 0 0 0 0 0 1 0 0 |
      {2} | 0 0 0 0 0 0 0 0 1 0 |
      {2} | 0 0 0 0 0 0 0 0 0 1 |
      {3} | 0 0 0 0 0 0 0 0 0 0 |
      {3} | 0 0 0 0 0 0 0 0 0 0 |
      {3} | 0 0 0 0 0 0 0 0 0 0 |
      {3} | 0 0 0 0 0 0 0 0 0 0 |

              20      10
o12 : Matrix S   <-- S

Notice that the face maps of the shifted simplicial module are not simply the negation of the face maps of the original. The shift operator is functorial, as illustrated below.

i13 : C2 = simplicialModule(freeResolution (S^1/(a^2, b^2, c^2, d^2)), Degeneracy => true)

       1      5      15      35      70
o13 = S  <-- S  <-- S   <-- S   <-- S  <-- ...
                                     
      0      1      2       3       4

o13 : SimplicialModule
i14 : C3 = simplicialModule(freeResolution (S^1/(a^2, b^3, c^4, d^5)), Degeneracy => true)

       1      5      15      35      70
o14 = S  <-- S  <-- S   <-- S   <-- S  <-- ...
                                     
      0      1      2       3       4

o14 : SimplicialModule
i15 : f2 = simplicialModule(extend(C.complex, C2.complex, map(C_0, C2_0, 1)));
i16 : f3 = simplicialModule(extend(C2.complex, C3.complex, map(C2_0, C3_0, 1)));
i17 : isWellDefined (f2[-1])

o17 = true
i18 : isSimplicialMorphism (f2[-1])

o18 = true
i19 : isSimplicialMorphism (f3[-2])

o19 = true

See also

Ways to use this method:


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/SimplicialModules/SimplicialModuleDOC.m2:3149:0.