TEORÍA DE AUTÓMATAS I Informática de Sistemas

Anuncio
TEORÍA DE AUTÓMATAS I
Informática de Sistemas
Soluciones a las cuestiones de examen del curso 2009/2010
Febrero 10, 1ª semana
1. Considere la gramática de símbolos terminales {(, ), ;, 1, 2, 3}: S→ (A), A→A; E,
A→E, E →1, E →2, E →3, E →S. La gramática genera listas de elementos que son
números o a su vez listas, separados por el símbolo “;”. Indique cuál de las siguientes
afirmaciones es verdadera:
a) El lenguaje es regular
b) El lenguaje es independiente de contexto (no regular)
c) No existe una gramática equivalente en forma normal de Chomsky
Solución: B. La gramática es independiente de contexto. (La A es falsa porque hace
falta una pila para llevar cuenta del número de paréntesis. La C es falsa porque la
gramática no genera la cadena vacía, y por eso existe una gramática en forma normal de
Chomsky.)
2. Sea L el lenguaje representado por la expresión regular (x∪y) · (x∪y)* y L’ el
lenguaje que reconoce el siguiente autómata:
a) L ⊂ L’
b) L’ ⊂ L
c) L = L’
Solución: C. En ambos casos se trata del lenguaje formado por las cadenas que
contienen un solo símbolo.
3. Supongamos un lenguaje L aceptado por un autómata de pila M. Entonces, el
autómata MC, obtenido al intercambiar en M estados de aceptación por estados de no
2
aceptación y viceversa:
a) Acepta siempre el lenguaje LC, lenguaje complementario de L
b) Sólo podemos asegurar que acepta LC si M es un autómata determinista
c) Sólo podemos asegurar que acepta LC si M es un autómata finito
Solución: B. Si M es determinista, está garantizado que el autómata MC aceptará las
cadenas rechazadas por M y viceversa. Si M no es determinista podrán existir caminos
en M que lleven a un estado de no aceptación a cadenas de L, y estas cadenas serían
aceptadas por MC.
4. La unión de dos lenguajes decidibles (por máquinas de Turing), ¿es decidible?
a) Sí, siempre
b) No, nunca
c) Depende de los casos
Solución: A. Sea M1 la máquina que decide el primero y M2 la que decide el segundo.
Podemos construir una máquina de Turing M (de dos cintas) que simule primero M1
sobre la primera cinta y luego M2 sobre la segunda; si el contenido de al menos una de
las cintas es Y, la máquina M limpia la segunda cinta y escribe Y en la primera; si las dos
cintas contienen N, la máquina M limpia la segunda cinta y se detiene.
5. Si L1 es el lenguaje representado por la expresión regular 1(00∪1)*((10) * ∪101) * y
L2 el reconocido por el autómata de la figura, entonces (Nota: el símbolo ⊂ denota la
relación de inclusión estricta):
a) L1 ⊂ L2
b) L2 ⊂ L1
c) L1 = L2
Solución: C.
3
6. Dados dos lenguajes regulares, indique cuál de las siguientes afirmaciones es
verdadera:
a) Siempre es posible diseñar un algoritmo que determine si tienen alguna cadena en
común
b) Existe tal algoritmo sólo cuando alguno de los dos lenguajes es finito
c) Existe tal algoritmo sólo cuando ambos lenguajes son finitos
Solución: A. Siempre es posible diseñar un autómata finito que reconoce el lenguaje
intersección de dos lenguajes regulares.
7. Sea L un lenguaje estructurado por frases decidible y c(L) el complementario de L.
La concatenación de ambos, L · c(L)
a) Siempre es decidible por máquinas de Turing
b) Puede no serlo, porque el complementario de un lenguaje decidible puede no ser
decidible
c) Puede no serlo, porque la concatenación de dos lenguajes decidibles puede no ser
decidible
Solución: A. Si un lenguaje es decidible su complementario también lo es. La
concatenación de dos lenguajes decidibles también es decidible.
8. Sea L1 el lenguaje generado por la expresión regular R = (b(aa*b) *a) * ∪ λ y L2 el
reconocido por el autómata de la figura. Entonces:
a) L1 ⊂ L2
b) L1 = L2
c) L2 ⊂ L1
Solución: A. Toda cadena generada por la expresión regular es aceptada por el
autómata. Sin embargo el autómata acepta, p.e., la cadena baa, que no genera la
expresión regular.
9. Dado el lenguaje L = {a,abb,ba,bbba,b,λ} indique cuántas cadenas de longitud
estrictamente menor que 3 hay en L*:
4
a) 7
b) 8
c) 9
Solución: A.
10. Considere el lenguaje L definido por las siguientes condiciones: 1) b ∈ L y λ ∈ L;
2) Si x ∈ L entonces axb ∈ L y bxa ∈ L; 3) Si x,y ∈ L entonces xy ∈ L. Sea L’ = {w ∈
(a∪b)*| el número de letras b es mayor o igual que el número de letras a}. Indique cuál
de las siguientes afirmaciones es verdadera (Nota: el símbolo ⊂ denota la inclusión
estricta):
a) L ⊂ L’
b) L’ ⊂ L
c) L = L’
Solución: C. L y L’ coinciden. Es fácil ver que si una cadena pertenece al lenguaje L
verifica las condiciones del lenguaje L’. Del mismo modo, toda cadena de L’ puede
generarse mediante las reglas del lenguaje L. Las reglas de los apartados 1) y 2)
garantizarían la generación de cadenas con mayor o igual número de letras b que a, pero
con una cierta simetría con respecto a la posición central de la cadena (si en una
posición dada se encontrara una a, en la posición simétrica se encontraría una b); al
añadir la regla del apartado 3) se posibilita la generación de toda cadena de L’.
11. Indique cuál de las siguientes afirmaciones referidas a lenguajes del alfabeto ∑ =
{0,1,2} es cierta:
a) El lenguaje L = {11116k | k ≥ 0} no es regular
b) No existe ningún autómata determinista que reconozca el lenguaje de las cadenas
cuyos cinco últimos símbolos incluyen dos 1's y tres 2's
c) El lenguaje consistente en las cadenas de caracteres tales que dos 0's están separados
por 4i caracteres, para algún i ≥ 0, es un lenguaje regular
Solución: C. Los lenguajes de las opciones A, B y C son regulares ; es fácil encontrar
una expresión regular que los describe.
12. Cuál de las siguientes identidades entre expresiones regulares E y F no siempre se
verifica:
a) (E*)*=E*
b) (E*F*)*=(E∪F)*
c) (E∪F)*=E*∪F*
Solución: C.
13. Indique cuál de las siguientes afirmaciones, referidas a la gramática, S → AB, A
→A0B| 0B, B → BB|1|0 es cierta:
5
a) Toda cadena derivada de la gramática se obtiene mediante un único árbol de
derivación
b) La gramática no es estructurada por frases
c) La gramática es independiente del contexto
Solución: C. La opción A es falsa, ya que muchas cadenas, p.e. la 01010, pueden
derivarse mediante diferentes árboles de derivación. La opción B es obviamente falsa,
ya que toda gramática que puede expresarse en forma de reglas de reescritura es
estructurada por frases. La gramática verifica además las características de una
gramática independiente del contexto.
14. Sea el lenguaje L = {tctr | t ∈ (a ∪b)*, t ≠ λ} Con tr indicamos la cadena inversa de
t. Definamos un tipo particular de autómatas de pila que tienen la particularidad de que
su pila siempre contiene inicialmente un cierto símbolo z0. Considere el autómata ({q0,
q1, q2, q3}, {a,b,c,$}, {a,b,c, z0}, T, q0, q3) , siendo T el conjunto:
(q0, a, z0 ; q1, az0)
(q0, b, z0 ; q1, bz0)
(q1, a, λ ; q1, a)
(q1, b, λ ; q1, b)
(q1, c, λ ; q2, λ)
(q2, a, a ; q2, λ)
(q2, b, b ; q2, λ)
(q2, $, z0 ; q3, λ)
Asumiendo que el autómata siempre se arranca conteniendo en su pila el símbolo z0
indique cuál de las siguientes afirmaciones a él referidas es falsa:
a) No siempre vacía su pila antes de llegar a un estado de aceptación
b) Reconoce el lenguaje L, si asumimos que usa el símbolo $ como delimitador de la
cadena de entrada
c) El tipo de autómata definido tiene la misma potencia de reconocimiento de lenguajes
que el autómata de pila convencional
Solución: A. El autómata siempre vacía su pila antes de llegar a un estado de
aceptación, ya que la única posibilidad de acceder al estado de aceptación es mediante la
transición que saca de la pila el símbolo z0. Obviamente la potencia de reconocimiento
de lenguajes de este tipo de autómata es idéntica a la de un autómata de pila
convencional, ya que se reduce a un autómata convencional que comienza siempre sus
operaciones introduciendo un símbolo z0 en la pila.
15. Indique cuál de las siguientes afirmaciones es falsa:
6
a) Es posible diseñar una máquina de Turing que calcule la función: f (n,m) = n – m;
donde n y m son números enteros (positivos o negativos)
b) Es posible diseñar una máquina de Turing que calcule la función: f (n) = n!
(factorial)
c) No es posible diseñar una máquina de Turing que calcule la función: f (n) = log2 n
(logaritmo en base 2; suponiendo que el resultado es siempre un número entero)
Solución: C. La tres funciones descritas son computables, y por tanto es posible diseñar
una máquina de Turing que las compute.
16. Indique cuál de las siguientes afirmaciones es falsa con respecto al lenguaje L =
{cnbm | (n ≥1) y (n = m)} ∪ {anbm | (n ≥1) y (n = 2m)}:
a) Existe un autómata de pila determinista que lo reconoce
b) Existe un autómata de pila no determinista que lo reconoce
c) No existe ningún autómata de pila que vacíe su pila que lo reconozca
Solución: C. Se trata de un lenguaje independiente del contexto, y para todo lenguaje
independiente del contexto existen siempre un autómata de pila determinista que lo
reconoce, un autómata de pila no determinista que lo reconoce, y un autómata de pila
que vacía su pila que lo reconoce. Lo que en algunos casos no existe es un autómata de
pila determinista y que vacía su pila que lo reconoce.
Febrero 10, 2ª semana
17. Sea L un lenguaje generado por una gramática libre de contexto en forma normal de
Chomsky (G). ¿Existe otra gramática en forma normal de Chomsky que genere el
complemento de L?
a) Sí, para toda gramática G
b) No, nunca
c) Existe si y sólo si L(G) es un lenguaje regular
Solución: B. No, nunca porque el complementario de L contiene necesariamente la
cadena vacía.
18. Indique cuál de las siguientes afirmaciones, relativas a los autómatas representados
en la figura, es falsa:
7
a) El lenguaje aceptado por el autómata de la izquierda es (x*y º(x∪y)*)
b) Ambos autómatas reconocen el mismo lenguaje
c) El autómata de la izquierda acepta más cadenas que el de la derecha
Solución: C. Es falso porque el lenguaje que aceptan ambos es (x*y º(x∪y)*).
19. Dado el alfabeto {x,y}, queremos construir un autómata de pila M tal que L(M) sea
el lenguaje en cuyas cadenas hay tres x’s por cada dos y’s. ¿Es correcta la siguiente
solución? (Se entiende que cada transición que inserta o lee varios símbolos en la pila
representa en realidad varias transiciones consecutivas.)
a) Sí
b) No
c) La figura no representa realmente un autómata de pila, ya que podría simplificarse en
forma de un autómata finito
Solución: B. El autómata no acepta la cadena xyyxx.
20. La máquina de Turing de la figura:
8
a) Desplaza una celda hacia la derecha a los símbolos contenidos en las celdas situadas
entre la celda actual, y la primera celda en blanco que se encuentra a la izquierda de la
celda actual
b) Desplaza una celda hacia la derecha a todo símbolo distinto de ∆ que esté contenido
en una celda situada a la izquierda de la celda actual
c) Ninguna de las afirmaciones anteriores es cierta.
Solución: A. Se trata de la máquina SR.
21. Indique cuál de las siguientes afirmaciones es verdadera:
a) Si L es un lenguaje regular, entonces L* = (L*)*
b) {λ}* ≠ {λ}
c) Para todo lenguaje L, L* ≠ (L*)*
Solución: A.
22. Indique cuál de las siguientes afirmaciones es verdadera:
a) Nunca se puede afirmar con seguridad que un autómata finito no determinista acepta
una cadena.
b) Un autómata finito no determinista sólo puede utilizarse para aceptar lenguajes
finitos
c) Un autómata finito no determinista acepta una cadena cuando es posible que su
análisis deje a la máquina en un estado de aceptación
Solución: C. Un autómata finito no determinista acepta una cadena cuando es posible
que su análisis deje a la máquina en un estado de aceptación
23. 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 no regulares es infinito contable
c) El número total de lenguajes regulares es infinito
Solución: C. El conjunto de los lenguajes regulares es infinito contable. Como el
conjunto de todos los lenguajes posibles es infinito incontable, y este conjunto puede
9
verse como la unión del conjunto de los lenguajes regulares y el conjunto de los
lenguajes no regulare, entonces el conjunto de los lenguajes no regulares es infinito
incontable (de otro modo, la unión de dos conjuntos contables sería un conjunto
contable)
24. Dado el alfabeto Σ = {0,1,λ, ∅, (, ),∪,º,*}, el lenguaje formado por las cadenas que
constituyen expresiones regulares válidas (esto es, el conjunto de expresiones regulares
del alfabeto {0,1}):
a) Es un lenguaje regular
b) Es un lenguaje independiente del contexto y no regular
c) Es un lenguaje estructurado por frases y no independiente del contexto
Solución: B. El requisito de incluir paréntesis compensados hace imposible que se trate
de un lenguaje regular.
25. Sean dos lenguajes tales que L1 ⊂ L2 y L2 es independiente del contexto no
determinista. ¿Es posible que L1 sea independiente del contexto?
a) Sí, y puede ser determinista
b) No
c) Sólo puede ser independiente del contexto no determinista
Solución: A.
26. En un cierto autómata de pila determinista existe una transición (i,λ,λ; j,x). El
número total de transiciones que debe partir del estado i es:
a) Una
b) Dos
c) Más de dos
Solución: A. Está claro que por ser determinista, la transición (i, λ, λ, * ,*) excluye (i,x,
λ, *, *), (i, λ, y, *,*), (i, x, y, *,*) y todas aquéllas en que contengan otros símbolos en
vez de x e y, es decir, no hay más que una transición desde el estado i.
27. Indique cuál de las siguientes afirmaciones referidas a lenguajes del alfabeto ∑ =
{0,1,2} es cierta:
a) El lenguaje de las cadenas con a lo sumo una pareja de 0's consecutivos y a lo sumo
una pareja de 1's consecutivos no es regular
b) NO existe ningún autómata determinista que reconozca el lenguaje de las cadenas en
las que toda pareja de 0's contiguos aparece antes de cualquier pareja de 1's contiguos
c) El lenguaje de las cadenas equilibradas con igual número de 0's y de 1's tales que
ningún prefijo de cualquiera de ellas posee más de dos 0's que 1's ni más de dos 1's que
0's es un lenguaje regular.
Solución: C. Los tres lenguajes descritos son regulares.
10
28. Indique cuál de las siguientes afirmaciones es cierta:
a) Si L es un lenguaje regular también lo es el lenguaje consistente en las inversas de
las cadenas de L
b) Sea L cualquier subconjunto de 0*; entonces, L* es un lenguaje regular
c) El lenguaje de palabras que son prefijos (finitos) de la expansión decimal de
3.1,3.14,3.141,3.1415, etc. es un lenguaje regular
:
Solución: A. La opción B es falsa (así p.e., el lenguaje 0n, con n número primo, no es
regular). La opción C es falsa, ya que se trata de un lenguaje no regular (no verifica el
lema de bombeo de los lenguajes regulares ni de los lenguajes independientes del
contexto). En cuanto a la opción A, si existe un autómata finito determinista que
reconoce un lenguaje, bastará con intercambiar estado inicial por final e invertir el
sentido de las transiciones para obtener un autómata finito que reconoce el lenguaje de
las cadenas inversas.
29. Sean L y L’ los lenguajes generados, respectivamente, por las gramáticas:
A → dA, A → dB, A → f, B → g
y
A → dA′, A → f, A′ → A, A′ → B, B → g
Indique cuál de las siguientes relaciones es verdadera (donde ⊂ denota la relación de
inclusión estricta):
a) L = L’
b) L⊂L’
c) L’⊂L
Solución: A. Es elemental transformar una gramática en la otra prescindiendo del no
terminal A′.
30. Indique cuál de las siguientes afirmaciones es falsa:
a) Es posible diseñar una máquina de Turing que calcule la función: f (n,m) = n–m;
donde n y m son números enteros (positivos o negativos)
b) Es posible diseñar una máquina de Turing que calcule la función: f (n) = n!
(factorial)
c) No es posible diseñar una máquina de Turing que calcule la función: f (n) = log2n
(logaritmo en base 2; suponiendo que el resultado es siempre un número entero)
Solución: C. La tres funciones descritas son computables, y por tanto es posible diseñar
una máquina de Turing que las compute.
31. Sea L el lenguaje generado por la gramática: S→ Rc, R →aRbR, R →λ y L’ el
lenguaje de las cadenas que cumplen simultáneamente: w = xc / x ∈(a ,b)*; |x|a = |x|b
(esto significa que el número de letras a es igual al de letras b en la subcadena x); todo
prefijo y de x verifica que: |y|a ≥ |y|b.
Indique cuál de las siguientes relaciones es verdadera (donde ⊂ denota la relación de
inclusión estricta):
11
a) L = L’
b) L⊂L’
c) L’⊂L
Solución: A.
32. Sea L = {anbn | n ∈ N} y Lij = { aipbjq | p.q ∈ N}; donde i,j son dos números
naturales fijos distintos de cero. El lenguaje intersección de ambos es:
a) Regular
b) Independiente del contexto no regular
c) Estructurado por frases no independiente del contexto.
Solución: B. Se trata del lenguaje Lij = { aipbjq | p = kj .q= ki, k ∈ N}.
Septiembre 10, original
33. Sea un autómata finito M={S, Σ, δ, ι, F,}. Sean p,q ∈ S; a,b ∈ Σ. Indique cuál de
las siguientes afirmaciones es verdadera:
a) Si existe un símbolo a tal que δ(p,a) = δ(q,a), M no es determinista
b) Si existe un estado p tal que δ(p,a) = δ(p,b), M no es determinista
c) Si δ(ι,a) = δ(p,b), δ(ι,a) = δ(q,b) y δ(p,b) ≠ δ(q,b), M no es determinista
Solución: C. Para que un autómata finito sea determinista δ ha de ser una función.
34. Indique cuál de las siguientes afirmaciones es falsa:
a) Todo subconjunto de un lenguaje regular es regular
b) Todo lenguaje regular tiene un subconjunto regular
c) Todo lenguaje que no es regular contiene infinitos lenguajes regulares
n n
Solución: A. El lenguaje {x y | n≥0}, por ejemplo, es subconjunto de x*y* y no es
regular. B es verdadera : el conjunto vacío es un lenguaje regular y es subconjunto de
cualquier conjunto. C es verdadera, ya que todos los lenguajes que no son regulares son
infinitos.
35. Sean L1, L2 y L3 tres lenguajes arbitrarios. Indique cuál de las siguientes
afirmaciones es falsa:
a) (L1 ∪ L2 ∪ L3)* = (L1*⋅ L2* ⋅ L3*)*
b) L1 *( L1 ∪ L2 ∪ L3)* = (L1*⋅ L2* ∪ L3* L1 *)* L1 *
c) La opción b) es verdadera sólo si L1, L2 y L3 son lenguajes regulares.
Solución: C. Todas las expresiones coinciden con (α ∪ β ∪ γ)*, independientemente de
las expresiones concretas de α, β y γ
12
36. Considere la gramática G1 = {S→ aS/ aA/ a, A→ aB/ bS, B→ aB/ bB, C→ aA/
bC}. Indique cuál de las siguientes gramáticas genera el mismo lenguaje:
a) G = {S→ aS/ aA/ a, A→ bS}
b) G = {S→ aA/ a, A→ aB, B→ aB/ bB, B→ b}
c) G = {S→ aA/ a, A→ aC, C→ aA/ bC}
Solución: A. Las reglas que implican a los no terminales B y C no generan ninguna
cadena
37. Indique cuál de los siguientes lenguajes no es independiente del contexto:
a) El conjunto de cadenas de ceros y unos que contienen dos ceros separados por
un número finito de dígitos que es múltiplo de cuatro
b) El conjunto de cadenas de ceros, unos y doses tales que el cero no es el carácter
que ocurre con más frecuencia en la cadena
c) El conjunto de cadenas de ceros, unos y doses tales que el número de ceros es
mayor que la suma del número de unos y doses
Solución: B. El lenguaje de la opción A es regular. El diseño de un autómata de pila que
reconozca el lenguaje de la opción C es sencillo. En cuanto al lenguaje de la opción B,
es fácil ver que se requeriría el recuento independiente de ceros, unos y doses, operación
que no puede hacerse con una única pila.
38. Indique cuál de las siguientes afirmaciones es falsa:
a) Todo lenguaje decidible es independiente del contexto
b) Si L es un lenguaje decidible por máquinas de Turing, también lo es el
lenguaje complementario de L
c) Si L es decidible, también lo es el lenguaje formado por las cadenas inversas
de L.
n n n
Solución: A. La opción A es falsa (contraejemplos: {x y z ), {ww | w ∈ {0,1}*). La
veracidad de la opción B se deriva de la propia definición de lenguaje decidible. La
opción c) es verdadera: si M es la máquina de Turing que reconoce L, es posible obtener
una máquina que reconozca el lenguaje de las cadenas inversas de las cadenas de L sin
más que preceder M de operaciones que inviertan la cadena de entrada.
39. Considere funciones f(L1) = L2, donde L1 y L2 son lenguajes con alfabeto Σ. Una
función f se denomina regular si siempre que L2 es regular entonces también L1 es
regular. Indique cuál de las siguientes funciones es regular:
a) La función que invierte las cadenas de L1: f(L1) = L1I
b) La función que añade a L1 las cadenas de Σ* : f(L) = L ∪ Σ*
c) La función que conserva de L1 la cadena vacía y elimina el primer carácter de
todo el resto de las cadenas
Solución: A. En cuanto al caso C, es fácil encontrar un contraejemplo: Sea Σ = {0,1}. Si
L1 es el lenguaje cuyas cadenas verifican que el primer símbolo es un símbolo 0 cuando
la longitud de la cadena es un número primo, y 1 en caso contrario (un lenguaje no
regular), L2 resulta ser {1,0}*, un lenguaje regular. La función de la opción B tampoco
es regular: el lenguaje de las cadenas con n símbolos, donde n es un número primo, no
13
es regular, mientras que la unión de este lenguaje con el lenguaje Σ* es el lenguaje Σ*,
que es regular (en general, un lenguaje regular puede tener subconjuntos no regulares).
40. Sea L el lenguaje representado por el autómata de la figura. Indique cuál de las
siguientes opciones representa el mismo lenguaje:
a) (a ∪ b) ⋅(a ∪ b) ⋅ (a⋅a)*
b) (a ∪ b) ⋅(a ∪ b)* ⋅ (a⋅a)*
c) S→ aR1, S→ bR1, R1→ aR2, R1→ bR2, R1→ a, R1→ b, R3→ aR2, R3→ a
b
a
a
a
a
b
b
a, b
b
b
b
a
b
a
a
Solución: A.
41. Indique cuál de las siguientes afirmaciones es falsa:
a) La tesis de Turing no implica que los lenguajes más generales que existan sean
los lenguajes estructurados por frases.
b) Dada una máquina de Turing que reconoce un lenguaje L, no siempre es posible
diseñar un algoritmo que dé una respuesta positiva si L tiene más de 100
cadenas
c) La tesis de Turing no implica que los lenguajes más generales que existan sean
los lenguajes no decidibles.
Solución: B. Siempre podría diseñarse un algoritmo que, por ejemplo, fuese generando
cadenas de longitud creciente, siguiendo el orden lexicográfico, comprobando si
pertenecen al lenguaje e incrementando un contador cada vez que una cadena fuese
identificada. La tesis de Turing implica que los lenguajes más generales que existan
computables por una máquina de Turing son los estructurados por frases.
42. Indique cuál de las siguientes afirmaciones es falsa:
a) Sea L={a, ab}. L puede ser aceptado por un autómata de pila determinista que
siempre llegue a los estados de aceptación con pila vacía
b) Si M es un autómata de pila determinista que siempre llega a los estados de
aceptación con pila vacía, entonces L(M) puede ser aceptado por un autómata de
pila no determinista
c) Sea L = { w | w tiene 3k+1 b’s para algún k número natural}. L puede ser
reconocido por un autómata de pila no determinista pero no puede ser
reconocido por un autómata determinista.
14
Solución: C. A y B son ciertas: L es un lenguaje regular; y la potencia de
reconocimiento de lenguajes de los autómatas no deterministas es mayor que la de los
autómatas deterministas. C es falsa, ya que L es un lenguaje regular.
43. Indique cuál de las siguientes afirmaciones, relativas al lenguaje aceptado por el
autómata de la figura, es verdadera:
0
0
1
1
1
0
0
0
1
0
1
1
1
0
0
1
0
1
a) Es el lenguaje formado por las cadenas de ceros y unos que cumplen una de las
siguientes condiciones: 1) terminan en 010 y contienen una única vez la
subcadena 011; 2) terminan en 101 y contienen una única vez la subcadena 100.
b) Existe un autómata no determinista con más de 20 estados que reconoce el
lenguaje
c) No existe ningún autómata determinista que reconozca el lenguaje
Solución: B. A es falsa. El lenguaje reconocido es el lenguaje formado por las cadenas
de ceros y unos que cumplen una de las siguientes condiciones: 1) terminan en 010 y
tienen en algún lugar la subcadena 011; 2) terminan en 101 y tienen en algún lugar la
subcadena 100. La potencia de reconocimiento de lenguajes de los autómatas finitos no
deterministas y los deterministas es idéntica, y por tanto la C es falsa.
44. Para un alfabeto Σ no vacío, el conjunto de lenguajes finitos es…
a) finito
b) infinito contable (numerable)
c) infinito no contable (no numerable)
Solución: B. Porque es un subconjunto de los lenguajes regulares, que son contables.
45. Sea el alfabeto {x, y}. ¿Cuántas cadenas contiene el lenguaje aceptado por la
máquina de Turing →R∆?
a) Ninguna
b) Infinitas incontables
c) Infinitas contables
15
Solución: C. El lenguaje que acepta es Σ*.
46. Indique cuál de las siguientes operaciones no puede realizar una máquina de
Turing:
a) La función f : f (x) = 0 si x es impar; f(x) indeterminado si x es par
b) Decidir el lenguaje de las matrices m×n ; m, n ∈ N y m número primo
c) Decidir el lenguaje intersección de dos lenguajes indecidibles
Solución: C. La función de la opción A es claramente una función computable; no
requiere más que discernir entre números pares e impares. Decidir el lenguaje de la
opción B, por su parte, sólo requiere dictaminar si m es un número primo, problema que
también tiene solución algorítmica. Finalmente, la intersección de dos lenguajes
indecidibles puede ser indecidible (por ejemplo, la intersección de dos lenguaje L y L’
indecidibles tales que L = L´, es un lenguaje indecidible), y una máquina de Turing no
puede decidir un lenguaje indecidible.
47. Sea L = {anbncn} un lenguaje del alfabeto Σ = {a, b, c}. Considere la máquina de
Turing de la figura, cuyos símbolos de cinta son a,b, c, d y ∆. Indique cuál de las
siguientes afirmaciones es verdadera::
a,d
d
∆
R a
∆
dR
c,∆
b,c
b
b,d
∆
dR c dL∆
a, ∆
R
a) La máquina decide el lenguaje L
b) La máquina reconoce el lenguaje L*
c) La máquina reconoce el lenguaje L
Solución: B.
48. Sean L = {aibjck | i<j o bien j<k} y L’ el generado por la gramática S→XbC,
S→AYc, X→aXb, X→Xb, X→λ, C→Cc, C→λ, A→Aa, A→λ,Y→bYc, Y→Yc, Y→λ .
Indique cuál de las siguientes relaciones es cierta (Nota: el símbolo ⊂ denota inclusión
estricta):
a) L=L’
b) L’⊂ L
c) L⊂ L’
Solución: A.
Septiembre 10, reserva
49. Queremos construir un autómata de pila que acepte el lenguaje xn+1yn. ¿Qué valores
han de tener las etiquetas Etiqueta_1 y Etiqueta_2 para que la siguiente solución sea
correcta?
16
Etiqueta_1
λ,λ;#
y,z;λ
λ,#;λ
Etiqueta_2
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: A.
50. Dado un autómata finito definido para un alfabeto Σ con n símbolos, indique cuál
de las siguientes afirmaciones es verdadera:
a) Debe contener al menos n transiciones
b) Puede no contener ninguna transición
c) Puede contener cualquier número de transiciones distinto de cero
Solución: B. El conjunto de transiciones de un autómata no-determinista puede ser
cualquier subconjunto de S × Σ × S , incluso el conjunto vacío.
51. Sean Σ = {x} y L1 = {cadenas de longitud impar}. Queremos construir una máquina
de Turing M tal que L(M) = L1. ¿Para qué valores de las etiquetas Etiqueta_1 y
Etiqueta_2 es correcta la siguiente solución?
Etiqueta_1
Etiqueta_2
∆/ R
∆/ R
a) Etiqueta_1 = x/R, Etiqueta_2 = x/R
b) Etiqueta_1 = x/x Etiqueta_2 = x/R
c) No existen valores para Etiqueta_1 y Etiqueta_2 que hagan correcta la solución
Solución: C. Porque del estado de parada no puede salir ningun arco.
52. La afirmación: “Una máquina de Turing universal es capaz de decidir cualquier
lenguaje independiente del contexto.”
a) Es verdadera
b) Es falsa
c) Sólo es verdadera para lenguajes independientes del contexto reconocibles
mediante autómatas de pila deterministas
Solución: A. Todo lenguaje independiente del contexto es decidible mediante una
máquina de Turing, que puede ser simulada mediante una máquina de Turing universal.
53. Un lenguaje generado por una gramática independiente de contexto…
17
a) es siempre regular
b) nunca es regular
c) depende de los casos
Solución: C. Una gramática independiente del contexto puede generar lenguajes
independientes del contexto regulares o no regulares. Es fácil encontrar ejemplos.
54. El resultado de concatenar dos lenguajes independientes de contexto, ¿es siempre
independiente de contexto?
a) Sí, siempre
b) No, nunca
c) Depende de los casos
Solución: A.
55. Dados dos lenguajes independientes de contexto L1 y L2, ¿existe una gramática G
tal que L(G) = L1 ∩ L2?
a) Sí, siempre
b) No, nunca
c) Depende de los casos
Solución: A. L1 y L2, por ser independientes de contexto, son estructurados por frases y
en consecuencia su intersección también lo es. Todo lenguaje estructurado por frases es
generado por una gramática.
56. Para todo autómata finito M (con uno o más estados de aceptación), ¿existe un
autómata finito M’ con un solo estado de aceptación tal que L(M) = L(M’)?
a) Sí, para todo M
b) Si y sólo si los estados de aceptación de M no son origen de ninguna transición
c) Depende del alfabeto considerado
Solución: A. Siempre existe M’, aunque en algunos casos habrá de ser necesariamente
NO determinista. Para construir M’a partir de M basta con: 1) elegir uno de los estados
de aceptación de M como estado de aceptación de M’, 2) tender una transición lambda
desde el resto de los estados de aceptación de M hacia dicho estado.
57. Sea el alfabeto {x, y}. ¿Cuántas cadenas contiene el lenguaje aceptado por la
siguiente máquina de Turing?
R
¬∆
a) Ninguna
b) Una
c) Varias (un número finito mayor que uno)
R
18
Solución: B. Es la cadena vacía.
58. La intersección de dos lenguajes decidibles (por máquinas de Turing), ¿es
decidible?
a) Sí, siempre
b) No, nunca
c) Depende de los casos
Solución: A. Sea M1 la máquina que decide el primero y M2 la que decide el segundo.
Podemos construir una máquina de Turing M (de dos cintas) que simule primero M1
sobre la primera cinta y luego M2 sobre la segunda. Si el contenido de ambas cintas es Y,
la máquina M limpia la segunda cinta y se detiene; si no, escribe N y se detiene.
59. Indique cuál de los siguientes lenguajes NO es regular:
a) Σ = {a, b}, L = { w ∈ Σ * | ∀ i ≤ |w| : si a aparece en la posición i de w entonces
b aparece en la posición i + 2}
b) Σ = {0, 1, b, c}. Ln = { w ∈ Σ * | w = ubvbwcv con u,w ∈{0, 1, b}* y v ∈{0,
1}*, |v| ≤ n }, n ∈ N
c) Σ = {a, b}, L = { w ∈ Σ * | el número de a’s en w dobla al número de b´s en w}
Solución: C.
60. Indique cuál de las siguientes afirmaciones referidas al lenguaje L = {aibjck | i, j, k
≥0 | si i ≥1 entonces j = k} es FALSA:
a) El lenguaje cumple el lema de bombeo para lenguajes regulares
b) El lenguaje es regular
c) El conjunto de cadenas del lenguaje es infinito contable
Solución: B. El lenguaje NO es regular, a pesar de cumplir el lema de bombeo
61. Indique cuál de las siguientes relaciones es verdadera:
a) 100 ∉ 0*(10)*1*
b) 1001 ∈ 0*(1∪01)*0*
c) 0101∈ (0*∪1*)(0*∪1*)(0*∪1*)
Solución: A.
62. Sean L el lenguaje generado por la expresión regular (ab)*(a∪b)* y L’ el generado
por la gramática S→aS, S→Sb, S→λ. Indique cuál de las siguientes relaciones es cierta
(Nota: el símbolo ⊂ denota inclusión estricta):
a) L=L’
b) L’⊂ L
c) L⊂ L’
Solución: B.
19
63. Sea L el lenguaje del alfabeto Σ = {a, b} cuyas cadenas tienen igual número de a’s
que de b’s. Considere la máquina de Turing de la figura, cuyos símbolos de cinta son
a,b, d y ∆. Indique cuál de las siguientes afirmaciones es FALSA:
d
∆
∆
a,d
R a
dR
b
dL∆
∆
∆
b
R
∆
dR
b,d
a
a) La máquina de Turing de la figura decide el lenguaje L
b) La máquina de Turing de la figura reconoce el lenguaje L
c) La máquina de Turing de la figura nunca tiene una terminación anormal
Solución: A. La máquina reconoce, pero NO decide el lenguaje.
64. Sean L el lenguaje de las cadenas capicúas de Σ = {a, b} y L’ el generado por la
gramática S→aSa, S→bSb, S→aXb, S→bXa, X→aX, X→bX, X→λ. Indique cuál de las
siguientes relaciones es cierta (Nota: el símbolo ⊂ denota inclusión estricta):
a) L=L’
b) L=Σ∗ − L’
c) L⊂ L’
Solución: B. La gramática genera el conjunto de cadenas NO capicúas
Documentos relacionados
Descargar