Tema 6a Maquina Turing Automata Tipo 0
-
Upload
enrique-pronesti-freire -
Category
Documents
-
view
218 -
download
0
description
Transcript of Tema 6a Maquina Turing Automata Tipo 0
![Page 1: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/1.jpg)
Introdución
Una máquina de Turing es un dispositivo que manipula símbolos sobre una cinta de
acuerdo a una tabla de reglas.
A pesar de su simplicidad, una máquina de Turing puede ser adaptada para simular la
lógica de cualquier algoritmo de computadora.
Fue descripta por Alan Turing como una “máquina automática” en 1936 en la
revista Proceedings of the London Mathematical Society.
La máquina de Turing no está diseñada como una tecnología de computación práctica,
sino como un dispositivo hipotético que representa una máquina de computación. Las
máquinas de Turing ayudan a los científicos a entender los límites del cálculo mecánico.
Maquina de Turing
Autómatas y Lenguajes
![Page 2: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/2.jpg)
Turing (1948, Máquinas inteligentes) refiriéndose a su publicación de 1936, escribió que
la máquina de Turing, 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
símbolo en la cinta puede tener finalmente una oportunidad. (Turing 1948, p. 61)
Maquina de Turing
Autómatas y Lenguajes
![Page 3: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/3.jpg)
Definición: una maquina de Turing o autómata de tipo 0 es una construcción lógica, que
se puede representar intuitivamente como un dispositivo mecánico.
Esquema de una Maquina de Turing.
Una cinta infinita dividida en celdas, con un cabezal de lectura/escritura que se mueve
sobre la cinta avanzando de a una celda por vez. (ver imagen diapositiva 4)
Un movimiento de la máquina de Turing depende de:
a. Estado en el que se encuentra parada la maquina de Turing
b. El símbolo explorado en la cinta
El resultado puede ser:
a. Cambio de estado
b. Reemplaza el símbolo leído en la cinta por otro nuevo
c. Se mueve el cabezal a izquierda, derecha o se para
Maquina de Turing
Autómatas y Lenguajes
![Page 4: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/4.jpg)
Maquina de Turing
Autómatas y Lenguajes
Movimiento a izquierda
1 0 1 0 1 ….. …..
Cabezal Lectura/Escritura
Cinta
Movimiento a derecha
Celda
Notación Formal
MT = (Q, , , , q0, B, F)
Q = {conjunto de estados}
= {sub conjunto de símbolos de entrada, no incluye el blanco}
= {conjunto de símbolos permitidos en la cinta}
es la función del siguiente movimiento
B es el símbolo blanco,
q0 es el estado inicial, Q
F Q, es el subconjunto de estados finales
![Page 5: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/5.jpg)
Maquina de Turing
Autómatas y Lenguajes
L(MT)
El lenguaje aceptado o reconocido por una maquina de Turing, que denotaremos como
L(MT), es el conjunto de palabras formadas por el alfabeto *, que hace que la maquina
de Turing se pare al alcanzar un estado final.
Una maquina de Turing reconoce un lenguaje si es capaz de reconocer todas las sentencias
de dicho lenguaje.
![Page 6: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/6.jpg)
Maquina de Turing
Autómatas y Lenguajes
Ejemplo
Diseñar una maquina de Turing que acepte el lenguaje L={0n1n / n>0}
Cadenas de ejemplo: 01, 0011,000111, ….
Tabla de transición &
& 0 1 #
Q0 #,<,q1
Q1 #,-,q2
Q2 #,<,q3
Q3 0,<,q4 1,<,q3
Q4 0,<,q4 #,>,q5
Q5 #,-,q6
Q6 #,>,q7
Q7 0,>,q8 #,-,h
Q8 0,>,q8 1,>,q9
Q9 1,>,q9 #,<,q1
Cinta
0 0 0 1 1 # # 1 ... ...
&(0,#,#)=(<,1)
&(1,1,#)=(-,2)
&(2,#,#)=(<,3)
&(3,1,1)=(<,3)
&(3,0,0)=(<,4)
&(7,#,#)=(-,h) Aceptación
![Page 7: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/7.jpg)
Maquina de Turing
Autómatas y Lenguajes
La M.T. que acepta el lenguaje L={0n1n / n>0}
&(0,#,#)=(<,1) &(estado 0, lee #, escribe #) = (mueve izq., pasa estado 1)
&(1,1,#)=(-,2) &(estado 1, lee 1, escribe #) = (no se mueve, pasa estado 2)
&(2,#,#)=(<,3) &(estado 2, lee #, escribe #) = (mueve izq., pasa estado 3)
&(3,1,1)=(<,3)
&(3,0,0)=(<,4)
&(4,0,0)=(<,4)
&(4,#,#)=(>,5)
&(5,0,#)=(-,6)
&(6,#,#)=(>,7)
&(7,0,0)=(>,8)
&(8,0,0)=(>,8)
&(8,1,1)=(>,9)
&(9,1,1)=(>,9)
&(9,#,#)=(<,1)
&(7,#,#)=(-,h)
&(estado corriente, símbolo lee cinta, símbolo escribe cinta) = (dirección, estado nuevo)
![Page 8: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/8.jpg)
0,< 1,<
q0 q1
#,< q2
1,# q3
#,< q4
0,<
q5
#,>
q6
0,#
q7
#,>
q8 0,> q9
1,>
0,> 1,>
#,<
h #,-
Maquina de Turing
Autómatas y Lenguajes
Representación M.T. por grafos o diagrama de estados
Cinta
0 0 0 1 1 # # 1 ... ...
![Page 9: Tema 6a Maquina Turing Automata Tipo 0](https://reader035.fdocuments.es/reader035/viewer/2022081808/5695d0371a28ab9b02917eb0/html5/thumbnails/9.jpg)
presentación correspondiente a:
Cap. 12 – Maquina de Turing
Apunte – Juan Manuel Cueva Lovelle. Univ. Oviedo
Maquina de Turing
Autómatas y Lenguajes