The network unreliability problem asks for the probability that a given undirected graph gets disconnected when every edge independently fails with a given probability $p$. Valiant (1979) showed that this problem is \#P-hard; therefore, the best we can hope for are approximation algorithms. In a classic result, Karger (1995) obtained the first FPTAS for this problem by leveraging the fact that when a graph disconnects, it almost always does so at a near-minimum cut, and there are only a small (polynomial) number of near-minimum cuts. Since then, a series of results have obtained progressively faster algorithms to the current bound of $m^{1+o(1)} + \tilde{O}(n^{3/2})$ (Cen, He, Li, and Panigrahi, 2024). In this paper, we obtain an $m^{1+o(1)}$-time algorithm for the network unreliability problem. This is essentially optimal, since we need $O(m)$ time to read the input graph. Our main new ingredient is relating network unreliability to an {\em ideal} tree packing of spanning trees (Thorup, 2001).
翻译:网络不可靠性问题旨在计算给定无向图中每条边以给定概率$p$独立失效时,图变得不连通的概率。Valiant (1979) 证明了该问题是#P难问题;因此,我们至多只能期望得到近似算法。在一个经典结果中,Karger (1995) 通过利用图断开连接时几乎总是发生在接近最小割处,且接近最小割的数量很少(多项式级别)这一事实,首次为该问题获得了完全多项式时间近似方案(FPTAS)。此后,一系列研究逐步获得了更快的算法,当前最佳时间复杂度为$m^{1+o(1)} + \tilde{O}(n^{3/2})$(Cen, He, Li, and Panigrahi, 2024)。本文中,我们提出了一个时间复杂度为$m^{1+o(1)}$的网络不可靠性问题算法。这本质上是理论最优的,因为读取输入图就需要$O(m)$时间。我们的核心创新在于将网络不可靠性与生成树的{\em理想}树打包(Thorup, 2001)联系起来。