Professional Documents
Culture Documents
Universidad Te
tica
Departamento de Informa
Valparaso
Inform
atica Te
orica
Luis Salinas
Gua No 1
Valparaso, 11 de abril de 2010
0
s4
s3
s1
s1
s3
1
s1
s3
s4
s3
s3
0
0
1
1
0
1
1
1
0
0
1
0
s1
s2
s3
s4
s5
s6
0
s6
s5
s6
s4
s2
s4
1
s3
s4
s2
s3
s4
s6
0
0
0
1
1
0
1
1
0
1
1
0
1
0
s1
s2
s3
s4
s5
s6
s7
0
s6
s3
s2
s7
s6
s5
s4
1
s3
s1
s4
s4
s7
s2
s1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
(a) Aplique el procedimiento de minimizacion a cada uno de los automatas de Mealy descritos por
las tablas precedentes.
(b) Para cada uno de los aut
omatas precedentes, encuentre cadenas distinguidoras minimales, si
acaso existen, para los siguientes pares de estados: (i) s1 y s5 , (ii) s2 y s3 , (iii) s5 y s7 ,
5. Dise
ne un aut
omata finito que invierta los dgitos de los n
umeros naturales menores que 104 y
4
que rechace los que son mayores o iguales que 10 . Por ejemplo, si el string de entrada es 3141,
el string de salida debe ser 1413. Escriba un programa (en cualquier lenguaje) que simule este
automata.
6. Minimice la m
aquina finita de Mealy M = Q, I , O , , con Q = {q0 , q1 , q2 , q3 }, I = {0, 1},
O = {a, b}, donde las funciones de transicion y de salida vienen dadas por:
Q
q0
q1
q2
q3
I
0 1
q3 q2
q3 q1
q0 q1
q0 q2
(q, x)
I
0 1
a b
a b
b a
a b
(q, x)
x kI : (qi , x) = (qj , x) .
(1)
E k -equivalentes.
Si qi
j , entonces se dice que qi y qj son
El algoritmo de minimizaci
on comienza hallando los estados que son 1-equivalentes. Estos estados
quedan en evidencia en la tabla descriptora de la maquina de Mealy M al observar las filas de salida:
estas son identicas. De este modo, las clases de E 1 -equivalencia en Q son:
{q0 , q1 , q3 } ,
{q2 } .
(2)
Ahora nos preguntamos si los estados dentro de una misma clase de E 1 -equivalencia, son E 2 equivalentes. Consideremos q0 y q1 . Como ya sabemos que q0 E 1 q1 , basta determinar si (q0 , x)E 1 (q1 , x)
para todo x I , i.e., si (q0 , x) y (q1 , x) estan en la misma clase de E 1 -equivalencia para todo
x I . Observamos que:
(q0 , 1) = q2
(q0 , 0) = q3
(q0 , 1) = q2
(q1 , 1) = q1
(q3 , 0) = q0
(q3 , 1) = q2
q1 E
/1q2
1
q0 E q3
1
q2 E q2
q0 E
/2q1 ,
(3)
q0 E 2 q3 .
(4)
Luego, q0 y q3 est
an en la misma clase de E 2 -equivalencia. Como E 2 es una relacion de equivalencia,
y q0 E
/2q1, q1 no puede estar en la misma E 2-clase de equivalencia que q0 y q3. Como q1 y q2 estan
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa
{q1 } ,
{q2 } .
(5)
Ahora habra que determinar las clases de E 3 -equivalencia en Q. Pero esto, en esencia, ya ha sido
hecho. En efecto, como los singletons {q1 } y {q2 } ya son clases de E 2 -equivalencia, tambien ser
an
clases de E 3 -equivalencia. Para ver que q0 y q3 son E 3 -equivalentes, basta observar que:
)
(q0 , 0) = q3 (q3 , 0) = q0 q0 E 2 q3
q0 E 3 q3 ,
(6)
(q0 , 1) = q2 (q3 , 1) = q2 q2 E 2 q2
que es la misma expresi
on (4), excepto que E 1 se cambia por E 2 y E 2 por E 3 . Luego las clases
de E 3 -equivalencia son exactamente las mismas que las clases de E 2 -equivalencia y el algoritmo
concluye. Eligiendo q0 como el representante de la clase {q0 , q3 }, el automata minimal viene dado
entonces por la tabla:
Q
q0
q1
q2
I
0 1
q0 q2
q0 q1
q0 q1
(q, x)
I
0 1
a b
a b
b a
(q, x)
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa
string de a lo m
as 5 trits (los smbolos 0,1,2), precedidos por un smbolo I de inicio y un smbolo
T de termino del string.
12. Dise
ne un aut
omata de Mealy minimal que retarde un pulso de reloj una sucesion de entradas
ternarias, esto es, que utiliza los smbolos 0,1,2.
Idem, pero que retarde dos pulsos de reloj.
13. Considere el NDFA M = (Q, , , q0 , F ) definido por: Q = {p, q, r, s, t, u, v}, = {0, 1, 2},
q0 = p, F = {v}, y:
p
q
r
s
t
u
v
r, s
t, p
q, t
r, s
q, u
u
v
s, q
q
s
r
(a) Determine (p, 1122), (p, 021202), (p, 120200), (p, 200), (p, 0102). Note que al comienzo, al
final y entre dos smbolos consecutivos cualesquiera de las cadenas precedentes puede haber
subcadenas de .
(b) Determine el aut
omata finito mnimo equivalente.
(c) Compruebe que las palabras aceptadas por el automata original y el automata minimal son las
mismas.
(d) Determine el lenguaje aceptado por el automata.
14. Dise
ne un FA minimal que acepte el lenguaje cb + aa .
15. Es regular el lenguaje {3p 7q : p, q primos} 3 7 ?
16. Sea L un lenguaje regular sobre alg
un alfabeto .
(a) Es regular el lenguaje L1 que consiste de todas las cadenas w L de largo 100 ?
(b) Es regular el lenguaje L1 que consiste de todas las cadenas w L de largo > 100 ?
En ambos casos justifique su respuesta.
17. Dada una cadena w, su reversa wR se define inductivamente mediante: (i) R = , y (ii)
(ua)R = auR , para todo a , u .
Demuestre (o refute): (wR )R = w para todo w .
18. Sea un alfabeto dado. Si L es cualquier lenguaje sobre , sea LR = wR : w L el
R
R
R R
lenguaje reverso de L. Demuestre (o refute): (a) (L1 L2 )R = LR
1 L2 ; (b) (L1 L2 ) = L2 L1 ; (c)
(L )R = LR .
19. Sea D = (Q, , , q0 , F ) un DFA. Definamos la funci
on de transici
on extendida : Q Q
mediante
(p, ) = p ,
(p, au) = ((p, a), u) , u , a .
(a) Es esta una definici
on v
alida (i.e., consistente)? Justifique su respuesta.
(b) Demuestre (o refute): (p, uv) = ( (p, u), v) para todo p Q y u, v .
20. Escriba un programa que tenga como entrada un DFA D = (Q, , , q0 , F ) y una cadena w, y
que retorne la sucesi
on de estados que el automata debe recorrer (partiendo desde el estado inicial
q0 ) para identificar la cadena w. El programa tamben debe indicar si la cadena fue aceptada o no por
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa
el automata. Puede suponer que los smbolos de entrada a1 , . . . , aN son codificados internamente
como los enteros 1, . . . , N , y que los estados q0 , q1 , . . . , qm son codificados mediante los enteros
1, 2, . . . , m + 1. La funci
on de transici
on puede ser codificada como un arreglo bidimensional, o como
una lista de listas. No olvide los estados finales, y trate que la salida sea agradable. Ejecute su
programa en a lo menos dos DFAs y cinco cadena por DFA.
21. Construya un DFA para cada uno de los siguientes lenguajes:
(a) L1 = {w {a, b} : abab es una subcadena de w} . Puede usar su DFA que acepta L1 para
contar cuantas veces aparece la subcadena abab en las cadenas w L1 ?
(b) L2 = {w {a, b} : |w|a , |w|b 2N} , donde 2N = {2, 4, 6, . . . } = el conjunto de los enteros
positivos pares, |w|a := el n
umero de as que tiene w, |w|b := el n
umero de bs que tiene w, w L2 .
22. (i) Construya un DFA para el lenguaje {aa, aaaaa} .
(ii) Sea L {a} . Demuestre o refute: si L = L , entonces existe un subconjunto finito F de L tal
que L = F . Hint: Considere un subconjunto apropiado de L constitudo por cadenas mnimales.
(iii) De un ejemplo de un lenguaje L {a, b} tal que L = L para el cual no existe un subconjunto
finito F L tal que L = F .
23. Sean y dos alfabetos finitos no vacos cualesquiera. Un homomorfismo h de en es
una funcion h : tal que h(uv) = h(u)h(v) para todo u, v . Demuestre o refute:
(a) Si h : es un homomorfismo, entonces h() = .
(b) Si = {a1 , . . . , am } y (v1 , . . . , vm ) es cualquier sucesion de cadenas vi , 1 i m, entonces
existe un u
nico homomorfismo h : tal que h(ai ) = vi para todo i = 1, 2, . . . , m .
(c) Sea = {1, 2, . . . , m}. Dadas dos sucesiones cualesquiera U = (ui , . . . , um ) y V = (u1 , . . . , vm )
de cadenas ui , vi , entonces existen u
nicos homomorfismos f : y g : tales
que f (i) = ui y g(i) = vi para todo i = 1, 2, . . . m .
Si f (w) = g(w) para alguna cadena w , se dice que el problema correspondencia para U y V
tienen soluci
on w. Decidir si el problema de correspondencia para U y V tiene solucion o no es, en
general, un problema muy difcil.
Muestre dos sucesiones U y V para las cuales el problema de correspondencia no tiene soluci
on.
Muestre dos sucesiones U y V para las cuales el problema de correspondencia tiene solucion.
Sea U = (aab, ab, ab, ba) y V = (a, abb, bab, aab). Encuentre una solucion para el problema de correspondencia. Advertencia: La soluci
on mas corta tiene un largo de 66.
24. Sean M = (Q, , , q0 , F ) y L , respectivamente, un DFA y un lenguaje no vaco cualquiera. Considere las relaciones RM , RL y definidas en clases.
(a) Es RM una relaci
on de equivalencia sobre ?
(b) Es RL una relaci
on de equivalencia sobre ?
(c) Es una relaci
on de equivalencia sobre Q?
e de los estados accesibles de M . Cuando el lenguaje
Suponga ahora que Q coincide con el conjunto Q
L es aceptado por el DFA M , i.e., cuando L = L(M ) , se definio una funcion : (Q/ )
( /RL ) mediante:
([q] ) := [u]RL , [q] (Q/ ) ,
donde u es tal que (q0 , u).
e?
(d) Como se define formalmente el conjunto Q
e
(e) Que objeto tiene introducir el conjunto Q?
(f) Es consistente la definici
on de ?
(g) Es una biyecci
on?
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa
(c) Determine las clases de equivalencia de = {a} con respecto a la relacion RL inducida por el
lenguaje L definido en (b).
28. (a) Sea = {a, b} y u = u1 u2 . . . un , n 1, una palabra fija dada. Es regular el lenguaje
Lu = {w : u es una subcadena de w } ?
(b) Es regular el lenguaje L = a[log n] : n N , donde [x] = parte entera de x?
(c) Determine las clases de equivalencia de = {a} con respecto a la relacion RL inducida por el
lenguaje L definido en (b).
29. Sea = {0, 1, +, =} y considere el lenguaje:
SUMA := {z = x + y : x, y, z son enteros binarios z es la suma aritmetica de x e y } .
Es regular el conjunto SUMA ? Si es regular, construya un DFA minimal que lo acepte. Si no es
regular examine la posibilidad de generarlo mediante una CFG.
30. Sea = {0, 1}. Construya un DFA que reconozca el lenguaje
L = {w : w contiene la subcadena 101 exactamente dos veces} .
Note que puede haber traslapos.
31. Sea un alfabeto finito dado y W := {w1 , w2 , . . . , wn }, n N, un conjunto de cadenas finitas en
. Usando propiedades de los conjuntos regulares, demuestre que los lenguajes de la forma general
{x : x contiene a lo m
as una de las cadenas wi W } , son regulares.
32. Suponiendo que no hay lmite en el largo de cada componente, escriba una expresion regular
que represente nombres de archivos Unix tales como:
/usr/users/Profesor/Sources/y.tab.h o bien
TMP/ethertools-1.37.tar.Z
33. Determine las clases de equivalencia del teorema de MyhillNerode para el lenguaje L =
{0n 1n : n N0 }.
34. Sea un alfabeto finito no vaco. El operador de inversi
on R : se define mediante:
w = a1 a2 . . . an 7 wR = an an1 . . . a1 ,
ak
(1 k n) ,
n N.
Este operador se extiende de la manera obvia a lenguajes L . Sea = {a, b} . Determine si los
siguientes lenguajes sobre son o no regulares:
(a) L1 = w : w = wR .
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa
47. Construya un NFA que reconozca el lenguaje denotado por la expresion regular (a |ba) aba .
48. Construya un DFA que reconozca el lenguaje aceptado por el NFA dado por la tabla siguiente:
Q\
a
b
Nota
0
{1, 2}
Estado inicial
1
{1} {1, 3}
2
{4}
{3}
{4, 6}
{3, 5}
Estado final
49. Explique en que forma, a partir del teorema de Myhill-Nerode resulta la existencia de un DFA
minimal, en cuanto al n
umero de estados, para cada lenguaje regular.
Referencias
[1] Ralph P. Grimaldi. Discrete and Combinatorial Mathematics. An Applied Introduction. AddisonWesley,
Reading, Massachusetts, 1985.
tica Teo
rica/11 de abril de 2010
Luis Salinas/UTFSM/Informa