Escolar Documentos
Profissional Documentos
Cultura Documentos
Lenguajes
Regulares
Araceli
Sanchis
de
Miguel
Agapito
Ledezma
Espino
Jos
A.
Iglesias
Mar<nez
Beatriz
Garca
Jimnez
Juan
Manuel
Alonso
Weber
AUTMATAS
FINITOS
Y
G3
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Gramtica
asociada
a
un
AF
L(G3LD)
=
L(A).
Es
decir,
el
lenguaje
que
genera
la
gramDca
es
el
mismo
que
reconoce
el
Autmata
Veamos
como
obtener
la
gramDca
G={T,
N,
S,
P}
a
parDr
del
AF=
{Q,
,
q0,
f,
F}.
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Gramtica
asociada
a
un
AF
T=
;
N=
Q
;
S
=
qo
P=
{
}
1. transicin
f(p,a)
=q
si
q
no
es
estado
nal
p::=
a
q
2. q
F
y
f(p,a)
=
q
p::=
a
y
p::=
a
q
3. p0
F
p0
::=
4. si
f(p,
)
=
q
si
q
no
es
estado
nal
p
::=
q;
5. q
F
y
f(p,
)
=
q
p
::=
q
y
q::=
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Se construye la gramDca G3LD (G= G={T, N, S, P}) de la siguiente forma a parDr del Autmata (AF= {Q, , q0, f, F}):
Sea
la
G3LD,
G
=
(T,
N
S,
P),
existe
un
AF,
A,
tal
que:
L(G3LD)
=
L(A)
Como
se
construye
AF
a
parDr
de
G3LD:
=
T
Q
=
N
U
{F}
,
con
F
N
qo
=
S
F
=
{F}
f:
Si
A
::=
a
B
f(A,a)
=
B
Si
A
::=
a
f(A,a)
=
F
Si
S
::=
f(
S,
)
=
F
Se ha visto el procedimiento para obtener el AF que aceptaba el lenguaje descrito por una G3LD, sin embargo, ese procedimiento no siempre conduce a un AFD. Lo habitual es: G3 AFND AFD Ejemplo. Sea la G3LD hallar el AF correspondiente. G = ({d,c}, {A,S,T}, A, {A ::= cS, S::= d|cS|dT, T::= dT|d})
Sea el AF descrito por la siguiente tabla, hallar la G3 LD que genera el lenguaje por ella descrito. Comprobar que los lenguajes son iguales
0 A A B A C* C
1 C C B
AF
asociado
a
una
G3
G3LI
G3LD
AF
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
EXPRESIONES
REGULARES
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Denicin
10
DeIinicin
de
ER(I)
Metalenguaje
para
expresar
el
conjunto
de
palabras
aceptadas
por
un
AF
(es
decir,
para
expresar
lenguajes
de
Dpo
3
o
regulares)
Kleene,
1956
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
11
DeIinicin
de
ER(I)
Ejemplo
Dado
el
alfabeto
=
{0,1},
La
ER
0*10*
es
una
palabra
del
metalenguaje
que
representa
las
innitas
palabras
del
lenguaje
regular
formado
por
un
1,
precedido
y
seguido
de
0,
1
o
innitos
0s.
El
lenguaje
*
puede
representarse
mediante
la
ER:
(0+1)*
El
lenguaje
{01,
101}
puede
representarse
mediante
la
ER:
01
+
101
La
ER
1(1+0)*
representa
todas
las
cadenas
que
empiezan
por
el
smbolo
1.
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
12
DeIinicin
de
ER(II)
Dados
los
smbolos
:
,
(conjunto
vaco),
(cadena
vaca)
y
las
operaciones:
+
(unin),
(concatenacin),
*(cierre
o
clausura)
se
cumple
que:
es
una
ER
es
una
ER
cualquier
a
es
una
ER
si
y
son
EERR
entonces
+
y
son
EERR
si
es
una
ER
entonces
*
es
una
ER,
donde
*= U i
i=0
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
13
DeIinicin
de
ER(III)
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Solo son EERR las que se obDenen de aplicar las reglas anteriores un nmero nito de veces sobre smbolos de , , La prioridad de las operaciones es la siguiente: * +
14
Denicin
15
EERR
y
LR
A
cada
ER
,
se
le
asocia
un
subconjunto
de
*,
L(),
que
es
el
LR
descrito
por
.
Este
lenguaje
se
dene
con:
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
si
=
,
L()
=
si
=
,
L()
=
{}
si
=
a,
a
,
L()
=
{a}
si
y
son
EERR
L(
+
)
=
L()
L()
si
y
son
EERR
L(
)
=
L()
L()
si
*
es
una
ER
L(
*)
=
L()*
16
Denicin
17
18
10)
*
*
=
*
11)
*
=
*
12)
(
*)*
=
*
13)
*
=
+
+
2
+
..
+
n
+
n+1.
*
14)
*
=
+
*
(13
con
n=0)
(IMPORTANTE)
15)
*
=
(
+
)n-1
+
n
*
(de
14,
susDtuyendo)
16)
Sea
f
una
funcin,
f:En
E
se
verica:
f(,
,
...,
)
+
(
+
+
...
+
)*
=
(
+
+
...
+
)*
17)
Sea
f
una
funcin,
f:En
E
se
verica:
(f(*,
*,
...,
*))*
=
(
+
+
...
+
)*
(IMPORTANTE)
19
L
=
AL
+
B,
donde
A,
entonces
se
verica
que
L = A*B
20
Denicin
21
22
23
Las
ramas
Denen
la
forma
aijxj
donde
aij
es
la
eDqueta
de
la
rama
que
une
qi
con
qj,
xj
es
la
variable
correspondiente
a
qj
Se
aade
un
trmino
aij
por
cada
rama
que
une
qi
con
un
estado
nal
Se
aade
si
qi
es
nal.
si
es
nal:
xi
=
si
no
es
nal:
xi
=
Si
de
un
estado
qi
no
sale
ninguna
rama,
el
segundo
miembro
ser:
l l
o o o
Describen todas las cadenas que se pueden reconocer desde un estado dado
24
X0
X1
Porque
q
es
un
estado
nal
Porque
q
es
un
estado
nal
X0 = b X0 + a X1 + a X1 = b X1 + a X0+ b +
25
Ejemplo 2:
X0
X1
X2
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
26
1. Escribir las ecuaciones caractersDcas del AF 2. Resolverlas 3. Si el estado inicial es q0, X0 nos da el conjunto de cadenas que conducen desde q0 a qf y por tanto el lenguaje aceptado por el AF
27
28
Ejemplo 1:
X0
X1
X2
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
29
X0
X1
X2
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
Ejemplo 1:
30
X0
X1
X2
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b + X2 = b* (b + ) = b* + b* = b*
Ejemplo 1:
31
X0
X1
X2
Ejemplo 1:
32
Ejemplo 1:
X0
X1
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
X2
33
X0
X1
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
X2
Ejemplo 1:
34
X0
X1
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
X2
X2 = b* (b + ) = b* + b* = b*
Ejemplo 1:
35
X0
X1
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
X2
Ejemplo 1:
36
X0
X1
Ecuaciones Caracters/cas: X0 = a X1 X1 = b X2 + a X1 + b X2 = b X2 + b +
X2
Ejemplo 1:
37
38
Dada
una
ER
que
representa
a
un
lenguaje
regular,
construir
un
AF
que
acepte
ese
lenguaje
regular
(cont.)
si
=+,
con
los
autmatas
de
y
p1
p2
*q1
*q2
el
resultado
es:
p
p1
p2
q1
q2
*q
39
Dada
una
ER
que
representa
a
un
lenguaje
regular,
construir
un
AF
que
acepte
ese
lenguaje
regular.
(cont.)
si
=
,
con
los
autmatas
de
y
el
resultado
es:
p1
q1
p2
*q2
p1
p2
*q1
*q2
40
Dada
una
ER
que
representa
a
un
lenguaje
regular,
construir
un
AF
que
acepte
ese
lenguaje
regular.
(cont.)
si
=*,
con
el
autmata
de
el
resultado
es:
p
p1
q1
p1
*q1
*q
41
42
p0
43
44
Da (R*) = Da(R) R*
45
Denicin: Dab(R)=Db(Da(R))
46
R = a a* b b* es igual que R = a a* b b*
47
R0=aa*bb* Da(R0)=R1 Da(R1)=R1 Db(R1)=R2 Db(R2)=R2 Da(R)=S RaS R0 aR1 R1 aR1 R1 bR2 R2 bR2
R2=b*
48
BibliograIa
A.
Sanchis,
A.
Ledezma,
J.
Iglesias,
B.
Garca,
J.
Alonso
Libro Bsico 1 Bibliograza (AAM). Enrique Alfonseca Cubero, Manuel Alfonseca Cubero, Roberto Moriyn Salomn. Teora de autmatas y lenguajes formales. McGraw-Hill (2007). Apartado 7.2 Libro Bsico 2 Bibliograza (HMU). John E. Hopcro}, Rajeev Motwani, Jerey D.Ullman. Introduccin a la teora de autmatas, lenguajes y computacin (3 edicin). Ed, Pearson Addison Wesley. Tema 3 Libro Bsico 4 Bibliograza (AAM). Manuel Alfonseca, Justo Sancho, Miguel Mar<nez Orga. Teora de lenguajes, gramDcas y autmatas. Publicaciones R.A.E.C. 1997 Tema 7
49