Lecture 8 - 2025 / 3 / 13
DNF Counting
Definition (Disjunctive Normal Form): 称形如 (x1∧x2∧⋯)∨(x3∧⋯)∨⋯ 为 DNF。
类似的,CNF 就是常见的 SAT 问题,有 #SAT(φ)=2n−#DNF(¬φ)。
我们试图设计一个算法在多项式时间内估算 DNF 的解的比例的 FPRAS。
Definition (fully polynomial randomized approximation scheme): 针对 f:Σ∗→N 的 FPRAS 是一个算法,读入 (x,ε),在关于 ∣x∣,ε−1 多项式时间内输出随机变量 Z 满足:
Pr[(1−ε)f(x)≤Z≤(1+ε)f(x)]≥43
给定 DNF φ1∨⋯∨φn,共涉及 x1,⋯,xm。设第 i 个 term 的解集为 Si,显然 Si=2m−∣φi∣,目标即为求 ∣⋃Si∣。具体而言,构造集合
U={(a,i)∣a∈Si}
从而 ∣U∣=i=1∑n∣Si∣。我们可以在 U 中均匀随机采样 (a,i)。我们称一个样本 (a,i) 是 special 的,当且仅当 ∀j<i,a∈/Sj。换言之,a 最早出现在 Si 中。
从而
E[#total#special]=∣U∣∣⋃Si∣
由于 μ≥n1,从而由 Unbiased Estimator Theorem,可以在 O(ε2n2) 次采样得到 43 正确率的估计。
Network Reliability (1)
对于一张图 G,有 n 个点 m 条边,每条边有 p 的概率割断,记 pfail 为 G 不连通的概率,即“网络鲁棒性”。
Theorem: 存在关于 n,ε−1 多项式时间的 FPRAS 估测 pfail。(对于每条边隔断概率不同的情况,依然存在)
设 c 为最小割的长度。
如果 pc≥n41,则直接使用 Monte Carlo 方法,根据 Unbiased Estimator Theorem,由于 μ≥pc,可以在 O(μ2ε21)=O(n8ε−2) 次采样中得到估计。后文假设该性质不成立,即 pc=n−(4+δ)。
用 α-最小割 表示大小不超过 αc,且仅将 G 分为两部分的割。
考虑如下算法 RMinCut:均匀随机抽取图中一条边 (u,v),将两个点缩点(保留重边),直到只剩下 2 个点,返回它们之间所有的边。
Theorem: 设 C⊂E 是任一个最小割,则 Pr[RMinCut returns C]≥(2n)−1。
由于最小割大小为 c,所以任何点的度数都 ≥c,也就是 ∣E(G)∣≥2cn。
从而第 1 轮选中 C 中边的概率 ≤cn/2c=n2
容易看出等价于一直没有选择 C 中的边,而且缩点并不会导致新图最小割变小,从而
Pr[C survive all rounds]≥(1−n2)(1−n−12)⋯(1−32)=n(n−1)2
Corollary: 任意图 G 的最小割的数量不超过 (2n),因为 RMinCut 输出任何一个最小割是互斥事件。
Claim: 只有至多 n2α 个 α-最小割,这些割可以在关于 n,ε−1 的多项式时间内列举出。
类似上面的证明方法,对于任意一个 α-最小割 C,有
Pr[C survive until 2α vertices remain]≥(1−n2α)⋯(1−2α+12α)=(2αn)−1
对于剩下 2α 个点的图,任意输出一个割,则
Pr[C survive]≥(2αn)−122α−11≥n2α1
最后,根据 coupon-collector,可以在期望 O(n2αlogn2α) 次实验内,列举出所有的 α-最小割。
从而,我们对于 poly(n) 个 α-最小割,可以用加权的 DNF Counting 的方式,估算至少一个发生的概率。具体而言,割掉 x 条边的方案权值为 px(1−p)m−x,从而一个 term 的总权值为 p∣φi∣,可以构造
E(a,i)∑p∣a∣(1−p)m−∣a∣special (a,i)∑p∣a∣(1−p)m−∣a∣=i=1∑np∣φi∣cut a∑p∣a∣(1−p)m−∣a∣
的 (1±ε) 估计,而右边分子正是我们想求的概率。