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.
翻译:固定一个有限群 $G$。我们研究以下计数问题的计算复杂性:给定一个群 $Γ$,计算同态 $Γ\to G$ 的数量。我们的第一个结果表明,只要 $G$ 是一个非阿贝尔群,并且 $Γ$ 是通过有限表示给出的,该问题就是 $\#\mathsf{P}$-困难的。我们给出了若干改进,证明即使对满足各种承诺的受限 $Γ$,这一困难结论仍然成立。相比之下,我们的第二个结果表明,如果 $G$ 是类 2 幂零群,并且 $Γ= π_1(M^3)$ 是某个输入的三维流形三角剖分 $M^3$ 的基本群,则存在一个多项式时间算法。这种复杂性差异的原因在于,三维流形足够接近 Eilenberg-MacLane 空间,使得我们能够利用给定的三角剖分高效地解决必要的群上同调障碍问题。当 $Γ$ 本身是通过乘法表编码的有限群时,也存在一个类似的、用于计算到有限类 2 幂零群 $G$ 的映射的多项式时间算法。