Autómato finito não determinista

Um autómato finito não determinista é um autómato finito onde:

  • as transições estão associadas a símbolos individuais do alfabeto ou à palavra vazia (ε);

  • de cada estado saem zero ou mais transições por cada símbolo do alfabeto ou ε;

  • há um estado inicial;

  • zero ou mais estados de aceitação, que determinam as palavras aceites;

  • uma dada palavra sobre o alfabeto faz o sistema avançar do estado inicial a zero ou mais estados finais, determinando estes a aceitação ou rejeição da palavra.

Os arcos múltiplos permitem alternativas de reconhecimento.

Os arcos ausentes representam quedas num estado de morte (estado não representado, logo implicando palavra não reconhecida).

AFND: exemplo

Um possível diagrama de transição para um AFND que reconhece a expressão regular (a|b)*abb é o seguinte:

É bem evidente o efeito do fecho de Kleene no diagrama, assim como a alternativa (a | b) e as sequências.

AFND: caminhos alternativos

Será que a palavra aabb pertence esta linguagem?

Existem 3 caminhos alternativos no diagrama:

Apenas o último termina no estado final.

Podemos representar estes caminhos com uma estrutura tipo árvore (deitada):

AFND: exemplo

Considerando o alfabeto A = {a;b;c}, que palavras são reconhecidas pelo autómato seguinte:

Como expressão regular: (a|b|c)*a(b|c)

AFND: exemplo com transições ε

Considere o seguinte AFND sobre o alfabeto A = {0;1}:

Há 6 caminhos possíveis:

AFND: exemplo com transições ε

Que palavras são reconhecidas por este autómato?

Todas as palavras terminadas em 11 ou 101.

Como expressão regular: (0|1)*10?1

AFND: definição formal

AFND: outro exemplo

Represente analiticamente o AFND:

Como expressão regular: (0|1)*1(0|ε)1

Ou alternativamente: (0|1)*1(0)?1

AFND: linguagem reconhecida

Tabelas de transição

Podemos representar um AFND por uma tabela de transição, em que as linhas correspondem aos estados, e as colunas aos símbolos de entrada incluindo a palavra vazia (Aε).

A tabela de transição para o AFND:

é a seguinte:

Last updated