This function removes the data of the underlying complex from a simplicial module $S$ that is obtained as a Dold-Kan image. The function checks if the simplicial module has an associated complex and, if so, it reconstructs the simplicial module without the complex data while preserving the face and degeneracy maps.
If the option `RememberSummands` is set to true (the default), the function will remember the summands of the simplicial module when reconstructing it. The face and degeneracy maps of the original simplicial module are preserved in the new simplicial module. This function is good for testing that the normalization of the Dold-Kan functor recovers the original complex, since the normalize command by default first checks if a simplicial module is obtained as a Dold-Kan image before attempting a more costly computation.
i1 : R = ZZ/101[x_1..x_3];
|
i2 : K = koszulComplex vars R
1 3 3 1
o2 = R <-- R <-- R <-- R
0 1 2 3
o2 : Complex
|
i3 : S = simplicialModule(K,4, Degeneracy => true)
1 4 10 20 35
o3 = R <-- R <-- R <-- R <-- R <-- ...
0 1 2 3 4
o3 : SimplicialModule
|
i4 : S.?complex
o4 = true
|
i5 : fS = forgetComplex S
1 4 10 20 35
o5 = R <-- R <-- R <-- R <-- R <-- ...
0 1 2 3 4
o5 : SimplicialModule
|
i6 : components fS_3
1 3 3 3 3 3 3 1
o6 = {R , R , R , R , R , R , R , R }
o6 : List
|
i7 : ffS = forgetComplex(S, RememberSummands => false)
1 4 10 20 35
o7 = R <-- R <-- R <-- R <-- R <-- ...
0 1 2 3 4
o7 : SimplicialModule
|
i8 : components ffS_3
20
o8 = {R }
o8 : List
|
i9 : Kn = normalize fS
1
o9 = R <-- image {0} | 0 0 0 | <-- image {0} | 0 0 0 | <-- image {0} | 0 | <-- 0
{1} | 1 0 0 | {1} | 0 0 0 | {1} | 0 |
0 {1} | 0 1 0 | {1} | 0 0 0 | {1} | 0 | 4
{1} | 0 0 1 | {1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
1 {1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
{2} | 1 0 0 | {1} | 0 |
{2} | 0 1 0 | {1} | 0 |
{2} | 0 0 1 | {1} | 0 |
{2} | 0 |
2 {2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{3} | 1 |
3
o9 : Complex
|
i10 : Knn = normalize ffS
1
o10 = R <-- image {0} | 0 0 0 | <-- image {0} | 0 0 0 | <-- image {0} | 0 | <-- 0
{1} | 1 0 0 | {1} | 0 0 0 | {1} | 0 |
0 {1} | 0 1 0 | {1} | 0 0 0 | {1} | 0 | 4
{1} | 0 0 1 | {1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
1 {1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
{2} | 1 0 0 | {1} | 0 |
{2} | 0 1 0 | {1} | 0 |
{2} | 0 0 1 | {1} | 0 |
{2} | 0 |
2 {2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{3} | 1 |
3
o10 : Complex
|
i11 : Kn.dd
1
o11 = 0 : R <------------------- image {0} | 0 0 0 | : 1
| x_1 x_2 x_3 | {1} | 1 0 0 |
{1} | 0 1 0 |
{1} | 0 0 1 |
1 : image {0} | 0 0 0 | <-------------------------- image {0} | 0 0 0 | : 2
{1} | 1 0 0 | {1} | -x_2 -x_3 0 | {1} | 0 0 0 |
{1} | 0 1 0 | {1} | x_1 0 -x_3 | {1} | 0 0 0 |
{1} | 0 0 1 | {1} | 0 x_1 x_2 | {1} | 0 0 0 |
{1} | 0 0 0 |
{1} | 0 0 0 |
{1} | 0 0 0 |
{2} | 1 0 0 |
{2} | 0 1 0 |
{2} | 0 0 1 |
2 : image {0} | 0 0 0 | <---------------- image {0} | 0 | : 3
{1} | 0 0 0 | {2} | x_3 | {1} | 0 |
{1} | 0 0 0 | {2} | -x_2 | {1} | 0 |
{1} | 0 0 0 | {2} | x_1 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
{1} | 0 0 0 | {1} | 0 |
{2} | 1 0 0 | {1} | 0 |
{2} | 0 1 0 | {1} | 0 |
{2} | 0 0 1 | {1} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{3} | 1 |
3 : image {0} | 0 | <----- 0 : 4
{1} | 0 | 0
{1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{2} | 0 |
{3} | 1 |
o11 : ComplexMap
|
i12 : K == prune Kn
o12 = true
|