You are on page 1of 15

Cdigo asignatura

Nombre asignatura

71901089

Autmatas, Gramticas y Lenguajes

Fecha alta y origen


20/05/2015
Curso Virtual

Convocatoria

Septiembre 2014

Soluciones a los exmenes de Septiembre


2014
Autmatas, Gramticas y Lenguajes
(1 curso)
Grado en Ingeniera Informtica y Grado en Ingeniera de las
Tecnologas de la Informacin

Elena Gaudioso Vzquez y Flix Hernndez del Olmo

Plantillas de respuestas
Nacional Original
Tipo A:
1. (b) 2. (d) 3. (a) 4. (a) 5. (a) 6. (a) 7. (a) 8. (d) 9. (d) 10. (d)
Tipo B:
1. (b) 2. (d) 3. (a) 4. (d) 5. (a) 6. (a) 7. (a) 8. (d) 9. (d) 10. (a)
Tipo C:
1. (a) 2. (d) 3. (a) 4. (b) 5. (a) 6. (d) 7. (a) 8. (d) 9. (a) 10. (d)
Nacional Reserva
Tipo A:
1. (c) 2. (a) 3. (d) 4. (a) 5. (a) 6. (c) 7. (c) 8. (c) 9. (a) 10. (a)
Tipo B:
1. (c) 2. (a) 3. (c) 4. (c) 5. (d) 6. (a) 7. (a) 8. (a) 9. (a) 10. (c)
Tipo C:
1. (c) 2. (a) 3. (d) 4. (c) 5. (a) 6. (c) 7. (a) 8. (a) 9. (c) 10. (a)

Nacional Original
1 Considere L el lenguaje que acepta el siguiente autmata:

a
p

b
Indicar cul de las siguientes afirmaciones es VERDADERA:
(a). El lenguaje L puede expresarse mediante la expresin regular (a b)
(b). El lenguaje L puede expresarse mediante la expresin regular (a b )
(c). El lenguaje L puede expresarse mediante la expresin regular (a b)(a b)
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. El autmata slo llega al estado de aceptacin cuando lee o bien una sla a o
bien una sla b. La opcin B es falsa puesto que esa expresin regular genera cadenas de
cero o ms as y cadenas de cero o ms bs. La opcin C es falsa porque esa expresin
regular genera cadenas de uno o ms as seguidas de una o ms bs
2 Considere L el lenguaje que acepta el siguiente autmata:
b

b
a

q
a

Indicar cul de las siguientes afirmaciones es VERDADERA:


(a). L puede generarse mediante la siguiente gramtica con smbolo inicial S:
S |bS|aA; A aS|bA
2

(b). L puede generarse mediante la siguiente gramtica con smbolo inicial S:


S |bS|aA; A aS|bA|
(c). L puede generarse mediante la siguiente gramtica con smbolo inicial S:
S bS|aA; A aS|bA|
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. El autmata y la gramtica de la opcin A son equivalentes (es fcil construir
el autmata a partir de la gramtica siguiendo el mtodo expuesto en los apuntes de
gramticas regulares). La opcin B es falsa puesto que la gramtica genera cadenas que no
estn incluidas en L, como por ejemplo la cadena a. Por la misma razn la opcin C es falsa
(por ejemplo, la gramtica genera la cadena a que no est en L y adems no genera cadenas
que s estn en L como por ejemplo la cadena b).
3 Dado el alfabeto de entrada = {x, y, z}, considere L el lenguaje reconocido por el
siguiente autmata a pila (Nota: El conjunto de smbolos de pila es = {Z 0 } y se
supone que inicialmente la pila se encuentra vaca. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es . En estos casos se considera
que el autmata ejecuta esta transicin teniendo en cuenta nicamente el smbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningn elemento de la pila.):
x, ; x
p

, ; Z0

y, x; 
z, ; 

z, Z0 ; 

Indicar cul de las siguientes afirmaciones es VERDADERA:


(a). No importa ni el nmero ni el orden en que los smbolos z aparezcan en la cadena de
entrada
(b). El autmata a pila SLO comprueba que haya dos smbolos z en las cadenas del
lenguaje
(c). El autmata a pila es no determinista
(d). Ninguna de las anteriores afirmaciones es verdadera
3

Solucin: D. El autmata reconoce el lenguaje L = {xn zy n z;n 0} que es un lenguaje


independiente del contexto no regular. El autmata es determinista y por tanto la opcin C
es falsa. El autmata comprueba que haya exactamente dos zs en las cadenas del lenguaje,
la primera despus de las xs y la segunda despus de las ys. Por tanto, importa tanto el
nmero como la posicin de los smbolos z y, por consiguiente; las opciones A y B son
falsas.
4 Sea L el lenguaje que genera la gramtica G definida de la siguiente forma:
G = ({S, A}, {x, y, z}, R, S)
donde R es el conjunto de producciones de la gramtica y est compuesto por:
S xSz
Sz
S yAz
A yAz
Az
Indicar cul de las siguientes afirmaciones es VERDADERA:
(a). L = {xn y n z n : n 0}
(b). L = {xn y n z m : n, m 0}
(c). L = {xn y m z m : n, m 0}
(d). L = {xn y m z p |n + m = p 1}
Solucin: D. La opcin A es falsa, ya que la gramtica es independiente del contexto y el
lenguaje de esta opcin es recursivamente enumerable no independiente del contexto (la
gramtica puede generar cadenas con distinto nmero de xs, ys y zs). La opcin B es
falsa, ya que la gramtica del enunciado puede generar cadenas con distinto nmero de xs
e ys (por ejemplo, la gramtica genera la cadena xyyzzzz que no est contenida en el
lenguaje de esta opcin). Por igual motivo, la opcin C es falsa, basta con comprobar, por
ejemplo, que la cadena xyzzz puede generarse con la gramtica pero no pertenece al
lenguaje de la opcin.
4

5 Considere la siguiente mquina de Turing:


M = ({q0 , q1 , q2 , q3 , q4 }, {0, 1}, {0, 1, X, Y, B}, , q0, B, {q4 })
donde se define mediante la siguiente tabla de transiciones:
Smbolo
Estado 0
1
X
Y
B
q0
(q1 , X, R) (q3 , Y, R) (q1 , 0, R) (q2 , Y, L) (q1 , Y, R) q1
q2
(q2 , 0, L) (q0 , X, R) (q2 , Y, L) q3
(q3 , Y, R) (q4 , B, R)
q4
Considere L el lenguaje que acepta esta mquina de Turing. Suponga que en la entrada se
tiene la cadena 000111. Indicar cul de las siguientes afirmaciones es VERDADERA:
(a). La mquina de Turing no se parar si recibe de la entrada la cadena 000111 puesto
que no pertenece a L
(b). Si se ejecuta la mquina de Turing con la cadena 000111, la configuracin de salida
sera XXXY Y Y Bq4 B
(c). Si se ejecuta la mquina de Turing con la cadena 000111, la configuracin de salida
sera q4 XXXY Y Y
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: B. El lenguaje que acepta la mquina de Turing es L = {xn y n : n > 0}. Por
tanto, la opcin A es falsa ya que la cadena, 000111 s pertenece al lenguaje. Basta hacer
ejecutar la mquina con la cadena de entrada para comprobar que la opcin C es falsa y la B
es verdadera.
6 Supongamos que L es un lenguaje que no puede ser reconocido por ninguna mquina de
Turing determinista. Indicar cul de las siguientes afirmaciones es VERDADERA:
(a). Es posible encontrar una mquina de Turing no determinista que acepte L
(b). Es posible encontrar una mquina de Turing de varias cintas que acepte L
(c). Es posible encontrar un autmata a pila no determinista que acepte L
(d). Ninguna de las anteriores afirmaciones es verdadera
5

Solucin: D. Las mquinas de Turing deterministas, no deterministas y con varias cintas


son equivalentes en cuanto a reconocimiento de lenguajes. Adems, si L no puede ser
reconocido por una mquina de Turing, menos lo ser por un autmata a pila que son
menos potentes. Por tanto, todas las afirmaciones son falsas.
7 Dado el alfabeto de entrada = {x, y, z}, considere L el lenguaje reconocido por el
siguiente autmata a pila (Nota: El conjunto de smbolos de pila es = {a, Z 0 } y se
supone que inicialmente la pila se encuentra vaca. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es . En estos casos se considera
que el autmata ejecuta esta transicin teniendo en cuenta nicamente el smbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningn elemento de la pila.):
x, ; a
p

, ; Z0

y, ; 
y, ; 

z, Z0 ; 

Indicar cul de las siguientes afirmaciones es VERDADERA:


(a). L = {xn y n z, n > 0}
(b). L = {z}
(c). L =
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: D. El lenguaje que reconoce el autmata es L = {y n z; n 1}. L no puede
contener cadenas con xs ya que, al leer las xs , el autmata introduce un smbolo a en la
pila, que no se extrae posteriormente en ninguna transicin. Adems, slo se llega al estado
de aceptacin si se lee un smbolo z de la entrada y en la cima de la pila se encuentra un
smbolo Z0 . El nmero de smbolos y que contenga la cadena no importa , siempre que al
menos, haya una y. Por ltimo, todas las ys deben encontrarse delante del nico smbolo z
que debe contener la cadena.
8 Sea L un lenguaje regular del alfabeto y L2 el lenguaje formado por todas las cadenas
wv tales que w L y v L. Indicar cul de las siguientes afirmaciones es
VERDADERA:
6

(a). L2 es siempre regular


(b). Dependiendo de L, L2 puede ser regular o no
(c). L2 nunca puede ser regular
(d). L2 es siempre independiente del contexto no regular
Solucin: A. L2 es la concatenacin de dos lenguajes regulares L y L. L es
regular porque es el complementario de un lenguaje regular.
9 Dado el siguiente autmata M:

x
p

x
r
y

Considere L el lenguaje que acepta M. Indicar cul de las siguientes afirmaciones es


VERDADERA:
(a). L puede expresarse mediante la expresin regular (x y)xy
(b). M es un autmata finito no determinista
(c). No es posible encontrar una gramtica en Forma Normal de Chomsky que genere L
(d). L puede expresarse mediante la expresin regular x y xy
Solucin: A. La opcin B es falsa puesto que el autmata del enunciado es determinista. La
opcin C es falsa puesto que si M es un autmata finito entonces el lenguaje que genera es
regular y por consiguiente, tambin es independiente del contexto. Como L no contiene a la
cadena vaca entonces, siempre es posible encontrar una gramtica en Forma Normal de
Chomsky que genere L. La opcin D es falsa puesto que la expresin regular genera
cadenas de cero o ms xs seguidas por cero o ms ys y terminadas en la subcadena xy. Por
tanto, esa expresin regular no genera, por ejemplo, la cadena xyxyxy, que si acepta el
autmata M. La expresin regular de la opcin A genera cadenas con cualquier
combinacin de xs e ys que terminen en la subcadena xy, que son las cadenas que acepta
el autmata.
7

10 Considere L, el lenguaje reconocido por el siguiente autmata:

s
b

Indicar cul de las siguientes afirmaciones es VERDADERA:


(a). L puede expresarse mediante la expresin regular a(bc) bc
(b). L puede expresarse mediante la expresin regular abc(cb)
(c). L es independiente del contexto no regular
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. La opcin B es falsa puesto esta expresin regular genera, por ejemplo, la
cadena abccb que no acepta el autmata. La opcin C es falsa, ya que el autmata del
enunciado es un autmata finito y por tanto, el lenguaje que reconoce siempre es regular. La
opcin A es verdadera ya que todas las cadenas que genera la expresin regular pertenecen
al lenguaje que acepta el autmata y viceversa.

Nacional Reserva
11 Dado el lenguaje L = {xn y n : 0 n 5}, indicar cul de las siguientes afirmaciones es
VERDADERA:
(a). L es regular
(b). L es independiente del contexto determinista no regular, a pesar de que el nmero n
de xs e ys est acotado
(c). L es independiente del contexto no determinista y no regular, a pesar de que el
nmero n de xs e ys est acotado
(d). L es recursivamente enumerable y no independiente del contexto
8

Solucin: A. Al estar n acotado, se puede controlar mediante estados que el nmero de xs


e ys coincida. Por tanto, es suficiente un autmata finito para reconocer L y sera, por tanto,
un lenguaje regular.
12 Dado el alfabeto = {x, y}, considere L el lenguaje formado por las cadenas de
longitud mayor o igual que 1, que tienen un nmero impar de x. Indicar cul de las
siguientes afirmaciones es FALSA:
(a). Existe una gramtica en Forma Normal de Chomsky que genera L
(b). L es regular
(c). L es independiente del contexto determinista
(d). No existe un autmata finito determinista que genere L
Solucin: D. Las opciones B y C son verdaderas ya que L es regular y por tanto, tambin es
independiente del contexto determinista. La opcin A es verdadera ya que L no contiene a
la cadena vaca (porque las cadenas deben tener una longitud mayor o igual que 1). La
opcin D es falsa porque si L es regular entonces podemos encontrar un autmata finito
determinista que lo reconozca.
13 Dado el lenguaje L = {xn zy n z: n 0}, indicar cul de las siguientes afirmaciones es
VERDADERA:
(a). Existe una gramtica en Forma Normal de Chomsky que genera el lenguaje L
(b). No existe un autmata a pila determinista que acepte el lenguaje L
(c). Si definimos L1 = {xn y n : n 0} entonces L L1
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. L es un lenguaje independiente del contexto no regular que no contiene a la
cadena vaca, existe por tanto, una gramtica en Forma Normal de Chomsky que lo genera.
La opcin B es falsa (mirar ejercicio nmero 3). La opcin C es falsa, ya que las cadenas de
L deben contener una z despus de las xs y una z despus de las ys. En cambio, las
cadenas de L1 no deben contener ninguna z y por tanto, L L1 = .
14 Dado el lenguaje L = {xn y n : n 0} {xn y 2n : n 0}, indicar cul de las siguientes
afirmaciones es VERDADERA:
9

(a). L es regular
(b). L es independiente del contexto determinista no regular
(c). L es independiente del contexto no determinista no regular
(d). L es recursivamente enumerable no independiente del contexto
Solucin: C. L no es regular, necesitamos una pila para comprobar que se leen o bien el
mismo nmero de xs que de ys o bien se leen el doble nmero de ys que de xs. Es no
determinista, ya que al leer un nmero arbitrariamente grande de xs, no sabemos si se
deben reconocer el doble nmero de ys o el mismo nmero de ys (se abriran por tanto,
dos caminos en el autmata que reconociera el lenguaje).
15 Considere el lenguaje definido como L = {ww R w|w es una cadena de ceros y unos}. Es
decir, el conjunto de cadenas formadas por alguna cadena w, concatenada con la misma
cadena en orden inverso (esto es, w R ) y concatenada, de nuevo, con la cadena w. Indicar
cul de las siguientes afirmaciones es VERDADERA:
(a). L es regular
(b). L es independiente del contexto no regular
(c). L es recursivamente enumerable no independiente del contexto
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: C. La opcin A es falsa ya que se necesita guardar los smbolos que se van
leyendo de la entrada para comprobar que a continuacin se leen los mismos smbolos en
sentido inverso. No obstante, una pila no es suficiente para volver a comprobar que se lee la
cadena inicial. Es por ello que se necesita una mquina de Turing para reconocer el lenguaje
L.
16 Dada la siguiente mquina de Turing:
M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, , q0, B, {qf })
donde la funcin de transicin se define:
(q0 , 0) = (q1 , 1, R); (q1 , 1) = (q2 , 0, R); (q2, 1) = (q0 , 1, R); (q1 , B) = (qf , B, R)
10

Considere L el lenguaje que reconoce M. Indicar cul de las siguientes afirmaciones es


VERDADERA:
(a). L puede expresarse mediante la expresin regular 0(110)
(b). L es independiente del contexto no regular
(c). L puede expresarse mediante la expresin regular (110)0
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. Puesto que la mquina de Turing slo hace movimientos hacia la derecha, se
comprueba que las cadenas que acepta deben comenzar por cero y estar seguidas de cero o
ms veces del patrn 110.
17 Considere la siguiente gramtica independiente del contexto G definida de la siguiente
forma:
G = ({S}, {a, b}, R, S)
donde R es el conjunto de producciones de la gramtica y est compuesto por:
S aSbS
S bSaS
S
Sea L el lenguaje que genera G. Indicar cul de las siguientes afirmaciones es
VERDADERA:
(a). Las cadenas de L tienen el mismo nmero de as que de bs
(b). Todas las cadenas de L contienen la subcadena ab o ba
(c). En todas las cadenas de L los smbolos a preceden a los smbolos b
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: A. Las cadenas que se generan del smbolo no terminal S, tienen el mismo
nmero de as que de bs puesto que siempre que se introduce uno se introduce tambin el
otro. La opcin B es falsa puesto que la cadena vaca, que puede ser generada por la
gramtica, no contiene ese patrn. La opcin C es falsa ya que, por ejemplo, la cadena ba
pertenece a L.
11

18 Dado el alfabeto de entrada = {x, y, z}, considere L el lenguaje reconocido por el


siguiente autmata a pila (Nota: El conjunto de smbolos de pila es = {a, Z 0 } y se
supone que inicialmente la pila se encuentra vaca. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es . En estos casos se considera
que el autmata ejecuta esta transicin teniendo en cuenta nicamente el smbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningn elemento de la pila.):
x, ; a
p

, ; Z0

y, a; 
Etiqueta

, Z0 ; 

Indicar qu valor debe tener Etiqueta para que se cumpla que L = {xn zy n ; n > 0}
(a). Etiqueta = z, a; 
(b). Etiqueta = z, ; a
(c). Etiqueta = z, ; 
(d). Ninguna de las anteriores afirmaciones es verdadera
Solucin: C. El autmata comprueba que lee el mismo nmero de smbolos x e ys
introduciendo y extrayendo smbolos a de la pila, y acepta cuando encuentra el smbolo Z 0
en la cima de la pila. Por tanto, para leer un smbolo z entre las x s y las ys, debemos
introducir una transicin que lea dicho smbolo pero que no introduzca nada en la pila. La
opcin A es falsa puesto que si extraemos un smbolo a de la pila al leer la z de la entrada,
entonces deberemos leer una y menos que las xs, para llegar al estado de aceptacin con la
pila vaca. Por el contrario, la opcin C es falsa, porque si introducimos un smbolo a,
entonces deberemos leer una y ms que el nmero de xs para poder vaciar la pila.
19 Dado un determinado alfabeto, sea L un lenguaje construido sobre . Indicar cul de
las siguientes afirmaciones es FALSA:
(a). Si L es regular, todo subconjunto de L es regular
(b). Si L es regular, el complementario de L es regular
12

(c). Si L contiene un nmero finito de cadenas, entonces L es regular


(d). Si el complementario de L tiene un nmero finito de cadenas, entonces L es regular
Solucin: A. La opcin A es falsa puesto que no todo subconjunto de un lenguaje regular
debe ser regular. Por ejemplo, el lenguaje L = {xn y n ; n 0} es un lenguaje independiente
del contexto no regular y L , donde es un lenguaje regular. El resto de opciones son
verdaderas por las propias propiedades de los lenguajes regulares.
20 Dado el alfabeto = {a, b, c}, considere las siguientes expresiones regulares:
E1 = b (a + c) a
E2 = b a(a + c) a + a
E3 = b a(a + c) a + b c a
Indicar cul de las siguientes afirmaciones es VERDADERA:
(a). Las tres expresiones regulares E1, E2 y E3 representan el mismo lenguaje
(b). Slo las expresiones E2 y E3 representan el mismo lenguaje
(c). E1, E2 y E3 no son equivalentes, esto es cada una representa un lenguaje diferente
(d). Slo las expresiones E1 y E2 representan el mismo lenguaje
Solucin: C. La opcin B es falsa. Por ejemplo, la cadena bca no pertenece a E2 pero si a
E3. Por la misma razn, la opcin A es falsa. La opcin D es falsa puesto que la cadena ba
pertenece a E1 pero no pertenece a E2. E1 no es equivalente a E3 puesto que la cadena
bcaaa pertenece a E1 pero no a E3.

13

You might also like