Se conjetura que ya que lo contrario implicaría \ mathsf {PH} = \ Sigma_2 . El teorema de Ladner establece que si \ mathsf {P} \ ne \ mathsf {NP} entonces \ mathsf {NPI}: = \ mathsf {NP} \ setminus (\ mathsf {NPC} \ cup \ mathsf {P}) \ ne \ emptyset . Sin embargo, la prueba no parece generalizarse a \ mathsf {P} / \ text {poly}, por lo que la posibilidad \ mathsf {NPI} \ subset \ mathsf {P} / \ text {poly} es decir \ mathsf {NP} \ El subconjunto \ mathsf {NPC} \ cup \ mathsf {P} / \ text {poly} parece estar abierto.P ≠ N P N P I : = N P ∖ ( N P C ∪ P ) ≠ ∅ P / poly N P I ⊂ P / poly N P ⊂ N P C ∪ P / poly
Suponiendo que (o incluso que la jerarquía polinómica no colapsa en ningún nivel), es sabe que el texto {poly} es verdadero o falso? ¿Qué evidencia se puede poner a favor y en contra?
Respuestas:
Aquí hay una posible alternativa a un argumento de relleno, basado en la generalización de Schöning del teorema de Ladner. Para comprender el argumento, debe tener acceso a este documento (que desafortunadamente estará detrás de un muro de pago para muchos):
Vamos a aplicar el teorema principal de ese papel para y siendo idiomas y y siendo clases de la complejidad de la siguiente manera:A 2 C 1 C 2A1 A2 C1 C2
En aras de la claridad, el hecho que demostraremos es implica .N P I ⊈ P / p o l yNP⊈P/poly NPI⊈P/poly
Bajo el supuesto de que tenemos y . Está claro que y están cerrados bajo variaciones finitas. El artículo de Schöning incluye una prueba de que es presentable de forma recursiva (la definición precisa de lo cual se puede encontrar en el documento), y la parte más difícil del argumento es demostrar que es presentable de forma recursiva.A 1 ∉ C 1 A 2 ∉ C 2 C 1 C 2 C 1 C 2NP⊈P/poly A1∉C1 A2∉C2 C1 C2 C1 C2
Bajo estos supuestos, el teorema implica que existe un lenguaje que no está ni en ni en ; y dado que , sostiene que es Karp-reducible a , y por lo tanto . Dado que está en pero no es -completo ni en , se deduce que .C 1 C 2 A 1 ∈ P A A 2 A ∈ N P A N P N P N P ∩ P / p o l y N P I ⊈ P / p o l yA C1 C2 A1∈P A A2 A∈NP A NP NP NP∩P/poly NPI⊈P/poly
Queda por demostrar que es presentable de forma recursiva. Básicamente, esto significa que hay una descripción explícita de una secuencia de máquinas Turing deterministas que se detienen en todas las entradas y son tales que . Si hay un error en mi argumento, probablemente esté aquí, y si realmente necesita usar este resultado, querrá hacerlo con cuidado. De todos modos, al encajar en todas las máquinas de Turing no deterministas de tiempo polinómico (que se pueden simular determinísticamente porque no nos importa el tiempo de ejecución de cadaM 1 , M 2 , … N P ∩ P / p o l y = { L ( M k ) : k = 1 , 2 , … } M k M k M kNP∩P/poly M1,M2,… NP∩P/poly={L(Mk):k=1,2,…} Mk ) y todos los polinomios, que representan límites superiores en el tamaño de una familia de circuitos booleanos para un idioma determinado, creo que no es difícil obtener una enumeración que funcione. En esencia, cada puede probar que su NTM de tiempo polinomial correspondiente concuerda con alguna familia de circuitos de tamaño polinómico hasta la longitud de la cadena de entrada que se le da buscando en todos los circuitos booleanos posibles. Si hay acuerdo, como lo haría la NTM, de lo contrario, rechaza (y como resultado representa un lenguaje finito).Mk Mk
La intuición básica detrás del argumento (que está oculto dentro del resultado de Schöning) es que nunca se pueden tener dos clases de complejidad "agradables" (es decir, las que tienen presentaciones recursivas) que son disjuntas y están juntas. La "topología" de las clases complejas no lo permite: siempre se puede construir un lenguaje correctamente entre las dos clases alternando de alguna manera entre las dos para tramos extremadamente largos de longitudes de entrada. El teorema de Ladner muestra esto para y , y la generalización de Schöning le permite hacer lo mismo para muchas otras clases.N P CP NPC
fuente
Solo me gustaría escribir alguna versión de un argumento de relleno como se describe en los comentarios. No veo por qué se necesita una brecha. Queremos mostrar que si NP no está contenido en P / poly, entonces hay un problema NP-intermedio no contenido en P / poly.
Hay una función ilimitada tal que SAT no tiene circuitos de tamaño menor que , por lo que hay una función que no está limitada, aumenta y . Deje que SAT 'denote el lenguaje obtenido al rellenar cadenas SAT de longitud a . Luego:n f ( n ) g g ( n ) = o ( f ( n ) ) n n g ( n )f nf(n) g g(n)=o(f(n)) n ng(n)
Editar:
La elección de es ligeramente complicada. Si está contento de poner SAT 'en la versión prometedora de NP, este bit es innecesario.g
Defina como el número entero máximo de manera que no exista un circuito de tamaño para la longitud cadenas para SAT. Defina mediante un algoritmo que calcula para y se detiene después del tiempo o cuando , y devuelve el piso de la raíz cuadrada del valor más alto encontrado en este tiempo . Entonces no tiene límites y y se puede calcular en el tiempo . Ahora tenga en cuenta que los argumentos anteriores solo se basan en que SAT no tiene circuitos de tamaño para infinitamentef(n) nf(n) n g(n) f(m) m=1,2,… n m=n g(n) lim infg(n)/f(n)=0 g(n) n nf(n) n .
También me parece interesante ver una prueba haciendo agujeros en SAT como en http://blog.computationalcomplexity.org/media/ladner.pdf . Sin el requisito de NP, esto es bastante fácil: hay una secuencia tal manera que ningún tamaño de circuito os detecta cadenas SAT de longitud ; restringir SAT a cadenas de longitud para algunos .( n k ) k n n 2 2 i in1<n2<… (nk)k n n22i i
fuente
(NPI P / poly) (P NP)⊈ ⟹ ≠
fuente