I am trying to compute a morphism between chain complexes (and homology/cohomology ultimately) that is induced by a simplicial map. The problem seems to be when I try to specify the map between barycentric subdivisions.
As a concrete example - this works: S = SimplicialComplex([[1,2]],is_mutable=False) T = SimplicialComplex([[1,2],[2,3],[1,3]],is_mutable=False) f = {x[0]:x[0] for x in S.cells()[0]} H = Hom(S,T) z = H(f) r = z.associated_chain_complex_morphism()
If I try to do the same with the subdivision - I get S = SimplicialComplex([[1,2]],is_mutable=False).barycentric_subdivision() S.set_immutable() T = SimplicialComplex([[1,2],[2,3],[1,3]],is_mutable=False).barycentric_subdivision() T.set_immutable() f = {x[0]:x[0] for x in S.cells()[0]} H = Hom(S,T) z = H(f) r = z.associated_chain_complex_morphism()
I get: ValueError: matrices must define a chain complex morphism
Any insight would be helpful.