algunas soluciones
Transcripción
algunas soluciones
Universidad Rey Juan Carlos Curso 2007–2008 Teorı́a de Autómatas y Lenguajes Formales Ingenierı́a Técnica en Informática de Sistemas Hoja de Problemas 7 Propiedades Lenguajes Regulares Nivel del ejercicio : (!) básico, (♣) medio, (♠) avanzado. 1. (♣) Prueba que el lenguaje de los palı́ndromos sobre un alfabeto finito con al menos dos elementos no es regular. Solución: 2. (!) Demuestra o refuta la siguiente afirmación: “Todo lenguaje que sea un subconjunto de un lenguaje regular es regular”. Solución: 3. Sea Σ = {a, b, c} un lenguaje finito. Para cada una de las siguientes definiciones del lenguaje L ⊆ Σ, demuestra que L no es regular: (a) (!) L = {an bn | n ≥ 1}. Solución: (b) (!) L = {an b2n | n ≥ 1}. Solución: (c) (!) L = {an bm | 0 < n ≤ m}. Solución: (d) (♣) L = {an bm | |n − m| = 2}. Solución: (e) (♣) L = {an bm cm | m, n ≥ 1}. Solución: (f) (♣) L = {an bm am+n | m, n ≥ 1}. Página 1 de 4 Hoja de Problemas 7 (cont.) Solución: (g) (♣) L = {an bm | n, m ≥ 0 y n %= m}. Solución: (h) (♣) L = {an bm al | m, n, l ≥ 1 y l %= m + n}. Solución: (i) (♣) L = {w ∈ Σ∗ | na (w) = nb (w)}. Solución: Supongamos por reducción al absurdo que L es regular. Sea N ∈ N la constante del Lema de Bombeo. Sea x = aN bN ∈ L una palabra del lenguaje. Además, su longitud verifica |x| = 2N > N. Por tanto, podemos aplicar el Lema de Bombeo a esta palabra. Aplicándolo, existen tres palabras u, v, w ∈ {a, b, c}∗ verificando: |uv| ≤ N |v| > 0 x = uvw uv i w ∈ L para todo i ≥ 0. Por la forma que tiene x, y usando la propiedad primera y segunda, tenemos que necesariamente u = aj , v = ak , para j ≥ 0, k ≥ 1, j + k ≤ N. Por tanto, w = aN −j−k bN . Finalmente, aplicando la última propiedad para i = 0 se tendrı́a que uv 0 w ∈ L, pero uv 0 w = uw = aj aN −j−k bN = aN −k bN %∈ L Esta palabra aN −k bN no está en L pues N − k %= N ya que k ≥ 1. Por lo tanto, hemos llegado a una contradicción, por lo que se sigue que L no es regular. (j) (♣) L = {w ∈ Σ∗ | na (w) < nb (w)}. Solución: (k) (♣) L = {w ∈ Σ∗ | na (w) %= nb (w)}. Solución: Supongamos por reducción al absurdo que L es regular. Entonces su complementario: Página 2 de 4 Hoja de Problemas 7 (cont.) ! " Lc = w ∈ {a, b, c}∗ | na (w) = nb (w) también debe ser regular. Contradicción. Como hemos demostrado anteriormente (apartado:i), Lc no es regular, y por tanto L tampoco lo es. 2 (l) (♠) L = {an | n ≥ 1}. Solución: (m) (♠) L = {an! | n ≥ 3}. Solución: (n) (♣) L = {w1 cw2 | w1 , w2 ∈ Σ∗ y w1 = w2 }. Solución: (ñ) (♣) L = {w1 cw2 | w1 , w2 ∈ Σ∗ y w1 %= w2 }. Solución: (o) (♣) L = {ww | w ∈ Σ∗ }. Solución: 4. (♣) Sea Σ = {., 0, 1, 2, 3, 4, 5, 6, 7, 8, 9} y sea Lπ ⊆ Σ∗ el lenguaje de las cadenas que son las truncaciones de la expansión decimal de π. Esto es, Lπ = {λ, 3, 3., 3,1, 3,14, 3,141, 3,1415, 3,14159, . . .}. Demuestra que Lπ no es regular. Solución: 5. (♣) Sea Σ = {a, b} un alfabeto finito, y sea L ⊆ Σ∗ el lenguaje definido por la siguiente igualdad: L = {xwx ∈ Σ∗ | x, w ∈ Σ∗ , |x| = 2}. ¿Es L regular? Página 3 de 4 Hoja de Problemas 7 (cont.) Solución: 6. (♣) Sea Σ = {0, 1} un alfabeto finito, y sea L ⊆ Σ∗ el lenguaje definido por la siguiente igualdad: L = {xwxR | x, w ∈ {0, 1}+ }. ¿Es L un lenguaje regular? Solución: Página 4 de 4