1
对均匀一致的满意分配进行抽样
问题:给定通过一个布尔电路表示,产生一个均匀的随机X ∈ { 0 ,1 } Ñ使得φ (X )= 1(或输出⊥如果没有这样的x存在)。 φ :{ 0 ,1 }ñ→ { 0 ,1 }ϕ:{0,1个}ñ→{0,1个}\phi : \{0,1\}^n \to \{0,1\}X ∈ { 0 ,1 }ñX∈{0,1个}ñx \in \{0,1\}^nϕ (x )= 1ϕ(X)=1个\phi(x)=1⊥⊥\perpXXx 显然,这个问题很难解决。我的问题是这个问题是否也是“ NP-easy”: 问题:是否存在一种算法可以解决上述在中的时间多项式和ϕ可以访问SAT oracle 的电路大小的问题? ññnϕϕ\phi 另外,是否有一个多项式时间算法假设NP = P? 显然,可以访问#SAT甲骨文就足够了,因此复杂性在NP和#P之间。 我觉得应该早已研究过此方法,但在Google上找不到答案。 我知道如何使用Valiant-Vazirani定理的一个变体和/或近似计数来近似解决该问题(即,生成一个统计上接近统一的令人满意的赋值),但获得完全统一似乎是一个不同的问题。