1 Introduction

Determining information about the set of homotopy classes of maps [XY] between topological spaces XY is one of the classical problems of algebraic topology. Indeed the research in particular instances of the problem such as the computation of higher homotopy groups of spheres \([S^n,S^k]\) led to a development of new algebraic methods and tools such as spectral sequences. Further, many problems such as classification of vector bundles (up to isomorphism) and submanifolds (up to cobordism) can be expressed via computation of a homotopy invariant.

From an algorithmic perspective, the computation of homotopy invariants unlike the computations of homology and (co)homology groups, is a hard problem. In many cases the problem is even computationally undecidable—for example, it is algorithmically undecidable, whether \(\pi _1(Y)\) is nontrivial, even though Y is a finite simplicial complex. Despite this, there have been several results in the area. Already in the 1950s Brown [2] presented an algorithm which computes the set \([X,Y]^A\) of homotopy classes of maps \(X\rightarrow Y\) that extend a specific map \(A\rightarrow X\) under the conditions that AXY, are represented as finite simplicial complexes, f is a simplicial map and Y is 1-connected and has finite homotopy groups.

Although the results of [2] lead for example to an algorithm computing the higher homotopy groups of spheres, Brown himself remarked that the algorithms are impractical for computations.

Further progress was achieved in [3], where an algorithm was presented that computes [XY] for spaces XY given as finite simplicial sets satisfying \(\dim X\le 2\cdot {\text {conn}}Y\) and \({\text {conn}}Y\ge 1\) (i.e., Y is 1-connected). Here \(\dim X\) denotes the dimension of X and \({\text {conn}}Y\) the connectivity of Y. The algorithm was later detailed in [5], where the computational complexity was further discussed.

In the article [6], the authors extended the results from [3, 5] to the case when a finite group G acts freely on the spaces XY. In particular, they have obtained an algorithm, that given spaces AXY as finite simplicial sets with a free action of a finite group G and assuming \(\dim X\le 2\cdot {\text {conn}}Y\) and \({\text {conn}}Y\ge 1\), computes the set \([X,Y]^A_G\) of equivariant homotopy classes of maps.

We remark that the stability assumptions in the algorithms are tight—when Y is not 1-connected, the question whether \([X,Y]^A\) is nonempty is undecidable by the result of Novikov [18] and for 1-connected Y and \(\dim X>2\cdot {\text {conn}}Y+1\), the nonemptiness of \([X,Y]^A\) is undecidable by [4]. On the other hand, in the stable range \(\dim X\le 2\cdot {\text {conn}}Y\), the set \([X,Y]^A_G\) has a structure of an Abelian group and it is this structure that is computed in [5, 6]. In the boundary case when \(\dim X=2\cdot {\text {conn}}Y+1\), the set \([X,Y]^A_G\) no longer has the structure of an Abelian group, however using the results of [5, 6], one can algorithmically decide its nonemptiness.

A number of further related results was presented in recent years, for example, in [12], we gave an algorithm that computes the set of pointed homotopy classes of maps \([\varSigma X,Y]^*\) under the assumptions that XY are finite simplicial sets and Y is 1-connected, which leads to an algorithm that given two maps \(f,g:X\rightarrow Y\) decides whether f and g are homotopic rel A.

The motivation behind the results in [3, 5, 6] was the embeddability problem from computational topology. In short, can one decide whether a k-dimensional simplicial complex K is embeddable in \({\mathbb {R}}^d\)? In the so-called metastable range of dimensions, this problem is equivalent to deciding the nonemptiness of the set \([K^*,S^{d-1}]_{{\mathbb {Z}}_2}\), where \(K^*\) denotes the deleted product and both \(K^*\) and \(S^{d-1}\) are endowed with a free action of \({\mathbb {Z}}_2\). Hence the article [6] was able to provide a solution to the embeddability problem in the metastable range.

Our motivation is likewise based on Tverberg-type problem—a generalization of the embeddability problem, where one asks wheteher there is an r-almost embedding, i.e., a map \(f:K\rightarrow {\mathbb {R}}^d\) without r-tuple intersection points. The Mabillard–Wagner theorem, formulated in [15] (see [14, 20, 21] for full discussion on its proof), states that under the condition \(rd\ge (r+1)\hspace{0.44434pt}k+3\), the Tverberg type problem is equivalent to the nonemptiness of the set \([K^r\setminus \varDelta ^r,S^{d(r-1)-1}]_{{\mathbb {S}}_r}\), where the symmetry group \({\mathbb {S}}_r\) acts freely on \(K^r\setminus \varDelta ^r\) and non-freely on \(S^{d(r-1)-1}\). Can one determine the nonemptiness algorithmicallyFootnote 1? To do so would require a generalization of the results of [5, 6] to situations with nonfree group actions.

Our approach is based on the application of the Elmendorf’s theorem [9], which, for a finite group G, gives a Quillen equivalence between the category \(G\text {-}{\textsf {s}} {\textsf {Set}}\) of G-simplicial sets and the category \([{{\mathcal {O}}_G ^\textrm{op}},{\textsf{sSet}}]\) of functors from the so called orbit category \({\mathcal {O}}_G\). Hence the computation of the homotopy classes of maps between finite diagrams of spaces leads immediately to results in equivariant homotopy theory.

We formulate our main result as follows:

Theorem 1.1

Let \({\mathcal {I}}\) be a finite category and \(A,X,Y:{\mathcal {I}}\rightarrow \) \({\textsf {s}} \textsf{Set}\) be finite diagrams of finite simplicial sets such that (XA) is a cellular pair,Footnote 2\({\text {conn}}Y\ge 1\), and

figure a

Then there exists an algorithm that computes the set \([X,Y]^A\) of homotopy classes of mapsFootnote 3\(\ell :X\rightarrow Y\) extending a given map \(f:A\rightarrow Y\). For a fixed \(\dim X\), the algorithm runs in polynomial time.

By computing \([X,Y]^A\) we mean the computation of the isomorphism type of this Abelian group—the Abelian group structure is described in Theorem 3.15 and uses the stability condition (\(\star \)).

Remark 1.2

There are multiple ways to interpret the condition (\(\star \)) in the statement of Theorem 1.1 as one can define dimension and connectivity in multiple ways. The most simple one is to use maximum dimension and minimum connectivity, i.e.,

$$\begin{aligned} \dim X=\max {\{\dim X(i)\mid i\in {\mathcal {I}}\}},\qquad {\text {conn}}Y=\min {\{{\text {conn}}Y(i)\mid i\in {\mathcal {I}}\}}. \end{aligned}$$

One can also treat both the dimension and the connectivity of diagrams XY as collections of numbers indexed by the objects of \({\mathcal {I}}\) and Theorem 1.1 holds true even if the stability condition is interpreted in this pointwise way. As a further remark, it is even possible to define \(\dim X(i)\) as the maximal dimension of a cell at i, see Sect. 3.5.

Remark 1.3

The assumption \({\text {conn}}Y\ge 1\) can be easily removed. The exact algorithm as described in this paper works also for \({\text {conn}}Y\ge 0\) since it is based on the Postnikov tower of \(\varSigma Y\) which is 1-connected in this case. As a matter of fact, it works for \({\text {conn}}Y\ge -1\), i.e., if all the spaces in the diagram are non-empty. With a careful treatment of nonconnected spaces it works even in a complete generality, but there is a simpler solution: let \({\mathcal {J}}\subseteq {\mathcal {I}}\) denote the full subcategory on objects where Y is nonempty. Then \([X,Y]^A=\emptyset \) unless X is also empty on \({\mathcal {I}}\setminus {\mathcal {J}}\), in which case \([X,Y]^A=[X|_{\mathcal {J}},Y|_{\mathcal {J}}]^{A|_{\mathcal {J}}}\) and we are in the simpler situation \({\text {conn}}Y\ge -1\) as above.

Let G be a finite group. The orbit category \({\mathcal {O}}_G\) of G is a finite category with objects G/H, for subgroups \(H\le G\), and arrows the equivariant maps \(G/H\rightarrow G/K\). Suppose now that AXY are finite simplicial sets with an action of a finite group G. By Elemendorf’s theorem [9] the categories \(G\text {-}{\textsf {s}} {\textsf {Set}}\) of G-simplicial sets and \([{{\mathcal {O}}_G ^\textrm{op}},{\textsf{sSet}}]\) are Quillen equivalent, namely \([X,Y]^A_G\cong [\varPhi X,\varPhi Y]^{\varPhi A}\), where

$$\begin{aligned} \varPhi (X)(G/H)=X^H=\{x\in X\mid hx=x,\,\forall \,h\in H\}. \end{aligned}$$

For details see e.g. Chapter V in [17] or [9]. Therefore, as a straightforward consequence of Theorem 1.1 we obtain

Theorem 1.4

Let \(A\subseteq X\) and Y be finite simplicial sets with an action of a finite group G. Supposing that \(\dim \varPhi X\le 2\cdot {\text {conn}}\varPhi Y\) and \({\text {conn}}\varPhi Y\ge 1\), there is an algorithm that computes the set \([X,Y]^A_G\) of equivariant homotopy classes of maps \(X\rightarrow Y\) extending a given equivariant map \(A\rightarrow Y\). If \(\dim X\) is fixed, the algorithm runs in polynomial time.

1.1 Applications

We present two applications of Theorem 1.4 for computations in equivariant homotopy theory. First describes a solution to the aforementioned Tverberg-type problem from computational topology. The second application is of more theoretical nature and gives an algorithm that computes equivariant stable homotopy groups of spheres. We introduce both here, while proofs of these results are postponed until Sect. 10.

1.2 Tverberg Problem

Let K be a \({k}\)-dimensional simplicial complex and let \(f:K\rightarrow {\mathbb {R}}^d\) be a map. A point \(x\in f(K)\) is called an r-Tverberg point if it has preimages lying in r pairwise disjoint simplices of K.

The Tverberg-type problem is a question whether there exists an almost r-embedding, i.e., a map \(f:K\rightarrow {\mathbb {R}}^d\) which contains no r-Tverberg points. We will show that Theorem 1.1 implies the following:

Theorem 1.5

Let K be a \({k}\)-dimensional simplicial complex, \(d,r\in {\mathbb {N}}\), such that \(rd\ge (r+1)\hspace{0.3888pt}k+3\). Then there is a polynomial time algorithm that decides whether there is an almost r-embedding \(f:K\rightarrow {\mathbb {R}}^d\).

1.3 Stable Homotopy Groups

As a second application, we obtain

Theorem 1.6

Let XY be finite simplicial sets with an action of a finite group G. Then there is an algorithm that computes the set \(\{X,Y\}_G\) of equivariant stable homotopy classes of maps \(X\rightarrow Y\).

2 The Idea of the Proof of the Main Theorem

The proof consists of three main steps.

  • Using stability, replace \([X,Y]^A\) by the isomorphic \([\varSigma X,\varSigma Y]^{\varSigma A}\) where \(\varSigma \) denotes the unreduced suspension.

  • Construct the Postnikov tower for \(\varSigma Y\), with stages \(P(n)\) that capture the homotopical information up to dimension \(n\), such that the difference between \(P(n)\) and \(P(n-1)\) is isolated in dimension \(n\) and is rather easy to handle explicitly, using a certain “exact sequence”.

  • If non-empty, \([\varSigma X,P(n)]^{\varSigma A}\) becomes an Abelian group via homotopy concatenation (to be more precise, it is an Abelian heap). Inductively with respect to n, propagate the structure of an “effective” Abelian group from \([\varSigma X,P(n-1)]^{\varSigma A}\) to \([\varSigma X,P(n)]^{\varSigma A}\), using the exact sequence from the previous point.

An important part of the mentioned effective Abelian group structure is an algorithm that outputs its isomorphism type. For \(n=\dim \varSigma X\), we have \([X,Y]^A \cong [\varSigma X, \varSigma Y]^{\varSigma A}\cong [\varSigma X,P(n)]^{\varSigma A}\) and the computation is finished.

2.1 New Ingredients

Although the structure of the computation is mostly identical to that of our previous work [5, 6], there are two important differences, the reader should be aware of:

  • Firstly, the construction of the Postnikov tower requires the Postnikov stages to be cofibrant (more careful explanation is given later in Sects. 3.15 and 3.20) and this is generally not the case for diagrams. Our solution consists of employing a cofibrant replacement that, however, makes the basic shape of the tower more complicated (we need both the stages and their cofibrant replacements) and renders the Postnikov stages non-fibrant. For this reason, homotopy classes in \([\varSigma X,P(n)]^{\varSigma A}\) are not represented by actual maps \(\varSigma X\rightarrow P(n)\). Instead, as a way around these technical problems, we develop a convenient category of towers, in which the homotopy classes admit representatives, and use this framework throughout the paper.

  • Secondly, the exact sequence relating homotopy classes of maps into consecutive Postnikov stages consists more naturally of unpointed sets and we follow this more conceptual approach in the paper (it already appeared in [12]). The main point is that the action of \(K(\pi _n,n)\) on \(P(n)\), which is free with \(P(n-1)\) as the space of orbits, induces an action of \([\varSigma X,K(\pi _n,n)]^{\varSigma A}\) on \([\varSigma X,P(n)]^{\varSigma A}\), but with possibly non-trivial stabilizers and with the set of orbits possibly a proper subset of \([\varSigma X,P(n-1)]^{\varSigma A}\). The exact sequence captures both the stabilizers and the subset. For details, see Sect. 3.21.

2.2 Plan of the Paper

We start by setting up the mathematical notions required in the paper, Sect. 3. Then, in Sect. 4 we explain various ways of endowing these mathematical objects with a computational layer. After that we give a more detailed idea of the proof with more precise statements (Sect. 5), while some more technical aspects of the proof—the obstruction theory for diagrams, the exact sequence, further effective homological algebra and construction of Postnikov towers are presented in Sects. 69. Finally, in Sect. 10, we discuss applications of Theorem 1.1.

3 Mathematical Background

3.1 Model Category Formalism

One of the successful formalisms in homotopy theory is that of model categories. We will be dealing with the model category of spaces, G-spaces, chain complexes, and diagrams in these categories. A precise definition of a model structure will not be neededFootnote 4 as only a fragment of the model structure in the above examples will be required—the class of cofibrant objects, the class of fibrant objects, and a homotopy relation. These are crucial concepts since, for X cofibrant and Y fibrant in \({\mathcal {C}}\), the hom-set [XY] in the homotopy category \(\mathop {\textrm{Ho}}\nolimits ({\mathcal {C}})\) is defined to be the set of homotopy classes of maps from X to Y. For general X and Y, one needs to choose a cofibrant replacement \(X^\textrm{cof}\) and a fibrant replacement \(Y^\textrm{fib}\) and then defines the hom-set in \(\mathop {\textrm{Ho}}\nolimits ({\mathcal {C}})\) to be

$$\begin{aligned} {[}X,Y]={\text {map}}\hspace{0.94437pt}(X^\textrm{cof},Y^\textrm{fib})/{\sim }. \end{aligned}$$

We remark that the notion of “replacement” also requires the specification of weak equivalences.

The cofibrant objects are usually described via a generating set of cofibrations \(K_j \rightarrow L_j\), thought of as boundary inclusions of cells (of various shapes). We then say that the pushout X in

is obtained from A by attaching a cell along the attaching map \(K_j\rightarrow A\), where by an actual cell we understand the canonical map \(L_j\rightarrow X\). Any object X obtained from the initial object \(\emptyset \) by successively attaching cells is said to be cellular or a cell complex; any such X is cofibrant. We remark that the cells are attached in some order and, thus, a cell complex is generally not specified by the collection of cells. For our model categories, it will always be possible to attach cells in the order of increasing dimension and this technical issue disappears.

3.2 Relative Categories

When \({\mathcal {C}}\) is a model category and \(A\in {\mathcal {C}}\) an object, the slice category \(A/{\mathcal {C}}\), or the category of objects under A, has as objects maps in \({\mathcal {C}}\) with domain A; its maps from \(f:A\rightarrow X\) to \(g:A\rightarrow Y\) are commutative triangles

We will now explain the important model category concepts for \(A/{\mathcal {C}}\) in terms of \({\mathcal {C}}\). The cofibrant objects are cofibrations in the model structure of \({\mathcal {C}}\), while fibrant objects are maps with fibrant codomain. If X is obtained (in \({\mathcal {C}}\)) from A by successively attaching cells, the canonical map \(A\rightarrow X\) is said to be a relative cell complex and these constitute exactly the cell complexes in \(A/{\mathcal {C}}\). In our examples, A will always be a subobject of X and we will denote the relative cell complex as a pair (XA). The hom-set in \(\mathop {\textrm{Ho}}\nolimits \hspace{0.83328pt}(A/{\mathcal {C}})\) will be denoted by \([X, Y]^A\), where we suppress from the notation the involved maps \(A\rightarrow X\) and \(A\rightarrow Y\); these will always be fixed and clear from the context. For (XA) cofibrant and (YA) fibrant, this is the set of homotopy classes relative to A.

3.3 Spaces \(=\) Simplicial Sets

For computational purposes, a space will mean a simplicial set. We denote by \({\textsf {s}} {\textsf {Set}}\) the category of simplicial sets and simplicial maps between them. We equip simplicial sets with the Kan model structure: Generating cofibrations are the boundary inclusions \(\partial \varDelta ^n\rightarrow \varDelta ^n\), for \(n\ge 0\), where \(\varDelta ^n\) denotes the standard n-simplex and \(\partial \varDelta ^n\) the union of all its proper faces. In this way, any simplicial set is cofibrant, in fact cellular. Thus, cells are maps \(\varDelta ^n\rightarrow Y\) or equivalently n-simplices of Y, for arbitrary \(n\ge 0\). The canonical cellular structure on Y, unique up to the order of cells, has as cells precisely all non-degenerate simplices.

Fibrant objects, the so-called Kan complexes, are simplicial sets that have the right lifting property with respect to the horn inclusions , where is the union of all proper faces of \(\varDelta ^n\) with the exception of the k-th face. Most importantly for us, all simplicial groups are fibrant.

We will also use the notation \(I=\varDelta ^1\) for the interval, especially when talking about homotopies. We will denote by \(s_J=s_{j_r}{\cdots }\hspace{0.83328pt}s_{j_1}\) a degeneracy operator for a set \(J=\{j_r>\ldots >j_1\}\). For each simplex x there is a unique non-degenerate simplex \({{\overline{x}}}\) and a unique degeneracy \(s_J\) such that \(x=s_J{{\overline{x}}}\). The set J consists of all the j for which x lies in the image of \(s_j\). By definition, x is non-degenerate if and only if \(J=\emptyset \).

3.4 Diagrams

Let \({\mathcal {I}}\) be a small category. For a category \({\mathcal {C}}\), we will denote by \({\mathcal {C}}{\text {-}}{\mathcal {I}}\) the category of diagrams \({\mathcal {I}}^\textrm{op}\rightarrow {\mathcal {C}}\). We thus have the category \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) of diagrams of spaces, \(\textsf {Ab} {\text {-}}{\mathcal {I}}\) of diagrams of Abelian groups, \(\textsf {Ch} {\text {-}}{\mathcal {I}}\) of diagrams of chain complexes, etc. (as the notation suggests, we think of them as right \({\mathcal {I}}\)-modules with values in \({\mathcal {C}}\)).

3.5 Diagrams of Spaces

In particular, we have the category \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) of \({\mathcal {I}}\)-shaped diagrams of spaces. The representable functor \({\mathcal {I}}\hspace{0.3888pt}(-,i):{\mathcal {I}}^\textrm{op}\rightarrow {\textsf {s}} {\textsf {Set}}\) can be interpreted as a functor with values in (discrete) simplicial sets and we will thus write \({\mathcal {I}}\hspace{0.3888pt}(-,i)\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\).

The model structure on \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\), the so-called projective model structure which we are about to describe, is more complicated than that on \({\textsf {s}} {\textsf {Set}}\) in that not every object is cofibrant; on the other hand, fibrant objects are simply diagrams consisting of fibrant objects. The generating cofibrations are the maps

$$\begin{aligned} \partial \varDelta ^n\times {\mathcal {I}}\hspace{0.3888pt}(-,i)\rightarrow \varDelta ^n\times {\mathcal {I}}\hspace{0.3888pt}(-,i). \end{aligned}$$

In this way, a cell is a map \(\varDelta ^n\times {\mathcal {I}}\hspace{0.3888pt}(-,i)\rightarrow Y\) or, equivalently, an n-simplex of Y(i), for \(n\ge 0\) and \(i\in {\mathcal {I}}\) arbitrary. This results in the following characterization:

Proposition 3.1

A diagram X is cellular if and only if there is a collection of simplices \(e_\alpha \in (X(i_\alpha ))_{n_\alpha }\), for \(\alpha \in {\mathcal {A}}\), called cells, such that any simplex \(e\in (X(i))_n\) is obtained uniquely from a cell by applying a map in the diagram and a degeneracy, i.e., \(e=s_J(f^*(e_\alpha ))\) for unique \(\alpha \in {\mathcal {A}}\), \(f:i\rightarrow i_\alpha \) and degeneracy \(s_J\). More generally, a cellular pair (XA) is one for which the above condition is satisfied for simplices \(e \in X\setminus A\).

3.6 Equivariant Spaces

Let G be a fixed finite group. If we interpret G as a one-object category, spaces with a G-action (G-spaces) are functors \(G\rightarrow {\textsf {s}} {\textsf {Set}}\) and their category will be denoted \(G\text {-}{\textsf {s}} {\textsf {Set}}\). This category is equipped with a model structure that is described below and is different from the projective model structure on diagrams of spaces. However, a theorem of Elmendorf says that this category if Quillen equivalent to \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {O}}_G\) for the so called category of orbits \({\mathcal {O}}_G\) (consisting of all orbits G/H and all equivariant maps between them). This is how questions of homotopical nature regarding \(G\text {-}{\textsf {s}} {\textsf {Set}}\) are answered: by translating to \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {O}}_G\) and solving there.

For the purpose of the translation, it will be useful to describe the generating set of cofibrations for \(G\text {-}{\textsf {s}} {\textsf {Set}}\). They are given by inclusions \(\partial \varDelta ^{n}\times G/H\rightarrow \varDelta ^{n}\times G/H\), for all \(n\ge 0\) and for all subgroups H of G. Thus, a cell of X is a map \(\varDelta ^{n}\times G/H\rightarrow X\), i.e., an \(n\)-simplex of the fixed point space \(X^H\). Similarly to simplicial sets, every object is cofibrant. The functor \(\varPhi :G\text {-}{\textsf {s}} {\textsf {Set}}\rightarrow {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {O}}_G\) takes a G-space to the collection of its H-fixed point subspaces, for all subgroups H of G and all action maps between them. It is not too difficult to seeFootnote 5 that a cell \(\varDelta ^{n}\times G/H\rightarrow X\) gives a cell \(\varDelta ^{n}\times {\mathcal {O}}_G(-,G/H)\rightarrow \varPhi (X)\) and, in this way, the diagram \(\varPhi (X)\) is cellular for any cellular G-space X (with cells of \(\varPhi (X)\) corresponding to those of X).

3.7 Chain Complexes

We will be working exclusively with non-negatively graded chain complexes of Abelian groups in their projective model structure, denoted \(\textsf {Ch} \). The free chain complex \(D^n\) generated by x in dimension \(n\) has, for \(n>0\), the Abelian group \({\mathbb {Z}}\) in dimensions \(n\) and \(n-1\), generated by x and \(\partial x\) respectively. Its boundary \(\partial D^n\) is the subcomplex generated by \(\partial x\), i.e., has \({\mathbb {Z}}\) in dimension \(n-1\). The case \(n=0\) is special in that \(\partial x=0\), and thus \(D^n={\mathbb {Z}}\), \(\partial D^n=0\). The boundary inclusions \(\partial D^n\rightarrow D^n\) are the generating cofibrations for the projective model structure on chain complexes. Therefore, cells are maps \(D^n\rightarrow C\) and correspond to n-chains \(c\in C_n\). A cellular chain complex consists of free \({\mathbb {Z}}\)-modules with a basis in each dimension formed by the cells viewed as chains.

3.8 Diagrams of Chain Complexes

In the category \(\textsf {Ch} {\text {-}}{\mathcal {I}}\) of diagrams of chain complexes, cofibrations are generated similarly by boundary inclusions \(\partial D^n_i\rightarrow D^n_i\) where \(D^n_i\) is a free diagram generated by a single element x at object i sitting in dimension \(n\). This has \({\mathbb {Z}}{\mathcal {I}}\hspace{0.3888pt}(-,i)\in \textsf {Ab} {\text {-}}{\mathcal {I}}\) (the free Abelian group on a representable diagram) in dimensions \(n\) and \(n-1\) with boundary the identity. A diagram of chain complexes is cellular if and only if, in each dimension, it is a direct sum of diagrams of the form \({\mathbb {Z}}{\mathcal {I}}\hspace{0.3888pt}(-,i)\). More concretely, we have the following characterization:

Proposition 3.2

A diagram C is cellular if and only if there is a collection of cells (i.e., chains) \(c_\alpha \in C(i_\alpha )_{n_\alpha }\), for \(\alpha \in {\mathcal {A}}\), such that any chain c can be obtained uniquely from cells by applying maps in the diagram and linear combinations, i.e.,

$$\begin{aligned} c\,=\!\!\sum _{\begin{array}{c} \alpha \in {\mathcal {A}}\\ f:i\rightarrow i_\alpha \end{array}}\!k_{\alpha ,f}f^*(c_\alpha ) \end{aligned}$$
(3.1)

for unique \(k_{\alpha ,f}\in {\mathbb {Z}}\) (only a finite number of non-zero coefficients). More generally, a cellular pair \((C,C')\) is one for which the above condition is satisfied modulo \(C'\).

As an important example, if X is a diagram of spaces then the normalizedFootnote 6 chain complexes \(C_*(X(i))\) of the spaces in the diagram form a diagram \(C_*(X)\) of chain complexes. Since we are dealing (exclusively) with normalized chain complexes, for a cellular diagram X, the diagram \(C_*(X)\) of chain complexes is also cellular with cells corresponding bijectively to those of X. There is an obvious generalization to the relative situation of a cellular pair (XA).

3.9 Bredon Cohomology

For a cellular pair (XA) of diagrams and for a diagram \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) of Abelian groups the cochain complex

$$\begin{aligned} C^*(X,A;\pi )=\mathop {{\textrm{Hom}}}\nolimits _{\textsf {Ab} {\text {-}}{\mathcal {I}}}(C_*(X,A),\pi ), \end{aligned}$$

equipped with the differentialFootnote 7\(\delta =\partial ^*\), is called the Bredon cochain complex. The cohomology of this cochain complex \(C^*(X,A;\pi )\) is known as Bredon cohomology, see [1, 17]. As a functor of the pair (XA) we will explain shortly that this is represented by an Eilenberg–Mac Lane diagram.

3.10 Cofibrant Replacement in \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\)

We will use a concrete model for the cofibrant replacement, namely the Bousfield–Kan model. Let X be any diagram. Then the cofibrant replacement \(X^\textrm{cof}=|BX|\) is a geometric realization of a certain simplicial object BX; we start with describing the involved simplicial object \(BX:\varDelta ^\textrm{op}\rightarrow {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\); in dimension \(n\) it is

$$\begin{aligned} (BX)_n=\coprod _{i_0,\dots ,i_n\in {\mathcal {I}}}Xi_0\times {\mathcal {I}}\hspace{0.3888pt}(i_1,i_0)\times \cdots \times {\mathcal {I}}(i_n,i_{n-1})\times {\mathcal {I}}\hspace{0.3888pt}(-,i_n) \end{aligned}$$

with the face map \(d_j\) given either by composition, for \(j>0\), with \(d_0\) being the right action \(Xi_0\times {\mathcal {I}}\hspace{0.3888pt}(i_1, i_0)\rightarrow Xi_1\) coming from X being a contravariant functor \(X:{\mathcal {I}}^\textrm{op}\rightarrow {\textsf {s}} {\textsf {Set}}\), and with degeneracy maps inserting the identity at various positions. The geometric realization of BX is then the quotient

$$\begin{aligned} X^\textrm{cof}=\coprod _{\begin{array}{c} n\ge 0\\ i_0,\dots ,i_n\in {\mathcal {I}} \end{array}}\!\!\varDelta ^n\times Xi_0\times {\mathcal {I}}\hspace{0.3888pt}(i_1,i_0)\times \cdots \times {\mathcal {I}}\hspace{0.3888pt}(i_n,i_{n-1})\times {\mathcal {I}}\hspace{0.3888pt}(-,i_n)/{\sim }, \end{aligned}$$

where the relation is similar to that of a tensor product (formally, such a construction is called the coend \(\varDelta ^\bullet *_{\varDelta ^\textrm{op}}BX\)): we require \((\theta ^*t,z)\sim (t,\theta _*z)\), for \(t\in \varDelta ^m\), \(z\in (BX)_n\), and \(\theta \) a morphism in \(\varDelta ^\textrm{op}\); of course, faces and degeneracies are sufficient to generate all relations.

Lemma 3.3

For any space K we have \(K\times X^\textrm{cof}\cong (K\times X)^\textrm{cof}\), i.e., the cofibrant replacement commutes with s Set-tensors.

The cofibrant replacement \(X^\textrm{cof}\) of any diagram is a cellular diagram. Precise details will not be important for the paper, but are necessary for an implementation of our algorithm. The cells are \((t,x,f_0,\dots ,f_{n-1},\mathop {\textrm{id}}\nolimits )\) for any chain

$$\begin{aligned} i_0\xleftarrow {\ f_0\ }i_1\longleftarrow \cdots \longleftarrow i_{n-1}\xleftarrow {\ f_{n-1}\ }i_n\end{aligned}$$

of non-identity morphisms and any non-degenerate simplex \((t,x)\in \varDelta ^n\times Xi_n\) not contained in \(\partial \varDelta ^n\times Xi_n\). The non-degenerate simplices of a product can be described equivalently as pairs \((s_J{{\overline{t}}},s_K{{\overline{x}}})\) for non-degenerate \({{\overline{t}}}\), \({{\overline{x}}}\) and disjoint index sets JK.

3.11 Eilenberg–Mac Lane Spaces

Given a group \(\pi \) and an integer \(n\ge 0\), an Eilenberg–Mac Lane space \(K(\pi ,n)\) is a simplicial set satisfying

$$\begin{aligned} \pi _k(K(\pi ,n))={\left\{ \begin{array}{ll}\pi &{}\text {for k=n},\\ 0&{}\text {else}.\end{array}\right. } \end{aligned}$$

In this text the symbol \(K(\pi ,n)\) will always stand for the following concrete simplicial model (see [16, p. 101])

$$\begin{aligned} K(\pi ,n)_k=Z^n(\varDelta ^k;\pi ), \end{aligned}$$

where \(Z^n\) denotes the Abelian group of normalized cocycles. Similarly, we define the contractible space \(WK(\pi ,n)\) as

$$\begin{aligned} WK(\pi ,n)_k=C^n(\varDelta ^k;\pi ) \end{aligned}$$

where \(C^n\) denotes the Abelian group of normalized cochains. Since both are simplicial groups, they are fibrant. According to [16, Thm. 23.10], the universal principal bundle with fibre \(K(\pi ,n)\), i.e.,

$$\begin{aligned} K(\pi ,n)\hookrightarrow WK(\pi ,n)\xrightarrow {\delta }{{\overline{W}}}K(\pi ,n), \end{aligned}$$

has \({\overline{W}} K(\pi ,n)\) isomorphic to \(K(\pi ,n+1)\) (a concrete isomorphism can be found in [5]) and we will thus consider these spaces equal. The map \(\delta \) is then the coboundary from the n-cochains to \((n+1)\)-cocycles. In the computational part, declaring the two spaces equal amounts to applying the canonical isomorphism and its inverse. These are given by straightforward formulas running in polynomial time, see [5, Lem. 3.15].

3.12 Principal Twisted Cartesian Products

Let X be a simplicial set and G a simplicial group. As in the preceding section, there is a universal principal bundle with fibre G,

$$\begin{aligned} G\hookrightarrow WG\xrightarrow {\delta }{\overline{W}} G. \end{aligned}$$

A simplicial map \(\tau :X\rightarrow {\overline{W}} G\) is known as a twisting function and prescribes a principal twisted cartesian product \(X\times _\tau G\rightarrow X\), a simplicial analogue of a principal bundle. It is obtained by replacing one of the face operators in the usual cartesian product according to \(\tau \), but we will not need to explain details here. There is an obvious extension to diagrams—if X is a diagram of simplicial sets and G a diagram of simplicial groups, a twisting function \(\tau :X\rightarrow {\overline{W}} G\) is then just a compatible family of twisting functions at each object and thus prescribes a “compatible” family of principal twisted cartesian products; explicitly, compatibility means that the canonical projection \(X\times _\tau G\rightarrow X\) is a natural transformation, i.e., a map in \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\). We also note that

is a map of principal bundles and is thus a pullback square.

3.13 Principal Bundles Categorically

For the purposes of a later generalization, we will define principal bundles categorically in any complete category \({\mathcal {C}}\) in the following way.Footnote 8

Let G be a group object in \({\mathcal {C}}\). A G-torsor is an object P of \({\mathcal {C}}\) with a simply transitive (right) action of G. A regular action of G on itself presents G as a G-torsor. Thinking of the group additively, the simple transitivity is expressed as a difference map \(P\times P\rightarrow G\), a generalization of the association \((A,B)\mapsto \overrightarrow{AB}=-A+B\) from the theory of affine spaces; we will use the nicer looking \(B-A\) since we will have commutativity anyway. It is a simple matter to write down a set of axioms (e.g., \(x+(y-x)=y\), as for affine spaces), each expressed as commutativity of a diagram involving finite products of G and P. In particular, any functor that preserves finite products will automatically preserve group objects and their torsors.

Example

A non-empty torsor in the category of sets is a so-called heap, which we define later. Namely, for a heap S and for any choice of zero \(0\in S\), the heap S becomes a group, so that it possesses the regular right action on itself. For different choices, the induced groups are canonically isomorphic and the actions are identified under this isomorphism. The empty set is (in our definition) a torsor for any group.

A principal G-bundle is a map \(P\rightarrow X\), thought of as an object of the slice category \({\mathcal {C}}/X\), that is a torsor for the trivial group object \(X\times G\rightarrow X\) in \({\mathcal {C}}/X\), given by the projection. A simple example of the preservation of torsors is the fact that principal G-bundles are closed under pullbacks—the pullback functor \(f^*:{\mathcal {C}}/X\rightarrow {\mathcal {C}}/Y\) clearly preserves all limits. Also, any functor from \({\mathcal {C}}\) preserving finite limits will preserve principal bundles, since the product in the slice category \({\mathcal {C}}/X\) is the pullback in \({\mathcal {C}}\). Explicitly, the structure maps for a principal bundle in terms of the category \({\mathcal {C}}\) are

$$\begin{aligned}&{+}:G\times G\rightarrow G,&0&:*\rightarrow G,&Y&{-}:G\rightarrow G,\\&{+}:P\times G\rightarrow P,{} & {} {}{} & {} {-}:P\times _X P\rightarrow G, \end{aligned}$$

where the action of G on P is required to be a map over X. For a principal twisted cartesian product \(P=X\times _\tau G\rightarrow X\), the last two maps are: the action

$$\begin{aligned} {+}:P\times G\rightarrow P,\quad \ (x,a)+g=(x,a+g) \end{aligned}$$

(a map over X), and the difference

$$\begin{aligned} {-}:P\times _XP\rightarrow G,\quad \ (x,a)-(x,b)=a-b. \end{aligned}$$

In particular, we will need principal bundles whose fibres are the diagrams of Eilenberg–Mac Lane spaces, which we describe next.

3.14 Eilenberg–Mac Lane Diagrams

For a diagram \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\), we define a diagram of Eilenberg–Mac Lane spaces \(K(\pi ,n)\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) objectwise, i.e., by setting

$$\begin{aligned} K(\pi ,n)(i)=K(\pi (i),n). \end{aligned}$$

Analogously, we define the diagram \(WK(\pi ,n)(i)=WK(\pi (i),n)\). Both these diagrams are fibrant (since they consist of fibrant objects). The advantage of the concrete models described above is that maps to these diagrams can be identified with cochains and cocycles of the Bredon cochain complex. The following lemmas are easy generalizations of results in [16].

Proposition 3.4

Let (XA) be a pair of diagrams and let \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\). Then there are natural isomorphisms

$$\begin{aligned} {\text {map}}{((X,A),(WK(\pi ,n),0))}&\cong C^n(X,A;\pi ),\\ {\text {map}}{((X,A),({{\overline{W}}}K(\pi ,n),0))}&\cong Z^{n+1}(X,A;\pi ). \end{aligned}$$

For a relative cell complex (XA) (or more generally for a cofibration \(A\rightarrow X\)), we also have

$$\begin{aligned}{}[X,{\overline{W}}K(\pi ,n)]^A\cong H^{n+1}(X,A;\pi ), \end{aligned}$$

where again maps on the left are fixed to be zero on A.

3.15 Postnikov Tower of a Space

We will give a very concise definition of a Postnikov tower of a space, mainly to explain that this definition has to be modified for diagrams; this case will then be treated in much more detail.

A Postnikov tower of a simply connected space Y is a collection of maps \(Y\rightarrow P(n)\) that display \(P(n)\) as the result of killing homotopy groups of Y above dimension \(n\). These approximations are organized in a tower

$$\begin{aligned} \cdots \rightarrow P(n)\rightarrow P(n-1)\rightarrow \cdots \rightarrow P(0); \end{aligned}$$

i.e., the stages are connected by maps \(P(n)\rightarrow P(n-1)\). These are principal fibrations whose fibre is necessarily \(K(\pi _n,n)\), for \({\pi _{n}}\) the \(n\)-th homotopy group of Y. In the standard model, they are even principal twisted cartesian products and as such are classified by a homotopy class \({k_{n}}:P(n-1)\rightarrow {\overline{W}} K({\pi _{n}},n)\), known as Postnikov invariant. One may then write

$$\begin{aligned} P(n)=P(n-1)\times _{{k_{n}}}K({\pi _{n}},n) \end{aligned}$$

to get a very concrete inductive construction of the Postnikov tower, see [5] for the algorithmic viewpoint. The Postnikov towers are employed in the algorithm by observing that \([X,Y]^A\cong [X,P(n)]^A\), for \(n\ge \dim X\), and also by relating \([X,P(n)]^A\) to \([X,P(n-1)]^A\) via a long exact sequence that enables inductive computation.

The following problem occurs for diagrams: the diagram \(P(n-1)\) is not cofibrant in general and, as a result, the Postnikov invariant does not exist as an actual map \(P(n-1)\rightarrow {\overline{W}} K({\pi _{n}},n)\), but rather as a map defined on its cofibrant replacement \(P(n-1)^\textrm{cof}\). As a result, the \(n\)-th stage \(P(n)\) is constructed as

$$\begin{aligned} P(n)=P(n-1)^\textrm{cof}\times _{{k_{n}}}K({\pi _{n}},n) \end{aligned}$$

and will need to be cofibrantly replaced for the construction of \(P(n+1)\) etc. Thus, for diagrams, a tower of the above simple shape must be replaced by a notion that incorporates cofibrant replacements. We will first define a general notion of such a tower and then give a precise definition of a Postnikov tower for a diagram of spaces.

3.16 Towers

Definition

A tower T is a collection of diagrams \(T(m)\), for \(m\ge 0\), together with maps \(T(m)\rightarrow T(m-1){}^{\textrm{cof}}\). A map of towers \(\varphi :S\rightarrow T\) is a collection of maps \(\varphi (m):S(m)\rightarrow T(m)\) for which the square

commmutes for all \(m\). We denote by \(\textsf{Tow}\) the category of towers of diagrams. An \(n\)-restricted tower is the collection of data as above, but with both \(T(m)\) and \(T(m)\rightarrow T(m-1){}^{\textrm{cof}}\) defined only for \(m\le n\). The category of \(n\)-restricted towers will be denoted \(\textsf{Tow}_{\le n}\).

There is a pair of adjunctions

with the first top functor (left adjoint) restricting a tower to \(m\le n\) and the second associating to an \(n\)-restricted tower the diagram sitting at the top level \(n\).

The bottom functors (right adjoints) are easily described as follows: The first one

$$\begin{aligned} {{\text {ext}}_{n}:\textsf{Tow}_{\le n}\rightarrow \textsf{Tow}} \end{aligned}$$

extends the \(n\)-restricted tower T by iterated cofibrant replacements of \(T(n)\) in such a way that the structure maps \(T(m)\rightarrow T(m-1)^\textrm{cof}\) are the identity maps, for \(m>n\). Since a 0-restricted tower is exactly a diagram, \({\text {ext}}_{0}\) may be viewed as a functor \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\rightarrow \textsf{Tow}\) and, from now on, we will not distinguish between a diagram Z and its extension \({\text {ext}}_{0}Z\) (consisting of iterated cofibrant replacements of the diagram Z). We will thus write

$$\begin{aligned} {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\subseteq \textsf{Tow}. \end{aligned}$$

In particular, the terminal diagram \({\text {pt}}\) will be thought of as a tower in the following description. The second right adjoint \({\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\rightarrow \textsf{Tow}_{\le n}\) sends a diagram \(Z\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) to the \(n\)-restricted tower T with \(T(m)={\text {pt}}(m)\) for \(m<n\) and \(T(n)={\text {pt}}(n)\times Z\). We will not need a name for this functor, but the composite of the right adjoints will be denoted by \([n]:{\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\rightarrow \textsf{Tow}\) and is clearly right adjoint to the \(n\)-th level functor \((n):\textsf{Tow}\rightarrow {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) (the composite of the left adjoints). Also \([0]={\text {ext}}_{0}\).

Definition

We say that a tower T is \(n\)-truncated, if it lies in the image of the extension functor \({\text {ext}}_{n}\), i.e., if the structure maps \(T(m)\rightarrow T(m-1){}^{\textrm{cof}}\) are the identity maps for \(m>n\). The \(n\)-truncation \({\text {tr}}_{n} T\) is the composite \({\text {ext}}_{n}(T(\le n))\) and admits a canonical map (the unit of the adjunction) \(T\rightarrow {\text {tr}}_{n} T\).

3.17 Homotopy Groups of Diagrams and Towers

Let \(Y\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) be a diagram of simply connected spaces. We denote by \(\pi _nY\in \textsf {Ab} {\text {-}}{\mathcal {I}}\) the diagram of the n-th homotopy groups of the spaces in the diagram Y. This makes sense since the n-th homotopy group is a functor \(\pi _n\) on simply connected spaces (it is however not a functor on all spaces).

Definition

For an \(n\)-truncated tower T, we define its j-th homotopy group to be \(\pi _j(T)=\pi _j(T(n))\). We note that T is then also \(m\)-truncated, for any \(m\ge n\), and the definition of \(\pi _j(T)\) is independent of \(m\).

3.18 Principal Bundles

Let \(P\rightarrow X\) be a principal G-bundle in the category of diagrams. For any \(n\ge 0\), the right adjoint \([n]\) preserves limits and, thus, \(P[n]\rightarrow X[n]\) is a principal \(G[n]\)-bundle. Concretely, this involves actions of iterated cofibrant replacements of \({\text {pt}}\) and G and of course can be verified directly.

3.19 Pullback of Towers

Lemma 3.5

A square of \(n\)-truncated towers

in which \({\text {tr}}_{n-1} U\xrightarrow {\cong }{\text {tr}}_{n-1} V\) is an isomorphism, is cartesian if and only if it is cartesian at each level \(m\le n\). Explicitly, this means \(S(m)=T(m)\) for \(m<n\) and \(S(n)=T(n)\times _{V(n)}U(n)\). In particular, \(T\times Z[n]\) agrees with T up to level \(n\) and its level \(n\) is \(T(n)\times Z\).

Proof

The proof follows directly from the definition of pullback and the fact that pullbacks over diagrams are taken pointwise. \(\square \)

3.20 Postnikov Tower for Diagrams

Let Y be a diagram of simply connected spaces. Letting \({\pi _{n}}\in \textsf {Ab} {\text {-}}{\mathcal {I}}\) be a diagram of Abelian groups (it will follow from the axioms that \(\pi _n\cong \pi _nY\), hence the name), we introduce the abbreviations

$$\begin{aligned} {K_{n}}=K(\pi _n,n)[n],\quad {WK_{n}}=WK(\pi _n,n)[n],\quad {{\overline{W}} K_{{n}}}={\overline{W}} K(\pi _n,n)[n]. \end{aligned}$$

As explained above, \({WK_{n}}\rightarrow {{\overline{W}} K_{{n}}}\) is a principal \({K_{n}}\)-bundle.

Definition 3.6

A Postnikov system of Y is a map of towers \(\varphi :Y\rightarrow P\), satisfying the following conditions for the \(n\)-truncation \({P_{n}}={\text {tr}}_{n} P\) and the associated \(\varphi _n:Y\rightarrow {P_{n}}\):

  1. 0.

    For each \(n\ge 0\), there is given a diagram \({\pi _{n}}\) of Abelian groups.

  2. 1.

    For each \(n\ge 0\),

    1. (a)

      the induced map \(\varphi _{n*}:\pi _j(Y)\rightarrow \pi _j({P_{n}})\) is an isomorphism for \(0\le j\le n\),

    2. (b)

      \(\pi _j({P_{n}})=0\) for \(j>n\).

  3. 2.

    For each \(n\ge 0\), there is given a pullback square

Towers \({P_{n}}\) are called stages of the Postnikov system, and maps \({k_{n}}\) are called Postnikov classes (the terms Postnikov factors or Postnikov invariants are also used in the literature). These are part of the structure of a Postnikov system. We note that, since \({\delta _n}:{WK_{n}}\rightarrow {{\overline{W}} K_{{n}}}\) is a principal \({K_{n}}\)-bundle, so is its pullback \({p_{n}}:{P_{n}}\rightarrow {P_{{n}-1}}\) and, in particular, there is an action \({P_{n}}\times {K_{n}}\rightarrow {P_{n}}\) and a difference \({P_{n}}\times _{{P_{{n}-1}}}{P_{n}}\rightarrow {K_{n}}\).

For the sake of completeness, we also provide a description of the conditions in the definition in terms of the levels \(P(n)\) of the Postnikov tower P. However, whenever possible the more compact and symmetric version with towers will be used.

Lemma 3.7

In terms of the levels \(P(n)\) of the Postnikov tower P, the conditions are equivalent to:

  1. 0.

    For each \(n\ge 0\), there is given a diagram \({\pi _{n}}\) of Abelian groups.

  2. 1.

    For each \(n\ge 0\),

    1. (a)

      the induced map \(\varphi _{n*}:\pi _j(Y(n))\rightarrow \pi _j(P(n))\) is an isomorphism, \(0\le j\le n\),

    2. (b)

      \(\pi _j(P(n))=0\) for \(j>n\).

  3. 2.

    The n-the level \(P(n)\) is a pullback in the following diagram:

Proof

The first point is clear and the second is an instance of Lemma 3.5. \(\square \)

We will only work with \(n\)-truncated towers, where \(n=\dim X\). Clearly, a map between \(n\)-truncated towers is the same as a map between the restricted towers \(T(m)\), \(m\le n\). For this reason, it will be possible to represent towers and maps between them in a computer.

Lemma 3.8

A map \(\varphi :S\rightarrow T\) from a 0-truncated tower S to an \(n\)-truncated tower T is determined uniquely by the component \(\varphi (n)\). However, not every such map \(\varphi (n)\) determines a map of towers.

Proof

The components \(\varphi (m)\) with \(m>n\) are determined from \(\varphi (n)\) by the \(n\)-truncatedness of T, while the components \(\varphi (m)\) with \(m<n\) by the 0-truncatedness of S and from the cofibrant replacement functor \((-){}^{\textrm{cof}}\) being faithful. \(\square \)

Theorem 3.9

Let (XA) be a cellular pair. Then there is an isomorphism \([X,Y]^A\cong [X,P(n)]^A\) for \(n\ge \dim X\), where \(\dim X\) is to be interpreted as the highest dimension of a cell in a cellular structure on (XA).

Proof

This is essentially the Whitehead theorem and the usual proof can be adopted. An abstract Whitehead theorem in model categories is proved in [22, Thm. 2.2] and it applies here as well. \(\square \)

We stress however that \(P(n)\) is not fibrant and, thus, the homotopy classes are not represented by maps of diagrams. On the other hand, there is a model structure on the category of towers in which the Postnikov tower and its truncations \({P_{n}}\) are fibrant and thus, unlike for the levels \(P(n)\), homotopy classes will be represented by actual maps of towers to \({P_{n}}\). We will not construct the model structure but give a direct proof of the representation theorem. To make this precise, for a diagram X (i.e., a 0-truncated tower), we specify the homotopy relation on maps of towers \(X\rightarrow {P_{n}}\) to be the homotopy with respect to a cylinder object \(I\times X\) (again a 0-truncated tower associated with \(I\times X\) and where we remind our notation \(I=\varDelta ^1\)). The resulting set of relative homotopy classes will be denoted by \([X,{P_{n}}]^A\).

Theorem 3.10

Let (XA) be a cellular pair. Associating to a map of towers \(\ell \) its \(n\)-th component \(\ell (n)\) induces an isomorphism

$$\begin{aligned}{}[X,{P_{n}}]^A\xrightarrow {\cong }[X(n),P(n)]^{A(n)}\xleftarrow {\cong }[X,P(n)]^A \end{aligned}$$

on the sets of homotopy classes. More precisely, given a homotopy class in \([X,P(n)]^A\) and a representative of its image in \([X,P(n-1)]^A\) by a map of towers \(X\rightarrow {P_{{n}-1}}\) under A, there exists a lift \(X\rightarrow {P_{n}}\), again a map of towers under A, that represents the original homotopy class.

Proof

As usual, it is sufficient to prove the existence part, since the uniqueness is simply the existence of a homotopy.

Firstly, we will construct special fibrant replacements of the Postnikov stages, \(P(n)'\) of \(P(n){}^{\textrm{cof}}\) and \(P(n){}^{\textrm{fib}}\) of \(P(n)\), fitting into the commutative diagram

Proceeding inductively, we let \(P(0)\xrightarrow {\sim }P(0){}^{\textrm{fib}}\) be a fibrant replacement of \(P(0)\), e.g., we can take the identity. In the inductive step, factor the composition \(P(n-1){}^{\textrm{cof}}\xrightarrow {\sim }P(n-1)\xrightarrow {\sim }P(n-1){}^{\textrm{fib}}\) into a trivial cofibration followed by a (necessarily trivial) fibration,

This ensures that \(P(n-1)'\) is indeed fibrant, since it admits a fibration to a fibrant \(P(n-1){}^{\textrm{fib}}\). Using that \({\overline{W}} K(\pi _n,n)\) is fibrant, we obtain a factorization of the Postnikov invariant \({k_{n}}\),

Now we take the pullbacks \(P(n){}^{\textrm{fib}}\) and \(P(n)\) of the Eilenberg–Mac Lane fibration along the above factorization of the Postnikov invariant \({k_{n}}\):

This ensures that \(P(n){}^{\textrm{fib}}\) is indeed fibrant, as it admits a fibration to a fibrant \(P(n-1)'\).

We are now ready to prove the proposition. Let a homotopy class in \([X,P(n)]^A\) be represented by a map \(\psi (n):X(n)\rightarrow P(n){}^{\textrm{fib}}\) under \(A(n)\). Let the image of this homotopy class in \([X,P(n-1)]^A\) be represented by a map of towers \(\ell :X\rightarrow {P_{{n}-1}}\) under A and consider the cofibrant replacement of its top component:

$$\begin{aligned} X(n)=X(n-1){}^{\textrm{cof}}\xrightarrow {\ \ell _{n-1}{}^{\textrm{cof}}\ }P(n-1){}^{\textrm{cof}}. \end{aligned}$$

Then the outer square in

commutes up to homotopy under \(A(n)\), which enables us to replace the map \(\psi (n)\) by a map, homotopic under \(A(n)\), for which this square commutes strictly. Thus, it induces a map \(\ell (n):X(n)\rightarrow P(n)\) under \(A(n)\), and, together with the given \(\ell (m)\), \(m<n\), a map of towers \(X\rightarrow {P_{n}}\), as desired. \(\square \)

Putting these two theorems together, we observe that elements of \([X,Y]^A\) are represented by maps of towers \(X\rightarrow {P_{n}}\) up to homotopy relative to A. It remains to relate \([X,{P_{n}}]^A\) with \([X,{P_{{n}-1}}]^A\) to enable inductive computation.

For the principal \({K_{n}}\)-bundle \({P_{n}}\rightarrow {P_{{n}-1}}\), we will derive an exact sequence of homotopy classes that involves also \([X,{K_{n}}]^A\) and \([X,{{\overline{W}} K_{{n}}}]^A\). Since we represent homotopy classes of maps to Postnikov stages by maps of towers, it will be convenient to do the same for maps into Eilenberg–Mac Lane diagrams:

Lemma 3.11

Let (XA) be a cellular pair. There is an isomorphism

$$\begin{aligned} {[}X,{K_{n}}]^A\cong [X,K(\pi _n,n)]^A \end{aligned}$$

and the homotopy classes are represented both by maps \(X\rightarrow K(\pi _n,n)\) of diagrams under A and by maps \(X\rightarrow {K_{n}}\) of towers under A.

Proof

The representability on the level of diagrams follows from \(K(\pi _n,n)\) being fibrant. Then, by adjunction, we get the first isomorphism in

$$\begin{aligned} {[}X,{K_{n}}]^A=[X,K(\pi _n,n)[n]]^A\cong [X(n),K(\pi _n,n)]^{A(n)}\cong [X,K(\pi _n,n)]^A, \end{aligned}$$

the second follows from homotopy invariance. \(\square \)

3.21 Exact Sequences

We derive a general “exact sequence” that relates the sets of homotopy classes of maps to consecutive stages of a Postnikov tower and that does not depend on the choices of basepoints. As was explained in Sect. 2, the action of \([X,K(\pi _n,n)]^A\) on \([X,P(n)]^A\) has possibly non-trivial stabilizers and set of orbits possibly a proper subset of \([X,P(n-1)]^A\) and the exact sequence captures both the stabilizers and the subset. A sequence is a diagram of the following shape

(3.2)

where \(D,E\) are sets, \(F\) a pointed set with basepoint \(0\in F\), \(H\) a group, and \(G\) a collection of groups \(G_e\) indexed by \(e\in E\). The maps s and t are maps of sets, the arrow at \(D\) denotes an action of \(H\) on \(D\) and \(\varDelta _\bullet \) is a collection of group homomorphisms \(\varDelta _d:G_{s(d)}\rightarrow H\) indexed by \(d\in D\).

Remark 3.12

In fact, the groups \(G_\bullet \) and group homomorphisms \(\varDelta _\bullet \) will not be indexed by elements of \(D\) and \(E\), but rather by elements of some bigger sets \({\mathcal {D}}\) and \({\mathcal {E}}\) that surject onto \(D\) and \(E\). Mathematically, this does not change anything, since the image of \(\varDelta _\bullet \) does not depend on the representative in \({\mathcal {D}}\) and this will be the main object, by the following definition.

Definition 3.13

We say that the above sequence is exact if

  • \(t^{-1}(0)=\mathop {\textrm{im}}\nolimits s\),

  • \(s(d)=s(d')\) if and only if \(d,d'\) lie in the same orbit of the \(H\)-action, i.e., \(d+h=d'\) for some \(h\in H\), and

  • the stabilizer of \(d\in D\) is exactly the image of \(\varDelta _d\).

We may construct out of this sequence an ordinary exact sequence of pointed sets in the following way: choose a basepoint \(d\in D\) and then consider

$$\begin{aligned} G_{s(d)}\xrightarrow {\ \varDelta _d\ }H\xrightarrow {\ a\ }D\xrightarrow {\ s\ }E\xrightarrow {\ t\ }F\end{aligned}$$

with \(a(h)=d+ h\), the action of \(H\) on the fixed element \(d\). It is easily seen to be really exact, where \(G_{s(d)}\) and \(H\) are equipped with the respective zeroes as basepoints, \(D\) with basepoint \(d\), \(E\) with basepoint \(s(d)\), and \(F\) with the given element \(0\in F\).

3.22 Exact Sequence Relating Consecutive Stages

By composing \(\alpha :A\rightarrow Y\) with various maps in the Postnikov tower of Y, we make all

$$\begin{aligned} {P_{n}},{P_{{n}-1}},{WK_{n}},{{\overline{W}} K_{{n}}}\end{aligned}$$

into towers under A, i.e., objects of \(A/\textsf{Tow}\). Further, \({K_{n}}\) is considered as a tower under A via the constant map onto the zero of \({K_{n}}\); more precisely, the constant map onto the zero \(A(n)\rightarrow K(\pi _n,n)\) is adjoint to the required \(A\rightarrow {K_{n}}\). For the purpose of the description of the exact sequence, we will denote maps \(X\rightarrow {P_{{n}-1}}\) by \(\ell _{n-1}\), \(\ell _{n-1}'\), etc. and maps \(X\rightarrow {P_{n}}\) by \(\ell _n\), \(\ell _n'\), etc. Our main exact sequence is

(3.3)

whose only non-trivial object is the collection of groups

$$\begin{aligned} {[}I\times X,{P_{{n}-1}}]^\partial _\bullet :=[I\times X,{P_{{n}-1}}]^{(\partial I\times X)\cup (I\times A)}_\bullet , \end{aligned}$$

indexed by \(e\in [X, {P_{{n}-1}}]^A\), where for each such \(e=[\ell _{n-1}]\), the corresponding group \([I\times X,{P_{{n}-1}}]^\partial _e\) is the group of homotopy classes fixed on each copy of X by \(\ell _{n-1}\) and on \(I\times A\) by the constant homotopy at the given map \(A\rightarrow {P_{{n}-1}}\). (As explained in the above remark, this collection is indexed by actual maps \(\ell _{n-1}:X\rightarrow {P_{{n}-1}}\) rather than the homotopy classes \([\ell _{n-1}]\); this will be important later in the computational part.) The element \(0\in [X,{{\overline{W}} K_{{n}}}]^A\) (the basepoint) is the only homotopy class in the image of \({\delta _{n*}}:[X,{WK_{n}}]^A\rightarrow [X,{{\overline{W}} K_{{n}}}]^A\) (since \({WK_{n}}\) is contractible, there is a unique homotopy class \(X\rightarrow {WK_{n}}\), see Lemma 7.3 for a more precise statement and proof).

The maps \({p_{{n}*}}\) and \({k_{{n}*}}\) are induced by \({p_{n}}\) and \({k_{n}}\), respectively. The action is also induced by the action of \({K_{n}}\) on \({P_{n}}\). It remains to describe the homomorphisms

$$\begin{aligned} \varDelta _{[\ell _n]}:[I\times X,{P_{{n}-1}}]^\partial _{[\ell _{n-1}]}\rightarrow [X,{K_{n}}]^A, \end{aligned}$$

where \(\ell _{n-1}={p_{{n}*}}(\ell _n)\). Starting with a homotopy \(h:I\times X\rightarrow {P_{{n}-1}}\) as above, lift it to a homotopy \({{\widetilde{h}}}:I\times X\rightarrow {P_{n}}\) starting at \(\ell _n\) and relative to A. The restriction \({{\widetilde{h}}}|_{1\times X}^{}\) is then of the form \(\ell _n+\zeta \) for a unique \(\zeta :X\rightarrow {K_{n}}\) (namely, \(\zeta \) is the difference \({{\widetilde{h}}}|_{1\times X}-\ell _n^{}\)) and we set \(\varDelta _{[\ell _n]}[h]=[\zeta ]\).

Proposition 3.14

The above is a well-defined exact sequence.

Proof

The proof in [12, Sect. 5] applies to any principal bundle with a homotopy lifting property for the pair (XA), such as \({K_{n}}\rightarrow {P_{n}}\rightarrow {P_{{n}-1}}\). \(\square \)

3.23 Heaps

In the stable situation \(\dim X\le 2\cdot {\text {conn}}Y\), the set \([X,Y]^A\) is actually an Abelian heap (this is proved later in Theorem 3.15) and we will exploit this structure for the computations. We start with a formal definition of a heap. Intuitively, a heap is a group without a definite choice of zero, so that one has addition with respect to an arbitrary zero.

Definition

A heap is a set S with a ternary operation, denoted by \(x +_p y\) in this paper, that satisfies the identity law

$$\begin{aligned} x+_pp=x=p+_px \end{aligned}$$

together with a “partial para-associative law,” or just associative law,

$$\begin{aligned} (x+_p y)+_qz=x+_p(y+_qz). \end{aligned}$$

It is said to be Abelian if

$$\begin{aligned} x+_py=y+_px. \end{aligned}$$

Given \(p\in S\), we obtain a group structure on S with zero p, addition given by \(x+y=x+_py\) and inverse \(-x=p+_xp\); we denote this group by \(S_p\). It is Abelian if and only if the heap S is Abelian. A different choice of the zero element leads to an isomorphic group, the isomorphism being the translation map \(S_p\rightarrow S_q\), \(x\mapsto x+_pq\). We will not work with heaps directly, but rather we will choose a zero and work with the induced group.

3.24 Exact Sequences of Heaps

Thus, if an exact sequence in the sense of Definition 3.13 consists of Abelian heaps and heap homomorphisms, by choosing basepoints, we obtain an ordinary exact sequence of Abelian groups. Since computations with exact sequences of Abelian groups (and known homomorphisms) are possible, this finishes our mathematical description of the computation of \([X,{P_{n}}]^A\), once we explain how this is an Abelian heap.

3.25 Stability and Abelian Heaps

The (unreduced) suspension \(\varSigma Y\) of a diagram Y is the quotient of \(\varDelta ^1\times Y\) under the identification that squashes each of \(0\times Y\) and \(1\times Y\) separately to a point, i.e., it is the diagram of unreduced suspensions.

Theorem 3.15

Let (XA) be a cellular pair. When \(\dim X\le 2\cdot {\text {conn}}Y\), there is a bijection

$$\begin{aligned} {[}X,Y]^A\cong [\varSigma X,\varSigma Y]^{\varSigma A} \end{aligned}$$

and the set on the right admits a canonical structure of an Abelian heap.

Proof

This is essentially contained in the proof of [22, Thm. 1.1] applied to the category \({\mathcal {M}}=A/{\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) of diagrams under A. More precisely, it is proved in that theorem that \([X,Y]^A\) is isomorphic to \([\varSigma X,\varSigma Y]^{\partial {\mathbb {I}}}\), where \({\mathbb {I}}\) is the suspension of the initial object, i.e., of A, and is thus \(\varSigma A\). Both \(\varSigma X\) and \(\varSigma Y\) are made into diagrams under \(\varSigma A\) in an obvious way by suspending the given maps \(A\rightarrow X\) and \(A\rightarrow Y\). The second statement is a part of [22, Thm. 1.1] and will be explained in greater detail in the proof of Theorem 6.7. \(\square \)

4 Algorithmic Structures on Mathematical Objects

In this section, we deal with algorithmic aspects of the mathematical objects treated in the previous section. First we present our point of view on computations in/with an object like a simplicial set X and introduce various levels of its computability—(weakly) locally effective, effective (and later also homologically effective). As the running time analysis of computations of invariants like \([X,Y]^A\) for a single instance makes little sense, we will have to deal, at least implicitly, with families of inputs for this purpose and this introduces a further layer of complexity into the picture. For this reason, we postpone this undertaking to the very end of this section.

4.1 Computations in Objects vs Computations with Objects

We would like to point out a qualitative difference between two computational problems concerning a simplicial set. The first task is to compute the j-th face or degeneracy of a given simplex and the second is to compute the n-th homology group.

The first problem can quite often be tackled without exact knowledge of the simplicial set in question, e.g., it is computed in exactly the same way in a space and in any of its subspaces; thus, it only concerns a “neighbourhood” of the given simplex and that is why we call it local. If all such local computations are available (in this case, faces and degeneracies), we call a simplicial set locally effective; we give a precise definition later. It is simple to give a similar definition for any algebraic structure—all operations should be computable, e.g., addition, zero and inverse in a locally effective Abelian group etc. In general, we speak of locally effective objects.

On the other hand, the second problem of computing \(H_n\) concerns the whole simplicial set and is thus global. Provided that X is locally effective and that we are given a list of all its (non-degenerate) simplices, we call X effective and for such X it is possible to compute basically anything, including the homology groups. This should be viewed as the strongest version of (global) effectiveness of X.

A general definition of an effective object has the following scheme: We declare certain locally effective objects to be “standard effective objects”, e.g., in the case of Abelian groups these are the products of cyclic groups, and in the model categorical cases these are the cell complexes whose elements are represented uniquely using cells as in Propositions 3.1 and 3.2. Then a general locally effective object is effective if there is provided a computable isomorphism with a standard effective object.

In the last part of the paper, we will use heavily homologically effective chain complexes—these are generalizations of effective chain complexes, where an isomorphism with a standard effective object is replaced by a chain homotopy equivalence.

4.2 Weak Local Effectiveness

There is one more issue that was not apparent for simplicial sets. Our main object is \([X, Y]^A\), the set of homotopy classes of maps and our algorithms naturally work with actual maps, i.e., non-unique representatives of these homotopy classes. We also mention a much simpler example of the group \({\mathbb {Z}}/n\) where, for example, on the level of representatives the addition is the usual addition of integers, regardless of n, and is thus no different from \({\mathbb {Z}}\). Of course, one can make representatives unique if one chooses a set of preferred representatives and output only these in all algorithms; this may sound natural for \({\mathbb {Z}}/n\) but there are no obvious preferred representatives in \([X,Y]^A\) so that the non-unique representation is unavoidable. When speaking about local computations, we were silently assuming that representatives were unique, in which case there is an easy way of distinguishing \({\mathbb {Z}}/n\) from \({\mathbb {Z}}\): pick any non-zero element (assume it is given), multiply it by n and check whether the result is zero. The same works with non-unique representatives if equality is decidable, i.e., if there is provided an algorithm testing whether two inputs represent the same element. If this is the case and all local computations are available, we still call the object locally effective.

Thus, in order to make \([X,Y]^A\) locally effective (even as a set), we would require an algorithm testing whether two maps are homotopic. In fact, such an algorithm exists even non-stably (by the methods of [12]) but is not needed in this paper. We will thus also work with structures where local computations are possible but equality is not necessarily decidable. We call such structures weakly locally effective. (Previously, these were called semi-effective, but since they are weaker than locally effective ones, we decided to change the name.)

We remark that there will be no weakly effective objects, since equality will be decidable in all our standard effective objects and, for effective objects, one can transfer the equality problem along the given isomorphism to a standard effective object.

4.3 Preview on Running Times

Given that an effective Abelian group is a collection of algorithms we would like to clarify on claims concerning the running time of computing \([X,Y]^A\) or, more precisely, the running time of the algorithm giving the isomorphism type of this Abelian group. Practically, and in accordance with our partial implementation within the framework of object-oriented programming, such a computation usually splits into the “construction” of the object \([X,Y]^A\) itself (in OOP terms the call of the constructor) and the call of the responsible function (in OOP terms the call of the “method”); what matters, of course, is the total running time.

We do not specify how to split the computation. One of the options is the lazy implementation where nothing is computed before it is needed. In this extreme case, the construction running time is zero and the running time of the method is the only relevant part. However, in this approach, any required data involving any intermediate step is computed repeatedly from a scratch, and so this does not prescribe a very practical algorithm. In the opposite extreme, the isomorphism type etc. can be computed upon the construction and outputting it via the method then takes very little time. To make our running time analysis simpler, and only for this reason, we will be assuming the lazy implementation, so that the construction time does not enter the analysis.Footnote 9 Thus, our way to prove the polynomiality claim will be to show recursively that all the algorithms comprising any involved computational object (e.g., the Postnikov stage \({P_{n}}\)) run in polynomial time provided that the same is true for all algorithms of all objects used inside this object (e.g., the previous Postnikov stage \({P_{{n}-1}}\)). We will elaborate on this at the end of this section, but it might be helpful to have this goal in mind already now.

4.4 Weakly Locally Effective Sets

Let A be a set. We say A is weakly locally effective if there is given a set \({\mathcal {A}}\) and a surjective map \({\mathcal {A}}\rightarrow A\) (a weakly locally effective representation), denoted \(\alpha \mapsto [\alpha ]\), in such a way that elements of \({\mathcal {A}}\) have a specified representation in a computer (for definiteness, we might assume that elements of \({\mathcal {A}}\) are actual bit strings, but we will not go into such details). A mapping \(f:A\rightarrow B\) between weakly locally effective sets is said to be computable if there is given an algorithm that computes a mapping \(\varphi :{\mathcal {A}}\rightarrow {\mathcal {B}}\) that represents f, i.e., such that \(f([\alpha ])=[\varphi (\alpha )]\).

4.5 Locally Effective Sets

We say that the representation of A is locally effective if there is provided an algorithm that, given \(\alpha ,\beta \in {\mathcal {A}}\), decides whether \([\alpha ]=[\beta ]\). One of the possibilities, occurring frequently in this paper, is that the representation map \({\mathcal {A}}\rightarrow A\) is bijective, i.e., that any element of A has a unique representative.

4.6 (Weakly) Locally Effective Surjections

Before explaining the algebraic examples, we mention a general principle in the computational world: existence should be replaced by computability. This will not be of much concern to us, since algebraic structures are defined by equalities, but when dealing with exactness, surjectivity is crucial. In ordinary mathematics, a mapping \(f:A \rightarrow B\) is surjective if

$$\begin{aligned} \forall \,b\in B\ \exists \,a\in A:\ f(a)=b. \end{aligned}$$

In the computational world, we thus require an algorithm computing, for any \(b \in B\), some preimage \(a\in f^{-1}(b)\). In addition, in the weakly locally effective setup, this is handled on the level of representatives, so that the algorithm computes, for any representative \(\beta \in {\mathcal {B}}\), a representative \(\alpha \in {\mathcal {A}}\) of its preimage, i.e., \(f([\alpha ])=[\beta ]\). We remark, that this computable mapping does not, in general, prescribe a mapping \(B\rightarrow A\), i.e., it may happen that \([\beta ]=[\beta ']\), while for the computed preimages \([\alpha ]\ne [\alpha ']\). For this reason, the computable mapping \({\mathcal {B}}\rightarrow {\mathcal {A}}\) will be called a weak section of \(f:A\rightarrow B\). To summarize, we may say that f is a surjection in the effective setting, if it admits a computable weak section.

4.7 (Weakly) Locally Effective Algebraic Structures

An algebra is a collection of sets and operations among them satisfying certain identities (i.e., an object of some variety of multi-sorted algebras). We then say that it is (weakly) locally effective if all the involved sets are (weakly) locally effective and if all operations are computable. We will now give a detailed definition for the structures used in this paper.

4.8 Abelian Groups

A weakly locally effective Abelian group A is a weakly locally effective set for which the zero, addition and inverse are computable. In more detail we can compute \(o\in {\mathcal {A}}\) such that \([o]=0\), given any \(\alpha ,\beta \in {\mathcal {A}}\) we can compute \(\gamma \in {\mathcal {A}}\) such that \([\gamma ]=[\alpha ]+[\beta ]\) and given any \(\alpha \in {\mathcal {A}}\) we can compute \(\beta \in {\mathcal {A}}\) such that \([\beta ]=-[\alpha ]\),

A weakly locally effective Abelian group is A effective if there is given an isomorphism \(A\cong {\mathbb {Z}}/q_1\oplus \cdots \oplus {\mathbb {Z}}/q_r\), computable together with its inverse. In detail, this consists of

  • an algorithm that outputs a finite list of generators \(a_1,\dots ,a_r\) of A (given by representatives) and their orders \(q_1,\dots ,q_r\in \{2,3,\ldots \}\cup \{0\}\) (where \(q_i=0\) gives \({\mathbb {Z}}/q_i={\mathbb {Z}}\)),

  • an algorithm that, given \(\alpha \in {\mathcal {A}}\), computes integers \(z_1,\dots ,z_r\) so that \([\alpha ]=\sum _{i=1}^rz_ia_i\); each coefficient \(z_i\) is unique within \({\mathbb {Z}}/q_i\).

We will utilize the following lemmas; they were originally given in [3].

Lemma 4.1

(kernel and cokernel)   Let \(f:A\rightarrow B\) be a computable homomorphism of effective Abelian groups. Then both \(\ker (f)\) and \(\mathop {\textrm{coker}}\nolimits (f)\) can be represented as effective Abelian groups.

For the second lemma, we need a definition of exactness in the computational setting. Assuming \(g\circ f=0\), the exactness of a sequence

means surjectivity of the restricted map \(f:A\rightarrow \ker g\). By the above, this condition should be replaced by a computable weak section and we arrive at the following definition.

Definition 4.2

A weakly locally effective short exact sequence is an exact sequence

consisting of weakly locally effective Abelian groups and computable homomorphisms together with computable mappings \(\sigma \) and \(\rho \) such that

  • \(\sigma :{\mathcal {C}}\rightarrow {\mathcal {B}}\) such that \(g([\sigma (\gamma )])=[\gamma ]\) for all \(\gamma \in {\mathcal {C}}\),

  • \(\rho :{\mathcal {B}}\rightarrow {\mathcal {A}}\), defined only on representatives of \(\ker g\), such that \(f([\rho (\beta )])=[\beta ]\).

Lemma 4.3

(short exact sequence)   There is an algorithm that, given a weakly locally effective short exact sequence

with A and C effective, supplies an effective representation of B.

Lemma 4.4

(preimage)   Let \(f:A\rightarrow B\) be a computable homomorphism of effective Abelian groups. Then there is an algorithm that, given \(b\in B\), decides whether it lies in \(\mathop {\textrm{im}}\nolimits f\). If it does, it computes a preimage \(a\in f^{-1}(b)\).

Proof

Compute the images \(f(a_1),\dots ,f(a_r)\) of the generators of A. Next, decide if the equation

$$\begin{aligned} x_1f(a_1)+\cdots +x_rf(a_r)=b \end{aligned}$$

has a solution (this is done by translating to the direct sum of cyclic groups and solving there using the standard methods). If a solution exists, output \(a=x_1a_1+\cdots +x_ra_r\). \(\square \)

Later, the following lemmas will be used in the computation of Bredon cohomology which, in turn, will be useful in describing maps into Postnikov stages.

Lemma 4.5

Let AB be effective Abelian groups. Then \({{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(A,B)\) is an effective Abelian group.

Proof

The proof is not complicated. We will only need the case of A being free Abelian so that \({{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(A,B)\) is a product of copies of B and the result is trivial. \(\square \)

Let \({\mathcal {I}}\) be a fixed finite category and let \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) be a diagram such that every \(\pi (i)\) is effective Abelian and every morphism is a computable homomorphism. We then say that \(\pi \) is an effective diagram of Abelian groups. As a consequence of the previous lemma, we get:

Lemma 4.6

Let \({\mathcal {I}}\) be a fixed finite category and let \(\pi ,\rho \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) be effective diagrams of Abelian groups. Then \(\mathop {{\textrm{Hom}}}\nolimits _{\textsf {Ab} {\text {-}}{\mathcal {I}}}(\rho ,\pi )\) is an effective Abelian group.

Proof

Clearly \({{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(\rho ,\pi )\) is the kernel of the homomorphism

$$\begin{aligned} F:\,\prod _{i\in {\mathcal {I}}}{{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(\rho (i),\pi (i))\;\longrightarrow \!\!\prod _{f:i_0\rightarrow i_1}\!\!{{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(\rho (i_1),\pi (i_0)) \end{aligned}$$

given by

$$\begin{aligned} F(g_i)_{i\in {\mathcal {I}}}=(\pi (f)\hspace{0.49988pt}g_{i_1}-g_{i_0}\rho (f))_{f:i_0\rightarrow i_1} \end{aligned}$$

and as such is effective according to Lemmas 4.54.3, and 4.1 (dealing with \({\textrm{Hom}}\), finite products and kernel, respectively). \(\square \)

4.9 Simplicial Sets

For simplicial sets, we will assume that the representative of each simplex is unique (though, decidable equality should be sufficient).

Definition 4.7

Let X be a simplicial set. We say that X is locally effective if the underlying sets \(X_n\) of n-simplices are locally effective and algorithms are provided computing the faces and degeneracies of any given simplex of X.

We will now use the canonical cellular structure of a simplicial set X to describe a standard representation of a finite simplicial set. We recall that cells are exactly the non-degenerate simplices of X and that any simplex x can be uniquely written as \(x=s_J{\overline{x}}\), a degeneracy of a non-degenerate simplex \({\overline{x}}\). We may then represent x as a pair \((J,{\overline{x}})\), where it is simple to come up with an encoding of a finite index set like J and of a finite number of non-degenerate simplices like \({\overline{x}}\). In order to describe the cellular structure, we need to specify the attaching maps, i.e., for each non-degenerate simplex \({\overline{x}}\), we need to prescribe each of its faces: \(d_i{\overline{x}}=s_J{\overline{y}}\). This then gives enough information for the computation of faces and degeneracies of arbitrary simplices, usign the simplicial identities.

We might call a simplicial set given as above, i.e., via a list \(e_\alpha \) of its non-degenerate simplices and lists of identities of the form \(d_ie_\alpha =s_Je_\beta \) with \(e_\alpha \) and \(e_\beta \) non-degenerate, a standard effective simplicial set. According to this choice, an effective simplicial set is a locally effective simplicial set equipped with an isomorphism, computable in both directions, with a simplicial set as above. Explicitly, this means: there exists an algorithm producing a list of all non-degenerate simplicesFootnote 10 and an algorithm that expresses any given simplex as a degeneracy of a non-degenerate one (though, such an algorithm already follows from local effectivity).

The notion of local effectiveness specializes to diagrams of simplicial sets in the following way:

Definition 4.8

Let \({\mathcal {I}}\) be a finite category. We say that a diagram \(X\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) is locally effective, if, for any object i of \({\mathcal {I}}\), the simplicial set X(i) is locally effective and, for any morphism f of \({\mathcal {I}}\), the map X(f) is computable.

Definition 4.9

A cellular pair (XA) of diagrams of simplicial sets is effective if X is locally effective (and hence also A) and there is given

  • an algorithm that outputs a finite list of cells \(e_\alpha \in X(i_\alpha )\), \(\alpha \in {\mathcal {A}}\);

  • an algorithm that, given a simplex \(e\in X\setminus A\), computes the unique expression

    $$\begin{aligned} e=s_J(f^*(e_\alpha )) \end{aligned}$$

    of Proposition 3.1.

There is a completely analogous definition of a pointwise effective diagram, where the cells generate the individual simplicial sets in the diagram separately, i.e., the expression in the second point is replaced by \(e=s_J(e_\alpha )\).

4.10 Chain Complexes

A chain complex C locally effective if all the chain groups \(C_n\) are locally effective Abelian groups and the differentials are computable. Analogously, a diagram \(C\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) of chain complexes is locally effective if C(i) is locally effective for every object i of \({\mathcal {I}}\) and if C(f) is a computable homomorphism for every morphism f of \({\mathcal {I}}\).

Definition 4.10

A cellular pair \((C,C')\) of diagrams of chain complexes is effective if C is locally effective (and hence also \(C'\)) and there is given

  • an algorithm that outputs a finite list of cells \(c_\alpha \in C(i_\alpha )\), \(\alpha \in {\mathcal {A}}\);

  • an algorithm that, given a chain \(c\in C\), computes the unique expression

    $$\begin{aligned} c\,=\!\!\sum _{\begin{array}{c} \alpha \in {\mathcal {A}}\\ f:i\rightarrow i_\alpha \end{array}}\!\!k_{\alpha ,f}f^*(c_\alpha )\mod C' \end{aligned}$$

    of Proposition 3.2.

The following lemma follows easily from the definitions given in this section.

Lemma 4.11

Let (XA) be a locally effective pair of diagrams of simplicial sets \(A,X\in {\textsf {sSet}} \text {-}{\mathcal {I}}\) and let \(\rho \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) be an effective diagram of Abelian groups. The following hold:

  1. 1.

    If (XA) is effective, then \(C_*(X,A)\) is effective.

  2. 2.

    If (XA) is effective, then \(C^n_{\mathcal {I}}(X,A;\rho )\), \(Z^n_{\mathcal {I}}(X,A;\rho )\), and \(H^n_{\mathcal {I}}(X,A;\rho )\) are effective Abelian groups.

We remark that \(C^*_{\mathcal {I}}(X,A;\rho )\) is not an effective chain complex according to our definition since it does not consist of free Abelian groups.

4.11 Eilenberg–Mac Lane Diagrams

Since the Eilenberg–Mac Lane diagram \(K(\pi ,n)\) has as \(n\)-simplices \((K(\pi ,n))_n\cong \pi \), for a locally effective \(K(\pi ,n)\) the coefficient system \(\pi \) must be locally effective, too. In addition \(\pi \cong H_n(K(\pi ,n))\), so that the (not yet defined) pointwise homologically effective \(K(\pi ,n)\) will have \(\pi \) effective; the converse is also true (this is [5, Theorem 3.16]), but not needed. Since we do not want to introduce another name for locally effective diagrams \(K(\pi ,n)\) with \(\pi \) effective, we will call them pointwise homologically effective; until the construction of the Postnikov tower, the reader may consider these synonymous. The isomorphism

$$\begin{aligned} {\text {map}}\hspace{0.94437pt}((X, A),({\overline{W}}K(\pi ,n),0)\cong Z^{n+1}(X,A;\pi ) \end{aligned}$$

is computable in both directions and so is the one for cochains. When \(\pi \) is effective, we may decide if a cocycle is a coboundary (cochain groups are effective and the differential is computable), so that we may also decide whether a given map \(X\rightarrow {\overline{W}}K(\pi ,n)\), zero on A, lifts to a map \(X\rightarrow WK(\pi ,n)\), zero on A. This will be a crucial ingredient for the computational version of the obstruction theory.

4.12 Cofibrant Replacements

As mentioned in Sect. 3.10, the cofibrant replacement of any diagram is cellular. By the explicit description of the cells, it is clear that the cofibrant replacement of a pointwise effective diagram is effective. We will later see a variation of this result in Proposition 8.10—the cofibrant replacement of a pointwise homologically effective diagram is homologically effective.

4.13 Towers

We will be working only with \(n\)-truncated towers, for \(n\) fixed. In this situation, we may replace all \(n\)-truncated towers by \(n\)-restricted towers. The locally effective towers then have the obvious definition. Of course, locally effective (non-truncated) towers can be defined easily too.

4.14 Postnikov Towers

Theorem 9.2 constructs a pointwise homologically effective \(n\)-restricted Postnikov tower. With the exception of the proof of this theorem, we will only use local effectiveness of the tower and the effectiveness of homotopy groups, as explained in Sect. 4.11—the full strength of pointwise homological effectiveness is employed in the inductive construction of the tower.

4.15 Weakly Locally Effective Exact Sequences

A weakly locally effective collection of groups \(G_\bullet \) is a collection of groups \(G_\varepsilon \), indexed by \(\varepsilon \in {\mathcal {E}}\), together with surjections \({\mathcal {G}}_\varepsilon \rightarrow G_\varepsilon \) that, together, provide a weakly locally effective representation

$$\begin{aligned} {\mathcal {G}}=\coprod {\mathcal {G}}_\varepsilon \rightarrow \coprod G_\varepsilon \end{aligned}$$

Addition in these groups is represented by a computable map \(\coprod {\mathcal {G}}_\varepsilon \times {\mathcal {G}}_\varepsilon \rightarrow \coprod {\mathcal {G}}_\varepsilon \), i.e., \({\mathcal {G}}\times _{\mathcal {E}}{\mathcal {G}}\rightarrow {\mathcal {G}}\), etc. In other words, a single algorithm is required, computing the addition in all the groups in the collection.

Similarly, an effective collection of groups is a weakly locally effective collection of groups that possesses, in addition, an algorithm that computes for any given \(\varepsilon \in {\mathcal {E}}\) a set of generators of \(G_\varepsilon \) together with their orders and also an algorithm that computes the expression of any element of \({\mathcal {G}}\) as an integral combination of these generators.

A computable collection of group homomorphisms \(\varDelta _\delta :G_{\sigma (\delta )}\rightarrow H\), indexed by \(\delta \in {\mathcal {D}}\), is similarly represented by a computable map \({{\widetilde{\varDelta }}}:{\mathcal {D}}\times _{\mathcal {E}}{\mathcal {G}}\rightarrow {\mathcal {H}}\), taking a pair \((\delta ,\alpha )\) to a representative of \(\varDelta _\delta ([\alpha ])\).

A weakly locally effective sequence is

where \(D,E\) are weakly locally effective sets, \(F\) a weakly locally effective pointed set with basepoint \([o]\in F\), \(H\) a weakly locally effective group and \(G_\bullet \) a weakly locally effective collection of groups \(G_\varepsilon \) indexed by \(\varepsilon \in {\mathcal {E}}\). The maps s and t are computable maps of sets, represented by \(\sigma \) and \(\tau \), the arrow at \(D\) denotes a computable action of \(H\) on \(D\) and \(\varDelta _\bullet \) is a computable collection of group homomorphisms \(\varDelta _\delta :G_{\sigma (\delta )}\rightarrow H\) indexed by \(\delta \in {\mathcal {D}}\).

A weakly locally effective exact sequence is a weakly locally effective sequence in which the following algorithms are provided, parallel to Definition 3.13:

  • for \(\varepsilon \in {\mathcal {E}}\) such that \(t[\varepsilon ]=0\), compute \(\delta \in {\mathcal {D}}\) such that \(s[\delta ]=[\varepsilon ]\),

  • for \(\delta ,\delta '\in {\mathcal {D}}\) such that \(s[\delta ]=s[\delta ']\), compute \(\beta \in {\mathcal {H}}\) such that \([\delta ]+[\beta ]=[\delta ']\),

  • for \(\delta \in {\mathcal {D}}\) and \(\beta \in {\mathcal {H}}\) such that \([\delta ]+[\beta ]=[\delta ]\), compute \(\alpha \in {\mathcal {G}}_{\sigma (\delta )}\) such that \([\beta ]=\varDelta _\delta [\alpha ]\).

Remark 4.12

These algorithms are all the effective versions of certain natural surjections (i.e., computable weak sections of these surjections):

  • the restriction \(s:D\rightarrow t^{-1}(0)\),

  • the collection, indexed by \(\delta \), of the action maps \(H\rightarrow s^{-1}(s[\delta ])\), \(h\mapsto [\delta ]+h\),

  • the collection, indexed by \(\delta \), of the maps \(\varDelta _\delta :G_{\sigma (\delta )}\rightarrow \mathop {\textrm{St}}\nolimits [\delta ]\) to the stabilizer group of \([\delta ]\) under the action of H.

Assuming that all terms are weakly locally effective Abelian heaps and a basepoint \([\delta ] \in D\) is computable, we will obtain a weakly locally effective exact sequence of Abelian groups in the sense of Sect. 4.8, details are given in the proof of Theorem 7.5.

4.16 Running Times and Parametrized Effectivity

We will now comment on our approach to the computational complexity of algorithms, a somewhat simplified version of [5, 6]. We will explain this on the algorithm \(H_n\) computing, for a given finite simplicial set X, its \(n\)-th homology group \(H_nX\). Of course, this algorithm is quite simple—setup the chain complex of X and compute its homology using the Smith normal form. The main point, however, is that the algorithm uses as subroutines the algorithms computing the faces of X and also other algorithms of X (its effective structure); otherwise, the algorithm is exactly the same for all simplicial sets. Therefore, the running time of \(H_nX\) depends (heavily) on the running times of the algorithms of X and as such should be treated as a function of these running times. We have decided not to formalize this approach and, instead, we formulate our statements in the following vein: If all the algorithms of X run in polynomial time then so do the algorithms of \(H_nX\)—here, the algorithms for X are those of an effective simplicial set, while those for \(H_nX\) are those of an effective Abelian group; this involves, in particular, the algorithm outputting the isomorphism type.

Clearly, when speaking about the complexity of computing \(H_nX\), we must consider a class of simplicial sets and X should then be treated as an argument of \(H_n\). Technically, we consider X to be parametrized by a parameter that involves all the data needed for the computations inside X(p): a number of options is possible, e.g., one can specify a finite simplicial complex by the collection of its maximal simplices, one can specify a finite simplicial set as in Sect. 4.9 by the collection of its non-degenerate simplices and their faces, one can specify the Eilenberg–Mac Lane space \(K(\pi ,n)\) via the group \(\pi \) (the list of the orders of its cyclic summands), etc. The face operator \(d_j\) in all the simplicial sets X(p) of a given class will be required to be computed by a single algorithm that takes p as an extra argument, i.e., \(d_j(p,x)\) computes the j-th face of the simplex \(x\in X(p)\). We will then say that X is a family of simplicial sets. We thus have a family of finite simplicial complexes, a family of finite simplicial sets, a family of Eilenberg–Mac Lane spaces \(K(\pi ,n)\) (for all finitely generated Abelian groups \(\pi \)), etc.

Definition 4.13

Generally, our computational objects consist of a mathematical object and a set of algorithms. Denoting by \({\mathcal {C}}\) the class of all such computational objects, the individual objects will be referred to as \({\mathcal {C}}\)-objects and the required algorithms as \({\mathcal {C}}\)-algorithms.

Thus, to give a \({\mathcal {C}}\)-object (e.g., a weakly locally effective Abelian group), we need to supply a full set of \({\mathcal {C}}\)-algorithms for it (e.g., addition, etc.). As explained above, we have an obvious notion of a family of \({\mathcal {C}}\)-objects, where an extra parameter is added.

Definition 4.14

We say that a given \({\mathcal {C}}\)-object is polynomial time if all the involved \({\mathcal {C}}\)-algorithms have polynomial running time. Similarly, there is a notion of a polynomial time family of \({\mathcal {C}}\)-objects.

Definition 4.15

A (computable) construction \(F:{\mathcal {C}}\rightarrow {\mathcal {D}}\) is a mapping on the level of mathematical objects (generally multi-valued) together with a full set of \({\mathcal {D}}\)-algorithms that are allowed to use formal calls to \({\mathcal {C}}\)-algorithms. In this way, a \({\mathcal {C}}\)-object X gives rise to a \({\mathcal {D}}\)-object \(F_*X\), by replacing the formal calls by calls to the actual \({\mathcal {C}}\)-algorithms of X. We say that this construction is polynomial time, if it preserves polynomial time objects, i.e., X polynomial time \(\Rightarrow \) \(F_*X\) polynomial time.

Thus, a construction is like a \({\mathcal {D}}\)-object modulo \({\mathcal {C}}\)-algorithms and as such is suited for studying running times recursively. The following proposition, while very simple to prove, summarizes our approach to the running time analysis and explains why we do not have to deal with families of objects explicitly.

Proposition 4.16

When X is a family of \({\mathcal {C}}\)-objects, \(F_*X\) is a family of \({\mathcal {D}}\)-objects. Assuming F to be a polynomial time construction, if X is a polynomial time family, then so is \(F_*X\).

With these notions at hand, we may simply say that the kernel is a polynomial time construction. However, we note that the name “kernel” only describes the mathematical part of the objects, thus we have to further specify the involved algorithms, i.e., that it takes a computable homomorphism between effective Abelian groups and gives an effective Abelian group.

Remark 4.17

In this way, for different families of homomorphisms, we get different families of kernels, i.e., the actual codes will differ, although only in the involved calls, so that this approach leads to code duplication. Of course, there are standard ways of dealing with this problem and we will not comment on this further.

As a corollary, the \(n\)-th homology group \(C \mapsto H_n(C)\) is a polynomial time construction (from effective chain complexes to effective Abelian groups) and so is the total homology \(C \mapsto H_*(C)\) valued in effective graded Abelian groups. However, the running times of our algorithms are very sensitive to dimension, so that we will need to truncate all objects. Similarly, the association

$$\begin{aligned} (0\rightarrow A\rightarrow B\rightarrow C\rightarrow 0)\ \longmapsto \ B \end{aligned}$$

from weakly locally effective exact sequences with the outer groups effective to effective Abelian groups is a polynomial time construction. The preimage is interpreted as an association

$$\begin{aligned} (f:A\rightarrow B,\,b\in B)\ \ \longmapsto \ \ a \end{aligned}$$

that is multi-valued, with the possibility of having no value at all (if b does not lie in the image of f). As such, it is again a polynomial time construction.

Remark 4.18

In a family of weakly locally effective collections of groups and also in a family of computable collections of group homomorphisms, there are then employed two levels of parameters—one coming from it being a family and the other from it being a collection. We will explain this on the example of the exact sequence (3.3): The map \({\widetilde{\varDelta }}\) takes as arguments pairs \((\ell _n,h)\) with \(\ell _n:X\rightarrow {P_{n}}\) and \(h:I\times X\rightarrow {P_{{n}-1}}\) a homotopy \({p_{n}}\ell _n\sim {p_{n}}\ell _n\), relative to A; note that the conditions on h depend on the parameter \(\ell _n\). In the setting of families, \({\widetilde{\varDelta }}\) takes an extra argument p that specifies X, Y, etc.: clearly, the conditions on \(\ell _n\) depend on this extra parameter, so that the arguments dependences are \((p,\ell _n(p),h(p,\ell _n(p)))\) and the two parameter levels are not independent.

5 Proof of the Main Theorem

Now that we have defined the main notions, we are able to give a more detailed outline of the proof together with references to the appropriate statements forming the steps in the proof.

Theorem 3.15 reduces the computation of \([X,Y]^A\) to that of the Abelian heap \([\varSigma X,\varSigma Y]^{\varSigma A}\). Then, according to Theorem 3.9, we may replace \(\varSigma Y\) by its Postnikov stage \(P(n)\), as long as \(n\ge \dim \varSigma X=1+\dim X\). We will thus compute

$$\begin{aligned} {[}\varSigma X,P(n)]^{\varSigma A} \end{aligned}$$

inductively and finish with \(n=1+\dim X\). According to Theorem 3.10, we further replace \(P(n)\) by the truncated tower \({P_{n}}\), so that we are left to compute inductively

$$\begin{aligned} {[}\varSigma X,{P_{n}}]^{\varSigma A} \end{aligned}$$

(this, generally non-Abelian, heap is in fact computable even without the stability assumption, using methods of this paper together with those of [12]).

A pointwise homologically effective Postnikov system is constructed in Theorem 9.2. Theorem 6.7 then equips each \([\varSigma X,{P_{n}}]^{\varSigma A}\) with a weakly locally effective Abelian heap structure and these are organized in an exact sequence (3.3), which is weakly locally effective by Theorem 7.2 and by induction. Finally, the algorithm of Theorem 7.5 either finds out that \([\varSigma X,{P_{n}}]^{\varSigma A}\) is empty or equips this set with a structure of an effective Abelian group.

To set up the full computational strength of the main exact sequence, we will need to lift maps along the stages of the Postnikov tower. This is classically handled by the obstruction theory and we will thus have to develop its computational version. The importance of the suspension as a domain will come into the play at the very end; for this reason, we will work all the time with homotopy classes of maps from X to a Postnikov tower P of Y but with a view of applying the machinery to \(\varSigma X,\varSigma Y\) as explained above.

5.1 Running Times

All the results invoked in the above proof are described as polynomial time constructions of Definition 4.15. Thus, so is their composition

$$\begin{aligned} (A\subseteq X,Y,\,f:A\rightarrow Y)\ \longmapsto \ [X,Y]^A \end{aligned}$$

landing in the class of effective Abelian groups. Proposition 4.16 then shows that any polynomial time family of the input data produces a polynomial time family of the outputs. This holds regardless of an explicit way of encoding the input diagrams and maps, it is only required that all the (obvious) tasks should be computable in polynomial time; on the other hand, we outlined in Sect. 4.16 a simple way of encoding finite simplicial sets and this can be easily extended to finite diagrams of finite simplicial sets. Through this encoding (or any other), we thus obtain a concrete realization of our algorithm that is polynomial time.

6 Computational Obstruction Theory

Assumption 6.1

We will assume throughout this section that the Postnikov system \(\varphi :Y\rightarrow P\) is pointwise homologically effective; later, this will be strengthened but at this point we will make do with P being locally effective and all diagrams of homotopy groups being effective. In addition, we will assume that (XA) is an effective pair of diagrams.

For running time analysis, we have to fix a bound on the dimensions of all objects. In this case, one should read all of the statements below as describing polynomial time constructions. That is, given that the pointwise homologically effective Postnikov system is polynomial time, as well as all the additional input data in the statements, the same holds for the output.

We will now describe (effective) obstruction theory for diagrams: in order to lift a homotopy class in \([X,{P_{{n}-1}}]^A\) to a homotopy class in \([X,{P_{n}}]^A\), we represent the original homotopy class by a map of towers \(X\rightarrow {P_{{n}-1}}\) under A so that we get, according to Theorem 3.10, to the following equivalent situation.

Proposition 6.2

Under Assumption 6.1, there is an algorithm that, given a computable commutative square of towers

figure b

decides whether an indicated lift exists. If it does, it computes one. If \(H^{n+1}(X,A;\pi )\)\(=0\), then such a lift is guaranteed to exist.

Proof

Since \({p_{n}}\) is a pullback of \({\delta _n}\), we obtain an equivalent lifting problem

By adjunction between \((n)\) and \([n]\), this is further equivalent to the corresponding lifting problem at level \(n\):

This lifting problem is translated to a cohomological problem in \(C^{n+1}(X(n),A(n);\pi _n)\) as usual—Lemma 6.3 makes this translation and solves the cohomological problem. Finally, since \(P(n)\) is a pullback in the right hand side square by Lemma 3.7, it is easy to compute a lift \(X(n)\rightarrow P(n)\), and thus \(X\rightarrow {P_{n}}\), from the lift in the composite square. \(\square \)

Lemma 6.3

There is an algorithm that, given an effective pair of diagrams \((X',A')\), an effective diagram of Abelian groups \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) and a computable commutative square of diagrams

figure c

decides whether an indicated lift exists. If it does, it computes one. If \(H^{n+1}(X',A';\pi )\)\(=0\), then a lift exists for every c and z.

Proof

Thinking of c as a cochain in \(C^n(A';\pi )\), we extend it to a cochain on \(X'\) by mapping all n-cells not in \(A'\) to zero. This prescribes a map \({{\widetilde{c}}}:X'\rightarrow WK(\pi ,n)\) that is a solution of the lifting-extension problem from the statement for z replaced by \(\delta {{\widetilde{c}}}\). Since the lifting-extension problems and their solutions are additive, one may subtract this solution from the previous problem and obtain an equivalent lifting-extension problem

figure d

A solution of this problem is a relative cochain \(c_0\) whose coboundary is \(z_0=z-\delta {{\widetilde{c}}}\) (this \(c_0\) yields a solution \({{\widetilde{c}}}+c_0\) of the original problem). Since \(C_*(X',A')\) is effective, such a \(c_0\) is computable whenever it exists (and it always exists in the case \(H^{n+1}(X',A';\pi )=0\)). \(\square \)

Whenever \(C_*(X, A)\) is acyclic, there exists a contraction of \(C_*(X,A)\) (see Proposition 8.11 and recall that (XA) is assumed to be effective) and therefore its cohomology groups with arbitrary coefficients are zero. Thus, in this situation, all possible obstructions are zero and we may proceed inductively, using Proposition 6.2, to lift through arbitrary number of stages. As special cases, we obtain the following two results.

Proposition 6.4

(homotopy lifting)   Under Assumption 6.1, given a computable commutative square

figure e

it is possible to compute a lift. In other words, one may lift homotopies in Postnikov towers algorithmically.

Proof

The chain complex \(C_*(I\times X,(0\times X)\cup (I\times A))\simeq C_*(I,0)\otimes C_*(X,A)\) is acyclic, since \(C_*(I,0)\) is. \(\square \)

The second result concerns algorithmic concatenation of homotopies. Let denote the first horn in the standard 2-simplex \(\varDelta ^{2}\), i.e., the simplicial subset of the standard simplex \(\varDelta ^{2}\) spanned by the faces \({\text {face}}_{01}\) and \({\text {face}}_{12}\), where \({\text {face}}_{jk}\cong I\) denotes the subsimplex with vertices jk. Given two homotopies \(h_2,h_0:I\times X\rightarrow Y\) that are compatible, in the sense that \(h_2\) is a homotopy from \(\ell _0\) to \(\ell _1\) and \(h_0\) is a homotopy from \(\ell _1\) to \(\ell _2\), one may prescribe a map as \(h_2\) on \({\text {face}}_{01}\times X\) and as \(h_0\) on \({\text {face}}_{12}\times X\). If this map has an extension \(H:\varDelta ^{2}\times X\rightarrow Y\), then the restriction of H to \({\text {face}}_{02}\times X\) gives a homotopy from \(\ell _0\) to \(\ell _2\), which can be thought of as a concatenation of \(h_2\) and \(h_0\). We will need the following effective, relative version; the proof is entirely analogous to that of the previous proposition and we omit it.

Proposition 6.5

(homotopy concatenation)   Under Assumption 6.1, given a compu-table commutative square

it is possible to compute a lift. In other words, one may concatenate homotopies in Postnikov towers algorithmically.

Since the algorithm takes the restrictions of homotopies to \((\partial I\times X)\cup (I\times A)\) as an input, we obtain a corollary:

Corollary 6.6

Under Assumption 6.1, \([I\times X,{P_{{n}-1}}]^A_\bullet \) is a weakly locally effective collection of groups.

In the case that the homotopies are not relative, i.e., constant on A, it is not possible to concatenate and we only get a heap structure.

Theorem 6.7

Under Assumption 6.1, it is possible to equip \([\varSigma X,{P_{n}}]^{\varSigma A}\) with a weakly locally effective Abelian heap structure.

Proof

There is an obvious isomorphism coming from the definition of a suspension as a quotient of the cylinder:

$$\begin{aligned} {[}\varSigma X,{P_{n}}]^{\varSigma A}\cong [I\times X,{P_{n}}]^{(\partial I\times X)\cup (I\times A)} \end{aligned}$$

(in fact, the right hand side is slightly more general in that it allows the maps to be fixed on the two ends of the cylinder in a non-constant way). In accordance with Theorem 3.10, we will work with maps of towers \(I\times X\rightarrow {P_{n}}\) under the appropriate subspaces. Given three maps of towers \(\ell _1{},\,o{},\,\ell _2:I\times X\rightarrow {P_{n}}\), we organize them into a single map

$$\begin{aligned} ({\text {face}}_{13}\times X)\cup ({\text {face}}_{12}\times X)\cup ({\text {face}}_{02}\times X)\xrightarrow {\ (\ell _1,o,\ell _2)\ }{P_{n}}\end{aligned}$$

and we note that the tower on the left is \(({\text {face}}_{13}\cup {\text {face}}_{12}\cup {\text {face}}_{02})\times X\).

Together with the composite

$$\begin{aligned}\varDelta ^{3}\times A\xrightarrow {\ s^0s^2\times \mathop {\textrm{id}}\nolimits \ }I\times A\longrightarrow {P_{n}}\end{aligned}$$

(the first map takes vertices \(0,1\in \varDelta ^{3}\) to the vertex \(0\in I\) and vertices \(2,3\in \varDelta ^{3}\) to \(1\in I\), while the second map is the common restriction of \(\ell _1,o,\ell _2\)), these describe the top map in the diagram

An extension can be computed inductively using Proposition 6.2 as in the previous special cases and its restriction to \({\text {face}}_{03}\times X\), denoted by \(\ell \) in the above picture, gives a representative of \([\ell _1]+_{[o]}[\ell _2]\). It is standard that the resulting map \(\ell \) is unique up to homotopy relative to \((\partial I\times X)\cup (I\times A)\). \(\square \)

We remark that, as a slight simplification, it is enough to extend first to the face \({\text {face}}_{123}\times X\) and then to \({\text {face}}_{023}\times X\) in order to obtain \(\ell \).

7 An Exact Sequence and the Inductive Computation

Assumption 7.1

In addition to Assumption 6.1, we require the inductive hypothesis that \([I\times X,P_{m}]^\partial _\bullet \) is an effective collection of Abelian groups, for all \(m<n\). In fact, this holds even without the stability assumption, although these groups are generally not Abelian but only polycyclic, see [12]. Again, once a bound on the dimensions of all objects is fixed, all the theorems prescribe polynomial time constructions, i.e., if all the inputs are assumed to be polynomial time, the same holds for the output.

We recall the exact sequence (3.3):

Theorem 7.2

Under Assumption 7.1, the above is a weakly locally effective exact sequence.

Proof

All terms are represented by maps of towers. This is covered by Theorem 3.10 and Lemma 3.11. The computability of various maps in the diagram is clear and the weak locally effective group structure on the first term is provided by Corollary 6.6. The computability of the basepoint of the last term follows from Lemma 7.3, since the basepoint is given as an arbitrary composition \(X\rightarrow {WK_{n}}\xrightarrow {{\delta _n}}{{\overline{W}} K_{{n}}}\).

A weak section of \({p_{{n}*}}\) is computed by lifting a map \(\ell _{n-1}:X\rightarrow {P_{{n}-1}}\) to \({P_{n}}\), using Proposition 6.2. A weak section of \(\varDelta _\bullet \) is computed as follows: given \(\ell _n:X\rightarrow {P_{n}}\) and \(\zeta :X\rightarrow {K_{n}}\) such that \(\ell _n\sim \ell _n+\zeta \), compute such a homotopy h using Lemma 7.4 and project it to \({P_{{n}-1}}\) to obtain a preimage \({p_{n}}h\), according to \(\varDelta _{[\ell _n]}[{p_{n}}h]=[\zeta ]\). A weak section for the action is computed by a combination of the previous ingredients: given \(\ell _n,\ell _n'\) such that \({p_{n}}\ell _n\sim {p_{n}}\ell _n'\), compute such a homotopy h using Lemma 7.4 and lift it, using Proposition 6.4 to a homotopy \(\ell _n+\zeta \sim \ell _n'\) to obtain a preimage \(\zeta \), according to \([\ell _n]+[\zeta ]=[\ell _n']\). \(\square \)

Lemma 7.3

For any effective pair (XA) of diagrams and any computable map \(A\rightarrow {WK_{n}}\), we have \([X,{WK_{n}}]^A=*\) and a representative can be computed algorithmically.

Proof

We have \([X,{WK_{n}}]^A\cong [X(n),WK(\pi _n,n)]^{A(n)}\). For any cellular \(A'\rightarrow X'\) the extension problem

is solvable—it just means that any cochain in \(C^n(A';\pi )\) extends to a cochain in \(C^n(X';\pi )\); any such extension is determined by the images of the cells of \(X'\setminus A'\), e.g., we may assign them the zero value.

Applying this to \(A(n)\rightarrow X(n)\) and to \((\partial \varDelta ^1\times X(n))\cup (\varDelta ^1\times A(n))\rightarrow \varDelta ^1\times X(n)\) yields the existence of a map and the existence of a relative homotopy between any two such maps. \(\square \)

Lemma 7.4

An algorithm exists, computing for any given representatives \(\ell _n,\ell _n'\) with \([\ell _n]=[\ell _n']\in [X,{P_{n}}]^A\) a homotopy \(\ell _n\sim \ell _n'\) relative to A.

Proof

Given \(\ell _n:X\rightarrow {P_{n}}\), we define \(\ell _m\) to be the composition of \(\ell _n\) with the canonical projection \({P_{n}}\rightarrow P_{m}\). We proceed by induction on the height \(m\) of the Postnikov tower to compute a homotopy \(h_m:\ell _m\sim \ell _m'\). When a homotopy \(h_{m-1}:\ell _{m-1}\sim \ell _{m-1}'\) has been computed, we lift it, using Proposition 6.4, to a homotopy \({{\widetilde{h}}}_{m-1}:\ell ''_m\sim \ell _m'\) from some map \(\ell ''_m\) lying over \(\ell _{m-1}\). Then \(\ell ''_m=\ell _m+\zeta _m\) for a unique \(\zeta _m:X\rightarrow {K_m}\), namely \(\zeta _m=\ell ''_m-\ell _m\).

Since Proposition 6.5 provides algorithmic means for concatenating homotopies, it remains to construct a homotopy \(h'_m:\ell _m\sim \ell ''_m\). Consider the connecting homomorphism in (3.3) for stages \(P_{m-1}\) and \(P_{m}\), i.e.,

$$\begin{aligned} \varDelta _{\ell _m}:[I\times X,P_{m-1}]^\partial \longrightarrow [X,{K_m}]^A. \end{aligned}$$

From the exactness of (3.3) and from \(\ell _m\sim \ell _m'\sim \ell ''_m=\ell _m+\zeta _m\), it follows that \([\zeta _m]\) lies in the image of \(\varDelta _{\ell _m}\). Since the target is effective by Lemma 7.8, the algorithm of Lemma 4.4 then computes some \(h_{m-1}'\) such that \(\varDelta _{\ell _m}[h_{m-1}']=[\zeta _m]\).

It is then easy to see (cf. [12, Prop. 7]) that the required homotopy \(h'_m:\ell _m\sim \ell ''_m\) can be computed as a lift of the homotopy \(h_{m-1}'\) as in (i.e., both ends of \(h_m'\) prescribed):

Proposition 6.2 provides an algorithm for the computation of \(h_m'\) and the proof is finished. \(\square \)

Theorem 7.5

Under Assumption 7.1, if the main exact sequence consists of weakly locally effective Abelian heaps and heap homomorphisms and if \([X,{P_{{n}-1}}]^A\) is equipped with an effective Abelian group structure, then it is possible to algorithmically decide whether \([X,{P_{n}}]^A\) is non-empty and, if this is the case, further equip \([X,{P_{n}}]^A\) with an effective Abelian group.

Remark 7.6

Our proof of the main theorem replaces the computation of \([X, Y]^A\) by that of \([\varSigma X,P_{n}^{\varSigma Y}]^{\varSigma A}\), for \(n\ge 1+\dim X\), with \(P_{n}^{\varSigma Y}\) the Postnikov stage of \(\varSigma Y\), and then utilizes the above theorem, since the latter carries a natural weakly locally effective heap structure by Theorem 6.7. It is also possible to put a weakly locally effective heap structure directly on \([X,P_{n}^{Y}]^A\), with \(P_{n}^{Y}\) the Postnikov stage of Y; namely, it is possible to construct a weak H-space structure (or rather a heap version of an H-space structure) on the Postnikov stage \(P^{Y}\), under the assumption \(n\le 2\cdot {\text {conn}}Y\). The advantage of this approach is that we need only \(\dim X\) stages of the Postnikov tower \(P_{n}^{Y}\) and we believe that this should make the resulting algorithm faster in practice. We have decided to use the suspension \(\varSigma Y\) mainly for the simplicity of the heap operation.

We now proceed with a few preliminary results needed for the proof of Theorem 7.5.

7.1 Translating Zero

Let S be a group and \(p\in S\) an element. We define a new group structure on S, denoted by \(S_p\), by declaring the right translation \(S\rightarrow S_p\), \(x\mapsto x+p\), to be an isomorphism. Consequently, \(S_p\) has zero p, addition \(x+_py=x-p+y\) and inverse \(-_px=p-x+p\).

Proposition 7.7

If the group S is weakly locally effective or effective, then so is \(S_p\).

Proof

The weak local effectiveness is obvious from the formulas. If S is effective with generators \(a_i\) of orders \(q_i\), then \(S_p\) is effective with generators the translates \(a_i+p\) of the same orders \(q_i\). An expression of a as an integral combination in \(S_p\) is obtained by translating to S, i.e., by computing the coefficients of \(a-p\) as an integral combination of the \(a_i\) in S. \(\square \)

Before starting the proof of Theorem 7.5, we prove the full effectivity of the cohomology groups of an effective pair (XA). This will be the basic building stone.

Lemma 7.8

Let (XA) be an effective pair of diagrams. Let \(c:A\rightarrow WK(\pi ,n)\) be a fixed computable map and make \({\overline{W}} K(\pi ,n)\) into a diagram under A via \(\delta c\). Then it is possible to equip \([X,{\overline{W}} K(\pi ,n)]^A\) with a structure of an effective Abelian group; the elements are represented by maps \(X\rightarrow {\overline{W}} K(\pi ,n)\) whose restriction to A equals \(\delta c\).

Proof

According to Lemma 7.3, the set \([X,WK(\pi ,n)]^A\) has a single element, obtained by extending c to a map \({{\widetilde{c}}}:X\rightarrow E(\pi ,n)\) and, thus, there is a well-defined element \([\delta {{\widetilde{c}}}]\in [X,{\overline{W}} K(\pi ,n)]^A\); it will serve as the zero of the group. Denoting the group from the statement temporarily by \([X,{\overline{W}} K(\pi ,n)]^{A,c}\) to stress the chosen map c, we have an isomorphism

$$\begin{aligned} {[}X,{\overline{W}} K(\pi ,n)]^{A,c}\cong [X,{\overline{W}} K(\pi ,n)]^{A,0},\quad [z]\mapsto [z-\delta {{\widetilde{c}}}], \end{aligned}$$

computable together with its inverse. We will thus assume from now on that \(c=0\) and drop it again from the notation. In this situation we have an isomorphism

$$\begin{aligned} {[}X,{\overline{W}} K(\pi ,n)]^A\cong H^{n+1}(X,A;\pi ) \end{aligned}$$

computable in both directions. Since the cochain complex

$$\begin{aligned} C^*(X,A;\pi )={{\,\mathrm{Hom\hspace{0.7222pt}}\,}}(C_*(X,A),\pi ) \end{aligned}$$

clearly consists of effective Abelian groups and since these are closed under subgroups and quotients, the cohomology group is also effective. \(\square \)

The proof of Theorem 7.5 consists of two main steps.

7.2 Computing the Basepoint of \([X,{P_{n}}]^A\)

Since the group \([X,{P_{{n}-1}}]^A\) is effective, it is equipped with a zero \([o_{n-1}]\). We first solve the problem of choosing a zero \([o_n]\in [X,{P_{n}}]^A\).

Considering the set \([X,{{\overline{W}} K_{{n}}}]^A\) of homotopy classes of maps whose restriction to A equals \({\delta _n}{q_{n}}{f_{n}}\), and equipping it with zero \([{k_{n}}{o_{n-1}}]\), the map \({k_{{n}*}}:[X,{P_{{n}-1}}]^A\rightarrow [X,{{\overline{W}} K_{{n}}}]^A\) becomes a computable homomorphism between effective Abelian groups. We remark that the zero \([{k_{n}}{o_{n-1}}]\) is generally different from the natural zero exhibited in the proof of Lemma 7.8—we will denote this natural zero by 0.

According to Lemma 4.4, it is possible to decide whether 0 lies in the image of \({k_{{n}*}}\) and compute some \(o_{n-1}'\) such that \({k_{{n}*}}[o_{n-1}']=0\). Then, using Proposition 6.2, it is possible to lift \(o_{n-1}':X\rightarrow {P_{{n}-1}}\) to a map \(o_n:X\rightarrow {P_{n}}\) that will represent our new basepoint \([o_n]\in [X,{P_{n}}]^A\). If 0 does not lie in the image of \({k_{{n}*}}\) then \([X,{P_{n}}]^A\) is empty.

7.3 Making \([X,{P_{n}}]^A\) Effective

Having computed \([o_n]\), our general exact sequence (3.3) becomes, under our assumptions, an exact sequence of Abelian groups, that can be easily transformed into a short exact sequence

By Lemma 4.1, both \(\mathop {\textrm{coker}}\nolimits \varDelta _{o_n}\) and \(\ker {k_{{n}*}}\) are effective. Since the indicated weak sections are induced by those of (3.3), Lemma 4.3 applies and \([X,{P_{n}}]^A\) becomes effective.

8 Effective Homological Algebra

8.1 Homologically Effective Diagrams

In this section, we define homologically effective diagrams of chain complexes and simplicial sets, introduced originally in the article [10] under the name of diagrams with effective homology, and describe several constructions with such diagrams. We begin by introducing reduction and strong equivalence of diagrams:

Definition 8.1

Let \({C},{C}'\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) be diagrams of chain complexes. A reduction \({C}\Rightarrow \!\!\!\!\Rightarrow {C}'\) is a triple of natural transformations \((\alpha ,\beta ,\eta )\)

such that \(\alpha \) and \(\beta \) are chain maps satisfying the following conditions:

$$\begin{aligned} \eta \beta =0,\quad \alpha \eta =0,\quad \eta \eta =0,\quad \alpha \beta =\mathop {\textrm{id}}\nolimits ,\quad \partial \eta +\eta \partial =\mathop {\textrm{id}}\nolimits -\beta \alpha . \end{aligned}$$
(8.1)

One of the most important and well-known examples of a reduction is the following, first given in [7, 8]:

Example 8.2

(Eilenberg–Zilber reduction)   Let XY be simplicial sets. Then there is a reduction

$$\begin{aligned} C_*(X \times Y)\Rightarrow \!\!\!\!\Rightarrow C_*(X)\otimes C_*(Y). \end{aligned}$$

The operators in the reduction data can be computed using the acyclic models theorem as e.g., in [16, Chapter 28] and they are not unique. We will further use the reduction data presented in [7, Thm. 2.1a]. An important observation is that the operators of the reduction data are based on the face and degeneracy maps which means that the reduction is functorial in simplicial sets, so that the above example extends to diagrams of simplicial sets.

Definition 8.3

A strong equivalence \({C}\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow {C}'\) of diagrams of chain complexes is defined as a span of reductions \({C}\Leftarrow \!\!\!\!\Leftarrow {\widehat{{C}}}\Rightarrow \!\!\!\!\Rightarrow {C}'\).

Strong equivalences of diagrams can be composed as in the case of strong equivalences of chain complexes.

Given a category \({\mathcal {I}}\), we denote by \(\widetilde{{\mathcal {I}}}\) the category with the same set of objects but with identity arrows only. There is an obvious inclusion \(\widetilde{{\mathcal {I}}}\rightarrow {\mathcal {I}}\) and thus a diagram \(X:{\mathcal {I}}\rightarrow {\mathcal {C}}\) induces a diagram \({{\widetilde{X}}}:\widetilde{{\mathcal {I}}}\rightarrow {\mathcal {C}}\). The following definition generalizes the concept of an object with effective homology (see [19]) to the context of diagrams:

Definition 8.4

  • We say that a locally effective diagram of chain complexes \({C}\) is homologically effective if there is given an effective diagram \(C^{\textrm{ef}}\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) and a strong equivalence \({{{C}}\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow C^{\textrm{ef}}}\).

  • We say that a locally effective diagram of chain complexes \({C}\) is pointwise homologically effective if its restriction \({{\widetilde{C}}}\in \textsf {Ch} {\text {-}}{\widetilde{{\mathcal {I}}}}\) is homologically effective. Concretely, this consists of a collection of strong equivalences \(C(i)\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow C^{\textrm{ef}}(i)\) (not necessarily natural in \(i\in {\mathcal {I}}\)).

  • A locally effective diagram of simplicial sets \(X\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) is (pointwise) homologically effective if \({C}_*(X)\) is (pointwise) homologically effective.

As an important example, the diagram \(WK(\pi ,{n})\), where \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) and \({n}\ge 1\) is pointwise homologically effective, which follows from [5, Thm. 3.16]. In general, we aren’t aware of an algorithm that would show it is homologically effective. However, in special cases such as when \(WK(\pi ,{n})\) is cofibrant, we obtain homologically effective \(WK(\pi ,{n})\) (see Proposition 8.10).

8.2 Constructions with Homologically Effective Diagrams

We now introduce the standard results of homological perturbation theory in the context of diagrams of chain complexes. We will utilise them to prove that certain objects, such as cofibrant replacements, are homologically effective.

Definition 8.5

Let \(C,C'\in \textsf {Ch} {\text {-}}{\mathcal {I}}\). Notice that the differential \(\partial \) on C can be seen as a natural transformation \(C\rightarrow C[1]\) satisfying \(\partial \partial =0\). Here C[1] is diagram of chain complexes C with all the chain complexes moved up by one dimension. We call a collection of maps \(\delta :C\rightarrow C[1]\) perturbation if the sum \(\partial +\delta \) is also a differential.

We now formulate the lemmas.

EasyPerturbationLemma 8.6

Let \((\alpha ,\beta ,\eta ):(C,\partial )\Rightarrow (C',\partial ')\) be a reduction of diagrams of chain complexes. Suppose \(\delta '\) is a perturbation of the differential \(\partial '\). Then there is a reduction \((\alpha ,\beta ,\eta ):(C,\partial +\beta \delta '\alpha )\Rightarrow \!\!\!\!\Rightarrow (C',\partial '+\delta )\).

BasicPerturbationLemma 8.7

Let \((\alpha ,\beta ,\eta ):(C,\partial )\Rightarrow \!\!\!\!\Rightarrow (C,\partial ')\) be a reduction of diagrams of chain complexes. Suppose \(\delta \) is a perturbation of the differential \(\partial \) and further for every \(i\in {\mathcal {I}}\) and every \(c\in C(i)\) there is some \(k\in {\mathbb {N}}\) such that we get \((\eta \delta )^k(c)=0\). Then there is a reduction of diagrams of chain complexes \((\alpha ',\beta ',\eta '):(C,\partial +\delta )\Rightarrow \!\!\!\!\Rightarrow (C',\partial '+\delta ')\).

Proof of both lemmas follows directly from the original classical perturbation lemmas (see e.g., [19]), as there is a concrete description of new reduction data in terms of sums of compositions of \(\alpha ,\beta ,\eta ,\partial ,\delta \). As we assume these are natural transformations, the resulting reduction data will consist of natural transformations as well.

Lemma 8.8

  1. 1.

    Let \(C\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) and \(D\in \textsf {Ch} {\text {-}}{\mathcal {J}}\) be homologically effective. Then so is \(C\mathbin {{\widehat{\otimes }}}D\in \textsf {Ch} {\text {-}}({\mathcal {I}}\times {\mathcal {J}})\), given by \(C\mathbin {{\widehat{\otimes }}}D (i,j)=C(i)\otimes D(j)\). In particular, the tensor product of a homologically effective diagram of chain complexes with a homologically effective chain complex is a homologically effective diagram of chain complexes.

  2. 2.

    Let \(C,D\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) be homologically effective. Then so is \(C\oplus D\in \textsf {Ch} {\text {-}}{\mathcal {I}}\).

  3. 3.

    Let \(C,D\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) be homologically effective and \(f:C\rightarrow D\) computable. Then the mapping cylinder \(M_f\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) is homologically effective.

Proof

In the first point, the strong equivalences are closed under the tensor product, so that we have \(C\mathbin {{{\widehat{\otimes }}}}D\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow C^\textrm{ef}\mathbin {{{\widehat{\otimes }}}}D^\textrm{ef}\) and the right hand side \(C^\textrm{ef}\mathbin {{{\widehat{\otimes }}}}D^\textrm{ef}\) is effective with cells the tensor products of the cells of \(C^\textrm{ef}\) and of \(D^\textrm{ef}\). The special case in the first point is obtained by taking \({\mathcal {J}}\) to be the trivial one-object category. The second point is trivial and the final claim follows from [5, Prop. 3.8]. \(\square \)

In what follows we are going to apply a general lemma about filtered diagrams of chain complexes. Let \(C\in \textsf {Ch} {\text {-}}{\mathcal {I}}\). We consider a filtration F on diagram C of chain complexes:

$$\begin{aligned} 0=F_{-1}C\subseteq F_0C\subseteq F_1C\subseteq \ldots \end{aligned}$$

such that \(C=\bigcup _kF_kC\). We further assume that each \(F_kC\) is a cellular subcomplex, i.e., it is generated by a subset of the given basis of C and that the filtration is locally finite, i.e., for each n we have \(F_kC_n=C_n\) for \(k\gg 0\).

Lemma 8.9

[6, Lem. 7.3] Let \(C\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) be a diagram of chain complexes with filtration F satisfying properties as above. If each filtration quotient \(G_kC=F_kC/F_{k-1}C\) is homologically effective then so is C.

Proof

We define \(G=\bigoplus _{k\ge 0}G_k\). The sum is locally finite: By the properties of F, we get that \(G_kC_n=0\) for \(k\gg 0\). Thus for each n, we get a direct sum of homologically effective diagrams \(G_kC_n\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) and it follows that G is homologically effective. The diagram C can be seen as a perturbation of G. This perturbation decreases the filtration degree. If we take a direct sum of given strong equivalences \({G_k\Leftarrow \!\!\!\!\Leftarrow \widehat{G_k}\Rightarrow \!\!\!\!\Rightarrow G_k^\textrm{ef}}\), we obtain a strong equivalence \(G\Leftarrow \!\!\!\!\Leftarrow {\widehat{G}}\Rightarrow \!\!\!\!\Rightarrow G^\textrm{ef}\). All the chain complexes are equipped with a filtration degree. Since the perturbation on G decreases the filtration degree, while the homotopy operator preserves it, we can apply the perturbation Lemmas 8.6 and 8.7 to obtain a strong equivalence \(C\Leftarrow \!\!\!\!\Leftarrow {\widehat{C}}\Rightarrow \!\!\!\!\Rightarrow C^\textrm{ef}\). \(\square \)

The main application of the lemma is in the proof of the following result:

Proposition 8.10

[10, Thm. 1.3, Proposition 1.2] Let \(X\in {\textsf {sSet}} \text {-}{\mathcal {I}}\) be a pointwise homologically effective diagram. Then its Bousfield–Kan cofibrant replacement \(X^\textrm{cof}\) is homologically effective.

Proof

We remind that for any category \({\mathcal {I}}\) there is a simplicial set \(N{\mathcal {I}}\), the nerve of \({\mathcal {I}}\). The simplicial set \(N{\mathcal {I}}\) can be seen as a homotopy colimit of the diagram consisting of points. Then there is a projection \(q:X^\textrm{cof}\rightarrow N{\mathcal {I}}\) given as a projection onto

$$\begin{aligned} \bigsqcup _{\begin{array}{c} n\ge 0\\ i_0,\dots ,i_n \end{array}}\!\!\varDelta ^{n}\times {\mathcal {I}}(i_1,i_0)\times \cdots \times {\mathcal {I}}(i_n,i_{n-1})/{\sim } \end{aligned}$$

and we define the skeleton of \( X^\textrm{cof}\):

$$\begin{aligned} \mathop {\textrm{sk}}\nolimits _{k}X^\textrm{cof}=q^{-1}(\textrm{sk}_{k}N{\mathcal {I}}). \end{aligned}$$

We want to use Lemma 8.9 to prove that the diagram \(C_*(X^\textrm{cof})\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) is homologically effective. Therefore, we first have to introduce a filtration F on the diagram of chain complexes \(C_*(X^\textrm{cof})\). We define F as follows:

$$\begin{aligned} F_kC_*(X^\textrm{cof})=C_*(\mathop {\textrm{sk}}\nolimits _{k}X^\textrm{cof}). \end{aligned}$$

Denoting \(G_k=F_k/F_{k-1}\), we get

$$\begin{aligned} G_k(C_*(X^\textrm{cof}))\,=\!\bigoplus \limits _{\begin{array}{c} i_0\leftarrow \cdots \leftarrow i_k\\ \text { nondeg.} \end{array}}\!\!C_*\bigl (\varDelta ^{k}\times X(i_0)\times {\mathcal {I}}(-,i_k),\partial \varDelta ^{k}\times X(i_0)\times {\mathcal {I}}(-,i_k)\bigr ). \end{aligned}$$

The sum is taken over chains of morphisms in \({\mathcal {I}}\) that do not contain identity as those are cancelled out when taking the quotient \(G_k=F_k/F_{k-1}\). By the finiteness of \({\mathcal {I}}\), the number of nondegenerate chains of morphisms of length k is finite, so the sum is finite. The Eilenberg–Zilber reduction yields in this case

$$\begin{aligned} G_k(C_*(X^\textrm{cof}))\Rightarrow \!\!\!\!\Rightarrow \!\bigoplus \limits _{\begin{array}{c} i_0\leftarrow \cdots \leftarrow i_k\\ \text { nondeg.} \end{array}}\!\!C_*(\varDelta ^{k},\partial \varDelta ^{k})\otimes C_*(X(i_0))\otimes {\mathbb {Z}}{\mathcal {I}}(-,i_k). \end{aligned}$$
(8.2)

By definition, \({\mathbb {Z}}{\mathcal {I}}(-,i_k)\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) is effective and so is \(C_*(\varDelta ^{k},\partial \varDelta ^{k})\in \textsf {Ch} \) with a single generator in dimension k. By assumption, \(C_*(X(i_0))\in \textsf {Ch} \) is homologically effective and thus, by Lemma 8.8, so is each summand in (8.2):

$$\begin{aligned} C_*(\varDelta ^{k},\partial \varDelta ^{k})\otimes C_*(X(i_0))\otimes {\mathbb {Z}}{\mathcal {I}}(-,i_k)\in \textsf {Ch} {\text {-}}{\mathcal {I}}. \end{aligned}$$

The direct sum is then homologically effective too, making \(G_k(C_*(X^\textrm{cof}))\) itself homologically effective. Now we can apply Lemma 8.9 to complete the proof. \(\square \)

In order to construct Postnikov invariants in the Postnikov tower of a diagram \(Y\), the following proposition will be used. Before the statement itself, we define the diagram of cycles \(Z\): Given an effective diagram of chain complexes \({C}\in \textsf {Ch} {\text {-}}{\mathcal {I}}\), there is a diagram of cycles \(Z_{k}\in \textsf {Ab} {\text {-}}{\mathcal {I}}\) such that \(Z_{k}(i)\) is the subgroup of cycles in \({C}_{k}(i)\).

Proposition 8.11

Let \({C}\in \textsf {Ch} {\text {-}}{\mathcal {I}}\) be an effective diagram of chain complexes such that \(H_{k}({C})=0\) for \({k}\le n\). Then there is a (computable) retraction \(r:{C}_{{n}+1}\rightarrow Z_{{n}+1}\), i.e., a homomorphism that restricts to the identity on \(Z_{{n}+1}\).

Proof

The proof is a straightforward generalization of the proof of [6, Prop. 2.12]. We will compute inductively a contraction \(\sigma :{C}_{{k}}\rightarrow {C}_{{k}+1}\), for \({k}\le {n}\), i.e., a map satisfying \(\partial \sigma +\sigma \partial =\mathop {\textrm{id}}\nolimits \) and we use it to split off the cycles, namely we set \(r=\mathop {\textrm{id}}\nolimits -\sigma \partial \).

Since C is effective, the cells \(e_\alpha \) form a set of free generators of \(C_k\in \textsf {Ab} {\text {-}}{\mathcal {I}}\). Thus, we only need to compute \(\sigma (e_\alpha )\) so that

$$\begin{aligned} \partial \sigma (e_\alpha )+\sigma \partial (e_\alpha )=e_\alpha , \end{aligned}$$

i.e., \(\partial \sigma (e_\alpha )=e_\alpha -\sigma \partial (e_\alpha )\). This \(\sigma (e_\alpha )\) is computed by a Smith normal form algorithm (or the more general Lemma 4.4), provided that it exists; since \(B_k(C)=Z_k(C)\) by assumption, we only need to verify the following (by a very easy argument using induction hypothesis)

$$\begin{aligned} \partial (e_\alpha -\sigma \partial (e_\alpha ))=0. \end{aligned}$$

\(\square \)

8.3 Representing a Map of Diagrams by an Effective Cocycle

In the Postnikov system algorithm, we will encounter the following situation: We consider a homologically effective diagram \(X\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\), so that there is given a strong equivalence \({C}_*(X)\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow {C}^{\textrm{ef}}_*(X)\) to an effective diagram \({C}^{\textrm{ef}}_*(X)\). Let \(f:{C}_*(X)\rightarrow {C}^{\textrm{ef}}_*(X)\) be the composite (natural) map in the strong equivalence. Let us also consider a \(({k}+1)\)-cocycle

$$\begin{aligned} \psi ^{\textrm{ef}}\in Z^{{k}+1}({{\,\mathrm{Hom\hspace{0.7222pt}}\,}}({C}^{\textrm{ef}}_*(X),\pi ))={Z^{{k}+1}_{\textrm{ef}}}(X;\pi ) \end{aligned}$$

for some diagram of effective Abelian groups \(\pi \). The superscript “ef” emphasise that the cocycle belongs to the “effective” cochain complex \({C^*_{\textrm{ef}}}(X;\pi )\) obtained from the effective diagram \({C}^{\textrm{ef}}_*(X)\) associated to \(X\). Then \(\psi ^\textrm{ef}\) can be represented by a system of finite matrices, since it can be seen as a collection of maps from chain groups \({C}_{{k}+1}^{\textrm{ef}}(X)\) of finite rank into \(\pi (i)\), \(i\in {\mathcal {I}}\). The composition \(\psi =f\psi ^\textrm{ef}:C_*(X)\rightarrow C^{\textrm{ef}}_*(X)\rightarrow \pi \) is then also a cocycle and thus corresponds to a simplicial map \({{\widehat{\psi }}}:X\rightarrow {\overline{W}} K(\pi ,{k})\).

In the construction of Postnikov systems, we will encounter the following situation: We are given a diagram of simplicial sets \(P\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\), plus a mapping \(f:P\rightarrow {\overline{W}} K(\pi ,{n})\), for some diagram of Abelian groups \(\pi \in \textsf {Ab} {\text {-}}{\mathcal {I}}\) and a fixed \({n}\ge 1\). Now we define a diagram \(Q\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) as the pullback according to the following commutative diagram:

A result from [5], then gives the following

Corollary 8.12

[5, Cor. 3.18] Given \(\pi ,{n},P,f\) as above, where \(\pi \) is an effective diagram of Abelian groups, the diagram \(P\) is pointwise homologically effective, and f is computable, the pullback diagram \(Q\) is pointwise homologically effective.

8.4 Computational Complexity

As explained, for the running time analysis we need the polynomial time versions of the above results, i.e., we view them as suitable polynomial time constructions. The majority of these claims are straightforward generalizations of the results given in [5, Sect. 3].

  • Perturbations lemmas: The polynomial time version of Lemma 8.7, requires a stronger nipotency condition: for every \(k\ge 0\), there exist some \(N(k)\ge 0\) such that \((\eta \delta )^{N(k)}(x)=0\) for all \(x\in C_k\). Under this condition, if the input data (chain complex and reduction) are polynomial time, then so is the output chain complex and reduction data. This further implies a polynomial time version of Lemma 8.9.

  • Polynomial time versions of Lemma 8.8 and Corollary 8.12 are obtained in the same way as in [5, Sect. 3], from which Proposition 8.10 follows.

  • A polynomial time version of Proposition 8.11 follows from the fact that there is a polynomial time algorithm computing the Smith normal form.

9 Postnikov Tower for Diagrams

In this section, we formally define an algorithmic (homologically effective) version of the Postnikov system of a diagram Y which is used for computations in this paper. Then we describe an algorithm that produces the algorithmic version of the tower in case Y is pointwise homologically effective and 1-connected. Formally, we first state the existence of such algorithm in Theorem 9.2. The proof is then given by first describing the algorithm and then proving its correctness. The algorithm was originally presented in first author’s thesis [11]. Here, we give a slightly shorter version that covers the most important points of the construction.

Definition 9.1

Let \(Y\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\) be a pointwise homologically effective diagram, \({n}\in {\mathbb {N}}\). We say that the n-stage Postnikov system (tower) for Y is pointwise homologically effective if the following is provided:

  • Pointwise homologically effective diagrams \(P(0),P(1),\dots ,P(n)\in {\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {I}}\).

  • Effective diagrams of Abelian groups \(\pi _{j}(Y)\) representing the homotopy groups of Y, \(1\le {j}\le {n}\).

  • Computable maps \(\varphi ({j}):Y({j})\rightarrow P({j})\), \(1\le {j}\le {n}\).

  • Computable maps representing Postnikov classes \({k}_{{j}}{:}P({j}{-}1)^\textrm{cof}{\rightarrow }{\overline{W}} K(\pi _{j}(Y),{j}), 1<{j}\le {n}\).

Theorem 9.2

(precise formulation)    Let \({n}\ge 2\) be fixed, let \(Y:{\mathcal {I}}\rightarrow {\textsf {s}} \textsf{Set}\) be a finite pointwise homologically effective diagram such that every space in the diagram \(Y\) is 1-connected. Then there is an algorithm that computes the pointwise homologically effective n-stage Postnikov system for \(Y\).

9.1 Description of the Algorithm

The algorithm we present here is in fact a modification of an algorithm that constructs a Postnikov tower for 1-connected simplicial sets presented in [5]. The main difference can be seen in the application of Proposition 8.11, which will be stressed later.

The following is a pseudo-code for the algorithm in Theorem 9.2:

(1):

Set \(Y(0)=Y\), set \(P(0)=\{*\}\) and construct the (obvious) map \(\varphi (0):Y(0)\rightarrow P(0)\).

(2):

For \({j}=1\) to \({n}\) do:

(3):

Compute the cofibrant replacement of \(\varphi ({j}-1)\) using Proposition 8.10. We thus obtain

$$\begin{aligned} \varphi ({j}-1)^\textrm{cof}:Y({j})=Y({j}-1)^\textrm{cof}\longrightarrow P({j}-1)^\textrm{cof}. \end{aligned}$$
(4):

Construct the homologically effective mapping cone \(M{:}{=}{{\,\mathrm{{Cone}}\,}}(\varphi ({j}-1)^\textrm{cof})\), with a strong equivalence \(M\Leftarrow \!\!\!\!\Leftarrow \!\!\!\!\Rightarrow \!\!\!\!\Rightarrow M^\textrm{ef}\) to an effective diagram \(M^\textrm{ef}\).

(5):

Compute a retraction \(r:M^\textrm{ef}_{{j}+1}\rightarrow Z_{{j}+1}(M^\textrm{ef})\) using Proposition 8.11.

(6):

Compute the homology group \(H_{{j}+1}(M^\textrm{ef})\) and the composite morphism

$$\begin{aligned} \rho :M^\textrm{ef}_{{j}+1}{\mathop {\longrightarrow }\limits ^{r}}Z_{{j}+1}(M^\textrm{ef})\rightarrow H_{{j}+1}(M^\textrm{ef}). \end{aligned}$$
(7):

Set \(\pi _{j}\,\, {:}{=}\,\, H_{{j}+1}(M^\textrm{ef})\).

(8):

Denoting by \(f:{M}_{{j}+1}\rightarrow {M}_{{j}+1}^\textrm{ef}\) the composite chain homomorphism in the given strong equivalence, consider the composition

$$\begin{aligned} {C}_{j}(Y({j}))\oplus {C}_{{j}+1}({P({j}-1)^\textrm{cof}})=M_{{j}+1}\xrightarrow {\ f\ }M^\textrm{ef}_{{j}+1}{\mathop {\longrightarrow }\limits ^{\rho }}\pi _{j}. \end{aligned}$$

This yields, by restriction, a cochain \(\lambda _{j}:{C}_{j}(Y({j}))\rightarrow \pi _{j}\). Compute the simplicial map \(\ell _{j}:Y({j})\rightarrow WK(\pi _{j},{j})\) corresponding to \(\lambda _{j}\) using Proposition 3.4. The other restriction \(\kappa _{{j}}:{C}_{{j}+1}({P({j}-1)^\textrm{cof}})\rightarrow \pi _{{j}}\) is a cocycle. Compute the corresponding simplicial map \({k}_{{j}}:P({j}-1)^\textrm{cof}\rightarrow {\overline{W}} K(\pi _{j},{j})\), again via Proposition 3.4.

(9):

Apply Corollary 8.12 to obtain \(P({j})\) as a pullback in the diagram

(9.1)

and set \(\varphi ({j})=(\varphi ({j}-1)^\textrm{cof},\ell _{j})\) as the map to the pullback \(P({j})\).

9.2 Correctness of the Algorithm

The correctness of the algorithm follows nearly directly from the proof of [5, Thm. 4.1], where this is proven “pointwise”. Here, one has to show further that maps \(r,\rho ,\lambda _{j},\ell _{j},\kappa _{{j}},k_{{j}}\) are well-defined morphisms of diagrams, which is a matter of technical verification and is described in full in [11]. Further, we use the fact that \({P({j}-1)^\textrm{cof}}\) is homologically effective, hence so is the mapping cone M and Proposition 8.11 may be applied.

9.3 Computational Complexity

Considering the computational complexity, the algorithm described in Theorem 9.2, can be formulated as follows:

Theorem 9.3

Let n and \({\mathcal {I}}\) be fixed. The association \(Y\mapsto P\), that takes a 1-connected diagram Y of finite simplicial sets and gives its pointwise homologically effective n-stage Postnikov tower, is a polynomial time construction.

Proof

We split the algorithm of Theorem 9.2 into two inductive claims:

  • Given a polynomial time computable map \(\varphi ({j}-1):Y({j}-1)\rightarrow P({j}-1)\) between polynomial-time pointwise homologically effective diagrams, its cofibrant replacement \(\varphi ({j}-1)^\textrm{cof}\) is a polynomial time map between polynomial time homologically effective diagrams \(Y({j}),P({j}-1)^\textrm{cof}\).

  • Given a polynomial time computable map \(\varphi ({j}-1)^\textrm{cof}:Y({j})\rightarrow P({j}-1)^{\textrm{cof}}\) between polynomial-time homologically effective diagrams, the remaining data in the diagram (9.1) consists of polynomial time pointwise homologically effective diagrams and polynomial time computable maps.

First point follows from the proof of Proposition 8.10. The second point is achieved “pointwise” using methods from [5], thus they are polynomial time. The only difference is in the computation of retraction \(r:M^\textrm{ef}_{{j}+1}\rightarrow Z_{{j}+1}(M^\textrm{ef})\) which is polynomial time by Lemma 8.11. \(\square \)

10 Applications

10.1 The Tverberg-Type Problem

In the article [15], Mabillard and Wagner formulated the following generalization of the classical Haefliger–Weber theorem:

Theorem 10.1

[15, Thm. 1] Let K be a (finite) simplicial complex of dimension k and \(r,d\in {\mathbb {N}}\) such that \(r\ge 2\), \(d-k\ge 3\) and \(rd\ge (r+1)\hspace{0.44434pt}k+3\). Then there is an r-almost embedding \(f:K\rightarrow {\mathbb {R}}^d\) if and only if there exists a \({\mathbb {S}}_r\)-equivariant map \(K^r{\setminus }\varDelta _r\rightarrow S^{d(r-1)-1}\).

Here the space \(K^r\setminus \varDelta _r\) is the r-fold product of K, with the “fat” diagonals removed. Its cells can be viewed as r-tuples \((\sigma _1,\dots ,\sigma _r)\), where \(\sigma _i\in K\) and \(\sigma _i\cap \sigma _j=\emptyset \) for \(i\ne j\). The action of the symmetric group \({\mathbb {S}}_r\) on \(K^r\setminus \varDelta _r\) is induced by the permutation action on \(K^r\) and is thus free.

The sphere \(S^{d(r-1)-1}\) is homotopy equivalent to \(({\mathbb {R}}^d)^r{\setminus }\delta _r\), for \(\delta _r=\{(y,\dots ,y)\mid y\in {\mathbb {R}}^d\}\), i.e., the r-fold products with the “thin” diagonal removed and the action on \(S^{d(r-1)-1}\) is induced by the action on \(({\mathbb {R}}^d)^r\), which permutes the r-factors. It follows that the action on \({\mathbb {S}}_r\), has fixed points and for any \(H\le {\mathbb {S}}_r\), we get \((({\mathbb {R}}^d)^r\setminus \delta _r)^H\sim (S^{d(r-1)-1})^H=S^{dq-1}\), where \(0\le q\le r-1\). We remark that given \(K\le {\mathbb {S}}_r\) subconjugate to H, we get \((S^{d(r-1)-1})^H \subseteq (S^{d(r-1)-1})^K\).

Remark 10.2

We remark that the proof of Mabillard–Wagner theorem in [14] was criticised by Arkadiy Skopenkov, who summarized his critique in [20] and proved the theorem in [21, Thm. 1.2].

Proof of Theorem 1.5

The proof is a consequence of Theorem 1.4 and Remark 1.3. We notice that \({\text {conn}}\hspace{0.83328pt}(S^{d(r-1)-1})^H={\text {conn}}S^{dq-1}=dq-2\), \(0\le q\le r-1\), i.e., in some cases the connectivity can be less than one. From conditions \(r\ge 2\), \(d-k\ge 3\), and \(rd\ge (r+1)\hspace{0.44434pt}k+3\), we can see that if for some \(H\subset {\mathbb {S}}_r\), \((S^{d(r-1)-1})^H\ne \emptyset \), then \({\text {conn}}\hspace{0.77774pt}(S^{d(r-1)-1})^H\ge 1\).

Let \({\mathcal {J}}\) be the full subcategory of \({\mathcal {O}}_G\) on the objects G/H where \((S^{d(r-1)-1})^H\) is nonempty. By Remark 1.3, we get

$$\begin{aligned} {[}K^r\setminus \varDelta _r,S^{d(r-1)-1}]_{{\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {O}}_G}\cong [K^r\setminus \varDelta _r,S^{d(r-1)-1}]_{{\textsf {s}} {\textsf {Set}}{\text {-}}{\mathcal {J}}}. \end{aligned}$$

Conditions \(\dim {(K^r\setminus \varDelta _r)(j)}\le 2\cdot {\text {conn}}\hspace{0.83328pt}(S^{d(r-1)-1})(j)\) and \({\text {conn}}\hspace{0.83328pt}(S^{d(r-1)-1})(j)\ge 1\) are satisfied for all objects \(j\in {\mathcal {J}}\), so it remains to check that \(rd\ge (r+1)\hspace{0.44434pt}k+3\), \(r>2\), \(d-k\ge 3\), implies \(rk\le 2\hspace{0.3888pt}(d\hspace{0.27771pt}(r-1)-2)\). The application of Theorem 1.1 gives us the result. \(\square \)

10.2 Equivariant Stable Homotopy Groups of Spheres

In this section, we describe how Theorem 1.4 can be applied to the computation of equivariant stable homotopy groups of G-spaces (represented as G-simplicial sets). We showcase this on the example of \({\mathbb {Z}}_2\) equivariant stable homotopy groups of spheres. We are using [17, Chap. IX] as our source of definitions in this section.

10.3 Basic Notions

Let G be a finite group, and let V be a representation of G, i.e., a real inner product space (in our case we always assume a finite dimensional vector space over \({\mathbb {R}}\)) on which G acts via linear isometries.Footnote 11 For a representation V, we have the unit disc \(D(V)=\{x\in V\mid \Vert x\Vert \le 1\}\) and sphere \(S(V)=\{x\in V\mid \Vert x\Vert \le 1\}\) and finally \(S^V\)—a one point compactification (or \(S^V\cong D(V)/S(V)\)).

For a based G-space X, we write \(\varSigma ^V X=X\wedge S^V\). As an application of Freudenthal suspension theorem, we obtain that the map

$$\begin{aligned} \varSigma ^V :[X,Y]_G \rightarrow [\varSigma ^V X,\varSigma ^V Y]_G \end{aligned}$$

is surjective if

  1. (i)

    \(\dim X^H\le 2\cdot {\text {conn}}Y^H+1\) for all subgroups H such that \(V^H\ne 0\);

  2. (ii)

    \(\dim X^H\le {\text {conn}}Y^K\) for all pairs of subgroups \(K\le H\) with \(V^K\ne V^H\);

and bijective if the inequality is strict.

Let us describe how one can see \(S^{V_0}\), where \(V_0\) is the regular representation of a finite group G (over \({\mathbb {R}}\)): The regular representation is a vector space of dimension |G| and, identifying the coordinate unit vectors with the elements of G, the group G acts by swapping them. Clearly, the dimension of \(S^{V_0}\) is |G|. From here one can deduce a simplicial set model of \(S^{V_0}\). For example, for \(G={\mathbb {Z}}_2\), the space \(S^{V_0}\) is just a 2-sphere and we can model it by gluing two discs \(D_+,D_-\) along their boundary (the equator), group acts by switching the discs, while it keeps the equator fixed, thus \((S^{V_0})^{{\mathbb {Z}}_2}\cong S^1\). In simplicial sets, we can thus model \(S^{V_0}\) by having two 2-simplices \(\sigma ,\tau \) and glue them along their faces, say by setting \(d_0\sigma =d_0\tau \) and \(d_1\sigma =d_1\tau =d_2\sigma =d_2\tau =s_0d_0d_0\sigma \) is the basepoint. The action of \({\mathbb {Z}}_2\) swaps \(\sigma \) and \(\tau \).

Definition 10.3

[17, IX, Defn. 2.1] A G-universe U is a countable direct sum of representations such that U contains a trivial representation and also contains each of its sub-representations infinitely often. Thus we can write U as a direct sum of subspaces \((V_i)^\infty \), where \(\{V_i\}\) runs through the set of distinct irreducible representations of G. Universe is complete if, up to isomorphism, it contains every irreducible representation of G. If G is finite and V is its regular representation, then \(U=V^\infty \) is a complete G-universe. A finite dimensional sub-G space of U is said to be an indexing space in U.

We define the equivariant stable homotopy classes of maps \(X \rightarrow Y\) as

$$\begin{aligned} \{X,Y\}_G=\mathop {\textrm{colim}}_V\,[\varSigma ^VX,\varSigma ^V Y]_G, \end{aligned}$$

where V goes through the indexing spaces in U and the colimit is taken over functions

$$\begin{aligned} (-\wedge S^{W-V}):[\varSigma ^V X,\varSigma ^V Y]_G\rightarrow [\varSigma ^W X,\varSigma ^W Y]_G,\quad \ V\subset W, \end{aligned}$$

that are given by sending a map \(\varSigma ^V X\rightarrow \varSigma ^V Y\) to its smash product with the identity of \(S^{W-V}\).

Corollary 10.4

[17, IX, Cor. 2.3] If G is finite and X is finite dimensional, the Freudenthal suspension theorem implies the existence of a finite dimensional representation \(V_0=V_0(X)\) such that for any representation V,

$$\begin{aligned} \varSigma ^V:[\varSigma ^{V_0}X,\varSigma ^{V_0}Y]_G\rightarrow [\varSigma ^{V_0\oplus V}X,\varSigma ^{V_0\oplus V}Y]_G \end{aligned}$$

is an isomorphism. The definition of \(\{X,Y\}_G\) then gives us

$$\begin{aligned} \{X,Y\}_G=[\varSigma ^{V_0}X,\varSigma ^{V_0}Y]_G. \end{aligned}$$

Proof

The main idea is to choose a finite dimensional G-representation U satisfying \(\dim U^K>\dim U^H>0\) for any pair of subgroups \(K\le H\le G\). Clearly, the regular representation, seen as the \({\mathbb {R}}[G]\)-module \({\mathbb {R}}[G]\), is such a representation. It is enough to observe that for an element \(x=\sum _{k\in K}k\), it is true that \(xk=x\), but for any \(h\in H{\setminus } K\), we get \(xh\ne x\). From a simple dimension and connectivity comparison it follows that there exists an integer k such that for \(V_0=kU=\underbrace{U\oplus \cdots \oplus U}_{k\ \text {times}}\), we get

  • \(\dim \hspace{0.94437pt}(\varSigma ^{V_0}X)^H<2\cdot {\text {conn}}\hspace{0.77774pt}(\varSigma ^{V_0}Y)^H+1\);

  • \(\dim \hspace{0.77774pt}(\varSigma ^{V_0}X)^H<{\text {conn}}\hspace{0.77774pt}(\varSigma ^{V_0}Y)^K\) for all pairs of subgroups \(K\le H\).

The inequalities (i) and (ii) then imply the result. \(\square \)

From the corollary above and the definition of \(\{X,Y\}_G\), we get that for finite simplicial sets with an action of a finite group G there exists a (finite dimensional) G-representation V such that

$$\begin{aligned} {[}\varSigma ^{kV}X,\varSigma ^{kV}Y]_G=\{X,Y\}_G. \end{aligned}$$

Example

Let us detail this general procedure in the case of the stable \({\mathbb {Z}}_2\)-equivariant homotopy groups: from the discussion above, \(\{S^n,S^0\}_{{\mathbb {Z}}_2}\) is isomorphic to \([\varSigma ^{kV}S^n,\varSigma ^{kV}S^0]_{{\mathbb {Z}}_2}\), where V is the regular representation of \({\mathbb {Z}}_2\). In this case, we have \(S^V=S^2\) and \((S^V)^{{\mathbb {Z}}_2}=S^1\), and we can model this space as a simplicial set with two 2-cells, one 1-cell and one 0-cell. Thus \(\dim \hspace{0.66666pt}(\varSigma ^{kV}S^n)=2k+n\), \({\text {conn}}\varSigma ^{kV}S^n=2k+n-1\), \(\dim \hspace{0.77774pt}((\varSigma ^{kV}S^n)^{{\mathbb {Z}}_2}=k+n\) and \({\text {conn}}\hspace{0.94437pt}(\varSigma ^{kV}S^n)^{{\mathbb {Z}}_2}=k+n-1\). As we further have \(\varSigma ^{kV}S^0=\varSigma ^{kV}\), we conclude that we are in the stable range if \(n<k-1\), thus to compute the n-th stable homotopy group of \(S^0\), we should use \(n+1\) fold suspension with the regular representation.

10.4 Proof of Theorem 1.6

According to Corollary 10.4, \(\{X,Y\}=[\varSigma ^{V_0}X,\varSigma ^{V_0}Y]_G\), where \(V_0=\underbrace{V\oplus \cdots \oplus V}_{k\ \text {times}}\) is a sum of k regular representations of G. Elmendorf’s theorem then implies that

$$\begin{aligned} {[}\varSigma ^{V_0}X,\varSigma ^{V_0}Y]_G\cong [\varPhi \varSigma ^{V_0}X,\varPhi \varSigma ^{V_0}Y]_G \end{aligned}$$

where the latter set is computable by our main result. It remains to compute k which depends only on \(\dim \varPhi X\) and \({\text {conn}}\varPhi Y\)—we pick the smallest \(k\in {\mathbb {N}}\) such that formulas (i) and (ii) are satisfied.