Creo que podemos mostrar:
Reclamación. Hay un valor 0 < c < 1 tal que lo siguiente es verdadero. Supongamos que hay un algoritmo de tiempo poli determinista que, dada una m -clause 3-SAT ejemplo φ , da salida a una lista de S de en la mayoría de m c valores, tal que M ( φ ) ∈ S ; entonces la jerarquía polinómica se colapsa.0<c<1mϕSmcM(ϕ)∈S
La prueba utiliza los resultados de Fortnow y Santhanam sobre la inviabilidad de la compresión de instancias de su documento
http://www.cs.uchicago.edu/~fortnow/papers/compress.pdf
Específicamente, al ver su prueba de Thm 3.1, creo que uno puede extraer lo siguiente (volveré a verificar esto pronto):
"Teorema" [FS]. Hay enteros 0 < d ′ < d, de modo que lo siguiente es verdadero. Supongamos que en el tiempo polivinílico determinista, uno puede transformar un OR de n d fórmulas booleanas (cada una de longitud ≤ n , y en conjuntos variables disjuntos) en un OR de n d ′ fórmulas (de nuevo variable-disjunta y de longitud ≤ n ) , preservando la satisfacción / insatisfacción de la OR. Entonces N P ⊆ c o N P / p o l y la jerarquía polinómica se colapsa.0<d′<dnd≤nnd′≤nNP⊆coNP/poly
La prueba de nuestra afirmación será una reducción de la tarea de compresión OR mencionada en el teorema [FS] anterior, al problema de la computación en lista M ( ϕ ) . Suponga que ψ 1 , ... , ψ n d es una lista de fórmulas cuyo OR queremos comprimir.M(ϕ)ψ1,…,ψnd
Primer paso: definir un circuito de tamaño polinómico Γ en cadenas de entrada ( v , y 1 , ... , y n d ) . Aquí la cadena y i codifica una asignación a ψ i , y v ∈ { 0 , 1 } d log n + 1 codifica un número entre 0 y n d .Γ(v,y1,…,ynd)yiψiv∈{0,1}dlogn+10nd
Tenemos Γ aceptar iff v = 0 , o ψ v ( y v ) = 1 .Γv=0ψv(yv)=1
Ahora dejemos que M ∗ ( Γ ) denote el valor máximo v , de modo que el circuito restringido Γ ( v , ⋅ , ... , ⋅ ) sea satisfactoria. (Esta cantidad es siempre al menos 0).M∗(Γ)vΓ(v,⋅,…,⋅)
Supongamos que podemos producir eficientemente una lista S de posibles valores para M ∗ ( Γ ) . Entonces la afirmación es que en nuestra lista ψ 1 , ... , ψ n d , podemos tirar todo ψ i para el cual i ∉ S ; la lista resultante contiene una fórmula satisfactoria si la original lo hizo. Espero que esto quede claro por inspección.SM∗(Γ)ψ1,…,ψndψii∉S
Conclusión: no podemos producir de manera confiable una lista S de ≤ n d ′ posibles valores para M ∗ ( Γ ) , a menos que la jerarquía poli se colapse.S≤nd′M∗(Γ)
Segundo paso: reducimos del problema de la computación en lista M ∗ ( Γ ) al problema de la computación en lista M ( ϕ ) para las instancias 3-SAT ϕ .M∗(Γ)M(ϕ)ϕ
Para hacer esto, primero ejecutamos la reducción de Cook en Γ para obtener una instancia de 3-SAT ϕ 1 de tamaño m = p o l y ( n d ) . ϕ 1 tiene el mismo conjunto de variables que Γ , junto con algunas variables auxiliares. Lo más importante para nuestros propósitos, ϕ 1 ( v , ⋅ ) es satisfactoria si f Γ ( v , ⋅ ) es satisfactoria.Γϕ1m=poly(nd)ϕ1Γϕ1(v,⋅)Γ(v,⋅)
Llamamos a ϕ 1 las 'fuertes restricciones'. Le damos a cada una de estas restricciones un peso de 2 m (agregando restricciones duplicadas).ϕ12m
Luego agregamos un conjunto de 'restricciones débiles' ϕ 2 que agregan una preferencia para que el índice v (definido en el paso 1) sea lo más alto posible. Hay una restricción para cada bit v t de v , a saber [ v t = 1 ] . Dejamos que el t -ésimo bit más significativo de v tenga una restricción de peso m / 2 t - 1 . Dado que v es de longitud d log n + 1 , estos pesos pueden hacerse integrales (solo necesitamos rellenar para dejar que mϕ2vvtv[vt=1]tvm/2t−1vdlogn+1m ser un poder de 2).
Finalmente, dejemos que ϕ = ϕ 1 ∧ ϕ 2 sea el resultado de nuestra reducción.ϕ=ϕ1∧ϕ2
Para analizar ϕ , deje que ( v , z ) sea el conjunto variable de ϕ , con v como antes. Primero tenga en cuenta que dada cualquier asignación a ( v , z ) , se puede inferir el valor de v de la cantidad
N ( v , z ) = (peso total de las restricciones ϕ satisfechas por v , z ).
Esto se desprende del diseño jerárquico de los pesos de restricción (de manera similar a una técnica de la respuesta de Luca). Del mismo modo, el valor máximo alcanzable Mϕ(v,z)ϕv(v,z)vN(v,z)=ϕv,z
( ϕ ) se logra mediante un ajuste ( v , z ) que satisface todas las restricciones fuertes, y donde (sujeto a esto) v es lo más grande posible. Esta v es el índice más grande para el cual Γ ( v , ⋅ ) es satisfactoria, es decir, M ∗ ( Γ ) . (Tenga en cuenta que siempre es posible, estableciendo v = all-0, para satisfacer todas las restricciones fuertes, ya que en ese caso Γ ( v , ⋅ ) es satisfactoria).M(ϕ)(v,z)vv
Se deduce que, si se nos da una lista S de posibles valores de M ( ϕ ) , podemos derivar una lista de | S | posibles valores de M ∗ ( Γ ) . Por lo tanto no podemos tener | S | ≤ n d 'a menos que la poli jerarquía se colapse. Esto da la Reclamación, ya que n d ' = m Ω ( 1 ) .