fbpx
Wikipedia

Máquina de Turing alternante

Sistema combinacionalAutómata finitoAutómata con pilaMáquina de TuringTeoría de autómatas


En la teoría de la complejidad computacional, una máquina de Turing alternante (ATM) es una máquina de Turing no determinista (NTM) con una regla para la aceptación de cómputos que generaliza las reglas usadas en la definición de las clases de complejidad NP y co-NP. El concepto de una ATM fue establecido por Chandra y Stockmeyer en 1976 (ver referencias).

Descripción informal

La definición de NP usa el modo existencial de computación: Si cualquier elección lleva a un estado de aceptación, entonces la computación completa acepta. La definición de co-NP usa el modo universal de computación: solo si todas las opciones llevan a un estado de aceptación, la computación completa acepta. Una máquina de Turing alternante (o para ser más precisos, la definición de la aceptación de tal máquina) alterna entre estos modos.

Una máquina de Turing alternante es una máquina de Turing no determinista cuyos estados se dividen en dos grupos: estados existenciales y estados universales. Un estado existencial está aceptando si alguna transición conduce a un estado de aceptación; un estado universal está aceptando si cada transición conduce a un estado de aceptación. (Por lo tanto un estado universal con transiciones acepta incondicionalmente, un estado existencial sin transiciones rechaza incondicionalmente). La máquina como un conjunto acepta si el estado inicial está aceptando.

Definición formal

Formalmente, una máquina de Turing alternante (de una cinta) es una 5 tupla   donde

  •   es el conjunto finito de estados
  •   es el alfabeto finito de la cinta
  •   es llamada la función de transición (L desplaza la cabeza a la izquierda y R desplaza la cabeza a la derecha)
  •   es el estado inicial
  •   especifica el tipo de cada estado

Si M es un estado   con   entonces esa configuración se dice que es aceptante, y si   la configuración se dice que es rechazante. Una configuración con   se dice que es aceptante si todas las configuraciones en un solo paso son aceptantes, y rechazante si alguna configuración accesible en un solo paso es rechazante. Una configuración con   se dice que es aceptante cuando existe alguna configuración accesible en un solo paso que es aceptante y recrechazante cuando todas las configuraciones en un solo paso son rechazantes (este es el tipo de todos los estados en una NTM). Se dice que M acepta una cadena de entrada w si la configuración inicial de M es aceptante (el estado de M es  , la cabeza está en el extremo izquierdo de la cinta y la cinta contiene w), y rechaza si la configuración inicial es rechazante.

Límites de los recursos

Cuando se decide si una configuración de una ATM está aceptando o rechazando usando la definición anterior, no es necesario examinar todas las configuraciones accesibles a partir de la configuración actual. En particular, una configuración existencial puede etiquetarse como aceptante si se encuentra cualquier configuración sucesora aceptante, y una configuración universal puede ser etiquetada como rechazante si se encuentra que cualquier configuración sucesora es rechazante.

Una ATM decide un lenguaje formal en el   si al examinar las configuraciones en cualquier entrada de longitud   solo hasta a   pasos, es suficiente para etiquetar la configuración inicial como aceptante o rechazante. Una ATM decide un lenguaje en el espacio   si es suficiente examinar, desde la izquierda, las configuraciones que no modifican las celdas de la cinta, más allá de la celda  .

Un lenguaje que es decidido por algunas ATM en tiempo   para alguna constante   se dice que está en la clase  , y un lenguaje decidido en el espacio   se dice que está en la clase  .

Ejemplo

Puede ser que el más simple de los problemas que una máquina alternante puede resolver es el problema de fórmula Booleana cuantificada, que es una generalización del Problema de satisfactibilidad booleana en el que cada variable puede ser delimitada por un cuantificador universal o existencial.

La máquina alternante se ramifica existencialmente para probar todos los valores posibles de una variable cuantificada y universalmente para probar todos los valores posibles de una variable cuantificada universalmente, de izquierda a derecha según el orden en el que están enlazados. Después de decidir un valor para todas las variables cuantificadas, la máquina lo acepta si la fórmula booleana resultante se evalúa como verdadera y rechaza si se evalúa como falso. Así la máquina está aceptando si un valor puede ser sustituido por la variable cuantificada existencialmente que hace que el problema restante sea satisfactorio, y en una variable cuantificada universalmente la máquina acepta si cualquier valor puede ser sustituido y el problema restante es satisfactorio.

Dicha máquina describe fórmulas cuantizadas boolenas en tiempo   and espacio  .

El problema de satisfactibilidad booleano puede ser visto como el caso especial donde todas las variables están cuantificadas existencialmente, permitiendo que el no determinismo ordinario, que usa solo la ramificación existencial, lo resuelva eficientemente.

Clases de complejidad y comparación con máquinas determinantes de Turing

Las siguientes clases de complejidad son útiles para definir para ATMs:

{\ Rm AP} = \ bigcup_ {k> 0} {\ rm ATIME} (n ^ k) son los lenguajes decidibles en tiempo polinomial {\ Rm APSPACE} = \ bigcup_ {k> 0} {\ rm ASPACE} (n ^ k) son los lenguajes decidibles en el espacio polinomial {\ Rm AEXPTIME} = \ bigcup_ {k> 0} {\ rm ATIME} (2 ^ {n ^ k}) son los lenguajes decidibles en tiempo exponencial

Estos son similares a las definiciones de P, PSPACE, y EXPTIME, teniendo en cuenta los recursos utilizados por un ATM en lugar de una máquina determinista Turing. Chandra, Kozen, y Stockmeyer[1]​ demostraron los teoremas

AP = PSPACE

{\ Rm DTIME} (2 ^ {cf (n)}) = {\ rm DTIME} (2 ^ {O (*)} \ mathrm {ASPACE} F (n)) \ Mathbm {ATIME} (g (n)) \ subseteq {\ rm DSPACE} (g (n)) {\ Rm ATIME} (c \ times g (n) ^ 2), \ mathrm {NSPACE} (g (n)) \ subseteq \ bigcup_ {c} Cuando f (n) \ ge \ log (n) g (n) \ ge \ log (n).

Una forma más general de estas relaciones se expresa en la teoría del cómputo paralelo.

Límites de alternancia

Definición

Una máquina Turing alterna con alternancias k es una máquina Turing alterna que cambia de un estado existencial a un estado universal o viceversa no más de k − 1 veces. (Es una máquina de Turing alterna cuyos estados están divididos en conjuntos k. Los estados en conjuntos pares son universales y los estados en conjuntos impares son existenciales, o viceversa. La máquina no tiene transiciones entre un estado en el conjunto i y un estado en el conjunto j l i.)

(C) es la clase de la función en el tiempo f \ en C que comienza por el estado existencial Y alternando a lo sumo j-1 veces. Se llama el nivel j de la jerarquía.

(C) es la misma clase, pero a partir de un estado universal, es el complemento del lenguaje de {\ Rm ATIME}(f, j).

{\ Rm ASPACE} (C, j) = \ Sigma_j {\ rm ESPACIO} (C) se define de manera similar para el cálculo del espacio limitado.

Ejemplo

Consideremos el problema de minimización de circuitos: dado un circuito que calcula una función booleana y un número n, determine si hay un circuito con un máximo de N que calcula la misma función f. Una máquina de Turing alterna, con una alternancia, comenzando en un estado existencial, puede resolver este problema en tiempo polinomial (adivinando un circuito B con a lo más n puertas, cambiando entonces a un estado universal, adivinando Una entrada, y comprobando que la salida de B en esa entrada coincide con la salida de A en esa entrada).

Clases de colapso

Se dice que una jerarquía colapsa al nivel j si todo lenguaje en el nivel k de la jerarquía está en su nivel j.

Como corolario del teorema de Immerman-Szelepcsényi, la jerarquía del espacio logarítmico colapsa a su primer nivel.[2]​ Como corolario, la jerarquía {\ rm SPACE} (f) se desploma a su primer nivel cuando f = \ Omega (\ log) es Space constructible.[cita requerida]

Casos especiales

Una máquina de Turing alterna en tiempo polinomial con alternancias k , comenzando en un estado existencial (respectivamente, universal) puede decidir todos los problemas en la clase \ Sigma_k ^ p (respectivamente, \ Pi_k ^ p).[3]

Estas clases a veces se denotan \ Sigma_k \ rm {P} y \ Pi_k \ rm {P}, respectivamente.

Otro caso especial de jerarquías de tiempo es la jerarquía logarítmica.

Véase también

Referencias

  1. Chandra, A.K., y Stockmeyer, L.J, 'Alternation', Proc. 17ª IEEE Symp. Sobre Foundations of Computer Science, Houston, Texas, 1976, pp. 98-108.
  2. Immerman, Neil. «Nondeterministic espacio se cierra en complementación». SIAM Journal on Computing volumen = 17. 
  3. Kozen, Dexter. Springer-Verlag, ed. Teoría de la Computación. p. 58. ISBN 9781846282973. 

Bibliografía

  • Chandra, A.K., y Stockmeyer, L.J, 'Alternation', Proc. 17ª IEEE Symp. Sobre Foundations of Computer Science, Houston, Texas, 1976, pp. 98-108.
  • Chandra, A.K. Y Kozen, D.C. y Stockmeyer, L.J., 'Alternation', Journal of the ACM, Vol. 28, N.º 1, pp. 114-133, 1981.
  • Michael Sipser (1997). Introducción a la teoría de la computación. Publicación PWS. ISBN 0-534-94728-X.  Sección 10.3: Alternancia, pp. 348-354.
  • Michael Sipser (2006). Introducción a la Teoría de la Computación (2.ª edición). Publicación PWS. ISBN 0-534-95097-3.  Sección 10.3: Alternancia, pp. 380-386.
  • Christos Papadimitriou (1993). Complejo computacional (1.ª edición). Addison Wesley. ISBN 0-201-53082-1.  Sección 16.2: Alternancia, pp. 399-401.
  •   Datos: Q438833

máquina, turing, alternante, teoría, complejidad, computacional, máquina, turing, alternante, máquina, turing, determinista, regla, para, aceptación, cómputos, generaliza, reglas, usadas, definición, clases, complejidad, concepto, establecido, chandra, stockme. En la teoria de la complejidad computacional una maquina de Turing alternante ATM es una maquina de Turing no determinista NTM con una regla para la aceptacion de computos que generaliza las reglas usadas en la definicion de las clases de complejidad NP y co NP El concepto de una ATM fue establecido por Chandra y Stockmeyer en 1976 ver referencias Indice 1 Descripcion informal 2 Definicion formal 3 Limites de los recursos 4 Ejemplo 5 Clases de complejidad y comparacion con maquinas determinantes de Turing 6 Limites de alternancia 6 1 Definicion 6 2 Ejemplo 6 3 Clases de colapso 6 4 Casos especiales 7 Vease tambien 8 Referencias 9 BibliografiaDescripcion informal EditarLa definicion de NP usa el modo existencial de computacion Si cualquier eleccion lleva a un estado de aceptacion entonces la computacion completa acepta La definicion de co NP usa el modo universal de computacion solo si todas las opciones llevan a un estado de aceptacion la computacion completa acepta Una maquina de Turing alternante o para ser mas precisos la definicion de la aceptacion de tal maquina alterna entre estos modos Una maquina de Turing alternante es una maquina de Turing no determinista cuyos estados se dividen en dos grupos estados existenciales y estados universales Un estado existencial esta aceptando si alguna transicion conduce a un estado de aceptacion un estado universal esta aceptando si cada transicion conduce a un estado de aceptacion Por lo tanto un estado universal con transiciones acepta incondicionalmente un estado existencial sin transiciones rechaza incondicionalmente La maquina como un conjunto acepta si el estado inicial esta aceptando Definicion formal EditarFormalmente una maquina de Turing alternante de una cinta es una 5 tupla M Q G d q 0 g displaystyle M Q Gamma delta q 0 g donde Q displaystyle Q es el conjunto finito de estados G displaystyle Gamma es el alfabeto finito de la cinta d Q G P Q G L R displaystyle delta Q times Gamma rightarrow mathcal P Q times Gamma times L R es llamada la funcion de transicion L desplaza la cabeza a la izquierda y R desplaza la cabeza a la derecha q 0 Q displaystyle q 0 in Q es el estado inicial g Q a c e p t a r e c h a z a displaystyle g Q rightarrow wedge vee acepta rechaza especifica el tipo de cada estadoSi M es un estado q Q displaystyle q in Q con g q a c e p t a displaystyle g q acepta entonces esa configuracion se dice que es aceptante y si g q r e c h a z a displaystyle g q rechaza la configuracion se dice que es rechazante Una configuracion con g q displaystyle g q wedge se dice que es aceptante si todas las configuraciones en un solo paso son aceptantes y rechazante si alguna configuracion accesible en un solo paso es rechazante Una configuracion con g q displaystyle g q vee se dice que es aceptante cuando existe alguna configuracion accesible en un solo paso que es aceptante y recrechazante cuando todas las configuraciones en un solo paso son rechazantes este es el tipo de todos los estados en una NTM Se dice que M acepta una cadena de entrada w si la configuracion inicial de M es aceptante el estado de M es q 0 displaystyle q 0 la cabeza esta en el extremo izquierdo de la cinta y la cinta contiene w y rechaza si la configuracion inicial es rechazante Limites de los recursos EditarCuando se decide si una configuracion de una ATM esta aceptando o rechazando usando la definicion anterior no es necesario examinar todas las configuraciones accesibles a partir de la configuracion actual En particular una configuracion existencial puede etiquetarse como aceptante si se encuentra cualquier configuracion sucesora aceptante y una configuracion universal puede ser etiquetada como rechazante si se encuentra que cualquier configuracion sucesora es rechazante Una ATM decide un lenguaje formal en el t n displaystyle t n si al examinar las configuraciones en cualquier entrada de longitud n displaystyle n solo hasta a t n displaystyle t n pasos es suficiente para etiquetar la configuracion inicial como aceptante o rechazante Una ATM decide un lenguaje en el espacio s n displaystyle s n si es suficiente examinar desde la izquierda las configuraciones que no modifican las celdas de la cinta mas alla de la celda s n displaystyle s n Un lenguaje que es decidido por algunas ATM en tiempo c t n displaystyle c cdot t n para alguna constante c gt 0 displaystyle c gt 0 se dice que esta en la clase A T I M E t n displaystyle rm ATIME t n y un lenguaje decidido en el espacio c s n displaystyle c cdot s n se dice que esta en la clase A S P A C E s n displaystyle rm ASPACE s n Ejemplo EditarPuede ser que el mas simple de los problemas que una maquina alternante puede resolver es el problema de formula Booleana cuantificada que es una generalizacion del Problema de satisfactibilidad booleana en el que cada variable puede ser delimitada por un cuantificador universal o existencial La maquina alternante se ramifica existencialmente para probar todos los valores posibles de una variable cuantificada y universalmente para probar todos los valores posibles de una variable cuantificada universalmente de izquierda a derecha segun el orden en el que estan enlazados Despues de decidir un valor para todas las variables cuantificadas la maquina lo acepta si la formula booleana resultante se evalua como verdadera y rechaza si se evalua como falso Asi la maquina esta aceptando si un valor puede ser sustituido por la variable cuantificada existencialmente que hace que el problema restante sea satisfactorio y en una variable cuantificada universalmente la maquina acepta si cualquier valor puede ser sustituido y el problema restante es satisfactorio Dicha maquina describe formulas cuantizadas boolenas en tiempo n 2 displaystyle n 2 and espacio n displaystyle n El problema de satisfactibilidad booleano puede ser visto como el caso especial donde todas las variables estan cuantificadas existencialmente permitiendo que el no determinismo ordinario que usa solo la ramificacion existencial lo resuelva eficientemente Clases de complejidad y comparacion con maquinas determinantes de Turing EditarLas siguientes clases de complejidad son utiles para definir para ATMs Rm AP bigcup k gt 0 rm ATIME n k son los lenguajes decidibles en tiempo polinomial Rm APSPACE bigcup k gt 0 rm ASPACE n k son los lenguajes decidibles en el espacio polinomial Rm AEXPTIME bigcup k gt 0 rm ATIME 2 n k son los lenguajes decidibles en tiempo exponencialEstos son similares a las definiciones de P PSPACE y EXPTIME teniendo en cuenta los recursos utilizados por un ATM en lugar de una maquina determinista Turing Chandra Kozen y Stockmeyer 1 demostraron los teoremasAP PSPACE APSPACE EXPTIME AEXPTIME EXPSPACE Rm DTIME 2 cf n rm DTIME 2 O mathrm ASPACE F n Mathbm ATIME g n subseteq rm DSPACE g n Rm ATIME c times g n 2 mathrm NSPACE g n subseteq bigcup c Cuando f n ge log n g n ge log n Una forma mas general de estas relaciones se expresa en la teoria del computo paralelo Limites de alternancia EditarDefinicion Editar Una maquina Turing alterna con alternancias k es una maquina Turing alterna que cambia de un estado existencial a un estado universal o viceversa no mas de k 1 veces Es una maquina de Turing alterna cuyos estados estan divididos en conjuntos k Los estados en conjuntos pares son universales y los estados en conjuntos impares son existenciales o viceversa La maquina no tiene transiciones entre un estado en el conjunto i y un estado en el conjunto j l i C es la clase de la funcion en el tiempo f en C que comienza por el estado existencial Y alternando a lo sumo j 1 veces Se llama el nivel j de la jerarquia C es la misma clase pero a partir de un estado universal es el complemento del lenguaje de Rm ATIME f j Rm ASPACE C j Sigma j rm ESPACIO C se define de manera similar para el calculo del espacio limitado Ejemplo Editar Consideremos el problema de minimizacion de circuitos dado un circuito que calcula una funcion booleana y un numero n determine si hay un circuito con un maximo de N que calcula la misma funcion f Una maquina de Turing alterna con una alternancia comenzando en un estado existencial puede resolver este problema en tiempo polinomial adivinando un circuito B con a lo mas n puertas cambiando entonces a un estado universal adivinando Una entrada y comprobando que la salida de B en esa entrada coincide con la salida de A en esa entrada Clases de colapso Editar Se dice que una jerarquia colapsa al nivel j si todo lenguaje en el nivel k de la jerarquia esta en su nivel j Como corolario del teorema de Immerman Szelepcsenyi la jerarquia del espacio logaritmico colapsa a su primer nivel 2 Como corolario la jerarquia rm SPACE f se desploma a su primer nivel cuando f Omega log es Space constructible cita requerida Casos especiales Editar Una maquina de Turing alterna en tiempo polinomial con alternancias k comenzando en un estado existencial respectivamente universal puede decidir todos los problemas en la clase Sigma k p respectivamente Pi k p 3 Estas clases a veces se denotan Sigma k rm P y Pi k rm P respectivamente Otro caso especial de jerarquias de tiempo es la jerarquia logaritmica Vease tambien EditarMaquina de Turing Maquina de Turing universal Alan TuringReferencias Editar Chandra A K y Stockmeyer L J Alternation Proc 17ª IEEE Symp Sobre Foundations of Computer Science Houston Texas 1976 pp 98 108 Immerman Neil Nondeterministic espacio se cierra en complementacion SIAM Journal on Computing volumen 17 Kozen Dexter Springer Verlag ed Teoria de la Computacion p 58 ISBN 9781846282973 Bibliografia EditarChandra A K y Stockmeyer L J Alternation Proc 17ª IEEE Symp Sobre Foundations of Computer Science Houston Texas 1976 pp 98 108 Chandra A K Y Kozen D C y Stockmeyer L J Alternation Journal of the ACM Vol 28 N º 1 pp 114 133 1981 Michael Sipser 1997 Introduccion a la teoria de la computacion Publicacion PWS ISBN 0 534 94728 X Seccion 10 3 Alternancia pp 348 354 Michael Sipser 2006 Introduccion a la Teoria de la Computacion 2 ª edicion Publicacion PWS ISBN 0 534 95097 3 Seccion 10 3 Alternancia pp 380 386 Christos Papadimitriou 1993 Complejo computacional 1 ª edicion Addison Wesley ISBN 0 201 53082 1 Seccion 16 2 Alternancia pp 399 401 Datos Q438833 Obtenido de https es wikipedia org w index php title Maquina de Turing alternante amp oldid 128060743, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos