Automatas y lenguaje formales, ejercicios

October 31, 2018 | Author: Camilo Alfonso | Category: Symbols, Engineering, Science, Mathematics, Physics & Mathematics
Share Embed Donate


Short Description

ejercicios sobre automatas con pilas, automatas y lenguajes formales etapa 3 unad 2017...

Description

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

AUTOMATAS Y LENGUAJES FORMALES TRABAJO COLABORATIVO FASE 2 DEBATIR Y DESARROLLAR LOS EJERCICIOS PLANTEADOS SOBRE AUTÓMATAS CON PILA Y GRAMÁTICAS

PRESENTADO POR: CARLOS ORLANDO ROJAS FRANKLIN JOAN PUENTES JUAN CAMILO ALFONSO DANIEL MEJÍA LIZARAZO

GRUPO: 301405_62

TUTOR CESAR JIMÉNEZ

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA ABRIL DE 2017

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

INTRODUCCIÓN El presente trabajo colaborativo contiene material académico correspondiente al curso Autómatas y Lenguajes Formales en donde se incluye el desarrollo de la Guía de Actividades correspondiente a la Unidad No 2 – Fase No 2 como un proceso intermedio del contenido que abarca la Teoría de Autómatas y lenguajes Formales, recorriendo las temáticas, de una manera simple objetiva y efectiva, dado el alto contenido analítico, matemático y de comprensión que tiene las temáticas a las que hace referencia el presente documento.

Se pretende identificar y comprender los conceptos y definiciones fundamentales para el estudio de lenguajes Independientes del contexto, autómata a pila, autómata a pila por vaciado, autómata a pila por estados finales, definición de gramática con sus características y tipos de gramáticas.

Para el cumplimiento de estos objetivos propuestos se realiza una investigación teórica individual la cual fue compartida en el foro de trabajo colaborativo, cuya evidencia es una presentación de los temas propuestos, posteriormente se realiza el desarrollo de dos ejercicios donde se aplican los temas de la unidad dos, el primero corresponde a la minimización e identificación de un autómata y el segundo a la construcción y simulación de un autómata con pila, estos ejercicios son los evidenciados en su desarrollo a continuación.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Ejercicio 1 Teniendo en cuenta el siguiente autómata realizar el proceso de minimización. Se debe realizar el procedimiento paso a paso.

1. Realice la descripción (notación) (caracterización) matemática del autómata. (Antes de minimizar) De acuerdo a la definición formal tenemos

A={{ q 0, q1, q 2, q3, q 4, q5 , q6 , q 7 } , {1,2 } , δ , q 0 , { q 7 ,q 4 } } Donde, estados del autómata: K= { q0, q 1, q2, q 3, q4, q 5 ,q 6 , q7 } El Lenguaje reconocido por el autómata: ∑={ 1,2 } Estado inicial:

Estados finales o de aceptación: F=q 4 , q7 Transiciones del autómata:

s=q0

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

δ :(q0, 1)=q 1 δ :(q0, 2)=q 2 δ :(q1, 1)=q 5 δ :(q1, 2)=q 3 δ :(q2, 1)=q 6 δ :(q2, 2)=q 4 δ :(q3, 1)=q 7 δ :(q3, 2)=q 1 δ :(q 4, 1)=q1 δ :(q 4, 2)=q5 δ :(q5, 1)=q 3 δ :(q5, 2)=q 7 δ :(q6, 1)=q 4 δ :(q6, 2)=q 1 δ :(q7, 1)=q 1 δ :(q7, 2)=q 2 2. Plasme la tabla de transición del autómata. (No es la que generas VAS). (Antes de minimizar) Tabla de transiciones

Estado s q0 q1 q2 q3 q4 q5 q6 q7

Entradas 1 2 q1 q2 q5 q3 q6 q4 q7 q1 q1 q5 q3 q7 q4 q1 q1 q2

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

3. Identifique El Lenguaje que reconoce. (Antes de minimizar) Lenguaje generado por el autómata

L= {todas las cadenas que empiezan por un {1} o {2} y terminan en un {1} o {2}}, con al menos tres elementos si comienza por 2 o tres elementos si comienza por 1, sobre el alfabeto {1,2}

4. Identifique los estados Distinguibles y los No distinguibles Estados Distinguibles

A={q 4, q7 } Estados no Distinguibles

B={q0, q 1, q2, q 3 , q 5 , q 6 }

5. En el proceso de eliminación de estados, identifique que transiciones se eliminan y cuáles se re direccionan. Muestre la tabla de estados distinguibles.

Estados equivalentes para primer grupo A={q 4, q7 } δ q4 q7 Estados equivalentes grupo B B={q0, q 1, q2, q 3 , q 5 , q 6 }

1 B B

2 B B

δ

1 B B B

2 B B A

q0 q1 q2

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

q3 q5 q6

A B A

B A B

Se forman nuevos grupo luego de validación de los dos conjuntos iniciales A={q 4, q7 } B={q0, q 1 } C={q 2, q5 } D={q3 , q6 } Tablas de los nuevos conjuntos A={q 4, q7 } δ q4 q7

1 B B

2 C C

δ q1

1 B C

2 C D

δ q2 q5

1 D D

2 A A

δ q3 q6

1 A A

2 B B

B={q0, q 1 } q0 C={q 2, q5 }

D={q3 , q6 }

Nuevos conjuntos son generados, q0 ingresa al conjunto A y se forma conjunto de inicio y final E.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

E={q 4, q7 , q0 } B={q1 } C={q 2, q5 } D={q3 , q6 } Revisando los conjuntos y sus tablas E={q 4, q7 , q 0 } δ q4 q7 q0

1 B B B

2 C C C

B={q1 } δ q1

1 C

2 D

C={q 2, q5 } δ q2 q5

1 D D

2 E E

D={q3 , q6 } δ q3 q6

1 E E

2 B B

Mediante el procedimiento de la minimización encontramos que el estado q0 pertenece al conjunto A formándose y se forma el conjunto E, en este se comporta como un estado inicial también estado de aceptación, la tabla de transiciones es la siguiente: Estados

Entradas 1 2

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

E

B

C

B

C

D

C

D

E

D

E

B

Autómata generado

Realice la descripción (notación) (caracterización) matemática del autómata ya minimizado. M = (K, Ʃ ,δ , s, F) A={{ B ,C , D , E } , {1,2 } , δ , E { E } }

Estados del autómata K= { B , C , D , E } Lenguaje reconocido por el autómata ∑={ 1,2 } Estado inicial

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

s=E

Estados de aceptación

F=E

Transiciones: δ :(B , 1)=C

δ :(B , 2)=D δ :(C , 1)=D

δ :(C , 2)=E δ :( D ,1)=E

δ :(D ,2)=B δ :(E ,1)=B

δ :(E ,2)=C Identifique El Lenguaje que reconoce L = {ω ∈ {0, 1} | ω = todas las cadenas que empiezan por un {1} o {2} y terminan en un {1} o {2}}, con al menos tres elementos si comienza por 2 o tres elementos si comienza por Identifique su gramática (de forma manual) por la derecha y caracterícela. Debe incluir el diagrama de estados con los componentes de la gramática asociados a las variables y a las constantes. Regla

Gramática

E →1 B

S →2 B

E →2 C

B→2S

B → 1C

C→1S

B→2D

B → 1C

D→ 1 E

S →1 A

D→ 2 B

A →1 B

C→1D

A →2 C

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

C→2D

C→2 A

E→λ

S →λ

V = es un alfabeto de variables ∑ = Es un alfabeto de constantes R = es el conjunto de reglas es un subconjunto finito S = el símbolo inicial y un elemento de V La gramática regular es lineal por la derecha, ya que todas las producciones se presentan de la forma A  Ab A a

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Ejercicio 2 Diseñe un AP que lea el siguiente lenguaje L = {(ab*) | (c*d*)} ; es decir todas las combinaciones posibles de cadenas conformadas por los símbolos (a) (b*) o (c*) (d*) (con pila vacía). 1. Describa el autómata en notación matemática Conjunto de estados del autómata Q= {q1, q2, q3, q1} Alfabeto ∑= {a, b, c, d} Contenido de la Pila Γ= {V} Estado Inicial s=q1 Símbolo Inicial de pila Z= V Estados de aceptación: q2, q4 Función delta, donde e es épsilon 1. 2. 3. 4. 5. 6.

((q1,a,V),(q2,e)) ((q2,b,e),(q2,e)) ((q1,e,V),(q3,e)) ((q3,c,e),(r,e)) ((q3,d,e),(q4,e)) ((q4,d,e),(q4,e))

2. Determine el lenguaje que reconoce el AP. Gramática libre de contexto que representa el lenguaje del autómata: 3. 4. 5. 6.

S->aB|cC|e B->bB|e C->cC|D D->dD|e

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

�= {� ϵ (��∗)|(c∗d∗) | �= todas las cadenas que empiezan por el símbolo a; seguidas de una o muchas cadenas con el símbolo b o seguida de cadenas conformadas por ninguna o muchas c y d} 3. Justifique y asocio o evidencie si el diseño es un APND o un APD Es un Autómata de Pila Determinista (APND) ya que se puede notar al ubicarnos en el estado inicial q1 tiene un paso hacia el estado q2 lee el símbolo vacío. Es decir que cuando la entrada contiene el símbolo a, se ejecuten dos posibles caminos, uno hacia el estado q2 con el símbolo a y el que va al estado q3 con el símbolo vacío. 4. Grafíquelo en JFLAP y realice el “Traceback” para las transiciones. (Las columnas para un AP son: El estado en que se encuentra el autómata, lo que falta por leer de la palabra de entrada, y el contenido de la pila).

5. Plasme las imágenes del recorrido de ese Traceback para cada movimiento en el documento. (Se debe apoyar en JFLAP) (Documente el proceso)

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Introducimos la cadena aabb

Toma dos caminos a q2 por a y q3 (leyendo el símbolo vacio)

La cadena es rechazada

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Simulación de abbb Se desprende hacia dos estados por a y por vacio

La ejecución de símbolo vacío no puede hacer nada más por lo que se rechaza

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Por otra parte sigue teniendo símbolos que leer y acepta la cadena

Simulamos la cadena cddd

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

Toma por la transición vacía hacia a q3, donde lee c y luego a q4 al leer d

Itera leyendo d nuevamente y la cadena es aceptada

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

CONCLUSIONES El trabajo descrito representa un aporte significativo a la teoría de gramáticas independientes del contexto, con el trabajo desarrollado fue posible debatir y desarrollar los ejercicios planteados sobre autómatas con pila y gramáticas a través de la realización de ejercicios de aplicación donde evidenciamos el proceso para la caracterización matemática del autómata, plasmamos la tabla de transición del autómata indicado, logramos la identificación del lenguaje que reconoce un determinado autómata, además de determinar los estados distinguibles y no distinguibles, se evidencia el proceso de minimización mediante la eliminación de estados, mostrando las transiciones se eliminan y cuáles van a ser re direccionadas, se logró mediante el ejercicio la identificación de la gramática de un autómata de forma manual y caracterización. Mediante la actividad propuesta el grupo realizo el diagrama de estados con los componentes de la gramática asociados a las variables y a las constantes de un autómata, el ejercicio permitió el reconocimiento de autómatas con pila, definiendo si era determinista o no determinista, se utilizó como herramienta de apoyo el software JFLAP para su representación así como la simulación de lectura de cadenas mediante “Traceback” para las transiciones, tomando evidencia del proceso para documentarlo, finalmente como grupo se logró la apropiación de todos estos nuevos conocimientos que esperamos sean de aplicación es nuestro entorno profesional.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA AUTOMATAS Y LENGUAJES FORMALES 2017

BIBLIOGRAFIA



Alfonseca C, E., Alfonseca M, M., Mariyón S, R. (2009). Teoría de autómatas y lenguajes formales. Recuperado de: http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action? docID=10498456&ppg=6



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:2048/login? user=proveedor&pass=danue0a0&url=http://bibliotecavirtual.unad.edu.co:20 51/login.aspx?direct=true&db=nlebk&AN=318032&lang=es&site=edslive&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



Kelley, D. (1995). Teoría de Autómatas y Lenguajes Formales, Prentice Hall Hispanoamericana.



Millán, J., Antonio J. (2009). Compiladores y procesadores de lenguajes. (pp. 73-126). Recuperado de: http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/detail.action? docID=10844351

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF