Automatas 11-03-2016

Post on 09-Jul-2016

215 views 0 download

description

automatas UNAD

Transcript of Automatas 11-03-2016

Problemas a desarrollar:

1. Las expresiones regulares (ER), pueden también escribirse de otras formas o con otra secuencia de operadores o distribución de símbolos. En general es una forma matemática que representa el Lenguaje que genera un Autómata. Y esas expresiones regulares siempre serán válidas siempre y cuando representen exactamente el mismo lenguaje para un Autómata. Concluyendo, para un Autómata, puede haber más de una ER que representa el mismo lenguaje ya sea que esa ER sea minimizada, extensa, equivalente o como se prefiera escribir. Solo que en los diseños óptimos computacionales siempre se buscará la mejor ER (corta o mínima) para efectos de la mejor simulación o para llevarlas a lenguajes de programación en la creación de soluciones computacionales (solucionar problemas - Algoritmos).

Dados los siguientes ítem, Autómatas Finitos Deterministas, Autómatas Finitos no Deterministas, lenguajes y expresiones regulares (ER), encuentre según corresponda:

EJERCICIO AFN/AFND LENGUAJE EXPRESION REGULAR

EJERCICIO 1

AFD

L= {w | w tiene al menos una a y a y tiene al menos una b} sobre {a,b}

(aa*b+bb*a)(a+b)

(bb*a)(a+bb*a)

EJERCICIO 2

AFD

L= {w, comienza por b y tiene al menos una a) sobre {a,b}

EJERCICIO 3

AFD

El lenguaje de las palabras que tiene a abb o bba por subcadena

(aa*b+baa*b)(aa*b)*b+bbb*a(a+b)*

EJERCICIO 4

AFD

L= {w, comienza por b o d y termina en a y c sobre {a,b,c,d,f,g}

((bf*a)*dg*c)*(bf*a)*dg*

(bf*a+dg*c)*

EJERCICIO 5

AFD

L= {w, comienza por a, c o d y termina en d, sobre {a,b,c,d}

(c+ab)*d

2. PARA LA EXPRESION REGULAR : (cb)*ca(ab)*U b(ba)*b U (ab)*a(ba)*b

- Describa la forma matemática del autómata

- Plasme la tabla de transición. Identifique que tipo de autómata es (AFD o AFND) y justifique su respuesta. (No se trata de dar el concepto de determinismo sino de justificarlo asociando la respuesta al diseño del autómata)

Salida Simbolo Llegadaq0 (cb)* q1q0 b q4q0 (ab)* q6q0 c q0q1 c q2q1 b q1q2 a q1q2 (ab)* q3q3 b q3q4 b q4q4 (ba)* q5q5 b q3q6 b q6q6 a q7q7 b q8q8 a q8q8 b q3

Tipo de autómata:

AFN: Pues que por cada transición que tengo llega a un estado y no a varios

- Identifique los elementos (tupla que es) (Asociadas con los elementos del autómata del ejercicio propuesto). Debe explicar y describir cada elemento y la función y significado en el autómata. Conceptos y definiciones adicionales.

Es una 5-tupla (Q, Σ, q0, δ, F)

Q: {q0, q1, q2, q3, q4, q5, q6, q7, q8}

Que es el conjunto de estado que hay dentro del autómata

Σ: {a,b,c}

Es el alfabeto de nuestro autómata

q0: {q0}

Es el estado inicial de nuestro autómata

Δ: (q0 + a)= q0Δ: (q0 + c)= q0Δ: (q0 + b)= q4Δ: (q1 + b)= q1Δ: (q1 + c)= q2Δ: (q2 + a)= q2Δ: (q3 + b)= q3Δ: (q4 + b)= q4Δ: (q5 + a)= q5Δ: (q5 + b)= q3Δ: (q6 + b)= q6Δ: (q6 + a)= q7

Δ: (q7 + b)= q8Δ: (q8 + a)= q8Δ: (q8 + b)= q3

Son funciones de transición F:{q3}

Estado aceptador

- Identifique el lenguaje que genera.L{w/w Se aceptan sucesión de a,b,c terminando en b}

- Muestre en el simulador (gráficamente) como recorre una cadena válida. Explique cada secuencia. (No se trata solo de captura las imágenes, estas deben ser explicadas en pié de página o de lo contrario no tienen validez)

Vamos a trabajar con la cadena de caracteres b(ab)*b

Empezamos en el estado incial q0, donde vamos a ingresar el primer carácter que es b.

Al ingresar b hacemos la transición al estado q4 en el que ingresaremos (ab)* que representa que se ingresan muchas a o muchas b

Hacemos la transición al estado q5 donde ingresamos b y llegamos al estado aceptador.

- Muestre el diagrama de Moore generado en JFLAP y en VAS y comente tres similitudes y tres diferencias que encuentra al realizarlo en los dos simuladores. (herramientas que ofrezca uno u otro).

Similitudes:- La manera de graficar es la misma- Las relaciones son igual- Los estados son iguales

Diferencias:- JLAP tiene un simulador para las gráficas de moore, Vas no- Es mucho más fácil graficas las salidas en JLAP- Vas no exporta el autómata como imagen

- Genere tres cadenas válidas y dos no válidas.Cadenas validas:b(ba)*b(cb)*c(ab)*b(ab)*abbCadenas no validas:b(ba)*abab(ba)*abc

3. Si el autómata inicial (el de la ER4) es un AFD, genere un AFND que reconozca el mismo lenguaje; o por lo contrario si el autómata inicial es un AFND, genere un AFD que reconozca el mismo lenguaje.

- Describa la forma matemática del autómata

- Identifique los elementos (tupla que es) (Asociadas con los elementos del autómata del ejercicio propuesto)Es una 5-tupla (Q, Σ, q0, δ, F)

Q: {q0, q1, q2, q3}

Que es el conjunto de estado que hay dentro del autómata

Σ: {a,b,c}

Es el alfabeto de nuestro autómata

q0: {q0}

Es el estado inicial de nuestro autómata

Δ: (q0 + b)= q0Δ: (q0 + c)= q0Δ: (q0 + a)= q1Δ: (q1 + a)= q1Δ: (q1 + b)= q1Δ: (q1 + c)= q2Δ: (q0 + a)= q2Δ: (q0 + c)= q2Δ: (q0 + b)= q3Δ: (q0 + a)= q2Δ: (q0 + c)= q2Δ: (q0 + b)= q3

Son funciones de transición F:{q3}

Estado aceptador

- Muestre en el simulador (gráficamente) como recorre una cadena válida. Explique cada secuencia. (No se trata solo de captura las imágenes, estas deben ser explicadas en pié de página o de lo contrario no tienen validez) 4. Muestre el diagrama de Moore generado en JFLAP

Comenzamos en el estado inicial donde vemos la cadena que ingresamos al principio, el primer carácter es b

Ingresamos la b y seguimos en el estado inicial, ingreso una a que es un carácter valido para pasar al siguiente estado

Ya estamos en el estado q1 donde vamos a ingresar a

Quedamos en el mismo estado, puesto que no es un carácter que permite pasar al siguiente estado

Ingresamos c y vemos como pasamos al estado q2

Ingresamos c y vemos que seguimos en el mismo estado q2

Ingresamos b y llegamos al estado aceptador pero todavía no se ha terminado la cadena, con lo que continuamos hasta terminarla para determinar si es válida o no

Ingresamos a y volvemos al estado q2, nos falta todavía un carácter por ingresar

Ingresamos b y volvemos al estado aceptador, donde nos damos cuenta que es una cadena valida, puesto que ha cumplido con la condición

- Muestre el diagrama de Moore generado en JFLAP y en VAS

- Identifique la ER asociada al nuevo diseño y compárela con la expresión regular simplificada (es decir analícelas con dos cadenas válidas y con dos no válidas). Para ello debe identificar en una tabla la jerarquía de operadores regulares, identificando con colores las sentencias matemáticas. Para ello apóyese en el video: http://youtu.be/JZPAHHA2PnE (minuto 14 al 33). O en el video http://youtu.be/wGTxhnPXcw4