Anda di halaman 1dari 5

Expresiones Regulares

Paso bsico: es una expresin regular es una expresin regular s, s es una expresin regular Paso de induccin: unin, concatenacin y clausura Si y son expresiones regulares es una expresin regular es una expresin regular ( simplemente denotada ) * es una expresin regular
Delimitadores: (, ) si no pertenecen al alfabeto: Si es una expresin regular entonces () es una expresin regular

Lenguaje definido por una ER


Paso bsico: es una ER que denota el lenguaje es una ER que denota el lenguaje s, s es una ER que denota L() = L() ={} L(s) ={s}

Paso de induccin: Si y son expresiones regulares es una ER y es una ER y * es una ER y L( )= L() L() L( )= L() L() L(*)= L()*
Si es una expresin regular entonces () es una expresin regular y L(()) = L()
25 Tema 2: Lenguajes regulares 26

Tema 2: Lenguajes regulares

Lenguajes regulares
LOS LENGUAJES REGULARES SON LOS LENGUAJES DENOTADOS POR LAS EXPRESIONES REGULARES EJEMPLO: ={0,...,9, . , , E }
[ Nota: denotada ]

Ejemplos de expresiones regulares


a*bba
denota el lenguaje: L = {a}*. {b} . {b} . {a} = {, a, aa, ... } . {bba} = {bba, abba, aabba, aaabba, ...} (10)* (01)* denota el lenguaje: L = L1 L2 = {,10, 1010, ... } {,01, 0101, ... } = {,10, 01,1010, 0101, ... } (10 01)* denota el lenguaje: L = {10, 01}* = {,10, 01, 1010, 1001, 0110, 0101, ... }

DIGITO = 0 1 2 3 4 5 6 7 8 9 NATURAL = (DIGITO)* DIGITO ENTERO = NATURAL NATURAL COMA= ENTERO (ENTERO ).NATURAL ENTERO .(NATURAL ) COMA-FLOTANTE = COMA( E ENTERO ) L(COMA-FLOTANTE ) es el lenguaje de los nmeros en coma flotante
Tema 2: Lenguajes regulares 27 Tema 2: Lenguajes regulares

Lenguaje formado por las cadenas de {a,b} con tres as exactamente:


b*ab*ab*ab*

28

Clculo del lenguaje regular definido por una GLD


Sistema de ecuaciones definido por una GLD


ENTRADA: G=(N,,S,P) gramtica lineal a la derecha SALIDA: Lenguaje denotado por la expresin regular = LS

ENTRADA: G=(N,,A0,P) gramtica lineal a la derecha, N={A0,...,An} SALIDA: Sistema de ecuaciones auto-referentes

PLANTEAR el sistema de ecuaciones auto-referentes RESOLVER dicho sistema:

Eliminar incgnitas y ecuaciones, despejando en una ecuacin y sustituyendo en las dems Hasta obtener el valor LS del lenguaje expresado por S

A0 00 0 j 0n A0 z0 M = i 0 ij in M M A n n0 nj nn An zn
Obtencin de la ecuacin i-sima: Ai = i0A0 ... inAnzi = iiAi i

PROPOSICIN 6:

L(GRD) = L(GLD) L(ER)

ij =
29 Tema 2: Lenguajes regulares

Los lenguajes generados por las gramticas regulares / lineales a la derecha son lenguajes regulares (denotados por una ER)
Tema 2: Lenguajes regulares

Ai wA j P

Uw

zi =

A i w P
30

Uw

Ejemplo de sistema de ecuaciones

Resolucin del sistema de ecuaciones


Cualquier ecuacin auto-referente: tiene como solucin el lenguaje: En el ejemplo anterior: Ai= iiAi i Li = ii* i

Gramtica Lineal:
S aaS| bS| abA| bA| b A aA| bba

S aaS| bS| abA| bA| b A aA| bba LA = a*bba LS = (aab)* ( (abb) LA b ) = (aab)* ( (abb)a*bba b )

Sistema de ecuaciones:
S = (aab)S (abb)A b = (aab)S S A= S aA bba = aA A A= aA bba S=(aab)S (abb)A b S

Tema 2: Lenguajes regulares

31

Tema 2: Lenguajes regulares

32

Autmata finito no determinista con transiciones vacas (-AFND)


Definicin formal: M = (Q, , , q0, F) con : Q ( {}) (Q)

Autmata finito no determinista con transiciones vacas (-AFND)


Configuracin: Movimiento: (q, w) Q *

Funcin de transicin extendida: * : Q * (Q ) * (q, ) = C ( q ) * (q, ws) = U C ( (p, s) )


p * (q, w)

(p, u) | (q, v) si y solo si

u=v

y q (p, )

u = s.v y q (p, s)

Clausura de q: todos los estados conectados a travs de con q. q C(q) p C(q) (p, ) C(q)

Lenguaje aceptado: L(M) = { w *: pF y (q0, w) |* (p, ) } = { w *: *(q0, w) F }

Clausura de un conjunto de estados: C({q1,qn})= C(q1) C(qn)


Tema 2: Lenguajes regulares 33 Tema 2: Lenguajes regulares 34

Relacin entre ER y -AFND


PROPOSICIN 7: L(ER) L(-AFND ) Sea una expresin regular. Existe un -AFND M = (Q, , , q0, F) tal que L(M) = L() DEMOSTRACIN: Podemos suponer (sin prdida de generalidad) que el -AFND tiene estado aceptador nico, sin transiciones de salida y que su estado inicial no tiene transiciones de entrada. Por induccin sobre 1) Paso bsico: = =

Relacin entre ER y -AFND


q0
M = ( {q0 } , , , q0, {q0 } ) L(M)={x: (q0,x)|-* (q0, )} = {} = L() = s, s

q0

q0
M = ( {q0 , f0 } , , , q0, {f0 } )

f0

f0

M = ( {q0 , f0 } , , , q0, {f0 } ) L(M)={x: (q0,x)|-* (f0, )} = {s} = L()


35 Tema 2: Lenguajes regulares 36

L(M) = {x: (q0,x)|-*(f0,)} = = L()


Tema 2: Lenguajes regulares

Relacin entre ER y -AFND


2) Paso de induccin: Sean y expresiones regulares, M1 y M2 -AFNDs con estado final nico sin transiciones tales que L()=L(M1) y L()=L(M2) =
q0

Relacin entre ER y -AFND


= M = ( Q1 Q2 {q0 , f0 } , , , q0, {f0 } ) ( q0, ) = {q1, q2 } ( q, s ) = 1(q, s ) q Q1 - { f1 } s { } q Q2 - { f2 } s { } ( q, s ) = 2(q, s ) ( f1, ) = (f2, ) = { f0 } L(M) = L() L() = L()

q1

M1

f1

f0

q2

M2

f2

Tema 2: Lenguajes regulares

37

Tema 2: Lenguajes regulares

38

Relacin entre ER y -AFND


=
M1 q2 M2

Relacin entre ER y -AFND


= *
q0

q1

f1

f2

q1

M1

f1

f0

M = ( Q1 Q2 , , , q1, {f2 } ) ( q, s ) = 1(q, s ) ( f1, ) = { q2 } ( q, s ) = 2(q, s ) L(M)=L() L() = L()


Tema 2: Lenguajes regulares 39 Tema 2: Lenguajes regulares

q Q1 - { f1 } s { } q Q2 s { }

M = ( Q1 {q0 , f0 } , , , q0, {f0 } ) ( q0, ) = ( f1, ) = {q1, f0 } q Q1 - { f1 } ( q, s ) = 1(q, s ) L(M) = L()* = L() s { }

40

Relacin entre -AFND y AFD


PROPOSICIN 8: L(-AFND ) L(AFD) Todo lenguaje reconocido por un -AFND es reconocido por un AFD DEMOSTRACIN: Sea L = L(M) un lenguaje reconocido por un -AFND M = ( Q, , , q0, F ) Construimos el siguiente AFD: con P (Q) p0= C(q0) (p, s) = qpC((q,s)) G = {pP: p F }
Tema 2: Lenguajes regulares 41

Relacin entre -AFND y AFD


Lema: *(p0, x) = *(q0, x) Se demuestra por induccin sobre la palabra x *(p0, ) = p0 = C(q0) y *(q0, ) = C(q0) = q*(q0, w)C((q, s)) = *(q0, ws) A partir del lema anterior se demuestra que L(N) = L(M). xL(N) *(p0, x) G *(q0, x) G *(q0, x) F xL(M)
Tema 2: Lenguajes regulares 42

*(p0, ws) = ((*(p0, w), s) = ((*(q0, w), s)

N = ( P, , , p0, G )

Relacin entre AFND y AFD


COROLARIO: L(AFND ) L(AFD) Todo lenguaje reconocido por un AFND es reconocido por un AFD DEMOSTRACIN: Es un caso particular de la proposicin 8, para AFND sin La construccin es la misma, sin tener que hacer las clausuras: Dado el AFND M = ( Q, , , q0, F ), construimos el AFD: N = ( P, , , p0, G ) con P (Q) p0 = {q0} (p, s) = qp(q,s) G = {pP: p F }
Tema 2: Lenguajes regulares 43

Todas las relaciones estudiadas

L(AFDt) =(1) L(AFD) (2) L(AFND) =(5) (4)

L(GRD) =(3) L(GLD) (8) (6) L(ER) (7) L(-AFND )

Por lo tanto, todas las inclusiones son igualdades.

Tema 2: Lenguajes regulares

44

Anda mungkin juga menyukai