近似#P难题


9

考虑经典的#P-完全问题#3SAT,即计算使3CNF与 n变量可以满足。我对加法近似性感兴趣。显然,有一个简单的算法可以实现2n−1-错误,但是如果 k<2n−1,是否可能有一个有效的近似算法,还是这个问题也是#P-hard?


如果 k=2n−1−poly(n),那么有一个具有加法误差的多重时间算法 k。如果k=2n/poly(n),那么将会有一个带有加性误差的随机多时间算法 k。什么时候k明显较小(但不是多项式较小),我希望它是NP-hard,而不是#P-hard,因为#P硬度通常取决于它是精确的计算。
— 托马斯

您能为前两个索赔提供参考吗?抱歉,我是初学者...
— user0928

Answers:


10

我们对#3SAT的加法近似感兴趣。即给定一个3CNFϕ 上 n 变量计算满意的分配数量(称其为 a)直至附加误差 k。

这是一些基本结果:

情况1: k=2n−1−poly(n)

这里有一个确定性的多重时间算法: m=2n−2k=poly(n)。现在评估ϕ 上 m 任意输入(例如,按字典顺序 m输入)。假设ℓ 这些输入满足 ϕ。然后我们知道a≥ℓ 因为至少有 ℓ 满意的任务和 a≤2n−(m−ℓ) 因为至少有 m−ℓ不满意的作业。这个间隔的长度是2n−(m−ℓ)−ℓ=2k。所以如果我们输出中点2n−1−m/2+ℓ 这是在 k 根据需要提供正确答案。

情况2: k=2n/poly(n)

这里我们有一个随机的多时间算法:评估 ϕ 在 m 随机点 X1,⋯,Xm∈{0,1}n。让α=1m∑i=1mϕ(Xi) 和 ε=k/2n。我们输出2n⋅α。为了这个最多有错误k 我们需要

k≥|2nα−a|=2n|α−a/2n|,
相当于 |α−a/2n|≤ε.由Chernoff边界,
P[|α−a/2n|>ε]≤2−Ω(mε2),
如 E[ϕ(Xi)]=E[α]=a/2n。这意味着,如果我们选择m=O(1/ε2)=poly(n) (并确保 m 是...的力量 2),那么至少有概率 0.99,错误最多 k。

情况3: k=2cn+o(n) 对于 c<1

在这种情况下,问题是#P-hard:我们将减少#3SAT。参加3CNFψ 上 m变量。挑n≥m 这样 k<2n−m−1 -这需要 n=O(m/(1−c))。让ϕ=ψ 除了 ϕ 现在在 n 变量,而不是 m。如果ψ 已 b 满足任务,然后 ϕ 已 b⋅2n−m 令人满意的作业 n−m“自由”变量可以在令人满意的分配中采用任何值。现在假设我们有a^ 这样 |a^−a|≤k - 那是 a^ 是满足以下条件的分配数量的近似值 ϕ 有附加误差 k。然后

|b−a^/2n−m|=|a−a^2n−m|≤k2n−m<1/2.
以来 b 是整数,这意味着我们可以确定的确切值 b 从 a^。通过算法确定的准确值b需要解决#P-完全问题#3SAT。这意味着它很难计算a^。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.