Ejercicios_Automatas (1)

14
Trabajo momento 3 Autómatas y lenguajes formales Jhon Faber Parra ID: 1110502151 Angela Maria Gonzalez Tutora Universidad Nacional Abierta y a Distancia - UNAD Ingeniería de Sistemas Ibagué - Tolima Noviembre de 2015

description

automatas fase 2

Transcript of Ejercicios_Automatas (1)

Page 1: Ejercicios_Automatas (1)

Trabajo momento 3 Autómatas y lenguajes formales

Jhon Faber Parra ID: 1110502151

Angela Maria Gonzalez Tutora

Universidad Nacional Abierta y a Distancia - UNAD Ingeniería de Sistemas

Ibagué - Tolima Noviembre de 2015

Page 2: Ejercicios_Automatas (1)

Primer ejercicio, diseño de una MT como traductor Actividades a desarrollar:

1. Identifique los componentes de la Máquina de Turing (descríbala). - Una cinta que se divide en celdas, una al lado de la otra. Cada celda

contiene un símbolo de algún alfabeto finito. El alfabeto contiene un símbolo especial llamado blanco (aquí escrito como 'B') y uno o más símbolos adicionales. La cinta se supone que es arbitrariamente extensible hacia la izquierda y hacia la derecha, es decir, la máquina de Turing siempre es suministrada con tanta cinta como necesite para su computación. Las celdas que no se hayan escrito previamente se asumen que están rellenas con el símbolo blanco.

- Un cabezal que puede leer y escribir símbolos en la cinta y mover la cinta a la izquierda y a la derecha una (y sólo una) celda a la vez. En algunos modelos el cabezal se mueve y la cinta es estacionaria.

- Un registro de estado que almacena el estado de la máquina de Turing, uno de los estados finitos. Hay un estado inicial especial con el que el registro de estado se inicia. Turing escribe que estos estados reemplazan el "estado de la mente" en que ordinariamente estaría una persona realizando cálculos.

- Una tabla finita de instrucciones (llamada ocasionalmente como tabla

de acción o función de transición).

2. Diseñe en un Diagrama de Moore una máquina de Turing, que sea de autoría propia (No puede ser copia de internet) donde ustedes creen las condiciones M= ({1,*},{1},*,{q0, q1, q2, q3, q4, q5, q6}, q0, f, {q6}) f(q0, 1) =(q0,1,R) f(q0, 0) =(q1,1,R) f(q1,1) =(q1,1,R) f(q1, *) =(q2,*,L) f(q2,1) =(q3,*,L) f(q3,1) =(q4,*,L) f(q4,1) =(q4,1,L) f(q4,*) =(q5,*,L) f(q5,*) =(q6,*,R)

Page 3: Ejercicios_Automatas (1)

3. Recorra la máquina con al menos una cadena válida explicando lo sucedido tanto en la cinta como en la secuencia de entrada. La cadena ingresada es 01

Recibe como entrada un 0

Page 4: Ejercicios_Automatas (1)

Llega a q1 cambiando un 0 por 1 y avanza a la derecha

Después reemplaza a 1 por 1 y avanza a la derecha

Page 5: Ejercicios_Automatas (1)

Luego reemplaza a vacio por vacio y avanza hacia la izquierda llegando al estado q3.

Después reemplaza a 1 por vacio y avanza a la izquierda, llegando al estado q3

Después reemplaza a 1 por vacio y avanza a la izquierda llegando al estado q4.

Page 6: Ejercicios_Automatas (1)

Después reemplaza a vacio por vacio y avanza a la izquierda llegando a q5.

Después reemplaza a vacio por vacio y avanza a la izquierda llegando a q6.

4. Identifique una cadena que no sea válida y justifíquela porque. Cadena no valida 010.

Page 7: Ejercicios_Automatas (1)

Es invalida por que no tiene ceros para reemplazar durante su recorrido por los estados.

5. Ejecute el RunTest a una cadena aceptada que tenga la menos cinco símbolos. La cadena ingresada es 01111

6. Identifique en qué momento la máquina se detiene. La maquina se detiene cuando encuentra un estado vacio.

Page 8: Ejercicios_Automatas (1)

7. Mencione cual es la diferencia entre una MT que actúa como transductor y una que actúa como reconocedor Reconocedor de lenguajes es una maquina cuya entrada pertenece a un alfabeto, y cuya salida es el conjunto de 2 valores que se pueden denotar como: “reconozco” o “no reconozco”.

Un transductor es un autómata finito (o máquina de estados finitos) con dos

cintas, una de entrada y otra de salida.

Segundo Ejercicio: Diseño de un transductor

Actividad a desarrollar: Actividades a desarrollar: Diseñe Una MT que se comporte como transductor que reconozca el lenguaje L ={a}* (NO incluye o NO acepta la cadena λ). La transducción (salida) debe ser que por cada símbolo que entre duplique el símbolo del alfabeto de la cinta: Ejemplo: para la cadena (aa) la salida será (bbbb). El alfabeto de la cinta es debe ser diferente al alfabeto de entrada. Es decir el alfabeto de entrada es “a” y el de la cinta “b” con sus respectivos símbolos blanco si es que los necesita en su diseño

1. Identifique los componentes de la Máquina de Turing (descríbala). - Una cinta que se divide en celdas, una al lado de la otra. Cada celda

contiene un símbolo de algún alfabeto finito. El alfabeto contiene un símbolo especial llamado blanco (aquí escrito como 'B') y uno o más símbolos adicionales. La cinta se supone que es arbitrariamente extensible hacia la izquierda y hacia la derecha, es decir, la máquina de Turing siempre es suministrada con tanta cinta como necesite para su computación. Las celdas que no se hayan escrito previamente se asumen que están rellenas con el símbolo blanco.

- Un cabezal que puede leer y escribir símbolos en la cinta y mover la cinta a la izquierda y a la derecha una (y sólo una) celda a la vez. En algunos modelos el cabezal se mueve y la cinta es estacionaria.

Page 9: Ejercicios_Automatas (1)

- Un registro de estado que almacena el estado de la máquina de Turing, uno de los estados finitos. Hay un estado inicial especial con el que el registro de estado se inicia. Turing escribe que estos estados reemplazan el "estado de la mente" en que ordinariamente estaría una persona realizando cálculos.

- Una tabla finita de instrucciones (llamada ocasionalmente como tabla

de acción o función de transición).

2. Diséñela en un Diagrama de Moore. f(q0, a) =(q0,1,R) f(q0, *) =(q1,*,R) f(q1,b) =(q1,b,L) f(q1, 1) =(q2,b,R) f(q2,b) =(q2,b,R) f(q2,*) =(q1,b,L) f(q1,*) =(q3,*,R)

3. Recorra la máquina con al menos una cadena válida explicando lo sucedido tanto en la cinta como en la secuencia de entrada. La cadena de entrada es a

Page 10: Ejercicios_Automatas (1)

En la primera entrada remmeplaza a “a” por 1 y avanza a la derecha.

Luego reemplaza en blanco y se devuelve en la cinta a la izquierda.

Luego reemplaza a 1 por b y avanza a la derecha

Luego reemplaza el espacio por una b y avanza a la izquierda

Page 11: Ejercicios_Automatas (1)

Luego avanza a la izquierda reemplazando a b por b

Luego avanza a la derecha sin reemplazar y termina la lectura.

4. Identifique una cadena que no sea válida y justifíquela porque La cadena no valida es ab, puesto que el solo debe leer un lenguaje donde sea solo a o aa y no debe ser ab o viserversa.

Page 12: Ejercicios_Automatas (1)

5. Ejecute el RunTest a una cadena aceptada que tenga la menos cinco símbolos

6. Identifique en que momento la máquina se detiene. La maquina se detiene cuando encuentra un espacio en blanco y debe reemplazarlo por otro espacio, y debe avanzar a la derecha.

7. Lo que acaba de diseñar es una MUT o una MT. Justifique su respuesta. Tercer ejercicio: Diseño de una MT que acepte: Diseñe un Transductor (MAQUINA DE MEALY) que realice la misma transducción del ejercicio anterior.

1. Identifique los componentes de la Máquina (descríbala). - Una cinta que se divide en celdas, una al lado de la otra. Cada celda

contiene un símbolo de algún alfabeto finito. El alfabeto contiene un símbolo especial llamado blanco (aquí escrito como 'B') y uno o más símbolos adicionales. La cinta se supone que es arbitrariamente extensible hacia la izquierda y hacia la derecha, es decir, la máquina de Turing siempre es suministrada con tanta cinta como necesite para su computación. Las celdas que no se hayan escrito previamente se asumen que están rellenas con el símbolo blanco.

- Un cabezal que puede leer y escribir símbolos en la cinta y mover la cinta a la izquierda y a la derecha una (y sólo una) celda a la vez. En algunos modelos el cabezal se mueve y la cinta es estacionaria.

- Un registro de estado que almacena el estado de la máquina de Turing, uno de los estados finitos. Hay un estado inicial especial con el que el registro de estado se inicia. Turing escribe que estos estados reemplazan el "estado de la mente" en que ordinariamente estaría una persona realizando cálculos.

Page 13: Ejercicios_Automatas (1)

- Una tabla finita de instrucciones (llamada ocasionalmente como tabla

de acción o función de transición).

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

3. Recorra la máquina con al menos una cadena válida explicando lo sucedido tanto en la cinta como en la secuencia de entrada. La cadena ingresada es aa

Su posición inicial arranca en q0 leyendo a “a” como entrada y arrojando a b como salida pasando al estado q2

Lee a “a” como entrada y arroja a b como salida pasando al estado q0

Page 14: Ejercicios_Automatas (1)

4. Identifique una cadena que no sea válida y justifíquela porque.

Una cadena no valida seria a λ, por que el autómata no lee landa dentro de su recorrido.

5. Ejecute el RunTest a una cadena aceptada que tenga la menos tres símbolos

6. Identifique en que momento la máquina se detiene. La maquina se detiene al leer toda la cadena de entrada, o al encontrar un símbolo no aceptado.

7. Explique cinco características de la Máquina de Mealy y encuentre cinco diferencias con las Máquinas de Turing (MT).

Diferencias entre Maquina de Turing y Mealy:

Turing Mealy

la salida se produce por sus estados.

la salida se produce por sus transiciones

Tiene estado final. No tiene estado final

Envía una transición de entrada Envía una transición de entrada y una de salida

Una máquina de Moore produce una salida cuando se encuentra en un estado.

Una máquina Mealy produce una salida cada vez que realiza una transición.

Tiene una entrada Tiene doble entrada