SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
PROF. WELLINGTON DELLA MURA
CIÊNCIA DA COMPUTAÇÃO (CAMPUS LUIZ MENEGHEL - BANDEIRANTES)
UNIVERSIDADE ESTADUAL DO NORTE DO PARANÁ
Equivalência entre Autômatos Finitos
Determinísticos e Não Determinísticos
Teoria da Computação
ROTEIRO
1. Determinismo
2. Não determinismo
3. Computação dos autômatos finitos
4. Equivalência entre AFND e AFD
5. Simulações com JFLAP
6. Resumo da Aula
ANTES DE INICIAR
RESUMO DO QUE JÁ FOI ESTUDADO
Máquina de
Estados Finitos
Palavra w
ACEITA
REJEITA
b a a b a
Função de
Transiçãoq0
𝛿 𝑞0, 𝑏 = 𝑞1
• Uma linguagem formal consiste em um conjunto de palavras
que possuem as mesmas propriedades (ou padrões).
• Cada palavra é uma sequencia de símbolos de um alfabeto.
Máquina de Estados Finitos
Formalismo Reconhecedor: Autômato Finito
Importante:
AUTÔMATOS
FINITOS
DETERMINÍSTICOS
 Formalismo Reconhecedor
 Recebe uma palavra w e indica se ela é aceita ou rejeitada
 Segue critérios e propriedades da Linguagem Formal L
 Para cada símbolo lido, alterna sua
computação para um novo estado
a b
→q0 q1 q2
Q1 qn -
... ... ...
*qn q1 q2
AUTÔMATOS
FINITOS NÃO
DETERMINÍSTICOS
 Da mesma forma que o AFD, recebe uma palavra w e indica se
ela é aceita ou rejeitada
 A principal diferença:
 Para cada símbolo lido, pode alternar sua
computação para
mais de um novo estado
a b
→q0 {q1, ..., qn} {q1, ..., qn}
Q1 {q2, q3} {}
... ... ...
*qn {q2} {q2}
EXEMPLO
COMPUTAÇÃO DOS AUTÔMATOS FINITOS
 Considere a linguagem
L = {w ∈ {a, b, c}* | w termina com cab}
 O autômato finito determinístico capaz de reconhecer L pode ter
qualquer prefixo presente em {a, b, c}* mas deve buscar o padrão cab
no final da palavra.
 Por exemplo: ababacab, bbbbcab, cabcab
SOLUÇÃO
DETERMINÍSTICA
COMPUTAÇÃO DA SOLUÇÃO DETERMINÍSTICA
acacab
Considere a entrada
SOLUÇÃO
NÃO DETERMINÍSTICA
COMPUTAÇÃO DA SOLUÇÃO DETERMINÍSTICA
acacab
Considere a entrada
ALGORITMO
EQUIVALÊNCIA ENTRE AFND E AFD
 Prova: (por indução)
 Mostra que
 a partir de um AFND M qualquer
 É possível construir um AFD MD que realize as mesmas computações
 MD simula M
 Logo, AFND → AFD
 estados de MD simulam combinações de estados alternativos de M
EQUIVALÊNCIA ENTRE AFND E AFD
COMO FUNCIONA O ALGORITMO
EQUIVALÊNCIA ENTRE AFND E AFD
DEFINIÇÃO FORMAL DO ALGORITMO
M = (, Q, , q0, F) um AFN qualquer.
AFD construído MD = (, QD, D, q0, FD)
• QD – todas as combinações, sem repetições, de estados de Q
• notação q1q2qn
• ordem não distingue combinações: quqv = qvqu
• imagem de todos os estados alternativos de M
• D: QD   → QD
D(q1qn, a) = p1pm sse *({ q1, , qn }, a) = { p1, , pm } em particular:
D(q1qn, a) é indefinida sse *({ q1, , qn }, a) = 
• q0 – estado inicial
• FD - conjunto de estados q1q2qn pertencentes a QD
 alguma componente qi pertence a F, para i em { 1, 2, , n }
EXEMPLO DE APLICAÇÃO
SOLUÇÃO NÃO DETERMINÍSTICA
Q = {q0, q1, q2, q3}
∑ = {a, b, c}
F = {q3}
 a b c
→q0 {q0} {q0} {q0, q1}
q1 {q2} {} {}
q2 {} {q3} {}
*q3 {} {} {}
EXEMPLO DE APLICAÇÃO
CONSTRUÇÃO DOS ESTADOS
∑ = {a, b, c} se mantém
Q = {q0, q1, q2, q3}
Qd = 2Q
↳ 2Q ={{q0},{q1},{q2},{q2},{q0, q1}... }
q0d = <q0>
F = {q3}
Fd = {<q1q3>, <q0q3>, <q1q2q3>,...}
↳ Todo estado de Fd que contém um elemento de F
q0 q1 q2 q3 estado
0 0 0 1 <q3>
0 0 1 0 <q2>
0 0 1 1 <q2q3>
0 1 0 0 <q1>
0 1 0 1 <q1q3>
0 1 1 0 <q1q2>
0 1 1 1 <q1q2q3>
...
1 1 1 1 <q1q2q3q4>
EXEMPLO DE APLICAÇÃO
CONSTRUÇÃO DAS TRANSIÇÕES
Qd = {{q0},{q1},{q2},{q2},{q0, q1}... }
Para d (<q0>, c) => (q0, c)
(q0, c) = {q0, q1}
↳ d(<q0>, c) = <q0q1>
Para d (<q0q1>, a) => (q0, a)  (q1, a)
(q0, a) = {q0}
(q1, a) = {q2}
↳ d(<q0q1>, a) = <q0q2>
 a b c
<q0> <q0> <q0> <q0q1>
<q1> <q2> - -
<q2> - <q3> -
<q3> - - -
<q0q1> <q0q2> <q0> <q0q1>
...
<q0q1q2q3> <q0q2> <q0q3> <q0q1>
EXEMPLO DE APLICAÇÃO
CONSTRUÇÃO DAS TRANSIÇÕES
Qd = {{q0},{q1},{q2},{q2},{q0, q1}... }
Para d (<q0>, c) => (q0, c)
(q0, c) = {q0, q1}
↳ d(<q0>, c) = <q0q1>
Para d (<q0q1>, a) => (q0, a)  (q1, a)
(q0, a) = {q0}
(q1, a) = {q2}
↳ d(<q0q1>, a) = <q0q2>
 a b c
<q0> <q0> <q0> <q0q1>
<q1> <q2> - -
<q2> - <q3> -
<q3> - - -
<q0q1> <q0q2> <q0> <q0q1>
...
<q0q1q2q3> <q0q2> <q0q3> <q0q1>
EXEMPLO DE APLICAÇÃO
PODA DAS TRANSIÇÕES (OTIMIZAÇÃO)
 a b c
<q0> <q0> <q0> <q0q1>
<q0q1> <q0q2> <q0> <q0q1>
<q0q2> <q0> <q0q3> <q0q1>
<q0q3> <q0> <q0> <q0q1>
RESULTADO

Mais conteúdo relacionado

Mais procurados

Introdução à Lógica de Predicados
Introdução à Lógica de PredicadosIntrodução à Lógica de Predicados
Introdução à Lógica de PredicadosHugo Souza
 
Theory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Theory of computation:Finite Automata, Regualr Expression, Pumping LemmaTheory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Theory of computation:Finite Automata, Regualr Expression, Pumping LemmaPRAVEENTALARI4
 
Apresentacao mochila - parte 1
Apresentacao mochila - parte 1Apresentacao mochila - parte 1
Apresentacao mochila - parte 1Bianca Dantas
 
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...Sérgio Dias
 
Função quadrática 10º exercicios
Função quadrática 10º exerciciosFunção quadrática 10º exercicios
Função quadrática 10º exerciciosAna Tapadinhas
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de Bayes
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de BayesEstatística Inferencial - 4 Probabilidade Condicional e Teorema de Bayes
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de BayesRanilson Paiva
 
Apresentação Mac OS
Apresentação Mac OSApresentação Mac OS
Apresentação Mac OSguestf2a4bc5
 
Mat inequacoes do primeiro grau
Mat inequacoes do primeiro grauMat inequacoes do primeiro grau
Mat inequacoes do primeiro grautrigono_metria
 
Gerência de Processos: Deadlocks
Gerência de Processos: DeadlocksGerência de Processos: Deadlocks
Gerência de Processos: DeadlocksAlexandre Duarte
 
Probabilidade. 3º ano
Probabilidade. 3º anoProbabilidade. 3º ano
Probabilidade. 3º anowelixon
 
(Aula 3) equações logaritmicas
(Aula 3) equações logaritmicas(Aula 3) equações logaritmicas
(Aula 3) equações logaritmicasnetaulasifpaitb
 
Exercícios Resolvidos: Regra da cadeia
Exercícios Resolvidos: Regra da cadeia Exercícios Resolvidos: Regra da cadeia
Exercícios Resolvidos: Regra da cadeia Diego Oliveira
 
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)Adriano Teixeira de Souza
 

Mais procurados (20)

Topic Models
Topic ModelsTopic Models
Topic Models
 
Introdução à Lógica de Predicados
Introdução à Lógica de PredicadosIntrodução à Lógica de Predicados
Introdução à Lógica de Predicados
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
 
Estudo da reta
Estudo da retaEstudo da reta
Estudo da reta
 
Analise 1
Analise 1Analise 1
Analise 1
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
Theory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Theory of computation:Finite Automata, Regualr Expression, Pumping LemmaTheory of computation:Finite Automata, Regualr Expression, Pumping Lemma
Theory of computation:Finite Automata, Regualr Expression, Pumping Lemma
 
Apresentacao mochila - parte 1
Apresentacao mochila - parte 1Apresentacao mochila - parte 1
Apresentacao mochila - parte 1
 
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre ...
 
Função quadrática 10º exercicios
Função quadrática 10º exerciciosFunção quadrática 10º exercicios
Função quadrática 10º exercicios
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de Bayes
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de BayesEstatística Inferencial - 4 Probabilidade Condicional e Teorema de Bayes
Estatística Inferencial - 4 Probabilidade Condicional e Teorema de Bayes
 
Apresentação Mac OS
Apresentação Mac OSApresentação Mac OS
Apresentação Mac OS
 
Theory of Computation Unit 3
Theory of Computation Unit 3Theory of Computation Unit 3
Theory of Computation Unit 3
 
Mat inequacoes do primeiro grau
Mat inequacoes do primeiro grauMat inequacoes do primeiro grau
Mat inequacoes do primeiro grau
 
Gerência de Processos: Deadlocks
Gerência de Processos: DeadlocksGerência de Processos: Deadlocks
Gerência de Processos: Deadlocks
 
Probabilidade. 3º ano
Probabilidade. 3º anoProbabilidade. 3º ano
Probabilidade. 3º ano
 
(Aula 3) equações logaritmicas
(Aula 3) equações logaritmicas(Aula 3) equações logaritmicas
(Aula 3) equações logaritmicas
 
Exercícios Resolvidos: Regra da cadeia
Exercícios Resolvidos: Regra da cadeia Exercícios Resolvidos: Regra da cadeia
Exercícios Resolvidos: Regra da cadeia
 
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
 

Semelhante a AFND x AFD Equivalência

Teoria da Computação - Fecho sob as operacoes regulares
Teoria da Computação - Fecho sob as operacoes regularesTeoria da Computação - Fecho sob as operacoes regulares
Teoria da Computação - Fecho sob as operacoes regularesIFCE
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministicowab030
 
2º/2012 - Prova 01 de Autômatos e Computabilidade
2º/2012 - Prova 01 de Autômatos e Computabilidade2º/2012 - Prova 01 de Autômatos e Computabilidade
2º/2012 - Prova 01 de Autômatos e Computabilidadeshichibukai_01
 
Aula 9 propriedadedas linguagensregulares
Aula 9   propriedadedas linguagensregularesAula 9   propriedadedas linguagensregulares
Aula 9 propriedadedas linguagensregulareswab030
 
Aula 12 revisãodos exercícios
Aula 12   revisãodos exercíciosAula 12   revisãodos exercícios
Aula 12 revisãodos exercícioswab030
 
Exerciciosde automatosfinitosdeterministicossemresolucao
Exerciciosde automatosfinitosdeterministicossemresolucaoExerciciosde automatosfinitosdeterministicossemresolucao
Exerciciosde automatosfinitosdeterministicossemresolucaowab030
 
Exerciciosde automatosfinitosnaodeterministicos
Exerciciosde automatosfinitosnaodeterministicosExerciciosde automatosfinitosnaodeterministicos
Exerciciosde automatosfinitosnaodeterministicoswab030
 

Semelhante a AFND x AFD Equivalência (8)

Teoria da Computação - Fecho sob as operacoes regulares
Teoria da Computação - Fecho sob as operacoes regularesTeoria da Computação - Fecho sob as operacoes regulares
Teoria da Computação - Fecho sob as operacoes regulares
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministico
 
2º/2012 - Prova 01 de Autômatos e Computabilidade
2º/2012 - Prova 01 de Autômatos e Computabilidade2º/2012 - Prova 01 de Autômatos e Computabilidade
2º/2012 - Prova 01 de Autômatos e Computabilidade
 
Aula 9 propriedadedas linguagensregulares
Aula 9   propriedadedas linguagensregularesAula 9   propriedadedas linguagensregulares
Aula 9 propriedadedas linguagensregulares
 
Lista tc02
Lista tc02Lista tc02
Lista tc02
 
Aula 12 revisãodos exercícios
Aula 12   revisãodos exercíciosAula 12   revisãodos exercícios
Aula 12 revisãodos exercícios
 
Exerciciosde automatosfinitosdeterministicossemresolucao
Exerciciosde automatosfinitosdeterministicossemresolucaoExerciciosde automatosfinitosdeterministicossemresolucao
Exerciciosde automatosfinitosdeterministicossemresolucao
 
Exerciciosde automatosfinitosnaodeterministicos
Exerciciosde automatosfinitosnaodeterministicosExerciciosde automatosfinitosnaodeterministicos
Exerciciosde automatosfinitosnaodeterministicos
 

Último

"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
historia Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppthistoria Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.pptErnandesLinhares1
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficasprofcamilamanz
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Vitor Mineiro
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxSamiraMiresVieiradeM
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdflucassilva721057
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfMarianaMoraesMathias
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxBeatrizLittig1
 
RedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfRedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfAlissonMiranda22
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumAugusto Costa
 

Último (20)

"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
historia Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppthistoria Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppt
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficas
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdf
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docx
 
RedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfRedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdf
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
 

AFND x AFD Equivalência

  • 1. PROF. WELLINGTON DELLA MURA CIÊNCIA DA COMPUTAÇÃO (CAMPUS LUIZ MENEGHEL - BANDEIRANTES) UNIVERSIDADE ESTADUAL DO NORTE DO PARANÁ Equivalência entre Autômatos Finitos Determinísticos e Não Determinísticos Teoria da Computação
  • 2. ROTEIRO 1. Determinismo 2. Não determinismo 3. Computação dos autômatos finitos 4. Equivalência entre AFND e AFD 5. Simulações com JFLAP 6. Resumo da Aula
  • 3. ANTES DE INICIAR RESUMO DO QUE JÁ FOI ESTUDADO Máquina de Estados Finitos Palavra w ACEITA REJEITA b a a b a Função de Transiçãoq0 𝛿 𝑞0, 𝑏 = 𝑞1 • Uma linguagem formal consiste em um conjunto de palavras que possuem as mesmas propriedades (ou padrões). • Cada palavra é uma sequencia de símbolos de um alfabeto. Máquina de Estados Finitos Formalismo Reconhecedor: Autômato Finito Importante:
  • 4. AUTÔMATOS FINITOS DETERMINÍSTICOS  Formalismo Reconhecedor  Recebe uma palavra w e indica se ela é aceita ou rejeitada  Segue critérios e propriedades da Linguagem Formal L  Para cada símbolo lido, alterna sua computação para um novo estado a b →q0 q1 q2 Q1 qn - ... ... ... *qn q1 q2
  • 5. AUTÔMATOS FINITOS NÃO DETERMINÍSTICOS  Da mesma forma que o AFD, recebe uma palavra w e indica se ela é aceita ou rejeitada  A principal diferença:  Para cada símbolo lido, pode alternar sua computação para mais de um novo estado a b →q0 {q1, ..., qn} {q1, ..., qn} Q1 {q2, q3} {} ... ... ... *qn {q2} {q2}
  • 6. EXEMPLO COMPUTAÇÃO DOS AUTÔMATOS FINITOS  Considere a linguagem L = {w ∈ {a, b, c}* | w termina com cab}  O autômato finito determinístico capaz de reconhecer L pode ter qualquer prefixo presente em {a, b, c}* mas deve buscar o padrão cab no final da palavra.  Por exemplo: ababacab, bbbbcab, cabcab
  • 8. COMPUTAÇÃO DA SOLUÇÃO DETERMINÍSTICA acacab Considere a entrada
  • 10. COMPUTAÇÃO DA SOLUÇÃO DETERMINÍSTICA acacab Considere a entrada
  • 11. ALGORITMO EQUIVALÊNCIA ENTRE AFND E AFD  Prova: (por indução)  Mostra que  a partir de um AFND M qualquer  É possível construir um AFD MD que realize as mesmas computações  MD simula M  Logo, AFND → AFD  estados de MD simulam combinações de estados alternativos de M
  • 12. EQUIVALÊNCIA ENTRE AFND E AFD COMO FUNCIONA O ALGORITMO
  • 13. EQUIVALÊNCIA ENTRE AFND E AFD DEFINIÇÃO FORMAL DO ALGORITMO M = (, Q, , q0, F) um AFN qualquer. AFD construído MD = (, QD, D, q0, FD) • QD – todas as combinações, sem repetições, de estados de Q • notação q1q2qn • ordem não distingue combinações: quqv = qvqu • imagem de todos os estados alternativos de M • D: QD   → QD D(q1qn, a) = p1pm sse *({ q1, , qn }, a) = { p1, , pm } em particular: D(q1qn, a) é indefinida sse *({ q1, , qn }, a) =  • q0 – estado inicial • FD - conjunto de estados q1q2qn pertencentes a QD  alguma componente qi pertence a F, para i em { 1, 2, , n }
  • 14. EXEMPLO DE APLICAÇÃO SOLUÇÃO NÃO DETERMINÍSTICA Q = {q0, q1, q2, q3} ∑ = {a, b, c} F = {q3}  a b c →q0 {q0} {q0} {q0, q1} q1 {q2} {} {} q2 {} {q3} {} *q3 {} {} {}
  • 15. EXEMPLO DE APLICAÇÃO CONSTRUÇÃO DOS ESTADOS ∑ = {a, b, c} se mantém Q = {q0, q1, q2, q3} Qd = 2Q ↳ 2Q ={{q0},{q1},{q2},{q2},{q0, q1}... } q0d = <q0> F = {q3} Fd = {<q1q3>, <q0q3>, <q1q2q3>,...} ↳ Todo estado de Fd que contém um elemento de F q0 q1 q2 q3 estado 0 0 0 1 <q3> 0 0 1 0 <q2> 0 0 1 1 <q2q3> 0 1 0 0 <q1> 0 1 0 1 <q1q3> 0 1 1 0 <q1q2> 0 1 1 1 <q1q2q3> ... 1 1 1 1 <q1q2q3q4>
  • 16. EXEMPLO DE APLICAÇÃO CONSTRUÇÃO DAS TRANSIÇÕES Qd = {{q0},{q1},{q2},{q2},{q0, q1}... } Para d (<q0>, c) => (q0, c) (q0, c) = {q0, q1} ↳ d(<q0>, c) = <q0q1> Para d (<q0q1>, a) => (q0, a)  (q1, a) (q0, a) = {q0} (q1, a) = {q2} ↳ d(<q0q1>, a) = <q0q2>  a b c <q0> <q0> <q0> <q0q1> <q1> <q2> - - <q2> - <q3> - <q3> - - - <q0q1> <q0q2> <q0> <q0q1> ... <q0q1q2q3> <q0q2> <q0q3> <q0q1>
  • 17. EXEMPLO DE APLICAÇÃO CONSTRUÇÃO DAS TRANSIÇÕES Qd = {{q0},{q1},{q2},{q2},{q0, q1}... } Para d (<q0>, c) => (q0, c) (q0, c) = {q0, q1} ↳ d(<q0>, c) = <q0q1> Para d (<q0q1>, a) => (q0, a)  (q1, a) (q0, a) = {q0} (q1, a) = {q2} ↳ d(<q0q1>, a) = <q0q2>  a b c <q0> <q0> <q0> <q0q1> <q1> <q2> - - <q2> - <q3> - <q3> - - - <q0q1> <q0q2> <q0> <q0q1> ... <q0q1q2q3> <q0q2> <q0q3> <q0q1>
  • 18. EXEMPLO DE APLICAÇÃO PODA DAS TRANSIÇÕES (OTIMIZAÇÃO)  a b c <q0> <q0> <q0> <q0q1> <q0q1> <q0q2> <q0> <q0q1> <q0q2> <q0> <q0q3> <q0q1> <q0q3> <q0> <q0> <q0q1>