Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Índice da seção

Autômatos Finitos Determinísticos (AFDs)

Um Autômato Finito Determinístico (AFD) é uma quintupla onde:

  • é um conjunto não-vazio e finito de estados internos.
  • é um alfabeto de entrada.
  • é uma função total de transição.
  • é o estado inicial.
  • é o conjunto de estados finais ou de aceitação.

O termo "determinístico" se refere ao fato de que, para cada entrada, existe apenas um estado ao qual o autômato pode transitar a partir de seu estado atual (HOPCROFT; MOTWANI; ULLMAN, 2003, p. 48). Isto, os AFD's são autômatos finitos que podem estar em apenas um estado em cada instante de tempo.

Exemplo

A estrutura com e , é um AFD e pode ser representado pelo grafo a seguir:

DFAq₀q₀qi->q₀q₁q₁q₀->q₁aq₁->q₀a

Exemplo

A estrutura com , , , , e , é um AFD e pode ser representado pelo grafo a seguir:

DFAs₀s₀si->s₀s₁s₁s₀->s₁0s₂s₂s₀->s₂1s₁->s₁1s₁->s₂0s₂->s₁0,1

A função de transição pode ser interpretada semanticamente como sendo o programa que o autômato executa, assim uma aplicação qualquer de é uma instrução do programa do autômato. Por exemplo, a aplicação significa que, o AFD muda do estado atual para o estado quando o mecanismo de leitura lê o símbolo na memória.

Funcionamento de um AFD

Observe que , em sua definição básica, não processa cadeias completas, mas apenas símbolos individualmente. Para que o AFD seja capaz de manipular palavras inteiras, precisamos estender a função de transição, de modo que ela represente a execução completa do “programa” sobre uma sequência de símbolos.

Seja um AFD , a função estentida de , denotada por , é , tal que:

Exemplo

A partir da definição da função de transição estendida, podemos compreender partir para a compreensão do funcionamento de AFDs. Formalizaremos tais conceitos a seguir.

Seja um AFD e seja , uma computação de em corresponde a aplicação de .

Exemplo

Exemplo

Seja um AFD e seja é dito que é reconhecida por sempre que .

Exemplo

Seja um AFD, a linguagem reconhecida (computada) , denotada por , corresponde ao conjunto:

Isto é, a linguagem de um AFD é o conjunto de todas as palavras reconhecidas por .

Exemplo

Exemplo

Classes Formais

Com a compreensão mais consolidade de autômatos finitos determinísticos, já somos capazes de formalizar a primeira classe de linguagens formais, sendo esta a classe das linguagens regulares.

Seja uma linguagem qualquer, é dita linguagem regular se, e somente se, existe um AFD tal que . A classe de todas as linguagens regulares é denotada por .