You are on page 1of 69

EJERCICIOS DE EXPRESIONES

REGULARES Y AUTOMATAS
1. + ( + ) = ( + ) +
2. + = +
3. + =
4. + =
5. =
6. =
7. ( ) = ( )
8. ( + ) = + , ( + ) = +
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
9.* =
1O.* =
11. * = *
12.* = * * = (*)*
13.* = + *
14.( + )* = (* + *)*
15.( + )* = (* *)* = (* )* *
16. ( )* = ( )*
17. Si L(a), entonces a+=a

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sean = {0, 1} y
L, M dos lenguajes sobre dados por
L ={1, 10} y M = {1, 01} entonces
LM = {11, 101, 1001}.
Mientras que ML = {11, 110, 001, 0110}.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Dado V = {0; 1} y la ER = 0*10*,
tenemos que:
L(0*10*) = L(0*) L(1) L(0*)
= (L(0))* L(1) (L(0))*
= {0}*.{1}.{0}*={0
n
10
m
| n, m 0}

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Si = {a, b, c} entonces

2
= {aa, ab, ac, ba, bb, bc, ca, cb, cc}

Ejemplo
Sea = {0, 1} y L = {01, 1}, entonces
L
3
= {010101, 01011, 01101, 0111, 10101,
1011, 1101, 111}
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Obtener una ER para el lenguaje en el
alfabeto {a, b, c} en que las palabras
contienen exactamente una vez dos b
contiguas.
Por ejemplo, las palabras aabb, babba,
pertenecen al lenguaje, pero no aaba,
abbba ni bbabb.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Dado el alfabeto = {a, b, c},
(a U b*)a*(bc)*
Es una expresin regular que representa al
lenguaje

({a} U {b}*) {a}* {bc}*
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Dada la expresin regular (a | b)*, el
lenguaje que denota es el que puede formar
con todas las cadenas compuestas por a y b
incluida la cadena vaca. Algunos ejemplos
de sentencias de estos lenguajes son:
, aaa, bbb, aba, abaaa, abbaa.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea el vocabulario {1,2,3}, la expresin
regular (1|2)*3 indica el conjunto de todas
las cadenas formada por los smbolos 1 y 2,
sucedindose cualquier N de veces (y en
cualquier orden), y siempre terminando la
cadena en el smbolo 3.
3, 13, 123, 11113, 22213, 23, 223, 113,
121211223, 111212213.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Dado el alfabeto = {a, b},
( U a)*(a U b)*(ba)*
Es una expresin regular que representa al
lenguaje
({} U {a})* {a, b}* {ba}*.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Para resolver este problema, expresamos primero
la estructura de la ER de la manera siguiente:
< contexto1 > bb < contexto2 >

El lenguaje de < contexto1 > comprende a las
palabras que no tienen bb y adems no terminan
en b. 4 Esto es equivalente a decir que toda b est
seguida de una a o una c. Esto quiere decir que la
ER de este contexto va ser de la forma:
(. . . b(a + c) . . .)
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Similarmente se puede obtener la expresin
para < contexto2 >, que es

((a + c ) b)*,

Por lo que finalmente la ER del problema
es:
(b(a + c))*bb((a + c)b)*

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea la ER t = a + bc + b3a.
Cul es el lenguaje descrito por t?
Que expresin regular corresponde al
lenguaje universal sobre el alfabeto {a, b, c?
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
En primer lugar, esta no es estrictamente
hablando una ER, ya que no se permite b
3
a:
Sin embargo, aceptamos como vlida la expresin
a + bc + b
3
a, como una simplificacin de la ER
a+bc+bbba.
En ese caso, L(t) ={a; bc; bbba}, que como vemos
es un lenguaje finito sobre el alfabeto {a; b; c}.
La ER que describe el lenguaje universal sobre
este alfabeto es
(a + b + c)*

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Simplificar la ER t = a + a (b + aa) (b*aa)* b* + a (aa + b)*.

Aplicando las propiedades de las expresiones regulares,
podemos obtener una ER equivalente con tan solo 4
operadores:
a + a (b + aa) (b*aa)* b* +a (aa + b)* (Propiedad 15)
a + a (b + aa) (b + aa)* +a (aa + b)* (Propiedad 8)
a( + (b + aa) (b + aa)* ) + a (aa + b)* (Propiedad 13)
a( b + aa )* + a (aa + b)* (Propiedad 2)
a (aa + b)* + a (aa + b)* (Propiedad 4)
a (aa + b)*
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Simplificar la expresin regular :
1*O1*O (O1*O1*O + 1)* O1* + 1* de forma que slo
aparezca un operador +.

1*O1*O (O1*O1*O + 1)* O1* + 1* (Propiedad 15)
1*O1*O (1* O1*O1*O)* 1* O1* + 1* (Propiedad 16)
(1*O1*O 1*O)* 1*O1*O1*O1* + 1* (Propiedad 8)
((1*O1*O1*O)* 1*O1*O1*O + ) 1* (Propiedad 13)
(1* O1*O1*O)* 1* (Propiedad 15)
(1 + O1*O1*O)*
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea el vocabulario {a,b} y la expresin regular
aa*bb*. Indicar el lenguaje que denota y algunas
cadenas de dicho lenguaje.
Algunas cadenas: ab, aab, aaaab, abbbb, abb.
El lenguaje que se describe es L={cadenas que
comienzan por una a y continan con varias o
ninguna a, y siguen con una b y continan con
varias o ninguna b}.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
A = b*ab*
El lenguaje A de todas las palabras que tienen
exactamente una a:

B = b(a U b)*
El lenguaje B de todas las palabras que comienzan con b:

C = (a U b)*ba(a U b)
El lenguaje C de todas las palabras que contienen la
cadena ba:
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Encontrar expresiones regulares que representen los
siguientes lenguajes, definidos sobre el alfabeto = {a, b}.

b(a U b)*a
Lenguaje de todas las palabras que comienzan con b y
terminan con a.

b*ab*ab*
Lenguaje de todas las palabras que tienen exactamente
dos as.

(aa U ab U ba U bb)*
Lenguaje de todas las palabras que tienen un nmero par
de smbolos (palabras de longitud par).
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Lenguaje de todas las palabras que tienen un nmero impar de
smbolos (palabras de longitud impar).

a(aa U ab U ba U bb)* U b(aa U ab U ba U bb)*

Lenguaje de todas las palabras que tienen un nmero par de a/s.
b*(ab*a)*b*.
(ab*a U b)*.
(b*ab*ab*)* U b*.
b*(b*ab*ab*)*b*.

Encontrar una expresin regular que represente el lenguaje de todas
las palabras que no contienen la cadena bc, definido sobre el alfabeto
= {a, b, c}.
c(b ac).
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Lenguaje formado por las cadenas que
terminan en 01:
{0,1}*.{01}
({0} U {1})*.{01}
Expresin regular: (0+1)*01

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Lenguaje formado por palabras de longitud
par sobre as y bs:
{aa,ab,ba,bb}*
({aa} U {ab} U {ba} U {bb})*
Expresin: (aa+ab+ba+bb)*

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo:
L(a*(a+b)) = L(a*)L((a+b)) = L(a)*L(a+b)
= L(a)*(L(a)UL(b)) = {a}*({a}U{b})
= {,a,aa,aaa,...}{a,b}
= {a,aa,...,b,ab,aab,...}
= {a
n
|n1} U {a
2n
b
2m+1
|n,m0}

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
c*.c+c* =c*?
c*.c+c* = c*.c+c*+ (por ..)
= c.c*+c*+ (por ..)
= +c.c*+c* (por ..)
= c*+c* (por ..)
= c* (por ..)

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
c+c* =c*?
c+c* = c++c.c* (por )
= +c+c.c* (por )
= +c.+c.c* (por )
= +c.(+c*) (por )
= +c.c* (por )
= c* (por )

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo:
Sea V={0,1}
Disear una expresin regular que genere un
alfabeto V que empiece con 1 y pueda conseguir
cualquier cantidad de ceros y unos.
1(0 | 1)*
Disear una expresin regular que genere un
alfabeto V que empiece con 1, terminen con 02
ceros y si empieza con 0 termine con dos unos.
1(0 | 1)* 00 | (0 (0|1)*11)

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Dar una ER que denote el lenguaje consistente de: al
menos dos ceros precedidos por cualquier nmero de 0s
seguidos por cualquier nmero de 1s.

Primero podemos desarrollar una ER para 0 y para 0 que
denotan los lenguajes {0} y {0} respectivamente. Si
concatenamos las dos expresiones 00, obtenemos el
lenguaje {00}.
Veamos ahora como construir el resto, cualquier nmero
de 0s lo podemos escribir como 0 y lo mismo para
cualquier nmero de 1s, 1 y ahora debemos describir la
concatenacin 0 1 .

La expresin regular completa es: 0*1* 00
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo:
Dado el lenguaje descrito por la expresin
regular (ab)*a, un AFND que acepta dicho
lenguaje es el siguiente:
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea el autmata finito A1, donde E={a,b} u {};
Q={q1,q2,q3,q4} y la funcin f viene dada por la
siguiente tabla y el conjunto de estados finales
es f={q3}



f a b
q1 q2 q4
q2 q2 q3
q3 q4 q3
q4 q4 q4
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Determinar el lenguaje que reconoce, representar
el diagrama de Moore e indicar la expresin
regular que representa al lenguaje.
Solucin: Se construye el diagrama de Moore,
colocando en primer lugar todos los estados
dentro del circulo, marcando con doble circulo el
estado final. El estado inicial se indica con una
flecha que lo seala con la palabra INICIO encima.
Para construir las ramas, nos situamos en el
primer estado de la tabla de transiciones y se
observa que:

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
f(q1,a) =q2
Entonces se traza la flecha q1 y q2,
apuntando a q2 y se coloca encima de la
flecha el smbolo del vocabulario de entrada
a. De igual forma se recorre la tabla de
transiciones para cada estado y entrada
completndose el diagrama de moore.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea ={a, b}, Q = {0, 1, 2}, q
0
=0, F = {2}, y viene
definida as:






Se define el diagrama de transiciones de dicho autmata
como un grafo dirigido, en el que los estados se
representan por nodos, las transiciones por flechas, de tal
manera que dicho grafo satisface la definicin de la funcin
de transicin
Qi/ a b
0 1 0
1 2 0
2 2 2
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
En este caso el autmata de la funcin
sera:
(0, a) = 1, (0, b) = 0, (1, a) = 2,
(1, b)=0, (2, a) = 2, (2, b)=2
Ntese que para todos los smbolos del
alfabeto, existe una transicin de algn
estado.
Sabiendo esto, el anterior autmata
quedara representado as

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Se define un estado de absorcin o muerte
como aquel estado q Q, y qF, que no
tiene ninguna transicin hacia ningn otro
estado (opcionalmente, a s mismo puede
tenerlos), nicamente hay transiciones que
inciden en l. Es decir:
si (q, a) = , , (q, a) = q, a .

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Como vemos, el estado 3 no tiene ninguna transicin,
nicamente hay transiciones que inciden en l. Adems,
3F, luego 3 es un estado de muerte.
Cuando tenemos estados de muerte, se toma el convenio
de no dibujarlos.
En este ltimo autmata,
Si w = aaab. El autmata acepta la cadena, puesto que
para en 2, que es estado de aceptacin.
Si w = bbba. El autmata rechaza la cadena, puesto que
para en 3, que no es un estado de aceptacin.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Hacer el autmata que reconozca este
lenguaje: (a|b)aba*

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
En este diagrama de transiciones, se ve que
se ha omitido un estado de muerte, porque
por ejemplo el estado 1 no tiene transicin
con el smbolo "b", y va a parar a dicho
estado de muerte. Igual pasa con el estado
2 y el smbolo "a", y el estado 3 con el
smbolo "b"
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Hacer el diagrama de transiciones con esta
definicin del autmata:
Q={0,1,2,3}
={a, b}
q 0 =0
F={0, 1, 2}
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Como vemos, el estado 3 es un estado de muerte y poda haberse
omitido.
Este autmata, por ejemplo, acepta combinaciones de cadenas que no
tengan 3 "b seguidas.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Q={q 0 ,q 1 }
={0, 1} F={q 0 }
q 0 =q 0
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Suponiendo ={0, 1}, dibujar los
diagramas de transicin que reconozcan.
Cadenas terminadas en 00
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas con dos "unos" consecutivos.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas que no contengan dos "unos"
consecutivos.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas con dos "ceros" consecutivos o
dos "unos" consecutivos.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas con dos "ceros" consecutivos y
dos "unos" consecutivos.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas acabadas en 00 o 11.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas con un "uno" en la antepenltima
posicin.
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Cadenas de longitud 4.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
El estado 0, para el smbolo "a" tiene dos
transiciones, una al estado 1 y otra al
estado 4, es decir, (0, a) = {1, 4}.
Q={0,1,2,3,4}
F={3,4}
={a, b}
q
0
=0
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Pasar a DFA este NFA

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ya tenemos todos los estados marcados,
ahora ya slo queda pintar el diagrama de
transiciones, luego el DFA quedara as:

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
El Autmata A=({q0,q1,q2},{0,1}, ,q0,{q1})
Autmata representado con una tabla de transiciones:




Autmata representado con un diagrama de transiciones:

0 1
q0 q2 q0
q1 q1 q1
q2 q2 q1
q
0
q
2
Start
q
1
0 1
1
0,1
0
q
0
q
2
Start
q
1
0 1
1
0,1
0
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Minimizar la siguiente maquina secuencial

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Creamos dos clases de equivalencia, por un
lado los estados finales y por otro el resto
de estados.
Q/E1={{A,D,E},{B,C}} c1={A,D,E} y c2={B,C}

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Q/E2 = {{A,D,E},{B,C}} = Q/E1
Como no se ha producido ningn cambio,
paramos y reescribimos la tabla
nuevamente.

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
Sea a=ba*


EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
Ejemplo
=01|1*

EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS
EJERCICIOS DE EXPRESIONES
REGULARES Y AUTOMATAS

You might also like