Professional Documents
Culture Documents
enfoque prctico
Hilda Contreras
2 de mayo de 2011
ndice general
0.1. Propiedades cerradas y algoritmos de decisin . . . . . . . . . .
0.1.1. Lema del Bombeo o Potencias para Conjuntos Regulares
0.1.2. Propiedades de clausura de los Lenguajes regulares . . .
0.1.3. Algoritmos de decisin sobre conjuntos regulares . . . .
0.1.4. Preguntas y respuestas, ejercicios resueltos y propuestos
0.1.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
5
10
14
0.1.1.
Lema del Bombeo 0.1.1. Si L es un conjunto regular entonces hay una constante n tal que
para w en L y |w| n podemos escribir w = xyz tal que:
y = o |y| 1
|xy| n
NDICE GENERAL
0.1.
Para bombear solo hay que multiplicar por un valor de i a la potencia de la cadena
(wi = xy i z ), quedando de la siguiente forma: wi = an|y| a|y|i ban b
Ahora debe conseguirse al menos un valor de i para el cual la cadena resultante no est en
el lenguaje. Se considera un valor de i = 0: (w0 = xy 0 z ) por tanto w0 = an|y| a|y|0 ban b =
an|y| ban b
Para todos los valores posible de |y|, 1 |y| n, el w bombeado sale del lenguaje L, ya
que el la primera subcadena X = an|y| b siempre es diferente a la segunda subcadena X
= an b, por el nmero de smbolos a (los rangos son: n 1 n |y| n n). Esto es
una contradiccin ya que ambas subcadenas X deben ser iguales, para todo i 0, por
tanto lo que se asume al principio es falso y por tanto el lenguaje L NO es Regular.
0.1.2.
Tambin llamadas operaciones cerradas, son aquellas que se aplican sobre los lenguajes
regulares y el resultado sigue siendo un lenguaje regular. Estas propiedades se pueden utilizar
para demostrar que un lenguaje es regular o no es regular
Teorema 0.1.1. Los conjuntos regulares son cerrados bajo unin, concatenacin y Clausura
de Kleene. Tambin son cerrados bajo:
Complemento
Interseccin
Diferencia
Reexin o reejo
Sustituciones, homomorsmo y homomorsmo inverso
Cociente de conjuntos arbitrarios
Para las operaciones de unin, concatenacin y clausura de Kleene son cerradas por denicin de las expresiones regulares. Para el resto de las operaciones es necesario ver como se
aplican sobre conjuntos regulares:
1.
2.
L1
L2 = L1
L2
NDICE GENERAL
Figura 3: AFD de los lenguajes: L1 nmero impar de ceros y L2 nmero par de unos
3.
Figura 4: AFD que reconoce el lenguajes de las cadenas binarias con un nmero impar de ceros
y un nmero par de unos (interseccin)
0.1.
Figura 5: Tabla de la Construccin de producto para obtener el AFD que reconoce el lenguajes
de las cadenas binarias con un nmero impar de ceros y un nmero par de unos (interseccin)
que pertenecen a L1 y no pertenecen a L2 ). Por teora de conjuntos, la diferencia2 puede
expresarse en terminos de interseccin y complemento las cuales son cerradas por tanto
la operacin de diferencia es cerrada.
4.
Caso Base:
L(E R ) = (L(E))R , E R = E , R = , aR = a.
Paso Inductivo:
E = E1 + E2 E R = E1R + E2R
E = E1 E2 E R = E2R .E1R
E = E1 E R = (E1R )
5.
Los conjuntos regulares son cerrados bajo Sustituciones, homomorsmo y homomorsmo inverso
La sustitucin (en conjuntos regulares) consiste en reemplazar o mapear los smbolos de
un lenguaje a un subconjunto de otro lenguaje (generalmente denotado por expresiones
regulares). Una sustitucin f es un mapeo de un alfabeto en un subconjunto de para
Diferencia de conjunto
L1 L2 = L
L2
NDICE GENERAL
a ) f () =
b ) f (xa) = f (x)f (a)
B es imagen de alguno de A
B, h es
inyectiva
si
a1 = a2 , h(a1 ) = h(a2 );
h es
sobreyectiva
si todo elemento de
0.1.
h1 (abaaa) = 10
L1 = (01) , h(L1 ) = (aaaba)
L2 = (ab + ba) a, h1 (L2 ) = 1, Se trata de buscar las cadenas en a las cuales se
les aplica el homomorsmo h y estan en L2 = {a, aba, baa, ababa, abbaa, baaba,
babaa,...}.
Los conjuntos regulares son cerrados bajo homomorsmo y homomorsmo inverso por
tanto se puede aplicar sobre los autmatas nitos. La construccin dado una funcin
homomorca, se aplica sobre un AFD M = (Q,, ,q0 ,F) que acepta L y sea h un homomorsmo de en (h : ) se construye una M' = (Q,, ',q0 ,F) donde '(q,a)
= (q,h(a)) para q en Q y a en .
Ejemplo: = { a,b } y = { 0, 1 }, L = (ab +ba) a
h: , h(0) = aa y h(1) = aba
M = ({q0 , q1 , q2 , q3 },, ,q0 ,{q1 })
M' = ({q0 , q1 , q2 , q3 },, ',q0 ,{q1 }) con h1 :
Cada transicin aplica la construccin, por ejemplo para '(q0 ,0) = (q0 ,h(0)) = (q0 ,aa)
= ( (q0 ,a),a) = (q1 ,a) = q3
Se puede usar cualquiera de estas propiedades de clausura para demostrar que un lenguaje NO es regular con el lema del bombeo. Por ejemplo si se quiere demostrar que
un lenguaje L no es regluar y es dicil aplicar el lema del bombeo entonces podemos
aplicarlo para el complemento, bajo sustitucin, etc. que no es regular y L tampoco lo
ser pues son operaciones cerradas. Las operaciones cerradas se utilizan para demostrar
que algo es regular o que no es regular. El homomorsmo se aplica para transformar algo
que no se conoce en algo conocido que se sabe que no es regular, por ejemplo: Demostrar
que {an ban |n 1} no es regular sabiendo que {0n 1n |n 1} no es regular.
{0n 1n |n 1} no es regular por el Lema del Bombeo. Para transformar an ban en 0n 1n
se realiza una reduccin con operaciones cerradas del lenguaje L = an ban a 0n 1n , de la
siguiente forma:
= { a,b }, = { 0, 1 } y ' = { x, y, z }
an ban = an baan1
Se dene el homomorrmo h1 : , asi: h1 (x) = a, h1 (y) = ba y h1 (z) = a.
1
n
n1 h1 (L)
Al aplicar el homomorsmo inverso h1
x yz =
1 queda h1 (L) = (x+z) y(x+z)
1
n
n1
x yz
.
10
NDICE GENERAL
0.1.3.
Se debe recordar que el lenguaje tpico que interesa es innito, pues para los lenguajes
nitos (que son regulares) no hay ninguna complicacin para resolver problemas. Por tanto,
hacer una pregunta sobre alguna propiedad de un conjunto innito realmente no es posible, a
menos que se realice sobre su representacin nita"(AF o ER). Las siguientes propiedades se
pueden expresar como problemas de decisin:
1. Vacuidad: El lenguaje L es vaco?
2. Pertenencia: La cadena w pertenece al lenguaje L?
3. Equivalencia: Dos autmatas nitos reconocen el mismo lenguaje L?
Las preguntas anteriores se reeren al lenguaje, pero se trata de buscar un algorimo decidible
4 que d respuesta (si o no) al problema de decisin y por tanto no puede hacerse sobre
una estructura innita como el lenguaje. Para eso se muestran como pueden resolverse estos
problemas con un algoritmo decidible al utilizar el autmata nito o la expresin regular que
reconocen o denotan al lenguaje.
Un algoritmo decidible es un algoritmo que funciona para toda instancia del problema y que siempre
0.1.
11
Precondicin =
b ) = p
1. Para p en F y q en Q-F marque (p,q) como distinguible. Recordar que (p,
por denicin para todo p en Q, por tanto si p esta en F y q esta en Q-F entonces
son distinguibles porque la cadena vaca los distingue.
2. Para cada par (p,q) en FxF o en (Q-F)x(Q-F), no marcado como distinguible hacer:
Si para algn a en , el par ( (p,a), (q,a)) esta marcado entonces marque (p,q).
Recursivamente marque todos los pares en la lista asociada a (p,q).
En caso contrario (no hay ningn par marcado), entonces colocar (p,q) en la
lista de ( (p,a), (q,a)) excepto cuando (p,a) = (q,a) para todo a en .
Ejemplo: Dado el siguiente AFD Figura 2.7 se muestra la tabla de estados distinguibles
en la gura 2.8.
Comprobacin de la equivalencia de
lenguajes regulares Dado 2 lenguajes L y M se llevan sus representaciones a un
AFD. Se aplica el algoritmo para determinar los estados distinguibles a la unin de
los estados de los dos autmatas. Luego se prueba si los estados iniciales de ambos
AFD originales son equivalentes. Si son equivalentes entonces L = M y en caso contrario L = M. Por ejemplo ver gura 2.9
12
NDICE GENERAL
0.1.
13
14
NDICE GENERAL
Ejercicios propuestos
1. Contestar verdadero (V) o falso (F):
b ) El lenguaje L generado por el alfabeto binario tal que sus cadenas son de la forma
0n 1k donde n,k 0, es un lenguaje NO regular.
c ) Si la aplicacin del Lema del Bombeo para lenguajes regulares falla (no hay contradiccin para todas las cadenas) entonces el Lenguaje es regular.
d)
e)
f)
g)
h)
0.1.
15
a)
b)
c)
d)
e)
16
NDICE GENERAL