S.E.P S.E. P.
S.N.E.S.T. S.N.E .S.T.
D.G.E.S.T. D.G.E .S.T.
INSTITUTO TECNOLÓGICO DEL ISTMO
Asignatura:
Lenguaje y autómatas 1 Profesor:
Méndez Mayoral Oliverio Alumno:
Davinson Hernández Meléndez N° de control:
11190307 Tema de investigación: “Unidad 3”
Maquina De Turing Especialidad:
Ing. En sistemas Computacionales Grupo:
6O HEROICA CIUDAD DE JUCHITAN DE ZARAGOZA, OAXACA, A 11 DE DICIEMBRE DE 2014.
Introducción
Se conocerá deforma formal que es una máquina de Turing, su historia y sus componentes; además de ello se detallara de forma explícita algunos conceptos sobre su desarrollo y formación. La máquina de Turing es un dispositivo capaz de establecer los problemas intratables, para conocer si es resolutorio o no. Tales confirmaciones se deben y se detallan de cada proceso u problemas matemáticos de la vida real. Se verán la clasificación de las maquinas de Turing y su explicación de cada una de ellas. Al igual que los AF la máquina de Turing utiliza estructuras, transiciones y formas de conformación para la representación de los modelos matemáticos, de situación en las que se desea conocer si estos tienen soluciones, ya que un computador no puede definir dicha confirmación, ya que es un proceso tardado.
Maquinas de Turing Historia
A finales del siglo XIX, el matemático David Hilbert se preguntó si era posible encontrar un algoritmo para determinar la verdad o falsedad de cualquier proposición matemática. En particular, se preguntaba si existiría un modo de determinar si cualquier fórmula del cálculo de predicados de primer orden, aplicado a enteros, es verdadera. Dado que el cálculo de predicados de primer orden sobre los enteros es suficientemente potente como para expresar frases como esta gramática es ambigua, si Hilbert hubiera tenido éxito, existirían algoritmos para dichos problemas, que ahora sabemos que no existen esta proposición se conoce con el nombre de problema de Hilbert. En 1963, Alan Mathinson Turing propuso la máquina que lleva su nombre como modelo de cualquier computación posible. Este modelo se parece más a una computadora que a un programa, aunque las verdaderas computadoras electrónicas, o incluso los electromecánicas, tardaron varios años en ser construidas. La máquina de Turing consta de una unidad de control, que pueda estar en cualquier estado tomado de un conjunto infinito. Hay una cinta dividida en cuadrados o casillas, y cada casilla puede contener un símbolo, tomado de otro conjunto infinito. Inicialmente, se sitúa en la cinta de entrada, que es una cadena de símbolos de longitud infinita, elegidos del alfabeto de entrada. El resto de las casillas de la cinta, que se extiende infinitamente hacia la derecha y hacia la izquierda, contiene, inicialmente, un símbolo denominado espacio en blanco. El espacio en blanco es un símbolo de cinta, pero no un símbolo de entrada, y puede haber también otros símbolos de cinta además de los símbolos de entrada y del espacio en blanco. Existe una cabeza de la cinta que siempre está situada sobre una de las casillas de la cinta. Se dice que la máquina de Turing está señalando dicha casilla. Al principio, la cabeza de la cinta se encuentra en la casilla de la entrada situada más a la izquierda. Un movimiento de la máquina de Turing es una función del estado de la unidad de control y del símbolo de la cinta al que señala la cabeza. Qué es una Máquina de Turing y cómo funciona
Una máquina de Turing es un dispositivo que transforma un INPUT en un OUTPUT después de algunos pasos. Tanto el INPUT como el OUPUT constan de números en código binario (ceros y unos). En su versión original la máquina de Turing consiste en una cinta infinitamente larga con unos y ceros que pasa a través de una caja. La caja es tan fina que solo el trozo de cinta que ocupa un bit (0 ó 1) está en su interior. La máquina tiene una serie de estados internos finitos que también se pueden numerar en binario. Para llevar a cabo algún algoritmo, la máquina se inicializa en algún estado interno arbitrario. A continuación, se pone en marcha y la máquina lee el bit que se encuentra en ese momento en su interior y ejecuta alguna operación con ese bit (lo cambia o no, dependiendo de su estado interno). Después se mueve hacia la derecha o hacia la izquierda, y vuelve a procesar el siguiente bit de la misma manera. Al final se para, dejando el resultado al lado izquierdo por ejemplo.
Definición formal
Una máquina de Turing con una sola cinta puede ser definida como una 7-tupla M={Q,Σ,Γ,s,b,F,δ}, donde: • Q es un conjunto finito de estados. • Σ es un conjunto finito de símbolos distinto del espacio en blanco, denominado alfabeto
de máquina o de entrada. • Γ es un conjunto finito de símbolos de cinta, denominado alfabeto de cinta. Σ ⊆Γ • s ∈ Q es el estado inicial. • b ∈ Γ es un símbolo denominado blanco, y es el único símbolo que se puede repetir un
número infinito de veces. • F⊆Q es el conjunto de estados finales de aceptación. • δ:Q x Γ → Q x Γ x{L,R} es una función parcial denominada función de transición, donde L
es un movimiento a la izquierda y R es el movimiento a la derecha. Existen en la literatura un abundante número de definiciones alternativas, pero todas ellas tienen el mismo poder computacional, por ejemplo se puede añadir el símbolo S como símbolo de "no movimiento" en un paso de cómputo. Funcionamiento
La máquina de Turing consta de un cabezal lector/escritor y una cinta infinita en la que el cabezal lee el contenido, borra el contenido anterior y escribe un nuevo valor. Las operaciones que se pueden realizar en esta máquina se limitan a: • Avanzar el cabezal lector/escritor hacia la derecha. • Avanzar el cabezal lector/escritor hacia la izquierda.
El cómputo es determinado a partir de una tabla de estados de la forma: (estado, valor) (nuevo estado, nuevo valor, dirección) Esta tabla toma como parámetros el estado actual de la máquina y el carácter leído de la cinta, dando la dirección para mover el cabezal, el nuevo estado de la máquina y el valor a ser escrito en la cinta.
Escritura en una MT
La memoria será la cinta la cual se divide en espacios de trabajo denominados celdas, donde se pueden escribir y leer símbolos. Inicialmente todas las celdas contienen un símbolo especial denominado “blanco”. Las instrucciones que determinan el funcionamiento de la máquina tienen la forma, “si estamos en el estado x leyendo la
posición y, donde hay escrito el símbolo z, entonces este símbolo debe ser reemplazado por este otro símbolo, y pasar a leer la celda siguiente, bien a la izquierda o bien a la derecha”. La máquina de Turing pue de 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.
Borrado en una MT
Por definición, al iniciar la operación de la MT, la cabeza lectora está posicionada en el carácter blanco a la izquierda de la palabra de entrada, el cual es el cuadro más a la izquierda de la cinta. Decimos que en la MT se llega al “final de un cálculo” cuando se alcanza un estado
especial llamado halt en el control finito, como resultado de una transición. Representaremos al halt por “h”. 1 Al llegar al halt, se detiene la operación de la MT, y se acepta la palabra de entrada. Así, en la MT no hay estados finales. En cierto sentido el h alt sería entonces el único estado final, solo que además detiene la ejecución. Cuando queremos que una palabra no sea aceptada, desde luego debemos evitar que la MT llegue al halt. Podemos asegurarnos de ello haciendo que la MT caiga en un ciclo infinito El lenguaje aceptado por una MT es simplemente el conjunto de palabras aceptadas por ella.
Representación gráfica de una MT
En forma similar a las demás máquinas abstractas, una Máquina de Turing puede representarse gráficamente a través de los llamados Diagramas finitos o de transición. Un diagrama de transición está formado por un conjunto de nodos que corresponden a los estados de la MT. La transición δ(q,a)=(p,b,D)se representa así:
Según esto, tenemos para un diagrama de transición los siguientes elementos:
Estados, representados por vértices: q, p El estado inicial de la máquina es aquel representado por una arista sin origen. El estado final o de aceptación está representado por una doble arista. Transición entre estados, representada por una arista dirigida: (a/b, D): el primer término (a) indica el símbolo leído en el cabezal; el segundo término (b) indica el símbolo que el cabezal va a escribir. El último término es la indicación del siguiente movimiento del cabezal: derecha (D o R, por la palabra inglesa Right) o izquierda (I o L, de Left).
Para explicar el reconocimiento de la cadena por una MT se presenta el siguiente ejemplo. Sea M una MT con la siguiente descripción M=(Q,Σ,Γ,q_0,q_1,B,δ), donde Q={q_0,q_1 }, Σ={a,b}, y B indica el espacio en blanco.
Sus transiciones están dadas por:
Esta MT reconoce a* sobre el alfabeto Σ. Se a la cadena w = aaa. (1) El cabezal, representado con una flecha roja, lee el primer símbolo “a”. La transición dice que al estar en q0 y leer una “a”, se sobrescribe “a” y el cabezal se mueve a la
derecha:
(2) A continuación, el estado sigue siendo q0, y el cabezal lee el segundo símbolo “a”. Nuevamente, queda en q0, sobrescribe una “a”, y el cabezal se mueve a la derecha.
(3) El proceso se repite para el último símbolo “a” (4) En este instante, el cabezal lee un espacio en blanco, B. Según las transiciones de la MT, en el estado q0 un espacio B cambia el estado de la máquina a q1, mantiene B y mueve el cabezal a la derecha. El estado q1 es final de aceptación, por lo que la cadena es aceptada.
Clasificación de las Máquinas de Turing
A continuación se presentan los diversos tipos de Máquinas de Turing, que surgen de la necesidad de flexibilidad para la solución de problemas. 1) Máquina de Turing con Directiva de Permanecer
Recuérdese que la máquina de Turing sencilla sitúa la cabeza de lectura/escritura sobre el primer B que haya a la izquierda de la posición actual. Para hacerlo, busca fuera de la celda actual y retrocede. Esto es debido a la definición original que requiere que por cada transición se mueva la cabeza de la cinta. La función de transición estaba definida como: d: Q x G ® Q x G x {R, L} y puede ser modificada como: d: Q x G ® Q x G x {R, L, S} donde S significa "permanecer", es decir no mover la cabeza de lectura/escritura.
Por tanto d (q, s)= (p, s ’, S) significa que se pasa del estado q al p, se escribe s’ en la
celda actual y la cabeza se queda sobre la celda actual. 2) Máquina de Turing Multipista
Es aquella mediante la cual cada celda de la cinta se divide en subceldas. Cada subcelda es capaz de contener símbolos de la cinta. La cinta tiene cada celda subdividida en tres subceldas. 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. En el ejemplo anterior, las celdas de la cinta contienen (B, a, a), (b, a, a) y (b, b, B). Por tanto, los movimientos que realice está máquina dependerán de su estado actual y de la n-tupla que represente el contenido de la celda actual.
Una máquina de Turing multipista no tiene más potencia que la máquina de Turing original. Sin embargo, hace que sea más fácil la construcción de máquinas de Turing que resuelvan ciertos problemas. Ejemplo: Para una máquina de Turing que sume dos números binarios. Primero se
construye una máquina de Turing de tres pistas. La entrada serán dos números binarios que ocupen las dos pistas superiores de la cinta. Suponiendo que sus dígitos se alinean por la derecha, que sus representaciones binarias son de la misma longitud (lo que se puede conseguir rellenándolas con tantos ceros como sea necesario) y que la cabeza de lectura/escritura se sitúa sobre la celda del extremo izquierdo de la cadena. Por tanto, si tuvieran que sumar 101 y 10, la cinta debería contener
La máquina de Turing realizará la suma en la tercera pista. Por tanto, el alfabeto de cinta estará formado por las ternas: (B, B, B) (1, 1, B) (1, 1, 0) (1, 1, 1) (0, 0, B) (0, 0, 0) (0, 0, 1) (B, B, 1)
(0, 1, B) (0, 1, 0) (0, 1, 1) (1, 0, B) (1, 0, 0) (1, 0, 1) Esta máquina de Turing buscará primero hacia la derecha el extremo derecho de los números que van a ser sumados. Entonces sumará pares de dígitos, desde la derecha hacia la izquierda, llevando la cuenta de los resultados que se obtengan y sumando a quienes corresponda. Por tanto, se obtiene (suponiendo que q1 es el estado inicial): d (q1, s ) = (q1, s , R), si s ¹ (B, B, B) ó (q2, s , L), si s =(B, B, B) d (q2, (0, 0, B)) = (q2, (0, 0, 0), L) d (q3, (0, 0, B)) = (q2, (0, 0, 1), L) d (q2, (0, 1, B)) = (q2, (0, 1, 1), L) d (q3, (0, 1, B)) = (q3, (0, 1, 0), L) d (q2, (1, 0, B)) = (q2, (1, 0, 1), L) d (q3, (1, 0, B)) = (q3, (1, 0, 0), L) d (q2, (1, 1, B)) = (q3, (1, 1, 0), L) d (q3, (1, 1, B)) = (q3, (1, 1, 1), L) d (q2, (B, B, B)) = (q4, (B, B, B), S) d (q3, (B, B, B)) = (q4, (B, B, B), S) Obsérvese que se necesita que esta máquina de Turing tenga la posibilidad de no moverse. 3) Máquina de Turing de Cinta infinita en una Dirección
Máquina de Turing que usa una cinta que se extiende infinitamente en una única dirección. Generalmente, se tiene una cinta que se extiende infinitamente hacia la derecha. No está permitido realizar ningún movimiento hacia la izquierda a p artir de la celda del extremo izquierdo. Desde luego, cualquier máquina de Turing de esta forma puede ser simulada por una de las que responden a la definición original. Para cada computación, simplemente se marca una de las celdas de la cinta infinita por los dos lados, como la celda que se encuentra en el límite izquierdo. 4) Máquina de Turing en Dos Direcciones
Una máquina de Turing con una cinta infinita en un sentido puede simular una máquina de Turing con la cinta infinita en los dos sentidos pero con dos pistas. Sea M una máquina de Turing con una cinta infinita en los dos sentidos. La máquina de Turing M’, que tiene una
cinta infinita en un sentido, puede simular a M si tiene una cinta con dos pistas. La cinta superior contiene la información correspondiente a la parte derecha de la cinta M, a partir de un punto de referencia dado. La pista inferior contiene la parte izquierda de la cinta M (en orden inverso).
5) Máquina de Turing Multicinta
La máquina de Turing Multicinta tiene varias cintas, cada una de las cuales tiene su propia cabeza de lectura/escritura. Las cabezas de lectura/escritura se controlan independientemente (es decir, al mismo tiempo, no tienen que moverse en la misma dirección, ni realizar el mismo número de movimientos, ni incluso, hacer nada a la vez). En un solo movimiento, esta máquina de Turing: 1. Cambia de estado dependiendo del estado actual y del contenido de las celdas de todas las cintas, que están analizando actualmente las cabezas de lectura/escritura. 2. Escriben un nuevo símbolo en cada una de las celdas barridas por sus cabezas de lectura/escritura. 3. Mueve cada una de sus cabezas hacia la izquierda o hacia la derecha (de forma independiente al resto de las cabezas). Por tanto, la función de transición para una máquina de Turing con n cintas, es de la forma d : Q x G n ® Q x G n x {R, L} n donde una transición de la forma d (q, (s 1, s 2,…, s n)) = (p,(t 1, t 2, …, t n), (X1, X2, …, Xn)) significa que cambia del estado q a p, reemplaza s i
por t i en la cinta i y mueve la cabeza de la cinta i en la dirección Xi. 6) Máquina de Turing Muldimensional
La máquina de Turing multidimensional es aquella que permite que la cinta tenga muchas dimensiones. Por ejemplo, una cinta de dos dimensiones que se extienda hacia abajo y hacia arriba, al igual que hacia la derecha y hacia la izquierda. Dependiendo del estado actual de la máquina de Turing y del símbolo analizado, cambia de estado, escribe un símbolo en la celda actual y se mueve a la izquierda, al derecha, hacia arriaba o hacia abajo. Por tanto, la función de transición para esta máquina de Turing será de la forma: d : Q x G ® Q x G x {R, L, U, D} Una máquina de Turing multidimensional simula una máquina de Turing estándar. Simplemente realizando todas sus computaciones en una única dimensión. Una máquina de Turing estándar también puede simular una máquina de Turing multidimensional y, por tanto, la complejidad y la flexibilidad adicional que se debe a la múltiple dimensión, no es una capacidad real. Para simular una máquina de Turing de dos dimensiones mediante una máquina de Turing estándar, primero se asociara una dirección a todas las celdas de la cinta. Una forma de hacerlo es fijar, de forma arbitraria, un lugar en la cinta a partir del cual se asignarán las coordenadas a las celdas de la misma forma que se realiza en un plano de coordenadas. Entonces, se usara una cinta de dos pistas para simular la máquina de Turing. Una pista se encargará de almacenar el contenido de las celdas y la otra las coordenadas, utilizando un símbolo (*) para separar los valores de las coordenadas. Para simular un movimiento
de una máquina de Turing de dos dimensiones, está máquina calcula la dirección de la celda a la que se moverá la máquina de Turing dos dimensiones. Entonces, localiza la pista inferior la celda con dicha dirección y cambia el contenido de la celda en la pista superior. 7) Máquina de Turing No determinista .
La máquina de Turing No determinista es aquella que para un estado actual y el símbolo actual de la cinta, puede haber un número finito de movimientos a elegir. Por lo tanto, la regla de transición d de dicha máquina, satisface d (q, s ) Í Q x G x {R, L} Por ejemplo, si la máquina de Turing tiene una transición d (q1, a) = {(q1, b, R), (q2, a, L)} entonces los movimientos abbq1ab abbbq1b y abbq1ab abq2bab son posibles. Ya que cualquier máquina de Turing determinista es también no determinista, es lógico que una máquina de Turing determinista se pueda simular mediante una no determinista. También una máquina de Turing determinista puede simular una no determinista. Por tanto, no se gana ninguna potencia adicional a causa del no determinismo. Lenguajes aceptados por una MT
De acuerdo a la clasificación de los lenguajes formales realizada por el norteamericano Avram Chomsky, la Máquina de Turing acepta los lenguajes más generales, o tipo cero (0), también llamados lenguajes recursivamente enumerables. Un lenguaje recursivamente enumerable es un lenguaje formal para el cual existe una máquina de Turing que acepta y se detiene con cualquier cadena del lenguaje, pero que puede parar y rechazar, o bien iterar indefinidamente, con una cadena que no pertenece al lenguaje. Todos los lenguajes, regulares, independientes de contexto, dependientes de contexto y recursivos son recursivamente enumerables. Una cadena ω ∈ A^*, es aceptada por una MT, si comienza en el estado e0, con la cabeza de lectura/escritura en el símbolo más a la izquierda, luego de leer toda la cadena ω, llega
a un estado e_f ∈F. El lenguaje aceptado por MT, es el conjunto de todas las cadenas que son aceptadas por MT: L(MT)={ω / e_0 ω
⊢*α_1
e_f α_2 y e_f ∈F y α_1,α_1 ∈C^* y ω∈ A^* }
Tenemos por ejemplo una MT que reconoce el lenguaje {0^n 1^n:n≥1}. Las transiciones de
la máquina se representan como sigue:
Se evalúa la cadena w = 1100, arrojando el siguiente resultado:
Otras cadenas también aceptadas por esta MT son 11110000, 10, 11111110000000. Construcción modular de las MT
El objetivo de la creación modular de una maquina de Turing es poder desarrollar máquinas complejas a partir de bloques elementales, a partir de maquinas más pequeñas, mediante diagramas de transiciones. La construcción de máquinas de Turing se lleva a cabo mediante los diagramas de transición y combinarlos de manera parecida a lo que se realiza en la formación de la unión y concatenación de los autómatas finitos. Pasos para la construcción de una máquina de Turing: 1. Elimine las características de inicio de los estados iníciales de las maquinas, excepto la de aquel donde iniciara la maquina compuesta. 2. Elimine las características de detención de los estados de parada de todas la maquinas e introduzca un nuevo estado de parada que nos se encuentre en ninguno de los diagramas que se combinan. 3. Para cada uno de los antiguos estados de parada p y cada x en y.
Ejemplificación de dicha construcción.
Los diagramas compuestos para la construcción modular de una máquina de Turing: Son aquellos en los que cada uno de los bloques de construcción se representa como un nodo, con flechas entre dichos nodos para indicar las transiciones entre bloques. Se puede combinar dos máquinas de Turing permitiendo que compartan la misma cinta y, que cuando una termine su ejecución, la otra empiece. El contenido de la cinta cuando comienza la ejecución de la segunda máquina de Turing, está formado por todo lo que dejó la primera máquina de Turing, y la cabeza de l/e de la segunda se situará, al comienzo de la ejecución, sobre la celda de la cinta sobre la que terminó la primera. Un sistema Turing completo es aquel que puede simular el comportamiento de una máquina de Turing. Es evidente que salvando los problemas de memoria, los ordenadores modernos y los lenguajes de programación de uso general, son sistemas de Turing completos. También es evidente, que con independencia de su forma concreta, cualquier dispositivo que se comporte como un sistema de Turing completo, puede en principio ejecutar cualquier cálculo que realice cualquier computador. Nota: Observe que la anterior afirmación no menciona para nada la posible dificultad de escribir el programa o del tiempo que pueda emplear en realizar el cálculo (cualquier cálculo que pueda hacer un ordenador puede teóricamente efectuarse con papel y lápiz). Una máquina de Turing es un autómata que se mueve sobre una secuencia lineal de datos. En cada instante la máquina puede leer un solo dato de la secuencia (generalmente un carácter) y realiza ciertas acciones en base a una tabla que tiene en cuenta su "estado" actual (interno) y el último dato leído. Entre las acciones está la posibilidad de escribir nuevos datos en la secuencia; recorrer la secuencia en ambos sentidos y cambiar de "estado" dentro de un conjunto finito de estados posibles.
Maquinas de Turing Compuesta
Funcionamiento de la MT Multicinta
Tal como se describió en la sección anterior sobre la clasificación de las MT, una máquina multicintas posee n cintas diferentes, y n cabezas de L/E. La función de transición para máquinas de Turing con n cintas es: δ:QxΓ^n→QxΓ^n x〖{D,I,N}〗^n
Para entender su funcionamiento, se presentan dos ejemplos a continuación: Ejemplo 1
Reconocimiento del lenguaje {anbn n³ 1}. Éste es bastante laborioso en una máquina de Turing con una única cinta. Es mucho más fácil realizarlo con una máquina de Turing de dos cintas. Suponiendo que, inicialmente, coloca la cadena a analizar en la cinta 1 y que q1 es el estado inicial. Si la cabeza de lectura/escritura de la cinta 1 está situada inicialmente sobre el carácter del extremo izquierdo de la cadena, las cuatro posiciones siguientes son fundamentales para el reconocimiento (cualquier otra transición sería para cadenas mal formadas y se puede suponer que llega a un estado que no es de aceptación):
d (q1, (a, B)) =(q1, (a, a), (R, R)) d (q1, (b, B)) =( q2, (b, B), (S, L)) d ( q2, (b, a)) =( q2, (b, a), (R, L)) d ( q2, (B, B)) =( q3, (B, B), (R, L)) Aunque esta máquina de Turing Multicinta parece bastante distinta y posiblemente más potente que la máquina de Turing definida originalmente, las dos son equivalentes en el sentido de que cada una de ellas puede ser simulada por la otra. Ejemplo 2
Sea una MT de dos cintas, que reconoce el lenguaje L={a^i b^i c^i:i≥0}
Se coloca la cadena de entrada en la primera cinta, la idea es copiar en la segunda cinta una X por cada “a” y cuando encuentre la primera “b”, se detiene en la primera cinta, luego
se avanza a la derecha en la primera cinta y se avanza a la izquierda en la segunda cinta, cuando encuentra la primera “c” las dos cintas avanzan hacia la derecha. La función de transición es la siguiente, sea T = {q3}. δ(q0, (a,B)) = (q0, (a,X), (D,D)) δ(q0, (b,B)) = (q1, (b,B), (N,D)) δ(q1, (b,B)) = (q1, (b,X), (D, I)) δ(q1, (c,B)) = (q2, (c,B), (N,D)) δ(q2, (c,X)) = (q2, (c,X), (D,D)) δ(q2, (B,B)) = (q3, (B,B), (D,D))
Se finaliza en el estado q3, definido como estado de aceptación.
Conclusiones • Una Máquina de Turing, o MT, se considerar una cinta infinita dividida en casillas, cada
una de las cuales contiene un símbolo, y sobre la cual actúa un dispositivo que puede adoptar diversos estados, y que lee un símbolo de la casilla sobre la que está situado. En función de dicho símbolo y del estado actual, se pueden realizar tres acciones siguientes: pasa a un nuevo estado, imprime un símbolo en lugar del que acaba de leer y se desplaza a una posición hacia la izquierda, derecha, o se detiene. • Existen diversas clasificaciones de las Máquinas de Turing, atendiendo a los estados
reconocidos, tipo de cinta, cantidad o división de dichas cintas: MT con directiva de permanecer, MT con cinta infinita en una dirección, MT en dos direcciones, MT multicinta, MT Multidimensional, MT No determinista. • Las MT, de acuerdo a la clasificación de los lenguajes formales de Chomsky, acepta los
lenguajes tipo cero (0), llamados lenguajes recursivamente enumerables. • La creación modular de una maquina de Turing permite desarrollar máquinas complejas
a partir de bloques elementales, mediante diagramas de transiciones. La construcción de máquinas de Turing se lleva a cabo mediante dichos diagramas de transición, y sus combinaciones. • Las MT han sido aplicadas en el desarrollo de la teoría computacional y en las llamadas
máquinas oráculo, generadores de funciones, calculadoras de funciones, y generadores de lenguaje.