Вы находитесь на странице: 1из 15

El problema P versus NP Stephen Cook Universidad de Toronto Original: http://personales.ya.com/casanchi/mat/problema01.

pdf
1. Planteamiento del problema El problema P versus NP es determinar si todos los lenguajes aceptados mediante algn algoritmo determinista en tiempo polinmico son tambin aceptados por algn algoritmo (determinista) en tiempo polinomial. Para definir el problema precisamente es necesario para dar un modelo formal de un ordenador. La norma modelo de la computadora en la teora de la computabilidad es la mquina de Turing, introducida por Alan Turing en 1936 [Tur36]. Aunque el modelo fue introducido antes con equipos fsicos que fueron construidos, no obstante, sigue siendo aceptada como el modelo de equipo adecuado para el propsito de definir la nocin de funcin computable. . Informalmente la clase P es la clase de problemas de decisin resolubles por algn algoritmo dentro de un nmero de pasos delimitados por algn polinomio fijo en la longitud de la entrada. Turing no se refiere a la eficiencia de sus mquinas, sino que su preocupacin era saber si se pueden simular de forma arbitraria algoritmos de tiempo suficiente. Sin embargo resulta que las mquinas de Turing pueden en general, simular modelos informticos ms eficientes (por ejemplo mquinas equipadas con muchas cintas o una memoria ilimitada de acceso aleatorio) Por a lo sumo elevar al cuadrado o al cubo el tiempo de computacin. Por lo tanto P es una clase robusta, y tiene definiciones equivalentes en una gran clase de modelos de computadora. Aqu seguimos con la prctica habitual y definimos los problemas de clase P en trminos de mquinas de Turing. Formalmente los elementos de la clase P son lenguajes. Que sea un alfabeto finito (Es decir, un conjunto no vaco finito) con al menos dos elementos, y dejar que * el conjunto de cadenas finitas sobre . Entonces un lenguaje sobre es un subconjunto de L * . Cada Mquina de Turing M tiene un alfabeto de entrada asociada. Para cada cadena w en * es un clculo asociado a M con entrada w. (Las nociones de Mquina de Turing y la computacin se definen formalmente en el apndice.) Nosotros decimos que M acepta a w si este clculo termina en el estado de aceptacin. Ntese que M no acepta w si bien este cmputo termina en el rechazo estado, o si el cmputo no finaliza. El lenguaje aceptado por M, denotado L (M), se ha asociado alfabeto y se define por L (M) = {w * | M acepta a w} Indicamos por TM (w) el nmero de pasos en el clculo de M en la entrada w (vase el Apndice). Si este clculo no se detiene nunca, a continuacin, tM (w) = . Para n se denota por TM(n) el tiempo del peor caso de ejecucin de M, es decir es el conjunto de todas las cadenas sobre de longitud n. Decimos que M se

donde

ejecuta en tiempo polinomial si existe k tal que para todo n, Ahora se define la clase P de lenguajes por

P = {L | L = L (M) por alguna mquina de Turing M que se ejecuta en tiempo polinomial} La anotacin NP significa "tiempo polinmico no determinista", ya que originalmente NP se define en trminos de mquinas no deterministas (es decir, mquinas que tienen ms de un posible movimiento de una configuracin dada). Sin embargo, ahora se acostumbra a dar una definicin equivalente, utilizando la nocin de una relacin de cotejo, que es simplemente una relacin binaria R * *1 para algunos alfabetos finitos s y s1. Nosotros asociamos con cada relacin R LR un lengua sobre 1 {#} definida por LR = {w # y | R (w, y)} donde el smbolo # no est en . Decimos que R es de tiempo polinmico si y slo si p LR Ahora definimos la clase NP de las lenguas por la condicin de que una lengua L sobre es en NP si y slo si existe k N y una relacin de cheques de tiempo polinmico R tal que para todo w *, w L y (| y | | w | k y R (W, Y)) donde | w | y | y | denota la longitud de W e Y, respectivamente. Planteamiento del problema: Es P = NP? Es fcil ver que la respuesta es independiente del tamao del alfabeto (Suponemos que | | 2), ya que las cadenas sobre un alfabeto de cualquier tamao fijo puede ser de manera eficiente las cadenas codificadas por ms de un alfabeto binario. (Para | | = 1 el problema est todava abierto, aunque es posible que P = NP en este caso, pero no en el caso general.) Es trivial demostrar que P NP, ya que para cada lenguaje L sobre , si L P entonces podemos definir la relacin de cheques de tiempo polinmico R * * por R (w, y) w L para todo w, y *. Aqu hay dos ejemplos sencillos, utilizando la notacin decimal para codificar los nmeros naturales: El conjunto de cuadrados perfectos est en P y es el conjunto de nmeros compuestos en NP (y no sabe que en P). Para estos ltimos, el polinomio asociado tiempo de verificacin relacin R est dada por R (a, b) 1 <b <a y b | a (1) En general, la notacin decimal de un nmero natural c se denota por c.

2. Historia e importancia
La importancia de las preguntas P vs NP se deriva de las teoras exitosas de NP-completo y basado en la complejidad, la criptografa, as como la

consecuencias prcticas potencialmente espectaculares de una prueba constructiva de P= NP. La teora de NP-completo tiene sus races en la teora de la computabilidad, que se origin en el trabajo de Turing, Church, Gdel, y otros en la dcada de 1930. Los precursores de computabilidad de las clases P y NP son las clases de decidible y c.e. (Computable enumerable) lenguajes, respectivamente. Nosotros decimos que un lenguaje L es c.e. (O semi-decidible) si y slo si L = L (M) para algunos Mquina de Turing M. Nos dicen que la L es decidible si y slo si L = L (M) para algunos de Turing mquina M que satisface la condicin de que M se detiene en todas las cadenas de entrada w. Hay una definicin equivalente de c.e. que pone de manifiesto su analoga con NP, a saber, L es c.e. si y slo si hay una computable "la comprobacin de la relacin" R (x, y) tal que L = {x | YR (x, y)}. Usando la notacin? M? para referirse a una cadena que describe una mquina de Turing M, definimos el HP problema de la parada de la siguiente manera: HP = {? M? | M es una mquina de Turing que se detiene en la entrada M}? Turing us un argumento diagonal sencillo para demostrar que HP no es decidible. Por otro lado, no es difcil demostrar que HP es ce De importancia central en la teora de la computabilidad es la nocin de reducibilidad, Turing, que se define ms o menos de la siguiente manera: L1 se Alanguage Turing reducible si y slo si a un lenguaje L2 hay una mquina de Turing M Oracle que acepta L1, donde M se le permite hacer consultas de los miembros de la forma x L2? que estn correctamente contestadas por un "orculo" de L2. Ms tarde, la nocin ms restringida de muchos-uno reducibilidad ( m) se introdujo y se define como sigue. Definicin 1: Supongamos que Li es un lenguaje de ms de que si existe una funcin computable total tal que 1. Es fcil ver que si L1 m L2 y L2 es decidible, entonces L1 es decidible. Este hecho constituye una herramienta importante para mostrar la indecidibilidad, por ejemplo si HP L m entonces L es indecidible. La nocin de NP-completo se basa en la nocin de computabilidad siguiente teora: Definicin 2: L Alanguage se ce-completa si y slo si L es ce, y L m L para todos los c.e. el lenguaje L. Es fcil demostrar que HP es c.e.-completo. Resulta ms que "natural" indecidible c.e. las lenguas son, de hecho, c.e.-completo. Desde m es transitiva, para demostrar que un c.e. el lenguaje L es c.e. completa es suficiente para demostrar que HP m L. La nocin de la computacin de tiempo polinmico se introdujo en la dcada de 1960 por Cobham [Cob64] y Edmonds [Edm65] como parte del desarrollo temprano de la teora de complejidad computacional (aunque a principios de von Neumann [vN53]

en 1953 la distincin entre tiempo polinomial y algoritmos de tiempo exponencial). Edmonds llama polinomio de algoritmos en tiempo "buenos algoritmos", y los vinculados a los algoritmos manejables. Ahora se ha convertido en un estndar en la teora de la complejidad para identificar a tiempo polinmico con la posible, y aqu una digresin para discutir este punto. Es, por supuesto, no literalmente cierto que cada algoritmo de tiempo polinmico son factibles de ejecutar en las entradas pequeas, por ejemplo un programa informtico que requiere de pasos N100 podra 4 Nunca se ejecutar en una entrada, incluso tan pequeo como n = 10. Esta es una ms declaracin defendible (ver [Coo91]): Tesis de factibilidad: tiene un problema de Anatural posible algoritmo de si y slo si tiene una tiempo polinmico del algoritmo. Ejemplos de problemas naturales que tienen tanto factible como polinomio de tiempo algoritmos abundan: la aritmtica de enteros, lgebra lineal, el flujo de red, lineal de programacin, muchos problemas de grficos (conectividad, el camino ms corto, mnimo rbol de expansin, coincidente bipartito), etc Por otro lado los resultados profundos de Robertson y Seymour [RS95] constituyen una fuente potencial de los contraejemplos con la tesis: Ellos demuestran que todas las familias de menor importancia-cerrada de los grficos puede ser reconocidos en tiempo polinomial (de hecho en el tiempo O (n3)), pero los algoritmos suministrado por su mtodo de tener tan grandes constantes que no son factibles. Sin embargo cada ejemplo contador potencial puede ser eliminado mediante la bsqueda de una posible algoritmo para ello. Por ejemplo, un algoritmo de reconocimiento factible es conocido por la clase de los grafos planos, pero ninguno se conoce actualmente para la clase de grficos integrable en R3 con que no hay dos ciclos vinculados. (Ambos ejemplos son de menor importancia-cerrado las familias.) Por supuesto, las palabras "natural" y "viable" en la tesis anterior se debe explicar, en general, no consideramos una clase con un parmetro como naturales, tales como el conjunto de grficos embebidos en una superficie de gnero k, k> 1. Mencionamos dos preocupaciones relacionadas con la direccin "slo si" de la tesis. La primero viene de algoritmos aleatorios. Se discute al final de la seccin 3 la posibilidad de que una fuente de bits aleatorios podra ser utilizado para reducir en gran medida el tiempo requerido para el reconocimiento algn lenguaje. Ntese sin embargo que no es claro si una fuente verdaderamente al azar existe en la naturaleza. La segunda preocupacin proviene de los ordenadores cunticos. Este modelo incorpora la idea de equipo de la superposicin de estados de la mecnica cuntica, y permite un potencial de exponencial de la velocidad de algunos clculos sobre las mquinas de Turing. Por ejemplo,

Shor [Sho97] ha demostrado que algunos algoritmo de la computadora cuntica es capaz de factores enteros en tiempo polinmico, pero no enteros en tiempo polinomial algoritmo de factorizacin es conocido por las mquinas de Turing. Sin embargo, los fsicos tienen hasta ahora ha sido incapaz de construir un ordenador cuntico que puede manejar ms de unos bits de media docena, por lo que esta amenaza a la viabilidad de la tesis es hipottica en presentar. Volviendo al tratamiento histrico de la teora de la complejidad, en 1971 el 5 autor del presente artculo [Coo71] introdujo un concepto de NP-completos como polynomialtime analgica de c.e. certeza, excepto que la reduccin utilizado fue un polinomio de tiempo anlogo de la reducibilidad de Turing, ms que de muchos-uno reducibilidad. Los principales resultados en [Coo71] es que varios problemas naturales, incluyendo Satisfacibilidad y 3-SAT (se define a continuacin) y el isomorfismo subgrafo son NP-completos. Ay del odo despus Karp [Kar72] utiliza estos resultados integridad para demostrar que 20 problemas naturales son NP-completo, por lo tanto la fuerza demostrar la importancia de la materia. Karp tambin introdujo el Ahora notacin estndar de P y NP y NP-completos redefinido con el polinomio de tiempo anlogo de muchos-uno reducibilidad, una definicin que se ha convertido en estndar. Mientras tanto, Levin [Lev73] independientemente de Cook y Karp se define la nocin de "problema de la bsqueda universal", similar a NP-completo problema, y le dio seis ejemplos, entre ellos satisfacibilidad. Las definiciones oficiales sobre NP-completos son los anlogos de cerca de Definiciones 1 y 2 anteriores. Definicin 3: Supongamos que Li es un lenguaje de ms de i, i = 1, 2. Entonces L1 L2 p (L1 es reducible a P-L2) si y slo si existe una funcin computable en tiempo polinomial f: * 2 tal que x L1 f (x) L2, para todo x * Definicin 4: L Alanguage es NP-completo si y slo si L est en NP, y L p L para cada lenguaje L en NP. La siguiente proposicin es fcil de demostrar: la parte (b) utiliza la transitividad de la p, y la parte (c) se sigue de la parte (a). Proposicin 1: (a) Si L1 p L2 y L2 P entonces L1 P. (B) Si L1 es NP-completo, L2 NP, y L1 L2 p entonces L2 es NP-completo. (C) Si L es NP-completo y L P, entonces P = NP. Tenga en cuenta que las partes (a) y (b) tienen anlogos en la teora de la computabilidad. analgica de la parte (c) es simplemente que si L es ce-completo entonces L es indecidible. La parte (b) es el mtodo bsico para mostrar nuevos problemas son NP-completo, y la parte (c) explica por qu es probable que sea una prdida de tiempo buscando un polynomialtime algoritmo para un problema NP-completo.

En la prctica un miembro de NP se expresa como un problema de decisin, y el 6 lenguaje correspondiente, se entiende el conjunto de cadenas de codificacin S instancias para el problema de la decisin por medio de tcnicas de codificacin. As, el satisfacibilidad problema es: Dada una frmula F proposicional, determinar si F es satisfacible. Para demostrar que esto es en NP se define el polinomio de tiempo comprobacin de la relacin R (x, y), que tiene si y slo si x cdigos de una frmula proposicional F y cdigos Y una asignacin de verdad a las variables de F que hace F cierto. Este problema ha demostrado ser NP-completo en [Coo71] esencialmente por mostrando que para cada mquina M polinomio tiempo de Turing que reconoce una relacin de cotejo R (x, y) para un lenguaje L NP, existe una polynomialtime algoritmo que toma como entrada una cadena x y produce un proposicional Fx frmula (que describe el clculo de M en la entrada (x, y), con variables en representacin de la cadena y desconocido) de tal manera que es satisfacible si y slo si Fx M acepta la entrada (x, y) para alguna y con | y | | X | O (1). Un caso especial importante de satisfactibilidad es 3-SAT, el cual tambin fue demostrado es NP-completo en [Coo71]. Los casos de 3-SAT estn restringidos a las frmulas en forma normal conjuntiva con tres literales por clusula. Por ejemplo, el frmula (P Q R) (PP Q R) (P Q S) (P R S) (2) es un s a la instancia 3-SAT desde la asignacin de verdad satisface la frmula, , donde (p) = (Q) = True y (R) = (S) = False. Muchos cientos de problemas NP-completos han sido identificados, incluyendo SubsetSum (dado un conjunto de enteros positivos que se presentan en notacin decimal, y una T de destino, existe un subconjunto de sumar a T?), los problemas de muchos grficos (Dado un grafo G, G tiene un ciclo de Hamilton? Tiene G tienen una camarilla que consta de un medio de los vrtices? Pueden los vrtices de G ser coloreado con tres colores con colores distintos para los vrtices adyacentes?). Estos problemas dan lugar a muchos problemas de enrutamiento de la programacin y con mayor importancia industrial. El libro [GJ79] proporciona una excelente referencia para el sujeto, con 300 NP-completo los problemas que figuran en el apndice. Asociado con cada problema de decisin en NP existe un problema de bsqueda, que es, dada una cadena x, y encontrar una cadena de la satisfaccin de la relacin de cotejo R (x, y) para el problema (o determinar que x es un ejemplo NO al problema). Tal y se dice que es un certificado para x. En el caso de una NP-completo problema es fcil ver que el problema de bsqueda puede ser eficientemente reducido 7 al problema de decisin correspondiente. De hecho, si P = NP entonces el asociado problema de bsqueda de todos los problemas NP tiene un algoritmo de tiempo polinmico. Para ejemplo, un algoritmo para la satisfactibilidad problema de decisin puede ser utilizado para encontrar una asignacin de verdad la satisfaccin de un F dado por la frmula

satisfacible, para cada variable P en F, a su vez, el establecimiento de P en True o False en F en F, que cada vez caso mantiene F satisfacible. El conjunto de complementos de lenguajes NP se denota CONP. El complemento de un lenguaje NP-completo no se cree que estar en NP, de lo contrario NP = CONP. El conjunto de tautologas TENSO (frmulas proposicionales verdad en todas las tareas) es el ejemplo tpico de un lenguaje CONP-completo. La conjetura de NP? CONP = es equivalente a la afirmacin de que no sistema de prueba formal (convenientemente definida) para tautologas tiene corto (polynomialbounded) pruebas para todas las tautologas [CR79]. Este hecho ha motivado la desarrollo de una rica teora de la complejidad a prueba proporcional [Kra95], una de cuyos objetivos es demostrar superpolynomial lmites inferiores en las longitudes de pruebas para los sistemas estndar de prueba proposicionales. Hay ejemplos interesantes de los problemas NP que no se sabe que son, ya sea en P o NP-completo. Un ejemplo es el conjunto de nmeros compuestos, que se menciona en la primera seccin, con relacin de cotejo (1). Aqu se conjetura que hay hay reduccin de tiempo polinmico de Turing del problema de bsqueda (entero factoring) para el problema de decisin. En concreto, Miller [Mil76] mostr cmo determinar en tiempo polinomial si un nmero dado es compuesto, en el supuesto la extendida hiptesis de Riemann, pero un nmero entero de factoring de tiempo polinmico algoritmo se cree probable que existan. De hecho, un eficiente algoritmo de factorizacin se rompera el esquema de cifrado de clave RSApublic [ARS78] de uso comn para permitir que (presumiblemente) proteger las transacciones financieras a travs de Internet. El complemento del conjunto de nmeros compuestos (esencialmente el conjunto de primos) se ha demostrado ser en NP por un argumento interesante debido a Pratt [Pra75], y por lo tanto, es improbable que sea NP-completo. Existe un problema de decisin con NP equivalente a la de la complejidad entero el factoring, es decir, Lfact = {? A, b? | d (1 <d <a y d | b)} Dado un nmero entero b> 1, el menor divisor primo de B se puede encontrar con sobre las consultas de b log2 de Lfact, mediante la bsqueda binaria. Usando el teorema de Pratt, es 8 fcil ver que el complemento de Lfact tambin est en NP: un certificado que demuestre ? A, b? es una instancia no podra ser de Lfact la descomposicin primer completa de B, junto con los certificados de Pratt prueba de que cada uno de los factores primos es, en efecto principal. Por lo tanto, se considera poco probable que Lfact es NPcompleto. Teora de la complejidad computacional juega un papel importante en la criptografa moderna [Gol00]. La seguridad de la Internet, incluyendo la mayora de las transacciones financieras, dependen de supuestos tericos, tales como la complejidad de la dificultad de factoring entero o de romper DES (Data Encryption Standard). Si P = NP estas suposiciones son falsas. En concreto, un algoritmo de resolucin de 3-SAT

en pasos n2 podra ser utilizado para factorizar 200-dgitos en unos pocos minutos. A pesar de un algoritmo prctico para resolver un problema NP-completo (mostrando P = NP) tendra consecuencias devastadoras para la criptografa, lo hara Tambin tienen impresionantes consecuencias prcticas de carcter ms positivo, y no slo por las soluciones eficientes a los muchos problemas NP-duros importantes a la industria. Por ejemplo, sera transformar las matemticas, permitiendo una computadora para encontrar una prueba formal de un teorema que tiene una prueba de la razonable de longitud, ya que las pruebas formales pueden ser fcilmente reconocidas en el polinomio tiempo. Teoremas ejemplo bien puede incluir la totalidad de los problemas de CMI de los premios. A pesar de las pruebas formales no pueden ser inicialmente inteligible para los seres humanos, el problema de encontrar pruebas inteligibles se reducira a la de encontrar un algoritmo de reconocimiento de pruebas inteligibles. Observaciones similares se aplican a diversos creativas actividades humanas, tales como el diseo de las alas del avin, la creacin fsica teoras, o incluso la msica componiendo. La cuestin en cada caso, es lo que medida en un algoritmo eficiente para el reconocimiento de un buen resultado se puede encontrar. Este es un problema fundamental en la inteligencia artificial, y cuya solucin se se vera favorecida por la NP-solver al permitir que las pruebas de reconocimiento fcil teoras. Incluso si P? = NP todava puede suceder que todos los problemas NP es susceptible a un algoritmo de tiempo polinmico que trabaja en "la mayora" entradas. Esto podra hacer imposible la criptografa y llevar a cabo la mayor parte de los beneficios de un mundo en el que P = NP. Esto tambin motiva a la teora de Levin [Lev86, Imp95] de integridad caso medio, en el que el P = NP cuestin se sustituye por la cuestin de si todos los problemas NP con cualquier probabilidad razonable distribucin en sus entradas pueden ser resueltos en tiempo polinmico en promedio. En [Sma98] Smale muestra el P vs NP cuestin como un problema 3 de la matemtica 9 problemas para el prximo siglo. Sin embargo Smale est interesado no slo en el versin clsica de la cuestin, sino tambin una versin expresada en trminos de el campo de los nmeros complejos. Aqu las mquinas de Turing debe ser sustituido por un mquina modelo que es capaz de hacer aritmtica exacta y pruebas cero en arbitrarias nmeros complejos. El P vs NP cuestin se sustituye por una cuestin relacionado con Nullstellensatz de Hilbert: Existe un algoritmo de tiempo polinmico que, dado un conjunto de polinomios multivariados ms de C k, determina si tienen un cero comn? Ver [BCSS98] para un desarrollo de la complejidad La teora en este entorno, incluyendo el resultado intrigante que el conjunto de Mandelbrot es indecidible. Los libros de Papadimitriou [] y Pap94 Sipser [Sip97] proporcionan buenas introducciones a la teora de la corriente principal complejidad. 3. La conjetura y los intentos de demostrarlo

La mayora de los tericos de la complejidad creer que P? = NP. Tal vez esto puede ser en parte explica por las consecuencias potencialmente espectaculares de P = NP mencionados anteriormente, pero hay mejores razones. Explicamos esto teniendo en cuenta los dos posibilidades, a su vez: P = NP y P = NP?. Supongamos primero que P = NP y considerar cmo se puede probar. Lo obvio manera es exhibir un algoritmo de tiempo polinmico para 3-SAT o una de la otra 1000 ms o menos conocidos los problemas NP-completos, y de hecho muchas pruebas falsas ha presentado en este formulario. Hay un juego de herramientas estndar disponibles [CLR90] para la elaboracin de algoritmos tiempo-polinomio, incluido el mtodo codicioso, dinmica programacin, la reduccin a la programacin lineal, etc Estas son las temas de un curso de algoritmos, tpicas en las ciencias de la computacin de pregrado planes de estudio. Debido a su importancia en la industria, un gran nmero los programadores de e ingenieros han tratado de encontrar algoritmos eficientes de problemas NP-completos en los ltimos 30 aos, sin xito. Hay es as de fuerte motivacin para romper los esquemas criptogrficos que asumir la P? = NP por su seguridad. Por supuesto, es posible que algn argumento no constructiva, tales como el Roberton / Seymour pruebas se mencion anteriormente, en relacin con la viabilidad Tesis, podra demostrar que P = NP sin ceder ningn algoritmo posible para los estndares problemas NP-completos. Sin embargo en la actualidad la mejor probada lmite superior de un algoritmo para la resolucin de 3-SAT es de aproximadamente 1,5 n, donde 10 n es el nmero de variables en la frmula de entrada. Supongamos por otro lado que P? = NP, y considerar cmo se podra lo demuestran. Hay dos mtodos generales que se han probado: diagonalizacin / la reduccin y el circuito booleano cotas inferiores. El mtodo de reduccin con diaonalization ha sido usado con mucho xito en la teora de la computabilidad para probar una serie de problemas indecidibles, a partir de con el problema de la parada. Tambin se ha utilizado con xito en la complejidad para probar la teora de super-exponenciales lmites inferiores de los problemas decidibles muy duros. Por ejemplo, Presburger aritmtica, la teora de primer orden de los nmeros enteros bajo la suma, es una teora decidible para el que Fischer y Rabin [FR74] demostr que cualquier mquina de Turing para decidir la teora debe utilizar por lo menos 22cn pasos en el peor de los casos, para un cierto c> 0. En general, los lmites inferiores con diagonalizacin y la reduccin de relativizar; que se siguen aplicando en un entorno en el que tanto la instancia de problema y la solucin de mquina de Turing puede hacer consultas de afiliacin a un arbitrario conjunto de Oracle A. Sin embargo, en [BGS75] era demostrado que existe un orculo conjunto A con respecto a la cual P = NP, lo que sugiere

que diagonalizacin / reduccin no se puede utilizar para separar estas dos clases. (No se nonrelativizing resultados en la teora de complejidad, como se mencion a continuacin.) Es interesante observar que en relacin con un genrico orculo, P? = NP [BI87, SCY97]. Un circuito booleano es un grfico acclico finito en el que cada nodo no entrada, o puerta, se etiqueta con un conectivo booleano, por regla general de {Y, O, NO}. Los nodos de entrada estn etiquetados con las variables x1, ..., xn, y para cada tarea de 0 o 1 a cada variable del circuito calcula un valor de bit en cada puerta, incluyendo la puerta de salida, de manera obvia. No es difcil ver que si L es un lenguaje sobre {0, 1} que est en P, entonces hay una familia polinomio de tamao de Circuitos booleanos? BN? de tal manera que tiene n entradas Bn, y para cada cadena de bits w de longitud n, cuando w se aplica a los nodos de entrada de n Bn, entonces la salida poco de la BN es un si y slo si w L. En este caso decimos que? BN? calcula L. As, para demostrar que P? = NP es suficiente para demostrar una menor superpolinomial cota el tamao de cualquier familia de circuitos booleanos para resolver algunos especficos NP-completo problema, tal como 3-SAT. En 1949 Shannon [Sha49] demostr que para casi todas las funciones f booleana: {0, 1} n {0, 1}, cualquier f circuito de clculo booleano requiere por lo menos 2n / n puertas. Desafortunadamente, su argumento no da cuenta pista en cuanto a la forma de demostrar cotas inferiores a los problemas en NP. Exponencial menor 11 los lmites para los problemas NP se ha demostrado en los modelos de circuitos restringidos, incluyendo circuitos montonos [Raz85, la AB87] y limitado en profundidad con los circuitos fan-in sin lmites puertas [Has89, Smo87] (ver [BS90]). Sin embargo todos los intentos de para encontrar, incluso sper-lineales lmites inferiores de libre disposicin para los circuitos booleanos "Explcitamente" dadas las funciones de Boole se han encontrado con un fracaso total, el mejor ejemplo lmite inferior demostrado hasta el momento se trata de 4n. Razborov y Rudich [RR97], explican este fallo, sealando que todos los mtodos utilizados hasta ahora se pueden clasificar como "pruebas naturales", y las pruebas fsicas para los lmites inferiores de circuitos generales estn condenados al fracaso, asumiendo una cierta complejidad de la teora de la conjetura afirmando que las fuertes pseudo-aleatorios generadores de nmeros existen. Dado que tales generadores se han construido suponiendo que la dureza de la factorizacin entero, podemos inferir el sorprendente resultado de que una prueba natural para un general circuito lmite inferior dara lugar a un algoritmo de factorizacin ms eficiente lo que se conoce actualmente. El fracaso de la teora de la complejidad de demostrar inters en cotas inferiores a un

general modelo de clculo es mucho ms penetrante que la falta de prueba P? = NP. Es coherente con los conocimientos actuales que no slo poda satisfacibilidad tienen un algoritmo de tiempo polinmico, podra tener un algoritmo de tiempo lineal en una mquina de Turing multicinta. Lo mismo se aplica para todos los 21 problemas mencionado en el artculo original Karp [Kar72]. Hay separaciones complejidad de clase que sabemos que existen pero cannnot probar. Por ejemplo, considere la secuencia de inclusiones de clases de complejidad LOGSPACE P NP PSPACE Arugment diagonal asimple muestra que el primero es un subconjunto propio de la durar, pero no podemos probar que se incluya al lado todo es correcto. Como otro ejemplo, vamos a LINEAL DE TAMAO ser la clase de lenguajes en {0, 1} que puede ser calculada por una familia? BN? de circuitos booleanas de tamao O (n). No se sabe si P o NP es un subconjunto de LINEAL DE TAMAO, a pesar de Kannan [Kan82] demostraron que hay lenguas en el polinomio jerarqua (una generalizacin de la NP), no en forma lineal-SIZE. Puesto que si P = NP a continuacin, la jerarqua polinomial se colapsa para P, tenemos Proposicin 2: Si P LINEAR-SIZE, entonces P = NP?. Esta proposicin podra ser interpretado como un mtodo de la prueba de P? = NP, pero una creencia ms comn es que la hiptesis es falsa. 12 Pregunta Afundamen tal en teora de la complejidad es la de si una fuente de azar bits se pueden usar para acelerar sustancialmente el reconocimiento de algunos lenguajes, siempre y cuando uno est dispuesto a aceptar una pequea probabilidad de error. La clase AFF consta de todos los lenguajes L que puede ser reconocido por un estudio aleatorizado tiempo polinmico algoritmo, con un mximo de una probabilidad de error de forma exponencial pequea en cada entrada. Por supuesto P BPP, pero no se sabe si la inclusin es apropiado. El conjunto de los nmeros primos est en BPP [SS77], pero no se sabe que en P. Areason para pensar que BPP = P es que algoritmos aleatorios a menudo se ejecuta con xito utilizando un determinista pseudo-aleatorio generador de nmeros como una fuente de "azar" bits. Hay una conexin indirecta pero intrigante entre las dos preguntas P = BPP y P = NP. Sea E la clase de lenguajes reconocibles en tiempo exponencial, es decir la clase de lenguajes L tal que L = L (M) para una mquina de Turing M con TM (n) = O (2CN) para un cierto c> 0. Sea A el afirmacin de que una lengua en E requiere la complejidad del circuito exponencial. Esto es Afirmacin A: No existe L E y '> 0 tal que para cada familia de circuitos ? BN? computacin L y para todo n suficientemente grande, Bn tiene al menos 2? n puertas. Proposicin 3: Si A continuacin, BPP = P. Si no es entonces P = NP?. La primera consecuencia es un teorema precioso al Impagliazzo y Wigderson [IW97] y la segunda es una observacin interesante por lo que Kabanets V. fortalece la Proposicin 2. En Kabanets hecho llega a la conclusin P? NP = a partir de una

ms dbil suposicin de que no A, es decir, que todas las lenguas en E puede ser calculado por una familia de circuitos booleana? BN? tal que para al menos una N, Bn tiene menos puertas que el mximo necesarios para calcular cualquier funcin de Boole f: {0, 1} n {0, 1}. Pero no hay consenso sobre si esta hiptesis Es cierto. Cabe sealar que la Proposicin 3 relativiza, y en particular en relacin a cualquier asercin PSPACE-completa de Oracle A tiene y BPP = P = NP. Por lo tanto una construccin nonrelativizing ser necesario si se quiere demostrar que P? = NP dando pequeos circuitos para los lenguajes en E. Sin embargo nonrelativizing construcciones se han utilizado con xito antes, por ejemplo, en que muestra IP (Tiempo polinomial Interactive) contiene todos PSPSACE [Sha92]. En este y otras construcciones de este tipo es una tcnica clave para representar funciones booleanas 13 por polinomios multivariados sobre cuerpos finitos. Anexo: Definicin de mquina de Turing A urante M mquina consiste en un control de estado finito (es decir, un programa finito) unido a lectura / escritura de pasar una cinta infinita. La cinta se divide en cuadrados, cada uno capaz de almacenar un smbolo de un alfabeto finito que incluye el smbolo b en blanco. Cada mquina tiene una M de entrada especificada alfabeto, que es un subconjunto de , sin incluir el smbolo b en blanco. A t cada paso de un clculo de M es, en cierto q estado en un determinado conjunto finito Q de estados posibles. Inicialmente, una cadena de entrada finita sobre est escrito en la adyacente cuadrados de la cinta, todas las otras plazas estn en blanco (contiene b), la cabeza escanea el smbolo ms a la izquierda de la cadena de entrada, y M est en el estado inicial q0. E n cada paso M es, en cierto q el estado y la cabeza est escaneando un cuadrado de cinta que contiene algo de smbolo s cinta, y la accin realizada depende del par (q, s) y se especifica por la funcin de transicin de la mquina (o programa) delta. La accin consiste en imprimir un smbolo en la plaza escaneada, movindose la cabeza hacia la izquierda o la derecha punto de partida, y suponiendo un nuevo estado. Formalmente una mquina de Turing M es una tupla? , , Q, ? , donde , , Q son finitos no vaco establece con y b - . El conjunto estado Q contiene tres especial de los estados q0, qaccept, qreject. La funcin de transicin satisface : (Q - {qaccept, qreject}) Q {-1, 1} Si (q, s) = (q, s, h) la interpretacin es que si M est en el estado q escanear el a continuacin, smbolo s q es el nuevo estado, s es el smbolo impreso, y la cabeza de la cinta se mueve hacia la izquierda o la derecha un cuadrado en funcin de si h es -1 o 1. Suponemos que la Q series y son disjuntos. Una configuracin de M es una cadena con xqy x, y *, no y la cadena vaca, y q P.

La interpretacin de la xqy configuracin es que M est en el estado q con xy en su cinta, con su cabeza de exploracin del smbolo ms a la izquierda de y. Si C y C son configuraciones, despus CM C si C = xqsy y (q, s) = (Q, s, h) y tiene uno de los siguientes: C = xsqy y h = 1 e y es no vaco. 14 C = xsqb y h = 1 ey es vaco. C = xqasy yh = -1 y x = xa para algunos un . C = qbsy y h = -1 y x es vaco. Xqy Aconfiguration se detendr si q {qaccept, qreject}. Ntese que para cada nonhalting configuracin de C hay una configuracin nica C de tal manera que CM C. El clculo de M en la entrada w * es la nica secuencia C0, C1, ... de configuraciones de tal manera que C0 = q0w (o C0 = q0b si w est vaca) y Ci M Ci +1 para cada i con Ci +1 en el clculo, y, o bien la secuencia es infinita o termina en una configuracin de la detencin. Si el clculo es finito, entonces el nmero de pasos es uno menos que el nmero de configuraciones, de lo contrario el nmero de pasos es infinito. Decimos que M acepta w si y slo si el clculo es finito y la configuracin final contiene el qaccept estado. Agradecimientos Mi agradecimiento a Avi Wigderson y Hugh Woodin para muchas sugerencias tiles para la mejora de una versin anterior de este artculo. Referencias [AB87] N. Alon y R. B. Boppana. La complejidad del circuito de la montona funciones booleanas. Combinatorica, 7 (1) :1-22, 1987. [ARS78] L. Adleman, R. L. Rivest, Shamir y A.. Un mtodo para obtener firma digital y criptografa de clave pblica. Comunicacin de la ACM, 21 (2), 1978. [BCSS98] L. Blum, F. Cucker, M. Shub y Smale S.. La complejidad y el Real Ciencia de la Computacin. Springer-Verlag, Nueva York, 1998. [BGS75] T. Baker, J. Gill, y Solovay R.. Relativizaciones de la = P? NP cuestin. SICOMP: SIAM Journal on Computing, 1975. [BI87] M. Blum y R. Impagliazzo. Orculos genricos y clases de Oracle. En Ashok K. Chandra, editor, Actas del Simposio Anual 28a de Fundaciones de Ciencias de la Computacin, pginas 118-126, Los ngeles, California, octubre de 1987. IEEE Computer Society Press. 15 [BS90] R. B. Boppana y Sipser M.. La complejidad de las funciones finitas. En J. Van Leeuwen, editor, Manual de Ciencias de la Computacin Terica, A Volumen: Algoritmos y Complejidad, pginas 759-804. Elsevier y The MIT Press, 1990. [CLR90] T. Cormen, Leiserson C. y R. Rivest. Introduccin a los Algoritmos. McGraw Hill, Nueva York, 1990. [Cob64] A. Cobham. La dificultad intrnseca computacional de las funciones. En Yehoshua Bar-Hillel, editor, Actas de la Internacional de 1964 Congreso de Lgica, Metodologa y Filosofa de la Ciencia, las pginas 24-30. Elsevier / North-Holland, 1964. [Coo71] Stephen Cook. La complejidad de los procedimientos de demostrar el teorema. Rcord en la conferencia del Tercer Simposio Anual de ACM en la Teora de

de Informtica, pginas 151-158, 1971. [Coo91] Stephen Cook. La complejidad computacional de las funciones de tipo superior. En Ichiro Satake, editor, Actas de la Internacional Congreso de Matemticos, Kyoto, Japn, pginas 55-69. Springer-Verlag, 1991. [CR79] S. Cook y R. Reckhow. La eficiencia relativa de proposicional sistemas de prueba. J. Symbolic Logic, de 44 aos (1), 1979. [] Edm65 Jack Edmonds. Mnimo de la particin de un matroide en independiente subconjuntos. Res. J.. Nat. Bur. Normas de la Secc. B, 69:67-72, 1965. [FR74] M. J. Fischer y M. O. Rabin. Super-exponencial de la complejidad Presburger aritmtica. En R. M. Karp, editor, la complejidad de la computacin, volumen 7, pginas 27-41. Sociedad Americana de Matemticas, Providence, Rhode Island, 1974. [GJ79] M. R. Garey y D. S. Johnson. Las computadoras y Intractibility, un Gua para la Teora de la NP-completo. W.H. Freeman and Co., San Francisco, 1979. [Gol00] Goldreich Oded. Los fundamentos de la criptografa-Volumen 1. Cambridge University Press, 2000. 16 [Has89] J. Hastad. Los lmites inferiores de casi ptimo para los circuitos de poca profundidad. En S. Micali, editor, aleatoriedad y Computacin, los avances en la Computing Research, vol. 5, pginas 143-170. JAI Press Inc., 1989. [Imp95] R. Impagliazzo. Ap ersonales vista de la complejidad del caso medio. 10 Conferencia Anual sobre la estructura IEEE en la Teora de la Complejidad, pginas 134-147, 1995. [IW97] R. Impagliazzo y Wigderson A.. P = BPP si E requiere exponencial circuitos: Derandomizing el lema XOR. En COTS: ACM Simposio sobre Teora de la Computacin (COTS), 1997. [Kan82] Ravi Kannan. Tamao del circuito, los lmites inferior y reducibilidad no a la conjuntos dispersos. Informacin y Control, 55:40-56, 1982. [Kar72] Richard M. Karp. Reducibilidad de los problemas combinatorios. RE Miller y JW Thatcher, los editores, la complejidad de la Computacin Clculos, pginas 85-103, Nueva York, 1972. Plenum Press. [Kra95] J. Krajicek. Aritmtica limitada, la lgica proposicional, y la complejidad Teora. Cambridge, 1995. [Lev73] L. Levin. Los problemas universales de la bsqueda (en ruso) ". Problemy Peredachi Informatsii, 9 (3) :265-266, 1973. Traduccin de Ingls en Trakhtenbrot, BA: Una encuesta de los enfoques rusos Perebor (Fuerza bruta de bsqueda) algoritmos. Anales de la Historia de la computacin, 6 (1984), pginas. 384-400. [Lev86] L. Levin. Caso medio problemas completos. SIAM J. Informtica, 15:285-286, 1986. [Mil76] G. L. Miller. Hiptesis de Reimann y las pruebas de primalidad. J. Comput. Sistema Sci., 13:300-317, 1976. [Pap94] Christos Papadimitriou. Complejidad Computacional. AddisonWesley, 1994. [Pra75] V. R. Pratt. Cada primer dispone de un certificado sucinto. SIAM Diario de Informtica, 4 (3) :214-220, 1975.

17 [Raz85] Alexander A. Razborov. Los lmites inferiores de la complejidad montona de algunas funciones booleanas. Matemticas Sovitica. Dokl., 31:354-357, 1985. [RR97] Alexander A. Razborov Rudich y Steven. Las pruebas fsicas. Revista de Ciencias de la Computacin y Sistema, 55 (1) :24-35, agosto de 1997. [RS95] N. Robertson y P. D. Seymour. Menores de edad Grfico I-XIII. Diario de Teora Combinatoria B, 1983-1995. [SCY97] R. Impagliazzo S. Cook y Yamakami T.. Atigh t relacin entre los genricos y los orculos de tipo-2 teora de la complejidad. Informacin y Computacin, 137 (2) :159-170, 15 de septiembre de 1997. [Sha49] C. Shannon. La sntesis de los circuitos de conmutacin de dos terminales. Campana Tcnico del Sistema Diario, 28:59-98, 1949. [Sha92] Adi Shamir. Ip = PSPACE. J.A.C.M., 39 (4) :869-877, de 1992. [Sho97] Peter Shor. Algoritmos tiempo-polinomio de descomposicin en factores primos y los logaritmos discretos en un ordenador cuntico. 26:1484-1509, 1997. [Sip97] Michael Sipser. Introduccin a la Teora de la Computacin. SPW, 1997. [Sma98] Steve Smale. Problemas matemticos para el prximo siglo. MATHINT: El Mathematical Intelligencer, 20, 1998. [Smo87] R. Smolensky. Mtodos algebraicos en la teora de los lmites inferiores de la complejidad del circuito booleano. En ACM Simposio sobre Teora de la Informtica (COTS), volumen 19, pginas 77-82, 1987. [SS77] R. Solovay y Strassen V.. AFAST de Monte-Carlo para la prueba de primalidad. SIAM Journal on Computing, 6 (1) :84-85, marzo de 1977. [Tur36] Alan Turing. Sobre los nmeros computables, con una solicitud a la entscheidnungsproblem. Proc. Londres Matemticas. Soc.. servicios. 2, 42:230 265, 1936-7. 18 [VN53] J. von Neumann. Acertain de suma cero, juego de dos personas equivalentes para el problema de asignacin ptima. En H. W. Kahn y W. A. Tucker, editores, Contribuciones a la Teora de Juegos II. Princeton Universidad. Press, 1953. 19

Вам также может понравиться