Está en la página 1de 2

TEORÍA DE AUTÓMATAS Y COMPILADORES 2019-II

I EXAMEN PARCIAL

1. Di si son verdad o no las siguientes afirmaciones: (Justifique sus respuestas)

a) L(b*a*) ∩ L( a*b*) = L(a* ∪ b*)


b) abcd ∈ L((a(cd)*b)*)
c) Las expresiones regulares α=ε y β=( ε ∪ Ø)* son equivalentes.
2. Una puerta blindada dispone de una única cerradura. Para abrirla es necesario

hacer girar en ella tres llaves diferentes (denominadas a, b y c), en un orden


predeterminado, que se describe a continuación:
• Llave a, seguida de llave b, seguida de llave c, o bien
• Llave b, seguida de llave a, seguida de llave c.
Si no se respeta este orden, la puerta se bloquea, y es imposible su apertura; por
ejemplo, si se hace girar la llave a, se retira la misma, se introduce de nuevo y se
hace girar.
Una vez abierta la puerta, la introducción de las llaves en su cerradura, en
cualquier orden, no afecta al mecanismo de cierre (la puerta permanece abierta).
Considérese que las denominaciones de las llaves son símbolos de un alfabeto,
sobre el que define el lenguaje L cuyas palabras son las secuencias permitidas de
apertura de la puerta. Por ejemplo, abcbc es una palabra del referido lenguaje.
Se pide:
a) Diseño del autómata AF finito que acepta L.
b) Gramática (limpia y bien formada) que genera las palabras de L.

3. Dada las ERs que representa a un lenguaje regular, construir un AFD que

acepte ese lenguaje regular.


 (b•a*)*
 a(aa + b)*
 b((aab* ∪ a4)b)*a
 (a+b*a+b*)+

4. Definir expresiones regulares y construir su AFD para los siguientes lenguajes sobre el
alfabeto {0,1,2}:

a) Palabras que tienen longitud múltiplo de 5 ó 3.


b) Palabras que contienen un número de 2's, de 1's ó de 0's múltiplo de 3.
5. Construye AFDs que acepten cada uno de los siguientes lenguajes definidos sobre el
alfabeto
∑ = {a,b}:

a) L = { x ∈ ∑* : x no contiene ningún prefijo en el que la diferencia entre


el número de a's y b's sea mayor que tres (a favor de cualquiera de ellos) }

6. Construye AFD's equivalentes a los siguientes AFND's:


a ) ({ q0, q1, q2, q3 }, { 0 , 1 }, 2, q0, { q1,q3 } )

δ2 0 1
q0 q1,q3 q1
q1 q2 q1,q2
q2 q3 q0
q3 - q0

7. Construye AFD's equivalentes a los siguientes є-AFND's: