Eduardo Mena webdiis.unizar.es/ ~ mena/ Dpto. de Informática e Ingeniería de Sistemas
Caracterizacio´n de lenguajes regulares con expresiones...
Transcript of Caracterizacio´n de lenguajes regulares con expresiones...
![Page 1: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/1.jpg)
Caracterizacion de lenguajes regulares con
expresiones regulares
Elvira Mayordomo
Universidad de Zaragoza
15 de octubre de 2012
![Page 2: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/2.jpg)
Contenido de este tema
◮ Recordatorio de expresiones regulares (e.r.)
◮ Como convertir una e.r. en un automata
◮ Como convertir un automata en una e.r.
![Page 3: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/3.jpg)
Expresiones regulares
Las expresiones regulares son las siguientes:
1. a (donde a ∈ Σ)
2. ǫ
3. ∅
4. r1 + r2 (donde r1 y r2 son expresiones regulares)
5. r1 · r2 (donde r1 y r2 son expresiones regulares)
6. r∗ (donde r es una expresion regular).
El lenguaje representado por una e.r. r es definido como sigue:
1. L(a) = {a} (donde a ∈ Σ)
2. L(ǫ) = {ǫ}
3. L(∅) = ∅
4. L(r1 + r2) = L(r1) ∪ L(r2) (donde r1 y r2 son expresionesregulares)
5. L(r1 · r2) = L(r1) · L(r2) (donde r1 y r2 son expresionesregulares)
6. L(r∗) = L(r)∗ (donde r es una expresion regular).
![Page 4: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/4.jpg)
Ejemplos
◮ L(a∗) = {a}∗= {an | n ∈ N}
◮ L(a + b) = {a, b}
◮ L((a + b)a∗) = {a, b} · {a}∗= {an | n ≥ 1} ∪ {ban | n ∈ N}
◮ L(01∗) = {0} · {1}∗= {01n | n ∈ N}
◮ L((1 + 0) · 10∗) = {0, 1} · {1} · {0}∗={010n | n ∈ N} ∪ {110n | n ∈ N}
◮ L(∅ · b) = ∅ · {b}= ∅
![Page 5: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/5.jpg)
Principal resultado
TeoremaUn lenguaje A es regular si y solo si existe una e.r. r tal que
L(r) = A.
◮ (Recordad Definicion) Un lenguaje A es regular si existe unAFD (automata determinista) M con A = L(M).
◮ Vimos que un lenguaje A es regular si existe un AFnD(automata no determinista) M con A = L(M).
![Page 6: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/6.jpg)
Como convertir una e.r. en un automata
◮ Para ver la primera implicacion (si existe una e.r. r tal queL(r) = A entonces A es regular) ...
◮ ... vamos a encontrar un automata M tal que L(M) = L(r)
◮ Es decir, vamos a convertir una e.r. en un automata
![Page 7: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/7.jpg)
Como convertir una e.r. en un automata
Vamos a seguir la definicion recursiva de lenguaje representado poruna e.r
1. L(a) = {a} (donde a ∈ Σ)
2. L(ǫ) = {ǫ}
3. L(∅) = ∅
4. L(r1 + r2) = L(r1) ∪ L(r2) (donde r1 y r2 son expresionesregulares)
5. L(r1 · r2) = L(r1) · L(r2) (donde r1 y r2 son expresionesregulares)
6. L(r∗) = L(r)∗ (donde r es una expresion regular).
◮ Necesitamos un automata para {a} (con a ∈ Σ)
◮ Necesitamos un automata para {ǫ}◮ Necesitamos un automata para ∅◮ Luego tenemos que tratar la union, concatenacion y estrella
de Kleene
![Page 8: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/8.jpg)
Un automata para {a}
1 2
a
![Page 9: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/9.jpg)
Un automata para {ǫ}
1
![Page 10: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/10.jpg)
Un automata para ∅
1
![Page 11: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/11.jpg)
La union
Lema
La union de lenguajes regulares es regular.
◮ Tenemos que ver que si hay un automata que reconoce A yotro que reconoce B entonces hay un automata que reconoceA ∪ B
◮ Nos basta con construir un AFnD para A ∪ B
![Page 12: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/12.jpg)
Ejemplo de union
Por ejemplo, si tenemos los automatas:
1
2
3
A B
a
a
a
a
a
![Page 13: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/13.jpg)
Ejemplo de union
El siguiente automata reconoce la union de los anteriores
0
1
2
3
A B
ǫ
ǫ
a
a
a
a
a
![Page 14: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/14.jpg)
Demostracion de la union
Si tenemos un automata que reconoce A y otro que reconoce B ...
a
1
. . .
. . .
¿Como hacemos un automata que reconozca A ∪ B?
![Page 15: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/15.jpg)
Demostracion de la union
q0
a
1
. . .
. . .
ǫ
ǫ
◮ Ponemos como estado inicial un estado nuevo q0
◮ Anadimos ǫ-transiciones desde q0 a los antiguos estadosiniciales
![Page 16: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/16.jpg)
La concatenacion
Lema
La concatenacion de lenguajes regulares es regular.
◮ Tenemos que ver que si hay un automata que reconoce A yotro que reconoce B entonces hay un automata que reconoceA · B
◮ Nos basta con construir un AFnD para A · B
![Page 17: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/17.jpg)
Ejemplo de concatenacion
Por ejemplo, si tenemos los automatas:
1
2
3
A B
a
a
a
a
a
![Page 18: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/18.jpg)
Ejemplo de concatenacion
El siguiente automata reconoce la concatenacion de los anteriores
1
2
3
A B
ǫ
a
a
a
a
a
![Page 19: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/19.jpg)
Demostracion de la concatenacion
Si tenemos un automata que reconoce A y otro que reconoce B ...
a
1
. . .
. . .
¿Como hacemos un automata que reconozca A · B?
![Page 20: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/20.jpg)
Demostracion de la concatenacion
a
1
. . .
. . .
ǫ
◮ Ponemos como estado inicial el del primer automata
◮ Anadimos ǫ-transiciones desde los finales del primer automataal inicial del segundo
![Page 21: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/21.jpg)
La estrella de Kleene
Lema
La estrella de Kleene de un lenguaje regular es regular.
◮ Tenemos que ver que si hay un automata que reconoce A
entonces hay un automata que reconoce A∗
◮ Nos basta con construir un AFnD para A∗
![Page 22: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/22.jpg)
Ejemplo de estrella de Kleene
Por ejemplo, si tenemos el automata:
1
2
3
a
a
a
![Page 23: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/23.jpg)
Ejemplo de estrella de Kleene
El siguiente automata reconoce la estrella de Kleene del anterior
0
1
2
3
ǫ
ǫ
a
a
a
![Page 24: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/24.jpg)
Demostracion de la estrella de Kleen
Si tenemos un automata que reconoce A ...
a . . .
¿Como hacemos un automata que reconozca A∗?
![Page 25: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/25.jpg)
Demostracion de la estrella de Kleene
a
q0
. . .
ǫǫ
◮ Ponemos como estado inicial un estado nuevo q0
◮ Anadimos ǫ-transiciones desde q0 al antiguo estado inicial
◮ Anadimos ǫ-transiciones desde los finales a q0
◮ Hacemos q0 final
![Page 26: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/26.jpg)
Como construir un automata equivalente a una e.r.
Ejemplo
(00 + 111)∗
◮ Primero construimos automatas para 0 y para 1.
◮ Usando la construccion anterior para concatenacion tenemosautomatas para 00 y para 111.
◮ Usando la construccion anterior para union tenemos unautomata para 00 + 111.
◮ Usando la construccion anterior para estrella de Kleenetenemos un automata para (00 + 111)∗.
![Page 27: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/27.jpg)
¿Que hemos demostrado?
◮ Hemos demostrado que tenemos un automata que reconocelos lenguajes siguientes:
1. L(a) = {a} (donde a ∈ Σ)2. L(ǫ) = {ǫ}3. L(∅) = ∅4. L(r1 + r2) = L(r1) ∪ L(r2) (donde r1 y r2 son expresiones
regulares)5. L(r1 · r2) = L(r1) · L(r2) (donde r1 y r2 son expresiones
regulares)6. L(r∗) = L(r)∗ (donde r es una expresion regular).
◮ Por tanto para cada e.r. r tenemos un automata M tal queL(r) = L(M) (es decir, M acepta el lenguaje que representar).
◮ Por tanto todo lenguaje representado por una e.r. es regular.
![Page 28: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/28.jpg)
Propiedades de clausura de los regulares
Ademas por el camino hemos visto:
1. La union de dos lenguajes regulares es regular. Los regulares
son cerrados por la operacion de union.
2. La concatenacion de dos lenguajes regulares es regular. Losregulares son cerrados por la operacion de
concatenacion.
3. La estrella de Kleene de un lenguaje regular es regular. Losregulares son cerrados por la operacion de estrella de
Kleene.
![Page 29: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/29.jpg)
Otras propiedades de clausura de los regulares
1. El complementario de un lenguaje regular es regular. Losregulares son cerrados por la operacion de complemento.
2. El reverso de un lenguaje regular es regular. Los regulares
son cerrados por la operacion de reverso.
3. La interseccion de dos lenguajes regulares es regular. Losregulares son cerrados por la operacion de interseccion.
El complementario y el reverso son muy faciles, la intersecciontiene algo mas de trabajo
{w ∈ {a, b} | |w |a = 2n, |w |b = 2m, n,m ∈ N} =
= {w ∈ {a, b} | |w |a = 2n, n ∈ N}∩{w ∈ {a, b} | |w |b = 2m, n ∈ N}
![Page 30: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/30.jpg)
Curiosidades: Kleene y la estrella de Kleene
◮ Stephen C. Kleene fue un matematico americano (1909-1994).
◮ En los 50 invento las expresiones regulares.
◮ Muy interesado como Turing en formalizar que escomputacion y encontrar los lımites de un ordenador.
◮ Sus aportaciones tuvieron gran influencia en la programacionlogica.
![Page 31: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/31.jpg)
¿Que nos falta?
◮ Queremos demostrar que un lenguaje A es regular si y solo siexiste una e.r. r tal que L(r) = A.
◮ Hemos visto que si existe una e.r. r tal que L(r) = A entoncesA es regular (es decir, hemos convertido cada e.r. en unautomata).
◮ Nos falta ver que si A es regular entonces existe una e.r. r talque L(r) = A (es decir, nos falta convertir cada automata enuna e.r.).
◮ Por la equivalencia AFDs y AFnDs nos basta hacerlo conAFDs (automatas deterministas).
![Page 32: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/32.jpg)
Convertir un AFD en una e.r. equivalente
◮ Tenemos un AFD M = (Q,Σ, δ, q0,F ) como este:
0 1 21
0
0,1
0 1
◮ Para cada estado q ∈ Q, Lq es el conjunto de palabras queaceptamos empezando en el estado q, es decir,
Lq = {w | δ(q,w) ∈ F }
◮ Por tanto Lq0 = L(M), el lenguaje aceptado por M.
![Page 33: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/33.jpg)
Ecuaciones sobre un automata
◮ Podemos escribir ecuaciones sencillas que relacionen los Lqseparando el primer sımbolo.
◮ Por ejemplo, L2 son las palabras que empiezan en 0 seguidasde una palabra de L1 y las palabras que empiezan en 1seguidas de una palabra de L1
L2 = 0 · L1 + 1 · L1
(Usamos notacion de e.r., “+” es la union)
L0 = 0 · L0 + 1 · L1
L1 = ǫ+ 0 · L2 + 1 · L1
◮ Si conseguimos despejar L0 tenemos quien es L(M)
![Page 34: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/34.jpg)
Resolviendo las ecuaciones ...
◮ Sustituimos L2 en L1:
L1 = ǫ+ 0 · (0 · L1 + 1 · L1) + 1 · L1
◮ Agrupando:
L1 = ǫ+ (00 + 01 + 1) · L1
◮ ¿Como despejamos L1?
◮ Lo sabemos hacer en matematicas: x = 2 + 5x
◮ Tenemos un lema que nos permite resolver ecuaciones de laforma L = A · L+ B , es el lema de Arden.
![Page 35: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/35.jpg)
El lema de Arden
LemaSi A y B son dos lenguajes con ǫ 6∈ A y X es un lenguaje
desconocido, entonces la unica solucion a la ecuacion X = AX + B
es X = A∗B.
La demostracion en la pizarra y en la web
![Page 36: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/36.jpg)
Resolviendo las ecuaciones ...
L0 = 0 · L0 + 1 · L1
L1 = ǫ+ 0 · L2 + 1 · L1
L2 = 0 · L1 + 1 · L1
◮ Habıamos despejado
L1 = ǫ+ (00 + 01 + 1) · L1
◮ Luego por el lema de Arden L1 = (00 + 01 + 1)∗
◮ Sustituyendo en L0:
L0 = 0 · L0 + 1(00 + 01 + 1)∗
◮ Por el lema de Arden L0 = 0∗1(00 + 01 + 1)∗
![Page 37: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/37.jpg)
Fin del ejemplo
0 1 21
0
0,1
0 1
◮ Este automata reconoce el lenguaje representado por0∗1(00 + 01 + 1)∗.
![Page 38: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/38.jpg)
Visto en este tema
◮ Como convertir una e.r. en un automata.
◮ Como convertir un automata en una e.r.
◮ Los regulares son cerrados por union, concatenacion y estrellade Kleene (y complemento, reverso e interseccion).
◮ Para ver que un lenguaje es regular basta con encontrar unae.r. que lo represente (o un automata que lo acepte,determinista o no determinista).
![Page 39: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/39.jpg)
Para comparar dos e.r.
◮ Recordad que sabemos comparar automatas (hay quedeterminizar y minimizar)
◮ Para comparar dos e.r. hay que convertirlas en dos automatasy compararlos.
![Page 40: Caracterizacio´n de lenguajes regulares con expresiones ...webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/09/06... · Contenido de este tema Recordatorio de expresiones](https://reader031.fdocuments.ec/reader031/viewer/2022021803/5b87b70b7f8b9aaf728bfb4d/html5/thumbnails/40.jpg)
Bibliografıa
◮ Kelley, seccion 2.8.
◮ Sipser (2a edicion), paginas 44 a 47 y 58 a 69 (en secciones1.1, 1.2 y 1.3). No incluye la demostracion presentada deComo convertir un automata en una e.r.