You are on page 1of 13

Soluciones exmenes UNED

Cdigo asignatura 71901089 Fecha alta y origen 23/07/2012 Curso Virtual

Nombre asignatura Autmatas, Gramticas y Lenguajes Convocatoria

Septiembre 2011

Soluciones a los exmenes de Septiembre 2011 Autmatas, Gramticas y Lenguajes (1 curso)


Grado en Ingeniera Informtica y Grado en Ingeniera de las Tecnologas de la Informacin

Elena Gaudioso Vzquez y Toms Garca 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)

Nacional UE Original
1 Dado el lenguaje compuesto por las cadenas de longitud nita formadas por todas aquellas combinaciones de smbolos del alfabeto = {a, b, c, d, e}. Se puede construir un autmata a pila que cuente el nmero de vocales de una cadena de entrada y utilice nicamente la cima de la pila?: (a). No. (b). Si, pero slo podra sumar hasta nueve, ya que slo se puede usar la cima de la pila. (c). Si, pero slo teniendo en cuenta que las cadenas de entrada tienen una longitud nita. (d). Ninguna de las anteriores Solucin: C. Para poder contar utilizando un autmata a Pila es imprescindible que el tamao de las palabras est acotado. Si el tamao de la palabra pudiera ser innita se debera utilizar un nmero innito de estados, o se tendra que ensear a sumar al autmata nmeros innitos. Por lo tanto la solucin es la C, ya que la condicin necesaria para poder construir un autmata como el que se pide en el enunciado es que las palabras con las que se trabaje sean nitas. Para asegurar que un conjunto numerable sea nito es necesario acotarle con un mximo. No es necesario acortar a un nmero determinado, como 9, ya que se puede codicar la suma y no utilizar la notacin decimal. 2 Sea L el lenguaje que reconoce el siguiente autmata nito b q0 a a q1 b q2 a a q3

b Indicar cul de las siguientes gramticas 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 gramticas genera L Solucin: C. La gramtica de la opcin a no genera la cadena vaca mientras que el autmata s lo hace. La gramtica de la opcin b genera por ejemplo la cadena baba y el autmata no. Para comprobar que la gramtica de la opcin c genera el mismo lenguaje que el autmata del enunciado, basta con construir el autmata equivalente a dicha gramtica. 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 Solucin: C. Para saber si el nmero de 2s que contiene la palabra es vlido se necesita recordar cul es el nmero de 1s que tiene la palabra, pero el poder recordar cuantos 1s tiene la palabra, implica tener que tratar dos veces esta informacin una para compararla con los 0s, y la segunda para compararla con el nmero de 2s. Para poder tratar dos veces un dato se debe poder tener almacenado en memora dos veces ese dato, pero al disponer de una nica pila no se tiene esta posibilidad. 4 Indique cul de las siguientes armaciones es verdadera: (a). El nmero total de lenguajes no regulares es nito (b). El nmero total de lenguajes regulares es nito (c). Ninguna de las armaciones anteriores es cierta Solucin: C. Existe un nmero innito de lenguajes regulares y de lenguajes no regulares. 3

5 Decidir si es verdadera o falsa la siguiente armacin: Dado un lenguaje regular L, existe una gramtica independiente de contexto en forma normal de Chomsky que genera el mismo lenguaje. (a). Siempre (b). Nunca (c). Depende de L Solucin: C. Una gramtica en forma normal de Chomsky no puede generar la cadena vaca. Por tanto, se podr construir una gramtica en Forma Normal de Chomsky que genere L siempre que ste no contenga la cadena vaca. 6 Dada la gramtica G: S aS |bA| A bB |aS | B aB |bB Indicar cul de las siguientes expresiones regulares genera el mismo lenguaje que la gramtica 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 gramtica G Solucin: C. Las opciones a y b son falsas porque por ejemplo no generan la cadena vaca. La expresin regular de la opcin c genera el mismo lenguaje de la gramtica (para comprobarlo se puede construir el autmata equivalente a la gramtica del enunciado). 7 Dado el siguiente autmata a pila (Nota:se supone que inicialmente la pila se encuentra vaca. En el diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es . En estos casos se considera que el autmata ejecuta esta transicin teniendo en cuenta nicamente el smbolo actual de la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningn elemento de la pila.) 4

x, ; x y, x; q0 , ; Z0 q1 x, y ; , Z0 ; y, ; y q2

Indicar cul de las siguientes armaciones es FALSA: (a). El autmata a pila acepta las cadenas con el mismo nmero de xs y de y s (b). El lenguaje que acepta el autmata a pila contiene al lenguaje {xn y n : n 0} (c). El lenguaje que acepta el autmata a pila es independiente del contexto no regular (d). En las cadenas contenidas en el lenguaje aceptado por el autmata siempre deben aparecer las xs antes que las y s Solucin: D. La opcin a es verdadera puesto que es el lenguaje que acepta el autmata. La opcin b es verdadera puesto que las cadenas de la forma xn y n estn contenidos en el lenguaje denido en la opcin a que es un lenguaje independiente del contexto no regular. La opcin c es verdadera puesto que el lenguaje que acepta el autmata es no regular. 8 Dada la siguiente mquina de Turing: M = ({q0 , q1 , q2 , q3 , q4 }, {0, 1}, {0, 1, X, Y, B }, , q0, B, {q4 }) donde se dene mediante la siguiente tabla de transiciones: Smbolo 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 cul de las siguientes armaciones 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 armaciones es verdadera Solucin: B. Ver ejemplo 8.2 del libro base 9 Dada la siguiente gramtica G: S zP zQz Q yQy Q zP z Q zP zP z Q P xP x P zQz P zQzQz P Indicar cul de las siguientes armarciones es verdadera: (a). Si se convierte G a una de sus posibles gramticas en Forma Normal de Chomsky, el nmero de producciones resultante es mayor o igual que 34 y menor que 75 (b). No existe una gramtica en Forma Normal de Chomsky que genere el mismo lenguaje que G (c). En una de las posibles gramticas en Forma Normal de Chomsky equivalente a G habr una produccin 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 armaciones es verdadera Solucin: A. La gramtica es independiente del contexto y no genera la cadena vaca. Por tanto, es posible transformarla en una gramtica en Forma Normal de Chomsky (la opcin b es por tanto falsa). La opcin c es falsa puesto que la derivacin S ZZZ no es una derivacin vlida en una gramtica en Forma Normal de Chomsky. Para comprobar que la opcon a es verdadera basta con transformar la gramtica del enunciado en su equivalente Forma Normal de Chomsky. 10 Sea L1 el lenguaje compuesto por las cadenas formadas por subcadenas de 2 o ms x seguidas de subcadenas de 2 o ms y, con un mmero indeterminado de z que pueden estar intercaladas tanto entre las x como entre las y. Considere el autmata siguiente. 6

x q0 x q1 x q2 y q3 y

y q4

Indicar cul de las siguientes armaciones es verdadera: (a). El autmata reconoce el lenguaje L1 , ya que no es necesario denir las transiciones correspondientes a los smbolos z s (b). El lenguaje que reconoce el autmata es un subconjunto del lenguaje L1 (c). El autmata no puede reconocer L1 porque es un lenguaje independiente del contexto Solucin: B. La opcin c es falsa porque L1 es un lenguaje independiente del contexto regular y puede ser, por tanto, reconocido por un autmata nito. La opcin b es veredadera puesto que el autmata reconoce el lenguaje compuesto por las cadenas formadas por subcadenas de 2 o ms xs seguidas de subcadenas de 2 o ms ys. La opcin a es falsa puesto que es necesario indicar en qu punto de la lectura de una cadena es posible encontrar un smbolo z.

Nacional UE Reserva
11 Dado el alfabeto = {0, 1}, se dene L como el lenguaje formado por las cadenas que cumplen que N (0) = N (1) + 1 donde N (0) es el nmero de apariciones del smbolo 0 y N (1) es el nmero de apariciones del smbolo 1. Indicar cul de las siguientes gramticas independientes del contexto genera L. (a). S CB |BC |0C 1|1C 0|0 C 0C 1| 1C 0| 0 B 0B 1|1B 0|01|10 (b). S 0A1|0 A 0A1|0B |0 B 0B | 0 7

(c). S CB |BC |0C 1|1C 0|0| C 0C 1| 1C 0| 0 B 0B 1|1B 0|01|10 Solucin: A. La opcin b es falsa porque genera L = {0m 1n |m, n > 0ym > n 0}. La opcin c es falsa porque genera la cadena vaca 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 cul de las siguientes armaciones es verdadera: (a). L1 L2 siempre es independiente del contexto

(b). L1 + L2 siempre es independiente del contexto (c). L1 L2 siempre es independiente del contexto Solucin: B. La opcin a) es falsa (ver ejemplo 7.26 del libro base). La opcin c) es falsa (ver teorema 7.29 del libro base). 13 Sea L el lenguaje generado por la siguiente gramtica: S A1B A 0A | B 0B | 1B | Indicar cul de las siguientes armaciones es verdadera: (a). L es independiente del contexto no regular (b). L contiene la cadena vaca (c). Sea w la cadena de menor longitud de L, entonces |w | = 2 (d). L es regular y puede expresarse mediante la expresin regular 0 1(0 + 1) Solucin: D. L puede expresarse mediante la expresin regular 0 1(0 + 1) . Por tanto, L es un lenguaje regular y vemos que no genera la cadena vaca y que la cadena de menor longitud que se puede denir es 1 que tiene longitud 1. 14 Indicar cul 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) Solucin: A. La opcin b es falsa puesto que no admite la cadena a y la opcin c es falsa porque no admite la cadena abaa 15 Dado el lenguaje compuesto por las cadenas de longitud nita formadas por todas aquellas combinaciones de smbolos del alfabeto = {a, b, c, d, e}. Se puede construir un autmata a pila que cuente el nmero de vocales de una cadena de entrada y utilice nicamente la cima de la pila?: (a). Si, pero se tiene que ensear al autmata a sumar. (b). Si, utilizando notacin no decimal. (c). Si, pero slo teniendo en cuenta que las cadenas de entrada tienen una longitud nita. (d). Si, si se cumplen todas las condiciones anteriores. Solucin: D. Los autmatas a pila son mquinas programables que lo nico que pueden hacer es leer de la cinta, desplazarse una posicin a la derecha de la cinta y leer y escribir en la pila. Por lo tanto, todo aquello que se desee que realice el autmata hay que enserselo, por lo tanto, se deber ensear a sumar al autmata. Si slo se puede utilizar una nica posicin de la pila se necesita codicar la numercin que se utilizar para que slo utilice esta posicin. Por lo tanto, la notacin decimal slo servira para contar palabras que tengan a lo sumo 9 vocales. La limitacin real que se tiene es que pueda ser innita la palabra, ya que de esta forma no se podra realizar la codicacin. Por el contrario, si las palabras tienen que ser nitas s se puede denir la codicacin (para que un conjunto enumerable sea nito tenemos que decir cual es su mximo). Por lo tanto, la solucin es la D, ya que se tienen que cumplir todas las condiciones anteriores. 16 Dada la gramtica: S xSy | ySx | ySy | xSx | Indicar cul es el lenguaje que genera: 9

(a). El lenguaje formado por cualquier cadena de xs e y s. (b). El lenguaje formado por cualquier cadena de xs e y s, incluida la palabra vaca. (c). El lenguaje formado por cadenas que tengan el mismo nmero de xs que de y s. (d). El lenguaje formado por cualquier cadena de xs e y s de cardinalidad par, incluida la palabra vaca. Solucin: D. Las opciones a y b son falsas porque la gramtica no genera la cadena x o xxx. La opcin c es falsa porque la gramtica genera la cadena xx. 17 Sea L el lenguaje sobre el alfabeto = {0, 1} cuyas cadenas verican las siguientes restricciones: si una cadena tiene menos de cinco 1s, entonces tiene un nmero par de 1s; si una cadena tiene cinco 1s o ms, entonces contiene un nmero impar de 1s; 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 Solucin: A. Basta construir el autmata nito determinista equivalente 18 Indicar cul es el tipo de autmata ms sencillo (menor capacidad de reconocimiento) capaz de reconocer el lenguaje {xn y m z n |n 25, m 50} (a). Un autmata nito (b). Un autmata a pila determinista (c). Un autmata a pila no determinista (d). Una Mquina de Turing Solucin: B. El lenguaje {xn y m z n |n 25, m 50} es uno de los lenguajes ms sencillos que cumplen el lema del bombeo de los lenguajes independientes del contexto. En un autmata a pila que lo reconozca, se utiliza la pila para saber que hay el mismo nmero de xs que de zs. Para la acotacin de tener ms de 25 xs y ms de 50 ys, basta con denir el autmata con 25 estados para leer las xs y 50 estados para leer las ys. Es fcil comprobar que se puede denir un autmata a pila determinista puesto que las cadenas del lenguaje son ristras de xs seguidas de ristras de ys seguidas de ristras de zs y no hay ninguna ambigedad que exija introducir no determinismo. 10

19 Considere el siguiente autmata a pila. x, ; z , ; Z0 x, z ;

y, z ; , Z0 ;

Indicar cul de las siguientes armaciones es verdadera (Nota: Se supone que la pila se encuentra inicialmente vaca. En el diagrama de transiciones algunos arcos tienen una etiqueta en la que el segundo elemento es . En estos casos se considera que el autmata ejecuta esta transicin teniendo en cuenta nicamente el smbolo actual de la cadena de entrada sin inspeccionar el contenido de la cima de la pila. Por tanto, en estas transiciones no se extrae ningn elemento de la pila): (a). El autmata es determinista y acepta el lenguaje {xn+2 y n |n 0} (b). El autmata es no determinista y acepta el lenguaje {xn+2 y n |n 0} (c). El autmata no siempre llega al estado de aceptacin con la pila vaca (d). Ninguna de las anteriores armaciones es verdadera Solucin: B. El autmata no es determinista (se comprueba fcilmente al analizar la cadena xx) y siempre vaca la pila antes de llegar al estado de aceptacin (la transicin que lleva al estado de aceptacin lee el smbolo Z0 inicialmente introducido). 20 A la hora de trasladar la cabeza de la mquina de Turing en cada paso de ejecucin de la mquina. Cul de las siguientes armaciones es verdadera? (a). Las mquinas de Turing slo pueden moverse una posicin a la derecha. (b). Las mquinas de Turing slo pueden moverse una posicin a la izquierda. (c). Las mquinas de Turing slo pueden moverse una posicin a la derecha o a la izquierda. (d). Las mquinas de Turing pueden moverse cualquier nmero de posiciones a la derecha o a la izquierda. Solucin: C. Por la denicin de Mquina de Turing

11

You might also like