I would like to compute the homology of certain low dimensional CW complexes and I am hoping to take advantage of software that handles simplicial sets as input. Thus, I would like to convert a CW complex into a homologically equivalent simplicial set.


In the case where the CW complex is regular, everything is easy. I just build the order complex of the face partial order on the cells of $\mathcal{X}$. What should I do when confronted with a non-regular CW complex?


More precisely, consider a (not necessarily regular) finite CW complex $\mathcal{X}$ and define the following combinatorial structure $(X,a)$. $X$ is a graded set $X = \sqcup\_k X\_k$ where $X\_k$ is the set of all $k$-cells of $\mathcal{X}$. The maps $a\_k: X\_k \times X\_{k-1} \to \mathbb{Z}$ are defined as follows: $a(\xi,\eta)$ is the degree of the attaching map from the boundary of $\xi$ onto $\eta$.


Question:



> 
> Is there a standard method for taking $(X,a)$ as input and producing a simplicial set whose homology coincides with that of $\mathcal{X}$?
> 
> 
> 


If not, can we come up with such a method?


**Update** In light of objections in the comments, I have tried to present the question with a more accurate title and also removed the unreasonable homotopy equivalence requirement.



Constructing a simplicial set homology-equivalent to a given CW complex
For a 2-dimensional complex, I think the following works, but I may not have checked carefully enough. Given a finite 2-dimensional CW complex, I'll describe a finite simplicial set with the same homology. (Note: this procedure uses the full attaching maps, not just their degrees.)


First, the 1 skeleton is a graph, maybe with multiple edges and loops, but in any case it's a simplicial set once you make choices of orientations on the edges. Let's assume that all the attaching maps for 2-cells are regular edge paths (i.e. ones that linearly traces out a sequence of n edges in equal time).


First, "double" every edge in the 1-skeleton by adding a new edge with the opposite orientation, and then add a "fake" 2-simplex whose faces are these paired edges along with (the degeneration of) one of their common vertices. (There's a choice involved in adding these 2-simplices, but I don't think it matters.)


Each 2-cell in your complex is attached along a regular edge-path of length n in the original graph. In some cases, it may traverse an edge in the wrong direction (according to the orientations chosen above) and in this case we'll use the double of that edge instead. (Note that the double still has the same endpoints just in the opposite order.) 


To be precise: subdivide the disk into an n-gon, and attach it according to the given regular edge path, using the double edges as explained. This really amounts to attaching n 2-simplices which all have a common (new) vertex.


If you collapse the "fake" 2-simplices down to edges, you recover the original complex. I think this projection map should at least be a homology equivalence, if not a homotopy equivalence. Actually, if there are finitely many cells then the homology isomorphism follows immediately from the Vietoris-Begle mapping theorem, because the equivalence classes we're collapsing are either points or intervals: <http://en.wikipedia.org/wiki/Vietoris%E2%80%93Begle_mapping_theorem>


