Sie sind auf Seite 1von 5

Febrero 2008

U.R.J.C. Ingeniera Tecnica en Informatica de Sistemas


Teor

a de Aut

omatas y Lenguajes Formales


1er. Parcial
Normas :
La duracion del examen es de 2 horas.
Todos los ejercicios se entregaran en hojas separadas.
El examen tipo test cuenta hasta 2 puntos sobre la nota total.
1. (a) (1.5 puntos) Obten una gramatica formal que genere el siguiente lenguaje:
L = {w|w {a, b}

y n
a
(w) n
b
(w)}.
Solucion:
Una posible solucion podra ser la siguiente:
G = ({S, A, B}, {a, b}, S, P) con P = {S ::= bAS|, bA ::= Ab, Ab ::=
bA, A ::= aA|a}
(b) (0.75 puntos) Dada la siguiente gramatica:
G = ({S, C, B, D, T}, {a, b}, S, P) ,
donde P son las producciones siguientes :
S ::= CaDT D ::= aBD |
aB ::= Ba CB ::= bbC
aT ::= Ta CT ::=
Dene el lenguaje L(G) en notacion conjuntista.
Solucion:
La solucion es la siguiente: L = {b
m
a
n
|m = 2(n 1) y n 1}.
2. (2.25 puntos) Demuestra que el lenguaje reconocido por el automata nito A
det
es
el mismo que el lenguaje generado por la gramatica G
gld
. Todos los pasos para la
resolucion del ejercicio tienen que estar justicados utilizando algoritmos vistos en
clase. No es obligatorio, pero s conveniente, dar una peque na explicacion de que se
hace y porque se hace.
A
det
= ({0, 1}, {p, q, r, s}, f
det
, p, {p, r}) G
gld
= ({S, A, B, C}, {0, 1}, S, P})
f
det
0 1
*p q p
q r p
*r q s
s q p
P = { S ::=0A | 1S |
A ::=0B | 1C | 1 | 0
B ::=0A | 1C
C ::=0A | 1S
}
Pagina 1 de 5
Examen Teora de Automatas y Lenguajes Formales - 1er. Parcial (cont.)
Solucion:
Como los dos elementos dados reconocen lenguajes regulares (uno es un AFD y el
otro es una GLD), procederemos a comprobar los automatas mnimos equivalentes
de cada uno de ellos. Si los automatas mnimos son isomorfos, entonces ambos
elementos reconocen el mismo lenguaje.
El automata dado es nito determinista, por lo tanto, procederemos a minimizarlo
para obtener el automata nito determinista mnimo (y unico) que reconoce ese
lenguaje.
Q/E
0
= {{p, r}, {q, s}}
Q/E
1
= {{p}, {r}, {q}, {s}}
Q/E
2
= {{p}, {r}, {q}, {s}} = Q/E
1
= Q/E
Como podemos comprobar, este automata ya es mnimo.
Ahora, obtendremos un AFND a partir de la GLD que nos dan. Para ello, apli-
caremos el algoritmo especicado en los apuntes. El AFND resultante es:
A
GLD
= ({0, 1}, {S, A, B, C, D}, f
GLD
, S, {D})
f
GLD
0 1
S {A} {S} {D}
A {B,D} {C,D}
B {A} {C}
C {A} {S}
*D
Ahora, obtendremos un automata nito determinista. Para ello, partimos de la
clausura

(S) = {S, D}.


f
GLDdet
0 1
*{S,D} {A} {S,D}
{A} {B,D} {C,D}
*{B,D} {A} {C}
*{C,D} {A} {S,D}
{C} {A} {S,D}
Si renombramos, nos queda:
A
GLDdet
= ({0, 1}, {A, B, C, D, E}, f
GLDdet
, A, {A, C, D})
f
GLDdet
0 1
*A B A
B C D
*C B E
*D B A
E B A
Pagina 2 de 5
Examen Teora de Automatas y Lenguajes Formales - 1er. Parcial (cont.)
Hallaremos el automata mnimo equivalente:
Q/E
0
= {{A, C, D}, {B, E}}
Q/E
1
= {{A, D}, {C}, {B}, {E}}
Q/E
2
= {{A, D}

A
, {C}

C
, {B}

B
, {E}

E
} = Q/E
1
= Q/E
Despues de renombrar, su tabla de transiciones queda de la siguiente manera:
A
GLDdetmin
= ({0, 1}, {A, B, C, E}, f
GLDdetmin
, A, {A, C})
f
GLDdetmin
0 1
*A B A
B C A
*C B E
E B A
Ahora, comparamos las tablas de transicion de los dos automatas mnimos:
f
det
0 1
*p q p
q r p
*r q s
s q p
f
GLDdetmin
0 1
*A B A
B C A
*C B E
E B A
Como podemos comprobar, los automatas mnimos A
det
y A
GLDdetmin
son isomor-
fos, por lo tanto, hemos demostrado que la gramatica regular y el automata nito
dados en el enunciado generan el mismo lenguaje.
3. (2 puntos) Sea = {a, b, c} un alfabeto nito, y sea L

el lenguaje dado por la


siguiente igualdad :
L = {w

| n
a
(w) +n
b
(w) > 3 + 2n
a
(w)}.
Demuestra que L no es un lenguaje regular.
Solucion:
Cabe observar que el lenguaje L se puede redenir de la siguiente forma:
L = {w

| n
b
(w) > 3 +n
a
(w)}.
Para demostrar que L no es regular basta demostrar que no cumple el lema de
bombeo. Para ello se va a demostrar que para cualquier constante n existe una
Pagina 3 de 5
Examen Teora de Automatas y Lenguajes Formales - 1er. Parcial (cont.)
palabra x L con |x| n que no se puede dividir de forma u.v.w con |u.v| n,
|v| > 0 y tal que u.v
i
.w L para i = 0, 1, 2, ....
Sea n la constante del lema. Elegimos la palabra x = a
n
b
n+4
. Es obvio que x L
y |x| = 2n + 4 n.
Intentamos dividir x de forma u.v.w tal que |u.v| n y |v| > 0. La unica forma
posible es la siguiente:
x = a
n
b
n+4
= a
k
.a
l
.a
m
b
n+4
= u.v.w con k +l +m = n y l > 0.
Para cumplir el lema de bombeo, la palabra u.v
2
.w, es decir, a
k
.a
2l
.a
m
b
n+4
=
a
n+l
b
n+4
con l > 0 debe pertenecer a L. Sin embargo, esta palabra no puede
pertenecer al lenguaje ya que no puede tener un mnimo de 4 bs mas que as,
como exije la denicion del lenguaje (por l > 0). Por tanto el lenguaje no cumple
el lema de bombeo y no es regular.
4. (1.5 puntos) Obten, siguiendo el metodo de las ecuaciones caractersticas,
una expresion regular equivalente al siguiente automata nito :
q
0
q
1
q
2
q
3
q
4
q
5
a, b
b
a
b
a
a
b
a
Solucion:
Las ecuaciones caractersticas son las siguientes:
x
0
= (a +b)x
1
x
1
= ax
4
+bx
2
+
x
2
= ax
0
+ax
3
x
3
= ax
3
+bx
0
x
4
= bx
5
x
5
=
Resolvemos las ecuaciones para hallar x
0
:
x
4
= b =
Pagina 4 de 5
Examen Teora de Automatas y Lenguajes Formales - 1er. Parcial (cont.)
x
3
= a bx
0
x
2
= ax
0
+a bx
0
x
1
= a +b(ax
0
+a bx
0
) + = bax
0
+ba bx
0
+
x
0
= (a +b)(bax
0
+ba bx
0
+) = (a +b)bax
0
+ (a +b)ba bx
0
+ (a +b)
x
0
= (a +b)(ba +ba b)x
0
+ (a +b) = ((a +b)(ba +ba b)) (a +b)
Esta expresion regular describe el lenguaje aceptado por el automata.
Pagina 5 de 5

Das könnte Ihnen auch gefallen