Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Notas aula2 AFDs, Notas de aula de Informática

Automatos Finitos Deteministicos

Tipologia: Notas de aula

2013

Compartilhado em 15/03/2013

samuel-santos-98
samuel-santos-98 🇧🇷

5

(5)

44 documentos

1 / 28

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Autômatos Finitos
Determinísticos
Universidade Federal de Campina Grande UFCG
Centro de Engenharia Elétrica e Informática CEEI
Departamento de Sistemas e Computação DSC
Professor: Andrey Brito
Disciplina: Teoria da Computação Período: 2012.2
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Pré-visualização parcial do texto

Baixe Notas aula2 AFDs e outras Notas de aula em PDF para Informática, somente na Docsity!

Autômatos Finitos

Determinísticos

Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Professor: Andrey Brito Disciplina: Teoria da Computação Período: 2012.

Na última aula...

  • Estado: representar o que precisar ser

lembrado durante a solução de um problema

  • Diagrama de estado: apresenta os estado e

como ocorre uma mudança entre eles na

medida em que a entrada é processada

  • Estado inicial: onde o sistema começa

Ainda...

  • Um AF M é uma 5-tupla <Q, , δ, q 0 , F>
    • Q é um conjunto finito e não-vazio chamado de conjunto de estados
    •  é um conjunto finito e não-vazio chamado de alfabeto
    • δ : Q    Q é a função (total) de transição do autômato
    • q 0  Q é o estado inicial
    • F  Q é o conjunto de estados finais

Exemplo

  • Definição formal
    • 3 estados: {q 1 , q 2 , q 3 }
    • Estado inicial: q 1
    • Estados finais: {q 2 }
    • Alfabeto: {0,1}
    • Conjunto de transições (regras): - Diagrama de estados

0 1 q 1 q 1 q 2 q 2 q 3 q 2 q 3 q 2 q 2

Trabalhando com AFs

  • Que tipo de entrada faz este autômato sair do

estado inicial e chegar no estado final?

  • Quais palavras fazem o autômato responder SIM?
  • Esta é a linguagem do AF
  • Linguagem: conjunto de palavras para as quais o autômato responde SIM  Aceita
  • Quando um autômato diz NÃO, ele rejeita a palavra

Trabalhando com AFs (2)

  • O que queremos dos AFs?
    • Em geral, saber exatamente que tipo de problemas eles resolvem
    • Exemplo:
      • Existe um que consegue procurar uma “substring” dentro de uma entrada
      • Existe um que consegue decidir se uma cadeia de entrada tem comprimento par
      • Existe um que consegue distinguir se uma expressão algébrica faz sentido? Exemplo: a+b*((c+d)/a)

Desenvolvendo autômatos finitos

  • Desenvolva um autômato que verifique a

ocorrência do padrão 001 em uma entrada

  • Olhando símbolo a símbolo, o autômato precisa sinalizar se a dada sequência aconteceu, usando apenas uma memória limitada
  • Estratégia: se coloque no lugar do autômato

Desenvolvendo autômatos finitos

  • Candidatos a estado: o que deve ser lembrado

no final?

  • Vi a sequência (aceitação)
  • Não vi a sequência ainda

SIM NÃO

Desenvolvendo autômatos finitos

  • É possível mudar desses dois estados para o

outro? Com um só símbolo? Sempre ou

depende do que aconteceu antes?

SIM NÃO

Desenvolvendo autômatos finitos

  • Se eu já vi o padrão, não importa o resto da

sequência

SIM? NÃO

Desenvolvendo autômatos finitos

  • Se não vi o padrão ainda... mas vi o que pode ser

um pedaço dele

  • Vi um 0
  • Vi um 00

0

SIM NÃO

00

Desenvolvendo autômatos finitos

  • Que outras possibilidades existem? Que arcos

faltam? (Que buracos eu teria na tabela?)

0

SIM NÃO

00

Desenvolvendo autômatos finitos

  • Tinha visto um 00, mas recebi um novo 0

0

SIM NÃO

00

Desenvolvendo autômatos finitos

  • Atualmente, não tenho nem uma parte do

padrão

0

SIM NÃO

00