You are on page 1of 25

TRABAJO COLABORATIVO N 2

CURSO ACADEMICO: AUTOMATAS Y LENGUAJES FORMALES

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA

INTRODUCCION. El siguiente trabajo corresponde al desarrollo del trabajo colaborativo del curso de Autmatas y lenguajes formales, en el aplicaremos los contenidos temticos que hemos adquirido del estudio de la unidad dos. Los lenguajes independientes del contexto que tambin se conocen con el nombre de gramticas de contexto libre son un mtodo recursivo sencillo de especificacin de reglas gramaticales con las que se pueden generar cadenas de un lenguaje. Es factible producir de esta manera todos los lenguajes regulares, adems de que existen ejemplos sencillos de gramticas de contexto libre que generan lenguajes no regulares. Las reglas gramaticales de este tipo permiten que la sintaxis tenga variedad y refinamientos mayores que los realizados con lenguajes regulares, en gran medida sirven para especificar la sintaxis de lenguajes de alto nivel y otros lenguajes formales.

EJERCICIOS A DESARROLLAR. 1. Calcular el autmata mnimo correspondiente al siguiente autmata finito determinista.

ACTIVIDADES ANTES DE MINIMIZAR

1. Identifique los componentes del autmata (que tipo de tupla es).

R/ El autmata es AFD por lo tanto la tupla es:

Q es un conjunto de estados. es el alfabeto de entrada : Q X Q es la funcin (total) de transicin. Dados un estado y una entrada devuelve un estado. q0 Q es el estado inicial F Q es el conjunto de estados finales o de aceptacin. Acepta las cadenas como:

2. Identifique la tabla de transicin. R/ a { q2 } { q1 } { q2 } {q3 } { q5 } { q4 } B { q4 } { q0 } { q5 } { q2 } { q1 } {q3 }

#q0 q1 #q2 q3 q4 q5

3. Identifique el lenguaje que reconoce y las posibles cadenas.

Posibles cadenas aaabbbaaa aabbbaa abbba bbbaaa aaa abbbaaaa aaabbbaa abbbaa

4. Encuentre la expresin regular vlida (compruebe una cadena vlida de esa Expresin regular en el simulador). R/La expresin regular vlida es: a(a+ba*ba*b)*+b(aa*b)*ba*ba*+ a(a+ba*ba*b)*+b(aa*b)*ba*ba* Expresin en el simulador.

Cadenas validas en el simulador.

5. Encuentre su gramtica que sea vlida para la funcin de transicin (describa sus componentes y como se escriben matemticamente). Justifique si al concierte a la derecha o a la izquierda. Plsmela en el simulador y recrela. R/ La gramtica vlida para la funcin de transicin es:

La conversin al realizamos a la derecha ya que todas las producciones son de la forma:

En el lado derecho de las producciones el smbolo no terminal aparece a la derecha del smbolo terminal. Gramtica en el simulador. En el simulador seleccionamos gramtica

Ingresamos la gramtica en el simulador.

Comprobamos si las cadenas son aceptadas o no para ello seleccionamos input y luego seleccionamos MultipleBrute Force Parse e ingresamos las cadenas y comprobamos.

6. Realice el rbol de derivacin de esa gramtica. R/ El rbol es demasiado grande solo se coloc las gramticas S

D a

b b

7. Identifique si ese rbol o gramtica es ambigua o no y plasme las razones de su Afirmacin. R/ La gramtica del rbol no es ambigua debido a que es una gramtica de libre contexto y tiene asociado un solo rbol; lo contario de la ambigua que hay dos o ms rboles de derivacin distintos para una misma cadena. La cadena abbba el nico rbol que la puede representar es el siguiente:

8. Si el rbol de transicin es demasiado grande, a su criterio seleccione una regla en la que se detenga por cualquier rama (izquierda o derecha) y plsmelo hasta ah.

R/ La siguiente es la regla para detener el rbol por la rama derecha.

REGLA DERIVACIN S aB aaB aabE aabbC aabbbB aabbba B aabbba

RBOL

ACTIVIDADES PARA EL EJERCICIO A MINIMIZAR O YA MINIMIZADO. 9. Explicar el proceso de minimizacin (que estados se suprimen y porque).
R/ Paso 1: Se crean dos subconjuntos, uno formado por los estados no finales y otro por los

estados finales. No finales q4, q5} {q0, q2} Finales {q1, q3,

evaluamos el grupo de los estados no finales:

Paso 2:

10. Que transiciones se reemplazan o resultan equivalentes. R/ Las transiciones equivalentes son:

11. Escribir la funcin de transicin del nuevo autmata.

12. Identificar la expresin regular. Por el lema de Arden se fue reduciendo la Expresin. R / a(a+ba*ba*b)*+b(aa*b)* ba*ba* 13. Compruebe una cadena vlida para esa expresin regular. R/

14. Identificar el lenguaje que reconoce y las posibles cadenas.

Posibles cadenas. aaabbbaaa aabbbaa abbba aaa abbbaaa a aaabbba a

15. Identificar su gramtica. Demustrela para una cadena vlida del autmata. R/

16. Expresarlo o graficarlo con su respectivo diagrama de Moore. R/ Autmata minimizado.

17. identificar sus tablas de transicin. R/ a q0 q1


# q2

B { q1 } { q2 } { q0 }

{ q0 } { q1 } { q2 }

18. Plasmar los pasos de minimizacin en el simulador y capturar los procesos en Imgenes para ser documentadas en el texto. R/ a. Se construye el autmata en el simulador.

b. Seleccionamos en el men convert y damos clic en miniminize DFA.

c. Damos clic en complete subtree.

d. Hacemos clic en finish, luego clik en complete, para realizar las transiciones.

e. Damos clic en done el cual nos indica que el autmata esta minimizado.

2. Construya el autmata de pila correspondiente. Disee un AP que acepte el lenguaje. 19. Grafquelo en JFLAP y realice el Traceback para las transiciones. R/

Traceback

20. Plasme las imgenes y capturas en el documento. R/ Traza para la cadena abc. Para comprobar la valides de la cadena hacemos clik en input y luego clik en step with closure, en la venta que nos aparece digitamos la cadena y colocamos que hasta el estado final y damos clik en step para correr el autmata, para cada uno de sus estados hasta el estado final.

Hacemos clic en trace y se desplaza otra ventana la cual nos muestra la traza.

21. Muestre el diagrama correspondiente de estados. R/ Para los autmatas con pila se pueden hacer diagramas de estados, similares a los ya conocidos, pero resultan de poca utilidad prctica ya que el procesamiento completo de una cadena de entrada depende del contenido de la pila, el cual puede cambiar en cada paso computacional. Estado q q q q Por leer abc abc bc c Pila a ab abc

22. Identifique los contenidos de la pila y estado de parada. Realcelo con una cadena vlida y con una cadena rechazada. R/

3. Construccin de autmatas: Para el siguiente autmata:

23. Identifique la tupla que lo define. R/ Es una quntupla A = (Q, , , c, F) Q es un conjunto de estados. es el alfabeto de entrada : Q X { } P(Q ) es la funcin (total) de transicin. Devuelve ahora un conjunto de estados, y no un solo estado.

q0 Q es el estado inicial F Q es el conjunto de estados finales o de aceptacin. Que para tal caso son q5

Acepta las cadenas como:

24. Que lenguaje reconoce el autmata. Identifique su ER.

Su expresin regular es. a(a*+b*)b

25. Identifique si es AFD o AFND. R/ Es un AFND con transiciones Al admitir transiciones vacas, el autmata puede cambiar de estado sin procesar carcter alguno. Por lo tanto para precisar cmo evoluciona el autmata, hay que Introducir el concepto de clausura con respecto a . 26. Obtenga la gramtica regular para el lenguaje que representa. Confrntela con la ER con una cadena vlida. R/G= ({A,B,C,D}, {a,b} P, S})

Gramtica.

Cadena vlida por gramtica ER.

Cadena vlida por la gramtica.

Cadena vlida por ER.

4. Gramticas. Sean L1 el lenguaje generado por la gramtica G1.

27. Obtener el autmata Finito para la gramtica. R/

28. identifique el Lenguaje que genera. Identifique si es lineal por la derecha o a la izquierda. R/

Es lineal a la derecha.

29. Verifique si las cadenas Justifique por qu. R/ Cadenas vlidas.

pueden se generan o no.

La cadena abab no se genera debido a que todas las cadenas inician con a y luego es una serie de a`s o b`s y terminan con una b, por ello las anteriores cadenas si se generaron.

30. Plasme la secuencia y rbol de derivacin de las cadenas

Cadena 1.

rbol.

Cadena 2.

rbol

Cadena 3.

rbol

Cadena abab. La cadena abab no se genera debido a que todas las cadenas inician con a y luego es una serie de a`s o b`s y terminan con una b, por tal motivo tampoco genera el rbol.

BIBLIOGRAFA. Gua de Actividad, Tracol2 (2013). AUTMATAS Y LENGUAJES FORMALES. Duitama. Mdulo. Actualizacin (2011). Carlos Alberto Amaya Tarazona AUTMATAS Y LENGUAJES FORMALES. Bogot. Automatas finitos expresiones regulares. (s.f.). Recuperado el 29 de abril de 2013, de http://acme.math.cinvestav.mx/~basico/automata1.html Capitulo5 automatas con pila. (2010). Recuperado el 7 de Mayo de 2013, de http://www.virtual.unal.edu.co/cursos/ciencias/2001018/lecciones/Cap5s1.pdf castro, R. d. (2013). Lenguajes y gramaticas. Recuperado el 6 de Mayo de 2013, de ftp://ftp.icesi.edu.co/abustamante/Material%20Inf%20Te%F3rica/Cap4.pdf Ciencias de la computacion. (s.f.). Recuperado el 1 de Mayo de 2013, de http://www.exa.unicen.edu.ar/catedras/ccomp1/ApunteGRyER.pdf Ciencias de la computacin. (2009). Recuperado el 1 de Mayo de 2013, de http://www.exa.unicen.edu.ar/catedras/ccomp1/ApunteGRyER.pdf Cueva, J. M. (Noviembre de 2001). Lenguajes gramaticas y automatas. Recuperado el 3 de Mayo de 2013, de http://di002.edv.uniovi.es/~cueva/publicaciones/AUTOMATA.pdf Fernandez, G. (2009). automatas y lenguajes formales. Recuperado el 1 de Mayo de 2013, de http://repositori.uji.es/xmlui/bitstream/handle/10234/5875/bolAuto4.pdf?sequence=5 Garcia, S. (s.f.). Apuntes de teoria. Recuperado el 6 de Mayo de 2013, de http://www.yakiboo.net/apuntes/TALF%202009%20%5BYakiBoo.net%5D.pdf Gramaticas libres de contexto. (2008). Recuperado el 3 de Mayo de 2013, de http://www.exa.unicen.edu.ar/catedras/ccomp1/Apunte5.pdf Minimizacin de estados. (26 de Mayo de 2010). Recuperado el 5 de Mayo de 2013, de https://sites.google.com/site/tautomatasfinal/minimizacion. Virtual unal, ejemplos de la seccin 5.2. (s.f.). Recuperado el 7 de Mayo de 2013, de http://www.virtual.unal.edu.co/cursos/ciencias/2001018/lecciones/Cap5s2.pdf.