Estou trabalhando no livro Sipser (2ª edição) e me deparei com este exemplo, que não entendo. No livro, afirma que esse NFA aceita a string vazia, .
Alguém poderia me explicar por que esse é o caso?
Meu entendimento é que passará para que não é um estado de aceitação.
regular-languages
finite-automata
nondeterminism
Leopardo convexo
fonte
fonte
Respostas:
Você está confundindo com uma carta. Não é uma carta! É apenas a corda vazia.ϵ
Vamos considerar um modelo um pouco mais geral, "word-NFA". Uma palavra-NFA é como uma NFA, mas cada transição é rotulada com uma palavra arbitrária. Dizemos que a palavra NFA aceita uma palavra se houver uma caminhada de um estado inicial para um estado final, de modo que, se concatenarmos os rótulos das arestas na caminhada, obteremos . Nos símbolos, uma palavra NFA aceita se houver uma sequência de transições de tal modo que:w w w q0→w1q1→w2q2→w3⋯→wnqn
Um NFA é uma palavra-NFA na qual todas as transições são rotuladas por letras (ou seja, palavras com tamanho exatamente 1), e um -NFA é aquele em que todas as transições são rotuladas por letras ou (ou seja, palavras com comprimento no máximo 1). Normalmente, também exigimos que exista um estado inicial único.ϵ ϵ
Uma palavra-NFA aceita se houver uma sequência de transições modo que seja um estado inicial, seja um estado final , e todas as transições são válidas. Em particular, se algum estado for inicial e final, a palavra NFA aceita (isso corresponde a ).ϵ q0→ϵq1→ϵ⋯→ϵqn q0 qn ϵ n=0
fonte