Macaulay2 » Documentation
Packages » Complexes :: differential of a chain complex
next | previous | forward | backward | up | index | toc

differential of a chain complex -- get the maps between the terms in a complex

Synopsis

A chain complex is a sequence of modules connected by homomorphisms, called differentials, such that the composition of any two consecutive maps is zero.

One can access the differential of a complex as follows.

i1 : R = QQ[a..d];
i2 : I = ideal(a*d-b*c, b^2-a*c, c^2-b*d);

o2 : Ideal of R
i3 : C = freeResolution(R^1/I)

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

o3 : Complex
i4 : dd^C

          1                             3
o4 = 0 : R  <------------------------- R  : 1
               | b2-ac bc-ad c2-bd |

          3                     2
     1 : R  <----------------- R  : 2
               {2} | -c d  |
               {2} | b  -c |
               {2} | -a b  |

o4 : ComplexMap
i5 : C.dd

          1                             3
o5 = 0 : R  <------------------------- R  : 1
               | b2-ac bc-ad c2-bd |

          3                     2
     1 : R  <----------------- R  : 2
               {2} | -c d  |
               {2} | b  -c |
               {2} | -a b  |

o5 : ComplexMap
i6 : assert(dd^C === C.dd)
i7 : assert(source dd^C === C)
i8 : assert(target dd^C === C)
i9 : assert(degree dd^C === -1)

The composition of the differential with itself is zero.

i10 : (dd^C)^2 == 0

o10 = true

The individual maps between terms are indexed by their source.

i11 : dd^C_2

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

              3      2
o11 : Matrix R  <-- R
i12 : assert(source dd^C_2 === C_2)
i13 : assert(target dd^C_2 === C_1)

See also