Description
The maps f1, f2, ... must be defined over the same base ring, and they must form a complex: the target of f(i+1) is the source of fi.
The following example illustrates how chainComplex adjusts the degrees of the modules involved to ensure that sources and targets of the differentials correspond exactly.
i1 : R = ZZ/101[x,y]
o1 = R
o1 : PolynomialRing
|
i2 : C = chainComplex{matrix{{x,y}},matrix{{x*y},{-x^2}}}
1 2 1
o2 = R <-- R <-- R
0 1 2
o2 : ChainComplex
|
We check that this is a complex:
i3 : C.dd^2 == 0
o3 = true
|
The homology of this complex:
i4 : HH C
o4 = 0 : cokernel | x y |
1 : subquotient ({1} | -y |, {1} | xy |)
{1} | x | {1} | -x2 |
2 : image 0
o4 : GradedModule
|