Given a complex map $f : C \to D$ this method returns the chain complex $D$.
i1 : R = ZZ/101[a..d] o1 = R o1 : PolynomialRing |
i2 : I = ideal(a^2, b^2, c^2)
2 2 2
o2 = ideal (a , b , c )
o2 : Ideal of R
|
i3 : J = I + ideal(a*b*c)
2 2 2
o3 = ideal (a , b , c , a*b*c)
o3 : Ideal of R
|
i4 : FI = freeResolution I
1 3 3 1
o4 = R <-- R <-- R <-- R
0 1 2 3
o4 : Complex
|
i5 : FJ = freeResolution J
1 4 6 3
o5 = R <-- R <-- R <-- R
0 1 2 3
o5 : Complex
|
i6 : f = randomComplexMap(FJ, FI, Cycle=>true)
1 1
o6 = 0 : R <---------- R : 0
| 24 |
4 3
1 : R <-------------------- R : 1
{2} | 24 0 0 |
{2} | 0 24 0 |
{2} | 0 0 24 |
{3} | 0 0 0 |
6 3
2 : R <-------------------- R : 2
{4} | 24 0 0 |
{4} | 0 0 0 |
{4} | 0 0 0 |
{4} | 0 24 0 |
{4} | 0 0 0 |
{4} | 0 0 24 |
3 1
3 : R <---------------- R : 3
{5} | 24c |
{5} | -24b |
{5} | 24a |
o6 : ComplexMap
|
i7 : target f
1 4 6 3
o7 = R <-- R <-- R <-- R
0 1 2 3
o7 : Complex
|
i8 : assert isWellDefined f |
i9 : assert isComplexMorphism f |
i10 : assert(target f == FJ) |
i11 : assert(source f == FI) |
The differential in a complex is a map of chain complexes.
i12 : kk = coker vars R
o12 = cokernel | a b c d |
1
o12 : R-module, quotient of R
|
i13 : F = freeResolution kk
1 4 6 4 1
o13 = R <-- R <-- R <-- R <-- R
0 1 2 3 4
o13 : Complex
|
i14 : target dd^F == F o14 = true |
i15 : source dd^F == F o15 = true |
i16 : degree dd^F == -1 o16 = true |