Sunteți pe pagina 1din 39

TRABAJO COLABORATIVO

MOMENTO TRES

CLAUDIA LILIANA VIASUS SANDOVAL - 46683642

YUDY NATALI VIVAS BENÍTEZ – 10726403740129

SANDRA PATRICIA RIOS RIVERA – 1055273047

RICARDO ALFREDO QUINTERO PINTO – 74370818

YULIET MAYERLY CUTA TIBADUIZA - 1052382660

Tutor

NELSON MIGUEL SANDOVAL

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)

AUTOMATAS Y LENGUAJES FORMALES

DUITAMA

2015
PRIMER EJERCICIO: DISEÑO DE UNA MT COMO TRANSDUCTOR

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

Cinta: Almacena Símbolos de entrada. La cinta no es finita hacia la izquierda, es


de longitud finita hacia la derecha.

Cabezal: Lectura / Escritura. Se mueve bidireccionalmente por la cinta, pasando


repetidas veces por un segmento de la cinta.

Control Finito: Compuesto por un conjunto de reglas y producciones.

Descripción formal:

M = (Q, ∑, Γ, σ, q0,[, qF) donde:


Q: conjunto de estados h ∈ Q
∑: alfabeto de entrada
Γ: alfabeto de cinta (∑ ⊆ Γ)
σ: función de transición σ : Q × Γ → Q × Γ × {L, R,S}
q0: estado inicial
µ: simbolo blanco (µ ∈ Γ − ∑)
qF: Estado aceptador de ∑

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.

Diseño de la maquina en JFLAP


Función de Transición σ:

σ(q0,0) = (q1,X,R)

σ(q0,1) = (q2,Y,R)

σ(q1,X) = (q1,X,R)

σ(q1,1) = (q3,Y,R)

σ(q3,Y) = (q3,Y,R)

σ(q2,Y) = (q2,Y,R)

σ(q2,0) = (q2,X,R)

σ(q2,X) = (q2,X,R)
σ(q2,1) = (q3,Y,R)

σ(q3,Y) = (q3,Y,R)

σ(q3,0) = (q3,X,R)

σ(q3,B) = (q4,B,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.

Se toma la cadena valida 1010

q0 1010 ├ Y q2010 ├ Y Xq210 ├ Y XYq30 ├ YXYX q4


Estado inicial
de la Maquina

Simulador

a. Cabezal ubicado en el estado Inicial q0


b. Cuando la maquina lee un 1, escribe una Y, avanza un lugar a la derecha,
ubicándose el cabezal en el estado q2.
c. Ahora lee un 0, escribe una X, avanza un lugar a la derecha, ubicándose el
cabezal en el estado q2.

d. Ahora lee un 1, escribe una Y, avanza un lugar a la derecha, ubicándose el


cabezal en el estado q3.
e. Finalmente lee un 0, escribe una X, manteniéndose el cabezal en el estado
q3.

Así al finalizar la simulación queda en verde lo que indica el reconocimiento de la


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

En la imagen se evidencian varias cadenas no validas, en este caso tomaremos la


cadena 00. Se realiza la simulación: Se arranca en el estado inicial q0.
Se recibe un 0, se reemplaza por una X, y se desplaza una posición quedando en
el estado q1.

Con la cadena se le pide a la maquina leer otro 0, lo cual es imposible ya del


estado q1 debe enviar un 1 al estado q3, por lo tanto es una cadena no valida
como se evidencia en el simulador:
Finalmente se rechaza la cadena 00.

5. Ejecute el RunTest a una cadena aceptada que tenga al menos cinco


símbolos.

Para cumplir con los requerimientos de este punto se agrega en el estado q3, la
lectura de un 1 y la escritura de una Y, lo cual no afecta las cadenas con las
cuales se realizaron los puntos anteriores.

En la imagen tenemos la cadena valida 101010, con la cual se realizara el test.

a. Cabezal ubicado en el estado Inicial q0


b. Cuando la maquina lee un 1, escribe una Y, avanza un lugar a la derecha,
ubicándose el cabezal en el estado q2.

c. Ahora lee un 0, escribe una X, avanza un lugar a la derecha, ubicándose el


cabezal en el estado q2.
d. Ahora lee un 1, escribe una Y, avanza un lugar a la derecha, ubicándose el
cabezal en el estado q3.

e. Ahora lee un 0, escribe una X, manteniéndose en el estado q3.


f. Continua leyendo un 1, escribe una Y, y realiza el ciclo en el estado q3.

g. Finalmente lee un 0, escribe una X, manteniéndose el cabezal en el estado


q3.
Así al finalizar la simulación queda en verde lo que indica el reconocimiento de la
cadena:
6. Identifique en que momento la máquina se detiene.

Como se evidenció en las cadenas validas que se recorrieron la maquina siempre


se detiene en el estado final q4.
7. El comportamiento como transductor en una máquina de Turing significa
que genera una salida en la cinta, según el ejercicio realizado es
transductor porque se exige que termine en un estado final; mientras que
una máquina de Turing que actúa como reconocedor es capaz de
reconocer o aceptar lenguajes formales.

SEGUNDO EJERCICIO: DISEÑO DE UN TRANSDUCTOR

La máquina de Turing se puede comportar como transductor: Un transductor


computa una determinada función sobre una cadena en lugar de computarla sobre
un conjunto de enteros o de símbolos independientes. Construyen una respuesta
específica (una salida) para un problema planteado. Modifica el contenido de la
cinta realizando cierta función.

Actividades a desarrollar:

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

Descripción formal:

M = (Q, ∑, Γ, σ, q0,[, qF) donde:


Q: conjunto de estados h ∈ Q
∑: alfabeto de entrada
Γ: alfabeto de cinta (∑ ⊆ Γ)
σ: función de transición σ : Q × Γ → Q × Γ × {L, R,S}
q0: estado inicial
µ: simbolo blanco (µ ∈ Γ − ∑)
qF: Estado aceptador de ∑

2. Diséñela en un Diagrama de Moore.

Diseño de la maquina en JFLAP


Función de Transición σ:

σ(q0,a) = (q1,b,R)

σ(q1,a) = (q2,b,R)

σ(q1,b) = (q3,a,R)

σ(q2,a) = (q4,b,R)

σ(q2,b) = (q2,a,R)

σ(q3,a) = (q3,b,R)

σ(q3,b) = (q4,a,R)

σ(q4,a) = (q4,b,R)

σ(q4,b) = (q4,a,R)

σ(q4,B) = (q5,B,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.
Se toma la cadena valida abab

Simulador

f. Cabezal ubicado en el estado Inicial q0


g. Cuando la maquina lee un a, escribe una b, avanza un lugar a la derecha,
ubicándose el cabezal en el estado q1.
h. Ahora lee un b, escribe una a, avanza un lugar a la derecha,
manteniéndose el cabezal en el estado q3.
i. Ahora lee un a, escribe una b, avanza un lugar a la derecha, ubicándose el
cabezal en el estado q3.
j. Finalmente lee un b, escribe una a, ubicándose el cabezal en el estado q4.
Así al finalizar la simulación queda en verde lo que indica el reconocimiento de la
cadena:
4. Identifique una cadena que no sea válida y justifíquela porque.
En la imagen se evidencian varias cadenas no validas, en este caso tomaremos la
cadena ab. Se realiza la simulación: Se arranca en el estado inicial q0.

Se recibe un a, se reemplaza por una b, y se desplaza una posición quedando en


el estado q1.
Se recibe un b, se reemplaza por una a, y se desplaza una posición quedando en
el estado q3.
Continua avanzando enviando un dato vacío, sin poder avanzar en la cinta.
Finalmente se rechaza la cadena ab, porque no llega a un estado aceptador.
5. Ejecute el RunTest a una cadena aceptada que tenga la menos cinco
símbolos.

Tomamos la cadena valida ababa, con la cual se realizara el test.

a. Cabezal ubicado en el estado Inicial q0


b. Cuando la maquina lee un a, escribe una b, avanza un lugar a la derecha,
ubicándose el cabezal en el estado q1.
c. Ahora lee un b, escribe una a, avanza un lugar a la derecha,
manteniéndose el cabezal en el estado q3.
d. Ahora lee un a, escribe una b, avanza un lugar a la derecha, ubicándose el
cabezal en el estado q3.
e. La maquina lee un b, escribe una a, ubicándose el cabezal en el estado q4.
f. Finalmente la máquina lee un a, escribe una b, manteniéndose el cabezal
en el estado q4.
Así al finalizar la simulación queda en verde lo que indica el reconocimiento de la
cadena:
6. Identifique en que momento la máquina se detiene.

Como se evidenció en las cadenas validas que se recorrieron la maquina siempre


se detiene en el estado final q5.
7. Lo que acaba de diseñar es una MUT o una MT. Justifique su respuesta.

Se acaba de diseñar una MT ya que realiza un cálculo especifico a diferencia de la


máquina Universal que se diseña para procesar cualquier información (realizar
cualquier cálculo específico -MT particular- sobre cualquier configuración inicial de
entrada correcta para esa MT particular).

Tomado del Módulo de Autómatas y Lenguajes Formales Versión 5 - 2015

TERCER EJERCICIO: DISEÑO DE UNA MT QUE ACEPTE:

No necesariamente un Transductor tiene que ser una MT.

Actividades a desarrollar:

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 Máquina de Mealy (o Transductor de estados finito) también es un
autómata finito pero que genera una salida. Es definido por una 6-tupla:

Donde:

: Es el conjunto finito de estados.


: Es el alfabeto de entrada.
: Es el alfabeto de salida.

: Un estado (elemento de ) distinguible en el cual inicia la


computación.

: Es la función de transición
: Es la función de salida.

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.

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

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.


7. Explique cinco características de la Máquina de Mealy y encuentre cinco
diferencias con las

Máquinas de Turing (MT).

S-ar putea să vă placă și