Вы находитесь на странице: 1из 157

Soluciones a los exámenes de Septiembre

2016
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Félix Hernández del Olmo


Plantillas de respuestas
Original

• Tipo A:
1. (c) 2. (a) 3. (a) 4. (b) 5. (b) 6. (a) 7. (d) 8. (d) 9. (c) 10. (a)
• Tipo B:
1. (c) 2. (a) 3. (d) 4. (d) 5. (a) 6. (b) 7. (b) 8. (c) 9. (a) 10. (a)
• Tipo C:
1. (a) 2. (c) 3. (a) 4. (c) 5. (b) 6. (d) 7. (b) 8. (a) 9. (d) 10. (a)

Reserva

• Tipo A:
1. (d) 2. (d) 3. (d) 4. (a) 5. (d) 6. (a) 7. (a) 8. (d) 9. (c) 10. (a)
• Tipo B:
1. (d) 2. (d) 3. (a) 4. (d) 5. (d) 6. (d) 7. (a) 8. (c) 9. (a) 10. (a)
• Tipo C:
1. (a) 2. (c) 3. (d) 4. (d) 5. (d) 6. (d) 7. (a) 8. (a) 9. (a) 10. (d)

1
Original
1 Dada la siguiente gramática G = ({S, A, B}, {a, b}, S, P ) con símbolo inicial S
y donde P es el siguiente conjunto de producciones:

S → AabB
A → aA|bA|ǫ
B → Bab|Bb|ab|b

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L(G) es un lenguaje independiente del contexto no regular.

(b). L(G) puede representarse mediante la expresión regular


(a + b)∗ ab(ab + b)(ab + b)∗

(c). No existe una gramática en Forma Normal de Chomsky que genere L(G).

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: B: El no terminal A genera cadenas de a’s y b’s incluida la cadena vacía. El no


terminal B genera cadenas de b’s y ab’s (al menos una b o la subcadena ab). Las cadenas
generadas por la gramática coinciden con las que se generan con la expresión regular de la
opción (b). La opción (a) es falsa puesto que L(G) es regular. La opción (c) es falsa puesto
que ǫ ∈
/ L(G) y, por tanto, es posible encontrar una gramática en Forma Normal de
Chomsky.

2 Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Para cada autómata finito no determinista M existe una gramática en Forma Normal
de Chomsky que genera el lenguaje L(M ), siempre que éste no contenga la cadena
vacía.

(b). Para todo autómata de pila determinista M que vacía su pila antes de aceptar una
cadena existe una gramática regular que genera el lenguaje L(M ).

(c). Las máquinas de Turing no deterministas son más potentes que las Máquinas de
Turing deterministas.

(d). Ninguna de las anteriores afirmaciones es verdadera.

2
Solución: A: Para todo lenguaje independiente del contexto que no contenga la cadena
vacía puede definirse una gramática en Forma Normal de Chomsky. Como todo lenguaje
regular es, a su vez, independiente del contexto, la opción (a) es verdadera. La opción (b) es
falsa puesto que, existen lenguajes independientes del contexto deterministas cuyo
autómata a pila vacía su pila pero que no son regulares (por ejemplo, {xn y n }). La opción
(c) es falsa, puesto que el no determinismo no amplía el poder de reconocimiento de las
máquinas de Turing.

3 Dado el alfabeto Σ = {0, 1}, considere L1 el lenguaje formado por todas las cadenas
con el mismo número de 0’s que de 1’s (incluida la cadena vacía). Sea L2 el lenguaje que
reconoce la siguiente máquina de Turing:
M = ({q0 , q1 , q2 , q3 , qf }, {0, 1}, {0, 1, B, X, Y }, δ, q0 , B, {qf })
donde la función de transición δ se define mediante la siguiente tabla de transiciones
(NOTA: los símbolos R y L representan un movimiento a la derecha y a la izquierda
respectivamente en la cinta de entrada de la cabeza de lectura/escritura de la máquina):

Estado 0 1 B X Y
q0 (q2 , X, R) (q1 , X, R) (qf , B, R) - (q0 , Y, R)
q1 (q3 , Y, L) (q1 , 1, R) - - (q1 , Y, R)
q2 (q2 , 0, R) (q3 , Y, L) - - (q2 , Y, R)
q3 (q3 , 0, L) (q3 , 1, L) - (q0 , X, R) (q3 , Y, L)
qf - - - - -

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L1 = L2
(b). L1 6= L2
(c). L1 ⊂ L2
(d). L2 ⊂ L1

Solución: A: La máquina de Turing del enunciado es similar a la de la Figura 8.9 del


ejemplo 8.2 del libro base. En esta ocasión, la máquina de Turing va marcando los símbolos
que va equiparando (0’s con 1’s o viceversa) sin necesidad de que primero se encuentren los
ceros y después los 1’s.

4 Dado el alfabeto Σ = {x, y, z}, sea el lenguaje L = {xn y n z n : con n > 0, }.


Indicar cuál de las siguientes afirmaciones es verdadera:

3
(a). L es un lenguaje regular.

(b). L es un lenguaje independiente del contexto determinista no regular.

(c). L es un lenguaje independiente del contexto no determinista no regular.

(d). L es un lenguaje recursivamente enumerable no independiente del contexto.

Solución: D: No es posible encontrar un autómata a pila que reconozca L puesto que una
vez realizada la comprobación de que ha leído el mismo número de x’s e y’s ya no existe la
posibilidad de comprobar que se leen el mismo número de z’s (ver resumen de la asignatura
en la sección de apuntes del curso virtual).

5 Dado el alfabeto Σ = {x, y}, considere la siguiente gramática


G = ({S}, {x, y}, S, P ), donde S es el símbolo inicial de la gramática y P es el
siguiente conjunto de producciones:

S → xS
S → Sy
S → xy

Indicar cuál de la siguientes afirmaciones es verdadera:

(a). La gramática G es una gramática regular.

(b). La gramática G está en Forma Normal de Chomsky.

(c). L(G) es un lenguaje regular.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: C. El siguiente autómata finito acepta el lenguaje L(G):

x y

x y
I F G

4
6 Dado el alfabeto Σ = {x, y}, considere L el lenguaje reconocido por el siguiente
autómata a pila M = ({I, M, F }, Σ, {Z0 }, δ, I, Z0 , {F }) donde la función de
transición δ, se define mediante el siguiente diagrama de transiciones (NOTA: Se considera
que la pila está inicialmente vacía. En el diagrama de transiciones, algunos arcos tienen una
etiqueta en la que el segundo elemento es ǫ. En este caso se considera que el autómata
ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la cadena de
entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones
no se extrae ningún elemento de la pila):

x, ǫ; ǫ y, ǫ; ǫ

x, ǫ; Z0 y, Z0 ; ǫ
I M F

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L es un lenguaje regular.

(b). L es un lenguaje independiente del contexto no regular.


(c). L es un lenguaje recursivamente enumerable no independiente del contexto.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A: El autómata a pila únicamente comprueba que las cadenas contengan primero
las x’s y luego las y’s y que al menos haya una x y una y. Este lenguaje es por tanto regular
y podría reconocerse con este autómata finito:

x y

x y
I M F

7 Sea L un lenguaje independiente del contexto determinista no regular. Indicar cuál de las
siguientes afirmaciones es verdadera:

(a). Existe un Autómata Finito Determinista que reconoce L.

5
(b). Existe un Autómata Finito no Determinista que reconoce L.
(c). Existe un Autómata a Pila Determinista que reconoce L.
(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: C: por la definición de lenguaje independiente del contexto determinista no


regular, las opciones a y b son falsas, y la opción c es verdadera.

8 Dado el alfabeto Σ = {0, 1}, considere L1 el lenguaje generado por la siguiente


expresión regular 0∗ 1(0 + 1)∗ y L2 el lenguaje generado por la siguiente gramática
G = ({S, A, B}, {0, 1}, S, P ) con símbolo inicial S y donde P es el siguiente
conjunto de producciones:

S → A1B
A → 0A|ǫ
B → 0B|1B|ǫ
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L1 = L2
(b). L1 ⊂ L2
(c). L2 ⊂ L1
(d). L1 6= L2

Solución: A: El no terminal A de la gramática genera subcadenas de 0’s (incluido cero


ceros). El no terminal B genera subcadenas de símbolos 0 y 1 (en cualquier orden e
incluyendo cero símbolos). Puesto que el símbolo inicial de la gramática genera un símbolo
1 precedido por la subcadena que genera el no terminal A y seguido por la subcadena
generada por el no terminal B, las cadenas derivadas de la gramática coinciden con las
generadas por la expresión regular del enunciado.

9 Considere la siguiente gramática G = ({S, A, B}, {a, b}, S, P ), donde S es el


símbolo inicial de la gramática y P es el siguiente conjunto de producciones:

S → AB
A → Aa
A→a
B → Bb
B→b

6
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). G es una gramática regular.

(b). L(G) es un lenguaje regular.

(c). G es una gramática en Forma Normal de Chomsky.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: B: Las opciones (a) y (c) son falsas puesto que G no es ni regular, ni está en
Forma Normal de Chomsky. La opción (b) es verdadera puesto que L(G) es el lenguaje
formado por las cadenas de a’s seguidas por b’s (al menos una a y una b) que coincide con
el lenguaje generado por la siguiente expresión regular: aa∗ bb∗

10 Dado el alfabeto Σ = {x, y}, considere L el lenguaje que acepta el siguiente autómata
M = ({p, q}, Σ, {x, Z0 }, δ, p, Z0 , {p}) donde la función de transición δ se define
mediante el siguiente diagrama de transiciones (NOTA: Se considera que la pila está
inicialmente vacía. En el diagrama de transiciones, algunos arcos tienen una etiqueta en la
que el segundo elemento es ǫ. En este caso se considera que el autómata ejecuta esta
transición teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin
inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae
ningún elemento de la pila):
x, ǫ; x x, ǫ; ǫ

y, ǫ; ǫ
p q

y, x; ǫ y, ǫ; ǫ

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L es un lenguaje regular.

(b). M es un autómata a pila determinista.

(c). Es posible definir una gramática independiente del contexto en Forma Normal de
Chomsky que genere L.

(d). Ninguna de las anteriores afirmaciones es verdadera.

7
Solución: D. La opción (a) es falsa, puesto que el lenguaje que acepta el autómata contiene
cadenas en las que ningún prefijo tenga más símbolos y’s que x’s que es un lenguaje
independiente del contexto no regular. La opción (b) es falsa puesto que en el estado p, si en
la entrada viene un símbolo y y en la cima de la pila hay un símbolo x, se podrían ejecutar
dos transiciones. La opción (c) es falsa puesto que ǫ ∈ L.

Reserva
11 Considere L el lenguaje generado por la gramática G = ({S}, {1, 0}, S, P ) donde S
el símbolo inicial de la gramática y P es el siguiente conjunto de producciones:

S → 0S
S → 1S
S → S0
S → ǫ
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Dada la gramática G1 = ({S}, {1, 0}, S, P ) donde S el símbolo inicial de la


gramática y P es el siguiente conjunto de producciones S → 0S|1S|ǫ, se cumple
que L(G1 ) = L.
(b). G es una gramática regular.
(c). No existe ningún autómata a pila determinista que reconozca L y que llegue siempre
con la pila vacía a los estados de aceptación.
(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A. En ambos casos genera el lenguaje (0 ∪ 1)∗ . La opción (b) es falsa, ya que G
no es una gramática regular (la tercera producción no cumple con las restricciones de las
gramáticas regulares). La opción (c) es falsa ya que se trata de un lenguaje regular.

12 Dada la gramática G = ({S}, {x, y}, S, P ) donde S el símbolo inicial de la


gramática y P es el siguiente conjunto de producciones:

S → xSy
S → ySx
S → ySy
S → xSx
S → ǫ

8
Indicar cómo habría que modificarla para hacer que reconozca cualquier cadena que se
pueda formar con los símbolos terminales de la gramática T = {x, y}.

(a). No hay que modificarla puesto que ya lo hace.

(b). Añadiendo la producción S → x.

(c). Añadiendo la producción S → y.

(d). Añadiendo las producciones S → x y S → y.

Solución: D. La gramática del enunciado reconoce las cadenas de x’s e y’s de longitud par.
Para que reconozca cualquier cadena de x’s e y’s se debe dar la posibilidad de que
reconozca cadenas de longitud impar.

13 Dada la siguiente gramática G = ({S, A}, {0, 1}, S, P ) con símbolo inicial S y
donde P es el siguiente conjunto de producciones:

S → 0S1 | A
A → 1A0 | S | ǫ

y el siguiente autómata a pila M = ({q}, {0, 1}, {0, 1, A, S}, δ, q, S, {q}) donde δ se
define mediante el siguiente diagrama de transiciones (Nota:Se supone que la pila contiene
inicialmente el símbolo especial de pila vacía S):

δ(q, ǫ, S) = {(q, 0S1), (q, A)}


δ(q, ǫ, A) = {(q, 1A0), (q, S), (q, ǫ)}
δ(q, 0, 0) = {(q, ǫ)}
δ(q, 1, 1) = {(q, ǫ)}

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L(G) = L(M )

(b). Existe una gramática en Forma Normal de Chomsky que genera L(G)

(c). La gramática G es una gramática regular.

(d). Ninguna de las anteriores afirmaciones es verdadera.

9
Solución: A. Es el autómata equivalente a la gramática, ya que utiliza la pila para
simulando las derivaciones más a la izquierda de la gramática, substituyendo cada no
terminal por el lado derecho de la producción equivalente. La opción (b) es falsa puesto que
ǫ ∈ L(G)). La opción (c) es falsa puesto que la gramática no cumple las restricciones de las
gramáticas regulares.

14 Dado el alfabeto Σ = {x, y, z}, considere el siguiente autómata:

M = ({q0 , q1 , q2 , q3 , q4 , q5 }, {x, y, z}, δ, q0 , {q4 , q5 })

y cuya función de transición δ, viene definida por el siguiente diagrama de transiciones:

x z y

x x y y
q0 q1 q2 q3 q4

y
z

q5

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). La cadena de menor longitud que reconoce M es la cadena xx.

(b). Está mal definido, ya que tiene dos estados de aceptación.

(c). Las cadenas que acepta M deben contener un número par de símbolos z.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: D. La opción (a) es falsa puesto que la cadena más corta que acepta el autómata
es xxyy. La opción (b) es falsa puesto que un autómata a finito puede tener más de un
estado de aceptación. La opción (c) es falsa puesto que el autómata acepta, por ejemplo, la
cadena xxyzy que tiene un número impar de símbolos z.

15 Sea L un lenguaje para el cuál NO es posible construir una máquina de Turing


determinista que lo reconozca. Indicar cuál de las siguientes afirmaciones es verdadera:

10
(a). Es posible construir una máquina de Turing no determinista que reconozca L.

(b). Es posible construir una máquina de Turing de dos cintas que reconozca L.

(c). Es posible construir una máquina de Turing de tres cintas que reconozca L.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: D. El poder de reconocimiento de las máquinas de Turing no aumenta con el no


determinismo o aumentando el número de cintas de la máquina.

16 Sea L un lenguaje regular. Indicar cuál de las siguientes afirmaciones es verdadera.

(a). Existe un Autómata Finito Determinista que reconoce L.

(b). Existe un Autómata Finito No Determinista que reconoce L.

(c). Existe un Autómata a Pila Determinista que reconoce L.

(d). Todas las afirmaciones anteriores son verdaderas.

Solución: D. Todas las afirmaciones son verdaderas. Para cualquier lenguaje regular, es
posible encontrar un autómata finito determinista que lo reconozca (hay que tener en
cuenta, igualmente, que para cualquier autómata finito no determinista es posible encontrar
un autómata finito determinista equivalente). Todo lenguaje regular es a su vez,
independiente del contexto determinista. Por tanto, es posible definir un autómata a pila
determinista que lo reconozca.

17 Dado el alfabeto Σ = {x, y}, considere el lenguaje L1 el lenguaje que reconoce el


siguiente autómata:
x y

y
I F

y L2 es el lenguaje generado por la gramática G = ({S}, {x, y}, S, P ) con símbolo


inicial S y donde P es el siguiente conjunto de producciones:

S → xSy
S→ǫ

11
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: C: L1 es el conjunto de cadenas de cero o más x’s seguidas de una o más y’s. L2
es el conjunto de cadenas de cero o más x’s seguidas del mismo número de y’s. Todas las
cadenas de L2 las acepta el autómata y por tanto, se cumple la condición de la opción (c).

18 Dado el alfabeto Σ = {x, y}, considere L el lenguaje formado por las cadenas de x’s e
y’s de longitud mayor o igual a 1 y tales que cada y esté inmediatamente precedida por una
x e inmediatamente seguida por una x. Indicar cuál de la siguientes afirmaciones es
verdadera:

(a). L es un lenguaje regular.

(b). L es un lenguaje independiente del contexto determinista no regular.

(c). L es un lenguaje independiente del contexto no determinista no regular.

(d). L es un lenguaje recursivamente enumerable no independiente del contexto.

Solución: A. El autómata finito de la siguiente figura, acepta el lenguaje del enunciado:

x y
x
x y
I M F G

y
19 Dado el alfabeto Σ = {x, y, z}, considere L1 el lenguaje generado por la siguiente
expresión regular ((x∗ · y ∗ ) · z ∗ ) y L2 el lenguaje aceptado por el siguiente autómata
finito:

12
x y z

y z
p q r
y

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: D. El autómata no acepta cadenas que únicamente contienen símbolos z mientras


que la expresión regular sí. Por lo tanto, las opciones (a) y (b) son falsas. La opción (c) es
falsa puesto que el autómata acepta por ejemplo, la cadena xyzx que no puede generar la
expresión regular.

20 Dado el alfabeto Σ = {x, y}, considere el lenguaje L1 = {xn+2 y n : n ≥ 0} y el


lenguaje L2 el lenguaje que reconoce el siguiente autómata a pila:
M = ({q0 , q1 , q2 , q3 , q4 , q5 }, Σ, {Z0 , a}, δ, q0 , Z0 , {q5 })
donde la función de transición δ se define mediante el siguiente diagrama de transiciones
(NOTA: Se considera que la pila está inicialmente vacía. En el diagrama de transiciones,
algunos arcos tienen una etiqueta en la que el segundo elemento es ǫ. En este caso se
considera que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo
actual de la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto,
en estas transiciones no se extrae ningún elemento de la pila):
y, a; ǫ

x, ǫ; a
y, a; ǫ q4
ǫ, ǫ; Z0 x, ǫ; ǫ x, ǫ; ǫ
q0 q1 q2 q3 ǫ, Z0 ; ǫ

ǫ, Z0 ; ǫ q5

Indicar cuál de las siguientes afirmaciones es verdadera:

13
(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: A. El autómata después de leer las dos primeras x’s, comprueba si ya no hay
símbolos y. Es el caso en que n = 0, en cuyo caso, acepta la cadena. Si hay más x, va
metiendo en la pila símbolos a que luego desapilará cuando lea las y’s para comprobar que
lee el mismo número de x’s que de y’s. Aceptará cuando encuentre el símbolo de pila vacía.

14
Soluciones a los exámenes de Junio 2016
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Félix Hernández del Olmo


Plantillas de respuestas
Nacional 1 Semana

• Tipo A:
1. (a) 2. (a) 3. (d) 4. (d) 5. (a) 6. (a) 7. (d) 8. (c) 9. (b) 10.(d)
• Tipo B:
1. (a) 2. (a) 3. (d) 4. (c) 5. (d) 6. (a) 7. (d) 8. (b) 9. (d) 10.(a)
• Tipo C:
1. (a) 2. (b) 3. (d) 4. (a) 5. (a) 6. (c) 7. (d) 8. (d) 9. (d) 10.(a)

Nacional 2 Semana

• Tipo A:
1. (a) 2. (a) 3. (b) (también se dará por válida la opción (d)) 4. (a) 5. (d) 6. (c) 7.
(b) 8. (d) 9. (a) 10.(c)
• Tipo C:
1. (c) 2. (a) 3. (b) (también se dará por válida la opción (d)) 4. (a) 5. (d) 6. (d) 7.
(a) 8. (c) 9. (b) 10.(a)
• Tipo D:
1. (c) 2. (c) 3. (a) 4. (a) 5. (b) 6. (a) 7. (b) (también se dará por válida la opción
(d)) 8. (a) 9. (d) 10.(d)

1
Nacional 1 Semana
1 Dada la gramática G = ({S, A, B}, {a, b, c}, S, P ) donde S es el símbolo inicial
de la gramática y P es el siguiente conjunto de producciones:

S → cABc
A → aAa
B → bBb
A→a
B→b

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). G es una gramática regular.

(b). L(G) = {can bn c|n ≥ 0}.

(c). L(G) contiene a la cadena vacía.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: D. G es una gramática independiente del contexto no regular que genera cadenas
que comienzan y terminan por c. Contienen un número impar de a’s (derivadas del no
terminal A) y b’s (derivadas del no terminal B). No obstante, el número de a’s y b’s no
tienen por qué coincidir en número tal y como exige el lenguaje de la opción b.

2 Dado el alfabeto Σ = {0, 1}, considere la siguiente Máquina de Turing:

M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, δ, q0 , B, {qf })

donde δ se puede definir:

δ(q0 , 0) = (q0 , B, R) δ(q0 , 1) = (q1 , B, R)


δ(q1 , 1) = (q1 , B, R) δ(q1 , B) = (qf , B, R)

Considere L el lenguaje que acepta la Máquina de Turing. Indicar cuál de las siguientes
afirmaciones es verdadera:

(a). L es un lenguaje independiente del contexto no regular.

(b). L puede expresarse mediante la expresión regular 0∗ 1∗

2
(c). L es un lenguaje recursivamente enumerable no independiente del contexto.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: D. El diagrama de la máquina de Turing es el siguiente:

0, B/R 1, B/R

1, B/R B, B/R
q0 q1 qf

La opción A es falsa, puesto que L(G) es el lenguaje formado por las cadenas compuestas
por cero o más símbolos 0, seguidas de uno o más símbolos 1. Este lenguaje es regular. La
opción B es falsa puesto que, la expresión regular genera, por ejemplo, la cadena vacía, que
no acepta la máquina de Turing. Así mismo, esta expresión regular, genera cadenas de sólo
ceros que no pueden ser aceptadas por la máquina de Turing. La opción C es falsa puesto
que L(G) es un lenguaje regular.
3 Indicar cuál de los siguientes lenguajes no es regular:

(a). L = {w ∈ {a, b}∗ |abc no es una subcadena de w}

(b). L = {w ∈ {a, b}∗ |ab o ba son subcadenas de w}

(c). L = {w ∈ {a, b}∗ |na (w) es par, y no existe ninguna subcadena bc en w} donde
na (x) es el número de símbolos a presentes en la cadena w

(d). L = {w ∈ {a, b}∗ | el número de a’s en w coincide con el número de b’s en w}

Solución: D. El lenguaje de la opción (d) exige conocer el número de símbolos a’s para
comprobar que la cadena contiene el mismo número de símbolos b. Es necesario, por tanto,
un autómata a pila para reconocerlo.

4 Indicar cuál de las siguientes afirmaciones acerca de las máquinas de Turing es verdadera:

(a). En las máquinas de Turing la cabeza lectora puede retroceder.

(b). Las máquinas de Turing pueden escribir sobre su cinta.

(c). Las dos afirmaciones anteriores son verdaderas.

3
(d). Ninguna de las dos primeras afirmaciones es verdadera.

Solución: C. Las dos primeras afirmaciones son ciertas puesto que en una máquina de
Turing la cabeza lectora puede retroceder y además una máquina de Turing puede escribir
sobre su cinta.

5 Considere L1 y L2 dos lenguajes independientes de contexto. Indicar cuál de las


siguientes afirmaciones es verdadera:

(a). L1 ◦ L2 siempre es independiente del contexto.

(b). L1 ◦ L2 es independiente del contexto sólo si L1 es regular.

(c). L1 ◦ L2 es independiente del contexto sólo si L1 es finito.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A. La concatenación de dos lenguajes independientes del contexto siempre es


independiente del contexto (ver Teorema 7.24 del libro base de la asignatura).

6 Dado el alfabeto Σ = {x, y, z}, indicar para qué valores de la etiqueta “Etiqueta-1”, el
autómata de la figura representa el lenguaje L = {zx3n zy n z|n > 0}. (Nota: Z0 es el
símbolo de pila vacía. se supone que inicialmente la pila del autómata está vacía. El
conjunto de símbolos de pila es Γ = Σ ∪ {Z0 }. En el diagrama de transiciones, algunos
arcos tienen una etiqueta en la que el segundo elemento es ǫ. En este caso se considera que
el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la
cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.):
x, ǫ; x

z, ǫ; Z0 Etiqueta1 y, x; ǫ ǫ, x; ǫ
I M F G H

z, Z0 ; ǫ ǫ, x; ǫ

(a). Etiqueta − 1 = z, x; x

(b). Etiqueta − 1 = z, ǫ; ǫ

4
(c). Etiqueta − 1 = z, x; ǫ

(d). Etiqueta − 1 = z, ǫ; x

Solución: A. La opción B es falsa porque el autómata aceptaría la cadena zzz que no


pertenece al lenguaje puesto que n > 0. La opción C y D serían falsas puesto que alteran la
cuenta del número de x’s leídas. Es fácil comprobarlo considerando la cadena zxxxzyz

7 Considere la gramática G = ({S}, {0, 1}, S, P ) donde S es el símbolo inicial de la


gramática y P es el siguiente conjunto INCOMPLETO de producciones:

S→ǫ
S → 0S0

Indicar qué producción o producciones faltarían para que L(G) cumpla que
L(G) = {ww R : w ∈ {0, 1}∗ }, esto es, el conjunto de palíndromos de longitud par
sobre el alfabeto Σ = {0, 1}.

(a). S → 0; S → 1; S → 1S1

(b). S → 1S1

(c). S → 0S1; S → 1S1

(d). S → 00; S → 11

Solución: B. Ver ejemplos en el capítulo 5 del libro base.

8 Dado el alfabeto Σ = {0, 1}, considere el autómata finito,


M = ({A, B, C}, {0, 1}, δ, A, {B}), donde la función de transición δ se define
mediante el siguiente diagrama de transiciones:

0
A B

0 1

Indicar cuál de las siguientes afirmaciones es verdadera:

5
(a). El autómata M es un Autómata Finito Determinista.

(b). L(M ) es un lenguaje independiente del contexto no regular.

(c). L(M ) se puede representar mediante la expresión regular, (0 + 1)∗ 0

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A. La opción (b) es falsa puesto que los lenguajes que reconocen los autómatas
finitos siempre son regulares. La opción (c) es falsa puesto que la expresión regular genera,
por ejemplo, la cadena 10 que no acepta el autómata. La opción (a) es verdadera puesto que
el autómata, es un autómata finito determinista.

9 Considere L un lenguaje independiente del contexto. Entonces, la estrella de Kleene o


clausura de L, ¿es siempre un lenguaje independiente de contexto?

(a). Sí, siempre

(b). No, nunca

(c). Sólo si L es regular

(d). Sólo si L es un lenguaje finito

Solución: A. Partiendo de una gramática independiente de contexto que genere L,


renombramos S como S’, y añadimos las reglas S → S ′ S y S → ǫ.

10 Dado el alfabeto Σ = {0, 1}, considere el autómata


M = ({p, q, r, s}, {0, 1}, δ, p, {p, s}), donde la función de transición δ se define
mediante la siguiente tabla de transiciones:

Estado 0 1
→ *p p q
q r q
r p s
*s s s

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). El lenguaje que acepta M puede expresarse mediante la expresión regular


0∗ (11∗ 01)(0 + 1)∗ .

6
(b). M es un autómata finito no determinista.

(c). El lenguaje que acepta M no puede expresarse mediante una expresión regular
porque es un lenguaje independiente del contexto no regular.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: D. La opción A es falsa porque el autómata finito acepta cadenas que no puede
genera la expresión regular. Por ejemplo, la cadena vacía o la cadena 0100. M es
determinista con lo que la opción B es falsa. La opción C es falsa puesto que el lenguaje
aceptado por un autómata finito, siempre es un lenguaje regular.

Nacional 2 Semana
11 Sean L1 y L2 dos lenguajes regulares. Sea L = L1 ∩ L2 . Indicar cuál de las siguientes
afirmaciones es verdadera:

(a). L es regular para cualquier L1 y L2

(b). L nunca puede ser regular

(c). L es regular sólo si L1 es un lenguaje finito

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Ver las propiedades de lenguajes regulares del capítulo 4 del libro base.

12 Considere la gramática G = ({S, A, B}, {a, b}, S, P ) donde S es el símbolo inicial


y P es el siguiente conjunto de producciones:

S → ASB
A → aAS|a
B → SbS|A|bb

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L(G) es un lenguaje recursivamente enumerable no independiente del contexto

(b). No es posible construir una gramática en Forma Normal de Chomsky equivalente

(c). La gramática G es regular

7
(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: B. La opción C es falsa puesto que la gramática es no regular. La opción A es


falsa puesto que si la gramática es independiente del contexto, el lenguaje que genera
siempre será independiente del contexto. La opción B es verdadera puesto que una
gramática en Forma Normal de Chomsky no debe contener símbolos inútiles. No obstante,
el lenguaje que acepta la gramática del enunciado es el lenguaje vacío puesto que no genera
ninguna cadena y por tanto, cualquier gramática que lo derive deberá contener símbolos
inútiles.
NOTA: En cualquier caso, también se dará por válida la opción D. Entendemos que los
alumnos que hayan razonado que todo lenguaje regular que no genere la cadena vacía puede
ser generado por una gramática en FNC, han hecho un razonamiento correcto, aunque no
aplicable a este ejercicio en concreto.

13 Dado un alfabeto Σ, llamamos L1 al conjunto de lenguajes de Σ aceptados por


máquinas de Turing deterministas de una sola cinta, L2 al conjunto de lenguajes de Σ
aceptados por máquinas de Turing deterministas con varias cintas y L3 al conjunto de
lenguajes de Σ aceptados por máquinas de Turing no deterministas y con varias cintas
¿Cuál de las siguientes afirmaciones es verdadera?

(a). L1 = L2 ⊂ L3

(b). L1 ⊂ L2 = L3

(c). L1 = L2 = L3

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: C. Toda máquina de Turing de una cinta no determinista es equivalente (en


cuanto al lenguaje que acepta) a una máquina de Turing determinista de una cinta, y ésta es
equivalente, a su vez, a una máquina de varias cintas.

14 Dado un alfabeto Σ considere L1 el conjunto de todos los lenguajes regulares, L2 el


conjunto de todos los lenguajes independientes del contexto y L3 el conjunto de todos los
lenguajes recursivamente enumerables. Indicar cuál de las siguientes afirmaciones es
verdadera:

(a). L1 = L2 = L3

(b). L1 ∩ L2 = ∅

8
(c). L2 ∩ L3 = ∅

(d). L1 ⊂ L2 ⊂ L3

Solución: D.

15 Dado el alfabeto Σ = {a, b}, considere L el lenguaje que acepta el siguiente autómata:

b b
a
p q
a

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L puede generarse mediante la siguiente gramática con símbolo inicial S:


S → ǫ|bS|aA; A → aS|bA

(b). L puede generarse mediante la siguiente gramática con símbolo inicial S:


S → ǫ|bS|aA; A → aS|bA|ǫ

(c). L puede generarse mediante la siguiente gramática con símbolo inicial S:


S → bS|aA; A → aS|bA|ǫ

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A. El autómata y la gramática de la opción A son equivalentes (es fácil construir


el autómata a partir de la gramática siguiendo el método expuesto en los apuntes de
gramáticas regulares). La opción B es falsa puesto que la gramática genera cadenas que no
están incluidas en L, como por ejemplo la cadena a. Por la misma razón la opción C es falsa
(por ejemplo, la gramática genera la cadena a que no está en L y además no genera cadenas
que sí están en L como por ejemplo la cadena b).

16 Sea L(G) el lenguaje que genera la gramática G definida de la siguiente forma:

G = ({S, A}, {x, y, z}, S, P )

donde S es el símbolo inicial S y P es el siguiente conjunto de producciones:

9
S → xSz
S→z
S → yAz
A → yAz
A→z

y sea L el siguiente lenguaje: L = {xn y m z p |n + m = p − 1; n, m ≥ 0; p > 0}.


Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L(G) = L

(b). L(G) ⊂ L

(c). L ⊂ L(G)

(d). L(G) 6= L

Solución: A. El no terminal S genera cadenas de símbolos x’s terminadas por el mismo


número de z’s. Por otra parte el no terminal A genera cadenas de símbolos y’s terminadas
por el mismo número de z’s. Por tanto, las cadenas que deriva la gramática, tendrán un
número de z’s que será la suma del número de x’s e y’s más 1, porque finalmente, tanto S
como A derivan en z.

17 Dado un alfabeto Σ = {0, 1, 2}, considere los lenguajes


L1 = {0n 1n 2i |n ≥ 1, i ≥ 1} y L2 = {0i 1n 2n |n ≥ 1, i ≥ 1}. Indicar cuál de las
siguientes afirmaciones es verdadera:

(a). L1 ∩ L2 es un lenguaje recursivamente enumerable no independiente del contexto.

(b). L1 y L2 son lenguajes regulares.

(c). No es posible definir una máquina de Turing que reconozca L1 .

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: A. El lenguaje que resulta de L1 ∩ L2 es el lenguaje formado por las cadenas de


0’s, 1’s y 2’s (en ese orden) con el mismo número de 0’s, 1’s y 2’s. Este es un lenguaje
recursivamente enumerable no independiente del contexto. La opción B es falsa puesto que
ni L1 ni L2 son regulares. La opción C es falsa puesto que L1 es independiente del contexto
no regular y, por tanto, es posible definir una máquina de Turing que lo reconozca.

10
18 Considere la gramática G = ({A, B, S}, {0, 1, 2}, S, P ) donde S es el símbolo
inicial y P es el siguiente conjunto de producciones:

S → AB
A → 0A1|01
B → 2B|2

Si L(G) es el lenguaje que se deriva de esta gramática, indicar cuál de las siguientes
afirmaciones es verdadera:

(a). L(G) es un lenguaje regular.

(b). G es una gramática regular.

(c). L(G) es un lenguaje independiente del contexto no regular.

(d). Ninguna de las anteriores afirmaciones es verdadera.

Solución: C. La opción A es falsa puesto que el lenguaje que genera contiene cadenas con
el mismo número de 0’s y 1’s seguidas de un número arbitrario de 2’s. Este lenguaje es
independiente del contexto no regular (por lo que la opción C es verdadera). La opción B es
falsa puesto que la gramática no cumple con las restricciones de las gramáticas regulares.
Queda como ejercicio construir el autómata a pila que reconoce el lenguaje L(G) (será
similar al autómata que reconoce el lenguaje {0n 1n : n > 0} que se ha visto en la
asignatura).

19 Dado el alfabeto Σ = {0, 1}, considere los siguientes autómatas:


M1 = ({A, B}, {0, 1}, δ1 , A, {A}) y M2 = ({C, D, E}, {0, 1}, δ2 , C, {C, D})
donde δ1 y δ2 , se definen mediante los siguientes diagramas de transiciones:

δ1 δ2

0
0 1 0
1
C D
A B
0 1 1
0
E

11
Sean L1 = L(M1 ) y L2 = L(M2 ), indicar cuál de las siguientes afirmaciones es
verdadera:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: D. Las opciones A,B y C son falsas. Contraejemplos: 001 ∈ L2 pero 001 ∈ / L1
(por lo que las opciones A y C son falsas). La cadena 01110 ∈ L1 y no pertenece a L2 (por
lo que la opción B es falsa).

20 Dado el alfabeto Σ = {0, 1}, considere L el lenguaje representado por la expresión


regular (0 + 1)∗ 01. Sea M el siguiente autómata finito:
M = ({q0 , q1 , q2 }, {0, 1}, δ, q0 , {q0 , q1 }), donde δ se define mediante el siguiente
diagrama de transiciones:
1 0
1
q0 0 q1 q2
0

1
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L = L(M )

(b). L ∩ L(M ) = ∅

(c). L ⊂ L(M )

(d). L(M ) ⊂ L

Solución: B. L(M) = L (L es el lenguaje complementario al lenguaje que acepta el


autómata)

12
Soluciones a los exámenes de Septiembre
2015
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez


Plantillas de respuestas
Nacional Original

• Tipo B: 1. (a) 2. (a) 3. (a) 4. (c) 5. (a) 6. (b) 7. (c) 8. (a) 9. (a) 10.(a)
• Tipo C: 1. (a) 2. (a) 3. (a) 4. (a) 5. (b) 6. (c) 7. (c) 8. (a) 9. (a) 10.(a)
• Tipo D: 1. (a) 2. (a) 3. (a) 4. (c) 5. (a) 6. (a) 7. (a) 8. (a) 9. (c) 10.(b)

Nacional Reserva

• Tipo A: 1. (b) 2. (b) 3. (a) 4. (a) 5. (a) 6. (a) 7. (a) 8. (c) 9. (a) 10.(b)
• Tipo B: 1. (b) 2. (b) 3. (a) 4. (c) 5. (a) 6. (a) 7. (a) 8. (a) 9. (b) 10.(a)
• Tipo C: 1. (a) 2. (a) 3. (a) 4. (b) 5. (a) 6. (c) 7. (a) 8. (b) 9. (a) 10.(b)

1
Nacional Original
1 Dada la siguiente gramática G = ({S, A, B}, {x, y}, P, S), donde S es el símbolo
inicial de la gramática y P el siguiente conjunto de producciones:

S → xAy
S → xByy
A → xAy
A→y
B → xByy
B→y

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L(G) es un lenguaje regular

(b). L(G) es un lenguaje independiente del contexto determinista no regular

(c). L(G) es un lenguaje independiente del contexto no determinista no regular

(d). L(G) es recursivamente enumerable no independiente del contexto

Solución: C. El lenguaje que genera la gramática G es


L(G) = {xn y n+1 : n > 0} ∪ {xn y 2n+1 : n > 0}. El no terminal A genera cadenas de x’s
seguidas del mismo número de y’s más uno. Mientras que el no terminal B, genera cadenas
de x’s seguidas del doble número de y’s más uno.

2 Dado el alfabeto Σ = {x, y}, considere L el lenguaje que reconoce el siguiente


autómata a pila M (NOTA: Se supone que inicialmente la pila se encuentra vacía y que el
símbolo inicial de la pila es Z0 . El conjunto de símbolos de pila es {a, b, Z0 }. En el
diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es
ǫ. En estos casos se considera que el autómata ejecuta esta transición teniendo en cuenta
únicamente el símbolo actual de la cadena de entrada sin inspeccionar el contenido de la
cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento de la pila.)

x, ǫ; a y, ǫ; b

ǫ, ǫ; Z0 y, ǫ; b ǫ, ǫ; ǫ
p q r s

2
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(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

Solución: A. El autómata no hace uso de la pila. Se comporta, por tanto, como un autómata
finito y se cumple que L = {xn y m : n ≥ 0, m > 0} y es, por tanto, un lenguaje regular

3 Dado el alfabeto Σ = {x, y}, sea L1 el lenguaje que reconoce el siguiente autómata:

x
p y q

y L2 el lenguaje que reconoce el siguiente autómata:


x

x
p y q

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L1 ⊂ L2 (L1 está contenido en L2 )

(b). L2 ⊂ L1 (L2 está contenido en L1 )

(c). L1 = L2 (L1 es igual a L2 )

(d). L1 6= L2 (L1 es distinto a L2 )

3
Solución: A. La única diferencia entre los lenguajes que aceptan estos autómatas es la
cadena vacía: ǫ ∈
/ L1 mientras que ǫ ∈ L2

4 Sea Σ = {a, b} y L el lenguaje que acepta el siguiente autómata finito:

a
p b q

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede expresarse mediante la expresión regular: a(a + b)∗ (ab)∗

(b). L puede expresarse mediante la expresión regular: b(a + b)∗

(c). L puede expresarse mediante la expresión regular:


(a(a + b)∗ (ab)∗ ) + (b(a + b)∗ )

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. Es fácil comprobar que la expresión regular y el autómata aceptan el mismo


lenguaje. La opción a) es falsa porque la expresión regular no puede generar, por ejemplo,
la cadena b, que si acepta el autómata. La opción b) es falsa porque la expresión regular no
puede generar, por ejemplo, la cadena a que si acepta el autómata.

5 Dado el alfabeto Σ = {a, b, c}, queremos construir un autómata finito que acepte L, el
lenguaje que genera la siguiente expresión regular:

(baa∗ + c∗ (a + b))

Indique para qué valores de las etiquetas sería correcta la siguiente solución:

4
c

Etiqueta-3
r
Etiqueta-1 b
t
a
p b a

Etiqueta-2 Etiqueta-4
q s

(a). etiqueta-1=c, etiqueta-2=b, etiqueta-3=a, etiqueta-4=a

(b). etiqueta-1=b, etiqueta-2=c, etiqueta-3=a, etiqueta-4=a

(c). etiqueta-1=a, etiqueta-2=a, etiqueta-3=a, etiqueta-4=b

(d). etiqueta-1=a, etiqueta-2=b, etiqueta-3=a, etiqueta-4=b

Solución: A. Los dos caminos desde el estado inicial del autómata se definen para cubrir
los dos términos de la unión de la expresión regular. La transición del estado p al estado r
debe ir etiquetada con un símbolo c para cubrir el segundo término de la expresión regular.
Así mismo, la etiqueta 3 debe ir etiquetada con un símbolo a. Para cubrir el primer término
de la expresión regular que obliga a las cadenas a comenzar por la subcadena ba, las
etiquetas 2 y 3 deben tomar los valores b y a respectivamente. La opción b es falsa puesto
que la cadena bcb no pertenece al lenguaje que genera la expresión regular del enunciado,
mientras que si podría ser aceptada por el autómata. La opción c es falsa puesto que la
cadena acb no pertenece al lenguaje que genera la expresión regular del enunciado, mientras
que sí podría ser aceptada por el autómata. La opción d es falsa puesto que, por ejemplo, la
cadena acb no pertenece al lenguaje que genera la expresión regular, mientras que sí podría
ser aceptada por el autómata.

6 Dada la siguiente máquina de Turing:

M = ({q0 , q1 , q2 , q3 , q4 }, {0, 1}, {0, 1, X, Y, B}, δ, q0 , B, {q4 })

donde δ se especifica mediante la siguiente tabla de transiciones:

5
0 1 X Y B
q0 (q1 , X, R) - - (q3 , Y, R) -
q1 (q1 , 0, R) (q2 , Y, L) - (q1 , Y, R) -
q2 (q2 , 0, L) - (q0 , X, R) (q2 , Y, L) -
q3 - - - (q3 , Y, R) (q4 , B, R)
q4 - - - - -

Considere la siguiente configuración inicial q0 000111. Indicar cuál de la siguientes


afirmaciones es VERDADERA:

(a). La configuración final una vez ejecutada la máquina de Turing con esa configuración
inicial es XXXY Y Y Bq4 B

(b). La configuración final una vez ejecutada la máquina de Turing con esa configuración
inicial es q4 XXXY Y Y BB

(c). La configuración final una vez ejecutada la máquina de Turing con esa configuración
inicial es XXXY Y Y q4 BB

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A: La configuración inicial dada la cadena de entrada 000111 sería q0 000111. A


partir de ahí, si ejecutamos la máquina de Turing, las configuraciones serían:
q0 000111 ⊢ Xq1 00111 ⊢ X0q1 0111 ⊢ X00q1 111 ⊢ X0q2 0Y 11 ⊢ Xq2 00Y 11 ⊢
q2 X00Y 11 ⊢ Xq0 00Y 11 ⊢ XXq1 0Y 11 ⊢ XX0q1 Y 11 ⊢ XX0Y q1 11 ⊢ XX0q2 Y Y 1 ⊢
XXq2 0Y Y 1 ⊢ Xq2 X0Y Y 1 ⊢ XXq0 0Y Y 1 ⊢ XXXq1 Y Y 1 ⊢ XXXY q1 Y 1 ⊢
XXXY Y q1 1 ⊢ XXXY q2 Y Y ⊢ XXXq2 Y Y Y ⊢ XXq2 XY Y Y ⊢ XXXq0 Y Y Y ⊢
XXXY q3 Y Y ⊢ XXXY Y q3 Y ⊢ XXXY Y Y q3 BB ⊢ XXXY Y Y Bq4 B (Nótese que en
las dos últimas configuraciones hemos añadido símbolos en blanco (B) puesto que la cinta
de entrada de una máquina de Turing, se supone que se extiende indefinidamente a la
derecha con símbolos en blanco B)

7 Sea Σ un alfabeto y Σ∗ el conjunto de todas las cadenas que se pueden formar con los
símbolos del alfabeto. Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Σ∗ es un lenguaje regular

(b). Σ∗ es un lenguaje independiente del contexto determinista no regular

(c). Σ∗ es un lenguaje independiente del contexto no determinista no regular

6
(d). Σ∗ es recursivamente enumerable no independiente del contexto

Solución: A. El autómata finito que reconoce ese lenguaje tendría un único estado, que
sería el inicial y el de aceptación, con transiciones a sí mismo por cada símbolo del alfabeto.

8 Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Considere L el lenguaje que acepta un autómata finito no determinista, entonces,


siempre se puede construir un autómata finito determinista que también acepte L

(b). Considere L el lenguaje que acepta un autómata a pila no determinista, entonces,


siempre podemos construir un autómata a pila determinista que también acepte L

(c). Considere L el lenguaje que acepta un autómata a pila determinista, entonces,


siempre podemos construir un autómata finito que también acepte L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: Solución A.

9 Dado el siguiente autómata a pila M , con alfabeto Σ = {x, y} (NOTA: Se supone que
inicialmente la pila se encuentra vacía y que el símbolo inicial de la pila es Z0 . El conjunto
de símbolos de pila es {a, Z0 }. En el diagrama de transiciones algunos arcos tienen una
etiqueta en la que el segundo elemento es ǫ. En estos casos se considera que el autómata
ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la cadena de
entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones
no se extrae ningún elemento de la pila.)

x, ǫ; a y, a; ǫ

ǫ, ǫ; Z0 y, a; ǫ ǫ, Z0 ; ǫ
p q r s

x, ǫ; aa

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). M es un autómata a pila determinista

(b). M es un autómata a pila no determinista

7
(c). L(M ) es un lenguaje regular

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. La opción a) es falsa porque en el estado q hay un no determinismo. La opción


c) es falsa puesto que L(M) = {xn y m : n ≤ m ≤ 2n} que es un lenguaje no regular.

10 Dado el alfabeto Σ = {a, b}, queremos construir un autómata a pila que reconozca los
palíndromos de longitud impar (recuerde que un palíndromo es una cadena que se lee igual
de izquierda a derecha que de derecha a izquierda). Considere el siguiente autómata a pila
(NOTA: Se supone que inicialmente la pila se encuentra vacía y que el símbolo inicial de la
pila es Z0 . El conjunto de símbolos de pila es {a, b, Z0 }. En el diagrama de transiciones
algunos arcos tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se
considera que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo
actual de la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto,
en estas transiciones no se extrae ningún elemento de la pila.):
Indique para qué valores de las etiquetas, podría ser válida la siguiente solución:
a, ǫ; a a, a; ǫ

etiqueta-2
ǫ, ǫ; Z0 ǫ, Z0 ; ǫ
p q r s
b, ǫ; ǫ

etiqueta-1 etiqueta-3

(a). etiqueta-1=b, ǫ; b, etiqueta-2=a, ǫ; ǫ, etiqueta-3=b, b; ǫ

(b). etiqueta-1=b, b; ǫ, etiqueta-2=a, ǫ; a, etiqueta-3=b, b; ǫ

(c). etiqueta-1=b, b; ǫ, etiqueta-2=a, ǫ; ǫ, etiqueta-3=b, b; ǫ

(d). etiqueta-1=b, b; ǫ, etiqueta-2=a, ǫ; a, etiqueta-3=b, ǫ; ǫ

Solución: A. El autómata utiliza la pila para ir controlando los símbolos ha leído y así
poder comprobar después, que lee los mismos símbolos, pero en orden inverso. Como las
cadenas deben tener una longitud impar, a la mitad de la cadena, habrá un símbolo que no
será necesario controlar en la pila. Al leer cada símbolo de la entrada, hay que decidir si
estamos leyendo un símbolo de la primera parte de la cadena (transiciones en el nodo q) o
bien estamos leyendo el símbolo intermedio (transición del estado q al estado r). Esta
decisión se realiza de modo no determinista.

8
Nacional Reserva
11 Dado el alfabeto Σ = {x, y}, considere el lenguaje L = {xn y n : n ≥ 0}, el lema de
bombeo para los lenguajes regulares, permitiría demostrar que:

(a). L no es regular

(b). L es recursivamente enumerable no independiente del contexto

(c). L es un lenguaje regular

(d). Ninguna de las anteriores anteriores afirmaciones es verdadera

Solución: A. El lema de bombeo para los lenguajes regulares enuncia una propiedad que
deben cumplir los lenguajes regulares. Si no cumple dicha propiedad, se infiere que no es
un lenguaje regular.

12 Dado el alfabeto Σ = {(, ), {, }, [, ]}, sea L el lenguaje formado por las cadenas de
longitud igual a 4 que no contengan símbolos repetidos y que estén bien parentizadas. Es
decir, por cada paréntesis (o corchete o llave) abierto, haya uno cerrado adecuadamente.
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(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

Solución: A. Al ser cadenas de longitud igual a 4, es posible construir un autómata finito


que recorra las diferentes posibilidades (puede encontrarse una propuesta de autómata
válido en las soluciones a la práctica 1 del curso 2011-2012)

13 Dado el alfabeto Σ = {x, y, z}, considere el lenguaje L = {xn y m z p :


n + m = p, n, m ≥ 1}. Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es regular

(b). L es independiente del contexto determinista no regular

(c). L es independiente del contexto no determinista no regular

9
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. La opción a) es falsa puesto que L no es un lenguaje regular. El siguiente


autómata a pila determinista reconoce el lenguaje del enunciado
x, ǫ; a y, ǫ; a z, a; ǫ

ǫ, ǫ; Z0 y, ǫ; a z, a; ǫ ǫ, Z0 ; ǫ
q0 q1 q2 q3 q4

14 Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No es necesario que un autómata finito termine de leer la cadena de entrada para
aceptar dicha cadena

(b). No es necesario que un autómata a pila termine de leer la cadena de entrada para
aceptar dicha cadena

(c). No es necesario que una máquina de Turing termine de leer la cadena de entrada para
aceptar dicha cadena

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. Por la propia definición formal de una máquina de Turing. Ver ejemplo 8.5 del
libro base.

15 Sea L(G) el lenguaje que reconoce la siguiente gramática, con símbolo inicial S:

G = ({S}, {0, 1}, P, S)

donde P es el siguiente conjunto de producciones:

S → 0S1
S→0
S→1

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Todas las cadenas contenidas en L(G) tienen longitud par

(b). Todas las cadenas contenidas en L(G) tienen longitud impar

10
(c). No existe una gramática en Forma Normal de Chomsky equivalente a G

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. Es fácil comprobar que, debido a las dos últimas producciones, esta opción es
la verdadera.

16 Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Un autómata finito solamente puede tener un único estado de aceptación

(b). Un autómata finito solamente puede tener un único estado inicial

(c). Un autómata finito puede tener más de un estado inicial

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. Por la definición de autómata finito

17 Considere la siguiente Máquina de Turing M:

M = ({q0 , q1 , qf }, {0, 1}, {0, 1, B}, δ, q0 , B, {qf })

donde la función de transición δ se define:


δ(q0 , 0) = (q0 , B, R)
δ(q0 , 1) = (q1 , B, R)
δ(q1 , 1) = (q1 , B, R)
δ(q1 , B) = (qf , B, R)

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L(M) es regular

(b). L(M) es independiente del contexto determinista no regular

(c). L(M) es independiente del contexto no determinista no regular

(d). L(M) es recursivamente enumerable no independiente del contexto

Solución: A. La máquina de Turing va desplazándose por la derecha leyendo primero los


símbolos 0’s y luego los 1’s (el que vaya sobreescribiendo con blancos al tiempo que lee los
símbolos es irrelevante).

11
18 Dado el alfabeto Σ = {a}, queremos construir un autómata a pila que, utilizando la
pila para contar los símbolos de una cadena, acepte las cadenas cuya longitud sea múltiplo
de 3 (no se considera la cadena vacía). Indique para qué valores de las etiquetas, podría ser
válida la siguiente solución (NOTA: El conjunto de símbolos de pila es {1, 2, 3, Z0 },
donde Z0 es el símbolo especial de pila vacía. Se considera que inicialmente la pila se
encuentra vacía):
a, 1; 2

a, ǫ; 1 etiqueta-3
p q r

etiqueta-2
etiqueta-1
(a). etiqueta-1=a, 3; 1, etiqueta-2=a, 2; 3, etiqueta-3=ǫ, 3; ǫ

(b). etiqueta-1=a, ǫ; ǫ, etiqueta-2=a, 2; 3, etiqueta-3=ǫ, 3; ǫ

(c). etiqueta-1=a, 3; 1, etiqueta-2=a, ǫ; ǫ, etiqueta-3=ǫ, 3; ǫ

(d). etiqueta-1=a, ǫ; ǫ, etiqueta-2=a, ǫ; ǫ, etiqueta-3=ǫ, ǫ; ǫ

Solución: A. El autómata utiliza la pila para contar los símbolos que tiene la cadena. Como
el alfabeto tiene un único símbolo, sólo cuenta las a’s que aparecen en la entrada. Si en la
pila viene un 1 y se lee una a se substituye ese 1 por un 2 y así sucesivamente. Si se han
leído 3 a’s, y hay más a’s en la entrada se vuelve a empezar, en el bucle del estado q. Se
acepta cuando no hay más símbolos en la entrada y en la cima de la pila hay un 3, que
ocurrirá si se ha leído un número de símbolos que es múltiplo de 3. La opción b es falsa ya
que aceptaría más cadenas que las contenidas en el lenguaje (por ejemplo la cadena aaaa).
La opción c no aceptaría todas las cadenas del lenguaje, de hecho el autómata no podría
aceptar ninguna cadena. La opción d es falsa, ya que el autómata aceptaría cadenas con
cualquier número de a’s.

19 Considere L1 y L2 , dos lenguajes independientes del contexto. Indicar cuál de las


siguientes afirmaciones es VERDADERA:

(a). L1 concatenado con L2 , siempre es un lenguaje independiente del contexto

(b). L1 concatenado con L2 , nunca es un lenguaje independiente del contexto

(c). L1 concatenado con L2 , siempre es un lenguaje regular

12
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Ver Teorema 7.24 del libro base de la asignatura.

20 Considere la siguiente máquina de Turing, M:

M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, δ, q0 , B, {qf })

donde la función de transición se define de la siguiente manera:

δ(q0 , 0) = (q1 , 1, R)
δ(q1 , 1) = (q2 , 0, L)
δ(q2 , 1) = (q0 , 1, R)
δ(q1 , B) = (qf , B, R)

Considere L(M), el lenguaje que acepta esta máquina de Turing. Indicar cuál de las
siguientes afirmaciones es VERDADERA:

(a). L(M) es un lenguaje regular

(b). L(M) es un lenguaje independiente del contexto determinista no regular

(c). L(M) es un lenguaje independiente del contexto no determinista no regular

(d). L(M) es un lenguaje recursivamente enumerable no independiente del contexto

Solución: A. Esta máquina de Turing acepta el lenguaje compuesto por las cadenas
representadas por la expresión regular 01∗ .

13
Soluciones a los exámenes de Junio 2015
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez


Nacional 1 Semana
1 Dada la siguiente gramática G = ({S, A, B}, {a, x, b}, P, S) donde S es el símbolo
inicial de la gramática y P es el siguiente conjunto de producciones:

S→A
S → axb
A → aAb
A→B
B→x

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). G genera un lenguaje regular

(b). G genera un lenguaje independiente del contexto no regular

(c). L(G) no puede ser reconocido por un Autómata a Pila

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. El lenguaje que genera la gramática es L(G) = {an xbn : n ≥ 0}, que es un
lenguaje independiente del contexto no regular (por lo que la opción (a) es falsa). La opción
(c) es falsa puesto que el siguiente autómata a pila puede reconocer L(G):

a, ǫ; a b, a; ǫ

ǫ, ǫ; # x, ǫ; ǫ ǫ, #; ǫ
q0 q1 q2 q3

2 Sea L el lenguaje que reconoce el siguiente autómata a pila con alfabeto Σ = {x, y, z}
(NOTA: Se supone que inicialmente la pila se encuentra vacía y que el símbolo de pila
vacía es #. En el diagrama de transiciones algunos arcos tienen una etiqueta en la que el
segundo elemento es ǫ. En estos casos se considera que el autómata ejecuta esta transición
teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún
elemento de la pila.)

1
x, ǫ; x y, ǫ; ǫ z, x; ǫ

ǫ, ǫ; # y, ǫ; ǫ z, x; ǫ ǫ, #; ǫ
q0 q1 q2 q3 q4

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L = {xn y n z n : n ≥ 0}

(b). L es regular y puede expresarse mediante la siguiente expresión regular x∗ y ∗ z ∗

(c). L nunca podría ser regular porque es el lenguaje reconocido por un autómata a pila

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. El lenguaje que reconoce el autómata es L = {xn y m z n : n, m ≥ 0} que es


independiente del contexto no regular. La opción (c) es falsa porque es posible que un
autómata a pila reconozca un lenguaje regular, bastaría, por ejemplo, definir un autómata a
pila que no haga uso de su pila. La opción (b) es falsa puesto que el autómata a pila
comprueba que se lean el mismo número de x’s y z’s (por ejemplo, la expresión regular
generaría la cadena xy que no acepta el autómata). La opción (a) es falsa puesto que no se
contabilizan el número de y’s leídas. De hecho el lenguaje de la opción (a) es un lenguaje
estructurado por frases no independiente del contexto.

3 Dada la siguiente gramática G = ({S, M, N}, {x, y, z}, P, S) donde S es el símbolo


inicial de la gramática y P es el siguiente conjunto de producciones:

S → zMz
M →N
M → yMy
N →x

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No es posible encontrar una gramática en Forma Normal de Chomsky equivalente a G

(b). La gramática en Forma Normal de Chomsky equivalente a G tiene 9 producciones

(c). G es una gramática regular

2
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. La opción (a) es falsa puesto que, para toda gramática independiente del
contexto que no derive a la cadena vacía, puede encontrarse una gramática en Forma
Normal de Chomsky equivalente. La opción (c) es falsa puesto que, las producciones de la
gramática G, no cumplen con las restricciones de las gramáticas regulares. La opción (b) es
verdadera, la gramática en Forma normal de Chomsky equivalente a G es:

S → ZR1
R1 → MZ
M →x
M → Y P1
P1 → MY
N →x
X→x
Y →y
Z→z

De estas producciones, se podría prescindir de las producciones sexta y séptima ya que no


son producciones accesibles.

4 Sea L el lenguaje que reconoce el siguiente autómata finito M:

q1
x y
y x
q0 q2 y

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede expresarse mediante la expresión regular x∗ y

(b). Es posible encontrar una gramática en Forma Normal de Chomsky que genere L

(c). L puede expresarse mediante la expresión regular (x∗ y)∗

(d). Ninguna de las anteriores afirmaciones es verdadera

3
Solución: C. La opción (a) es falsa porque, por ejemplo, el autómata acepta la cadena vacía
que no puede generar la expresión regular. La opción (b) es falsa puesto que sólo se puede
construir gramáticas en Forma Normal de Chomsky equivalentes a gramáticas que no
generen la cadena vacía. La opción (c) es verdadera ya que se puede comprobar que la
expresión regular genera exactamente las mismas cadenas que acepta el autómata.

5 Sea L el lenguaje que acepta el siguiente autómata:


x x y

y y x
q0 q1 q2 q3

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No es posible encontrar una gramática en Forma Normal de Chomsky que genere L

(b). L puede expresarse mediante la siguiente expresión regular: (x∗ yx∗ )(y ∗xy ∗ )

(c). L puede expresarse mediante la siguiente expresión regular: x∗ (yyx)y ∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La opción (a) es falsa puesto que siempre puede encontrarse gramáticas en
Forma Normal de Chomsky equivalentes a gramáticas que no generen la cadena vacía. La
opción (b) es falsa porque la expresión genera, por ejemplo, la cadena yxy que no acepta el
autómata. La opción (c) es falsa puesto que el autómata acepta la cadena yyyx que no
puede generar la expresión regular.

6 Dada la siguiente gramática G = ({S, B, C}, {0, 1}, P, S) con símbolo inicial S y donde
P es el siguiente conjunto de producciones:

S → CB|BC|0C1|1C0|0
C → 0C1|1C0|0
B → 0B1|1B0|01|10

Indicar cuál de las siguientes afirmaciones VERDADERA:

(a). G es una gramática regular

4
(b). L(G) es un lenguaje independiente del contexto no regular

(c). L(G) puede expresarse mediante la siguiente expresión regular


(01 + 10)(0 + 1)∗ (01 + 10)

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. L(G) contiene las cadenas de 0’s y 1’s, donde el número de 0’s es uno más
que el número de 1’s, que es un lenguaje independiente del contexto no regular. G es una
gramática independiente del contexto no regular. La opción (c) es falsa ya que si L(G) no es
regular, no puede expresarse mediante una expresión regular. Un ejemplo de cadena que
genera la expresión regular y que no pueden derivarse de la gramática es: 01110.

7 Dado un alfabeto Σ, para cualquier lenguaje L ⊂ Σ∗ , es cierto que:

(a). Siempre es posible encontrar un Autómata Finito Determinista o un Autómata Finito


no Determinista que acepte L

(b). Siempre es posible encontrar un Autómata a Pila no determinista que acepte L

(c). Siempre es posible encontrar una Máquina de Turing que acepte L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. Depende de L, existen lenguajes que no pueden ser reconocidos por ninguna
máquina de Turing.

8 Dado el alfabeto Σ = {x, y, z}, sea L1 = {xn y n z n : n > 0} y sea L2 el lenguaje


reconocido por la siguiente máquina de Turing (Nota: Se supone que la máquina está
definida sobre el alfabeto Σ y el conjunto de símbolos de cinta es Γ = Σ ∪ {B} donde B
representa el símbolo en blanco. Cuando analiza una cadena, la máquina de Turing parte de
la configuración inicial donde la cinta de entrada contiene un símbolo en blanco seguido de
la cadena a analizar seguida de blancos; la cabeza de lectura/escritura se encuentra situada
en el primer símbolo a la izquierda de la cadena).

5
x; x, ←
y; y, → y; y, ← x; x, →
z; z, → z; z, ← z; z, →

x; x, ← B; B, →
q0 q1 q2
y; y, ←
q5 q4 q3
z; z, ← B; B, →

x; x, → x; x, ←
y; y, → y; y, ←
z; z, ←

Indicar cuál de las siguientes afirmaciones es VERDADERA:


(a). L1 = L2
(b). L1 6= L2
(c). L1 ⊂ L2
(d). L2 ⊂ L1
Solución: C. El lenguaje L2 está formado por cadenas que tienen al menos una x, una y y
una z, no pone condiciones sobre órdenes ni cantidades. El lenguaje L1 está formado por
cadenas que tienen el mismo número de x’s, y’s y z’s en ese orden, y por lo menos una (ya
que n > 0), por tanto, todas las palabras del lenguaje L1 cumplen las condiciones del
lenguaje L2 .
9 Indicar para qué valores de las etiquetas Etiqueta-1 y Etiqueta-2, el autómata de la figura
acepta el lenguaje {xn+1 y n : n ≥ 0}. Se supone que inicialmente la pila se encuentra vacía
y que el símbolo de pila vacía es Z0 . En el diagrama de transiciones algunos arcos tienen
una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera que el
autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la
cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.

Etiqueta-1 y, z; ǫ

ǫ, ǫ; Z0 Etiqueta-2 ǫ, Z0 ; ǫ
q0 q1 q2 q3

6
(a). Etiqueta-1=x, ǫ; z Etiqueta-2=ǫ, z; ǫ

(b). Etiqueta-1=x, ǫ; y Etiqueta-2=ǫ, ǫ; ǫ

(c). Etiqueta-1=x, ǫ; y Etiqueta-2=y, z; ǫ

(d). No existen valores de Etiqueta-1 y Etiqueta-2 que hagan correcta la solución

Solución: A. La opción (b) no es válida, ya que se apilan y’s y no z’s que es lo que se
utiliza posteriormente para controlar el número de y’s en la cadena. La opción (c) no es
válida por la misma razón. La opción (a) sí es válida, ya que se apila una z por cada x leída
posteriormente se desapila una z antes de comenzar a leer los símbolos y’s.

10 Dado el siguiente autómata M = ({p, q, r, s, t}, {a, b, c}, δ, p, {q, r, s}), donde la función
δ se define mediante el siguiente diagrama de transiciones::
a, b, c

q a, b
c

p a r c s
b a, b
c
t

a, b, c

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L(M) es independiente del contexto no regular

(b). L(M) puede expresarse mediante la siguiente expresión regular:


ac(a + b)∗ + c(a + b + c)∗

(c). No es posible encontrar una gramática en Forma Normal de Chomsky que genere
L(M)

(d). Ninguna de las anteriores afirmaciones es verdadera

7
Solución: D. La opción (a) es falsa puesto que L(M) es regular, ya que es un lenguaje
aceptado por un autómata finito. La opción (b) es falsa porque el autómata acepta la cadena
a y la expresión regular no. La opción (c) es falsa puesto que al no contener L(M) a la
cadena vacía, siempre es posible encontrar una gramática en Forma Normal de Chomsky
que lo genere. La opción (b) es falsa puesto que, por ejemplo, el autómata acepta la cadena
a que no puede generarse con la expresión regular.

Nacional 2 Semana
11 Para todo Autómata a Pila no determinista podemos construir un Autómata a Pila
determinista equivalente:

(a). Verdadero

(b). Falso

Solución: B. Ver apartado 6.4.3 del libro base (página 213)

12 Sea L el lenguaje aceptado por el siguiente Autómata Finito M:


0 1

1
q1 q3
0
0

q0 1 0
1
0
q2 q4
1
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede expresarse mediante la siguiente expresión regular 0(1 + 0)∗ 0

(b). L puede expresarse mediante la siguiente expresión regular 0(0 + 1)∗

(c). L puede expresarse mediante la siguiente expresión regular (0 + 1)∗ 0

8
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La opción (a) es falsa puesto que, por ejemplo, la cadena 0 no puede generarse
con la expresión regular y, sin embargo, 0 ∈ L. La opción (b) es falsa puesto que la
expresión regular genera, por ejemplo, la cadena 01 y sin embargo el autómata no acepta
esta cadena. La opción (c) es falsa puesto que la expresión regular genera, por ejemplo, la
cadena 10 que no acepta el autómata.

13 Sea L1 el lenguaje que acepta el autómata M con la siguiente tabla de transiciones y sea
L2 el lenguaje que reconoce la siguiente gramática G con símbolo inicial S:

M = ({q0 , q1 , q2 , q3 , q4 }, {x, y, z}, δ, q0, {q3 }) G = ({S, N, M}, {x, y, z}, P, S)


donde δ se define: donde P son las siguientes producciones:
x y z S → xN
→ q0 {q1 , q3 } q4 q4 S→x
q1 q4 {q2 , q3 } q4 N → yM
q2 q4 q4 {q1 , q3 } N →y

q3 q4 q4 q4 M → zN
q4 q4 q4 q4 M →z

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L1 = L2
(b). L1 ⊂ L2
(c). L2 ⊂ L1
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Siguiendo el procedimiento de paso de una gramática regular a autómata


finito (ver apuntes sobre gramáticas regulares), se ve que la gramática y el autómata son
equivalentes. (NOTA: Fijénse que el autómata finito del enunciado, está completamente
definido, mientras que el autómata que se construye a partir de la gramática siguiendo el
citado procedimiento, no. No obstante, ambos autómatas son equivalentes, ver parte II de la
guía de estudio y el cuadro de la página 57 del libro base titulado .estados muertos y
autómatas sin ciertas transiciones").

14 Dado el alfabeto Σ = {x, y, z}, sea L el lenguaje que reconoce el siguiente autómata M:

9
y
q1 q2
x z
q0 y
x z
q3

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede expresarse mediante la expresión regular: x∗ y ∗ z ∗

(b). L puede expresarse mediante la expresión regular: x∗ (y + z)∗

(c). L puede expresarse mediante la expresión regular: x(yz)∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La opción (a) es falsa porque, por ejemplo, la expresión regular genera la
cadena vacía que no es aceptada por el autómata. Por la misma razón la opción (b) es falsa.
La opción (c) es falsa porque, por ejemplo, el autómata acepta la cadena xy que no puede
generarse con la expresión regular.

15 Dado el alfabeto Σ = {a, b, c}, sea M el siguiente autómata:


M = ({p, q, r, s}, {a, b, c}, δ, p, {q, r}), donde la función δ se define mediante el siguiente
diagrama de transiciones:
a, b

q
b c

p a s a, b, c
c
a, c
r

10
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L(M) contiene a la cadena vacía

(b). L(M) puede expresarse mediante la expresión regular (b + a)∗ b + b∗ c

(c). L(M) puede expresarse mediante la expresión regular b(b + a)∗ + cb∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. Es la expresión equivalente al autómata M. La opción a es falsa puesto que el


estado inicial del autómata no es de aceptación y por tanto no acepta la cadena vacía. La
opción b es falsa puesto que, por ejemplo, la expresión regular genera la cadena bc que no
acepta el autómata

16 Dada la siguiente gramática G = ({S, A, B}, {x, y, z}, P, S), donde S es el símbolo
inicial de la gramática y P el siguiente conjunto de producciones:

S → xAz
A → xAz
A→B
B → yB
B→y

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L(G) = {xn y n z m : n, m > 0}

(b). L(G) = {xn y m z n : n, m > 0}

(c). No es posible encontrar una gramática en Forma Normal de Chomsky equivalente a G

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. Con los no terminales S y A de la gramática se generan las subcadenas de x’s


y z’s con igual número n (con n > 0). El no terminal B generará subcadenas de y’s sin
importar el número (m con m > 0).

17 Dado un alfabeto Σ, sea L un lenguaje sobre Σ (L ⊂ Σ∗ ) que no puede ser reconocido


por ninguna Máquina de Turing determinista de una única cinta. Indicar cuál de las
siguientes afirmaciones es VERDADERA:

11
(a). Es posible encontrar una Máquina de Turing de varias cintas que acepte L

(b). Es posible encontrar una Máquina de Turing no determinista que acepte L

(c). Debe existir al menos una Máquina de Turing determinista que acepte L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. Existen lenguajes que no pueden ser reconocidos por ninguna máquina de
Turing. El no determinismo o introducir más cintas, no aumenta el poder de reconocimiento
de las máquinas de Turing.

18 Dado el alfabeto Σ = {a, b, c}, sea M el siguiente autómata a pila (Nota: se supone que
inicialmente la pila del autómata contiene el símbolo Z0 . El conjunto de símbolos de pila es
Γ = Σ ∪ {Z0 }. En el diagrama de transiciones, algunos arcos tienen una etiqueta en la que
el segundo elemento es ǫ. En este caso se considera que el autómata ejecuta esta transición
teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún
elemento de la pila):

b, ǫ; cc c, c; ǫ

c, ǫ; ǫ c, ǫ; ǫ ǫ, ǫ; Z0
q0 q3 q4 q5

a, ǫ; ǫ c, ǫ; ǫ

c, ǫ; ǫ
q1 q2

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La gramática S → accS|bScc|cc genera L(M)

(b). La gramática S → aScc|bScc|cc genera L(M)

(c). La gramática S → accS|bScc|ǫ genera L(M)

(d). Ninguna de las anteriores afirmaciones es verdadera

12
Solución: D. La opción (c) es falsa ya que, por ejemplo, la gramática genera la cadena
vacía que no acepta el autómata. La opción (b) es falsa ya que, por ejemplo, el autómata
acepta la cadena bccc que no puede se derivada con la gramática. Por la misma razón, la
opción (a) es falsa.

19 Dado el alfabeto Σ = {x, y, z}, indicar para qué valores de la etiqueta “Etiqueta-1”, el
autómata de la figura representa el lenguaje L = {zx3n zy n z|n > 0}. (Nota: Se supone que
inicialmente la pila del autómata está vacía. El conjunto de símbolos de pila es
Γ = Σ ∪ {Z0 }. En el diagrama de transiciones, algunos arcos tienen una etiqueta en la que
el segundo elemento es ǫ. En este caso se considera que el autómata ejecuta esta transición
teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún
elemento de la pila):
x, ǫ; x

z, ǫ; Z0 Etiqueta1 y, x; ǫ ǫ, x; ǫ
I M F G H

z, Z0 ; ǫ ǫ, x; ǫ

(a). Etiqueta − 1 = z, x; x

(b). Etiqueta − 1 = z, ǫ; ǫ

(c). Etiqueta − 1 = z, x; ǫ

(d). Etiqueta − 1 = z, ǫ; x

Solución: A. La opción (b) es falsa porque el autómata aceptaría la cadena zzz que no
pertenece al lenguaje puesto que n > 0. La opción (c) y (d) serían falsas puesto que alteran
la cuenta del número de x’s leídas. Es fácil comprobarlo considerando la cadena zxxxzyz

20 Dado el alfabeto Σ = {0, 1}, sea L el lenguaje que reconoce la máquina de Turing que
se define como:

M = ({q0 , q1 , qf }, {0, 1}, {0, 1, B}, δ, q0, B, {qf })

donde δ se define:

13
δ(q0 , 0) = (q1 , 1, →); δ(q1, 1) = (q0 , 0, →); δ(q1, B) = (qf , B, →)

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es regular y se puede expresar mediante la expresión regular (01)∗0

(b). L es recursivamente enumerable y no es independiente del contexto

(c). L es regular y se puede expresar mediante la expresión regular (10)∗1

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La máquina de Turing del enunciado, sólo utiliza las operaciones de escritura
para cambiar los símbolos 0’s por 1’s pero avanzando siempre a la derecha, por lo que, esos
cambios en la cinta son irrelevantes. La máquina de Turing lo único que comprueba es que
la cadena contenga el patrón 01 y al menos un símbolo 0 antes de llegar al estado de parada.
La opción (c) es falsa puesto que la expresión regular genera la cadena 1 que no acepta la
máquina de Turing.

14
Soluciones a los exámenes de Septiembre
2014
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Félix Hernández 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)

1
Nacional Original
1 Considere L el lenguaje que acepta el siguiente autómata:

a
q
a b
p s
b b
r
b
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). El lenguaje L puede expresarse mediante la expresión regular (a ∪ b)

(b). El lenguaje L puede expresarse mediante la expresión regular (a∗ ∪ b∗ )

(c). El lenguaje L puede expresarse mediante la expresión regular (a ∪ b)(a ∪ b)∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. El autómata sólo llega al estado de aceptación cuando lee o bien una sóla a o
bien una sóla b. La opción B es falsa puesto que esa expresión regular genera cadenas de
cero o más a’s y cadenas de cero o más b’s. La opción C es falsa porque esa expresión
regular genera cadenas de uno o más a’s seguidas de una o más b’s

2 Considere L el lenguaje que acepta el siguiente autómata:

b b
a
p q
a

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede generarse mediante la siguiente gramática con símbolo inicial S:


S → λ|bS|aA; A → aS|bA

2
(b). L puede generarse mediante la siguiente gramática con símbolo inicial S:
S → λ|bS|aA; A → aS|bA|λ

(c). L puede generarse mediante la siguiente gramática con símbolo inicial S:


S → bS|aA; A → aS|bA|λ

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. El autómata y la gramática de la opción A son equivalentes (es fácil construir


el autómata a partir de la gramática siguiendo el método expuesto en los apuntes de
gramáticas regulares). La opción B es falsa puesto que la gramática genera cadenas que no
están incluidas en L, como por ejemplo la cadena a. Por la misma razón la opción C es falsa
(por ejemplo, la gramática genera la cadena a que no está en L y además no genera cadenas
que sí están 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 autómata a pila (Nota: El conjunto de símbolos de pila es Γ = Σ ∪ {Z 0 } y se
supone que inicialmente la pila se encuentra vacía. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera
que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.):

x, ǫ; x y, x; ǫ

ǫ, ǫ; Z0 z, ǫ; ǫ z, Z0 ; ǫ
p q r s

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No importa ni el número ni el orden en que los símbolos z aparezcan en la cadena de


entrada

(b). El autómata a pila SÓLO comprueba que haya dos símbolos z en las cadenas del
lenguaje

(c). El autómata a pila es no determinista

(d). Ninguna de las anteriores afirmaciones es verdadera

3
Solución: D. El autómata reconoce el lenguaje L = {xn zy n z;n ≥ 0} que es un lenguaje
independiente del contexto no regular. El autómata es determinista y por tanto la opción C
es falsa. El autómata comprueba que haya exactamente dos z’s en las cadenas del lenguaje,
la primera después de las x’s y la segunda después de las y’s. Por tanto, importa tanto el
número como la posición de los símbolos z y, por consiguiente; las opciones A y B son
falsas.

4 Sea L el lenguaje que genera la gramática G definida de la siguiente forma:

G = ({S, A}, {x, y, z}, R, S)

donde R es el conjunto de producciones de la gramática y está compuesto por:

S → xSz
S→z
S → yAz
A → yAz
A→z

Indicar cuál 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}

Solución: D. La opción A es falsa, ya que la gramática es independiente del contexto y el


lenguaje de esta opción es recursivamente enumerable no independiente del contexto (la
gramática puede generar cadenas con distinto número de x’s, y’s y z’s). La opción B es
falsa, ya que la gramática del enunciado puede generar cadenas con distinto número de x’s
e y’s (por ejemplo, la gramática genera la cadena xyyzzzz que no está contenida en el
lenguaje de esta opción). Por igual motivo, la opción C es falsa, basta con comprobar, por
ejemplo, que la cadena xyzzz puede generarse con la gramática pero no pertenece al
lenguaje de la opción.

4
5 Considere la siguiente máquina 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:
Símbolo
Estado 0 1 X Y B
q0 (q1 , X, R) - - (q3 , Y, R) -
q1 (q1 , 0, R) (q2 , Y, L) - (q1 , Y, R) -
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 máquina de Turing. Suponga que en la entrada se
tiene la cadena 000111. Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La máquina de Turing no se parará si recibe de la entrada la cadena 000111 puesto


que no pertenece a L

(b). Si se ejecuta la máquina de Turing con la cadena 000111, la configuración de salida


sería XXXY Y Y Bq4 B

(c). Si se ejecuta la máquina de Turing con la cadena 000111, la configuración de salida


sería q4 XXXY Y Y

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. El lenguaje que acepta la máquina de Turing es L = {xn y n : n > 0}. Por
tanto, la opción A es falsa ya que la cadena, 000111 sí pertenece al lenguaje. Basta hacer
ejecutar la máquina con la cadena de entrada para comprobar que la opción C es falsa y la B
es verdadera.

6 Supongamos que L es un lenguaje que no puede ser reconocido por ninguna máquina de
Turing determinista. Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Es posible encontrar una máquina de Turing no determinista que acepte L

(b). Es posible encontrar una máquina de Turing de varias cintas que acepte L

(c). Es posible encontrar un autómata a pila no determinista que acepte L

(d). Ninguna de las anteriores afirmaciones es verdadera

5
Solución: D. Las máquinas de Turing deterministas, no deterministas y con varias cintas
son equivalentes en cuanto a reconocimiento de lenguajes. Además, si L no puede ser
reconocido por una máquina de Turing, menos lo será por un autómata 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 autómata a pila (Nota: El conjunto de símbolos de pila es Γ = Σ ∪ {a, Z 0 } y se
supone que inicialmente la pila se encuentra vacía. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera
que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.):

x, ǫ; a y, ǫ; ǫ

ǫ, ǫ; Z0 y, ǫ; ǫ z, Z0 ; ǫ
p q r s

Indicar cuál 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

Solución: D. El lenguaje que reconoce el autómata es L = {y n z; n ≥ 1}. L no puede


contener cadenas con x’s ya que, al leer las x’s , el autómata introduce un símbolo a en la
pila, que no se extrae posteriormente en ninguna transición. Además, sólo se llega al estado
de aceptación si se lee un símbolo z de la entrada y en la cima de la pila se encuentra un
símbolo Z0 . El número de símbolos y que contenga la cadena no importa , siempre que al
menos, haya una y. Por último, todas las y’s deben encontrarse delante del único símbolo 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 cuál 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
Solución: A. L2 es la concatenación de dos lenguajes regulares L y Σ∗ − L. Σ∗ − L es
regular porque es el complementario de un lenguaje regular.
9 Dado el siguiente autómata M: x

y
q
x
p x y

r
y

Considere L el lenguaje que acepta M. Indicar cuál de las siguientes afirmaciones es


VERDADERA:
(a). L puede expresarse mediante la expresión regular (x ∪ y)∗xy
(b). M es un autómata finito no determinista
(c). No es posible encontrar una gramática en Forma Normal de Chomsky que genere L
(d). L puede expresarse mediante la expresión regular x∗ y ∗xy
Solución: A. La opción B es falsa puesto que el autómata del enunciado es determinista. La
opción C es falsa puesto que si M es un autómata finito entonces el lenguaje que genera es
regular y por consiguiente, también es independiente del contexto. Como L no contiene a la
cadena vacía entonces, siempre es posible encontrar una gramática en Forma Normal de
Chomsky que genere L. La opción D es falsa puesto que la expresión regular genera
cadenas de cero o más x’s seguidas por cero o más y’s y terminadas en la subcadena xy. Por
tanto, esa expresión regular no genera, por ejemplo, la cadena xyxyxy, que si acepta el
autómata M. La expresión regular de la opción A genera cadenas con cualquier
combinación de x’s e y’s que terminen en la subcadena xy, que son las cadenas que acepta
el autómata.

7
10 Considere L, el lenguaje reconocido por el siguiente autómata:

c
p a q b r s
b

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L puede expresarse mediante la expresión regular a(bc)∗ bc

(b). L puede expresarse mediante la expresión regular abc(cb)∗

(c). L es independiente del contexto no regular

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La opción B es falsa puesto esta expresión regular genera, por ejemplo, la
cadena abccb que no acepta el autómata. La opción C es falsa, ya que el autómata del
enunciado es un autómata finito y por tanto, el lenguaje que reconoce siempre es regular. La
opción A es verdadera ya que todas las cadenas que genera la expresión regular pertenecen
al lenguaje que acepta el autómata y viceversa.

Nacional Reserva
11 Dado el lenguaje L = {xn y n : 0 ≤ n ≤ 5}, indicar cuál de las siguientes afirmaciones es
VERDADERA:

(a). L es regular

(b). L es independiente del contexto determinista no regular, a pesar de que el número n


de x’s e y’s esté acotado

(c). L es independiente del contexto no determinista y no regular, a pesar de que el


número n de x’s e y’s esté acotado

(d). L es recursivamente enumerable y no independiente del contexto

8
Solución: A. Al estar n acotado, se puede controlar mediante estados que el número de x’s
e y’s coincida. Por tanto, es suficiente un autómata finito para reconocer L y sería, 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 número impar de x. Indicar cuál de las
siguientes afirmaciones es FALSA:

(a). Existe una gramática en Forma Normal de Chomsky que genera L

(b). L es regular

(c). L es independiente del contexto determinista

(d). No existe un autómata finito determinista que genere L

Solución: D. Las opciones B y C son verdaderas ya que L es regular y por tanto, también es
independiente del contexto determinista. La opción A es verdadera ya que L no contiene a
la cadena vacía (porque las cadenas deben tener una longitud mayor o igual que 1). La
opción D es falsa porque si L es regular entonces podemos encontrar un autómata finito
determinista que lo reconozca.

13 Dado el lenguaje L = {xn zy n z: n ≥ 0}, indicar cuál de las siguientes afirmaciones es


VERDADERA:

(a). Existe una gramática en Forma Normal de Chomsky que genera el lenguaje L

(b). No existe un autómata 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

Solución: A. L es un lenguaje independiente del contexto no regular que no contiene a la


cadena vacía, existe por tanto, una gramática en Forma Normal de Chomsky que lo genera.
La opción B es falsa (mirar ejercicio número 3). La opción C es falsa, ya que las cadenas de
L deben contener una z después de las x’s y una z después de las y’s. 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 cuál 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

Solución: C. L no es regular, necesitamos una pila para comprobar que se leen o bien el
mismo número de x’s que de y’s o bien se leen el doble número de y’s que de x’s. Es no
determinista, ya que al leer un número arbitrariamente grande de x’s, no sabemos si se
deben reconocer el doble número de y’s o el mismo número de y’s (se abrirían por tanto,
dos caminos en el autómata 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
cuál 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

Solución: C. La opción A es falsa ya que se necesita guardar los símbolos que se van
leyendo de la entrada para comprobar que a continuación se leen los mismos símbolos 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 máquina de Turing para reconocer el lenguaje
L.

16 Dada la siguiente máquina de Turing:

M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, δ, q0, B, {qf })

donde la función de transición δ 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 cuál de las siguientes afirmaciones es
VERDADERA:

(a). L puede expresarse mediante la expresión regular 0(110)∗

(b). L es independiente del contexto no regular

(c). L puede expresarse mediante la expresión regular (110)∗0

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Puesto que la máquina de Turing sólo hace movimientos hacia la derecha, se
comprueba que las cadenas que acepta deben comenzar por cero y estar seguidas de cero o
más veces del patrón 110.

17 Considere la siguiente gramática independiente del contexto G definida de la siguiente


forma:

G = ({S}, {a, b}, R, S)

donde R es el conjunto de producciones de la gramática y está compuesto por:

S → aSbS
S → bSaS
S→λ

Sea L el lenguaje que genera G. Indicar cuál de las siguientes afirmaciones es


VERDADERA:

(a). Las cadenas de L tienen el mismo número de a’s que de b’s

(b). Todas las cadenas de L contienen la subcadena ab o ba

(c). En todas las cadenas de L los símbolos a preceden a los símbolos b

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Las cadenas que se generan del símbolo no terminal S, tienen el mismo
número de a’s que de b’s puesto que siempre que se introduce uno se introduce también el
otro. La opción B es falsa puesto que la cadena vacía, que puede ser generada por la
gramática, no contiene ese patrón. La opción 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 autómata a pila (Nota: El conjunto de símbolos de pila es Γ = Σ ∪ {a, Z 0 } y se
supone que inicialmente la pila se encuentra vacía. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera
que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.):

x, ǫ; a y, a; ǫ

ǫ, ǫ; Z0 Etiqueta ǫ, Z0 ; ǫ
p q r s

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

Solución: C. El autómata comprueba que lee el mismo número de símbolos x e y’s


introduciendo y extrayendo símbolos a de la pila, y acepta cuando encuentra el símbolo Z 0
en la cima de la pila. Por tanto, para leer un símbolo z entre las x ’s y las y’s, debemos
introducir una transición que lea dicho símbolo pero que no introduzca nada en la pila. La
opción A es falsa puesto que si extraemos un símbolo a de la pila al leer la z de la entrada,
entonces deberemos leer una y menos que las x’s, para llegar al estado de aceptación con la
pila vacía. Por el contrario, la opción C es falsa, porque si introducimos un símbolo a,
entonces deberemos leer una y más que el número de x’s para poder vaciar la pila.

19 Dado Σ un determinado alfabeto, sea L un lenguaje construido sobre Σ. Indicar cuál 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 número finito de cadenas, entonces L es regular

(d). Si el complementario de L tiene un número finito de cadenas, entonces L es regular

Solución: A. La opción 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 cuál de las siguientes afirmaciones es VERDADERA:

(a). Las tres expresiones regulares E1, E2 y E3 representan el mismo lenguaje

(b). Sólo 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). Sólo las expresiones E1 y E2 representan el mismo lenguaje

Solución: C. La opción B es falsa. Por ejemplo, la cadena bca no pertenece a E2 pero si a


E3. Por la misma razón, la opción A es falsa. La opción 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
Soluciones a los exámenes de Junio 2014
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Félix Hernández del Olmo


Plantillas de respuestas
Nacional 1 Semana

• Tipo A: 1. (b) 2. (d) 3. (d) 4. (d) 5. (c) 6. (b) 7. (a) 8. (b) 9. (c) 10.(c)
• Tipo B: 1. (b) 2. (d) 3. (a) 4. (b) 5. (d) 6. (c) 7. (d) 8. (c) 9. (c) 10.(b)
• Tipo C: 1. (b) 2. (c) 3. (d) 4. (b) 5. (c) 6. (b) 7. (d) 8. (c) 9. (a) 10.(d)

Nacional 2 Semana

• Tipo A: 1. (a) 2. (a) 3. (a) 4. (b) 5. (a) 6. (c) 7. (b) 8. (a) 9. (a) 10.(a)
• Tipo B: 1. (a) 2. (a) 3. (b) 4. (a) 5. (a) 6. (a) 7. (b) 8. (a) 9. (a) 10.(c)
• Tipo C: 1. (c) 2. (a) 3. (a) 4. (a) 5. (a) 6. (a) 7. (b) 8. (a) 9. (b) 10.(a)

1
Nacional 1 Semana
1 Dado el lenguaje L = {xn y m z p |n + m = p}, indicar cuál de las siguientes opciones es
verdadera:

(a). Existe un autómata finito determinista que reconoce el lenguaje L


(b). No es posible construir un autómata a pila que reconozca L
(c). L es independiente del contexto no regular y por tanto cualquier subconjunto de L es
independiente del contexto no regular
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. L es independiente del contexto no regular y por tanto, la opción a es falsa.


Por la misma razón, la opción b es falsa. La opción c es falsa, ya que L es independiente del
contexto no regular pero puede contener subconjuntos que sean lenguajes regulares, el más
trivial el lenguaje vacío que es subconjunto de cualquier lenguaje.

2 Dado el alfabeto Σ = {0, 1}, sea L el lenguaje que reconoce el siguiente autómata:
1 1
s
0 1
p 1 0 r
0 q 1

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Las cadenas que pertenecen al lenguaje L no contienen ningún símbolo 0


(b). Todas las cadenas que pertenecen al lenguaje L o no tienen ningún símbolo 0 o tienen
un número impar de símbolos 0’s
(c). La expresión regular 1∗ 0(01)∗ 11∗ genera el mismo lenguaje que L
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La opción a es falsa puesto que la cadena 000 pertenece a L. La opción b es


falsa porque L también contiene cadenas con un número par de ceros. Por ejemplo, la
cadena 0110 tiene un número par de 0’s y pertenece a L. La opción c es falsa puesto que el
autómata acepta cadenas que no puede ser generadas por la expresión regular, como por
ejemplo, la cadena vacía.

2
3 Dado el alfabeto Σ = {x, y, z}, considere el lenguaje L = {xn y n z 2n |n ≥ 0}. Indicar cuál
de las siguientes afirmaciones es verdadera:
(a). L es independiente del contexto determinista
(b). L es independiente del contexto no determinista
(c). L es recursivamente enumerable no independiente del contexto
Solución: C. Se puede demostrar mediante el lema de bombeo que L no es independiente
del contexto. El razonamiento sería similar al empleado para demostrar que {xn y n z n :
n ≥ 0} no es independiente del contexto (o por ejemplo el lenguaje del ejemplo 7.19 del
libro base)
4 Dado el alfabeto Σ = {0, 1}, considere L1 el lenguaje expresado por la siguiente
expresión regular 0∗ 1∗ 10 y L2 el lenguaje reconocido por el siguiente autómata (Nota:se
supone que inicialmente la pila se encuentra vacía. En el diagrama de transiciones algunos
arcos tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera
que el autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de
la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.):

0, ǫ; 0 1, 0; ǫ

ǫ, ǫ; Z0 1, 0; Z0 ǫ, Z0 ; ǫ 1, ǫ; ǫ 0, ǫ; ǫ
p q r s t u

Indicar cuál de las siguientes afirmaciones es verdadera:


(a). L1 ⊂ L2
(b). L2 ⊂ L1
(c). L1 ∩ L2 = ∅
(d). Ninguna de las anteriores afirmaciones es verdadera
Solución: B. L2 puede expresarse mediante la expresión regular 00∗ 110 y por tanto, toda
cadena de L2 está contenida en L1 . La opción a es falsa porque existen cadenas que están
en L1 pero no en L2 , como por ejemplo la cadena 10. La opción c es falsa ya que existen
cadenas contenidas en ambos lenguajes como por ejemplo, la cadena 0110.

3
5 Decidir si es verdadera o falsa la siguiente afirmación: “Para todo lenguaje regular L,
existe una gramática independiente del contexto en Forma Normal de Chomsky que genera
el mismo lenguaje”:

(a). Verdadera

(b). Falsa

Solución: B. Para que una gramática independiente del contexto pueda transformarse en
Forma Normal de Chomsky no debe generar la cadena vacía. Así, para todo lenguaje
regular, existe una gramática independiente del contexto que lo genera, pero para que ésta
pueda transformarse en Forma Normal de Chomsky, el lenguaje no debe contenter la
cadena vacía

6 Dada la siguiente gramática donde S es el símbolo inicial de la gramática:

S → aAA|bB|aABb
A → aA|C
B → bB|C
C→λ

Considere L el lenguaje que genera. Indicar cuál de las siguientes afirmaciones es


verdadera:

(a). L = {an bn |n > 0}

(b). L puede representarse mediante la expresión regular a∗ b∗

(c). L puede representarse mediante la expresión regular aa∗ bb∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La opción a es falsa, por ejemplo, la cadena a está en L y no tiene el mismo


número de a’s y b’s. La opción b es falsa ya que genera cadenas que no están en L, como
por ejemplo, la cadena vacía. La opción c es falsa ya que la gramática puede generar
cadenas con sólo a’s o con sólo b’s y la expresión regular genera cadenas con al menos una
a y una b.

7 Considere L el lenguaje generado por la siguiente expresión regular (aa∗ + bb∗ + aa∗ bb∗ ).
Indicar cuál de las siguientes afirmaciones es verdadera:

4
(a). L puede generarse mediante la gramática con símbolo inicial S:
S → aABb, A → aA|λ, B → Bb|λ

(b). L es independiente del contexto no regular

(c). Podemos encontrar una gramática independiente del contexto en Forma Normal de
Chomsky que genere L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. La opción a es falsa puesto que la gramática no genera cadenas de sólo a’s o
sólo b’s y la expresión regular sí. La opción b es falsa, ya que si el lenguaje se puede
generar mediante una expresión regular, siempre es un lenguaje regular. La opción c es
verdadera ya que el lenguaje no contiene a la cadena vacía.

8 Dados dos lenguajes independientes del contexto L1 y L2 , indicar cuál de las siguientes
afirmaciones es verdadera:
T
(a). L1 L2 siempre es independiente del contexto

(b). L1 + L2 siempre es independiente del contexto

(c). L1 − L2 siempre es independiente del contexto

Solución: B. La opción a) es falsa (ver ejemplo 7.26 del libro base). La opción c) es falsa
(ver teorema 7.29 del libro base).

9 Dado un alfabeto Σ, llamamos L1 al conjunto de lenguajes de Σ aceptados por máquinas


de Turing deterministas de una sola cinta, L2 al conjunto de lenguajes de Σ aceptados por
máquinas de Turing deterministas con varias cintas y L3 al conjunto de lenguajes de Σ
aceptados por máquinas de Turing no deterministas y con varias cintas ¿Cuál de las
siguientes afirmaciones es verdadera?

(a). L1 = L2 ⊂ L3

(b). L1 ⊂ L2 = L3

(c). Ninguna de las afirmaciones anteriores es cierta

Solución: C. Toda máquina de Turing de una cinta no determinista es equivalente (en


cuanto al lenguaje que acepta) a una máquina de Turing determinista de una cinta, y ésta es
equivalente a su vez a una máquina de varias cintas.

5
10 Considere la máquina de Turing siguiente:
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:
Símbolo
Estado 0 1 X Y B
q0 (q1 , X, R) - - (q3 , Y, R) -
q1 (q1 , 0, R) (q2 , Y, L) - (q1 , Y, R) -
q2 (q2 , 0, L) - (q0 , X, R) (q2 , Y, L) -
q3 - - - (q3 , Y, R) (q4 , B, R)
q4 - - - - -
Sea L el lenguaje que genera. Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Se puede construir un autómata a pila determinista que acepta L

(b). L contiene a la cadena vacía

(c). Se puede construir un autómata finito determinista que acepta L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. El lenguaje que reconoce la máquina de Turing es {0n 1n : n ≥ 1}, que es un


lenguaje independiente del contexto determinista que no contiene la cadena vacía (por
tanto, la opción b es falsa) y no es regular (por tanto, la opción c es falsa).

Nacional 2 Semana
11 Dado un alfabeto Σ, sea L un lenguaje independiente del contexto. Sea c(L) el
complementario de L (esto es, c(L) = Σ∗ − L). Indicar cuál de las siguientes afirmaciones
es verdadera:

(a). Es posible que existan dos gramáticas en forma normal de Chomsky, una para L y
otra para c(L)

(b). Es imposible que existan dos gramáticas en forma normal de Chomsky, una para L y
otra para c(L)

(c). Es imposible que exista una gramática en forma normal de Chomsky ni para L ni para
c(L)

6
Solución: B. La opción a es falsa puesto que o bien L o bien c(L) contiene a la cadena
vacía y una gramática que genere la cadena vacía no puede transformarse en Forma Normal
de Chomsky. La opción c es falsa puesto que si L no contiene a la cadena vacía, al ser
independiente del contexto, podremos encontrar una gramática en Forma Normal de
Chomsky que lo genere.
12 Considere L el lenguaje que acepta la siguiente máquina de Turing:
M = ({q0 , q1 , q2 , q3 , qf }, {0, 1}, {0, 1, X, Y, B}, δ, q0 , B, {qf })
donde δ se define mediante la siguiente tabla de transiciones:
Símbolo
Estado 0 1 B X Y
q0 (q2 , X, R) (q1 , X, R) (qf , B, R) - (q0 , Y, R)
q1 (q3 , Y, L) (q1 , 1, R) - - (q1 , Y, R)
q2 (q2 , 0, R) (q3 , Y, L) - - (q2 , Y, R)
q3 (q3 , 0, L) (q3 , 1, L) - (q0 , X, R) (q3 , Y, L)
qf - - - - -
Indicar cuál de las siguientes afirmaciones es verdadera:
(a). L es el conjunto de cadenas con el mismo número de ceros que de unos
(b). L = {0n 1n : n ≥ 0}
(c). L es el conjunto de cadenas con mayor número de ceros que de unos
(d). Ninguna de las anteriores afirmaciones es verdadera
Solución: A. La opción b es falsa porque la Máquina de Turing acepta la cadena 10 que no
pertenece al lenguaje {0n 1n : n > 0}. La opción c es falsa, por ejemplo, la Máquina de
Turing, no llega al estado de aceptación con la cadena 001. La opción a es verdadera ya que
la Máquina de Turing va marcando los símbolos 0 y los va equiparando con los símbolos 1
(y viceversa). De esta forma, sólo llega al estado de aceptación cuando ha equiparado todos
los 0’s con todos los 1’s (o viceversa).
13 Considere L el lenguaje que reconoce el siguiente autómata:
b a

q0 q1
b
a b

q2
a
7
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L puede generarse mediante la gramática: S → aB|bS, B → aB|bA|λ, A → aA|bS

(b). L puede generarse mediante la gramática: S → aB|bS|λ, B → aB|bA|λ, A → aA|bS

(c). L puede generase mediante la gramática: S → aA|bS, B → aB|bA|λ, A → aA|bS|λ

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La opción b es falsa ya que la gramática genera la cadena vacía que no está
contenida en L. La opción c es falsa ya que la gramática genera la cadena aba que no está
contenida en L. La opción a es verdadera. Basta con comprobar que el autómamta
equivalente a esa gramática coincide con el del enunciado.
14 Considere L el lenguaje que reconoce el siguiente autómata:
x, ǫ; a y, a; ǫ

ǫ, ǫ; Z0 y, a; ǫ ǫ, Z0 ; ǫ
p q r s

x, ǫ; aa
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L = {xn y m : 0 < n ≤ m ≤ 2n}

(b). L = {xn y 2n : n > 0}

(c). L = {x2n y n : n > 0}

(d). No es posible encontrar una gramática en Forma Normal de Chomsky que reconozca
L

Solución: A. El autómata va leyendo x’s de la entrada y va introduciendo en la pila uno o


dos símbolos a’s. Después va leyendo símbolos y’s de la entrada y sacando símbolos a’s de
la pila. Por tanto, para que en la cima de la pila se encuentre el símbolo Z0 y el autómata
pueda llegar al estado de aceptación, el número de y’s que lea de la entrada estará
comprendido entre n y 2n, donde n es el número de símbolos x’s que se hayan leído de la
entrada. La opción d es falsa ya que el lenguaje L no contiene la cadena vacía y por tanto,
siempre será posible encontrar una gramática en Forma Normal de Chomsky equivalente.
La opción c es falsa ya que por ejemplo, el autómata no acepta la cadena xxy. La opción b
es falsa ya que por ejemplo, el autómata acepta la cadena xxyyy.

8
15 Sea L = {xn y n+2 : n ≥ 0}. Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Siempre es posible encontrar una gramática independiente del contexto en Forma
Normal de Chomsky que genere L

(b). No es posible definir un autómata a pila determinista que reconozca L

(c). L es regular

(d). L es recursivamente enumerable no independiente del contexto

Solución: A. L no contiene a la cadena vacía y por tanto, siempre será posible encontrar
una gramática en Forma Normal de Chomsky que genere el lenguaje. Las opciones b, c y d
son falsas ya que L es independiente del contenxto determinista (el autómata que reconoce
L es similar al que reconoce el lenguaje {xn y n , n ≥ 0}).

16 Sea L el lenguaje que reconoce la siguiente máquina de Turing:

M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, δ, q0 , B, {qf })

donde la función de transición δ se define:

δ(q0 , 0) = (q1 , 1, R); δ(q1 , 1) = (q0 , 0, R); δ(q1 , B) = (qf , B, R)

Indicar cuál de 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

Solución: A. L puede expresarse mediante la expresión regular (01)∗ 0 (ver la solución al


siguiente ejercicio).

17 Sea L el lenguaje que reconoce la siguiente máquina de Turing:

M = ({q0 , q1 , q2 , qf }, {0, 1}, {0, 1, B}, δ, q0 , B, {qf })

donde la función de transición δ se define:

δ(q0 , 0) = (q1 , 1, R); δ(q1 , 1) = (q0 , 0, R); δ(q1 , B) = (qf , B, R)

9
Indicar cuál de de las siguientes afirmaciones es verdadera:

(a). L puede expresarse mediante la expresión regular (01)∗ 0

(b). L puede expresarse mediante la expresión regular 0(01)∗

(c). L puede expresarse mediante la expresión regular 0(01)∗ 1

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La máquina de Turing sólo mueve la cabeza hacia la derecha. De hecho, sólo
se va desplazando cuando va leyendo alternativamente 010101 . . . y cambiando del estado
q0 al estado q1 . Sólo mueve al estado de aceptación cuando estando en el estado q1 lee un
símbolo en blanco. Para llegar al estado q1 debe haber leído como último símbolo un 0. Al
mover la cabeza de lectura únicamente hacia la derecha, las operaciones de escritura que
hace en la cinta son irrelevantes.

18 Considere L, un lenguaje generado por una gramática independiente del contexto.


Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L siempre es regular

(b). L siempre es independiente del contexto no regular

(c). Depende de L

Solución: C. Una gramática independiente del contexto siempre generará un lenguaje


independiente del contexto pero puede que sea regular o no. Por ejemplo, la gramática
S → aABb; A → aA|λ; B → bB|λ, genera un lenguaje regular mientras que la gramática
S → aSb|λ genera un lenguaje independiente del contexto no regular.

19 Sea L1 = {xn y m |1 < n ≤ m ≤ 2n} y L2 el lenguaje generado por la siguiente


gramática:

S→A
A → xAy
A→B
B → xByy
B→λ

Indicar cuál de las siguientes afirmaciones es verdadera:

10
(a). L1 ⊂ L2

(b). L2 ⊂ L1

(c). L1 = L2

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La opción b es falsa ya que la cadena vacía pertenece a L2 y no a L1 . Por la


misma razón, la opción c es falsa. La opción a es verdadera ya que cualquier cadena de L1
puede generarse con la gramática del enunciado. Esto es así, porque el no terminal A deriva
cadenas con el mismo número de x’s e y’s y el no terminal B deriva cadenas con el doble
número de y’s que de x’s. Como las cadenas que se derivan de la gramática se derivan de
estos dos no terminales (primero derivando el no terminal A y luego derivando el no
terminal B), estas cadenas contendrán un número de y’s comprendido entre n y 2n siendo n
el número de x’s.

20 Dada la siguiente gramática con símbolo inicial A:

S → bS|aA|λ
A → aA|bB
B → bS|λ

y el siguiente autómata M :
a

b
a q1 b

q0 q2
b
a
a q3

b
Indicar cuál de las siguientes opciones es verdadera

(a). M y G son equivalentes

(b). M y G no son equivalentes

11
(c). L(M ) ∩ L(G) = ∅

(d). L(M ) puede expresarse mediante la expresión regular a∗ b + (a∗ bb)

Solución: B. La opción a es falsa ya que la cadena vacía que es aceptada por el autómata,
no pertenece al lenguaje de la gramática. La opción c es falsa ya que existen cadenas que
pertenecen a ambos lenguajes (como por ejemplo, la cadena ab) y por tanto, su intersección
es no vacía. La opción d es falsa ya que la gramática deriva cadenas que no pueden
generarse con la expresión regular, como por ejemplo la cadena bbb.

12
Soluciones a los exámenes de Septiembre
2013
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional Original

• Tipo A: 1. (a) 2. (b) 3. (c) 4. (a) 5. (a) 6. (d) 7. (d) 8. (a) 9. (d) 10.(c)
• Tipo B: 1. (a) 2. (b) 3. (d) 4. (a) 5. (c) 6. (a) 7. (a) 8. (d) 9. (c) 10.(d)
• Tipo C: 1. (d) 2. (d) 3. (c) 4. (a) 5. (a) 6. (a) 7. (a) 8. (c) 9. (d) 10.(b)
• Tipo D: 1. (d) 2. (c) 3. (a) 4. (a) 5. (d) 6. (b) 7. (c) 8. (d) 9. (a) 10.(a)

Nacional UE Reserva

• Tipo A: 1. (c) 2. (d) 3. (c) 4. (d) 5. (a) 6. (d) 7. (d) 8. (d) 9. (d) 10.(c)
• Tipo B: 1. (c) 2. (d) 3. (c) 4. (d) 5. (a) 6. (d) 7. (d) 8. (d) 9. (d) 10.(c)
• Tipo C: 1. (c) 2. (d) 3. (c) 4. (d) 5. (a) 6. (d) 7. (d) 8. (d) 9. (d) 10.(c)

1
Nacional Original
1 Dado el alfabeto Σ = {x, y, z}, indicar para qué valores de la etiqueta “Etiqueta-1”,
el autómata de la figura representa el lenguaje L = {zx3n zy n z|n > 0}. (Nota:se supone
que inicialmente la pila del autómata está vacía. El conjunto de símbolos de pila es Γ =
Σ ∪ {Z0 }. En el diagrama de transiciones, algunos arcos tienen una etiqueta en la que el
segundo elemento es ǫ. En este caso se considera que el autómata ejecuta esta transición
teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento
de la pila.):
x, ǫ; x

z, ǫ; Z0 Etiqueta1 y, x; ǫ ǫ, x; ǫ
I M F G H

z, Z0 ; ǫ ǫ, x; ǫ

(a). Etiqueta − 1 = z, x; x

(b). Etiqueta − 1 = z, ǫ; ǫ

(c). Etiqueta − 1 = z, x; ǫ

(d). Etiqueta − 1 = z, ǫ; x

Solución: A. La opción B es falsa porque el autómata aceptaría la cadena zzz que no


pertenece al lenguaje puesto que n > 0. La opción C y D serían falsas puesto que alteran la
cuenta del número de x’s leídas. Es fácil comprobarlo considerando la cadena zxxxzyz

2 Dado el alfabeto Σ = {x, y, c}, considere L el lenguaje que genera la siguiente gramática
G, donde S es el símbolo inicial de la gramática:

S → xyAyx
A → xyAyx
A→c

Indicar cuál de las siguientes afirmaciones es VERDADERA:

2
(a). L es el lenguaje formado por todos los palíndromos que se pueden formar con el
alfabeto Σ

(b). La cadena de menor longitud de L es la cadena c

(c). L es un lenguaje independiente del contexto determinista

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. La opción A es falsa puesto que, por ejemplo, la cadena xxcxx es un


palíndromo y no puede generarse con la gramática. La opción B es falsa puesto que la
cadena de menor longitud de L es xycyx. La opción C es verdadera ya que L lo acepta el
siguiente autómata a pila determinista:

y, ǫ; y y, y; ǫ
ǫ, ǫ; Z0 x, ǫ; x c, ǫ; ǫ
I M F G H J

x, ǫ; x ǫ, Z0 ; ǫ x, x; ǫ

3 Dado el lenguaje L que contiene un número finito de cadenas. Indicar cuál de las
siguientes afirmaciones es VERDADERA:

(a). Podemos utilizar el lema de bombeo para los lenguajes regulares para demostrar que
es un lenguaje independiente del contexto no regular

(b). El lema de bombeo para los lenguajes regulares permite demostrar que L es un
lenguaje regular

(c). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. Cualquier lenguaje que contenga un número finito de cadenas es un lenguaje


regular (la opción A es por tanto, falsa). La opción B es falsa puesto que el lema de bombeo
para lenguajes regulares permite demostrar que un lenguaje es no regular.

4 Dado el alfabeto Σ = {0, 1}, sea L el lenguaje que reconoce la máquina de Turing que se
define como:

3
M = ({q0 , q1 , qf }, {0, 1}, {0, 1, B}, δ, q0, B, {qf })

donde δ se define:

δ(q0 , 0) = (q1 , 1, →); δ(q1, 1) = (q0 , 0, →); δ(q1, B) = (qf , B, →)

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es regular y se puede expresar mediante la expresión regular (01)∗0

(b). L es recursivamente enumerable y no es independiente del contexto

(c). L es regular y se puede expresar mediante la expresión regular (10)∗1

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A.

5 Sea L el lenguaje que genera la gramática G definida de la siguiente forma:

G = ({S, A}, {x, y, z}, R, S)

donde S es el símbolo inicial de la gramática y R es el conjunto de producciones de la


gramática y está compuesto por:

S → zxxxAyz
A → xxxAy
A→z

Indicar cuál de las siguientes afirmaciones es FALSA:

(a). Es posible construir un autómata finito que reconozca L

(b). Es posible construir un autómata a pila determinista que reconozca L

(c). Es posible construir un autómata a pila no determinista que reconozca L

(d). Es posible construir una máquina de Turing que reconozca L

Solución: A. El lenguaje es independiente del contexto determinista no regular. El autómata


a pila determinista que reconoce el lenguaje es:

4
x, ǫ; x

z, ǫ; Z0 z, x; x y, x; ǫ ǫ, x; ǫ
I M F G H

z, Z0 ; ǫ ǫ, x; ǫ

6 Sea L el lenguaje que genera la siguiente gramática donde A es el símbolo inicial de la


gramática:

S → xAy
S → BC
A → xAy
A → xy
B → xB
C → yC
B→x
C→y

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es regular

(b). L es independiente del contexto determinista no regular

(c). L es independiente del contexto no determinista no regular

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. El lenguaje L puede definirse como L = {xn y n : n > 0}

7 Dado el alfabeto Σ = {x, y, z}, sea L1 el lenguaje generado por la siguiente gramática G
(donde S es el símbolo inicial de la gramática):
S → zzSxx
S → zzSxy
S → zzSyy
S → zzSyx
S →ǫ

5
Sea L2 el lenguaje que acepta el siguiente autómata a pila (Nota:se supone que inicialmente
la pila del autómata está vacía. El conjunto de símbolos de pila es Γ = Σ ∪ {#}. En el
diagrama de transiciones, algunos arcos tienen una etiqueta en la que el segundo elemento
es ǫ. En este caso se considera que el autómata ejecuta esta transición teniendo en cuenta
únicamente el símbolo actual de la cadena de entrada sin inspeccionar el contenido de la
cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento de la pila.)::
z, ǫ; z x, z; ǫ
x, z; ǫ
ǫ, ǫ; # ǫ, #; ǫ
I M F G
y, z; ǫ

y, z; ǫ

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: D. La opción A es falsa porque la gramática genera la cadena vacía y el autómata


no la acepta. Por la misma razón la opción B es falsa. La opción C es falsa porque la cadena
zx pertenece a L2 pero no a L1 .

8 Sea L el lenguaje que genera la siguiente gramática donde S es el símbolo inicial de la


gramática:

S → xAy
S → BC
A → xAy
A → xy
B → xB
C → yC
B→x
C→y

Indicar cuál de las siguientes afirmaciones es VERDADERA:

6
(a). L es independiente del contexto no regular
(b). L = {xn y n : n > 0}
(c). L es un lenguaje regular y puede representarse mediante la expresión regular (x∗ y ∗ )
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. L es el lenguaje definido por {xn y m : n, m > 0} que es un lenguaje regular.


Por tanto, la opción A es falsa. La opción B es falsa puesto que en L no se impone que las
cadenas simpre deban tener el mismo número de x’s que de y’s. La opción C es falsa puesto
que la expresión regular (x∗ y ∗ ) genera la cadena vacía y la gramática no.

9 Si el estado inicial de un autómata finito determinista no es de aceptación, ¿Es posible que


reconozca la palabra vacía?

(a). No
(b). Si

Solución: A.
10 Sea L el lenguaje que genera la gramática G definida de la siguiente forma:

G = ({S, A}, {x, y, z}, R, S)

donde S es el símbolo inicial de la gramática y R es el conjunto de producciones de la


gramática y está compuesto por:
S → zxxxAyz
A → xxxAy
A→z
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No es posible construir una gramática en Forma Normal de Chomsky que genere L
(b). L = {x3n y n |n > 0}
(c). L = {zx3n y n z|n > 0}
(d). L = {zx3n zy n z|n > 0}

Solución: D. Basta con comprobar las cadenas que genera la gramática. La opción A es
falsa puesto que L es independiente del contexto y no contiene a la cadena vacía.

7
Nacional Reserva
11 Sean α, β y γ tres expresiones regulares arbitrarias. Indique cuál de las siguientes
afirmaciones es FALSA:

(a). (α ∪ β ∪ γ)∗ = (α∗ β ∗ γ ∗ )∗


(b). α∗ (α ∪ β ∪ γ)∗ = (α∗ β ∗ ∪ γ ∗ α∗ )∗ α∗
(c). Depende de las expresiones concretas α, β, γ

Solución: C. Todas las expresiones coinciden con (α ∪ β ∪ γ)∗ independientemente de las


expresiones concretas de α, β, γ

12 Dado el alfabeto Σ = {x, y, z}. Considere el lenguaje L = {xn y n z n |n ≥ 0}. Indicar


cuál de las siguientes afirmaciones es VERDADERA:

(a). L es un lenguaje regular


(b). L es un lenguaje independiente del contexto determinista no regular
(c). No es posible construir una máquina de Turing que reconozca L
(d). L es un lenguaje recursivamente enumerable

Solución: D.

13 Si un autómata finito tiene más de un estado inicial, podemos afirmar que:

(a). El autómata siempre es un autómata finito NO determinista


(b). El autómata siempre es un autómata finito determinista
(c). El autómata finito no está bien definido

Solución: C

14 Dado el alfabeto Σ = {x, y, c}, sea M el siguiente autómata a pila (Nota:se supone que
inicialmente la pila del autómata está vacía. El conjunto de símbolos de pila es
Γ = Σ ∪ {Z0 }. En el diagrama de transiciones, algunos arcos tienen una etiqueta en la que
el segundo elemento es ǫ. En este caso se considera que el autómata ejecuta esta transición
teniendo en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún
elemento de la pila.):

8
x, ǫ; x x, x; ǫ

ǫ, ǫ; Z0 c, ǫ; ǫ ǫ, Z0 ; ǫ
A B C D

y, ǫ; y y, y; ǫ

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). M es un autómata a pila no determinista

(b). El lenguaje que acepta M contiene a la cadena vacía

(c). El lenguaje que acepta M puede generarse mediante la gramática: S → xyAyx,


A → xyAyx, A → c

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. M es determinista y por esto la opción A es falsa. La opción B es falsa


porque, por ejemplo, el autómata acepta la cadena xcy que no puede derivarse mediante la
gramática.

15 ¿Es posible construir un autómata finito determinista que por cada x que lea de la
entrada escriba una z en la cinta de entrada al final de la cadena, y por cada y que lea de la
entrada escriba dos z’s en la cinta de entrada?

(a). No

(b). Si

Solución: A.
16 Dado el alfabeto Σ = {a, b}, sea L el lenguaje que acepta el siguiente autómata:
a

B b
a
a
A
b
C b

9
Indicar cuál de las siguientes afirmaciones es FALSA:

(a). L puede representarse mediante la expresión regular (a + b + ǫ)(a + b)∗

(b). L puede representarse mediante la expresión regular (a + b)∗ (a + b)∗

(c). L puede representarse mediante la expresión regular (a + b)∗

(d). Ninguna de las anteriores afirmaciones es falsa

Solución: D.

17 Dado el alfabeto Σ = {x, y, z}, sea L el lenguaje que genera la siguiente gramática G,
donde S es el símbolo inicial de la gramática:

S → xxSzz
S → yxSzz
S → yySzz
S → xySzz
S →ǫ

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es un lenguaje regular y puede representarse mediante la expresión regular


(x + y)∗(zz)∗

(b). L es un lenguaje independiente del contexto no regular que contiene al lenguaje


generado por la expresión regular (xx)∗ (zz)∗

(c). Es posible encontrar una gramática en Forma Normal de Chomsky que genere L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. L es un lenguaje independiente del contexto no regular (la opción A es, por
tanto, falsa). La opción D es falsa puesto que si fuera cierta, todas las cadenas que genera la
expresión regular deben poder derivarse mediante la gramática. Por ejemplo, la expresión
regular genera la cadena zz que no puede derivarse con la gramática. La opción C es falsa
puesto que L contiene a la cadena vacía.

18 Dado un lenguaje L para el que no es posible encontrar una máquina de Turing que lo
reconozca, indicar cuál de las siguientes afirmaciones es VERDADERA:

10
(a). Dependiendo de L es posible encontrar una máquina de Turing de dos cintas que lo
reconozca

(b). Dependiendo de L es posible encontrar una máquina de Turing de tres cintas que lo
reconozca

(c). Dependiendo de L es posible encontrar una máquina de Turing no determinista que lo


reconozca

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D.

19 Dado el alfabeto Σ = {0, 1}, sea M el autómata finito definido mediante la siguiente
tabla de transiciones:

Estado 0 1
→ *p p q
q r q
r p s
*s s s

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). El lenguaje que acepta M puede expresarse mediante la expresión regular


0∗ (11∗ 01)(0 + 1)∗

(b). M es un autómata finito no determinista

(c). El lenguaje que acepta M no puede expresarse mediante una expresión regular
porque es un lenguaje independiente del contexto no regular

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: D. La cadena 0100 no puede ser generada por la expresión regular de la opción A
y sí la reconoce el autómata. M es determinista con lo que la opción B es falsa. La opción C
es falsa puesto que el lenguaje aceptado por un autómata finito, siempre es un lenguaje
regular.

20 Dado el alfabeto Σ = {x, y}, sea M el autómata de la figura y L el lenguaje que acepta
M.

11
x, ǫ; ǫ y, ǫ; ǫ

ǫ, ǫ; Z0 ǫ, ǫ; ǫ ǫ, Z0 ; ǫ
A B C D

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). No es posible construir un automáta finito determinista que reconozca L

(b). M es un autómata a pila determinista

(c). Si definimos L1 = {xn y n |n ≥ 0} entonces L1 ⊂ L

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C: la opción A es falsa puesto que L es un lenguaje regular. La opción B es falsa


puesto que el autómata tiene varios puntos de no determinismo, por ejemplo, en el estado
B, si en la entrada viene una x. La opción C es verdadera, puesto que todas las cadenas de
L1 pertenecen también a L.

12
Soluciones a los exámenes de Junio 2013
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional 1 Semana

• Tipo A: 1. (a) 2. (d) 3. (a) 4. (c) 5. (b) 6. (c) 7. (a) 8. (c) 9. (b) 10. (a)
• Tipo B: 1. (a) 2. (d) 3. (a) 4. (c) 5. (a) 6. (b) 7. (c) 8. (b) 9. (a) 10. (c)
• Tipo C: 1. (c) 2. (b) 3. (a) 4. (a) 5. (b) 6. (c) 7. (c) 8. (a) 9. (a) 10. (d)

Nacional UE Original

• Tipo A: 1. (c) 2. (d) 3. (b) 4. (d) 5. (a) 6. (a) 7. (b) 8. (c) 9. (a) 10. (a)
• Tipo B: 1. (c) 2. (d) 3. (b) 4. (c) 5. (b) 6. (a) 7. (d) 8. (a) 9. (a) 10. (a)
• Tipo C: 1. (a) 2. (a) 3. (b) 4. (c) 5. (a) 6. (c) 7. (d) 8. (a) 9. (b) 10. (d)
• Tipo D: 1. (a) 2. (a) 3. (c) 4. (d) 5. (b) 6. (d) 7. (b) 8. (a) 9. (c) 10. (a)

1
Nacional 1 Semana
1 Dado el alfabeto Σ = {x, y, z}, sea L1 = {xn y n z n : n > 0} y sea L2 el lenguaje
reconocido por la siguiente máquina de Turing (Nota: Se supone que la máquina tiene
el mismo alfabeto Σ y el conjunto de símbolos de cinta es Γ = Σ ∪ {B} donde B
representa el símbolo en blanco. Cuando analiza una cadena, la máquina de Turing parte
de la configuración inicial donde la cinta de entrada contiene un símbolo en blanco seguido
de la cadena a analizar seguida de blancos; la cabeza de lectura/escritura se encuentra situada
en el primer símbolo a la izquierda de la cadena).
x; x, ←
y; y, → y; y, ← x; x, →
z; z, → z; z, ← z; z, →

x; x, ← B; B, →
q0 q1 q2
y; y, ←
q5 q4 q3
z; z, ← B; B, →

x; x, → x; x, ←
y; y, → y; y, ←
z; z, ←

¿Cuál de las siguientes afirmaciones es correcta?

(a). L1 = L2

(b). L1 6= L2

(c). L1 ⊂ L2

(d). L2 ⊂ L1

Solución: C. El lenguaje L2 está formado por cadenas que tienen al menos una x, una y y
una z, no pone condiciones sobre órdenes ni cantidades. El lenguaje L1 está formado por
cadenas que tienen el mismo número de x’s, y’s y z’s en ese orden, y por lo menos una, por
lo tanto todas las palabras del lenguaje L1 cumplen las condiciones del lenguaje L2 .

2 Dada la siguiente gramática, donde S es el símbolo inicial de la gramática:

2
S → A1B
A → 0A|λ
B → 0B|1B|λ
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La gramática genera el lenguaje representado por la expresión regular 0∗ 1(0 + 1)∗
(b). La gramática genera el lenguaje representado por la expresión regular 0∗ 10∗ 1∗
(c). Puesto que es una gramática independiente del contexto no existe ningún autómata
finito que reconozca el lenguaje generado por la gramática

Solución: A. La gramática genera cadenas formadas por ristras de 0’s (generados por el no
terminal A), seguidas de un 1 y seguidas de cualquier número de 0’s y 1’s (generados por el
no terminal B). La opción b es falsa porque no genera la cadena 0110 que sí se puede
derivar de la gramática. La opción c es falsa porque aunque efectivamente la gramática es
independiente del contexto, genera un lenguaje regular.

3 Dada la siguiente gramática, donde A es el símbolo inicial de la gramática:


S → A1B
A → 0A|λ
B → 0B|1B|λ
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La gramática genera el lenguaje representado por la expresión regular 0∗


(b). La gramática genera el lenguaje representado por la expresión regular 0∗ 1(0 + 1)∗
(c). La gramática genera un lenguaje con un número finito de cadenas
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. El lenguaje que genera la gramática está formado por cadenas de cero o más
0’s. Las cadenas no contienen ningún 1 y por tanto, la opción b es falsa. Este lenguaje
contiene un número infinito de cadenas y por tanto, la opción c es falsa.

4 Dado un alfabeto Σ, llamamos L1 al conjunto de lenguajes de Σ aceptados por máquinas


de Turing deterministas de una sola cinta, L2 al conjunto de lenguajes de Σ aceptados por
máquinas de Turing deterministas con varias cintas y L3 al conjunto de lenguajes de Σ
aceptados por máquinas de Turing no deterministas y con varias cintas ¿Cuál de las
siguientes afirmaciones es verdadera?

3
(a). L1 = L2 ⊂ L3

(b). L1 ⊂ L2 = L3

(c). Ninguna de las afirmaciones anteriores es cierta

Solución: C. Toda máquina de Turing de una cinta no determinista es equivalente (en


cuanto al lenguaje que acepta) a una máquina de Turing determinista de una cinta, y ésta es
equivalente a su vez a una máquina de varias cintas.

5 Dado el alfabeto Σ = {a, b}, sea L el lenguaje que reconoce el siguiente autómata:
a

q1
a
q0 b
b
q2 a

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L contiene al lenguaje generado por la expresión regular ba∗

(b). L puede generarse también mediante una gramática en Forma Normal de Chomsky

(c). L puede representarse mediante la expresión regular (ǫ + b)a∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A: Todas las cadenas que genera la expresión regular ba∗ las acepta el autómata.
La expresión regular que representa el lenguaje que acepta el autómata del enunciado es
ǫ + ba∗ . La opción b es falsa puesto que el lenguaje contiene la cadena vacía. La opción c es
falsa puesto que la expresión regular genera cadenas de la forma a∗ que no son aceptadas
por el autómata.

6 Dado el autómata finito definido mediante la siguiente tabla de transiciones:

Estado 0 1
→A A B
*B B A

4
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). El lenguaje que acepta este automáta finito se puede representar mediante la
expresión regular (1 + 01)∗ 0

(b). El autómata finito no puede reconocer cadenas de longitud mayor que 106

(c). El autómata finito no puede reconocer cadenas que contengan dos unos consecutivos

(d). El lenguaje que acepta este autómata finito se puede representar mediante la
expresión regular (0∗ 10∗ 1)∗ 0∗ 10∗

Solución: D. La opción a es falsa puesto que el autómata no reconoce la cadena 0 que si


genera la expresión regular. . La opción b es falsa puesto que, al haber bucles, el autómata
finito puede reconocer cadenas de longitud arbitrariamente grandes. La opción C es falsa
puesto que el autómata acepta la cadena 111 que sí contiene dos ceros consecutivos.

7 Sea L el lenguaje definido por el conjunto de cadenas del alfabeto Σ = {a, b, c} que
contienen al menos una a y al menos una b. Indicar cuál de las siguientes afirmaciones es
VERDADERA:

(a). L es un lenguaje independiente del contexto no regular

(b). L es un lenguaje regular y por tanto, es posible encontrar una expresión regular que lo
reconozca

(c). La definición del lenguaje impone restricciones acerca del número de c’s que deben
contener las cadenas del lenguaje

Solución: B. La opción c es falsa puesto que la definición del lenguaje no indica ninguna
restricción acerca de las c’s. La opción a es falsa, ya que L es la intersección de dos
lenguajes regulares que siempre es regular. Se deja al alumno como ejercicio construir un
autómata finito que reconozca el lenguaje L.

8 Dada la siguiente gramática, donde S es el símbolo inicial de la gramática:

S → SS|(S)|λ

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Es una gramática regular y por tanto, el lenguaje que genera es regular

5
(b). No es una gramática regular y por tanto, el lenguaje que genera nunca puede ser
regular

(c). El lenguaje que genera la gramática del enunciado es independiente del contexto no
regular

Solución: C. La gramática genera el lenguaje formado por las cadenas de paréntesis


equilibrados. La opción a es falsa puesto que la gramática no es regular. La opción b es
falsa porque existen gramáticas no regulares que generan lenguajes regulares.

9 Dado un alfabeto Σ, sea L un lenguaje independiente del contexto. Sea c(L) el


complementario de L (esto es, c(L) = Σ∗ − L). Indicar cuál de las siguientes afirmaciones
es VERDADERA:

(a). Es posible que existan dos gramáticas en forma normal de Chomsky, una para L y
otra para c(L)

(b). Es imposible que existan dos gramáticas en forma normal de Chomsky, una para L y
otra para c(L)

(c). Es imposible que exista una gramática en forma normal de Chomsky ni para L ni para
c(L)

Solución: B. La opción a es falsa puesto que o bien L o bien c(L) contiene a la cadena
vacía y una gramática en Forma Normal de Chomsky no puede generar la cadena vacía. La
opción c es falsa puesto que si L no contiene a la cadena vacía, al ser independiente del
contexto, podremos encontrar una gramática en Forma Normal de Chomsky que lo genere.

10 Dado el alfabeto Σ = {0, 1}, sea el lenguaje L = {0n 1m : n ≤ m}. Indicar cuál de las
siguientes afirmaciones es VERDADERA:

(a). Es posible construir un autómata a pila determinista que reconoce L

(b). L es un lenguaje regular

(c). Cualquier autómata a pila que reconozca L debe ser no determinista

Solución: A. La opción b es falsa puesto que es un lenguaje no regular. La opción c es falsa,


ver ejercicio 6.4.2 del libro base.

6
Nacional UE Original
11 Dado el alfabeto Σ = {a, b}, sea L el lenguaje que reconoce el siguiente autómata finito
b a a

q0 a q1 b q2 a q3 b

b
Indicar cuál de las siguientes gramáticas regulares con símbolo inicial S, genera el lenguaje
L:

(a). S → bS|aS|ǫ,A → aA|bB,B → bS|ǫ

(b). S → bS|aA,A → aA|bB,B → bS|ǫ

(c). S → bS|aS|aA|ǫ,A → aA,B → bS|ǫ

(d). Ninguna de las anteriores gramáticas genera L

Solución: D.La opción a es falsa puesto que esa gramática genera la cadena a y el autómata
no la acepta (por la misma razón la opcion c es falsa). La opción b es falsa puesto que el
autómata acepta la cadena b y la gramática no la genera.

12 Si el estado inicial de un autómata a pila no es de aceptación, ¿Es posible que reconozca


la palabra vacía?

(a). No

(b). Si

Solución: B. Existe la posibilidad de que el autómata tenga definida una transición desde el
estado inicial sin consumir ningún símbolo de la entrada. En este caso, el autómata podría
aceptar la cadena vacía y el estado inicial podría no ser de aceptación.

13 Dada la siguiente gramática, donde B es el símbolo inicial de la gramática:

S → A1B
A → 0A|λ
B → 0B|1B|λ

7
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La gramática genera el lenguaje representado por la expresión regular (0 + 1)∗

(b). Las cadenas pertenecientes al lenguaje que genera la gramática deben tener al menos
un símbolo 1

(c). El lenguaje que genera la gramática es independiente del contexto no regular

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. la gramática genera cadenas formadas por cualquier combinación de 0’s y 1’s.

14 Dada la siguiente gramática, donde S es el símbolo inicial de la gramática:


S → AAA|B
A → aA|B
B→λ
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). La cadena vacía no forma parte del lenguaje generado por la gramática

(b). El lenguaje que genera la gramática es independiente del contexto no regular

(c). El lenguaje que genera la gramática puede expresarse mediante la expresión regular:
a∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C. La opción a es falsa puesto que la gramática sí genera la cadena vacía. La


opcion b es falsa puesto que el lenguaje que genera es regular. La opción c es verdadera
puesto que el no terminal B sólo genera la cadena vacía, por tanto, la gramática genera
cadenas con cualquier número de a’s.

15 Las máquinas de Turing se diferencian de los autómatas finitos y de los autómatas a pila
en que

(a). En las máquinas de Turing la cabeza lectora puede retroceder

(b). Las máquinas de Turing pueden escribir sobre su cinta

(c). Las dos afirmaciones anteriores son ciertas

8
Solución: C. Por la propia definición de máquina de Turing.

16 Sea el alfabeto Σ = {0, 1}. Dado el lenguaje L1 = {0n 1m 0n |n, m >= 0} y el lenguaje
L2 reconocido por el siguiente autómata a pila (Nota:se supone que inicialmente la pila del
autómata está vacía. El conjunto de símbolos de pila es Γ = Σ ∪ {a, Z0 }. En el diagrama de
transiciones, algunos arcos tienen una etiqueta en la que el segundo elemento es ǫ. En este
caso se considera que el autómata ejecuta esta transición teniendo en cuenta únicamente el
símbolo actual de la cadena de entrada sin inspeccionar el contenido de la cima de la pila.
Por tanto, en estas transiciones no se extrae ningún elemento de la pila.):

0, ǫ; a 1, a; ǫ

0, ǫ; Z0 1, a; ǫ 1, Z0; ǫ
I M F G

Podemos afirmar que:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: D. El autómata reconoce el lenguaje {0n 1n : n > 0}

17 Sea L el lenguaje que genera la siguiente gramática, donde S es el símbolo inicial de la


gramática:

S → 0S1|A
A → 1A0|S|λ
Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). Existe un autómata a pila que reconoce L y que puede vaciar la pila antes de aceptar
las cadenas

(b). Existe una gramática en Forma Normal de Chomsky que genera L

9
(c). Las dos afirmaciones anteriores son verdaderas

Solución: A. La opcion b es falsa puesto que el lenguaje que genera la gramática contiene a
la cadena vacía. Por esta misma razón, la opción c es falsa. Se deja como ejercicio al
alumno, construir el autómata a pila que reconozca el lenguaje que genera la gramática.

18 Dado el lenguaje L = {xn y n : n ≥ 0}, el lema de bombeo para los lenguajes regulares
permite demostrar que:

(a). No es posible construir un autómata finito que reconozca L

(b). No es posible construir un autómata a pila que reconozca L

(c). L es un lenguaje regular

Solución: A. Por el propio enunciado del lema de bombeo para los lenguajes regulares.

19 El resultado de concatenar dos lenguajes independientes de contexto, ¿es siempre un


lenguaje independiente de contexto?

(a). Sí, siempre

(b). No, nunca

(c). Depende de los lenguajes que se consideren

Solución: A. Ver Teorema 7.24 del libro base de la asignatura.

20 Dado el alfabeto Σ = {a, b}, sea L el lenguaje que reconoce el siguiente autómata:
a

q1
a
q0 b
b
q2 a

Indicar cuál de las siguientes afirmaciones es VERDADERA:

(a). L es independiente del contexto no regular

10
(b). L puede generarse también mediante una gramática en Forma Normal de Chomsky

(c). L contiene al lenguaje generado por la expresión regular a∗

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. La opción a es falsa puesto que L debe ser regular ya que lo reconoce un
autómata finito. La opción c es falsa puesto puesto que el autómata no acepta la cadena
vacía ni cadenas formadas únicamente por símbolos a’s. La opción B es verdadera puesto
que el lenguaje no contiene a la cadena vacía.

11
Soluciones a los exámenes de Septiembre
2012
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional UE Original

• Tipo A: 1. (b) 2. (b) 3. (a) 4. (d) 5. (d) 6. (b) 7. (b) 8. (d) 9. (b) 10.(c)
• Tipo B: 1. (b) 2. (b) 3. (b) 4. (d) 5. (a) 6. (d) 7. (d) 8. (b) 9. (c) 10.(b)
• Tipo C: 1. (b) 2. (b) 3. (a) 4. (b) 5. (d) 6. (d) 7. (d) 8. (c) 9. (b) 10. (b)

Nacional UE Reserva

• Tipo A: 1. (b) 2. (b) 3. (b) 4. (a) 5. (a) 6. (b) 7. (d) 8. (a) 9. (a) 10. (a)
• Tipo B: 1. (b) 2. (b) 3. (d) 4. (a) 5. (b) 6. (a) 7. (a) 8. (a) 9. (a) 10. (b)
• Tipo C: 1. (b) 2. (a) 3. (b) 4. (b) 5. (a) 6. (a) 7. (a) 8. (a) 9. (d) 10. (b)

1
Nacional UE Original

1 Sea la expresión regular ((abc)∗ + (acb)∗ + (bac)∗ + (bca)∗ + (cab)∗ + (cba)∗ )

(a). Todas las cadenas del lenguaje tienen un número impar de letras.

(b). El lenguaje está formado por todas las posibles cadenas que tengan el mismo número
de a’s, b’s y c’s.

(c). El lenguaje está formado por cadenas que tengan el mismo número de a’s, b’s y c’s
que empiecen por la subcadena “abc” y terminen con la subcadena “cba”.

(d). Ninguna de las anteriores

Solución: D. Sea L el lenguaje generado por la expresión regular del enunciado. La opción
b es falsa ya que cualquier cadena que pertenezca a L tiene el mismo número de a’s, b’s y
c’s pero no genera, por ejemplo, la cadena aabbcc. La opción a es falsa puesto que, por
ejemplo, la cadena abcabc pertenece a L y tiene un número par de letras. La opción c es
falsa puesto que, por ejemplo, la cadena bac pertenece a L y no cumple las condiciones que
marca esta opción.
∗ ∗
2 Dada la expresión regular ((a + b + acb + ba)∗ + (a∗ + bc∗ )) c ((ac∗ + b∗ ) + (a + bc)∗ )
. Podemos asegurar que el lenguaje que define es:

(a). Un lenguaje regular.

(b). Un lenguaje independiente del contexto determinista, no regular.

(c). Un lenguaje independiente del contexto no determinista, no regular.

(d). Un lenguaje recursivamente enunmerable, no independiente del contexto.

Solución: A. Cualquier lenguaje generado por una expresión regular es un lenguaje regular.

3 ¿Cuál de los siguientes autómatas tienen mayor capacidad de representación?:

(a). Los autómatas finitos no deterministas.

(b). Los autómatas finitos deterministas.

(c). Todos los autómatas anteriores tienen la misma capacidad de representación.

2
Solución: C. Los autómatas finitos deterministas y los autómatas finitos no deterministas
son equivalentes en cuanto a su capacidad de representación.
4 ¿Cuál de las siguientes máquinas tienen mayor capacidad de representación?:

(a). Las máquinas de Turing no deterministas.

(b). Las máquinas de Turing deterministas.

(c). Las máquinas de Turing de múltiples cintas.

(d). Todas las anteriores máquinas tienen la misma capacidad de representación.

Solución: D. Cualquier máquina de Turing no determinista es equivalente a una máquina de


Turing de múltiples cintas y cualquier máquina de Turing de múltiples cintas es equivalente
a una máquina de Turing de una única cinta.
5 ¿Un autómata finito puede reconocer una palabra con solo llegar al estado de aceptación?.

(a). Si.

(b). No.

Solución: B. No, un autómata finito reconoce una palabra cuando al terminar de leer la
palabra, ha llegado a un estado de aceptación.
6 ¿Un autómata finito puede reconocer una palabra sin llegar al estado de aceptación?.

(a). Si.

(b). No.

Solución: B. Para que un autómata finito reconozca una palabra es necesario que llegue a
un estado de aceptación cuando termina de leer dicha palabra.
7 ¿Una máquina de Turing puede reconocer una cadena de un lenguaje decidible con solo
llegar al estado de parada?.

(a). Si.

(b). No.

Solución: B. Si se trata de un lenguaje decidible la máquina de Turing siempre llega a un


estado de parada independientemente de que la cadena pertenezca o no al lenguaje.

3
8 Dado el lenguaje L = {xn y n : n > 0}. Podemos afirmar que:

(a). Las dos máquinas de Turing de las opciones c y d reconocen el lenguaje L.

(b). Ninguna de las máquinas de Turing de las opciones c ó d reconoce el lenguaje L.

F
y, N, ← x, N, ←
λ, S, ← x, x, → a, N, ←
y, y, →

x, a, → λ, λ, ←
Q0 Q1 Q2

x, x, ←
y, y, ←
a, x, ← y, λ, ←

Q3
(c).

x, λ, → y, λ, →

y, λ, → λ, λ, →
Q0 Q1 F
(d).

Solución: B. Es fácil comprobar que ninguna de las máquinas de las opciones c y d


reconoce el lenguaje del enunciado.

9 Dada la siguiente máquina

4
λ, S; A
λ, S; B
λ, A; xAy
λ, B; xxBy
λ, A; xy
λ, B; xxy

λ, λ; # λ, λ; S λ, #; λ
Q0 Q1 Q2 F

y, y; λ
x, x; λ

podemos afirmar:

(a). Es una máquina de Turing mal definida ya que no se indica el movimiento a realizar.

(b). Es un autómata finito determinista.

(c). Es un autómata a pila determinista.

(d). Es un autómata a pila no determinista.

Solución: D. Las opciones a y b son falsas ya que la máquina del enunciado es un autómata
a pila. Es no determinista puesto que en el estado Q2 , si en la cima de la pila hay un símbolo
A, B o S existen varias posibles transiciones que se pueden aplicar.

10 Dado el siguiente autómata

5
λ, S; A
λ, S; B
λ, A; xAy
λ, B; xxBy
λ, A; xy
λ, B; xxy
λ, B; cCd
λ, A; cCd
λ, C; cCd

λ, λ; # λ, λ; S λ, #; λ
Q0 Q1 Q2 F

d, d; λ
c, c; λ
podemos afirmar: y, y; λ
x, x; λ
(a). El conjunto de letras que forman las palabras reconocidas por el autómata es {x}.
(b). El conjunto de letras que forman las palabras reconocidas por el autómata es {x, y}.
(c). El conjunto de letras que forman las palabras reconocidas por el autómata es
{x, y, c}.
(d). El conjunto de letras que forman las palabras reconocidas por el autómata es
{x, y, c, d}.

Solución: B. El lenguaje que reconoce este autómata es {xn y n : n > 0} ∪ {x2n y n : n > 0}.
Si consideramos la gramática independiente del contexto equivalente a este autómata,
veremos que las producciones correspondientes al no terminal C no conducen a ninguna
cadena válida.

Nacional UE Reserva
11 Dado el lenguaje formado por todas las posibles cadenas que tengan el mismo número
de a’s, de b’s y de c’s. La expresión regular que mejor define el lenguaje sería:

6
(a). Ninguna de las siguientes

(b). ((abc)∗ + (acb)∗ + (bac)∗ + (bca)∗ + (cab)∗ + (cba)∗ )

(c). (a∗ b∗ c∗ )∗

(d). (an bn cn ) , con n > 0.

Solución: A. La opción b es falsa puesto que no generaría, por ejemplo, la cadena aabbcc.
La opción c es falsa puesto generaría por ejemplo, la cadena cc que no es una cadena válida
del lenguaje del enunciado. La opción d es falsa puesto no generaría por ejemplo, la cadena
bca que sí es una cadena válida del lenguaje.

12 Suponga que extendemos los operadores utilizados para expresar las expresiones
regulares con el operador “ ’ ”, el cual significa que aquello a lo que eleve se puede repetir
una o más veces. Por ejemplo:
a′ = a, aa, aaa, aaaa, ...

(ab)′ = ab, abab, ababab, abababab, ...

(a + b)′ = a, b, aa, bb, ab, ba, aaa, aab, aba, baa, abb, bab, bba, bbb...
Con este operador, ¿se amplia la capacidad de expresión de las expresiones regulares?, ¿se
puede definir la expresión regular de un lenguaje que no se podía con anterioridad?

(a). Si

(b). No

Solución: B. El nuevo operador es similar al operador ∗ con la diferencia de que el operador


del enunciado obliga a que se repita al menos una vez aquello a lo que eleve. Este nuevo
operador no puede generar por tanto la cadena vacía, pero no amplía la capacidad de
expresión de las expresiones regulares.
13 Dado el alfabeto Σ = {a, e, i, o, u}. Definimos el concepto sílaba como cualquier
ordenación de los cinco elementos del alfabeto sin repetición. Si definimos un lenguaje
cuyas palabras se forman como la concatenación de un número impar de sílabas, podemos
afirmar que:

(a). El lenguaje es regular.

(b). El lenguaje es independiente del contexto finito no regular.

7
(c). El lenguaje es independiente del contexto infinito no regular.
(d). El lenguaje es recursivamente enumerable no independiente del contexto.
Solución: A. Las condiciones que impone el lenguaje a sus cadenas, pueden controlarse
mediante una autómata finito.
14 ¿Cuál de los siguientes autómatas tienen mayor capacidad de representación?:
(a). Los autómatas a pila no deterministas.
(b). Los autómatas a pila deterministas.
(c). Todos los autómatas anteriores tienen la misma capacidad de representación.
Solución: A. Un ejemplo de lenguaje que puede ser reconocido por un autómata a pila no
determinista pero no por un autómata a pila determinista es: {xn y n } ∪ {x2n y n }.
15 Sea L1 el lenguaje definido por la gramática S → xxxxxAyy, A → xxxxxAyy,
S → xxxxxxxBy, B → xxxxxxxBy, A → λ, B → λ, con símbolo inicial de la gramática
S. Sea L2 el lenguaje formado por las cadenas del lenguaje L1 con una cardinalidad
máxima de 35 letras. Podemos afirmar:
(a). Que el lenguaje L2 es un lenguaje regular por estar acotada la cardinalidad de las
cadenas, y que se puede reconocer con un autómata finito determinista de 7 estados
que es mayor que el número máximo de producciones utilizadas en la generación de
las palabras.
(b). Como la cardinalidad de las palabras del lenguaje L2 está acotada a un valor que
asegura que sólo se pueda utilizar o la producción A → λ, o la producción B → λ y
no las dos para la generación de todas las palabras del lenguaje, entonces podemos
asegurar que se puede reconocer el lenguaje L2 con un autómata a pila determinista.
(c). Como el lenguaje L2 es regular y puede ser reconocido por un autómata finito, el
lenguaje L1 tiene que ser regular.
(d). Como el lenguaje L1 es reconocido por un autómata a pila no determinista, sólo un
autómata a pila no determinista puede reconocer el lenguaje L2 .
Solución: B. Tal y como se explica en la opción b tenemos una única forma de generar cada
una de las palabras del lenguaje L2 . Como además tenemos un número finito de palabras
pertenecientes al lenguaje L2 , se puede construir un autómata finito determinista que
reconozca L2 (y por tanto también es posible construir un autómata a pila determinista). La
opción a no es válida ya que son necesarios más de 7 estados.

8
16 Dado el lenguaje L = {xn : n = ∞}, esto es, el lenguaje que tiene una única cadena de
cardinalidad infinita. Podemos asegurar que se puede reconocer con un autómata finito no
determinista.
(a). Si.
(b). No.
Solución: B. Un autómata finito no puede controlar una cadena de cardinalidad infinita.
17 El lema del bombeo aplicado a las máquinas de Turing implica:
(a). Nada, ya que sólo se aplica a los lenguajes generados por gramáticas independientes
del contexto
(b). La existencia de problemas no resolubles por autómatas a pila.
(c). La existencia de problemas no resolubles por máquinas de Turing, como por ejemplo,
el problema de parada.
Solución: A.
18 La máquina de Turing representada a continuación, no controla el orden de aparición de
los elementos del alfabeto Σ = {x, y} .

λ, S, ←
x, x, →
y, y, →

x, a, → λ, λ, ←
Q0 Q1 Q2

x, x, ←
y, y, ←
a, x, ← y, λ, ←

Q3

9
(a). Verdadero.

(b). Falso.

Solución: B. Si que controla el lugar donde están situados algunos símbolos de la cadena.

19 Dado el lenguaje L = {xn y n z n : n > 0} que es reconocible con un autómata a pila con
dos pilas. ¿Es posible construir una máquina de Turing que simule el uso de esas dos pilas?.

(a). Verdadero.

(b). Falso.

Solución: A. Las pilas del autómata controlarían los dos contadores necesarios para
comprobar las cadenas del lenguaje. Eso mismo lo haría una máquina de Turing con la cinta
de lectura/escritura.

20 Dado el siguiente autómata

λ, S; A
λ, S; B
λ, A; xAy
λ, B; xxBy
λ, A; xy
λ, B; xxy

λ, λ; # λ, λ; S λ, #; λ
Q0 Q1 Q2 F

y, y; λ
x, x; λ
podemos afirmar:

(a). Reconoce el lenguaje L definido por la expresión regular x∗ y ∗

10
(b). Reconoce el lenguaje L = {xn y n : n > 0}

(c). Reconoce el lenguaje L = {xn y 2n : n > 0}

(d). Reconoce un lenguaje que se puede expresar como la unión de dos lenguajes
independientes del contexto.

Solución: D. Es fácil comprobarlo teniendo en cuenta la gramática independiente del


contexto equivalente a este autómata.

11
Soluciones a los exámenes de Junio 2012
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional Original 1a Semana

• Tipo A: 1. (b) 2. (b) 3. (b) 4. (b) 5. (d) 6. (b) 7. (c) 8. (a) 9. (d) 10. (b)
• Tipo B: 1. (b) 2. (b) 3. (c) 4. (a) 5. (b) 6. (d) 7. (b) 8. (d) 9. (b) 10. (b)
• Tipo C: 1. (b) 2. (d) 3. (b) 4. (b) 5. (d) 6. (a) 7. (b) 8. (b) 9. (c) 10. (b)

Nacional UE Original 2a Semana

• Tipo A: 1. (d) 2. (b) 3. (a) 4. (b) 5. (d) 6. (b) 7. (b) 8. (b) 9. (b) 10. (d)
• Tipo B: 1. (d) 2. (b) 3. (b) 4. (b) 5. (a) 6. (d) 7. (b) 8. (b) 9. (d) 10. (b)
• Tipo C: 1. (b) 2. (b) 3. (a) 4. (d) 5. (d) 6. (b) 7. (b) 8. (d) 9. (b) 10. (b)

1
Nacional Original 1a Semana
1 ¿Existe algún lenguaje independiente del contexto no regular compuesto por un número
finito de palabras?.

(a). Si

(b). No

Solución: B. Todos los lenguajes finitos son regulares

2 Dado el lenguaje L1 reconocido por el autómata

x y

y
I F

y el lenguaje L2 definido por la gramática

S → xSy

S→λ

Podemos afirmar:

(a). L1 = L2

(b). L1 6= L2

(c). L1 ⊂ L2

(d). L2 ⊂ L1

Solución: B. El lenguaje L1 contiene a la palabra y que no está contenida en el lenguaje L2 .


El lenguaje L2 contiene la palabra vacía λ que no está contenida en el lenguaje L1 .

3 Dado el lenguaje L definido por la gramática

S → xS

2
S → Sy

S → xy
y la siguiente máquina de Turing que reconoce el lenguaje L:

x, λ, → y, λ, →

x, λ, → y, λ, → λ, λ, →
I M1 M2 F

Podemos asegurar que el lenguaje es recursivamente enumerable no regular

(a). Verdadero

(b). Falso

Solución: B. El lenguaje del enunciado está formado por ristras de x’s seguidas de ristras de
y’s con la única obligación de tener por lo menos una x y una y. Por lo tanto es un lenguaje
regular.

4 Sea el lenguaje L = {xn y m : n + m es un numero par}. ¿Cuál de las siguientes


afirmaciones es verdadera?

(a). El lenguaje L es un Lenguaje Regular.

(b). El lenguaje L es un Lenguaje Independiente del Contexto no Regular.

Solución: A. El lenguaje está formado por ristras de x’s seguidas de ristras de y’s cuya
única condición es que la cardinalidad de las palabras del lenguaje sea par. Por lo tanto es
un lenguaje regular.

5 Dada la siguiente gramática regular no determinista, donde A es su símbolo inicial:


A → xA

A → yA

A → xB

B → xA

3
B → yA

B → xB

B → xC

C → yD

C → xB

D→λ

D → xB

D → yA
Podemos construir un autómata finito determinista con sólo 2 estados que reconozca el
mismo lenguaje.

(a). Verdadero

(b). Falso

Solución: B. La palabra más pequeña del lenguaje es xxy. Por lo tanto, se necesitan al
menos 4 estados para reconocerla.

6 El lema del bombeo aplicado a los autómatas a pila demuestra que el lenguaje
L = {xn y n z n : n > 0} no puede ser reconocido por ninguna máquina.

(a). Verdadero

(b). Falso

Solución: B. El Lema del bombeo no habla de esto. Sólo indica que este lenguaje no puede
ser reconocido por una autómata a pila.

7 Sea el lenguaje L = {xn y m z n : con n y m > 0, y m = n/2}. ¿Cuál es la máquina más


simple que puede reconocer este lenguaje?.

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

4
(d). Una máquina de Turing.
Solución: D. El lenguaje está poniendo condiciones de cardinalidad para las ristras de x’s,
y’s y z’s y todas ellas dependientes entre sí. El Lema del bombeo indica que no se pueden
reconocer con un autómata a Pila.
8 La siguiente gramática con símbolo inicial S:
S → AB
A → Aa
A→a
B → Bb
B→b
(a). Es una gramática regular.
(b). Es una gramática independiente del contexto.
(c). Ninguna de las anteriores.
Solución: B. La gramática cumple todos los requisitos de las gramáticas independientes del
contexto. No es una gramática regular ya que la primera producción contiene dos símbolos
terminales en su lado derecho.
9 Sea L2 = {xn y n z n : n > 0} y sea L1 el lenguaje reconocido por la siguiente máquina de
Turing.

X; X, ←
Y ; Y, → Y ; Y, ← X; X, →
Z; Z, → Z; Z, ← Z; Z, →

X; X, ← ; ,→
q0 q1 q2

X; X, ←
X; X, → Y ; Y, ←
Y ; Y, → Z; Z, ← Y ; Y, ←

q5 q4 q3
Z; Z, ← ; ,→

5
¿Cuál de las siguientes afirmaciones es correcta?

(a). L1 = L2

(b). L1 6= L2

(c). L1 ⊂ L2

(d). L2 ⊂ L1

Solución: D. El lenguaje L1 está formado por cadenas que tienen al menos una x, una y y
una z, no pone condiciones sobre órdenes ni cantidades. El lenguaje L2 está formado por
cadenas que tienen el mismo número de x′ s, y ′s y z ′ s, y por lo menos una, por lo tanto
todas las palabras del lenguaje L2 cumplen las condiciones del lenguaje L1 .

10 Sea L1 el lenguaje generado por la gramática con símbolo inicial S. (Nota:La


producción cb → bc indica que cada vez que aparezca la subcadena cb se transforma en la
subcadena bc).
S → AB

A → aAc

A → ac

B → bB

B→b

cb → bc
y el lenguaje L2 = {an bn cn : con n > 0}. Podemos afirmar que:

(a). L1 = L2

(b). L1 ⊂ L2

(c). L2 ⊂ L1

(d). L1 6= L2

Solución: C. El lenguaje L1 está formado por cadenas que tienen el mismo número de a′ s
que de c′ s, pero no controla el número de b′ s, cosa que si hace el lenguaje L2 . El orden está
asegurado por la producción cb → bc.

6
Nacional Original 2a Semana
11 Dado el lenguaje L definido por la siguiente gramática:

S → xS

S → Sy

S → xy

L es reconocido por el siguiente automáta a pila:

x, ǫ; ǫ y, ǫ; ǫ

x, ǫ; a y, a; ǫ
I M F

Podemos asegurar que el lenguaje es un lenguaje independiente del contexto no regular

(a). Verdadero

(b). Falso

Solución: B. El lenguaje en cuestión son ristras de x′ s seguidas de ristras de y ′ s con al


menos una x y una y. Éste es un lenguaje regular.

12 Dado el lenguaje L = {xn y m : n, m > 0} definido por la gramática

S → xX

X → xX

X → yY

Y → yY

Y →λ

¿Podríamos construir su forma normal de Chomsky?

(a). Si

7
(b). No

Solución: A. Todo lenguaje regular es además independiente del contexto, como no genera
la palabra vacia no habría ningún problema. La gramática en cuestion sería:

S → AX

X → AX

X → BY

Y → BY

X →y

Y →y

A→x

B→y

13 Sea el lenguaje L = {xn y m z n : con n y m > 0, y con n = m}. ¿Cuál es la máquina


más simple que puede reconocer este lenguaje?.

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

(d). Una máquina de Turing.

Solución: D. El lenguaje en cuestión controla la cardinalidad de las ristras de x′ s, y ′ s y z ′ s,


y todas ellas dependiendo entre sí. El lema del bombeo demuestra que no se puede
reconocer con un automata a pila.

14 Sea el lenguaje L definido por la gramática

S → AB

A → aAc

A→λ

8
B → bBc

B→λ

¿Cuál es la máquina más simple que puede reconocer este lenguaje?.

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

(d). Una máquina de Turing.

Solución: B. El lenguaje en cuestión controla que el número de a′ s sea igual a la primera


ristra de c′ s, y que la ristra de b′ s sea igual a la segunda ristra de c′ s. Como se controla en
dos estapas diferentes se puede controlar con una única pila.

15 Sea el lenguaje L = {xn y m z n : con n y m > 0, y con n 6= m}. ¿Cuál es la máquina


más simple que puede reconocer este lenguaje?.

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

(d). Una máquina de Turing.

Solución: D. El lenguaje en cuestión controla la cardinalidad de las ristras de x′ s, y ′s y z ′ s,


y todas ellas dependiendo entre si. El lema del bombeo demuestra que no se puede
reconocer con un automata a pila.

16 El lema del bombeo aplicado a los lenguajes regulares nos demuestra que para todo
autómata finito no determinista existe un autómata finito determinista que reconoce el
mismo lenguaje.

(a). Verdadero.

(b). Falso.

Solución: B. El lema del bombeo no trata este tema.

9
17 Dado el lenguaje L = {xn y n z m : n > 0 { s i n = par&m = 2si n = impar&m = 3}
¿Cuál es la máquina más simple que puede reconocerlo?

(a). Un autómata finito

(b). Un autómata a pila determinista

(c). Un autómata a pila no determinista

(d). Ninguna de las anteriores

Solución: B. El lenguaje tiene que controlar dos condiciones, una es la cardinalidad de la


ristra de x′ s e y ′s, lo cual se puede resolver con una pila, y la cardinalidad de z ′ s en función
de si el número de x′ s ó y ′ s es par. Esta condición se puede controlar con un conjunto de
estados. Por lo tanto es reconocido con un autómata a pila determinista.

18 ¿Es posible construir la forma normal de Chomsky de la gramática siguiente?


S → AB

A → aAc

A→λ

B → bBc

B→λ

(a). Si.

(b). No.

Solución: B. El lenguaje contiene a la palabra vacía, es la única limitación que tenemos


para la construcción de la forma normal.

19 Dado el lenguaje L1 = {xn y n : n > 0} y el lenguaje L2 = {xn y 2n : n > 0}.

(a). El lenguaje L = L1 ∩ L2 no es reconocido por un autómata finito.

(b). El lenguaje L = L1 ∩ L2 no es reconocido por un autómata a pila determinista.

(c). El lenguaje L = L1 ∩ L2 no es reconocido por un autómata a pila no determinista.

(d). Ninguna de las anteriores.

10
Solución: D. La intersección de ambos conjuntos es el vacío, por lo tanto es un lenguaje
regular.

20 Sea el lenguaje L = {xn y m z n : con n > 0 y m par}. ¿Cuál es la máquina más simple
que puede reconocer este lenguaje?.

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

(d). Una máquina de Turing.

Solución: B. El lenguaje tiene que cumplir dos condiciones, una es la cardinalidad de la


ristra de x′ s e y ′ s, lo cual se puede resolver con una pila, y la cardinalidad de z ′ s sea un
número par. Esta condición se puede controlar con un conjunto de estados y por lo tanto, es
reconocido con un autómata a pila determinista.

11
Soluciones a los exámenes de Septiembre
2011
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional UE Original

• Tipo A: 1. (c) 2. (c) 3. (c) 4. (c) 5. (a) 6. (b) 7. (b) 8. (c) 9. (d) 10. (c)
• Tipo B: 1. (c) 2. (c) 3. (b) 4. (c) 5. (c) 6. (a) 7. (c) 8. (d) 9. (c) 10. (b)
• Tipo E: 1. (d) 2. (c) 3. (b) 4. (c) 5. (a) 6. (c) 7. (c) 8. (c) 9. (c) 10. (b)

Nacional UE Reserva

• Tipo A: 1. (d) 2. (d) 3. (b) 4. (a) 5. (b) 6. (b) 7. (c) 8. (a) 9. (a) 10. (d)
• Tipo B: 1. (d) 2. (d) 3. (c) 4. (a) 5. (b) 6. (b) 7. (a) 8. (a) 9. (d) 10. (b)
• Tipo C: 1. (b) 2. (a) 3. (b) 4. (d) 5. (b) 6. (a) 7. (a) 8. (d) 9. (c) 10. (d)

1
Nacional UE Original
1 Dado el lenguaje compuesto por las cadenas de longitud finita formadas por todas
aquellas combinaciones de símbolos del alfabeto Σ = {a, b, c, d, e}. ¿Se puede construir
un autómata a pila que cuente el número de vocales de una cadena de entrada y utilice
únicamente la cima de la pila?:

(a). No.
(b). Si, pero sólo podría sumar hasta nueve, ya que sólo se puede usar la cima de la pila.

(c). Si, pero sólo teniendo en cuenta que las cadenas de entrada tienen una longitud finita.

(d). Ninguna de las anteriores

Solución: C. Para poder contar utilizando un autómata a Pila es imprescindible que el


tamaño de las palabras esté acotado. Si el tamaño de la palabra pudiera ser infinita se
debería utilizar un número infinito de estados, o se tendría que enseñar a sumar al autómata
números infinitos.
Por lo tanto la solución es la “C”, ya que la condición necesaria para poder construir un
autómata como el que se pide en el enunciado es que las palabras con las que se trabaje sean
finitas. Para asegurar que un conjunto numerable sea finito es necesario acotarle con un
máximo.
No es necesario acortar a un número determinado, como 9, ya que se puede codificar la
suma y no utilizar la notación decimal.

2 Sea L el lenguaje que reconoce el siguiente autómata finito


b a a

q0 a q1 b q2 a q3 b

b
Indicar cuál de las siguientes gramáticas regulares genera el mismo lenguaje:

(a). 
 S → bS|aA

A → aA|bB

B → bS|ǫ

2
(b). 
 S → bS|aS|aA|ǫ

A → aA

B → bS|ǫ

(c). 
 S → bS|aA|ǫ

A → aA|bB

B → bS|ǫ

(d). Ninguna de las anteriores gramáticas genera L

Solución: C. La gramática de la opción a no genera la cadena vacía mientras que el


autómata sí lo hace. La gramática de la opción b genera por ejemplo la cadena baba y el
autómata no. Para comprobar que la gramática de la opción c genera el mismo lenguaje que
el autómata del enunciado, basta con construir el autómata equivalente a dicha gramática.

3 El lenguaje L = {0i 1j 2k |i <j <k}:

(a). Es independiente del contexto determinista

(b). Es independiente del contexto no determinista

(c). Es recursivamente enumerable y no independiente del contexto

Solución: C. Para saber si el número de 2’s que contiene la palabra es válido se necesita
recordar cuál es el número de 1’s que tiene la palabra, pero el poder recordar cuantos 1’s
tiene la palabra, implica tener que tratar dos veces esta información una para compararla
con los 0’s, y la segunda para compararla con el número de 2’s. Para poder tratar dos veces
un dato se debe poder tener almacenado en memoría dos veces ese dato, pero al disponer de
una única pila no se tiene esta posibilidad.

4 Indique cuál de las siguientes afirmaciones es verdadera:

(a). El número total de lenguajes no regulares es finito

(b). El número total de lenguajes regulares es finito

(c). Ninguna de las afirmaciones anteriores es cierta

Solución: C. Existe un número infinito de lenguajes regulares y de lenguajes no regulares.

3
5 Decidir si es verdadera o falsa la siguiente afirmación: “Dado un lenguaje regular L,
existe una gramática independiente de contexto en forma normal de Chomsky que genera el
mismo lenguaje.”

(a). Siempre

(b). Nunca

(c). Depende de L

Solución: C. Una gramática en forma normal de Chomsky no puede generar la cadena


vacía. Por tanto, se podrá construir una gramática en Forma Normal de Chomsky que
genere L siempre que éste no contenga la cadena vacía.

6 Dada la gramática G:
S → aS|bA|ǫ
A → bB|aS|ǫ
B → aB|bB
Indicar cuál de las siguientes expresiones regulares genera el mismo lenguaje que la
gramática G:

(a). a∗ (b(aa∗ b)∗ )∗ a

(b). b(b(aa∗ b)∗ )∗

(c). (a + ba)∗ (ǫ + b)

(d). Ninguna de las anteriores expresiones regulares genera el mismo lenguaje que la
gramática G

Solución: C. Las opciones a y b son falsas porque por ejemplo no generan la cadena vacía.
La expresión regular de la opción c genera el mismo lenguaje de la gramática (para
comprobarlo se puede construir el autómata equivalente a la gramática del enunciado).

7 Dado el siguiente autómata a pila (Nota:se supone que inicialmente la pila se encuentra
vacía. En el diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo
elemento es ǫ. En estos casos se considera que el autómata ejecuta esta transición teniendo
en cuenta únicamente el símbolo actual de la cadena de entrada sin inspeccionar el
contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningún
elemento de la pila.)

4
x, ǫ; x y, x; ǫ

ǫ, ǫ; Z0 ǫ, Z0 ; ǫ
q0 q1 q2

x, y; ǫ y, ǫ; y

Indicar cuál de las siguientes afirmaciones es FALSA:

(a). El autómata a pila acepta las cadenas con el mismo número de x’s y de y’s

(b). El lenguaje que acepta el autómata a pila contiene al lenguaje {xn y n : n ≥ 0}

(c). El lenguaje que acepta el autómata a pila es independiente del contexto no regular

(d). En las cadenas contenidas en el lenguaje aceptado por el autómata siempre deben
aparecer las x’s antes que las y’s

Solución: D. La opción a es verdadera puesto que es el lenguaje que acepta el autómata. La


opción b es verdadera puesto que las cadenas de la forma xn y n están contenidos en el
lenguaje definido en la opción a que es un lenguaje independiente del contexto no regular.
La opción c es verdadera puesto que el lenguaje que acepta el autómata es no regular.

8 Dada la siguiente máquina 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:
Símbolo
Estado 0 1 X Y B
q0 (q1 , X, R) - - (q3 , Y, R) -
q1 (q1 , 0, R) (q2 , Y, L) - (q1 , Y, R) -
q2 (q2 , 0, L) - (q0 , X, R) (q2 , Y, L) -
q3 - - - (q3 , Y, R) (q4 , B, R)
q4 - - - - -
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). El lenguaje que reconoce es {0n 1n : n ≥ 0}

(b). El lenguaje que reconoce es {0n 1n : n ≥ 1}

(c). El lenguaje que reconoce es {0m 1n : m, n ≥ 0}

5
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. Ver ejemplo 8.2 del libro base

9 Dada la siguiente gramática G:

S → zP zQz
Q → yQy
Q → zP z
Q → zP zP z
Q→ǫ
P → xP x
P → zQz
P → zQzQz
P →ǫ

Indicar cuál de las siguientes afirmarciones es verdadera:

(a). Si se convierte G a una de sus posibles gramáticas en Forma Normal de Chomsky, el


número de producciones resultante es mayor o igual que 34 y menor que 75

(b). No existe una gramática en Forma Normal de Chomsky que genere el mismo
lenguaje que G

(c). En una de las posibles gramáticas en Forma Normal de Chomsky equivalente a G


habrá una producción de la forma S → ZZZ donde Z es un nuevo no terminal no
presente antes en G que deriva en el terminal z (esto es: Z → z)

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. La gramática es independiente del contexto y no genera la cadena vacía. Por


tanto, es posible transformarla en una gramática en Forma Normal de Chomsky (la opción b
es por tanto falsa). La opción c es falsa puesto que la derivación S → ZZZ no es una
derivación válida en una gramática en Forma Normal de Chomsky. Para comprobar que la
opcíon a es verdadera basta con transformar la gramática del enunciado en su equivalente
Forma Normal de Chomsky.

10 Sea L1 el lenguaje compuesto por las cadenas formadas por subcadenas de 2 o más “x”
seguidas de subcadenas de 2 o más “y”, con un múmero indeterminado de “z” que pueden
estar intercaladas tanto entre las “x” como entre las “y”. Considere el autómata siguiente.

6
x y

x x y y
q0 q1 q2 q3 q4

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). El autómata reconoce el lenguaje L1 , ya que no es necesario definir las transiciones


correspondientes a los símbolos z’s

(b). El lenguaje que reconoce el autómata es un subconjunto del lenguaje L1

(c). El autómata no puede reconocer L1 porque es un lenguaje independiente del contexto

Solución: B. La opción c es falsa porque L1 es un lenguaje independiente del contexto


regular y puede ser, por tanto, reconocido por un autómata finito. La opción b es veredadera
puesto que el autómata reconoce el lenguaje compuesto por las cadenas formadas por
subcadenas de 2 o más x’s seguidas de subcadenas de 2 o más y’s. La opción a es falsa
puesto que es necesario indicar en qué punto de la lectura de una cadena es posible
encontrar un símbolo z.

Nacional UE Reserva
11 Dado el alfabeto Σ = {0, 1}, se define L como el lenguaje formado por las cadenas que
cumplen que N(0) = N(1) + 1 donde N(0) es el número de apariciones del símbolo 0 y
N(1) es el número de apariciones del símbolo 1. Indicar cuál de las siguientes gramáticas
independientes del contexto genera L.

(a). 
 S → CB|BC|0C1|1C0|0

C → 0C1|1C0|0

B → 0B1|1B0|01|10

(b). 
 S → 0A1|0

A → 0A1|0B|0

B → 0B|0

7
(c). 
 S → CB|BC|0C1|1C0|0|ǫ

C → 0C1|1C0|0

B → 0B1|1B0|01|10

Solución: A. La opción b es falsa porque genera L = {0m 1n |m, n > 0ym > n ≥ 0}. La
opción c es falsa porque genera la cadena vacía que no pertenece a L ya que cualquier
cadena del lenguaje debe contener al menos un cero.

12 Dados dos lenguajes independientes del contexto L1 y L2 , indicar cuál de las siguientes
afirmaciones es verdadera:

(a). L1 L2 siempre es independiente del contexto


T

(b). L1 + L2 siempre es independiente del contexto

(c). L1 − L2 siempre es independiente del contexto

Solución: B. La opción a) es falsa (ver ejemplo 7.26 del libro base). La opción c) es falsa
(ver teorema 7.29 del libro base).

13 Sea L el lenguaje generado por la siguiente gramática:


S → A1B
A → 0A | ǫ
B → 0B | 1B | ǫ
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). L es independiente del contexto no regular

(b). L contiene la cadena vacía

(c). Sea w la cadena de menor longitud de L, entonces |w| = 2

(d). L es regular y puede expresarse mediante la expresión regular 0∗ 1(0 + 1)∗

Solución: D. L puede expresarse mediante la expresión regular 0∗ 1(0 + 1)∗ . Por tanto, L es
un lenguaje regular y vemos que no genera la cadena vacía y que la cadena de menor
longitud que se puede definir es 1 que tiene longitud 1.
14 Indicar cuál de las siguientes igualdades entre expresiones regulares es verdadera:

8
(a). a(a + ba)∗ = (a + ab)∗ a

(b). a(a + ba)∗ = aa∗ b∗ a

(c). a(a + ba)∗ = aa∗ (ba)∗

Solución: A. La opción b es falsa puesto que no admite la cadena a y la opción c es falsa


porque no admite la cadena abaa

15 Dado el lenguaje compuesto por las cadenas de longitud finita formadas por todas
aquellas combinaciones de símbolos del alfabeto Σ = {a, b, c, d, e}. ¿Se puede construir un
autómata a pila que cuente el número de vocales de una cadena de entrada y utilice
únicamente la cima de la pila?:

(a). Si, pero se tiene que enseñar al autómata a sumar.

(b). Si, utilizando notación no decimal.

(c). Si, pero sólo teniendo en cuenta que las cadenas de entrada tienen una longitud finita.

(d). Si, si se cumplen todas las condiciones anteriores.

Solución: D. Los autómatas a pila son máquinas programables que lo único que pueden
hacer es leer de la cinta, desplazarse una posición a la derecha de la cinta y leer y escribir en
la pila. Por lo tanto, todo aquello que se desee que realice el autómata hay que enseñárselo,
por lo tanto, se deberá enseñar a sumar al autómata.
Si sólo se puede utilizar una única posición de la pila se necesita codificar la numeráción
que se utilizará para que sólo utilice esta posición. Por lo tanto, la notación decimal sólo
serviría para contar palabras que tengan a lo sumo 9 vocales.
La limitación real que se tiene es que pueda ser infinita la palabra, ya que de esta forma no
se podría realizar la codificación. Por el contrario, si las palabras tienen que ser finitas sí se
puede definir la codificación (para que un conjunto enumerable sea finito tenemos que decir
cual es su máximo).
Por lo tanto, la solución es la “D”, ya que se tienen que cumplir todas las condiciones
anteriores.

16 Dada la gramática:

S → xSy | ySx | ySy | xSx | ǫ

Indicar cuál es el lenguaje que genera:

9
(a). El lenguaje formado por cualquier cadena de x’s e y’s.
(b). El lenguaje formado por cualquier cadena de x’s e y’s, incluida la palabra vacía.
(c). El lenguaje formado por cadenas que tengan el mismo número de x’s que de y’s.
(d). El lenguaje formado por cualquier cadena de x’s e y’s de cardinalidad par, incluida la
palabra vacía.

Solución: D. Las opciones a y b son falsas porque la gramática no genera la cadena x o


xxx. La opción c es falsa porque la gramática genera la cadena xx.

17 Sea L el lenguaje sobre el alfabeto Σ = {0, 1} cuyas cadenas verifican las siguientes
restricciones: “si una cadena tiene menos de cinco 1’s, entonces tiene un número par de 1’s;
si una cadena tiene cinco 1’s o más, entonces contiene un número impar de 1’s; cualquier
cadena contiene al menos un 1”. El lenguaje L:

(a). Es regular
(b). Es independiente del contexto determinista y no es regular
(c). Es independiente del contexto no determinista y no es regular

Solución: A. Basta construir el autómata finito determinista equivalente


18 Indicar cuál es el tipo de autómata más sencillo (menor capacidad de reconocimiento)
capaz de reconocer el lenguaje {xn y m z n |n ≥ 25, m ≥ 50}

(a). Un autómata finito


(b). Un autómata a pila determinista
(c). Un autómata a pila no determinista
(d). Una Máquina de Turing

Solución: B. El lenguaje {xn y m z n |n ≥ 25, m ≥ 50} es uno de los lenguajes más sencillos
que cumplen el lema del bombeo de los lenguajes independientes del contexto. En un
autómata a pila que lo reconozca, se utiliza la pila para saber que hay el mismo número de
x’s que de z’s. Para la acotación de tener más de 25 x’s y más de 50 y’s, basta con definir el
autómata con 25 estados para leer las x’s y 50 estados para leer las y’s.
Es fácil comprobar que se puede definir un autómata a pila determinista puesto que las
cadenas del lenguaje son ristras de x’s seguidas de ristras de y’s seguidas de ristras de z’s y
no hay ninguna ambigüedad que exija introducir no determinismo.

10
19 Considere el siguiente autómata a pila.
x, ǫ; z y, z; ǫ

ǫ, ǫ; Z0 x, z; ǫ ǫ, Z0 ; ǫ
A B C D

Indicar cuál de las siguientes afirmaciones es verdadera (Nota: Se supone que la pila se
encuentra inicialmente vacía. En el diagrama de transiciones algunos arcos tienen una
etiqueta en la que el segundo elemento es ǫ. En estos casos se considera que el autómata
ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la cadena de
entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones
no se extrae ningún elemento de la pila):

(a). El autómata es determinista y acepta el lenguaje {xn+2 y n |n ≥ 0}


(b). El autómata es no determinista y acepta el lenguaje {xn+2 y n |n ≥ 0}
(c). El autómata no siempre llega al estado de aceptación con la pila vacía
(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. El autómata no es determinista (se comprueba fácilmente al analizar la cadena


xx) y siempre vacía la pila antes de llegar al estado de aceptación (la transición que lleva al
estado de aceptación lee el símbolo Z0 inicialmente introducido).

20 A la hora de trasladar la cabeza de la máquina de Turing en cada paso de ejecución de la


máquina. ¿Cuál de las siguientes afirmaciones es verdadera?

(a). Las máquinas de Turing sólo pueden moverse una posición a la derecha.
(b). Las máquinas de Turing sólo pueden moverse una posición a la izquierda.
(c). Las máquinas de Turing sólo pueden moverse una posición a la derecha o a la
izquierda.
(d). Las máquinas de Turing pueden moverse cualquier número de posiciones a la derecha
o a la izquierda.

Solución: C. Por la definición de Máquina de Turing

11
Soluciones a los exámenes de Junio 2011
Autómatas, Gramáticas y Lenguajes
(1◦ curso)

Grado en Ingeniería Informática y Grado en Ingeniería de las


Tecnologías de la Información

Elena Gaudioso Vázquez y Tomás García Saiz


Plantillas de respuestas
Nacional Original 1a Semana

• Tipo A: 1. (c) 2. (a) 3. (c) 4. (c) 5. (d) 6. (c) 7. (c) 8. (c) 9. (b) 10. (a)
• Tipo B: 1. (c) 2. (a) 3. (c) 4. (c) 5. (c) 6. (d) 7. (c) 8. (b) 9. (a) 10. (c)
• Tipo C: 1. (c) 2. (b) 3. (c) 4. (c) 5. (d) 6. (c) 7. (c) 8. (a) 9. (c) 10. (a)

Nacional UE Original 2a Semana

• Tipo A: 1. (b) 2. (c) 3. (a) 4. (b) 5. (d) 6. (d) 7. (c) 8. (c) 9. (d) 10. (b)
• Tipo B: 1. (b) 2. (c) 3. (c) 4. (c) 5. (a) 6. (d) 7. (b) 8. (d) 9. (b) 10. (d)
• Tipo C: 1. (d) 2. (d) 3. (a) 4. (b) 5. (d) 6. (c) 7. (b) 8. (b) 9. (c) 10. (c)

1
Nacional Original 1a Semana
1 Indicar cuál de los siguientes lenguajes NO es regular:

(a). L = {w ∈ {a, b}∗ |ab y ba son subcadenas de w}

(b). L = {w ∈ {a, b}∗ |bbb no es subcadena de w}

(c). El lenguaje de cadenas que son prefijos (finitos) de la expansión decimal de π, es decir,
L = {3.1 , 3.14 , 3.141 , 3.1415 , . . . }

Solución: C. El lenguaje de la opción C no es regular. Se trata de un lenguaje infinito que


no verifica el lema de bombeo. En los lenguajes de las opciones A y B es fácil diseñar
expresiones regulares que los representen.

2 Las máquinas de Turing se diferencian de los autómatas finitos y de los autómatas a pila
en que

(a). En las máquinas de Turing la cabeza lectora puede retroceder

(b). Las máquinas de Turing pueden escribir sobre su cinta

(c). Las dos afirmaciones anteriores son ciertas

Solución: C. Las dos primeras afirmaciones son ciertas, puesto que los autómatas finitos y
los de pila no pueden escribir sobre su cinta y en ellos la cabeza lectora no puede retroceder.

3 El resultado de concatenar dos lenguajes independientes de contexto, ¿es siempre un


lenguaje independiente de contexto?

(a). Sí, siempre

(b). No, nunca

(c). Depende de los lenguajes que se consideren

Solución: A. Teorema 7.24 del libro John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman.
Teoría de autómatas, lenguajes y computación.. Pearson. Addison Wesley. Tercera Edición.
ISBN: 978-84-7829-088-8

2
4 Dado un alfabeto Σ, llamamos L1 al conjunto de lenguajes de Σ aceptados por máquinas
de Turing deterministas de una sola cinta, L2 al conjunto de lenguajes de Σ aceptados por
máquinas de Turing deterministas con varias cintas y L3 al conjunto de lenguajes de Σ
aceptados por máquinas de Turing no deterministas y con varias cintas ¿Cuál de las
siguientes afirmaciones es verdadera?

(a). L1 = L2 ⊂ L3

(b). L1 ⊂ L2 = L3

(c). Ninguna de las afirmaciones anteriores es cierta

Solución: C. Toda máquina de Turing de una cinta no determinista es equivalente (en


cuanto al lenguaje que acepta) a una máquina de Turing determinista de una cinta, y ésta es
equivalente a su vez a una máquina de varias cintas.

5 Sea el alfabeto Σ = {a, b}. Sea L1 el lenguaje reconocido por el autómata de la izquierda
y L2 el lenguaje reconocido por el autómata de la derecha.
a
b
B D
a a
a a, b
a b
b
A
b b
A B C
b
C E a, b a

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Uno de los autómatas es determinista y el otro no lo es

(b). El autómata de la izquierda tiene algún estado no accesible

(c). L1 = L2

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: C: L1 = L2 = (ǫ + b)(aa∗ (ǫ + b))∗

3
6 Dada la siguiente gramática independiente del contexto G:
S → aabS | baaS | abaS | aaSb | baSa | aSab | bSaa | aSba | Saab | Sbaa | Saba | abSa | ǫ
Indicar cuál de las siguientes afirmaciones es verdadera:

(a). Las cadenas que genera G contienen el doble número de a’s que de b’s

(b). Las cadenas que genera G tienen como mínimo una longitud de 2

(c). En las cadenas que genera G todas las a’s aparecen antes que las b’s

(d). Ninguna de las anteriores afirmaciones es verdadera

Solución: A. Cada vez que se deriva el no terminal S de la gramática G, se introducen dos


a’s por cada b, sin importar el orden. La opción B es falsa puesto que G genera la cadena
vacía que tiene una longitud menor de 2. La ocpión C es falsa porque G genera, por
ejemplo, la cadena baa.

7 Dada la siguiente gramática G:

S → A1B
A → 0A | ǫ
B → 0B | 1B | ǫ

y la expresión regular E = 0∗ 1(0 + 1)∗ . Indicar cuál de las siguientes afirmaciones es


verdadera:

(a). G y E no pueden generar el mismo lenguaje porque la gramática es independiente del


contexto (y por tanto, generará un lenguaje independiente del contexto) y la expresión
regular generará un lenguaje regular

(b). Ambos reconocen el mismo lenguaje

(c). Ninguna de las anteriores afirmaciones es verdadera

Solución: B. Estudiando las derivaciones de la gramática es fácil ver que reconoce el


mismo lenguaje que genera la expresión regular. La opción A es falsa puesto que todos los
lenguajes regulares son a su vez lenguajes independientes del contexto y, por tanto, también
se pueden representar mediante gramáticas independientes del contexto.

4
8 Indicar para qué valores de las etiquetas Etiqueta-1 y Etiqueta-2, el autómata de la figura
representa el lenguaje {xn+1 y n : n ≥ 0}. Se supone que inicialmente la pila se encuentra
vacía y que el símbolo inicial de la pila es Z0 . En el diagrama de transiciones algunos arcos
tienen una etiqueta en la que el segundo elemento es ǫ. En estos casos se considera que el
autómata ejecuta esta transición teniendo en cuenta únicamente el símbolo actual de la
cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas
transiciones no se extrae ningún elemento de la pila.

Etiqueta-1 y, z; ǫ

ǫ, ǫ; Z0 Etiqueta-2 ǫ, Z0 ; ǫ
q0 q1 q2 q3
(a). Etiqueta-1=x, ǫ; z Etiqueta-2=ǫ, z; ǫ
(b). Etiqueta-1=x, ǫ; y Etiqueta-2=ǫ, ǫ; ǫ
(c). No existen valores de Etiqueta-1 y Etiqueta-2 que hagan correcta la solución
Solución: C. Independientemente de los valores de las etiquetas, el autómata acepta la
cadena vacía y el lenguaje no la contiene
9 Considere el lenguaje L generado por la siguiente gramática:
S → xxSyy | ǫ
y el siguiente autómata (Nota: Se supone que la pila se encuentra inicialmente vacía. En el
diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es
ǫ. En estos casos se considera que el autómata ejecuta esta transición teniendo en cuenta
únicamente el símbolo actual de la cadena de entrada sin inspeccionar el contenido de la
cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento de la pila):

y, a; ǫ

y, a; ǫ
S F
x, ǫ; a
x, ǫ; ǫ

par

5
¿Qué significado se le puede atribuir al estado par cuando el autómata lee cadenas del
lenguaje L?

(a). Se llega al estado par cuando se ha leído un número par de x’s en las cadenas del
lenguaje L.

(b). Se llega al estado par cuando se ha leído un número par de símbolos en las cadenas
del lenguaje L.

(c). Se llega al estado par cuando se ha leído un número par de y’s en las cadenas del
lenguaje L.

(d). Se llega al estado par cuando se ha leído un número impar de x’s en las cadenas del
lenguaje L.

Solución: D. Basta con ver las dos transiciones existentes entre el estado S y el estado par.
10 Dado el lenguaje L generado por la siguiente gramática:

S → xxSyy | xxyy

y el siguiente autómata (Nota: Se supone que la pila se encuentra inicialmente vacía. En el


diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es
ǫ. En estos casos se considera que el autómata ejecuta esta transición teniendo en cuenta
únicamente el símbolo actual de la cadena de entrada sin inspeccionar el contenido de la
cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento de la pila):
y, a; ǫ

ǫ, ǫ; z y, a; ǫ
S X Y

x, ǫ; a x, ǫ; a ǫ, z; z

par F

Indicar cuál de las siguientes afirmaciones es verdadera:

(a). El autómata no comprueba que haya un número par de y’s en las cadenas del lenguaje
L.

6
(b). El autómata no reconoce todas las cadenas contenidas en el lenguaje L.

(c). El autómata reconoce todas las cadenas contenidas en el lenguaje L.

(d). El autómata no está correctamente definido.

Solución: C. La opción A es falsa puesto que el autómata comprueba que haya un número
par de x’s (mediante el estado par y la pila) y luego implícitamente comprueba que haya un
número par de y’s al exigir que exista el mismo número de x que de y’s (mediante la
transición del estado X al estado Y , del estado Y al estado F y el bucle del estado Y ). La
opción D es falsa puesto que el autómata está correctamente definido. Es fácil comprobar
que el autómata reconoce todas las cadenas contenidas en el lenguaje L.

Nacional UE Original 2a Semana


11 Indicar cuál de los siguientes lenguajes NO es regular:

(a). L = {w ∈ {a, b}∗ |abab es subcadena de w}

(b). L = {w ∈ {a, b}∗ |w ∈


/ {an bn } : n > 0}

(c). El lenguaje consistente en las cadenas de caracteres tales que dos a’s están separadas
por 4i símbolos para algún entero i ≥ 0

Solución:
B. Si L fuera regular, su complementario también habría de serlo, y {an bn } no es un
lenguaje regular. En los casos A y C es fácil diseñar expresiones regulares que representen
los correspondientes lenguajes

12 La estrella de Kleene o clausura de un lenguaje independiente de contexto, ¿es siempre


un lenguaje independiente de contexto?

(a). Sí, siempre

(b). No, nunca

(c). Depende de los casos

Solución: A. Partiendo de una gramática independiente de contexto que genere L,


renombramos S como S’, y añadimos las reglas S → S ′ S y S → ǫ.

7
13 Dado el alfabeto Σ = {0, 1}, el lenguaje L se define como L = {w|w contiene un
número par de 0’s, o exactamente dos 1’s }. Indicar qué expresión regular genera el
lenguaje L:

(a). (1∗ 01∗ 01∗ 0∗ ) + (0∗ 10∗ 10∗ )

(b). (1∗ 01∗ 01∗ )∗ + (0∗ 10∗ 10∗ )

(c). (10101)∗ + (0∗ 10∗ 10∗ )

Solución: B. (1∗ 01∗ 01)∗ genera el lenguaje L = {w|w contiene un número par de 0’s} y
(0∗ 10∗ 10∗ ) el lenguaje L = {w|w contiene exactamente dos 1’s}. Contraejemplo para A: no
debería generar 000. Contraejemplo para C: no genera 00.

14 Indique cuál de las siguientes afirmaciones es verdadera:

(a). Dado un alfabeto Σ, para cualquier lenguaje construido sobre Σ existe una máquina
de Turing que lo acepta

(b). Dado un alfabeto Σ, cualquier lenguaje construido sobre Σ es recursivamente


enumerable

(c). Dado un alfabeto Σ, existen lenguajes construidos sobre Σ que no son recursivamente
enumerables y para los cuales no se puede construir una máquina de Turing que los
acepte

Solución: C: Ver página 264 del libro John E. Hopcroft, Rajeev Motwani, Jeffrey D.
Ullman. Teoría de autómatas, lenguajes y computación.. Pearson. Addison Wesley. Tercera
Edición. ISBN: 978-84-7829-088-8

15 Considere la gramática de símbolos terminales {(, ), ; , 1, 2, 3}, símbolos no terminales


{S, A, E} y producciones:

S → (A)
A → A; E | E
E → 1|2|3|S

La gramática genera listas de elementos que son números o a su vez listas separadas por el
símbolo ”;”. Indicar cuál de las siguientes afirmaciones es verdadera:

(a). El lenguaje es regular

8
(b). El lenguaje es independiente del contexto no regular

(c). No existe una gramática equivalente en Forma Normal de Chomsky

Solución: B. La opción A es falsa porque es necesaria una pila para controlar que los
paréntesis están equilibrados. La opción C es falsa puesto que la gramática no genera la
cadena vacía y por tanto siempre será posible construir una gramática equivalente en Forma
Normal de Chomsky.

16 Dada la siguiente expresión regular: (((a + b)c∗ (a + b)) + ((ac + ab)∗ ))∗ y el siguiente
autómata finito:
c
a, b

a, b q1 q2
a, b
q0 Etiqueta-1

a
Etiqueta-2
q3 b, c q4
a
Indicar qué valores deben tener Etiqueta-1 y Etiqueta-2 para que el autómata acepte el
mismo lenguaje que la expresión regular:

(a). Etiqueta-1=a, b Etiqueta-2=a

(b). Etiqueta-1=c Etiqueta-2=a

(c). Etiqueta-1=a Etiqueta-2=a, b

(d). Ninguna de las anteriores combinaciones es válida

Solución: C. Son los únicos valores de las etiquetas posibles para que el autómata
reconozca el mismo lenguaje que la expresión regular.

17 Dado el lenguaje L generado por la siguiente gramática:

S → xSy | xSyy | z

9
y el siguiente autómata (Nota: Se supone que la pila se encuentra inicialmente vacía. En el
diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es
ǫ. En estos casos se considera que el autómata ejecuta esta transición teniendo en cuenta
únicamente el símbolo actual de la cadena de entrada sin inspeccionar el contenido de la
cima de la pila. Por tanto, en estas transiciones no se extrae ningún elemento de la pila):
x, ǫ; a
z, ǫ; a

y, ǫ; ǫ
q0 q2

x, ǫ; a
y, ǫ; ǫ z, ǫ; a

q1

¿Qué función realiza la pila del autómata en relación a las cadenas del lenguaje L?.

(a). Lleva la cuenta del número de x’s presentes en las cadenas del lenguaje L.

(b). Lleva la cuenta del número de y’s presentes en las cadenas del lenguaje L.

(c). Lleva la cuenta del número de z’s presentes en las cadenas del lenguaje L.

(d). Lleva la cuenta del número de producciones necesarias para derivar las cadenas del
lenguaje L.

Solución: D. El autómata sólo inserta en la pila un símbolo cuando lee una x o una z de la
entrada, que coincide con posibles derivaciones de la gramática. La opción B es falsa puesto
que cuando lee una y el autómata no realiza ninguna operación con la pila.

18 Indicar cuál es el autómata más sencillo (con menor capacidad de reconocimiento) que
funcione de la siguiente manera. Dada cualquier cadena de x e y, substituya todas las x’s
por z’s y devuelva una cadena con todas las y’s al principio y las z’s a continuación

(a). Un autómata finito.

(b). Un autómata a pila determinista.

(c). Un autómata a pila no determinista.

10
(d). Una máquina de Turing.
Solución: D. Es el único autómata que puede escribir en la cinta.
19 Sea L el lenguaje generado por la siguiente gramática:
S → xxSyy | xy
Indicar cuál de las siguientes afirmaciones es verdadera:
(a). L está formado por cualquier cadena que tenga el mismo número de x’s que de y’s.
(b). L está formado por cualquier cadena que tenga el mismo número de x’s que de y’s, y
que además tenga un número par de símbolos.
(c). L está formado por cualquier cadena que tenga el mismo número par de x’s y de y’s.
(d). Ninguna de las anteriores afirmaciones es verdadera.
Solución: D. Deben ser cadenas de “x” seguidas de “y”.
20 ¿Qué podemos afirmar del siguiente autómata?.

x z y

x x y y
q0 q1 q2 q3 q4

y, z
z

q5

(a). Es un autómata no determinista que reconoce cadenas de x e y de tamaño mayor o


igual a dos.
(b). Está mal definido, ya que tiene dos estados de aceptación.
(c). No tiene en cuenta la cantidad de símbolos z que se leen de la cadena de entrada.
(d). Ninguna de las anteriores.
Solución: C. Reconoce cadenas de x seguidas por cadenas de y, que tengan alguna z
intercalada.

11

Вам также может понравиться