Escolar Documentos
Profissional Documentos
Cultura Documentos
Turing dio una definición sucinta del experimento en su ensayo de 1948, «Máquinas inteligentes». Refiriéndose a su publicación de
1936, Turing escribió que la máquina de Turing, aquí llamada una máquina de computación lógica, consistía en:
... una ilimitada capacidad de memoria obtenida en la forma de una cinta infinita marcada con cuadrados,
en cada uno de los cuales podría imprimirse un símbolo. En cualquier momento hay un símbolo en la
máquina; llamado el símbolo leído. La máquina puede alterar el símbolo leído y su comportamiento está en
parte determinado por ese símbolo, pero los símbolos en otros lugares de la cinta no afectan el
comportamiento de la máquina. Sin embargo, la cinta se puede mover hacia adelante y hacia atrás a través
de la máquina, siendo esto una de las operaciones elementales de la máquina. Por lo tanto cualquier
2
símbolo en la cinta puede tener finalmente una oportunidad.
Una máquina de Turing que es capaz de simular cualquier otra máquina de Turing es llamada una máquina universal de Turing
(UTM, o simplemente una máquina universal). Una definición más matemáticamente orientada, con una similar naturaleza
"universal", fue presentada por Alonzo Church, cuyo trabajo sobre el cálculo lambda se entrelaza con el de Turing en una teoría
formal de la computación conocida como latesis de Church-Turing. La tesis señala que las máquinas de Turing capturan, de hecho, la
noción informal de un método eficaz en la lógica y las matemáticas y proporcionan una definición precisa de un algoritmo o
'procedimiento mecánico'.
La importancia de la máquina de Turing en la historia de la computación es doble: primero, la máquina de Turing fue uno de los
primeros (si no el primero) modelos teóricos para las computadoras, viendo la luz en 1936. Segundo, estudiando sus propiedades
abstractas, la máquina de Turing ha servido de base para mucho desarrollo teórico en las ciencias de la computación y en la teoría de
la complejidad. Una razón para esto es que las máquinas de Turing son simples, y por tanto amenas al análisis. Dicho esto, cabe
aclarar que las máquinas de Turing no son un modelo práctico para la computación en máquinas reales, las cuales precisan modelos
más rápidos como los basados enRAM.
Índice
Historia
Descripción informal
Definición formal
Funcionamiento de la máquina de Turing
Representación como diagrama de estados
Descripción instantánea
Ejemplo
Modificaciones equivalentes
Máquina de Turing con movimiento stay o "esperar"
Máquina de Turing con cinta infinita a amboslados
Máquina de Turing con cinta multipista
Máquina de Turing multicinta
Máquina de Turing multidimensional
Máquina de Turing determinista y no determinista
Problema de la parada (halting problem)
Codificación de una máquina de Turing
Máquina de Turing universal
Máquina de Turing cuántica
Véase también
Referencias
Notas al pie
Bibliografía
Enlaces externos
Historia
Con este aparato extremadamente sencillo es posible realizar cualquier cómputo que un computador digital sea capaz de realizar
.
Mediante este modelo teórico y el análisis de la complejidad de los algoritmos, fue posible la categorización de problemas
computacionales de acuerdo a su comportamiento, apareciendo así, el conjunto de problemas denominados P y NP, cuyas soluciones
pueden encontrarse entiempo polinómico por máquinas de Turing deterministas y no deterministas, respectivamente.
Precisamente, la tesis de Church-Turing formulada por Alan Turing y Alonzo Church, de forma independiente a mediados del siglo
uring.3
XX caracteriza la noción informal decomputabilidad con la computación mediante una máquina de T
La idea subyacente es el concepto de que una máquina de Turing puede verse como un autómata ejecutando un procedimiento
efectivo definido formalmente, donde el espacio de memoria de trabajo es ilimitado, pero en un momento determinado sólo una parte
finita es accesible.
Descripción informal
La máquina de Turing modela matemáticamente a una máquina que
opera mecánicamente sobre una cinta. En esta cinta hay símbolos que
la máquina puede leer y escribir, uno a la vez, usando un cabezal
lector/escritor de cinta. La operación está completamente
determinada por un conjunto finito de instrucciones elementales Aquí se muestra el estado interno (q1) dentro del
como "en el estado 42, si el símbolo visto es 0, escribe un 1; Si el cabezal, y la ilustración describe la cinta como
símbolo visto es 1, cambia al estado 17; en el estado 17, si el símbolo siendo infinita y llenada previamente con '0', el
símbolo sirviendo como blanco. El estado
visto es 0, escribe un 1 y cambia al estado 6; etc". En el artículo
completo del sistema (suconfiguración) consiste
original ("Sobre números computables con una aplicación al
del estado interno, el contenido de las casillas
Entscheidungsproblem"), Turing no imagina un mecanismo, sino una sombreadas incluyendo el blanco leído el cabezal
persona a la que él llama la "computadora", quien ejecuta servilmente ("11B") y la posición del cabezal. (Dibujo después
estas reglas mecánicas deterministas (o como Turing pone, "de una de Minsky (1967) p. 121).
manera desganada").
1. Una cinta que se divide en celdas, una al lado de la otra. Cada celda
contiene un símbolo de algún alfabeto finito. El alfabeto contiene un
símbolo especial llamado blanco (aquí escrito como 'B') y uno o más
símbolos adicionales. La cinta se supone que es arbitrariamente
extensible hacia la izquierda y hacia la derecha, es decir, la máquina de
Turing siempre es suministrada con tanta cinta como necesite para su
computación. Las celdas que no se hayan escrito previamente se
asumen que están rellenas con el símbolo blanco. En algunos modelos
la cinta tiene un extremo izquierdo marcado con un símbolo especial; la
cinta se extiende o es indefinidamente extensible hacia la derecha.
2. Un cabezal que puede leer y escribir símbolos en la cinta y mover la
cinta a la izquierda y a la derecha una (y sólo una) celda a la vez. En
algunos modelos el cabezal se mueve y la cinta es estacionaria.
Animación de la máquina de Turing
3. Un registro de estado que almacena el estado de la máquina de
Turing, uno de los estados finitos. Hay un estado inicial especial con el
que el registro de estado se inicia. Turing escribe que estos estados
reemplazan el "estado de la mente" en que ordinariamente estaría una persona realizando cálculos.
4. Una tabla finita de instrucciones (llamada ocasionalmente como tabla de acción o función de transición). Las
instrucciones son usualmente 5-tuplas: qiaj→qi1aj1dk, (a veces 4-tuplas), que, dado el estado (qi) en que la máquina
se encuentra actualmente y el símbolo (aj) que se está leyendo en la cinta (el símbolo actualmente debajo del
cabezal) le indica a la máquina hacer lo siguiente en secuencia (para los modelos de 5-tupla):
Note que cada parte de la máquina — su estado y colecciones de símbolos — y sus acciones — imprimir, borrar, movimiento de la
cinta — es finito, discreto y distinguible; es la cantidad potencialmente ilimitada de cinta lo que le da una cantidad ilimitada de
espacio de almacenamiento.
Definición formal
Una máquina de Turing4 es un modelo computacional que realiza una lectura/escritura de manera automática sobre una entrada
llamada cinta, generando unasalida en esta misma.
Este modelo está formado por unalfabeto de entrada y uno de salida, un símbolo especial llamado blanco (normalmente
b, o 0), un
conjunto de estados finitos y un conjunto de transiciones entre dichos estados. Su funcionamiento se basa en una función de
transición, que recibe un estado inicial y una cadena de caracteres (la cinta, la cual puede ser infinita) pertenecientes al alfabeto de
entrada. La máquina va leyendo una celda de la cinta en cada paso, borrando el símbolo en el que se encuentra posicionado su
cabezal y escribiendo un nuevo símbolo perteneciente al alfabeto de salida, para luego desplazar el cabezal a la izquierda o a la
derecha (solo una celda a la vez). Esto se repite según se indique en la función de transición, para finalmente detenerse en un estado
final o de aceptación, representando así la salida.
Una máquina de Turing con una sola cinta puede definirse como una 7-
tupla
donde:5
La máquina de Turing puede considerarse como un autómata capaz de reconocer lenguajes formales. En ese sentido, es capaz de
reconocer los lenguajes recursivamente enumerables, de acuerdo a la jerarquía de Chomsky. Su potencia es, por tanto, superior a
otros tipos de autómatas, como el autómata finito, o el autómata con pila, o igual a otros modelos con la misma potencia
computacional.
El conjunto de estados es y el estado inicial es . La tabla que describe la función de transición es la siguiente:
1 1
0 0
0 1
1 1
1 1
0 0
1 1
0 1
El funcionamiento de una computación de esta máquina puede mostrarse con el siguiente ejemplo (en negrita se resalta la posición de
la cabeza lectora/escritora):
2 01
3 010
4 0100
5 0101
6 0101
7 0101
8 1101
9 1001
10 1001
11 10010
12 10011
13 10011
14 10011
15 11011
Parada
La máquina realiza su proceso por medio de un bucle, en el estado inicial , reemplaza el primer 1 con un 0, y pasa al estado , con
el que avanza hacia la derecha, saltando los símbolos 1 hasta un 0 (que debe existir), cuando lo encuentra pasa al estado , con este
estado avanza saltando los 1 hasta encontrar otro 0 (la primera vez no habrá ningún 1). Una vez en el extremo derecho, añade un 1.
Después comienza el proceso de retorno; con vuelve a la izquierda saltando los 1, cuando encuentra un 0 (en el medio de la
secuencia), pasa a que continúa a la izquierda saltando los 1 hasta el 0 que se escribió al principio. Se reemplaza de nuevo este 0
por 1, y pasa al símbolo siguiente, si es un 1, se pasa a otra iteración del bucle, pasando al estado s1 de nuevo. Si es un símbolo 0,
será el símbolo central, con lo que la máquina se detiene al haber finalizado el cómputo.
Modificaciones equivalentes
Una razón para aceptar la máquina de Turing como un modelo general de cómputo es que el modelo que hemos definido
anteriormente es equivalente a muchas versiones modificadas que en principio pareciera incrementar el poder computacional.
Donde significa "permanecer" o "esperar", es decir no mover el cabezal de lectura/escritura. Por lo tanto,
significa que se pasa del estadoq al p, se escribe en la celda actual y la cabeza se queda sobre la celda actual.
Se dice que esta cinta tiene múltiples pistas puesto que cada celda de esta máquina de Turing contiene múltiples caracteres, el
contenido de las celdas de la cinta puede ser representado mediante n-tuplas ordenadas. Los movimientos que realice esta máquina
dependerán de su estado actual y de la n-tupla que represente el contenido de la celda actual. Cabe mencionar que posee un solo
cabezal al igual que una MT sencilla.
En la modificación bidimensional de MT que se muestra en la figura también se agregan dos nuevos movimientos del cabezal {U,D}
(es decir arriba y abajo). De esta forma la definición de los movimientos que realiza el cabezal será {L,R,U,D}.
MT bidimensional.
¿Cómo sabe una máquina no determinista qué acción tomar de las varias posibles? Hay dos formas de verlo: una es decir que la
máquina es "el mejor adivino posible", esto es, que siempre elige la transición que finalmente la llevará a un estado final de
aceptación. La otra es imaginarse que la máquina se "clona", bifurcándose en varias copias, cada una de las cuales sigue una de las
posibles transiciones. Mientras que una máquina determinista sigue un único "camino computacional", una máquina no determinista
tiene un "árbol computacional". Si cualquiera de las ramas del árbol finaliza en un estado de aceptación, se dice que la máquina
acepta la entrada.
La capacidad de cómputo de ambas versiones es equivalente; se puede demostrar que dada una máquina de Turing no determinista
existe otra máquina de Turing determinista equivalente, en el sentido de que reconoce el mismo lenguaje, y viceversa. No obstante, la
velocidad de ejecución de ambos formalismos no es la misma, pues si una máquina no determinista M reconoce una cierta palabra de
tamaño n en un tiempo , la máquina determinista equivalente reconocerá la palabra en un tiempo . Es decir, el no
determinismo permitirá reducir la complejidad de la solución de los problemas, permitiendo resolver, por ejemplo, problemas de
complejidad exponencial en untiempo polinómico.
Alan Turing, en su famoso artículo «On computable numbers, with an application to the Entscheidungsproblem» (1936), demostró
que el problema de la parada de la máquina de Turing es indecidible, en el sentido de que ninguna máquina de Turing lo puede
resolver.
Símbolo Codificación
1
11
111
. .
. .
. .
Símbolo Codificación
11
. .
. .
. .
Las directrices de desplazamiento , y se codifican con 1, 11, 111, respectivamente. Una transición se
codifica usando ceros como separadores entre los estados, los símbolos del alfabeto de cinta y la directriz de desplazamiento . Así,
la transición se codifica como
Una MT se codifica escribiendo consecutivamente las secuencias de las modificaciones de todas sus transiciones. Más precisamente,
la codificación de una MT M es de la forma , donde es la codificación de la -ésima transición de M. Puesto que el
orden en que se representen las transiciones de una MT no es relevante, una misma MT tiene varias codificaciones diferentes. Esto no
representa ninguna desventaja práctica o conceptual ya que no se pretende que las codificaciones sean únicas.
Se puede demostrar que es posible construir una máquina especial de este tipo que pueda realizar el trabajo
de todas las demás. Esta máquina especial puede ser denominada máquina universal.
Con esta codificación de tablas como cadenas, se abre la posibilidad de que unas máquinas de Turing se comporten como otras
máquinas de Turing. Sin embargo, muchas de sus posibilidades son indecidibles, pues no admiten una solución algorítmica. Por
ejemplo, un problema interesante es determinar si una máquina de Turing cualquiera se parará en un tiempo finito sobre una
determinada entrada; problema conocido como problema de la parada, y que Turing demostró que era indecidible. En general, se
puede demostrar que cualquier cuestión no trivial sobre el comportamiento o la salida de una máquina de Turing es un problema
indecidible.
El concepto de Máquina de Turing universal está relacionado con el de un sistema operativo básico, pues puede ejecutar cualquier
instrucción computable sobre él.6
La cinta de memoria es similar a la de una máquina de Turing tradicional. La única diferencia es que cada elemento de la cinta de la
máquina cuántica es un qubit. El alfabeto de esta nueva máquina está formado por el espacio de valores del qubit. La posición del
cabezal se representa con una variable entera.
Véase también
Teoría de autómatas
Sistema combinacional
Autómata finito
Autómata con pila
Máquina abstracta
Máquina de Turing universal
Máquina de Turing alternante
Problema de la parada
Jerarquía de Chomsky
Juego de la vida
Cálculo lambda
Referencias
Notas al pie
1. The idea came to him in mid-1935 (perhaps, see more in the History section) after a question posed by M. H. A.
Newman in his lectures -- "Was there a definite method, or as Newman put it, a mechanical process which could be
applied to a mathematical statement, and which would come up with the answer as to whether it was provable"
(Hodges 1983:93). Turing envió su artículo el 31 de mayo de 1936 a la London Mathematical Society para su
publicación en la revista Proceedings (cf Hodges 1983:112), pero no fue publicada hasta principios de 1937 (cf
Hodges 1983:129).
2. See the definition of "innings" on Wiktionary
3. Gómez de Silva Garza, Gómez de Silva Garza (2008).Introducción a la computación. p. 522.
4. «Teoría de Autómatas» (http://teoriaautomatas.blogspot.com.es/2012/02/turing.html) . Teoría de Autómatas, RAI
2012 Universidad Carlos III
5. Pérez, Iván (2005). Lenguaje y Compiladores. p. 137.
6. Paun, Gheorghe (2002). «II. Prerequisites» (http://dl.acm.org/citation.cfm?id=581822). Membrane Computing: An
Introduction (en inglés). Nueva York: Springer-Verlag. ISBN 3540436014. Consultado el 24 de junio de 2012. «The
parallelism with a computer, as we know computers in their general form, is clear: the code of a Turing machine is its
program, the strings to be recognized represent the input data, and the universal Turing machine is the computer
itself, with the instructions of the universal T
uring machine corresponding to the operating system of a computer
.»
Bibliografía
Feynman, Richard (1996). Conferencias sobre computación. Graficromo. ISBN 84-8432-444-3. Consultado el 11 de
julio de 2010.
Viso, Elisa (2008). Introducción a la teoría de la computación. ISBN 978-970-32-5415-6. Consultado el 11 de julio de
2010.
De Castro, Rodrigo (2004). Teoría de la computación : lenguajes, autómatas, gramáticas. Consultado el 15 de julio
de 2010.
«on computable numbers,with an application to the entscheidungsproblem» . Consultado el 15 de julio de 2010.
«Variantes de una Máquina de Turing». Archivado desde el original el 12 de julio de 2011. Consultado el 11 de julio
de 2010.
Enlaces externos
Wikimedia Commons alberga una galería multimedia sobreMáquina de Turing.
Sitio web de Stephen Wolfram
Demuestran que la máquina de Turing (2,3) es universal
Máquina de Turing construida sobre hardware
Video de máquina de Turing mecánica en YouTube
Obtenido de «https://es.wikipedia.org/w/index.php?title=Máquina_de_T
uring&oldid=107723334»
Se editó esta página por última vez el 12 may 2018 a las 03:25.
El texto está disponible bajo laLicencia Creative Commons Atribución Compartir Igual 3.0 ; pueden aplicarse cláusulas
adicionales. Al usar este sitio, usted acepta nuestrostérminos de uso y nuestra política de privacidad.
Wikipedia® es una marca registrada de laFundación Wikimedia, Inc., una organización sin ánimo de lucro.