Aporte Janes Saenz

15
TRABAJO COLABORATIVO N 2 JANES SAENZ PUERTA CARLOS ALBERTO AMAYA TARAZONA (TUTOR) UNIVERSIDAD NACIONAL ABIERTA Y ADISTANCIA (UNAD) FACULTAD DE ING SISTEMA

Transcript of Aporte Janes Saenz

Page 1: Aporte Janes Saenz

TRABAJO COLABORATIVO N 2

JANES SAENZ PUERTA

CARLOS ALBERTO AMAYA TARAZONA (TUTOR)

UNIVERSIDAD NACIONAL ABIERTA Y ADISTANCIA (UNAD) FACULTAD DE ING SISTEMA

Page 2: Aporte Janes Saenz

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.

Page 3: Aporte Janes Saenz

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.

1. Analizar la estructura de las gramáticas independientes del contexto.2. Estudiar el concepto de los autómatas de pila, su funcionamiento y los lenguajes

utilizados. 3. Distinguir los lenguajes independientes del contexto existentes y sus propiedades,

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

Autómatas de pila.

Page 4: Aporte Janes Saenz

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

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

El autómata finito es de quíntupla no determinística, ya que de un estado determinado su transición su se sabe cuál será el estado siguiente.

Un autómata finito no determinístico (AFND) es una quíntupla M = (Q, V, , q0, F) donde todos los componentes son como en los AFDs, excepto la función de transición que se define ahora como:

: Q × V −→P(Q)

Donde P(Q) denota el conjunto de las partes de Q (o conjunto potencia 2Q).

“No determinismo” (condominio P(Q)): a partir del estado actual y del símbolo actual de entrada no se puede determinar de forma exacta cuál será el estado siguiente.

3. Identifique la tabla de transición correspondiente

a b―›Q1 {Q2} {Q3}Q2 {Q2,Q4} 0Q3 {Q2} {Q3}Q4 0 {Q2,Q5}#Q5 {Q2} {Q3}

4. Identifique el lenguaje que reconoce y enuncie cinco posibles cadenas válidas que terminen en el estado “halt”

El lenguaje que reconoce el autómata es:

Page 5: Aporte Janes Saenz

L= {w € {0,1}* │w= (11*1+00*11*1)(01*1)*0}

Cadenas Validas:W= (110110)W= (110)W= (11000111010)W= (1110)W= (0110)

5. Encuentre la expresión regular válida.

Expresión regular: (11*1+00*11*1)(01*1)*0((11*1+00*11*1)(01*1)*0)*

6. Encuentre su gramática que sea válida para la función de transición (describa sus componentes y como se escriben matemáticamente). Justifíquela si la convierte a la Izquierda o a la derecha. Plásmela en el simulador y recréela. (Debe quedar documentado en el texto el paso a paso que realizan en el simulador)

Es una gramática de tipo 3 es decir regular y libre de contexto, donde Sus producciones son de la forma:

Lineal por la derecha:A―›aB o A―›a, donde A,B€∑N , a €∑T

Su gramática está definida así:

G= ({A,B,C,D},{a,b},P,S) siendo P el siguiente conjunto.

S=aBS=bBA=bCA=aAA=aB=bBB=aAB=bC=bDC=aAC=bD=aAD=bBD=b

Page 6: Aporte Janes Saenz

7. Realice el árbol de Derivación de esa gramática

Page 7: Aporte Janes Saenz

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

No es ambigua ya que la gramatica libre de contexto tiene un solo árbol de derivación para una o barias cadenas.

Page 8: Aporte Janes Saenz

9. 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í. (es decir seleccione una cadena válida para este ítem).

Se utilizan la siguiente regla para que se detenga por la rama derecha según la cadena valida

(S―›aB)( B―›aD)( D―›bA))( A―›ʎ)

ACTIVIDADES PARA EL EJERCICIO A MINIMIZAR O YA MINIMIZADO:10. Explicar el proceso de Minimización (que estados se suprimen y porque)

Cuando se detecta que dos estados son equivalentes el proceso a seguir es: Las flechas que salen del estado eliminado se eliminan Las flechas que llegan al estado eliminado son redirigidas al estado equivalente. Definimos el automata e identificamos lo que se va cambiar:

ENTRADA: Un ADF M = (Q,∑,ᵹ,q0,F) con Q={q0…,qn}, ∑={0,1}SALIDA: ADF minimo M n =(Q*,∑*,ᵹ*,q0*,F*)

Eliminar estados inaccesibles de M.En el autómata no hay estado inaccesible ya que todos tienen transiciones de entrada.

Identificar estados distinguiblesEsto es cuando dos estados ya no son compatibles, es decir uno es final y el otro no final, se poder deducir que son distinguibles.

Construccion de la tabla

Page 9: Aporte Janes Saenz

Construir la tabla T con filas desde q1 hasta qn y columnas desde q0 hasta qn-1, con el objetivo de marca los pares del par final y el otro no.

Para este autómata se detecta que el estado q1 y q3 son equivalentes eliminando el estado q3.

11. Que transiciones se reemplazan o resultan equivalentes.

―›Q1 {Q2} {Q3}Q3 {Q2} {Q3}

12. Escribir la función de transición del nuevo autómata. ᵹ = Q x ∑ ―› Q

ᵹ: (q1,a)=(q2) ᵹ: (q1,b)=(q1)ᵹ: (q2,a)=(q2,q4) ᵹ: (q2,b)=ʎᵹ: (q4,a)=(ʎ) ᵹ: (q4,b)=(q2,q5)ᵹ: (q5,a)=(q2) ᵹ: (q5,b)=(q1)

13. Identificar la expresión regular (explicarla en la lectura matemática que se le debe hacer).

(b*aa*a(ba*a)*b(aa*a(ba*a)*b)*b)*b*aa*a(ba*a)*b(aa*a(ba*a)*b)*

14. Compruebe una cadena válida para esa expresión regular.

Page 10: Aporte Janes Saenz

15. Identificar el lenguaje que reconoce y cinco posibles cadenas válidas

L= {w € {0,1}* │w= aa*a(ba*a)*b}

Cadenas validas:

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

Page 11: Aporte Janes Saenz

17. Compare la gramática con el autómata antes de minimizar (ya sea por la izquierda o derecha).

Como se podrá ver por el árbol derivado hacia la derecha, y según sus gramáticas, en la parte derecha se ve la gramática del autómata minimizado y a la izquierda antes de minimizar, cuando se despliega cada una de sus hojas los estados de despliegue en cada una de sus reglas ya son diferentes pero mantienen el mismo lenguaje aceptado.

18. El autómatas nuevo expresarlo o graficarlo con su respectivo diagrama de Moore.

MINIMIZADO

Page 12: Aporte Janes Saenz

19. Identificar sus tablas de Transición (plasmarlas)

a b―›Q1 {Q2} {Q1}Q2 {Q2,Q4} 0Q4 0 {Q2,Q5}#Q5 {Q2} {Q1}

20. Plasmar los pasos de minimización en el simulador (compárelos con el proceso manual que está explicando) y capturar los procesos en imágenes para ser documentadas en el texto.

1 eliminacion del q3 equivalente con el q1 se eliminan todas sus salidas.

En el grafo izquierdo está el autómata antes de minimizar, las flechas azules indican las salidas del estado q3 a eliminar.

Luego de eliminar las salidas de le estado q3 se elimina el estado q3, teniendo en cuenta las entradas que se van redirigir al estado equivalente, es decir q1.

Page 13: Aporte Janes Saenz

En el grafo derecho ya está el autómata minimizado y con las entradas redirigidas como lo indican las flechas rojas, hacia q1.