sdfsdg

34
TRABAJO COLABORATIVO N° 2 DIANIS VELASQUEZ VELASQUEZ YEIDER MANUEL VELASQUEZ VELASQUEZ CODIGO: 1072254003 E – mail: [email protected] GRUPO: 301405_63 TUTOR: JESUS EMIRO VEGA CURSO ACADEMICO: AUTOMATAS Y LENGUAJES FORMALES UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD” ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA – ECBTI CERES BAJO SINU- CCAV SAHAGUN CORDOBA MAYO DEL 2013

Upload: jrojastov

Post on 25-Oct-2015

26 views

Category:

Documents


2 download

TRANSCRIPT

TRABAJO COLABORATIVO N° 2

DIANIS VELASQUEZ VELASQUEZ

YEIDER MANUEL VELASQUEZ VELASQUEZCODIGO: 1072254003

E – mail: [email protected] GRUPO: 301405_63

TUTOR: JESUS EMIRO VEGA

CURSO ACADEMICO: AUTOMATAS Y LENGUAJES FORMALES

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD”

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA – ECBTI

CERES BAJO SINU- CCAV SAHAGUN CORDOBA

MAYO DEL 2013

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

INTRODUCCION.

El siguiente trabajo corresponde al desarrollo del trabajo colaborativo del curso de Autómatas y lenguajes formales, en el aplicaremos los contenidos temáticos que hemos adquirido del estudio de la unidad dos.

Los lenguajes independientes del contexto que también se conocen con el nombre de gramáticas de contexto libre son un método recursivo sencillo de especificación de reglas gramaticales con las que se pueden generar cadenas de un lenguaje.

Es factible producir de esta manera todos los lenguajes regulares, además de que existen ejemplos sencillos de gramáticas 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.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

OBJETIVO GENERAL.

Reconocer las distintas gramáticas ya que existen diferentes formas que generan un mismo lenguaje. El hecho de no restringir la forma de las reglas se tiene interés en los casos en que se desea diseñar una gramática para un lenguaje dado.

OBJETIVOS ESPECIFICOS.

Analizar la estructura de las gramáticas independientes del contexto. Estudiar el concepto de los autómatas de pila, su funcionamiento y los lenguajes utilizados. Distinguir los lenguajes independientes del contexto existentes y sus propiedades, así como

los algoritmos de decisión. Generalizar los conceptos de autómatas finitos y gramáticos regulares. Reconocer el potencial de procesamiento del lenguaje del autómata con los Autómatas de

pila.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

EJERCICIOS A DESARROLLAR.

1. Calcular el autómata mínimo correspondiente al siguiente autómata finito determinista.

ACTIVIDADES ANTES DE MINIMIZAR

1. Identifique los componentes del autómata (que tipo de tupla es).

R/ El autómata es AFD por lo tanto la tupla es:

Q es un conjunto de estados. Σ es el alfabeto de entrada

: Q X Σ → Q es la función (total) de transición. 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 aceptación.Acepta las cadenas como:

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

2. Identifique la tabla de transición.

R/

a B

#q0 { q2 } { q4 }q1 { q1 } { q0 }

#q2 { q2 } { q5 }q3 {q3 } { q2 }q4 { q5 } { q1 }q5 { q4 } {q3 }

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

Posibles cadenas aaabbbaaa aabbbaaabbba bbbaaaaaa abbbaaaa aaabbbaa abbbaa

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

4. Encuentre la expresión regular válida (compruebe una cadena válida de esa Expresión regular en el simulador).

R/La expresión regular válida es: a(a+ba*ba*b)*+b(aa*b)*ba*ba*+ a(a+ba*ba*b)*+b(aa*b)*ba*ba*

Expresión en el simulador.

Cadenas validas en el simulador.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

5. Encuentre su gramática que sea válida para la función de transición (describa sus componentes y como se escriben matemáticamente). Justifique si al concierte a la derecha o a la izquierda. Plásmela en el simulador y recréela.

R/ La gramática válida para la función de transición es:

La conversión al realizamos a la derecha ya que todas las producciones son de la forma:

En el lado derecho de las producciones el símbolo no terminal aparece a la derecha del símbolo terminal.

Gramática en el simulador.

En el simulador seleccionamos gramática

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

Ingresamos la gramática 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.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

6. Realice el árbol de derivación de esa gramática.

R/ El árbol es demasiado grande solo se colocó las gramáticas

S

B D

a

a E b A

b D b S a C

a Cb

b

B a b

b

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

7. Identifique si ese árbol o gramática es ambigua o no y plasme las razones de su Afirmación.

R/ La gramática del árbol no es ambigua debido a que es una gramática de libre contexto y tiene asociado un solo árbol; lo contario de la ambigua que hay dos o más árboles de derivación distintos para una misma cadena.

La cadena abbba el único árbol que la puede representar es el siguiente:

8. Si el árbol de transición es demasiado grande, a su criterio seleccione una regla en la que se detenga por cualquier rama (izquierda o derecha) y plásmelo hasta ahí.

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

REGLA DERIVACIÓN ÁRBOL

SaB

aaBaabE

aabbCaabbbB

aabbbaBaabbba

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

ACTIVIDADES PARA EL EJERCICIO A MINIMIZAR O YA MINIMIZADO.

9. Explicar el proceso de minimización (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 Finales

{q1, q3, q4, q5} {q0, q2}

Paso 2: evaluamos el grupo de los estados no finales:

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

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

11. Escribir la función de transición del nuevo autómata.

12. Identificar la expresión regular. Por el lema de Arden se fue reduciendo la Expresión.R / a(a+ba*ba*b)*+b(aa*b)* ba*ba*

13. Compruebe una cadena válida para esa expresión regular. R/

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

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

Posibles cadenas.aaabbbaaa aabbbaaabbba aaa abbbaaaa aaabbbaa

15. Identificar su gramática. Demuéstrela para una cadena válida del autómata. R/

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

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

Autómata minimizado.

17. identificar sus tablas de transición. R/

a B

q0 { q0 } { q1 }q1 { q1 } { q2 }

# q2 { q2 } { q0 }

18. Plasmar los pasos de minimización en el simulador y capturar los procesos en Imágenes para ser documentadas en el texto.R/

a. Se construye el autómata en el simulador.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

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.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

e. Damos clic en done el cual nos indica que el autómata esta minimizado.

2. Construya el autómata de pila correspondiente.

Diseñe un AP que acepte el lenguaje.

19. Grafíquelo en JFLAP y realice el “Traceback” para las transiciones. R/

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

Traceback

20. Plasme las imágenes 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 withclosure, en la venta que nos aparece digitamos la cadena y colocamos que hasta el estado final y damos clik en step para correr el autómata, para cada unode sus estados hasta el estado final.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

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 autómatas con pila se pueden hacer diagramas de estados, similares a los ya conocidos, pero resultan de poca utilidad práctica ya que el procesamiento completo deuna cadena de entrada depende del contenido de la pila, el cual puede cambiar en cada paso computacional.

Estado Por leer Pila

q abcaq abc

q bc abq c abc

22. Identifique los contenidos de la pila y estado de parada. Realícelo con una cadena válida y con una cadena rechazada.R/

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

3. Construcción de autómatas: Para el siguiente autómata:

23. Identifique la tupla que lo define. R/

Es una quíntupla A = (Q, Σ, Δ, c, F) Q es un conjunto de estados. Σ es el alfabeto de entrada Δ: Q X Σ υ { }→ P(Q ) es la función (total) de transición. Devuelve ahora

un conjunto de estados, y no un solo estado.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

q0 € Q es el estado inicial

F Q es el conjunto de estados finales o de aceptación. Que para tal caso son q5

Acepta las cadenas como:

24. Que lenguaje reconoce el autómata. Identifique su ER.

Su expresión regular es. a(a*+b*)b

25. Identifique si es AFD o AFND. R/ Es un AFND con transicionesAl admitir transiciones vacías, el autómata puede cambiar de estado sin procesar carácter alguno. Por lo tanto para precisar cómo evoluciona el autómata, hay queIntroducir el concepto de clausura con respecto a .

26. Obtenga la gramática regular para el lenguaje que representa. Confróntela con la ER con una cadena válida.R/G= ({A,B,C,D}, {a,b} P, S})

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

Gramática.

Cadena válida por gramática ER. Cadena válida por la gramática.

Cadena válida por ER.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

4. Gramáticas.Sean L1 el lenguaje generado por la gramática G1.

27. Obtener el autómata Finito para la gramática. R/

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

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

Es lineal a la derecha.

29. Verifique si las cadenas

pueden se generan o no. Justifique por qué.R/

Cadenas válidas.

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.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

30. Plasme la secuencia y árbol de derivación de las cadenas

Cadena 1. Árbol.

Cadena 2. Árbol

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

Cadena 3. Árbol

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

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD www.unad.edu.co

BIBLIOGRAFÍA.

Guía de Actividad, Tracol2 (2013). AUTÓMATAS Y LENGUAJES

FORMALES. Duitama.

Módulo. Actualización (2011). Carlos Alberto Amaya

Tarazona AUTÓMATAS 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, dehttp://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, deftp://ftp.icesi.edu.co/abustamante/Material%20Inf%20Te%F3rica/Cap4.pdf

Ciencias de la computacion. (s.f.). Recuperado el 1 de Mayo de 2013, dehttp://www.exa.unicen.edu.ar/catedras/ccomp1/ApunteGRyER.pdf

Ciencias de la computación. (2009). Recuperado el 1 de Mayo de 2013, dehttp://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, dehttp://di002.edv.unio vi.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, dehttp://www.yakiboo.net/apuntes/TALF%202009%20%5BYakiBoo.net%5D.pdf

Gramaticas libres de contexto. (2008). Recuperado el 3 de Mayo de 2013, dehttp://www.exa.unicen.edu.ar/catedras/ccomp1/Apunte5.pdf

Minimización 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 sección 5.2. (s.f.). Recuperado el 7 de Mayo de 2013, de http://www.virtual.unal.edu.co/cursos/ciencias/2001018/lecciones/Cap5s2.pdf.