Вы находитесь на странице: 1из 25

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

FACULTAD DE CIENCIAS BASICAS TECNOLOGÍA E INGENIERÍA

AUTOMATAS Y LENGUAJES FORMALES

UNIDAD 3 FASE 4 – DEBATIR Y DESARROLLAR LOS EJERCICIOS


PLANTEADOS SOBRE MAQUINA DE TURING

TUTOR:
CESAR JIMENEZ

PRESENTADO POR:
Oscar Javier Delgado – Cód. 80217860
Javier Alexander Anaya Moreno - Cód. 80188959
Alejandro Tirano Bernate- Cod 80243722

301405_14

INGENIERIA DE SISTEMAS
CEAD JOSE ACEVEDO Y GOMEZ
BOGOTA D.C NOVIEMBRE DE 2018
DESARROLLO DE LA ACTIVIDAD

Actividad 1: Máquinas de Turing.

EJERCICIO A
TRABAJAR

Caracterizació La máquina de Turing consta de un cabezal


n de la lector/escritor y una cinta infinita en la que el
máquina de cabezal lee el contenido, borra el contenido anterior
turing 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.
Procedimiento
de paso a Gráfico
paso del
recorrido de
una cadena

1 1 0 0 0 1 1 0 0 1

- Paso 1: Inicialmente, la cabeza señala el primer 1.


Lo cambia por 1 y se desplaza a la derecha en busca
del primer 1 para cambiarlo por 1:

1 1 0 0 0 1 1 0 0 1

δ(q0,1) = (q0,1, R)
δ(q0,0) = (q0,0, R)

1 1 0 0 0 1 1 0 0 1
- Paso 2: Vuelve y hace la lectura del 1 y pasa a la
siguiente casilla que es el 0

1 1 0 0 0 1 1 0 0 1

Es decir, mientras exista un estado en 1’s y 0’s, se


mantiene en el estado q0, al existir un espacio se
cambia al estado q1.
- Paso 3: una vez termine la lectura del 0 continua a
la siguiente casilla del 0

1 1 0 0 0 1 1 0 0 1

δ(q0, )=(q1, ,L)


- Paso 4: Continua la siguiente casilla una vez
termina el 0.

1 1 0 0 0 1 1 0 0 1

- Paso 5: Continua la siguiente casilla una vez


termina el 0, pasa a la siguiente casilla que es el 1.

1 1 0 0 0 1 1 0 0 1

- Paso 6: Continua la siguiente casilla una vez


termina el 1, pasa a la siguiente casilla que es el 1.

1 1 0 0 0 1 1 0 0 1

- Paso 7: Continua la siguiente casilla una vez


termina el 1, pasa a la siguiente casilla que es el 1.

1 1 0 0 0 1 1 0 0 1

- Paso 8: Continua la siguiente casilla una vez


termina el 0, pasa a la siguiente casilla que es el 0.

1 1 0 0 0 1 1 0 0 1

- Paso 9: Continua la siguiente casilla una vez


termina el 0, pasa a la siguiente casilla que es el 1.
1 1 0 0 0 1 1 0 0 1

- Paso 10: Continua la siguiente casilla una vez


termina el 1, al encontrar el espacio en blanco pasa
al siguiente estado q1:

1 1 0 0 0 1 1 0 0 1

- Paso 11: Continua la siguiente casilla una vez


termina realice la lectura, pasa a la siguiente casilla
hacia el lado izquierdo.

1 1 0 0 0 1 1 0 0 1

- Paso 12: Continua la siguiente casilla una vez


termina realice la lectura del 1 pasa al siguiente
estado q2 y pasa a la casilla vacía.

1 1 0 0 0 1 1 0 0 1

- Paso 13: en el estado q2 finaliza el proceso.


Practicar y
verificar lo
aprendido
EJERCICIO A Ejercicio 5
TRABAJAR

Caracterizació Máquina de Turing


n de la MT= (K, ∑, T, δ , S, B, F)
máquina de K= {q0, q1, q2, q4}
turing ∑= {0, 1} Alfabeto de entrada
T = {□, 0, 1} Alfabeto de la pila
S = {q0} Estado inicial
F = {q4} Subconjunto de estados finales
δ : {q0, q1}x{0, 1, □ }--->{q0, q1}x{□,0,1}x{R, L} Función de transición
Diferencias y similitudes de las máquinas reconocedoras y traductoras.

Reconocedora Traductora
Reconoce o acepta un lenguaje Modifica el contenido de la
L cinta realizando una cierta
función.
Acepta el lenguaje L si dada una Si la entrada está bien formada,
entrada en la cinta la máquina debe terminar en un estado
siempre se detiene y lo hace en final.
un estado final si la entrada
pertenece al lenguaje
Si la entrada no está bien
formada, debe terminar en un
estado no final.

Procedimiento Paso 1. Entrada 00011110000


de paso a paso
El lector se ubica en el primer símbolo del código.
del recorrido
de una cadena     0 0 0 1 1 1 1 0 0 0 0    

Paso 1. Entrada 00011110000


Paso 2. Entra el 0 y la función de transición sigue en 0 y corre una
posición a la derecha

    0 0 0 1 1 1 1 0 0 0 0    

Paso 3. Entra el 0 y la función de transición sigue en 0 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 4. entra el 1 y la función de transición lo cambia por 1

y corre una posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 5. entra el 1 y la función de transición lo cambia por 1 y corre una


posición a la derecha.
    0 0 0 1 1 1 1 0 0 0 0    

Paso 6. entra el 1 y la función de transición lo cambia por 1 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 7. entra el 1 y la función de transición lo cambia por 1 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 8. Entra el 0 y la función de transición lo cambia por 1 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    
Paso 9. Entra el 0 y la función de transición sigue en 0 y corre una
posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 10. Entra el 0 y la función de transición sigue en 0 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 11. Entra el 0 y la función de transición sigue en 0 y corre una


posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 0    
Paso 12. Pasa al estado q0 entra el símbolo [ ] y la función de
transición lo cambia por [ ] y corre una posición a la izquierda.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 13. Pasa al estado q1 entra el 0 y la función de transición lo


cambia por 0 y corre una posición a la izquierda.

    0 0 0 1 1 1 1 0 0 0 0    

Paso 14. Pasa al estado q2 entra el 0 y la función de transición lo


cambia por 0 y corre una posición a la izquierda

    0 0 0 1 1 1 1 0 0 0 1    
Paso 15. En el estado q2 entra el 0 y la función de transición lo cambia
por 0 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 16. En el estado q2 entra el 0 y la función de transición lo cambia


por 0 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 17. En el estado q2 entra el 1 y la función de transición lo cambia


por 1 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    
Paso 18. En el estado q2 entra el 1 y la función de transición lo cambia
por 1 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 19. En el estado q2 entra el 1 y la función de transición lo cambia


por 1 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 20. En el estado q2 entra el 1 y la función de transición lo cambia


por 1 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    
Paso 21. En el estado q2 entra el 0 y la función de transición lo cambia
por 0 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 22. En el estado q2 entra el 0 y la función de transición lo cambia


por 0 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 23. En el estado q2 entra el 0 y la función de transición lo cambia


por 0 y corre una posición izquierda.

    0 0 0 1 1 1 1 0 0 0 1    
Paso 24. En el estado q0 entra el símbolo [ ] y la función de transición
lo cambia por y corre una posición a la izquierda.

    0 0 0 1 1 1 1 0 0 0 1    

Paso 25. Q4. entra el [ ] y la función de transición lo cambia por un 0


y corre una posición a la derecha.

    0 0 0 1 1 1 1 0 0 0 1    

Y finaliza la máquina.

Practicar y
verificar lo
aprendido
FASE COLABORATIVA

Actividad 2: Teniendo en cuenta la siguiente tabla de transición de una máquina


de Mealy, realice:

f Entrada G Entrada
Estado 0 1 Estado 0 1
q0 q1 q0 q0 1 0
q1 q3 q0 q1 1 1
q2 q1 q2 q2 0 1
q3 q2 q1 q3 0 1

Identifique los componentes de la Máquina (descríbala).


Los componentes de la máquina de Mealy son 6-tupla: M = (Q, Σ, Г, q0, δ, β)
En donde:
Q = 4 Estados {q0, q1, q2, q3}
Σ =Alfabeto de entrada {0,1}
Г = Alfabeto de salida {0,1}
q0= Estado inicial que pertenece a Q
δ = Función de transición
β = Función de salida

Diséñela en diagrama (Máquina de Mealy).


Recorra la máquina con al menos una cadena válida explicando lo sucedido
tanto en la cinta como en la secuencia de entrada.
A continuación, observaremos el recorrido paso a paso de la cadena 1001001011
en donde probaremos que nuestra maquina la aceptara como válida. En la siguiente
imagen nos encontramos con nuestro maquina en estado inicial, eso quiere decir sin
haber recibido el primer carácter de la cadena.

Al ingresar nuestro primer símbolo del alfabeto en el estado q 0 el cual es 1, la


Maquina valida la información y da un símbolo del alfabeto de salida que para este
caso es 0, el cual se ve reflejado en la cinta de transición y nos quedamos en el
mismo estado q0, como lo indica la transición.
Al ingresar nuestro símbolo 0, la maquina vuelve a validar la condición y en esta
ocasión nos trasladamos al estado q 1 y nos genera una respuesta de salida con el
símbolo 1, el cual se ve reflejado en la cinta de transición.

Seguimos ingresando más símbolos de nuestra cadena, ahora se ingresa


nuevamente otro 0 el cual nos permite pasar al estado q 3 y con un símbolo de salida
1; el cual se almacena en la cinta de validación.

Seguidamente se ingresa el símbolo 1 el cual es validado y nos desplazamos al


estado q1 como lo indica la transición y nos genera un símbolo de salida de 1.
Ingresamos otro 0 de nuestra cadena a validar y esto nos permite retornar al estado
q3 tal cual como lo indica el proceso de transición de nuestro diagrama, retornando
un valor de salida de 1 el cual se observa en la cinta

Luego a nuestra maquina ingresamos un nuevo símbolo el cual es 0, aquí pasamos


del estado q3 al estado q2 según nuestro proceso de transición; así mismo, nos
genera un símbolo de salida de 0.

Estando en el estado q2 nuestra maquina detecta un nuevo símbolo de entrada el


cual es 1, por lo tanto, al ser validado y siguiendo las reglas de nuestras transiciones
nos quedamos nuevamente en el mismo estado actual, pero con el símbolo de
entrada se genera un símbolo de salida que es 1.
Para pasar del estado q2 al estado q1 como lo indica la transición, la maquina recibe
como símbolo de entrada el 0 y este a su vez generaría un símbolo de salida de 0.

Al ingresar el símbolo 1 de nuestro alfabeto de entrada, la maquina se desplaza al


estado q0, generando un símbolo de salida de 1; el cual cómo podemos evidenciar
se almacena en la cinta y de esta manera se nos está generando otra cadena y esto
se debe a que por cada símbolo de entrada él nos da un símbolo de salida diferente
o igual al de entrada.
Por último, cuando la máquina de Mealy detecta que ha ingresado el ultimo 1 de la
cadena a validar, esta genera un carácter de salida el cual es 0 y al no existir más
caracteres la cadena se valida y es aceptada; quedando en la cinta la siguiente
cadena de salida 0110101010.

Realice la conversión paso a paso de máquina de Mealy a máquina de


Moore.

Se coge la tabla inicial de la máquina de Mealy que es la siguiente:


1. Entrada G Entrada
f Estado 0 1
Estado 0 1 q0 1 0
q0 q1 q0 q1 1 1
q1 q3 q0 q2 0 1
q2 q1 q2 q3 0 1
q3 q2 q1
-
Se unifica en una sola tabla las entradas, estados y salidas:
  0 1
  E S S S
q0 q1 1 q0 0
q1 q3 1 q0 1
q2 q1 0 q2 1
q3 q2 0 q1 1

Se genera la nueva tabla de estados de acuerdo con los estados y la salida


quedando de la siguiente manera:
Estados
q00
q01
q10
q11
q20
q21
q31

Se genera la nueva tabla de transición, con apoyo de la tabla inicial:


  0 1
Estado Estado Salid Estado Salid
s Final a Final a
q00 q11 1 q00 0
q01 q11 1 q00 0
q10 q31 1 q01 1
q11 q31 1 q01 1
q20 q10 0 q21 1
q21 q20 0 q21 1
q31 q20 0 q11 1

De acuerdo a la nueva tabla se genera el nuevo diseño de la máquina de Moore


Explique cinco características de la Máquina de Mealy y encuentre cinco
diferencias
La salida dependecon las Máquinas
tanto de la de Moore.
La salida solo depende de la situación
situación actual y entrada actual
La máquina de Mealy ejecuta más Necesita más lógica para decodificar
rápido a las entradas las salidas
La salida cambia en los extremos de El cambio de entrada causa cambio en
reloj la salida debido a la lógica
Presenta menos estados que la Presenta más estados que la máquina
máquina de Moore de Mealy
Las salidas son función del estado y Las salidas son función únicamente del
de las entradas estado
Presenta un circuito sumador Presenta un sumador serial

8 7 6 5 4 3 2 1
Datos 0 0 1 1 0 1 0 0
Estado 00 01 11 10 01 10 00 00
Presente
Codificado 11 10 10 00 01 11 00 00
Recibido 01 10 10 10 01 11 10 00

00. 01. 11
00. 01. 00.
00. 11 00. 10.
00. 10 10 01.
Codificados 0 10
Estados 1 11

Realice el diagrama de estados para ese dato de entrada.


Identifique en el diagrama de Trellis la ruta correcta
(identificando salidas codificadas).

Diagrama de Trellis
00. 00. 10 01. 10 11 01. 00.

00.

01.

10

11

Diagrama de Viterbi
00. 00. 11
00. 10. 11 01. 10 10 10 01.

00.
00. 00. 11
01.
01.
10 11 10
10
11
BIBLIOGRAFIA

Carrasco, R., Calera, R., Forcada, M. (2016). Teoría De Lenguajes,


Gramáticas Y Autómatas Para Informáticos. Recuperado de
http://bibliotecavirtual.unad.edu.co:2051/login.aspx?
direct=true&db=nlebk&AN=318032&lang=es&site=eds-
ive&ebv=EB&ppid=pp_Cover

Hernández, R. (2010). Practique la teoría de autómatas y lenguajes


formales. (pp. 1 -124). Recuperado de
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?
docID=10566114&ppg=10

Alfonseca C, E., Alfonseca M, M., Mariyón S, R. (2009). Teoría de


autómatas y lenguajes formales. (pp. 7-797). Recuperado de
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?
docID=10498456&ppg=6

Rosenfeld, D. (2016). Computabilidad, Complejidad computacional y


verificación de programas. (pp. 7 - 27). Recuperado de
http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?
docID=11201616&ppg=12

Bonilla, L. [Luis] (2018, mayo 23). Códigos Convolucionales Tellis y


Viterbi. [Archivo de video]. Recuperado de
https://www.youtube.com/watch?v=Oe9WEAOLeyc&t=1218s

Вам также может понравиться