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