Sei sulla pagina 1di 16

S.E.P. S.N.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 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.

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 halt
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 Σ. Sea 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 partir 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.

Potrebbero piacerti anche