Upload
waralivt
View
298
Download
0
Embed Size (px)
Citation preview
Universidad Fermín Toro Vice-rectorado Académico
Facultad de Ingeniería Escuela de Computación
MAQUINAS DE TURING
Autor: Wilcar A. Rojas
C.I: 13.313.297
Cabudare, Julio 2013
Construcción modular de las Máquinas de Turing
Las máquinas de Turing se pueden representar mediante grafos particulares,
también llamados diagramas de estados finitos, de la siguiente manera:
Esta Máquina de Turing está definido sobre el alfabeto Σ={a,b,c}, posee el
conjunto de estados Q={qo,q1,q2,q3,q4,q5,q6}, con las transiciones que se
pueden ver. Su estado inicial es q1 y el estado final es q2, el lenguaje de
salida
={X,Y,Z,B} siendo B el símbolo denominado Blanco . Esta Máquina reconoce
la expresión regular de la forma {a^n b^n c^n,n>=0} .
Los estados se representan como vértices, etiquetados con su nombre
en el interior.
Una transición desde un estado a otro, se representa mediante una
arista dirigida que une a estos vértices, y esta rotulada por símbolo
que lee el cabezal/símbolo que escribirá el cabezal, movimiento del
cabezal
El estado inicial se caracteriza por tener una arista que llega a él,
proveniente de ningún otro vértice.
El o los estados finales se representan mediante vértices que están
encerrados a su vez por otra circunferencia
Descripción instantánea (DI).
Secuencia de la forma α1qα2 donde α1,α2 y . Describe la situación de una
MT La cinta contiene la cadena α1α2 seguida de infinitos blancos. El cabezal
señala el primer símbolo de α2. ejemplo:
Para la MT=({p,q},{0,1},{0,1,x}, δ,p,Δ,{q})
con las transiciones
δ(p,1)=(p,x,D)
δ(p,0)=(p,0,D)
δ(p,Δ)=(q,Δ,D)
Realizaremos la DI para la cinta 1011.
p1011ΔΔ.. → xp011ΔΔ.. → x0p11ΔΔ.. → x0xp1ΔΔ.. → x0xxpΔΔ.. →
x0xxqΔΔ..
Ejemplo
Definimos una máquina de Turing sobre el alfabeto {0,1}, donde 0
representa el símbolo blanco. La máquina comenzará su proceso situada
sobre un símbolo "1" de una serie. La máquina de Turing copiará el número
de símbolos "1" que encuentre hasta el primer blanco detrás de dicho
símbolo blanco. Es decir, situada sobre el 1 situado en el extremo izquierdo,
doblará el número de símbolos 1, con un 0 en medio. Así, si tenemos la
entrada "111" devolverá "1110111", con "1111" devolverá "111101111", y
sucesivamente.
El conjunto de estados es y el estado inicial es . La tabla que describe la
función de transición es la siguiente:
El funcionamiento de una computación de esta máquina se puede mostrar
con el siguiente ejemplo (en negrita se resalta la posición de la cabeza
lectora/escritora):
La máquina realiza su proceso por medio de un bucle, en el estado inicial
s1, reemplaza el primer 1 con un 0, y pasa al estado s2, con el que avanza
hacia la derecha, saltando los símbolos 1 hasta un 0 (que debe existir),
cuando lo encuentra pasa al estado s3, con este estado avanza saltando los
1 hasta encontrar otro 0 (la primera vez no habría ningún 1).
Una vez en el extremo derecho, añade un 1. Después comienza el proceso
de retorno; con s4 vuelve a la izquierda saltando los 1, cuando encuentra un
0 (en el medio de la secuencia), pasa a s5 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 su
cómputo.