En la teoría de la complejidad computacional , NL ( espacio logarítmico no determinista ) es la clase de complejidad que contiene problemas de decisión que pueden ser resueltos por una máquina de Turing no determinista utilizando una cantidad logarítmica de espacio de memoria .
NL es una generalización de L , la clase para problemas de espacio logarítmico en una máquina de Turing determinista . Dado que cualquier máquina de Turing determinista es también una máquina de Turing no determinista , tenemos que L está contenido en NL .
NL se puede definir formalmente en términos del espacio no determinista de recursos computacionales (o NSPACE) como NL = NSPACE (log n ).
Importantes resultados en la teoría de la complejidad nos permiten relacionar esta clase de complejidad con otras clases, informándonos sobre el poder relativo de los recursos involucrados. Por otro lado, los resultados en el campo de los algoritmos nos indican qué problemas pueden resolverse con este recurso. Al igual que ocurre con gran parte de la teoría de la complejidad, muchas preguntas importantes sobre NL siguen abiertas (véase Problemas sin resolver en informática ).
En ocasiones, NL se denomina RL debido a su definición probabilística que se detalla a continuación; sin embargo, este nombre se utiliza con mayor frecuencia para referirse al espacio logarítmico aleatorio , que no se sabe que sea igual a NL .
Definiciones
Existen varias definiciones equivalentes de la clase NL .
Definición estándar
NL es la clase de complejidad de problemas de decisión que pueden ser resueltos por una máquina de Turing no determinista (NTM) utilizando una cantidad logarítmica de espacio de memoria.
En más detalle, un idiomaes NL si y solo si existe un NTMde tal manera que
- Se ejecuta en el espacio de registro.
- Siempre se detiene.
- Si, entonces existe al menos un rastro computacional deEsto provoca que la máquina se detenga en un estado de aceptación.
- Si, entonces todos los rastros computacionales deEsto provoca que la máquina se detenga en un estado de rechazo.
Definición probabilística
Supongamos que C es la clase de complejidad de problemas de decisión resolubles en espacio logarítmico con máquinas de Turing probabilísticas que nunca aceptan incorrectamente, pero a las que se les permite rechazar incorrectamente menos de 1/3 de las veces; esto se denomina error unilateral . La constante 1/3 es arbitraria; cualquier x con 0 ≤ x < 1/2 sería suficiente.
Resulta que C = NL . Nótese que C , a diferencia de su contraparte determinista L , no está limitado a tiempo polinomial, porque aunque tiene un número polinomial de configuraciones, puede usar la aleatoriedad para escapar de un bucle infinito. Si lo limitamos a tiempo polinomial, obtenemos la clase RL , que está contenida en NL pero no se sabe ni se cree que sea igual a ella .
Existe un algoritmo sencillo que establece que C = NL . Claramente, C está contenido en NL , ya que:
- Si la cadena no pertenece al idioma, ambas la rechazan en todas las rutas de cálculo.
- Si la cadena está en el lenguaje, un algoritmo NL la acepta a lo largo de al menos una ruta de cálculo y un algoritmo C la acepta a lo largo de al menos dos tercios de sus rutas de cálculo.
Para demostrar que NL está contenido en C , simplemente tomamos un algoritmo NL y elegimos una ruta de cálculo aleatoria de longitud n , y la ejecutamos 2n veces . Dado que ninguna ruta de cálculo excede la longitud n , y que hay 2n rutas de cálculo en total, tenemos una buena probabilidad de encontrar la ruta de aceptación (limitada inferiormente por una constante).
El único problema es que no tenemos espacio en el espacio logarítmico para un contador binario que llegue hasta 2ⁿ . Para solucionar esto, lo reemplazamos con un contador aleatorio , que simplemente lanza n monedas y se detiene y descarta si todas caen cara. Dado que este evento tiene una probabilidad de 2 − n , esperamos que tome 2ⁿ pasos en promedio antes de detenerse. Solo necesita mantener un total acumulado del número de caras consecutivas que ve, que puede contar en el espacio logarítmico.
Gracias al teorema de Immerman-Szelepcsényi , según el cual NL es cerrado bajo complementos, el error unilateral en estos cálculos probabilísticos puede sustituirse por un error nulo. Es decir, estos problemas pueden resolverse mediante máquinas de Turing probabilísticas que utilizan espacio logarítmico y nunca cometen errores. La clase de complejidad correspondiente, que además requiere que la máquina utilice únicamente tiempo polinomial, se denomina ZPLP .
Por lo tanto, si solo consideramos el espacio, parece que la aleatorización y el no determinismo son igualmente poderosos.
Definición de certificado
NL puede caracterizarse de forma equivalente mediante certificados , análogos a clases como NP . Sea un verificador una máquina de Turing determinista con espacio logarítmico limitado que tiene una cinta de entrada adicional de solo lectura (es decir, el verificador solo puede mover el cabezal de lectura hacia adelante, nunca hacia atrás).
Un idiomaestá en NL si y solo si [ 1 ] : Definición 4.19
- Existe una función polinómica.
- Existe un verificador.
- Para cualquier,Si existe un certificadocon longitud, de tal manera que.
En otras palabras, significa que si una oración pertenece al lenguaje, entonces existe una prueba de longitud polinómica de que pertenece al lenguaje. No dice nada sobre el caso en que la oración no pertenece al lenguaje, aunque por el teorema de Immerman-Szelepcsényi, es claro que existe algún verificador que puede verificar ambas cosas.y.
Nótese que la condición de lectura única es necesaria. Si el verificador puede leer hacia adelante y hacia atrás, esto extiende la clase a la clase NP . [ 1 ] : Ejercicio 4.7
Cem Say y Abuzer Yakaryılmaz han demostrado que la máquina de Turing determinista en el espacio logarítmico del enunciado anterior puede ser reemplazada por una máquina de Turing probabilística de error limitado en el espacio constante que solo puede usar un número constante de bits aleatorios. [ 2 ]
Definición descriptiva
En la teoría de la complejidad descriptiva , NL se define como aquellos lenguajes expresables en lógica de primer orden con un operador de cierre transitivo añadido.
Propiedades de cierre
La clase NL es cerrada bajo las operaciones complementación, unión y por lo tanto intersección, concatenación y estrella de Kleene .
Completitud NL
Un problema es NL-completo si es NL , y cualquier problema en NL es reducible a él en espacio logarítmico .
Problemas que se sabe que son NL -completos, incluyendo la conectividad ST y la 2-satisfacibilidad .
La conectividad ST pregunta, para los nodos S y T en un grafo dirigido , si T es alcanzable desde S.
La 2-satisfacibilidad pregunta, dada una fórmula proposicional en la que cada cláusula es la disyunción de dos literales, si existe una asignación de variables que haga que la fórmula sea verdadera. Un ejemplo de instancia, dondeindica que no , podría ser:
Contenciones
Se sabe que NL está contenido en P , ya que existe un algoritmo de tiempo polinomial para la 2-satisfacibilidad , pero se desconoce si NL = P o si L = NL . Se sabe que NL = co-NL , donde co-NL es la clase de lenguajes cuyos complementos pertenecen a NL . Este resultado (el teorema de Immerman-Szelepcsényi ) fue descubierto independientemente por Neil Immerman y Róbert Szelepcsényi en 1987; recibieron el Premio Gödel de 1995 por este trabajo.
En complejidad de circuitos , NL se puede ubicar dentro de la jerarquía NC . En Papadimitriou 1994, Teorema 16.1, tenemos:
- .
Más precisamente, NL está contenido en AC 1. Se sabe que NL es igual a ZPL , la clase de problemas resolubles por algoritmos aleatorios en espacio logarítmico y tiempo ilimitado, sin error. Sin embargo, no se sabe ni se cree que sea igual a RLP o ZPLP , las restricciones de tiempo polinomial de RL y ZPL , a las que algunos autores se refieren como RL y ZPL .
Podemos relacionar NL con el espacio determinista utilizando el teorema de Savitch , que nos dice que cualquier algoritmo no determinista puede ser simulado por una máquina determinista en un espacio como máximo cuadráticamente mayor. Del teorema de Savitch, tenemos directamente que:
Esta fue la inclusión de espacio determinista más fuerte conocida en 1994 (Papadimitriou 1994 Problema 16.4.10, "Espacio simétrico"). Dado que las clases de espacio más grandes no se ven afectadas por los incrementos cuadráticos, se sabe que las clases no deterministas y deterministas son iguales, de modo que, por ejemplo, tenemos PSPACE = NPSPACE .
Notas
- 1 2 Arora, Sanjeev ; Barak, Boaz (2009). Teoría de la complejidad: un enfoque moderno . Cambridge University Press. ISBN 978-0-521-42426-4.
- ↑ AC Cem Say, Abuzer Yakaryılmaz, "Verificadores de estado finito con aleatoriedad constante", Métodos lógicos en informática , vol. 10(3:6)2014, págs. 1-17.
Referencias
- Complexity Zoo : NL
- Papadimitriou, C. (1994). «Capítulo 16: Espacio logarítmico». Complejidad computacional . Addison-Wesley. ISBN 0-201-53082-1.
- Michael Sipser (27 de junio de 1997). «Secciones 8.4 – 8.6: Las clases L y NL, NL-completitud, NL es igual a coNL». Introducción a la teoría de la computación . PWS Publishing. págs. 294–302 . ISBN 0-534-94728-X.
- Introducción a la teoría de la complejidad: Lección 7. Oded Goldreich. Proposición 6.1. Nuestra C es lo que Goldreich llama badRSPACE(log n).
- Clases de complejidad