Professional Documents
Culture Documents
como la quntupla
(Q , , S , q 0 , F)
{}
Qx
exista una transicin con etiqueta a que vaya de q a p, siendo a con el smbolo
o un smbolo de .
Naturalmente que podemos hacer la CERRADURA
conjunto de estados, sea
( P)
en la que P es un
S^
de la
manera siguiente:
S^ ( q , )=CERRADURA ( q ) .
I.
II.
S^
3.-
S ( R ,a )=U q en R S ( q , a ) y
4.-
S^ ( R , w )=U q en R ^S ( q , w )
F' =
y S ' ( q , a ) es S^ ( q , a ) para q en Qy a en . Notese que M ' no tiene transiciones . Asi pues podemosutilizar S' com
S y S.
Deseamos mostrar por induccin sobre |X| que
esta proposicin puede no ser verdadera para
, ya que
S ' (q0 , )
S .
S ( P , a )=S ( q 0 , wa)
S^ ( q0 , w )=P
. Debemos
. Pero
P= S^ ( q , w )= ^S ( q 0 , wa )
tenemos
U q en p ^S ( q , a ) =S^ ( q0 , wa )
Por la regla (2) de la definicin de
S^
. As pues,
S^ ( q 0 , wa ) = ^S ( q 0 , wa )
EXPRESIONES REGULARES
Los lenguajes aceptados por un autmata finito se describen con facilidad
mediante expresiones simples llamadas expresiones regulares.
Sea
de
un
. La concatenacin de
L1
L1
y en
L1
L2
conjuntos de cadenas
L2
L2
}. Las cadenas de
, denotada como,
L1
L1
L2
L2
, es
estn
L2
}.
+=i=0
L Li
Es decir, L* se denota palabras construidas mediante la concatenacin de
cualquier numero de palabras de L. L+ es lo mismo que L*, solo que ahora se
excluye el caso de cero palabras, cuya concatenacin se define como si y
solo si L lo hace.
Sea
un
3. Para cada a en
+
a
{a}.
4. Si r y s son expresiones regulares que denotan a los lenguajes R y S,
respectivamente, entonces (r + s), (rs) y (r*) son expresiones regulares que
detonan a los conjuntos R S , RS y R *, respectivamente.
Equivalencia entre autmatas finitos y expresiones regulares
Ahora nos abarcaremos a mostrar que los lenguajes aceptados por un autmata
finito son precisamente los lenguajes denotados por las expresiones regulares.
Esta equivalencia fue la motivacin para llamar a los lenguajes de autmata finito
conjuntos regulares. Nuestro plan consistir en demostrar, por induccin sobre el
tamao (nmero de operadores) de una expresin regular, que existe un NFA con
transiciones que denota el mismo lenguaje. Finalmente, demostraremos que
para cada DFA existe una expresin regular que denota a su lenguaje. Estas
construcciones, junto con los Teoremas 2.1 y 2.2, demuestran que los cuatro
mecanismos para definir un lenguaje.
Procedemos ahora a probar que para cada expresin regular existe un NFA
equivalente con transiciones .
Teorema 2.3 Sea r una expresin regular. Entonces existe un NFA con
transiciones que acepta L(r).
Prueba mostramos por induccin sobre el nmero de operadores de la expresin
regular, r, que existe un NFA, M, con transiciones , que posee un estado final
y ninguna transicin que parta dl estado final, tal que L(M)= L(r).
,
o a para alguna a de .
r=r 1+ r 2
r1
tanto
r2
como
Por
tanto,
existe
NFAs
, S 1 , q 1 , {f 1 }
Q1 ,
1
M 1
L ( M 1 ) =L ( r ) y L ( M 2 )= L ( r 2 ) .
M =(Q1 Q2 { q0 , f 0 } , , S , q0 , { f 0 })
1
Caso 2
r=r 1 r 2 .
Sean
, S 2 , q 2 , {f 2 }
Q2 ,
2
M 2
con
Caso 3 r=r 1 .
M 1= Q 1 , , , S , q 0 , { f 0 } ,
Sea
La prueba del teorema 2.3 es, en esencia, un algoritmo para convertir una
expresin regular en autmata finito.
Para las expresiones regulares que no tengan parntesis redundantes, debemos
de determinar si la expresin es de la forma p + q, pq o p*.
Teorema 2.4 si L es aceptado por un DFA, entonces L es denotado por una
expresin regular.
Demostracin Sea L el conjunto aceptado por el DFA.
( {q1 , qn ) , , S , q1 , F ) .
M
Podemos definir
Rij
de manera recursiva
Rkij
Informndole, la definicin de
hacen que M vaya de
a)
q1
qk
qj
Rkij
qk
son:
); o.
Rkij
(que lleva M a
k
Rij
qk ,
por primera
(que lleva a M de
qk
de
regreso a
una cadena de
Rkij
qk
qj
al
.
r kij
Rij .
que
o un solo smbolo.
Rk1
lm
. As pues para
r kij
k1
rl m
k1
tal que L ( r l m
Ya que
Donde
q1 a q j
de