Estamos interesados en aproximaciones aditivas al # 3SAT. es decir, dado un 3CNF en n variables, cuente el número de asignaciones satisfactorias (llame a esto a ) hasta el error aditivo k .ϕnak
Aquí hay algunos resultados básicos para esto:
Caso 1: k=2n−1−poly(n)
Aquí hay un algoritmo determinista de poli-tiempo: Sea . Ahora evalúe ϕ en m entradas arbitrarias (p. Ej., Las primeras m entradas lexicográficamente ). Suponga que ℓ de estas entradas satisfacen ϕ . Entonces conocemos un ≥ ℓ ya que hay al menos ℓ asignaciones satisfactorias y un ≤ 2 n - ( m - ℓ )m=2n−2k=poly(n)ϕmmℓϕa≥ℓℓa≤2n−(m−ℓ)ya que hay al menos tareas insatisfactorias. La longitud de este intervalo es 2 n - ( m - ℓ ) - ℓ = 2 k . Entonces, si sacamos el punto medio 2 n - 1 - m / 2 + ℓ esto está dentro de k de la respuesta correcta, según sea necesario.m−ℓ2n−(m−ℓ)−ℓ=2k2n−1−m/2+ℓk
Caso 2: k=2n/ p o l y (n)
Aquí tenemos un algoritmo aleatorio de poli-tiempo: Evalúe en m puntos aleatorios X 1 , ⋯ , X m ∈ { 0 , 1 } n . Deje α = 1ϕmetroX1, ⋯ , Xmetro∈ { 0 , 1 }norteyε=k/2n. Producimos2n⋅α. Para que esto tenga un error como máximoknecesitamosk≥| 2nα-a| =2n| α-a/2n| ,que es equivalente a| α-a/2nα = 1metro∑metroi = 1ϕ ( Xyo)ε = k / 2norte2norte⋅ αk
k ≥ | 2norteα - a | = 2norteEl | α-a / 2norteEl | ,
Por un
límite de Chernoff,
P [ | α - a / 2 n | > ε ] ≤ 2 - Ω ( m ε 2 ) , como
E [ ϕ ( X i ) ] = E [ α ] = a / 2 n . Esto implica que, si elegimos
m = O ( 1 / εEl | α-a / 2norteEl | ≤ε.P[|α−a/2n|>ε]≤2−Ω(mε2),
E[ϕ(Xi)]=E[α]=a/2n (y asegúrese de que
m sea una potencia de
2 ), entonces con una probabilidad de al menos
0.99 , el error es como máximo
k .
m=O(1/ε2)=poly(n)m20.99k
Caso 3: para c < 1k=2cn+o(n)c<1
ψmn≥mk<2n−m−1n=O(m/(1−c))ϕ=ψϕnmψbϕb⋅2n−mn−ma^|a^−a|≤ka^ϕk
|b−a^/2n−m|=∣∣∣a−a^2n−m∣∣∣≤k2n−m<1/2.
bba^ba^