A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ling. Formais e Autômatos Autômatos finitos

Apresentações semelhantes


Apresentação em tema: "Ling. Formais e Autômatos Autômatos finitos"— Transcrição da apresentação:

1 Ling. Formais e Autômatos Autômatos finitos

2 Na aula de hoje... Autômatos finitos Introdução AF Determinístico
AF Não-determinístico Equivalência entre AFD e AFN

3 Modelo matemático de um sistema, com entradas e saídas discretas
1. Introdução Um Autômato Finito é um sistema de estados finitos, o qual constitui um modelo computacional seqüencial Modelo matemático de um sistema, com entradas e saídas discretas estado estímulo externo

4 Exemplo Travessia do rio
Um grupo formado por um homem, um lobo, uma cabra e um repolho, posicionados do lado esquerdo da margem de um rio. O problema consiste em transportá-los para a margem direita. existe um barco com capacidade para transportar somente o homem e um dos outros três elementos do grupo o lobo e a cabra não podem ficar sozinhos no mesmo lado a cabra e o repolho também não podem ficar sozinhos

5 Exemplo H L C R

6 Exemplo HC H H HC HL HL HR HR HÁ INFINITAS SOLUÇÕES PARA O PROBLEMA!
HLCR/ ─ LR/HC HLR/C H HC HL HL HR HR R/HLC L/HCR HÁ INFINITAS SOLUÇÕES PARA O PROBLEMA! HC HC HC HC HCR/L HLC/R H: homem L: lobo C: cabra R: repolho HR HL HR HL C/HLR HC H HC/LR ─/HLCR H HC

7 Autômato Finito Determinístico
Definição O autômato finito determinístico é aquele que se encontra em um único estado depois de ler uma seqüência qualquer de entradas O termo “determinístico” se refere ao fato de que, para cada entrada, existe um e somente um estado ao qual o autômato pode transitar a partir de seu estado atual q0 a b q1 q2

8 Autômato Finito Determinístico
Definição Um autômato finito determinístico consiste em: Um conjunto finito de estados: Q Um conjunto finito de símbolos de entrada: Σ Uma função de transição que toma como argumentos um estado e um símbolo de entrada, e retorna um estado: δ Um estado inicial (que está em Q) Um conjunto de estados finais F (F é um subconjunto de Q)

9 Autômato Finito Determinístico
Notação: A = (Q, Σ, δ, q0, F)

10 Exemplo 1 L = { w | w é uma seqüência de 0’s e 1’s, com número par de 0’s e de 1’s } Como seria o AFD que aceita essa linguagem?

11 L = { w | w é uma seqüência de 0’s e 1’s,
Exemplo 1 L = { w | w é uma seqüência de 0’s e 1’s, com número par de 0’s e de 1’s } 1 P0P1 P0I1 1 1 I0P1 I0I1 1

12 Exemplo 2 L = { w | w é um número binário múltiplo de 3 } Como seria o AFD que aceita essa linguagem?

13 L = { w | w é um número binário múltiplo de 3 }
Exemplo 2 L = { w | w é um número binário múltiplo de 3 } 1 Resto Resto 1 Resto 2 1 1 Esse AFD aceita cadeia vazia - ε

14 L = { w | w é um número binário múltiplo de 3 }
Exemplo 2 L = { w | w é um número binário múltiplo de 3 } Início 1 1 Resto Resto 1 Resto 2 1 1 Esse AFD não aceita cadeia vazia - ε

15 L(A) = { w | δ(q0, w) está em F }
Linguagem de um AFD A linguagem de um AFD A = (Q, Σ, δ, q0, F) é denotada por L(A) e definida por: L(A) = { w | δ(q0, w) está em F } ^

16 Autômato Finito Não-determinístico
Definição O autômato finito não-determinístico pode estar em vários estados ao mesmo tempo Capacidade de “adivinhar” algo sobre sua entrada O AFN aceita as mesmas linguagens aceitas por um AFD São mais sucintos e mais fáceis de projetar q0 a a q1 q2

17 Autômato Finito Não-determinístico
Definição Um autômato finito não-determinístico consiste em: Um conjunto finito de estados: Q Um conjunto finito de símbolos de entrada: Σ Uma função de transição que toma como argumentos um estado e um símbolo de entrada, e retorna um subconjunto de Q: δ Um estado inicial (que está em Q) Um conjunto de estados finais F (F é um subconjunto de Q)

18 Autômato Finito Não-determinístico
Notação: A = (Q, Σ, δ, q0, F)

19 Exemplo L = { w | w aceita todas as strings que terminam em 01 } Como seria o AFN que aceita essa linguagem?

20 L = { w | w aceita todas as strings que terminam em 01 }
Exemplo L = { w | w aceita todas as strings que terminam em 01 } q0 q1 q2 1 0, 1 O fato de outras escolhas usando os símbolos de entrada de w levarem a um estado de não-aceitação ou não levarem a nenhum estado em absoluto (a seqüência de estados “morre”), não impede w de ser aceito pelo AFN como um todo,

21 q2 é um estado de aceitação, então 00101 é aceito!
Exemplo L = { w | w aceita todas as strings que terminam em 01 } q0 q0 q0 q0 q0 q0 q1 q1 q1 q2 q2 q2 é um estado de aceitação, então é aceito! paralisado paralisado

22 Linguagem de um AFN A linguagem de um AFN A = (Q, Σ, δ, q0, F) é denotada por L(A) e definida por: L(A) = { w | δ(q0, w) ∩ F ≠ Ø } ^

23 Equivalência entre AFD e AFN
Introdução Toda linguagem que pode ser descrita por um AFN também pode ser descrita por um AFD Na prática, um AFD tem quase tantos estados quanto os que o AFN tem, embora com freqüência tenha mais transições No pior caso, o menor AFD pode ter 2n estados, enquanto o menor AFN para a mesma linguagem tem apenas n estados

24 L = { w | w aceita todas as strings que terminam em 01 }
Exemplo L = { w | w aceita todas as strings que terminam em 01 } q0 q1 q2 1 0, 1 0 1 {q0} {q0,q1} {q0} {q1} ─ {q2} {q2} ─ ─ *

25 L = { w | w aceita todas as strings que terminam em 01 }
Exemplo L = { w | w aceita todas as strings que terminam em 01 } q0 q1 q2 1 0, 1 Como o conjunto de estados é {q0, q1, q2}, a construção de subconjuntos produz um AFD com 23 = 8 estados

26 O oitavo estado, que não aparece na lista, seria o estado Ø
Exemplo q0 q1 q2 1 0, 1 0 1 {q0} {q0,q1} {q0} {q1} ─ {q2} {q2} ─ ─ {q0,q1} {q0,q1} {q0,q2} {q0,q2} {q0,q1} {q0} {q1,q2} ─ {q2} {q0,q1,q2} {q0,q1} {q0,q2} O oitavo estado, que não aparece na lista, seria o estado Ø * * * *

27 Exemplo 1 q0 q1 q2 1 1 1 q0q1q2 q0q1 q0q2 q1q2 1 1

28 Exemplo 1 q0 q1 q2 1 1 1 q0q1q2 q0q1 q0q2 q1q2 1 1 De todos os estados listados, só podemos acessar os estados {q0}, {q0q1} e {q0q2}. Os estados inacessíveis não precisam constar. Portanto...

29 Exemplo 1 q0 q0q1 q0q2 1 1

30 Na próxima aula... AF com ε-transições Expressões regulares Introdução
Operadores

31 Sérgio Donizetti Zorzo
Paulo R. M. Cereda Universidade Federal de São Carlos


Carregar ppt "Ling. Formais e Autômatos Autômatos finitos"

Apresentações semelhantes


Anúncios Google