Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MÓDULOS
1. En un módulo M = <, S, f > se define la función 4. En un módulo M = <, S, f > se define la función
h : S x * → * de la siguiente manera: trayectoria h : S x * → S* de la siguiente manera:
Pruebe que |h(s, u)| = |u| (u*) Note que esta función toma al conjunto de estados S
como si éste fuese un alfabeto, pues esta función
devuelve (return) una cadena (string) de estados. La
cadena de estados devuelta por h, son los estados que
2. En un módulo M = <, S, f > se define la función
ha visitado.
g : S x * → S de la siguiente manera:
(a) Con el módulo <, S, f> y sabiendo que
g(s, )= s ={b, c}; S={0, 1, 2}; f(0, b)=1, f(0, c)=2, f(1, b)=0,
g(s, wa)= f( g(s, w), a) (a, w*) f(1, c)=2 y f(2, b)=1, f(2, c)=0.
g(s, uv) = g( g(s, u), v) (u, v *) (b) Pruebe que h(s, a)= s f(s, a)
3. En un módulo M = <, S, f > se define la función (c) Pruebe por inducción que
g : S x * → S de la siguiente manera: |h(s, u)| = |u| + 1 (u*)
g(s, )= s
g(s, wa)= f( g(s, w), a) (a, w*) 5. En un módulo M = <, S, f > , se define :
Pruebe que para toda u*: DEFINICIÓN. Para todo estado s, tS, decimos que t
es alcanzable a partir de s, anotado “s → t”, si y solo
^
g(s, u) = f(s, u) si, existe una z*, tal que
^
No es necesario que demuestre P[] f(s, z) = t
(a) s → s
(b) Si s → t y t → u entonces s → u
EXPRESIONES REGULARES
6. Escriba una e.r r que especifique todas las 9. Con el alfabeto ={0, 1}, escriba una e.r r que
cadenas de *, donde ={a, b, c}. Es decir L(r)= * especifique todos los números binarios que
contienen al menos una ocurrencia de la
subpalabra “00” en su formación.
7. Sabiendo que = {a, b, c, d} con una e.r r,
especifique todas las cadenas de * que finalizan en a Ejemplos: 00, 1001, 01010001000, 000, 010000
o en b. Ejemplos: a, b, acca, baaa, cdab, bb, …
Obviamente la cadena no es reconocida por r. 10. Con el alfabeto ={0, 1, 2, 3} escriba una e.r r que
especifique números enteros pares y mayores que
8. (Regex)Sobre el alfabeto ={a, b}, escriba una 300.
expresión regular r, la cual especifique todas las cadenas No se admiten ceros en la izquierda del número.
de * que tienen exactamente un número par de a’es.
11. Dado el lenguaje L={a, aa, ab, b, bb, ba}, dibuje 13. Con = {0, 1}, dibuje un AFD M de modo que
un AFD M, tal que L(M)=L. el mismo acepte todas las cadenas expresadas en el
= {a, b} ejercicio 7, de este práctico.
.
12. Con = {0, 1}, dibuje un AFD M de modo que 14. Con = {a, b}, dibuje un AFD M de modo que
el mismo acepte todas las cadenas que representan el mismo acepte todas las cadenas no-vacías de *,
números binarios pares. excepto a aquellas que tienen a “aa” como
Ejemplos: subpalabra.
Palabras aceptadas: 0, 00, 10110, 011110, 1010000…
Palabras no aceptadas: , 1, 01, 01000111, … Ejemplos:
Palabras aceptadas: a, b, ba, ab, babba, ababba, …
En otras palabras, solo acepte aquellas cadenas que terminan Palabras no aceptadas: , aa, baabab, baaabba, …
en cero.
Tip: Cuando tenga dos a’es seguidas, con la segunda a vaya a
un agujero negro.
PASO DE UNA REGEX A UN AFN
15. Dada la e.r r=b(a|b)*a, dibuje un AFN N de 16. Dada la e.r r=(b*a)*, dibuje un AFN N de
modo que L(r) = L(N). modo que L(r) = L(N).
= {a, b} = {a, b}
17. Convierta el AFN encontrado en el ejercicio 15, 20. Convierta el siguiente AFN en un AFD.
en un AFD. = {a, b}
= {a, b}
a
18. Dado el AFN N, mostrado abajo, encuentre un AFD 3 b 2
A tal que L(N)=L(A) b
0 a
5
1 4
b
3 b 2
b
0
a, b
1 a 4
a
5 b a, b
={a, b}
3 b 4
a
2 a
a 1 0