Abstract
A central problem of algebraic topology is to understand the homotopy groups of a topological space X. For the computational version of the problem, it is well known that there is no algorithm to decide whether the fundamental group of a given finite simplicial complex X is trivial. On the other hand, there are several algorithms that, given a finite simplicial complex X that is simply connected (i.e., with trivial), compute the higher homotopy group for any given . However, these algorithms come with a caveat: They compute the isomorphism type of , as an abstract finitely generated abelian group given by generators and relations, but they work with very implicit representations of the elements of . Converting elements of this abstract group into explicit geometric maps from the d-dimensional sphere to X has been one of the main unsolved problems in the emerging field of computational homotopy theory. Here we present an algorithm that, given a simply connected space X, computes and represents its elements as simplicial maps from a suitable triangulation of the d-sphere to X. For fixed d, the algorithm runs in time exponential in , the number of simplices of X. Moreover, we prove that this is optimal: For every fixed , we construct a family of simply connected spaces X such that for any simplicial map representing a generator of , the size of the triangulation of on which the map is defined, is exponential in .
Keywords: Computational homotopy theory, Effective Hurewicz Theorem, Whitehead tower
Introduction
One of the central concepts in topology are the homotopy groups of a topological space X. Similar to the homology groups, the homotopy groups provide a mathematically precise way of measuring the “d-dimensional holes” in X, but the latter are significantly more subtle and computationally much less tractable than the former. Understanding homotopy groups has been one of the main challenges propelling research in algebraic topology, with only partial results so far despite an enormous effort (see, e.g., Ravenel 2004; Kochman 1990); the amazing complexity of the problem is illustrated by the fact that even for the 2-dimensional sphere , the higher homotopy groups are nontrivial for infinitely many d and known only for a few dozen values of d.
For computational purposes, we consider spaces that have a combinatorial description as simplicial sets (or, alternatively, finite simplicial complexes) and maps between them as simplicial maps.
A fundamental computational result about homotopy groups is negative: There is no algorithm to decide whether the fundamental group of a finite simplicial complex X is trivial, i.e., whether every continuous map from the circle to X can be continuously contracted to a point; this holds even if X is restricted to be 2-dimensional.1
On the other hand, given a space X that is simply connected (i.e., path connected and with trivial) there are algorithms that compute the higher homotopy group , for every given . The first such algorithm was given by Brown (1957), and newer ones have been obtained as a part of general computational frameworks in algebraic topology; in particular, an algorithm based on the methods of Sergeraert (1994) and Rubio and Sergeraert (2002) was described by Real (1996).
More recently, Čadek et al. (2014b) proved that, for any fixed d, the homotopy group of a given 1-connected finite simplicial set can be computed in polynomial time. On the negative side, computing is #P-hard if d is part of the input (Anick 1989; Čadek et al. 2013b) (and, moreover, W[1]-hard with respect to the parameter dMatoušek 2014), even if X is restricted to be 4-dimensional. These results form part of a general effort to understand the computational complexity of topological questions concerning the classification of maps up to homotopy (Čadek et al. 2013a, b, 2014a; Filakovský and Vokřínek 2013) and related questions, such as the embeddability problem for simplicial complexes (a higher-dimensional analogue of graph planarity) (Matoušek et al. 2011, 2014; Čadek et al. 2017).
Our results: representing homotopy classes by explicit maps
By definition, elements of are equivalence classes of continuous maps from the d-dimensional sphere to X, with maps being considered equivalent (or lying in the same homotopy class) if they are homotopic, i.e. if they can be continuously deformed into one another (see Sect. 3 for more details).
The algorithms of Brown (1957) or Čadek et al. (2014b) mentioned above compute as an abstract abelian group, in terms of generators and relations.2 However, they work with very implicit representations of the elements of .
On the other hand, assuming that X is finite, 0-reduced and connected, Berger (1991, 1995) presented an algorithm that computes generators of as explicit simplicial maps.
Combining this algorithm with an algorithmic construction of the Whitehead tower, we managed to drop the condition on the connectivity and obtained the main result of this paper: an algorithm that, given an element of , computes a suitable triangulation of the sphere and an explicit simplicial map representing the given homotopy class .
Apart from the intrinsic importance of homotopy groups, we see this as a step towards the more general goal of computing explicit maps with specific topological properties; instances of this goal include computing explicit representatives of homotopy classes of maps between more general spaces X and Y (a problem raised in Čadek et al. 2014a) as well as computing an explicit embedding of a given simplicial complex into (as opposed to deciding embeddability). Moreover, these questions are also closely related to quantitative questions in homotopy theory (Gromov 1999) and in the theory of embeddings (Freedman and Krushkal 2014). See Sect. 1.2 for a more detailed discussion of these questions.
Throughout this paper, we assume that the input X is simply connected, i.e., that it is connected and has trivial fundamental group . For the purpose of the exposition, we will assume that X is given as a 1-reduced simplicial set, encoded as a list of its nondegenerate simplices and boundary operators given via finite tables. We remark that the class of 1-reduced simplicial sets contains standard models of 1-connected topological spaces, such as spheres or complex projective spaces. A more general version of the theorem that also includes simply connected simplicial complexes is discussed in Sect. 4.
Theorem A
There exists an algorithm that, given and a finite 1-reduced simplicial set X, computes a set of generators of as simplicial maps , for suitable triangulations of , .
For fixed d, the time complexity is exponential in the size (number of simplices) of X; more precisely, it is where is a polynomial depending only on d.
Any element of can be expressed as a sum of generators, and expressing the sum of two explicit maps from spheres into X as another explicit map is a simple operation. Hence, the algorithm in Theorem A can convert any element of into an explicit simplicial map.
Theorem A also has the following quantitative consequence: Fix some standard triangulation of the sphere , e.g., as the boundary of a -simplex. By the classical Simplicial Approximation Theorem (Hatcher 2001, 2.C), for any continuous map , there is a subdivision of and a simplicial map that is homotopic to f. Theorem A implies that if f represents a generator of , then the size of can be bounded by an exponential function of the number of simplices of X.
Furthermore, we can show that the exponential dependence on the number of simplices in X is inevitable:
Theorem B
Let be fixed. Then there is an infinite family of d-dimensional 0-reduced 1-connected simplicial sets X such that for any simplicial map representing a generator of , the triangulation of on which f is defined has size at least . If , we may even assume that X are 1-reduced.
Consequently, any algorithm for computing simplicial representatives of the generators of for 1-reduced simplicial set X has time complexity at least .
In Sects. 4 and 5, we state and prove generalizations of Theorems A and B denoted as Theorems A.1 and B.1 . They remove the assumption that X is 1-reduced and replace it by a more flexible certificate of simply connectedness, allowing the input space X to be a more flexible simplicial set or simplicial complex.
This reduction from simplicial sets to simplicial complexes is achieved using a technical result we formulate later in the text as Lemma 6. The main ideas of this Lemma can be summarized as follows. For a finite simplicial complex endowed with a certificate of 1-connectedness, we choose a spanning tree T and contract it into a point, creating a 0-reduced simplicial set . The certificate of 1-connectedness transfers to X and generalizes the 1-reduceness assumption in Theorem A. Once we compute a homotopy representative , we then convert it to an equivalent map where Sd is a suitable subdivision functor, see Sect. 8 for details.
Source of the exponential
Let us briefly discuss the source of the exponential time complexity bound: Given the X as an input in Theorem A, the algorithm computes a set of generators of . These have an algebraic representation as elements of a simplicial group G. In particular, a generator of has a form , where the elements are some agreed upon generators of G. The size of the exponents is considered in a standard way (i.e. number of bits). All steps are polynomial up to this point.
The exponential blowup happens, when we assign a simplicial model of a sphere to . The resulting sphere will contain number of distinct d-simplices. This number can be large (even though its bit-size is polynomial). Hence, just outputting all these simplices could have exponential-time complexity in the input. In Theorem B, we show that this blowup really happens.
We remark that, in the boundary case of 1-reduced simplicial sets for (outside the scope of Theorem B), we don’t know whether the lower complexity bound is sub-exponential or not. However, we can show that the algorithm from Theorem A is optimal in that case as well, see a discussion in Sect. 5.
Related and future work
Computational homotopy theory and applications
This paper falls into the broader area of computational topology, which has been a rapidly developing area (see, for instance, the textbooks Edelsbrunner and Harer 2010; Zomorodian 2005; Matveev 2007); more specifically, as mentioned above, this work forms part of a general effort to understand the computational complexity of problems in homotopy theory, both because of the intrinsic importance of these problems in topology and because of applications in other areas, e.g., to algorithmic questions regarding embeddability of simplicial complexes (Matoušek et al. 2011; Čadek et al. 2017), to questions in topological combinatorics (see, e.g., Mabillard and Wagner 2016), or to the robust satisfiability of equations (Franek and Krčál 2015).
A central theme in topology is to understand the set [X, Y] of all homotopy classes of maps from a space X to a space Y. In many cases of interest, this set carries additional structure, e.g., an abelian group structure, as in the case of higher homotopy groups that are the focus of the present paper.
Homotopy-theoretic questions have been at the heart of the development of algebraic topology since the 1940’s. In the 1990s, three independent groups of researchers proposed general frameworks to make various more advanced methods of algebraic topology (such as spectral sequences) effective (algorithmic): Schön (1991), Smith (1998), and Sergeraert, Rubio, Dousson, Romero, and coworkers (e.g., Sergeraert 1994; Rubio and Sergeraert 2002, 2005; Romero et al. 2006; also see Rubio and Sergeraert 2012 for an exposition). These frameworks yielded general computability results for homotopy-theoretic questions (including new algorithms for the computation of higher homotopy groups Real 1996), and in the case of Sergeraert et al., also a practical implementation in form of the Kenzo software package (Heras et al. 2011).
Building on the framework of objects with effective homology by Sergeraert et al., in recent years a variety of new results in computational homotopy theory were obtained (Čadek et al. 2013b, 2014a, b, 2017; Krčál et al. 2013; Vokřínek 2017; Filakovský and Vokřínek 2013; Romero and Sergeraert 2012, 2016), including, in some cases, the first polynomial-time algorithms, by using a refined framework of objects with polynomial-time homology (Krčál et al. 2013; Čadek et al. 2014b) that allows for a computational complexity analysis. For an introduction to this area from a theoretical computer science perspective and an overview of some of these results, see, e.g., Čadek et al. (2013a) and the references therein.
Explicit maps
As mentioned above, the above algorithms often work with rather implicit representations of the homotopy classes in (or, more generally, in [X, Y]) but does not yields explicit maps representing these homotopy classes.
For instance, the algorithm in Real (1996) computes as the homology group of an auxiliary space constructed from X in such a way that and are isomorphic as groups.3
More recently, Romero and Sergeraert (2016) devised an algorithm that, given a 1-reduced (and hence simply connected) simplicial set X and , computes the homotopy group as the homotopy group of an auxiliary simplicial set K (a so-called Kan completion of X) with . Moreover, given an element of this group, the algorithm can compute an explicit simplicial map from a suitable triangulation of to K representing the given homotopy class. In this way, homotopy classes are represented by explicit maps, but as maps to the auxiliary space K, which is homotopy equivalent to but not homeomorphic to the given space X.
By contrast, our general goal is to is represent homotopy classes by maps into the given space; in the present paper, we treat, as an important first instance, the case .
Open problems and future work
Our next goal is to extend the results here to the setting of Čadek et al. (2014a), i.e., to represent, more generally, homotopy classes in [X, Y] by explicit simplicial maps from some suitable subdivision to Y (under suitable assumptions that allow us to compute [X, Y]).4
In a subsequent step, we hope to generalize this further to the equivariant setting of Čadek et al. (2017), in which a finite group G of symmetries acts on the spaces X, Y and all maps and homotopies are required to be equivariant, i.e., to preserve the symmetries.
As mentioned above, one motivation is the problem of algorithmically constructing embeddings of simplicial complexes into . Indeed, in a suitable range of dimensions (), the existence of an embedding of a finite k-dimensional simplicial complex K into is equivalent to the existence of an -equivariant map from an auxiliary complex (the deleted product) into the sphere , by a classical theorem of Haefliger (1962) and Weber (1967). The proof of the Haefliger–Weber Theorem is, in principle, constructive, but in order to turn this construction into an algorithm to compute an embedding, one needs an explicit equivariant map into the sphere .
Quantitative homotopy theory
Another motivation for representing homotopy classes by simplicial maps and complexity bounds for such algorithms is the connection to quantitative questions in homotopy theory (Gromov 1999; Ferry and Weinberger 2013) and in the theory of embeddings (Freedman and Krushkal 2014). Given a suitable measure of complexity for the maps in question, typical questions are: What is the relation between the complexity of a given null-homotopic map and the minimum complexity of a nullhomotopy witnessing this? What is the minimum complexity of an embedding of a simplicial complex K into ? In quantitative homotopy theory, complexity is often quantified by assuming that the spaces are metric spaces and by considering Lipschitz constants (which are closely related to the sizes of the simplicial representatives of maps and homotopies Ferry and Weinberger 2013). For embeddings, the connection is even more direct: a typical measure is the smallest number of simplices in a subdivision or K such that there exists a simplexwise linear-embedding .
Structure of the paper
The remainder of the paper is structured as follows: In Sect. 2, we give a high-level description of the main ingredients of the algorithm from Theorem A. In Sect. 3, we review a number of necessary technical definitions regarding simplicial sets and the frameworks of effective and polynomial-time homology, in particular Kan’s simplicial version of loop spaces and polynomial-time loop contractions for infinite simplicial sets. In Sect. 4, we formally describe the algorithm from Theorem A and give a high level proof based on a number of lemmas which are proved in in subsequent chapters. Section 5 contains the proof of Theorem B. The rest of the paper contains several technical parts needed for the proof of Theorem A: in Sect. 6, we describe Berger’s effective Hurewicz inverse and analyze its running time (Theorem 1), in Sect. 7, we prove that the stages of the Whitehead tower have polynomial-time contractible loops (Lemma 4). Finally, in Sect. 8, we show how to reduce the case when the input is a simplicial complex to the case of an associated simplicial set X and convert a map into a map from a subdivision into (Lemma 6).
Outline of the algorithm
In this section we present a high-level description of the main steps and ingredients involved in the algorithm from Theorem A.
The algorithm in a nutshell
In the simplest case when the space X is -connected (i.e., for all ), the classical Hurewicz Theorem (Hatcher 2001, Sect. 4.2) yields an isomorphism between the dth homotopy group and the dth homology group of X. Computing generators of the homology group is known to be a computationally easy task (it amounts to solving a linear system of equations over the integers). The key is then converting the homology generators into the corresponding homotopy generators, i.e., to compute an inverse of the Hurewicz isomorphism. This was described in the work of Berger (1991, 1995). We analyze the complexity of Berger’s algorithm in detail and show that it runs in exponential time in the size of X (assuming that the dimension d is fixed).
-
For the general case, we construct an auxiliary simplicial set together with a simplicial map that has the following properties:
- is a simplicial set that is connected, and
- induces an isomorphism .
The overall strategy is to use Berger’s algorithm on the space and compute generators of as simplicial maps. Then we use the simplicial map to convert each generator of into a map , and these maps generate . The main technical task for this step is to show that Berger’s algorithm can be applied to . For this, we need to construct a polynomial algorithm for explicit contractions of loops in (this space is 1-connected but not 1-reduced in general).
Our contributions
The main ingredients of the algorithm outlined above are the computability of stages of the Whitehead tower (Real 1996) as simplicial sets with polynomial-time homology and Berger’s algorithmization of the inverse Hurewicz isomorphism (Berger 1991, 1995).
The idea that these two tools can be combined to compute explicit representatives of is rather natural and is also mentioned, for the special case of 1-reduced simplicial sets, in Romero and Sergeraert (2016, p. 3); however, there are a number of technical challenges to overcome in order to carry out this program. On a technical level, our main contributions are as follows:
We give a complexity analysis of Berger’s algorithm to compute the inverse of the Hurewicz isomorphism (Theorem 1).
We show that the homology generators of the Whitehead stage can be computed in polynomial time (Lemma 3).
Berger’s algorithm requires an explicit algorithm for loop contraction—a certificate of 1-connectedness of the space . While is not 1-reduced in general, we describe an explicit algorithm for contracting its loop and show that Berger’s algorithm can be applied.
We remark that the Whitehead tower stages are simplicial sets with infinitely many simplices, and we need the machinery of objects with polynomial-time homology to carry out the last two steps.
Definitions and preliminaries
In this section, we give the necessary technical definitions that will be used throughout this paper. In the first part, we recall the standard definitions for simplicial sets and the toolbox of effective homology.
Afterwards, we present Kan’s definition of a loop space and further formalize our definition of (polynomial-time) loop contractions.
Simplicial sets and polynomial-time effective homology
Simplicial sets and their computer representation
A simplicial set X is a graded set X indexed by the non-negative integers together with a collection of mappings and called the face and degeneracy operators. They satisfy the following identities:
More details on simplicial sets and the motivation behind these formulas can be found in May (1992) and Goerss and Jardine (1999).
Simplicial maps between simplicial sets are maps of graded sets which commute with the face and degeneracy operators. The elements of are called -simplices. We say that a simplex is (non-)degenerate if it can(not) be expressed as for some . If a simplicial set X is also a graded (Abelian) group and face and degeneracy operators are group homomorphisms, we say that X is a simplicial (Abelian) group.
A simplicial set is called k-reduced for if it has a single i-simplex for each .
For a simplicial set X, we define the chain complex to be a free Abelian group generated by the elements of with differential
A simplicial set is locally effective if its simplices have a specified finite encoding and algorithms are given that compute the face and degeneracy operators. A simplicial map f between locally effective simplicial sets X and Y is locally effective if an algorithm is given that for the encoding of any given computes the encoding of .
We define a simplicial set to be finite if it has finitely many non-degenerate simplices. Such simplicial set can be algorithmically represented in the following way. The encoding of non-degenerate simplices can be given via a finite list and the encoding of a degenerate simplex for and a non-degenerate y can be assumed to be a pair consisting of the sequence and the encoding of y. The face operators are fully described by their action on non-degenerate simplices and can be given via finite tables. In this way, any simplicial set with finitely many non-degenerate simplices is naturally locally effective. Any choice of an implementation of the encoding and face operators is called a representation of the simplicial set. The size of a representation is the overall memory space one needs to store the data which represent the simplicial set.
Geometric realization
To each simplicial set X we assign a topological space |X| called its geometric realization. The construction is similar to that of simplicial complexes. Let be the geometric realization of a standard j-simplex for each . For each k, we define to be the inclusion of a -simplex into the i’th face of a k-simplex and be the geometric realization of a simplicial map that sends the vertices of to the vertices . The geometric realization |X| is then defined to be a disjoint union of all simplices X factored by the relation
where is the equivalence relation generated by the relations for , and the relations for , .
Similarly, a simplicial map between simplicial complexes naturally induces a continuous map between their geometric realizations.
Simplicial complexes and simplicial sets
In any simplicial complex , we can choose an ordering of vertices and define a simplicial sets that consists of all non-decrasing sequences of points in : the dimension of equals d. The face operator is omits the i’th coordinate and the degeneracy doubles the j’th coordinate. Moreover, choosing a maximal tree T in the 1-skeleton of X enables us to construct a simplicial set in which all vertices and edges in the tree, as well as their degeneracies, are considered to be a base-point (or its degeneracies). The geometric realizations of and X are homotopy equivalent and X is 0-reduced, i.e. it has one vertex only.
Homotopy groups
Let be a pointed topological space. The k-th homotopy group of is defined as the set of pointed homotopy6 classes of pointed continuous maps , where is a distinguished point. In particular, the 0-th homotopy group has one element for each path connected component of X. For , is the fundamental group of X, once we endow it with the group operation that concatenates loops starting and ending in . The group operation on for assigns to [f], [g] the homotopy class of the composition where factors an equatorial -sphere containing into a point. Homotopy groups are commutative for .
If the choice of base-points is understood from the context or unimportant, we will use the shorter notation . For a simplicial set X, we will use the notation for the k’th homotopy group of its geometric realization |X|.
An important tool for computing homotopy groups is the Hurewicz theorem. It says that whenever X is -connected, then there is an isomorphism . Moreover, if the element of is represented by a simplicial map and represents a homology generator of , then the Hurewicz isomorphism maps [f] to the homology class of the formal sum of d-simplices in X.
Effective homology
We call a chain complex locally effective if the elements have finite (agreed upon) encoding and there are algorithms computing the addition, zero, inverse and differential for the elements of .
A locally effective chain complex is called effective if there is an algorithm that for given generates a finite basis and an algorithm that for every outputs the unique decomposition of c into a linear combination of ’s.
Let and be chain complexes. A reduction
is a triple (f, g, h) of maps such that and are chain homomorphisms, has degree 1, and , and further .
A locally effective chain complex has effective homology ( is a chain complex with effective homology) if there is a locally effective chain complex , reductions
where is an effective chain complex, and all the reduction maps are computable.
Eilenberg–MacLane spaces
Let and be an Abelian group. An Eilenberg–MacLane space is a topological space with the properties and for . It can be shown that such space exists and, under certain natural restrictions, has a unique homotopy type. If is finitely generated, then has a locally effective simplicial model (Krčál et al. 2013).
Globally polynomial-time homology and related notions
In many auxiliary steps of the algorithm, we will construct various spaces and maps. To analyze the overall time complexity, we need to parametrize all these objects by the very initial input, which is in our case an encoding of a finite 1-reduced simplicial set (or, in Theorem A.1, a more general space endowed with certain explicit certificate of 1-connectedness).
More generally, let be a parameter set so that for each an integer is defined. We say that F is a parametrized simplicial set (group, chain group, ...) if for each , a locally effective simplicial set (group, chain group, ...) F(I) is given. The simplicial set F is locally polynomial-time if there exists a locally effective model of F(I) such that for each and an encoding of a k-simplex , the encoding of and can be computed in time polynomial in . The polynomial, however, may depend on k. A polynomial-time map between parametrized simplicial sets F and G is an algorithm that for each , and an encoding of an k-simplex x in F(I) computes the encoding of f(x) in time polynomial in : again, the polynomial may depend on k.
Similarly, a locally polynomial-time (parametrized) chain complex is an assignment of a computer representation of a chain complex with a distinguished basis in each gradation, such that all these basis elements have some agreed-upon encoding. A chain is assumed to be represented as a list of pairs and has size , where we assume that the size of an integer is its bit-size. Further, an algorithm is given that computes the differential of a chain in time polynomial in , the polynomial depending on k. The notion of a polynomial-time chain map is straight-forward.
A globally polynomial-time chain complex is a locally polynomial-time chain complex EC that in addition has all chain groups finitely generated and an additional algorithm is given that for each k computes the encoding of the generators of in time polynomial in . Finally, we define a simplicial set with globally polynomial-time homology to be a locally polynomial-time parametrized simplicial set F together with reductions
where are locally polynomial-time chain complexes, EC is a globally polynomial-time chain complex and the reduction data are all polynomial-time maps, as usual the polynomials depending on the grading k.
The name “polynomial-time homology” is motivated by the following:
Lemma 1
Let F be a parametrized simplicial set with polynomial-time homology and be fixed. Then all generators of can be computed in time polynomial in .
Proof
For the globally polynomial-time chain complex EF and each fixed j, we can compute the matrix of the differentials with respect to the distinguished bases in time polynomial in : we just evaluate on each element of the distinguished basis of . Then the homology generators of can be computed using a Smith normal form algorithm applied to the matrices of and , as is explained in standard textbooks (such as Munkres 1984). Polynomial-time algorithms for the Smith normal form are nontrivial but known (Kannan and Bachem 1981).
Let be the cycles generating . We assume that reductions
are given and all the reduction maps are polynomial. Thus we can compute the chains
in polynomial time and it is a matter of elementary computation to verify that they constitute a set of homology generators for .
Loop spaces and polynomial-time loop contraction
Principal bundles and loop group complexes
In the text we will frequently deal with principal twisted Cartesian products: these are simplicial analogues of principal fiber bundles. The definitions in this section come from Kan’s article (Kan 1958b).
We first define the Cartesian product of simplicial sets X, Y: The set of n-simplices consists of tuples (x, y), where . The face and degeneracy operators on are given by , .
Definition 1
(Principal Twisted Cartesian product) Let B be a simplicial set with a basepoint and G be a simplicial group. We call a graded map (of degree ) a twisting operator if the following conditions are satisfied:
for
, , and
for all where is the unit element of .
Let B, G, be as above. We will define a twisted Cartesian product to be a simplicial set E with , and the face and degeneracy operators are also as in the Cartesian product, i.e. , with the sole exception of , which is given by
It is not trivial to see why this should be the right way of representing fiber bundles simplicially, but for us, it is only important that it works, and we will have explicit formulas available for the twisting operator for all the specific applications.
We remark that in the literature one can find multiple definitions of twisted operator and twisted product (May 1992; Kan 1958b; Berger 1991) and that they, in essence differ from each other based on the decision whether the twisting “compresses” the first two or the last two face operators. Here, we follow the same notation as in Berger (1991).
Dwyer–Kan loop group construction
A simplicial set X can be viewed as a discrete description of a topological space |X|. It is natural to ask whether one can give a discrete description of a loop space of |X|. It turns out there are multiple models that can be used. Here, we describe the Dwyer–Kan’s G-construction (Kan 1958b) and later in Sect. 6, we present another model which is due to Berger (1991). Before the formal definition, we give some geometric intuition
For any one can define a graph where is the set of edges and is the set of vertices with source and target operators , defined by and . Further a relation is added.
In short, any simplex is an (n-dimensional) edge which goes from its second-to-last vertex to its last vertex and the simplex degenerate along this edge is considered a trivial path.
The Dwyer–Kan loop groupoid GX is defined as a free simplicial groupoid (e.g. paths) on the graph described above. In the case X is a 0-reduced simplicial set, the paths all begin and end in the only vertex, making them loops and the space GX can defined as follows:
Definition 2
Let X be a 0-reduced simplicial set. Then we define GX to be a (non-commutative) simplicial group such that
has a generator for each -simplex and a relation for each simplex in the image of the last degeneracy .
The face operators are given by for and
The degeneracy operators are .
We use the multiplicative notation, with 1 being the neutral element. For the proof that GX is indeed a discrete simplicial analog of the loop space of X, see Kan (1958b) and May (1992).
For algorithmic puroposes, we assume that an elements of GX is represented as a list of pairs and has size .
Definition 3
Let X be a 0-reduced simplicial set. We say that a map is a contraction of loops in X if and for each .
In case where X has finitely many nondegenerate 1-simplices, we define the size to be the sum
Loop contraction for simplicial complexes
Let be a simplicial complex. Let T be a spanning tree in the 1-skeleton of and R a chosen vertex. For each oriented edge we define a formal inverse to be and we also consider degenerate edges (v, v). A loop is defined as a sequence of oriented edges in such that
The end vertex of equals the initial vertex of , and
The initial vertex of and the end vertex of equal R.
Every edge e that is not contained in T gives rise to a unique loop . Further, every loop in is either a concatenation of such ’s, or can be derived from such concatenation by inserting and deleting consecutive pairs and degenerate edges. Before we formally define our combinatorial version of loop contraction, we need the following definition.
Definition 4
Let S be a set, , F(S) and F(U) be free groups generated by S, U, respectively.7 Let be a homomorphism that sends each to 1 and each to itself. We say that an element x of F(S) equals y modulo U if .
An example of an element that is trivial modulo U is the word , where and .
Definition 5
Let S be the set of all oriented edges and oriented degenerate edges in and assume that a spanning tree T is chosen. Let U be the set of all oriented edges in T, including all degenerate edges. A contraction of an edge is a sequence of vertices and such that
for each i, is a simplex of , and
-
the element of F(S)
equals modulo U.1 A loop contraction in a simplicial complex is the choice of a contraction of for each edge .
The size of the contraction of is defined to be the number of vertices in (1) and the size of the loop contraction on is the sum of the sizes over all .
The geometry behind this definition is displayed in Fig. 1. The sequence of ’s and ’s gives rise to a map from the sequence of (full) triangles into . The big loop around the boundary is combinatorially described by (1). We can continuously contract all of its parts that are in the tree T to a chosen basepoint, as the tree is contractible. Further, we can continuously contract all pairs of edges and what remains is the original edge : with all the tree contracted to a point, it will be transformed into a loop that geometrically corresponds to . The interior of the full triangles then constitutes its “filler”, hence a certificate of the contractibility of .
Fig. 1.

The loop ranging over the boundary of this geometric shape equals , after ignoring edges in the maximal tree and canceling pairs . The interior of the triangles gives rise to a contraction
A loop contraction in the sense of Definition 1 exists iff the space is simply connected. One could choose different notions of loop contraction. For instance, we could provide, for each , a simplicial map from a triangulated 2-disc into such that the oriented boundary of the disc would be mapped exactly to . The description from Definition 5 could easily be converted into such map. We chose the current definition because of its canonical and algebraic nature. The connection between Definitions 3 and 5 is the content of the following lemma.
Lemma 2
Let be a 1-connected simplicial complex with a chosen orientation of all simplices, the induced simplicial set, T a maximal tree in , and the corresponding 0-reduced simplicial set. Assume that a loop contraction in the simplicial complex is given, such as described in Definition 5. Then we can algorithmically compute such that and , for every generator of . Moreover, the computation of is linear in the size of and the size of the simplicial complex contraction data.
Proof
For each i, the triangle from Definition 5 is in the simplicial complex . There is a unique oriented 2-simplex in of the form (possibly degenerate) such that . Let us denote such oriented simplex by , and its image in by . We will define an element such that it satisfies
| 2 |
where is an equivalence relation that identifies any element with (note that only one of the symbols (U, V) and (V, U) is well defined in , resp. X.) Explicitly, we can define with these properties as follows:
If , then ,
If , then
If , then
If , then
If , then
If , then .
Let . The assumption (1) together with Eq. (2) immediately implies that . Thus we define . Algorithmically, to construct g amounts to going over all the triples from a given sequence of and ’s, checking the orientation and computing for every i.
Polynomial-time loop contraction
Let F be a parametrized simplicial set such that each F(I) is 0-reduced. Using constructions analogous to those defined above, GF is a parametrized locally-polynomial simplicial group whereas we assume a simple encoding of elements of as follows. If where are -simplices in F(I), not in the image of , then we assume that x is stored in the memory as a list of pairs and has size where some may be equal to for . Face and degeneracy operators are defined in Definition (2) and it is easy to see that for any locally polynomial-time simplicial set F, GF is a locally polynomial-time simplicial group.
Definition 6
Let F be a locally polynomial simplicial set. We say that F has polynomially contractible loops if there exists an algorithm that for a 0-simplex computes a 1-simplex such that , , and the running-time is polynomial in .
Proof of Theorem 1
We will prove a stronger statement of Theorem A formulated as follows.
Theorem A.1
There exists an algorithm that, given and a finite 0-reduced simplicial set X (alternatively, a finite simplicial complex) with an explicit loop contraction (such as in Definitions 3 or 5) computes the generators of as simplicial maps , for suitable triangulations of , .
For fixed d, the time complexity is exponential in the size of X and the size of the loop contraction ; more precisely, it is where is a polynomial depending only on d.
This immediately implies Theorem A, as for a 1-reduced simplicial set, the contraction is trivial, given by .
The proof of Theorem A.1 is based on a combination of four statements presented here as Lemma 3, Theorem 1, Lemma 4 and Lemma 6. Each of them is relatively independent and their proofs are delegated to further sections.
First we present an algorithm that, given a 1-connected finite simplicial set X and a positive integer d, outputs a simplicial set and a simplicial map such that
the simplicial set is connected, it has polynomial-time effective homology and polynomially contractible loops.
the simplicial map is polynomial-time and induces an isomorphism .
Whitehead tower
We construct simplicial sets as stages of a so-called Whitehead tower for the simplicial set X. It is a sequence of simplicial sets and maps
where induces an isomorphism for and for . We define . One can see that satisfy the desired properties.
Lemma 3
Let be a fixed integer. Then there exists a polynomial-time algorithm that, for a given 1-connected finite simplicial set X, constructs the stages of the Whitehead tower of X.
The simplicial sets , parametrized by 1-connected finite simplicial sets X, have polynomial-time homology and the maps are polynomial-time simplicial maps.
Proof
The proof is by induction. The basic step is trivial as . We describe how to obtain assuming that we have computed , .
-
We compute simplicial map that induces an isomorphism . This is done using the algorithm in Čadek et al. (2014b), as is the first nontrivial stage of the Postnikov tower for the simplicial set .
For the simplicial set and for such simplicial sets there is a classical principal bundle (twisted Cartesian product) (see May 1992):
- We construct and as a pullback of the twisted Cartesian product:

It can be shown that the pullback, i.e. simplicial subset of pairs such that , can be identified with the twisted product as above (May 1992), where the twisting operator is defined as .
To show correctness of the algorithm, we assume inductively, that has polynomial-time effective homology. According to Čadek et al. (2014b, Section 3.8), the simplicial sets , , have polynomial-time effective homology and maps are polynomial-time. Further, they are all obtained by an algorithm that runs in polynomial time.
As is constructed as a twisted product of with , Corollary 3.18 of Čadek et al. (2014b) implies that has polynomial-time effective homology and is a polynomial-time map.8
The sequence of simplicial sets
induces the long exact sequence of homotopy groups
The reason why this is the case follows from a rather technical argument that identifies the simplicial set with a so called homotopy fiber of the map . In more detail, the category of simplicial sets is right proper (Goerss and Jardine 1999, II.8.67) and map is a so-called Kan fibration (May 1992, §23). This makes the pullback coincide with so-called homotopy pullback. Further, the simplicial set is contractible, hence the homotopy pullback is a homotopy fiber. The induced exact sequence is due to Quillen (1967, chapter I.3).
The inductive assumption, together with the fact that induces an isomorphism imply that induces an isomorphism for and for .
The lemma implies that the simplicial sets have polynomial-time effective homology and maps are polynomial-time as they are defined as a composition of polynomial-time maps .
The following theorem is a key ingredient of our algorithm.
Theorem 1
(Effective Hurewicz Inverse) Let be fixed and F be an -connected 0-reduced simplicial set parametrized by a set , with polynomial-time homology and polynomially contractible loops.
Then there exists an algorithm that, for a given d-cycle , outputs a simplicial model of the d-sphere and a simplicial map whose homotopy class is the Hurewicz inverse of .
Moreover, the time complexity is bounded by an exponential of a polynomial function in .
The construction of an effective Hurewicz inverse is the main result of Berger (1991) and further details are provided in Sect. 6. It exploits a combinatorial version of Hurewicz theorem given by Kan (1958a) where is described in terms of where is a non-commutative simplicial group that models the loop space of F. Kan showed that the Hurewicz isomorphism can be identified with a map induced by Abelianization. Berger then describes the inverse of the Hurewicz homomorphism as a composition of the maps 1, 2, 3 in the diagram
![]() |
Arrow 1 is induced by a chain homotopy equivalence and arrow 3 by Berger’s explicit geometric model of the loop space. To algorithmize arrow 2, we need an algebraic machinery that includes an explicit contraction of k-loops in for all . Those are based partially on linear computations in the Abelian group and partially on explicit inductive formulas dealing with commutators. The lowest-dimensional contraction operation, however, cannot be algorithmized, without some external input. The possibility of providing it is the content of the following claim:
Lemma 4
Let be a fixed integer and be the set of all 1-connected 0-reduced finite simplicial sets with an explicit loop contraction . Then the simplicial set from Lemma 3, parametrized by has polynomial-time contractible loops (see Definition 6).
The proof is constructive, based on explicit formulas in our model of . The details are in Sect. 7.
We remark that the output of the algorithm in Lemma 4 i.e. the loop contraction of is polynomial time with respect to the input—a 0-reduced and 1-connected simplicial set with a specific loop contraction on this simplicial set.
The core of the algorithm we will describe works with simplicial sets and simplicial maps between them. If our input is a simplicial complex, we need tools to convert them into maps between simplicial complexes. The next two lemmas address this.
Lemma 5
Let Y be a finite simplicial set. Then there exists a polynomial-time algorithm that computes a simplicial complex with a given orientation of each simplex, and a map (still understood to be a map between simplicial sets) such that the geometric realization of is homotopic to a homeomorphism.
This construction is originally due to Barratt (1956), and described in detail in Čadek et al. (2013b, Appendix B).9 Explicitly, the simplicial complex is defined to be , where Sd is the barycentric subdivision functor and a functor introduced in Jardine (2004): can be constructed recursively by adding a vertex for each nondegenerate simplex and replacing by the cone with apex over . The subdivision Sd(Y) is a regular simplicial set and coincides with the flag simplicial complex of the poset of nondegenerate simplices of Sd(Y). It follows that the geometric realizations is homeomorphic10 to |Y|. Simplices of are naturally oriented and the explicit description of is given in Čadek et al. (2013b, p. 61) and the references therein.
In our main algorithm, will be a triangulation of the d-sphere and X a simplicial set derived from a simplicial complex by contracting its spanning tree into a point. The following lemma shows that we can convert a map into a map between simplicial complexes.
Lemma 6
Let be fixed. Assume that is a given simplicial complex with a chosen ordering of vertices and a maximal spanning tree T; we denote the underlying simplicial set by . Let be the projection to the associated 0-reduced simplicial set. Let be a given d-dimensional simplicial complex with a chosen orientation of each simplex, the induced simplicial set, and a simplicial map.
Then there exists a subdivision and a simplicial map between simplicial complexes11 such that
is homotopic to . Moreover, can be computed in polynomial time, assuming an encoding of the input , X and T.
Thus if is a sphere and f corresponds to a homotopy generator, is the corresponding homotopy generator represented as a simplicial map between simplicial complexes. We remark that the algorithm we describe works even if d is a part of the input, but the time complexity would be exponential in general, as the number of vertices in our subdivision would grow exponentially with d.
Proof of Theorem A.1
First assume that a finite simplicial complex is given together with a loop contraction. Then the algorithm goes as follows.
We choose an ordering of vertices and convert into a simplicial set. Choosing a spanning tree and contracting it to a point creates a 0-reduced simplicial set X homotopy equivalent to . By Lemma 2, we can convert the input data into a list for all generators of in polynomial time.
We construct the simplicial set from Lemma 3 as simplicial set with polynomial-time effective homology. Hence by Lemma 1 we can compute the generators of in time polynomial in . Due to Lemma 4 and Theorem 1, we can convert these homology generators to homotopy generators in time exponential in where P is a polynomial.
We compose the representatives of with to obtain representatives of the generators of , another polynomial-time operation. This way, we compute explicit homotopy generators as maps into the simplicial set X.
We use Lemma 5 to compute simplicial complexes and maps homotopic to homeomorphisms. The compositions still represent a set of homotopy generators. Finally, by Lemma 6, we can compute, for each j, a subdivision of the sphere and a simplicial map from this subdivision into the simplicial complex, in time polynomial in the size of the representatives .
In case when the input is a 0-reduced simplicial set X with a loop contraction , only steps 2 and 3 are performed. In either case, the overall exponential complexity bound comes from Berger’s Effective Hurewicz inverse theorem.
Proof of Theorem B
Similarly as in the proof of Theorem A, we prove a slightly more general version of Theorem B that also includes finite simplicial complexes.
Theorem B.1
Let be fixed. Then
there is an infinite family of d-dimensional 1-connected finite simplicial complexes X such that for any simplicial map representing a generator of , the triangulation of on which f is defined has size at least .
there is an infinite family of d-dimensional -connected and -reduced simplicial sets X such that for any simplicial map representing a generator of , the triangulation of on which f is defined has size at least .
Consequently, any algorithm for computing simplicial representatives of the generators of has time complexity at least .
The second item immediately implies Theorem B.
In the first item, we don’t assume any certificate for 1-connectedness. However, we suspect that any algorithm that computes representatives of for simplicial complexes Xmust necessarily use some explicit certificate of simple connectivity, but so far we have not been able to verify this.
Lemma 7
Let .
There exists a sequence of d-dimensional -connected simplicial complexes, such that for all k and for any choice of a cycle generating the homology group, the largest coefficient in grows exponentially in .
There exists a sequence of d-dimensional -connected and -reduced simplicial sets, such that for all k and for any choice of cycles generating the homology, the largest coefficient in grows exponentially12 in .
Proof of Theorem 2 based on Lemma 7
Let be the sequence of simplicial sets or simplicial complexes from Lemma 7. Since they are -connected, by the theorem of Hurewicz, . For each k, let be a simplicial set or simplicial complex with , and a simplicial map representing a generator of . The generator of contains each non-degenerate d-simplex with a coefficient (this follows from the fact that is a triangulation of the d-sphere and the d-homology of the d-sphere is generated by its fundamental class). The Hurewicz isomorphism maps such a representative to the formal sum of simplices
which represents a generator of . It follows from Lemma 7 that the number of d-simplices in grows exponentially in . Moreover, the complexity of any algorithm that computes is at least the size of , which completes the proof.
It remains to define the sequence from Lemma 7:
Proof of Lemma 7
1. We begin by constructing for every , a sequence of of -connected simplicial complexes, such that for all k, and for any choice of a cycle generating the homology group, the largest coefficient in grows exponentially in .
We start with . The idea is to glue out of k copies of a triangulated mapping cylinders of a degree 2 map , i.e. k Möbius bands, and then fill in the two open ends with one triangle each (A and B in Fig. 2). The case is shown in Fig. 2. For , we take k copies of the triangulated Möbius band and identify the middle circle of each one to the boundary of the next one.
Fig. 2.
The Möbius band is the mapping cylinder of a degree 2 map . The triangulation has four layers because starting from the boundary, which is a triangle, we first need to pass to a hexagon in order to cover the middle triangle twice, obtaining the desired degree 2 map. Connecting k copies of the Möbius band creates a mapping cylinder of a degree map, using only linearly (in k) many simplices. Gluing the full triangles A and B to the ends of this mapping cylinder finishes the construction of . The red coefficients exhibit a generator of given as a formal sum of 2-simplices
We observe that, up to homotopy equivalence, consists of a 2-disc with another 2-disc which is attached to it via the boundary map of degree . Therefore, is simply connected and has and any homology generator will contain the 2-simplex A with coefficient and B with coefficient .
Similarly for , the simplicial complex is obtained by glueing k copies of a triangulated mapping cylinder of a degree 2 map , and the two open ends are filled in with two triangulated d-balls.
2. For every we define the simplicial sets to have one vertex , no non-degenerate simplices up to dimension , k non-degenerate -simplices that are all spherical (that is, for all i, j, is the degeneracy of the only vertex of ), and d-simplices such that
, for ,
, , and for , and
, for .
does not have any non-degenerate simplices of dimension larger than d. The relations of a simplicial set are satisfied, because is trivial in all cases.
The boundary operator in the associated normalised chain complex acts on basis elements as
, and
.
To see that is -connected for , it is enough to prove that is trivial (by 1-reduceness and Hurewicz theorem). This is true, because is the boundary of A and for , is the boundary of the chain
In the case , is not 1-reduced, but we can show 1-connectedness similarly as in the proof of the first part: up to homotopy, consists of two discs with boundaries together via a map of degree .
There are no non-degenerate -simplices, so and a simple computation shows that every cycle is a multiple of
The computer representation of has size that grows linearly with k, but the coefficients of homology generators grow exponentially with k, so they grow exponentially with .
Discussion on optimality
If and X is a 1-reduced simplicial set, then generators of can be computed via the Smith normal form of the differential . Using canonical bases, the matrix of satisfies that the sum of absolute values over each column is at most 4. We were not able to find any infinite family of such matrices so that the smallest coefficient in any set of homology generating cycles grows exponentially with the size of X (that is, the size of the matrix). However, if a set of homology-generating cycles with subexponential coefficients always exists and can be found algorithmically in polynomial time, our main algorithm given as Theorem A is optimal in this case as well. This is because the exponential complexity of the algorithm only appears in the geometric realization of an element of with large (exponential) exponents (see “Arrow 3” in Sect. 6), and the only source of such exponents is the homology .
Effective Hurewicz inverse
Here, we will prove Theorem 1 by directly describing the algorithm proposed in Berger (1991) and analysing its running time.
Definition 7
Let G be a simplicial group. Then the Moore complex is a (possibly non-abelian) chain complex defined by endowed with the differential .
It can be shown that in and that is a normal subgroup of so that the homology is well defined.
Definition 8
Let F be a 0-reduced simplicial set, GF the associated simplicial group from Definition 2, and its Moore complex. We define AF to be the Abelianization of GF and to be the Moore complex of AF. The simplicial group AF is also endowed with a chain group structure via . If , we will denote by the corresponding simplex in , resp. .
Note that, following Definition 2, the “last” differential in equals . Clearly, the Abelianization map takes into .
Kan (1958a) showed that for and a -connected simplicial set F, the Hurewicz isomorphism can be identified with the map induced by Abelianization, whereas these groups are naturally isomorphic to and , respectively. Our strategy is to construct maps representing the isomorphisms 1, 2, 3 in the commutative diagram
![]() |
3 |
Here h stands for the Hurewicz isomorphism, 1 is induced by a homotopy equivalence of chain complexes, 2 is the inverse of where p is the Abelianization, and 3 represents an isomorphism between the ’th homology of (that models the loop space of F) and . The algorithms that compute 1, 2, 3 act on representatives, that is, 1 and 2 map cycles to cycles and 3 converts a cycle to a simplicial map where . In what follows, we will explicitly describe maps 1, 2, 3 and show that the underlying algorithms are polynomial for arrows 1, 2 and exponential for arrow 3.
Arrow 1
Let F be a 0-reduced simplicial set, be the (unreduced) chain complex of F and the shifted chain complex of AF defined by . As a chain complex, is a subcomplex of generated by all simplices that are not in the image of the last degeneracy. Let be the Moore complex of .
We will describe a chain homotopy . Arrow 1 then coincides, on the level of chains, with f. We only need f for the actual algorithm; however, we prefer to state a more general Lemma claiming that g, h are polynomial time maps as well.
Lemma 8
There exists a polynomial-time strong chain deformation retraction . That is, , are polynomial-time chain-maps and is a polynomial map such that and .
Proof
First we will describe the deformation retraction in terms of formulas and then comment on polynomiality.
Part 1: Formulas for the deformation retraction. We begin with a chain deformation retraction from to represented by , and .
The chain complex consists of Abelian groups freely generated by k-simplices in F that are not in the image of the last degeneracy . On generators, we define
| 4 |
The remaining maps are defined by and . It is a matter of straight-forward computations to check that and are chain maps, and .
Further, we define another chain deformation retraction from AF to . For each , let be a chain subcomplex of AF defined by
that is, the kernel of the p last face operators, not including ( refers here to the face operators in AF). Then is a chain subcomplex of and we define the maps by whenever , and otherwise; will be an inclusion, and via if and 0 otherwise. A simple calculation shows that are chain maps, , .
By definition, the Moore complex . The strong chain deformation retraction (f, g, h) from to is then defined by the compositions
and the sum
which are all well-defined, because when applying them to an element x, only finitely many of differ from the identity map and only finitely many are nonzero.
Part 2: Polynomiality. We need to show that if the degree k is fixed, then we can evaluate f, g, h on resp. in time polynomial in the input size. The map is defined via the if-else condition (4). To decide whether a simplex is in the image of amounts to deciding which can be done in time polynomial in , the polynomial depending on k. It follows that is a locally polynomial map. All the remaining maps and are defined via simple formulas and are obviously locally polynomial-time maps.
For fixed k, the definition of f, g, h includes only for . It follows that f, g are composed of k polynomial-time maps and h is a sum of k polynomial-time maps.
Arrow 2
This part is taken almost completely from Berger (1991), we only slightly adjusted the notation to our settings, formalized some details that in Berger (1991) are treated as obvious, and comment on polynomiality.
To summarize the main ideas, we will define an algorithm for computing contraction operators that geometrically represent contraction of spheres in the loop space of F. The first such contraction actually corresponds to the contraction of loops in F and cannot be derived algorithmically in general. That’s the reason why we insist on having some kind of information about the loop contraction . Higher contractions, however, can be derived via formulas, assuming the input is -connected (we don’t have a good intuition for this fact, but the Hurewicz isomorphism is probably the key; it is easy to construct these contractions on the Abelian part and the hard work is to pull them back to the non-commutative ). Formulas for the contractions are the core of Arrow 2.
![]() |
5 |
Given an algorithm for the contractions, Arrow 2 is then defined as follows. For a cycle , we compute an arbitrary p-preimage y, , and then adjust it to which already is a cycle in .
We remark that without having something like the contraction data , it is hard to find any non-trivial spherical elements of .
Lemma 9
(Boundary certificate) Let be fixed and let F be a -connected simplicial set with polynomial-time homology. There is an algorithm that, for and a cycle , computes an element such that . The running time is polynomial in .
Proof
First note that the -connectedness of F implies that are trivial for , so each cycle in these dimensions is a boundary.
By assumption, F has a polynomial-time homology, which means that there exists a globally polynomial-time chain complex , a locally polynomial-time chain complex Y and polynomial-time reductions from Y to and
Let be chain homotopy equivalence of Y and defined as the composition of
and the chain homotopy equivalence of and described in Lemma 8. Further, let be the maps defining the reduction
: all of these maps are polynomial-time.
Let and , . Then the element is a cycle in and can be computed in time polynomial in . In particular, the size of is bounded by such polynomial. The number of generators of and is polynomial in and we can compute, in time polynomial in , the boundary matrix of with respect to the generators.
Next we want to find an element such that . Using generating sets for , , this reduces to a linear system of Diophantine equations and can be solved in time polynomial in the size of the -matrix and the right hand side (Kannan and Bachem 1981).
Finally, we claim that is the desired element mapped to z by the differential in . This follows from a direct computation
The computation of t as well as all involved maps are polynomial-time, hence the computation of is polynomial too.
The next lemma will be needed as an auxiliary tool later.
Lemma 10
Let S be a countable set with a given encoding, G be the free (non-abelian) group generated by S, and define . Let be its commutator subgroup.
Then there exists a polynomial-time algorithm that for an element in , computes elements such that .
In other words, we can decompose commutator elements into simple commutators in polynomial-time at most.
Proof
Let us choose a linear ordering on S and let be in : that is, for each j, the exponents sum up to zero. We will present a bubble-sort type algorithm for sorting elements in g. Going from the left to right, we will always swap and whenever . Such swap always creates a commutator, but that will immediately be moved to the initial segment of commutators.
More precisely, assume that Init is the initial segment, and should be swapped, Rest represent the segment behind y, and Commutators is a final segment of commutators. The swapping will consists of these steps:
where the parenthesis enclose a new segment of commutators. Before the parenthesis, x and y are swapped. Each such swap requires enhancing the commutator section by two new commutators of size at most , hence each such swap has complexity linear in .
Let us call everything before the commutator section a “regular section”. Going from left to right and performing these swaps will ensure that the largest element will be at the end of the regular section. But no later then that, the largest element disappears from the regular section completely, because all of its exponents add up to 0. Again, starting from the left and performing another round of swaps will ensure that the second-largest elements disappear from the regular section; repeating this, all the regular section will eventually disappear which will happen in at most swaps in total. Each swap has complexity linear in and the overall time complexity is not worse than cubic.
Lemma 11
Assume that F is a parametrized simplicial set with polynomially contractible loops. Let , be spherical, i.e. , , and is arbitrary. There is a polynomial-time algorithm that computes such that and for all .
In other words, a simple commutator of a spherical element with another element can always be “contracted” in in polynomial time. Our proof roughly follows the construction in Kan (1958a, Sect. 8).
Proof
For , we will denote by the element of such that : this can be computed in polynomial-time by the assumption on polynomial loop contractions. For the simplex , we define -simplices by and inductively for . Then the following relations hold:13
.
,
.
The second and third equations are a matter of direct computation, while the first follows from the more general relation which can be proved by induction. If k is fixed, then all can be computed in polynomial time.
The desired element is then the alternating product
Lemma 12
Under the assumptions of Theorem 1, there exist homomorphisms for such that
,
, , and
for and ,
for all .
If d is fixed and , , then can be computed in polynomial time.
Proof
The homomorphism can be constructed directly from the assumption on polynomial contractibility of loops. We have a canonical basis of consisting of all non-degenerate 1-simplices of F. For , we denote by the corresponding generator of . The we define to be where is the element of such that and .
In what follows, assume that and have been defined for all . We will define in the following steps.
Step 1. Contractible elements.
Let . We will say that x is contractible and is a contraction of x if and for all .
The general strategy for defining will be to find a contraction h for each basis element (-simplex) and define . This will enforce properties 1 and 2. Moreover, in case when g is degenerate, the contraction will be chosen in such a way that property 3 holds too; otherwise it holds vacuously. Property 4 only deals with and is satisfied by the definition of loop contraction (a polynomial-time is given as an input in Theorem 1).
Step 2. Contraction of degenerate elements.
Let be a basis element of , . Then g can be uniquely expressed as where j is the maximal i such that . We then define . Note that
so property 1 is satisfied. To verify property 2, first assume that . Then we have
This fully covers the case , because then the only possibility is and . Further, let . If , then we have
and if , then the computation is completely analogous, using the relation instead.
So far, we have shown that is a contraction of g. It remains to show property 3. That is, we have to show that if can also be expressed as , then .
The degenerate element g has a unique expression where and is expressible as iff for some . Choosing such , we can rewrite g as for some v and then , so that and . Then we again use induction to show
as required.
Step 3. Decomposition into spherical and conical parts.
We will call an element to be conical if it is a product of elements that are either degenerate or in the image of . Let be arbitrary. We define and inductively . In this way we obtain such that is in the kernel of for and where y is a product of degenerate simplices. Further, let . A simple computation shows that is spherical, that is, for all i. We obtain an equation where ; this is a decomposition of x into a spherical part and a conical element .
We will define on non-degenerate basis elements by first decomposing into a spherical and conical part, finding contractions of and of , and defining . Then is a contraction of g and hence satisfies properties 1 and 2: property 3 is vacuously true once g is non-degenerate.
Step 4. Contraction of the conical part.
Let be the conical part defined in the previous step. By construction, and y is a product of degenerate elements . We define the contraction of to be
Note that this satisfies property 1 as . For property 2, we first verify
Not let . If , then the remaining face operator is and we have
using axiom 4 for . Finally, if and , we have
where we exploited the fact that and hence for .
The contraction of degenerate elements y has already been defined in Step 2, so we can define a contraction of to be .
Step 5. Contraction of commutators.
Let be an element of the commutator subgroup. By Lemma 10, we can algorithmically decompose into a product of simple commutators, so to find a contraction of , it is sufficient to find a contraction of each simple commutator [x, y] in this decomposition.
Let and be the decompositions into spherical and conical parts described in Step 3. Using the notation , we can decompose [x, y] as follows (Berger 1991, p. 60):
| 6 |
Both and are spherical simplices and so are their conjugations. It follows that Eq. (6) can be rewritten to where and are spherical. All of these decompositions are done by elementary formulas and are polynomial-time in the size of x and y.
By Lemma 11 we can find an elements such that , , in polynomial time. Further, both and are conical and they are in the form where and is degenerate; similar decomposition holds for y. In Step 4 we showed how to compute elements and such that , is a contraction of , , respectively. Then is a contraction of and is a contraction of [x, y].
Step 6. Contraction of spherical elements.
The last missing step is to compute a contraction of the spherical element where is the spherical part of a basis element .
Let us denote by p the projection . The projection is in the kernel of all face operators and hence a cycle in . By Lemma 9, we can compute such that , in polynomial time. Let be any p-preimage14 of t. Let and inductively define for . Then is in the kernel of all faces except , that is, . It follows that is in the kernel of all faces except . We claim that .This can be shown as follows: assume that , then .
We have the following commutative diagram:
![]() |
Both and are mapped by p to the same element z: it follows that is mapped by p to zero and hence is an element of the commutator subgroup. Let be the contraction of , computed in Step 5, and finally let . Then h is an element of and a direct computation shows that as desired.
This completes the construction of : for each non-degenerate basis element g of , is defined to be the product of the contraction of and the contraction15 of .
All the subroutines described in the above steps are polynomial-time. Thus we showed that if there exists a polynomial-time algorithm for , then there also exists a polynomial-time algorithm for . The existence of a polynomial-time follows from the assumption on polynomial loop contractibility and d is fixed, thus there exists a polynomial-time algorithm that for computes for each .
Lemma 13
(Construction of arrow 2) Under the assumption of Theorem 1, let be a cycle. Then there exists a polynomial-time algorithm that computes a cycle such that the Abelianization of x is z.
The assignment is hence an effective inverse of the isomorphism
on the level of representatives.
Proof
Let be the contraction from Lemma 12 and be a cycle. First choose such that . Creating the sequence , for decreasing j, yields an element that is still mapped to z by p, similarly as in Step 4 of Lemma 12. The equation shows that is in the commutator subgroup . We define : this is already a cycle in and .
Arrow 3
A cycle represents a generator of the homotopy group . Given such g, our goal is to construct a simplicial set with and a simplicial map with .
Consider first the following naive idea of the construction: Suppose that , where . For simplicity, assume that ’s are all nondegenerate simplices. We then take n disjoint simplices and define sending to . From the fact that , we now define relations on the faces of ’s (say we conclude that , then we add relation ). Putting all such relations together we define a simplicial set and a simplicial map where f factors through , see Fig. 3 for an example.
Fig. 3.

Let with , where , , , , and . Simplicial set Y is then obtained by identifying faces of triangles as pictured here. One can see
We have nearly achieved what we aimed for - one can show that |Y| is homotopy equivalent to the wedge sum of d - dimensional spheres and . However, in general |Y| is not homeomorphic to . One way to overcome the problem is to make the space Y “thicker” and making sure that identifying simplices never results in a wedge of spheres.
To this end, we utilize the following construction which is one of the main results from Berger (1995). Here, we describe the main points of the construction while details are given in later sections.
On an algebraic level, we define another simplicial model of a loopspace of F—a simplicial group . Further, there is a homomorphism of simplicial groups that induces an isomorphism on the level of homotopy groups. This is described in Berger (1995, Proposition 3.3).
The homomorphism t is given later by formula (8) and the simplicial set is described in the next section. Here, we remark that the size of t(g) is exponential in size of g.
Finally, Lemma 14 describes an algorithm that for a spherical element constructs a simplicial map such that - essentially using the naive idea described above. We describe the construction in detail in the next section.
The size of is polynomial in . Hence, given a spherical , the algorithm produces that is exponential with respect to .
Berger’s model of the loop space
Definition 9
(Oriented multigraph on) Let X be a 0-reduced simplicial set. We define a directed multigraph , where the set of vertices and the set of edges is given by
We define maps by setting , and and .
An edge is called compressible if for some .
Definition 10
(Paths) Let . A sequence of edges in
| 7 |
is called an n-path if , .
Moreover, for every we define a path of length zero with the property and relations whenever and whenever .
The set of paths on is denoted by . Let by as in (7). We define and . The inverse of , denoted , is defined as
if = , then . Note that each path is either equal to for some x or can be represented in a form such as (7), without any units.
For algorithmic purposes, we assume that a path is represented as a list of triples and has size
which is bounded by a linear function in .
Given an edge , we define operators
called face and degeneracy operators, respectively. These are given as follows
One can now extend the definition of face and degeneracy operators to paths, i.e. we define operators and
With the operators defined above, one can see that IX is in fact a simplicial set.
For any such that , we define a composition in an obvious way.
If the simplicial set X is 0-reduced, we denote the unique basepoint . Abusing the notation, we denote the iterated degeneracy of the basepoint by as well. With that in mind, we define simplicial subsets PX, of IX as follows:
We remark that simplicial sets intuitively capture the idea of path space and loop space in a simplicial setting.
Definition 11
A path is called reduced if for every the following condition holds:
e.g. an edge in the path is never followed by its inverse.
An edge is called compressible if for some . A path is compressed if it does not contain any compressible edge.
We define relation on IX (or rather on each ) as a relation generated by
Similarly, we define on IX as a relation generated by
We finally define . Similarly, one defines .
For , we write if they represent the same element in . The symbol , denotes the (unique) compressed and reduced path such that . One can see () as the set of reduced and compressed paths in .
In a natural way, we can extend the definition of face and degeneracy operators on sets ,) by setting and . One can check that this turns , and into simplicial sets.
Similarly, we define operation by , i.e. we first compose the loops and then assign the appropriate compressed and reduced representative. With the operation defined as above, is a simplicial group.
Homomorphism
We first describe how to any given assign a path with the property and :
For , , the 0-reducedness of X gives us , here , . In particular, . Using this, we define
Ignoring the degeneracies, one can see the sequence of edges as a path
We define the homomorphism t on the generators of , i.e. on the elements , where as follows:
| 8 |
This is an element of .
The algorithm representing the map t has exponential time complexity due to the fact that an element with size is mapped to
which in general can have size proportional to k. Assuming an encoding of integers such that , this amounts to an exponential increase.
Universal preimage of a path
Intuitively, one can think of the simplicial set IX of paths as of a discretized version of space of continuous maps . In particular, is a walk through a sequence of d-simplices in X that connect with . However, in the continuous case an element corresponds to a continuous map . We want to push the parallels further, namely, given any nontrivial16, we aim to define a simplicial set and a simplicial map with the following properties:
.
maps to the set of simplices contained in the path .
We will utilize the following construction given in Berger (1995).
Definition 12
Let . We define and as follows. Suppose, that . For every edge , let be the simplicial map sending the nondegenerate d simplex in to .
We define as a quotient of the disjoint union of k copies of :
where each copy of corresponds to a domain of a unique and the relation is given by
The map is induced by the collection of maps :
![]() |
We recall that simplicial set was defined as the set of “reduced and compressed” paths in IX. Similarly, one introduces a reduced and compressed versions of the construction . As a final step we then get
Lemma 14
(Section 2.4 in Berger 1995) Let such that for all i. Then the map factorizes through a simplicial set model of the sphere as follows:
![]() |
Further, .
We will not give the proof of correctness of Lemma 14 (it can be found in Berger 1995). Instead, in the next section, we only describe the algorithmic construction of and give a running time estimate.
Algorithm from Lemma 14
The algorithm accepts an element such that for all i, a spherical element. We divide the algorithm into four steps that correspond to the four step factorization in the following diagram:
![]() |
- :
We interpret as an element in IX and construct . This is clearly linear in the size of .
- :
-
The algorithm checks, whether an edge in , where is compressible, i.e. . If this is the case, add a corresponding relation on the preimages: . Factoring out the relations, we get a map .
Although the number of faces we have to go through is exponential in d, this is not a problem, since d is deemed as a constant in the algorithm and so is . Hence the number of operations is again linear in the size of .
- :
Let . We know that , so after removing all compressible elements from the path , it will contain a sequence of pairs ( such that, after removing all for all , then and are next to each other.17 Each such pair corresponds to a pair of indices corresponding to the positions of those edges in . These sequences are not unique, but can be easily found in time linear in . Then we glue with for all i. Performing such identifications for all k defines the new simplicial set .
- :
It remains to identify and with the appropriate degeneracy of the (unique) basepoint. The resulting space is a d-sphere.
Polynomial-time loop contraction in
In this section, we show that simplicial sets , constructed algorithmically in Sect. 4 have polynomial-time contractible loops, thus proving Lemma 4.
Assuming that X is a 0-reduced, 1-connected simplicial set with a given algorithm that computes the contraction on loops , the contraction on is automatically defined, as .
The majority of the effort in the rest of this section is concentrated on the description of the contraction on , as show that the contraction can be easily obtained from the contraction on .
We remark that the loop contractions, i.e. maps with and , are not unique. We only describe one of possible choices and provide an analysis on the overall length of the formulas/running time of the algorithm.
Notation
We will further use the following shorthand notation: For a 0-reduced simplicial set X we will denote the iterated degeneracy of its unique basepoint by and we set . For any Eilenberg–Maclane space , , we denote its basepoint and its degeneracies by 0. From the context, it will always be clear which simplicial set we refer to.
Loop contraction on ,
Suppose we have defined the contraction on the generators of . i.e. for any we have
such that and . In detail, we get the following:
| 9 |
| 10 |
We now aim to give a reduction on the generators of , . Simplicial set is an iterated twisted product of the form
As simplicial sets are 1-reduced for , we can identify elements of with vectors , where . We further shorthand the series of zeros in the vector with . Hence generators are of the form . The 1-reducedness also implies that whenever , .
Finally, we set
The (almost) freeness of , the fact that are 1-reduced for and Eqs. (9), (10) give that and .
Before the definition of contraction on simplicial set , we recall some basic facts about the simplicial model of Eilenberg–MacLane spaces we are using.
Eilenberg–MacLane spaces
As noted in Sect. 3, given a group and an integer an Eilenberg–MacLane space is a space satisfying
In the rest of this section, by we will always mean the simplicial model which is defined in May (1992, p. 101)
where is the standard q-simplex and denotes the cocycles. This means that each q-simplex is regarded as a labeling of the i-dimensional faces of by elements of such that they add up to on the boundary of every -simplex in , hence elements of are in bijection with elements of . The boundary and degeneracy operators in are given as follows: For any , is given by a restriction of to the j-th face of . To define the degeneracy we first introduce mapping given by
Every mapping defines a map .The degeneracy is now defined to be (see May 1992, §23).
It follows from our model of Eilenberg–MacLane space, that elements of can be identified with labelings of 1-faces of a 2-simplex by elements of that sum up to zero.
As is an Abelian group, we use the additive notation for . We identify the elements of with triples , , , such that .
Loop contraction on
Let X be a 0-reduced, 1-connected simplicial set with a given algorithm that computes the contraction on loops .
In the rest of the section, we will assume . Then by our assumptions , where , . Let .
We first show that in order to give a contraction on elements of the form and , it suffices to have the contraction on elements of the form :
Contraction on element (x, 0)
Let . We define
Contraction on element (x, k)
Suppose . The formula for the contraction is given using the formulae on contraction on and as follows
Contraction on element
We formalize the existence of the contraction as follows:
Lemma 15
Let . Then there is an algorithm that computes an element such that and .
The proof is postponed until later and uses a variety of technical results. The main idea is to take a generator of represented by a spherical element with , and use it to find a filler of .
Consider first the following, simplified, situation: Suppose that there is with and . Let , then . Observe that
Purely from the point of view of information at our disposal, we are close to finding . What we need to do is to employ some algebraic machinations that would “uncouple” the pair into, say and , “merge” with (thus eliminating it) and , finally, “switch” the “” and “”. These informally described operations are made precise in Lemma 17.
In general case, for an arbitrary one cannot expect that there exists y with the properties as above, however, the following is true:
Lemma 16
Let , then there exists where and , such that and .
Proof
Given an element , one can compute a cycle such that
where the middle isomorphism is induced by and the other isomorphisms follow from the Hurewicz theorem.
We recall that the loop contraction on the space X is given as a part of the input. According to Lemma 13, one can compute the inverse of the Hurewicz isomorphism
on the level of representatives.
Therefore, if we consider , we can algorithmically compute a spherical element and it is easy to see that it has the desired properties.
We can now use Lemma 16 and some minor technical tricks to prove Lemma 15.
Proof of Lemma 15
Let , then, by Lemma 16, we compute with and , such that and .
We define by
Observe that and
We apply Lemma 18 on and get an element with the property and . We define . Thus and .
Technical statements
Definition 13
Let and let We define an equivalence relation on the elements of W in the following way: We say that if there exists , such that , and .
Lemma 17
Let such that
, where Then .
, where . Then .
, where . Then .
, where . Then .
, where . Then .
Proof
In all cases, we assume such that and we give a formula for with :
.
.
.
.
.
Lemma 18
Let , with
where in , , , , . Then .
Proof
We achieve the proof using a sequence of equivalences given in Lemma 17. Without loss of generality we can assume that and (If this is not the case, we can use rule (1) and/or relabel the elements). Using (1) gives us
Then successive use of (3), (1), (4), (1) and finally (5) gives us
multiple use or rules (2) and (1) and gives us
So far, we have produced some element such that ,
and further in .
It follows that the construction described above can be applied iteratively until all elements are removed and we obtain .
Computational complexity
We first observe that formulas for on a general element depend polynomially on the size of and the size of contractions on . Hence it is enough to analyze the complexity of the algorithm described in Proposition 15.
The computation of is obtained by the polynomial-time Smith normal form algorithm presented in Kannan and Bachem (1981) and the polynomial-time algorithm in Lemma 13. The size of depends polynomially (in fact linearly) on size of . The algorithm described in Lemma 18 runs in a linear time in the size of .
To sum up, the algorithm computes the formula for contraction on the elements of in time polynomial in the input ().
Reconstructing a map to the original simplicial complex
This section contains the proof of Lemma 6 formulated on page 20. To summarize it, we will prove that whenever a simplicial set X was constructed from a simplicial complex by contracting its spanning tree T into the basepoint and is a simplicial complex, then we can convert a simplicial map into a simplicial map between simplicial complexes where is a suitable subdivision of . We will describe an explicit construction and argue that the underlying algorithm is polynomial.
Edgewise subdivision of simplicial complexes
In Edelsbrunner and Grayson (1999), the authors present, for , the edgewise subdivision of an m-simplex that generalizes the two-dimensional sketch displayed in Fig. 4. This subdivision has several nice properties: in particular, the number of simplices of grows polynomially with k. Explicitly, the subdivision can be represented as follows.
The vertices of are labeled by integer coordinates such that and .
Two vertices and are adjacent if there is a pair such that and for .
Simplices of are given by tuples of vertices such that each vertex of a simplex is adjacent to each other vertex.
We define the distance of two vertices to be the minimal number of edges between them.
Fig. 4.

Edgewise subdivision of a 2-simplex for . In this case, there exists a copy of the 2-simplex completely in the “interior”, defined by vertices (2, 1, 1), (1, 2, 1) and (1, 1, 2). All other vertices are at the “boundary”: more formally, their coordinates contain a zero
An edgewise k-subdivision of induces an edgewise k-subdivision of all faces, hence we may naturally define an edgewise subdivision of any simplicial complex.
Constructing the map
Let R be a chosen root in the tree T. We denote the tree-distance of a vertex W from R by . Let
be the maximal tree-distance of some vertex from R. For each vertex V of , there is a unique path in the spanning tree that goes from R into V. Further, we define the maps from vertices of into vertices of such that
if , and
M(j)(V) is the vertex on the unique tree-path from R to V that has tree-distance j from R if .
If, for example, is a path in the tree, then , etc. Clearly, is the identity map, as l equals the longest possible tree-distance of some vertex.
Assume that d is the dimension of and . We will define simplexwise. Let be an m-simplex and be its image in the simplicial set X. If is the degeneracy of the base-point , then we define for all vertices x of : in other words, will be constant on the subdivision of . Otherwise, is not the degeneracy of a point and has a unique lift (recall that ). Let be the vertices of (order given by orientation): these vertices are not necessarily different, as may be degenerate.
In the algorithm, we will need to know which faces of are in the tree T. We formalize this as follows: let be the family of all subsets of such that
For each , is in the tree (that is, it is either an edge or a single vertex),
Each set in S is maximal wrt. inclusion.
Elements of S correspond to maximal faces of that are in the tree, in other words, to faces of that are degeneracies of the base-point.
Definition 14
Let be an oriented m-simplex, represented as a sequence of vertices . For any face , we define the extended facein to be the set of vertices in that have nonzero coordinates only on positions i such that .
The geometric meaning of this is illustrated by Fig. 5.
Fig. 5.
Illustration of extended faces. Here corresponds to the lower- and left-face of a 2-simplex. The extended faces and are sets of vertices of that are on the lower- and left-boundary. The corresponding extended tree is the union of all these vertices. The integers indicate edge-distances of vertices in from
Definition 15
Let S be defined as above. We define the extended tree to be the union of the extended faces in for all . The edge-distance of a vertex x in from will be denoted by .
In words, it is the union of all vertices in parts of the boundary of that correspond to the faces of that are in the tree, see Fig. 5. The number is the distance to x from those boundary parts that correspond to faces of that are in the tree.
To define a simplicial map from to , we need to label vertices of by vertices of such that the induced map takes simplices in to simplices in . Recall that are the vertices of . For , we denote by the smallest index of a coordinate of x among those with maximal value [for instance, , as the first 4 is on position 0]. The geometric meaning of is illustrated by Fig. 6.
Fig. 6.

Labeling vertices of by
Now we are ready to define the map . It is defined on vertices x with coordinates by
| 11 |
Geometrically, most vertices x will be simply mapped to for which the j’th coordinate of x is dominant. In particular, a unique m-simplex “most in the interior of ” with coordinates
| 12 |
for suitable j will be labeled by ; in other words, it will be mapped to .18
However, vertices x close to those boundary parts of that correspond to the tree-parts of , will be mapped closer to the root R and all the extended tree will be mapped to R. One illustration is in Fig. 7.
Fig. 7.
Example of the labeling induced by formula (11). We assume that where is a simplex of with three different vertices . In this example, the tree connects as well as and the edge is not in the tree. On the right, we give the induced labeling of vertices of which determines a simplicial map to . The bottom and left faces of are in the tree, hence the bottom and left extended faces in are all mapped into R. The right face of is the edge that is not in the tree: the corresponding right extended face in is mapped to a loop , where is the only part that is not in the tree. The bold edges are sent to the edge . The most interior simplex in is highlighted and is the only one mapped to
Computational complexity
Assuming that we have a given encoding of and a choice of T and R, defining a simplicial map is equivalent to labeling vertices of by vertices of . Clearly, the maximal tree-distance l of some vertex depends only polynomially on the size of and can be computed in polynomial time, as well as the maps . Whenever , we can use the formula . Further, is linear in l, assuming the dimension d is fixed. If is an m-simplex, then the number of vertices in is polynomial19 in k, and their coordinates can be computed in polynomial time. Finding the lift of is at most a linear operation in . Converting into an ordered sequence amounts to computing its vertices , where is omitted. Collecting information on faces of that are in the tree and the set of vertices is straight-forward: note that assuming fixed dimensions, there are only constantly many faces of each simplex to be checked. If is a face, then the edge-distance of a vertex x from equals to . Applying formula (11) to x requires to compute the edge-distance of x from : this equals to the minimum of the edge-distances of x from for all faces s of that are in the tree. Computing is a trivial operation. Finally, the number of simplices of is bounded by the size of , so applying (11) to each vertex of only requires polynomially many steps in .
Correctness
What remains is to prove that formula (11) defines a well-defined simplicial map and that is homotopic to .
Lemma 19
The above algorithm determines a well-defined simplicial map .
Proof
First we claim that formula (11) defines a global labeling of vertices of by vertices of . For this we need to check that if is a face of , then (11) maps vertices of compatibly. This follows from the following facts, each of them easily checkable:
If is spanned by vertices of corresponding to , then a vertex in has coordinates x in equal to zero on positions and to on other positions, successively.
- If for are the vertices of the corresponding face of , then
The extended tree in equals the intersection of the extended tree in with
The distance in equals in .
Further, we need to show that this labeling defines a well-defined simplicial map, that is, it maps simplices to simplices. We claim that each simplex in is mapped either to some subset of or to some edge in the tree T, or to a single vertex.
We will show the last claim by contradiction. Assume that some simplex is not mapped to a subset of , and also it is not mapped to an edge of the tree and not mapped to a single vertex. Then there exist two vertices x and y in this simplex that are labeled by U and W in , such that either U or W is not in , UW is not in the tree, and .
The fact that at least one of does not belong to , implies that or (as M(j) maps each to itself for ).
Without loss of generality, assume that and . Then the coordinates of x and y are either
such that for all , or
for some j such that for all .
We claim that and that the edge is not in the tree. This is because there exists a tree-path from R via U to and also a tree-path from R via W to (and ): both as well as a tree-edge would create a circle in the tree. In coordinates, this means that vertices are not contained in , apart of and . So, any vertex in has a zero on either the zeroth or the first coordinate. This immediately implies that and . Keeping in mind that coordinates of x (and y) has to sum up to , the smallest possible value of j is (if is maximal), in which case and . This choice, however, would contradict the fact that either or . Therefore we have a strict inequality Finally, we derive a contradiction having either , or a similar inequality for y.
This completes the proof that each simplex is either mapped to a subset of or to an edge in the tree or to a single vertex: the image is a simplex in in either case.
Lemma 20
The geometric realizations of and are homotopic.
Proof
First we reduce the general case to the case when all maximal simplices in (wrt. inclusion) have the same dimension d. If this were not the case, we could enrich any lower-dimensional maximal simplex by new vertices and produce a maximal d-simplex
Thus we produce a simplicial complex with the required property. Whenever is mapped to where , we define to be , a degenerate simplex with lift . The map is constructed from as above and if we prove that |f| is homotopic to as maps , it immediately follows that their restrictions are homotopic as maps as well.
Further, assume that all maximal simplices have dimension d. Let be a d-dimensional simplex and let be the simplex in spanned by the vertices
that is, the simplex in the interior of that is mapped by to . Let be a linear map that takes linearly to via mapping the i’th vertex to where the is on position i. Further, let be a linear homotopy between the identity and . The composition then gives a homotopy between the restrictions and . For a general , there exists a maximal d-simplex such that and we define a homotopy
It remains to show that this map is independent on the choice of .
Let us denote the (ordered) vertices of by and let be one of its faces: further, let be the vertex of with barycentric coordinates in such that the is in position i. The homotopy sends points in onto the span of points for which . For , the j-th barycentric coordinate of is equal to for each . In particular, the j-th coordinate of is between 0 and l / k for , and hence it is not the “dominant” coordinate. It follows that each is contained in the interior of a unique simplex of such that for all vertices x of .
Let be the indices with , and be the remaining indices. Let be another d-simplex containing as a face. Assume, for simplicity, that the vertices of are ordered so that vertices of have orders —such as it is in . Let be the lift of , respectively, and , the i-th vertex of , respectively.
We define a “mirror” map , which to a point with barycentric coordinates with respect to assigns a point in with the same barycentric coordinates with respect to . Clearly, for and whenever z is in the interior of a simplex , then m(z) is in the interior of , where vertices of and have the same barycentric coordinates with respect to and , respectively. If, moreover, is such that each of its vertices r have coordinates on positions , then .
To summarize these properties, and satisfy that20
they have the same coordinates wrt. , , respectively,
they are in the interior of simplices , whose vertices have the same coordinates wrt. , , respectively,
the labeling induces the same labeling of vertices of , by vertices of , respectively.
The map takes each m-simplex in with vertices labeled by onto and it follows from the above properties that is mapped to the same simplex. We conclude that for each and (Fig. 8).
Fig. 8.

The homotopy takes y linearly into z and takes y into . Due to the symmetry represented by the horizontal line, maps into the same point of X as
Acknowledgements
Open access funding provided by Austrian Science Fund (FWF). We would like to thank Marek Krčál, Lukáš Vokřínek, Martin Čadek and Sergey Avvakumov for helpful conversations and comments.
Footnotes
This follows via a standard reduction from a result of Adyan (1955) and Rabin (1958) on the algorithmic unsolvability of the triviality problem of a group given in terms of generators and relations; we refer to the survey Soare (2004) for further background.
That is, they compute integers such that is isomorphic to .
Similarly, the algorithm in Čadek et al. (2014b) constructs an auxiliary chain complex C such that is isomorphic to the homology group and computes the latter.
Similarly as before, the algorithm in Čadek et al. (2014a) computes [X, Y] as the set [X, P] for some auxiliary space P (a stage of a Postnikov system for Y) and represents the elements of as maps from X to P, but not as maps to Y.
The Whitehead tower can is a “dual” construction to the Postnikov tower, beginning with the space X and gradually eliminating the homotopy groups “’form the bottom”. For the readers familiar with Moore–Postnikov towers (or relative Postnikov towers), the Whitehead tower is the Moore–Postnikov tower for , see e.g. Goerss and Jardine (1999), Def. IV, 2.9.
A homotopy is pointed if for all .
Formally, elements of F(S) are sequences of symbols for and with the relation , where 1 represents the empty sequence. The group operation is concatenation.
We remark that the paper Čadek et al. (2014b) uses a different formalization of twitsed cartesian product than the one employed by us. However, the paper Filakovský (2012), on which the Corollary 3.18 of Čadek et al. (2014b) is based, can be reformulated in context of the definition used here. We do not provide full details, only remark that one has to make a choice of Eilenberg–Zilber reduction data that corresponds to the definition of twisted cartesian product.
A version of this lemma is given as Barratt (1956, Theorem 2) or Čadek et al. (2013b, Proposition 3.5). However, we also need the fact that is homeomorphic to |Y|, which is not explicitly mentioned in the references, but follows easily from the construction.
The subdivision Sd(Y) has geometric realization homeomorphic to |Y| by Fritsch and Piccinini (1990, Thm 4.6.4). The realization of Sd(X) is a regular CW complex and coincides with the first derived subdivision of this regular CW complex, as defined in Geoghegan (2007, p. 137). The geometric realization of the resulting simplicial complex is still homeomorphic to |Y| and |Sd(Y)| by Geoghegan (2007, Prop. 5.3.8).
The constructed map f does not necessarily preserves orientations: it only maps simplices to simplices.
With a slight abuse of language, we assume that each not only a simplicial set but also its algorithmic representation with a specified size such as explained in Sect. 3.
Kan uses a slightly different convention in Kan (1958a) but the resulting properties are the same. The sequence can be interpreted as a discrete path from to the identity element.
For , we may choose (choosing any order of the simplices).
The connectivity assumption on F was exploited in the existence of the contraction on the Abelian part.
By nontrivial we mean that for any .
For example, can be split into a sequence .
If is maximal, then and this most-middle simplex has particularly nice coordinates .
Here the assumption on the fixed dimension d is crucial.
In general, vertices of may have different order in and and the assumption on compatible ordering was chosen only to increase readability. If are such that (orders of -vertices wrt. ) and are positions of the remaining vertices in , then m is defined so that it maps with -coordinates into with coordinates and .
The research leading to these results has received funding from Austrian Science Fund (FWF): M 1980.
References
- Adyan SI. Algorithmic unsolvability of problems of recognition of certain properties of groups. Dokl. Akad. Nauk SSSR (NS) 1955;103:533–535. [Google Scholar]
- Anick, D.J.: The computation of rational homotopy groups is #-hard. In: Proceedings of the Conference on Computers in Geometry and Topology, Chicago/IL, 1986, Lecture Notes in Pure and Application Mathematics, vol. 114, pp. 1–56 (1989)
- Barratt M. Simplcial and Semisimplicial Complextes. Mimeographed Lecture Notes. Princeton: Princeton University; 1956. [Google Scholar]
- Berger, C.: An effective version of the Hurewicz theorem. Theses, Université Joseph-Fourier—Grenoble I, (1991). https://tel.archives-ouvertes.fr/tel-00339314
- Berger C. Un groupoïde simplicial comme modèle de l’espace des chemins. Bull. Soc. Math. Fr. 1995;123(1):1–32. [Google Scholar]
- Brown EH., Jr Finite computability of Postnikov complexes. Ann. Math. 1957;2(65):1–20. [Google Scholar]
- Čadek, M., Krcál, M., Matoušek, J., Vokřínek, L., Wagner, U.: Extending continuous maps: polynomiality and undecidability. In: STOC, pp. 595–604 (2013a)
- Čadek M, Krčál M, Matoušek J, Vokřínek L, Wagner U. Extendability of continuous maps is undecidable. Discrete Comput. Geom. 2013;51(1):24–66. [Google Scholar]
- Čadek M, Krčál M, Matoušek J, Sergeraert F, Vokřínek L, Wagner U. Computing all maps into a sphere. J. ACM. 2014;61(3):17:1–17:44. [Google Scholar]
- Čadek M, Krčál M, Matoušek J, Vokřínek L, Wagner U. Polynomial-time computation of homotopy groups and Postnikov systems in fixed dimension. SIAM J. Comput. 2014;43(5):1728–1780. [Google Scholar]
- Čadek M, Krčál M, Vokřínek L. Algorithmic solvability of the lifting-extension problem. Discrete Comput. Geom. 2017;57:1–51. [Google Scholar]
- Edelsbrunner, H., Grayson, D.R.: Edgewise subdivision of a simplex. In: Proceedings of the Fifteenth Annual Symposium on Computational Geometry, SCG ’99, pp. 24–30, New York, NY, USA, 1999. ACM
- Edelsbrunner H, Harer JL. Computational Topology. Providence, RI: American Mathematical Society; 2010. [Google Scholar]
- Ferry S, Weinberger S. Quantitative algebraic topology and lipschitz homotopy. Proc. Natl. Acad. Sci. 2013;110(48):19246–19250. [Google Scholar]
- Filakovský, M.: Effective chain complexes for twisted products. Preprint (2012). arXiv:1209.1240
- Filakovský, M., Vokřínek, L.: Are two given maps homotopic? An algorithmic viewpoint (2013). Preprint arXiv:1312.2337
- Franek P, Krčál M. Robust satisfiability of systems of equations. J. ACM. 2015;62(4):26:1–26:19. [Google Scholar]
- Freedman M, Krushkal V. Geometric complexity of embeddings in . Geom. Funct. Anal. 2014;24(5):1406–1430. [Google Scholar]
- Fritsch R, Piccinini RA. Cellular Structures in Topology. Cambridge Studies in Advanced Mathematics. Cambridge: Cambridge University Press; 1990. [Google Scholar]
- Geoghegan, R.: Topological Methods in Group Theory. Graduate Texts in Mathematics. Springer, New York (2007). https://books.google.at/books?id=BwX6gblqV8MC
- Goerss PG, Jardine JF. Simplicial Homotopy Theory. Basel: Birkhäuser; 1999. [Google Scholar]
- Gromov, M.: Quantitative homotopy theory. In: Rossi, H. (ed.) Prospects in Mathematics: Invited Talks on the Occasion of the 250th Anniversary of Princeton University, pp. 45–49 (1999)
- Haefliger, A.: Plongements différentiables dans le domaine stable. Comment. Math. Helv. 37, 155–176 (1962/1963)
- Hatcher A. Algebraic Topology. Cambridge: Cambridge University Press; 2001. [Google Scholar]
- Heras J, Pascual V, Rubio J, Sergeraert F. fKenzo: a user interface for computations in algebraic topology. J. Symb. Comput. 2011;46(6):685–698. [Google Scholar]
- Jardine JF. Simplicial approximation. Theory Appl. Categ. 2004;12(2):34–72. [Google Scholar]
- Kan, D.: The Hurewicz theorem. In: International Symposium of Algebraic Topology, Autonomous University of Mexico and UNESCO, pp. 225–231 (1958a)
- Kan DM. A combinatorial definition of homotopy groups. Ann. Math. 1958;67(2):282–312. [Google Scholar]
- Kannan R, Bachem A. Polynomial algorithms for computing the Smith and Hermite normal forms of an integer matrix. SIAM J. Comput. 1981;8:499–507. [Google Scholar]
- Kochman SO. Stable Homotopy Groups of Spheres: A Computer-Assisted Approach. Lecture Notes in Mathematics. Berlin: Springer; 1990. [Google Scholar]
- Krčál M, Matoušek J, Sergeraert F. Polynomial-time homology for simplicial Eilenberg–MacLane spaces. Found. Comput. Math. 2013;13:935–963. [Google Scholar]
- Mabillard, I., Wagner, U.: Eliminating higher-multiplicity intersections, II. The deleted product criterion in the -metastable range. In: Proceedings of the 32nd International Symposium on Computational Geometry (SoCG 2016), pp. 51:1–51:12 (2016)
- Matoušek, J.: Computing higher homotopy groups is -hard. Fund. Inf. (2014). Preprint arXiv:1304.7705
- Matoušek J, Tancer M, Wagner U. Hardness of embedding simplicial complexes in . J. Eur. Math. Soc. 2011;13(2):259–295. [Google Scholar]
- Matoušek, J., Sedgwick, E., Tancer, M., Wagner, U.: Embeddability in the 3-sphere is decidable. In: Proceedings of the Thirtieth Annual ACM Symposium on Computational Geometry, SOCG’14, pp. 78–84, New York, NY, USA (2014)
- Matveev S. Algorithmic Topology and Classification of 3-Manifolds. Berlin: Springer; 2007. [Google Scholar]
- May JP. Simplicial Objects in Algebraic Topology. Chicago Lectures in Mathematics. Chicago: University of Chicago Press; 1992. [Google Scholar]
- Munkres JR. Elements of Algebraic Topology. Reading, MA: Addison-Wesley; 1984. [Google Scholar]
- Quillen DG. Homotopical Algebra. Lecture Notes in Mathematics. Berlin: Springer; 1967. [Google Scholar]
- Rabin MO. Recursive unsolvability of group theoretic problems. Ann. Math. 1958;2(67):172–194. [Google Scholar]
- Ravenel DC. Complex Cobordism and Stable Homotopy Groups of Spheres. 2. Providence: American Mathematical Society; 2004. [Google Scholar]
- Real P. An algorithm computing homotopy groups. Math. Comput. Simul. 1996;42:461–465. [Google Scholar]
- Romero A, Sergeraert F. Effective homotopy of fibrations. Appl. Algebra Eng. Commun. Comput. 2012;23(1–2):85–100. [Google Scholar]
- Romero A, Sergeraert F. A Bousfield-Kan algorithm for computing the effective homotopy of a space. Found. Comput. Math. 2016;17:1–32. [Google Scholar]
- Romero A, Rubio J, Sergeraert F. Computing spectral sequences. J. Symb. Comput. 2006;41(10):1059–1079. [Google Scholar]
- Rubio J, Sergeraert F. Constructive algebraic topology. Bull. Sci. Math. 2002;126(5):389–412. [Google Scholar]
- Rubio J, Sergeraert F. Algebraic models for homotopy types. Homol. Homotopy Appl. 2005;17:139–160. [Google Scholar]
- Rubio, J., Sergeraert, F.: Constructive homological algebra and applications. Preprint arXiv:1208.3816 (2012)
- Schön R. Effective Algebraic Topology. Memoirs of the American Mathematical Society. Providence: American Mathematical Society; 1991. [Google Scholar]
- Sergeraert F. The computability problem in algebraic topology. Adv. Math. 1994;104(1):1–29. [Google Scholar]
- Smith, J.R.: m-Structures determine integral homotopy type. Preprint arXiv:math/9809151v1 (1998)
- Soare RI. Computability theory and differential geometry. Bull. Symb. Logic. 2004;10(4):457–486. [Google Scholar]
- Vokřínek L. Decidability of the extension problem for maps into odd-dimensional spheres. Discrete Comput. Geom. 2017;57(1):1–11. [Google Scholar]
- Weber C. Plongements de polyèdres dans le domaine metastable. Comment. Math. Helv. 1967;42:1–27. [Google Scholar]
- Zomorodian AJ. Topology for Computing. Cambridge Monographs on Applied and Computational Mathematics. Cambridge: Cambridge University Press; 2005. [Google Scholar]










