Académique Documents
Professionnel Documents
Culture Documents
Autmatos Finitos ou
Mquinas de Estado Finitas
Prof. Edward Hermann Haeusler
PUC-Rio
Departamento de Informtica
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 1 / 16
Modelo de Comportamento
Paradigma de estados
e transies entre
estados
.
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
?>=< 89:;
q
0
b
?>=< 89:;
q
1
c
?>=< 89:;
q
0
b
?>=< 89:;
q
1
c
Q, como:
(q, ) = q
(q, .) =
((q, ), )
(q
0
, ) F.
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 5 / 16
Comparando Mecanismos
Aceitao de Palavras
.
GFED @ABC
q
0
b
GFED @ABC
q
1
c
GFED @ABC
q
0
b
GFED @ABC
q
1
c
1 se e somente se (q, ) = q
q 1 se e somente se (q, ) F ,=
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 8 / 16
Gramticas Regulares e No-determinismo
Exemplo: A a?, depois de produzir a pode-se produzir A ou B
A aA[aB
B bB[b
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 9 / 16
Gramticas Regulares e No-determinismo
Exemplo: A a?, depois de produzir a pode-se produzir A ou B
A aA[aB
B bB[b
Exemplo: No estado A, lendo a, qual o prximo estado ??
.
?>=< 89:;
A
a
?>=< 89:;
B
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 9 / 16
Gramticas Regulares e No-determinismo
Exemplo: A a?, depois de produzir a pode-se produzir A ou B
A aA[aB
B bB[b
Exemplo: No estado A, lendo a, qual o prximo estado ??
.
?>=< 89:;
A
a
?>=< 89:;
B
Exemplo: No estado B, lendo b, qual o prximo estado ??
.
?>=< 89:;
B
b
(q, ) = q
(q, .) =
(q,)
(q
, )
Denio
A linguagem aceita por /, L(/) denida como /
(q
0
, ) F ,= .
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 10 / 16
Gramticas Regulares e AFNDs
Teorema
Seja ( = , N, S, 1) uma gramtica regular. Existe um AFND /
G
, tal
que L(() = L(/
G
).
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 11 / 16
Gramticas Regulares e AFNDs
Teorema
Seja ( = , N, S, 1) uma gramtica regular. Existe um AFND /
G
, tal
que L(() = L(/
G
).
Prova. /
G
= N FIM, , S, FIM, ), onde, tal que:
A B 1 se e somente se B (A, )
A 1 se e somente se FIM (A, )
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 11 / 16
Construindo Determinismo
Exemplo: Um Aut. No-Determinstico que aceita L(G)
.
?>=< 89:;
A
a
?>=< 89:;
B b
?>=< 89:;
A
a
?>=< 89:;
B b
?>=< 89:;
A
a
?>=< 89:;
AB
a
pot
(R, ) =
qR
(q, )
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 13 / 16
Linguagens Regulares
Uma Linguagem L Regular, se e somente se, existe uma
gramtica regular ( tal que L(() = L.
Uma Linguagem L Regular, se e somente se, existe um AFND
/, tal que, L(/) = L.
Uma Linguagem L Regular, se e somente se, existe um AFD /,
tal que, L(/) = L.
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 14 / 16
Linguagens Regulares
Uma Linguagem L Regular, se e somente se, existe uma
gramtica regular ( tal que L(() = L.
Uma Linguagem L Regular, se e somente se, existe um AFND
/, tal que, L(/) = L.
Uma Linguagem L Regular, se e somente se, existe um AFD /,
tal que, L(/) = L.
Teorema de Kleene (I)
Teorema
A classe das linguagens regulares fechada para as operaes de
concatenao, e
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 14 / 16
Autmatos com transies
Uma convenincia formal
.
?>=< 89:;
A
a
?>=< 89:;
B
b
?>=< 89:;
A
a
c
c
c
c
c
c
c
c
c
?>=< 89:;
B
b
b
.
?>=< 89:;
q
GFED @ABC
q
1
a
e
e
e
e
e
e
e
e
e
?>=< 89:;
q
?>=< 89:;
q
.r
r
r
r
r
r
r
r
r
r
r
r
r
r
v
v
v
v
v
v
v
v
v
v
v
v
v
v
.
GFED @ABC
q
A
1
0
d
d
d
d
d
d
d
d
.
GFED @ABC
q
A
2
0
~
~
~
~
~
~
~
~
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 16 / 16
Denindo autmatos a partir de autmatos
Um autmato que aceita L(A)
..
f
f
f
f
f
f
f
f
f
. ?>=< 89:;
q
A
0
b
b
b
b
b
b
b
b
... ?>=< 89:; 7654 0123
q
A
F
..
|
|
|
|
|
|
|
|
|
Prof. Edward Hermann Haeusler (PUC-Rio ) Teoria de Linguagens de Programao Autmatos Finitos ou Mquinas de Estado Finitas Departamento de Informtica 16 / 16