Você está na página 1de 74

Minimização de Autômatos

Finitos Determinísticos

1
Convertendo NFA-Є em DFA → ANTES

ERs para IF, ID, NUM e error

2
Convertendo NFA-Є em DFA → DEPOIS

3
Estados Equivalentes

Estados Equivalentes

• Dois estados s1 e s2 são equivalentes quando o autômato aceita


uma cadeia w começando em s1  ele também aceita a mesma
cadeia w começando em s2

• Para cada símbolo do alfabeto, tem-se que:

trans[ s1, c ] = trans[ s2, c ] para  c

4
Estados Equivalentes
Quais estados são equivalentes no autômato?
– trans[s1, c] = trans[ s2, c] para  c

5
Estados Equivalentes
Quais estados são equivalentes no autômato?
– trans[s1, c] = trans[ s2, c] para  c

6
Estados Equivalentes
Quais estados são equivalentes no autômato?
– trans[s1, c] = trans[ s2, c] para  c
– Os estados {3,6,7,8} e {6,7,8} são equivalentes?

7
Estados Equivalentes
Quais estados são equivalentes no autômato?
– trans[s1, c] = trans[ s2, c] para  c
– Os estados {3,6,7,8} e {6,7,8} são equivalentes?
NÃO!!! Embora ambos tenham a mesma função de transição, eles reconhecem tokens de tipos
diferentes. Somente estados finais reconhecendo o mesmo tipo de token podem ser
equivalentes.

8
Estados Equivalentes

• Como encontrar estados equivalentes?


– trans[s1, c] = trans[ s2, c] para  c
– Não é suficiente!!!

9
Estados Equivalentes

• Contra exemplo:

Os estados 2 e 4 são equivalentes, mas trans[2, a]  trans[4, a]

10
Estados Equivalentes

Estados Equivalentes

• Dois estados s1 e s2 são equivalentes quando o autômato aceita


uma cadeia w começando em s1  ele também aceita a mesma
cadeia w começando em s2

(s1, w) → cadeia aceita


e
(s2, w) → cadeia aceita

OU

(s1, w) → cadeia NÃO aceita


e
(s2, w) → cadeia NÃO aceita

11
Minimização de DFA: Método da Tabela

Minimização de DFA: Método do Preenchimento de Tabela

1) Desenhe uma tabela com todos os pares de estados (s1, s2)

2) Marque com um X na tabela as entradas [s1, s2] onde s1 é estado final


e s2 não é estado final, e vice versa (um estado final não pode ser
equivalente a um estado não final).

3) Se existe algum par de estados [s1, s2] não marcados com X, tal que a
função de transição [ (s1, c), (s2, c) ] está marcada na tabela, onde c
é um símbolo de entrada, então marque com X a entrada [s1, s2].
Repita esta etapa até que nenhuma nova entrada da tabela seja
marcada com X

4) Combine todos os pares [s1, s2] não marcados fazendo os mesmos um


único estado no autômato minimizado.

12
Minimização de DFA

13
Minimização de DFA

A B C D E F G H
A
B
C
D
E
F
G
H

14
Minimização de DFA

A B C D E F G H
A
B
C
D
E
F
G
H

15
Minimização de DFA

A B C D E F G H
A
B
C
D
E
F
G
H

16
Minimização de DFA

A B C D E F G H
A
B
C
D
E
F
G
H

17
Minimização de DFA

A
B
C
D
E
F
G
H
A B C D E F G H

18
Minimização de DFA

B
C
D
E
F
G
H
A B C D E F G

19
Minimização de DFA

0 1
B
A B F
C
B G C
D
*C A C
E
D C G
F
E H F
G
F C G

G G E
H
H G C A B C D E F G

20
Minimização de DFA

0 1
B
A B F
C
B G C
D
*C A C
E
D C G
F
E H F
G
F C G

G G E
H
H G C A B C D E F G

21
Minimização de DFA

0 1
B
A B F
C x x
B G C
D x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

22
Minimização de DFA

0 1
B
A B F
C x x
B G C
D x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

23
Minimização de DFA

0 1
B
A B F
C x x
B G C
D x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

24
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

25
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

26
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

27
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

28
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

29
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

30
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

31
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

32
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x
H G C A B C D E F G

33
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

34
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

35
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

36
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

37
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

38
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

39
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

40
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x x
E H F
G x
F C G

G G E
H x x
H G C A B C D E F G

41
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

42
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

43
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

44
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

45
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

46
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x
F C G

G G E
H x x
H G C A B C D E F G

47
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x x
F C G

G G E
H x x
H G C A B C D E F G

48
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x x
F C G

G G E
H x x
H G C A B C D E F G

49
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x x
F C G

G G E
H x x x
H G C A B C D E F G

50
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x
E H F
G x x x
F C G

G G E
H x x x
H G C A B C D E F G

51
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x
F C G

G G E
H x x x
H G C A B C D E F G

52
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x
F C G

G G E
H x x x
H G C A B C D E F G

53
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x
F C G

G G E
H x x x
H G C A B C D E F G

54
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x
F C G

G G E
H x x x
H G C A B C D E F G

55
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x
F C G

G G E
H x x x x
H G C A B C D E F G

56
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x
F C G

G G E
H x x x x
H G C A B C D E F G

57
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x
H G C A B C D E F G

58
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x
H G C A B C D E F G

59
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x x
H G C A B C D E F G

60
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x x
H G C A B C D E F G

61
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

62
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

63
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

64
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

65
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

66
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

67
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

68
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

69
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

70
Minimização de DFA

0 1
B x
A B F
C x x
B G C
D x x x
*C A C
E x x x
D C G
F x x x x
E H F
G x x x x x x
F C G

G G E
H x x x x x x
H G C A B C D E F G

71
Minimização de DFA

72
Minimização de DFA

B x
C x x
D x x x
E x x x
F x x x x
G x x x x x x
H x x x x x x
A B C D E F G

73
Lista de Exercícios

Lista 4

74

Você também pode gostar