Obstruction theory and the complexity of counting group homomorphisms
Eric Samperton, Armin Weiß
TL;DR
The paper investigates the computational complexity of counting homomorphisms to a fixed finite group $G$ from a variable input group $\Gamma$, emphasizing how the encoding of $\Gamma$ drives complexity. It proves a dichotomy: if $\Gamma$ is given by a finite presentation, the problem is $\#\mathsf{P}$-complete for non-abelian $G$ but solvable in polynomial time for abelian $G$, with corollaries extending hardness to restricted input classes such as RAAGs and certain small-cancellation or finite nilpotent inputs. In contrast, when $G$ is class-2 nilpotent and $\Gamma=\pi_1(M^3)$ for a triangulated 3-manifold, there is a polynomial-time algorithm to compute $\#\mathrm{Hom}(\pi_1(M^3),G)$ by reducing obstruction problems to cohomology, aided by preprocessing that converts the manifold to an Eilenberg–MacLane space. The approach blends a $\#\mathrm{CSP}$ framework (via the ternary relation $T_G$ and Mal’tsev polymorphisms), obstruction theory in group cohomology, and HQFT/Clem preprocessing results to handle 3-manifold inputs, with implications for topological quantum computation through 3-manifold invariants.
Abstract
Fix a finite group $G$. We study the computational complexity of counting problems of the following flavor: given a group $Γ$, count the number of homomorphisms $Γ\to G$. Our first result establishes that this problem is $\#\mathsf{P}$-hard whenever $G$ is a non-abelian group and $Γ$ is provided via a finite presentation. We give several improvements showing that this hardness conclusion continues to hold for restricted $Γ$ satisfying various promises. Our second result, in contrast, shows that if $G$ is class 2 nilpotent and $Γ= π_1(M^3)$ for some input 3-manifold triangulation $M^3$, then there is a polynomial time algorithm. The difference in complexity is explained by the fact that 3-manifolds are close enough to being Eilenberg-MacLane spaces for us to be able to solve the necessary group cohomological obstruction problems efficiently using the given triangulation. A similar polynomial time algorithm for counting maps to finite, class 2 nilpotent $G$ exists when $Γ$ is itself a finite group encoded via a multiplication table.
