i1 : S = ZZ/101[a..c]
o1 = S
o1 : PolynomialRing
|
i2 : C = simplicialModule(freeResolution coker vars S, Degeneracy => true)
1 4 10 20
o2 = S <-- S <-- S <-- S <-- ...
0 1 2 3
o2 : SimplicialModule
|
i3 : D = simplicialModule((freeResolution coker matrix{{a^2,a*b,b^3}})[-1], Degeneracy => true)
1 5 14
o3 = 0 <-- S <-- S <-- S <-- ...
0 1 2 3
o3 : SimplicialModule
|
i4 : f = randomSimplicialMap(D,C)
1
o4 = 0 : 0 <----- S : 0
0
1 4
1 : S <---------------------------------------------- S : 1
| 0 24a-36b-30c -29a+19b+19c -10a-29b-8c |
5 10
2 : S <--------------------------------------------------------------------------------------------------- S : 2
{0} | 0 24a-36b-30c -29a+19b+19c -10a-29b-8c 0 0 0 0 0 0 |
{0} | 0 0 0 0 24a-36b-30c -29a+19b+19c -10a-29b-8c 0 0 0 |
{2} | 0 0 0 0 0 0 0 -22 -24 -16 |
{2} | 0 0 0 0 0 0 0 -29 -38 39 |
{3} | 0 0 0 0 0 0 0 0 0 0 |
14 20
3 : S <------------------------------------------------------------------------------------------------------------------------------------------------------------------- S : 3
{0} | 0 24a-36b-30c -29a+19b+19c -10a-29b-8c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{0} | 0 0 0 0 24a-36b-30c -29a+19b+19c -10a-29b-8c 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{0} | 0 0 0 0 0 0 0 24a-36b-30c -29a+19b+19c -10a-29b-8c 0 0 0 0 0 0 0 0 0 0 |
{2} | 0 0 0 0 0 0 0 0 0 0 -22 -24 -16 0 0 0 0 0 0 0 |
{2} | 0 0 0 0 0 0 0 0 0 0 -29 -38 39 0 0 0 0 0 0 0 |
{3} | 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 -22 -24 -16 0 0 0 0 |
{2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -29 -38 39 0 0 0 0 |
{3} | 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 -22 -24 -16 0 |
{2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -29 -38 39 0 |
{3} | 0 0 0 0 0 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 0 0 0 0 21 |
{4} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
o4 : SimplicialModuleMap
|
i5 : E = simplicialModule((dual C.complex)[-3], Degeneracy => true)
1 4 10 20
o5 = S <-- S <-- S <-- S <-- ...
0 1 2 3
o5 : SimplicialModule
|
i6 : F = simplicialModule((dual D.complex)[-3], 3, Degeneracy => true)
2 5 9 14
o6 = S <-- S <-- S <-- S <-- ...
0 1 2 3
o6 : SimplicialModule
|
i7 : g = randomSimplicialMap(F,E)
2 1
o7 = 0 : S <------------------------ S : 0
{-3} | 34 |
{-4} | 19a-47b-39c |
5 4
1 : S <------------------------------------------------------------- S : 1
{-3} | 34 0 0 0 |
{-4} | 19a-47b-39c 0 0 0 |
{-2} | 0 -18 -47 45 |
{-2} | 0 -13 38 -34 |
{-3} | 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c |
9 10
2 : S <-------------------------------------------------------------------------------------------------------- S : 2
{-3} | 34 0 0 0 0 0 0 0 0 0 |
{-4} | 19a-47b-39c 0 0 0 0 0 0 0 0 0 |
{-2} | 0 -18 -47 45 0 0 0 0 0 0 |
{-2} | 0 -13 38 -34 0 0 0 0 0 0 |
{-3} | 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c 0 0 0 0 0 0 |
{-2} | 0 0 0 0 -18 -47 45 0 0 0 |
{-2} | 0 0 0 0 -13 38 -34 0 0 0 |
{-3} | 0 0 0 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c 0 0 0 |
{0} | 0 0 0 0 0 0 0 0 0 0 |
14 20
3 : S <----------------------------------------------------------------------------------------------------------------------------------------------------------- S : 3
{-3} | 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-4} | 19a-47b-39c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 -18 -47 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 -13 38 -34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-3} | 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 0 0 0 -18 -47 45 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 0 0 0 -13 38 -34 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 0 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 0 0 0 0 0 0 -18 -47 45 0 0 0 0 0 0 0 0 0 0 |
{-2} | 0 0 0 0 0 0 0 -13 38 -34 0 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 0 0 0 0 0 -43a-15b-28c 2a+16b+22c -48a-47b+47c 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 |
o7 : SimplicialModuleMap
|
i8 : h = f ** g;
|
i9 : assert isWellDefined h
|
i10 : assert(prune source h == C ** E)
|
i11 : assert(prune target h == D ** F)
|
i16 : D' = simplicialModule((freeResolution coker matrix{{a^2,a*b,c^3}})[-1], 3, Degeneracy => true)
1 5 15
o16 = 0 <-- S <-- S <-- S <-- ...
0 1 2 3
o16 : SimplicialModule
|
i17 : f' = randomSimplicialMap(D', D)
o17 = 0 : 0 <----- 0 : 0
0
1 1
1 : S <---------- S : 1
| 19 |
5 5
2 : S <-------------------------------------- S : 2
{0} | 19 0 0 0 0 |
{0} | 0 19 0 0 0 |
{2} | 0 0 -16 15 39a+43b-17c |
{2} | 0 0 7 -23 -11a+48b+36c |
{3} | 0 0 0 0 35 |
15 14
3 : S <--------------------------------------------------------------------------------------------------- S : 3
{0} | 19 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{0} | 0 19 0 0 0 0 0 0 0 0 0 0 0 0 |
{0} | 0 0 19 0 0 0 0 0 0 0 0 0 0 0 |
{2} | 0 0 0 -16 15 39a+43b-17c 0 0 0 0 0 0 0 0 |
{2} | 0 0 0 7 -23 -11a+48b+36c 0 0 0 0 0 0 0 0 |
{3} | 0 0 0 0 0 35 0 0 0 0 0 0 0 0 |
{2} | 0 0 0 0 0 0 -16 15 39a+43b-17c 0 0 0 0 0 |
{2} | 0 0 0 0 0 0 7 -23 -11a+48b+36c 0 0 0 0 0 |
{3} | 0 0 0 0 0 0 0 0 35 0 0 0 0 0 |
{2} | 0 0 0 0 0 0 0 0 0 -16 15 39a+43b-17c 0 0 |
{2} | 0 0 0 0 0 0 0 0 0 7 -23 -11a+48b+36c 0 0 |
{3} | 0 0 0 0 0 0 0 0 0 0 0 35 0 0 |
{3} | 0 0 0 0 0 0 0 0 0 0 0 0 11 -38a+33b+40c |
{5} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
{5} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
o17 : SimplicialModuleMap
|
i18 : (f' * f) ** g == (f' ** g) * (f ** id_E)
o18 = true
|
i19 : (f' * f) ** g == (f' ** id_F) * (f ** g)
o19 = true
|
i20 : F' = simplicialModule(dual (freeResolution coker matrix{{a^2,a*b,a*c,b^3}})[-3], Degeneracy => true)
1 5 13 26
o20 = S <-- S <-- S <-- S <-- ...
0 1 2 3
o20 : SimplicialModule
|
i21 : g' = randomSimplicialMap(F', F)
1 2
o21 = 0 : S <-------------------------- S : 0
{-4} | 11a+46b-28c 1 |
5 5
1 : S <----------------------------------------------------------------------------------------------- S : 1
{-4} | 11a+46b-28c 1 0 0 0 |
{-3} | 0 0 -3a+22b-47c 27a-22b+32c -19 |
{-3} | 0 0 -23a-7b+2c -9a-32b-20c 17 |
{-3} | 0 0 29a-47b+15c 24a-30b-48c -20 |
{-4} | 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c |
13 9
2 : S <------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- S : 2
{-4} | 11a+46b-28c 1 0 0 0 0 0 0 0 |
{-3} | 0 0 -3a+22b-47c 27a-22b+32c -19 0 0 0 0 |
{-3} | 0 0 -23a-7b+2c -9a-32b-20c 17 0 0 0 0 |
{-3} | 0 0 29a-47b+15c 24a-30b-48c -20 0 0 0 0 |
{-4} | 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c 0 0 0 0 |
{-3} | 0 0 0 0 0 -3a+22b-47c 27a-22b+32c -19 0 |
{-3} | 0 0 0 0 0 -23a-7b+2c -9a-32b-20c 17 0 |
{-3} | 0 0 0 0 0 29a-47b+15c 24a-30b-48c -20 0 |
{-4} | 0 0 0 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c 0 |
{-2} | 0 0 0 0 0 0 0 0 9a2-39ab+13b2+4ac-26bc+22c2 |
{-2} | 0 0 0 0 0 0 0 0 -49a2-11ab+43b2-8ac-8bc+36c2 |
{-2} | 0 0 0 0 0 0 0 0 -3a2-22ab+41b2-30ac+16bc-28c2 |
{-3} | 0 0 0 0 0 0 0 0 -6a3+35a2b-35ab2+3b3-9a2c+6abc-31b2c+40ac2+25bc2-2c3 |
26 14
3 : S <-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- S : 3
{-4} | 11a+46b-28c 1 0 0 0 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 -3a+22b-47c 27a-22b+32c -19 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 -23a-7b+2c -9a-32b-20c 17 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 29a-47b+15c 24a-30b-48c -20 0 0 0 0 0 0 0 0 0 |
{-4} | 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c 0 0 0 0 0 0 0 0 0 |
{-3} | 0 0 0 0 0 -3a+22b-47c 27a-22b+32c -19 0 0 0 0 0 0 |
{-3} | 0 0 0 0 0 -23a-7b+2c -9a-32b-20c 17 0 0 0 0 0 0 |
{-3} | 0 0 0 0 0 29a-47b+15c 24a-30b-48c -20 0 0 0 0 0 0 |
{-4} | 0 0 0 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c 0 0 0 0 0 0 |
{-3} | 0 0 0 0 0 0 0 0 -3a+22b-47c 27a-22b+32c -19 0 0 0 |
{-3} | 0 0 0 0 0 0 0 0 -23a-7b+2c -9a-32b-20c 17 0 0 0 |
{-3} | 0 0 0 0 0 0 0 0 29a-47b+15c 24a-30b-48c -20 0 0 0 |
{-4} | 0 0 0 0 0 0 0 0 -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c 0 0 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 9a2-39ab+13b2+4ac-26bc+22c2 0 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 -49a2-11ab+43b2-8ac-8bc+36c2 0 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 -3a2-22ab+41b2-30ac+16bc-28c2 0 0 |
{-3} | 0 0 0 0 0 0 0 0 0 0 0 -6a3+35a2b-35ab2+3b3-9a2c+6abc-31b2c+40ac2+25bc2-2c3 0 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 9a2-39ab+13b2+4ac-26bc+22c2 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 -49a2-11ab+43b2-8ac-8bc+36c2 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 -3a2-22ab+41b2-30ac+16bc-28c2 0 |
{-3} | 0 0 0 0 0 0 0 0 0 0 0 0 -6a3+35a2b-35ab2+3b3-9a2c+6abc-31b2c+40ac2+25bc2-2c3 0 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 9a2-39ab+13b2+4ac-26bc+22c2 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -49a2-11ab+43b2-8ac-8bc+36c2 |
{-2} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -3a2-22ab+41b2-30ac+16bc-28c2 |
{-3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 -6a3+35a2b-35ab2+3b3-9a2c+6abc-31b2c+40ac2+25bc2-2c3 |
{0} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
o21 : SimplicialModuleMap
|
i22 : f ** (g' * g) == (f ** g') * (id_C ** g)
o22 = true
|
i23 : f ** (g' * g) == (id_D ** g') * (f ** g)
o23 = true
|