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 1 Lenguajes Formales Nivel del ejercicio : ( ) básico, ( ) medio,( ) avanzado. 1. ( ) SeaΣ={0, 1, 2}, x =00,y =1,z =210.Definirlassiguientespalabras:xy, xz, yz, xyz, (xy) 1, x 3, x 2 y 2,(xy) 2,(zxx) 3.Indicarsuslongitudes. ContieneW(Σ) la palabra vacía λ?. xy =001 xy =3 xz =00210 xz =5 yz =1210 yz =4 xyz =001210 xyz =6 (xy) 1 =100 (xy) 1 =3 x 3 =000000 x 3 =6 x 2 y 2 =000011 x 2 y 2 =6 (xy) 2 =001001 (xy) 2 =6 (zxx) 3 =210000021000002100000 (zxx) 3 =21 2. ( ) Describirlaspalabraspertenecientesalossiguienteslenguajes: L 1 = {0 n 1 n n 1} y L 2 = {0 i 1 j 0 i j} L 1 es un lenguaje binario, palabras formadas por ceros y unos, donde todos los ceros preceden a los unos y existe el mismo número de ceros que de unos. Además, no se reconoce la palabra vacía (λ), ya que si nos fijamos, siempre nos exige que haya por lo menos un cero y un uno. L 2 es un lenguaje binario, palabras formadas por ceros y unos, donde siempre hay un número mayor o igual de unos que de ceros y los ceros preceden siempre a los unos. Reconoce la cadena vacía (λ). 3. ( ) Describirformalmente(ennotación conjuntista) el lenguaje formado por 0 s y 1 s, en el que hay el doble de 0 s que de 1 s y todos los 0 s van delante de los 1 s. Página 1 de 5
L = {0 2i 1 i i 1} 4. ( ) Describir formalmente(en notación conjuntista) el lenguaje formado por palabras que comienzan y terminan en a teniendo entre medias 3 o más b s. Σ={a, b}, L= {ab n a n 3} 5. ( ) DadoselalfabetoΣ={1, 2, 3,a,b,c}, yloslenguajesl 1 = {1, 2, 3} y L 2 = {a, b, c}, definirloslenguajesl 2 1, L 1 L 2, L 1 L 2 y(l 1 L 2 ) 2. L 2 1 = {11, 12, 13, 21, 22, 23, 31, 32, 33} L 1 L 2 = {1, 2, 3,a,b,c} L 1 L 2 = {1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c} (L 1 L 2 ) 2 = {1a1a, 1a1b, 1a1c, 1a2a,..., 3c3c} 6. ( ) SeaL = {ab, aa, baa}. Indicarcuáles de las siguientes palabras pertenecen a L + : abaa, abab, abaabaaabaa, aaaabaaaa, baaaaabaaaab, baaaaabaa, λ. abaa L + abab L + abaabaaabaa L + aaaabaaaa L + baaaaabaaaab / L + baaaaabaa L + }{{} ab }{{} aa }{{} ab }{{} ab }{{} ab }{{} aa }{{} baa }{{} ab }{{} aa }{{} aa }{{} aa }{{} baa }{{} aa }{{} baa }{{} aa }{{} ab }{{} aa }{{} aab aab/ L }{{} baa }{{} aa }{{} ab }{{} aa λ/ L + (Si λ/ L, entoncesλ/ L + ) 7. ( ) SeanL 1 = {a n b n+1 n 1} y L 2 = {w num. a s =num.b s}. EsL 1 = L 1?. Y L 2 = L 2?. Página 2 de 5
Para demostrar las igualdades entre conjuntos (A = B) debemos demostrar que existe doble inclusión (que A B y B A). Es decir, que todos los componentes de A están en B yviceversa,quetodosloscomponentesdeb están en A. L 1 = L 1 En ningún caso puede ser que L 1 = L 1.Larazón está enquel 1 contiene la palabra vacía (λ) pordefinición, mientras que L 1 no la contiene. Por lo tanto, no se cumple L 1 L 1. L 2 = L 2 Que L 2 L 2 se deriva de la propia definición del cierre (L = i=0 Li ). Por lo que nos queda por demostrar que L 2 L 2. Como λ L 2,debemosdemostrarquetambién λ L 2.Estoescierto,yaqueen la palabra vacía el número de a s es igual al número de b s (ambas cero). Por lo tanto, λ L 2. Por otro lado debemos ver si el resto de palabras incluídas en L 2 pertenecen a L 2. Eso también es cierto, ya que L 2 se forma mediante la (múltiple) concatenación de palabras del lenguaje L 2.Silaspalabrasqueestamosconcatenandotienen igual número de a s que de b s, siempre estamos añadiendo el mismo número de cada una de las letras a la palabra resultante y, por lo tanto, la palabra resultado también se encuentra en L 2.Porlotanto,podemosafirmarqueL 2 L 2. Como L 2 L 2 y L 2 L 2,entoncespodemosdecirqueL 2 = L 2. 8. ( ) Existealgún lenguaje tal que (L )=(L)?. Para demostrarlo utilizaremos la definición del cierre que hemos visto anteriormente. Podemos decir que λ (L),pertenezcaonoaL, graciasalapropiadefinición del cierre de un lenguaje. Por la misma razón, podemos afirmar que λ (L ). Como λ (L ), entonces λ/ (L ). Por lo tanto, hemos encontrado un elemento (la palabra vacía λ) que, perteneciendo a (L),nopertenecea(L ). Por lo tanto la igualdad no se cumple. 9. ( ) Demostrarorefutarlaigualdadsiguiente: (L ) 1 =(L 1 ), para todo lenguaje L. Página 3 de 5
Dado un lenguaje L cualquiera, L = {x 1,x 2,x 3,...,x n,...} Sea X una palabra que pertenece al cierre de ese lenguaje: X = x 1 x 2 x 3 x 4...x n L Debemos comprobar que X 1 (L 1 ) para demostrar que (L ) 1 (L 1 ). Usando las propiedades de la reflexión: podemos afirmar que: Dado que: L 1 =(x 1 n,x 1 n 1,...x 1 (xy) 1 = y 1 x 1 y (L 1 L 2 ) 1 = L 1 2 L 1 1, 1 )yx 1 n x 1 entonces podemos afirmar que: X 1 = x 1 n x 1 n 1...x 1 1 n 1...x 1 1 (L 1 ),porlotanto,x 1 (L 1 ) (L ) 1 (L 1 ) Podemos razonar de forma análoga para demostrar que: aunque es trivial. (L 1 ) (L ) 1 10. ( ) DemostrarqueparatodolenguajeL, severifical L = L. Simplemente deberemos aplicar la definición de cierre, recordemos: L = También tendremos en cuenta las propiedades de la potencia, en concreto: L i L j = L i+j i=0 L i Página 4 de 5
L 1 (L 2 L 3 )=L 1 L 2 L 1 L 3 Ahora, desarrollaremos el lado izquierdodelaigualdad: L L = (L 0 L 1 L 2...)(L 0 L 1 L 2...) = (L L L L 1 L L 2... L 1 L L 1 L 1 L 1 L 2...) Y simplemente, reagrupando los términos y aplicando la propiedad anterior, nos queda: L L = L 0 L 0 L 0 L 1 L 0 L 2 L 0 L 3... L 1 L 0 L 1 L 1 L 1 L 2... L 2 L 0 L 2 L 1... = λ L 1 L 2 L 3... = L Que es lo que queríamos demostrar. 11. ( ) Describirellenguajegeneradoporlagramática: G =({S}, {a, b}, S, {S ::= SS asb bsa λ}). El lenguaje que describe esta gramática es el siguiente:l = {w n a (w) =n b (w)}, siendo n x (w) elnúmero de x que aparecen en w. Página 5 de 5