Sei sulla pagina 1di 4

Autômato Finito com Movimentos Vazios (AFε)

Um movimento vazio é uma transição sem leitura de símbolo algum da fita

Definição:

É uma 5-upla M = (∑, Q, δ, q0, F)

∑: Alfabeto
Q: Conjunto de estados do autômato
δ: Função programa/transição
Q x (∑ ∪ {ε}) → 2Q
q0: Estado inicial (q0 ∈ Q)
F: Conjunto de estados finais (F ⊂ Q)

Representação gráfica:

δ(q0, ε) = {q0, q1}

Condições de parada do AFε

1. Aceita a palavra:
o Uma palavra é aceita se após ler toda a palavra o AFε assume um estado final por
pelo menos um dos caminhos alternativos.

2. Rejeita a palavra. Se ocorrerem apenas as seguintes situações para os caminhos


alternativos de processamento:

o Após ler toda a palavra o AFε assume somente estados não finais.

o A função programa não é definida para os argumentos (estado corrente e símbolo


lido da fita)
Exemplos:

L1 = {w | é palavra sobre {a, b} e qualquer símbolo “a” antecede qualquer símbolo “b”}

Representação matricial:

M1 = ({a, b}, {q0, q1}, δ, q0, {q1})

a b ε
q0 {q0} - {q0, q1}
q1 - {q1} {q1}

L2 = {w | é palavra sobre {x, y} formada por uma ou mais sequências “xy”}

Representação matricial:

M2 = ({x, y}, {q0, q1, q2}, δ, q0, {q2})

x y ε
q0 {q1} - {q0}
q1 - {q2} {q1}
q2 - - {q0, q2}
Função Fecho Vazio
Denotada por:
Fε = Q → 2Q

Definida como:
Fε(q) = {q} se δ(q, ε) = {q}
Fε(q) = δ(q,ε) ∪ (∪p∈δ(q,ε) Fε(p))

Exemplo:

Fε(q0) = {q0, q1, q2, q3, q5}


Fε(q3) ={q3, q5}

Função Fecho Vazio Estendida


Denotada por:
Fε = 2Q → 2Q

Definida como:
Fε(P) = ∪q∈P Fε(q)

Exemplo:

Fε({q2, q3}) = Fε(q2) ∪ Fε(q3) = {q2} ∪ {q3, q5} = {q2, q3, q5}
Função programa estendida
Denotada por:
δ: 2Q x ∑* → 2Q

Definida como:
δ(P, ε) = Fε(P)
δ(P, wa) = Fε(R) sendo R = {r | r ∈ δ(s, a) e s ∈ δ(P, w)}

Equivalência entre AFε e AFN

A idéia central do algoritmo é a construção de uma função programa sem movimentos


vazios onde o conjunto de estados destino de cada transição não vazia é estendido com
todos os estados possíveis de serem atingidos por transições vazias.

Seja M = (∑, Q, δ, q0, F) um AFε qualquer. Seja M’= (∑, Q, δ’, q0, F’) um AFN construído
a partir de M como segue. Então M ≅ M’.

δ’:
Q x ∑→2Q sendo δ’(q, a) = δ({q},a).

F’:
Conjunto de todos os estados ‘q’ pertencentes a Q tal que algum elemento do Fε(q) pertence
a F.

Potrebbero piacerti anche