Je travaille sur le livre Sipser (2e édition) et suis tombé sur cet exemple, que je ne comprends pas. Dans le livre, il indique que ce NFA accepte la chaîne vide,.
Quelqu'un pourrait-il m'expliquer pourquoi c'est le cas?
Ma compréhension est que se déplacera vers qui n'est pas un état accepté.
regular-languages
finite-automata
nondeterminism
Léopard convexe
la source
la source
Réponses:
Vous confondezϵ avec une lettre. Ce n'est pas une lettre! C'est juste la chaîne vide.
Prenons un modèle un peu plus général, "word-NFA". Un mot-NFA est comme un NFA, mais chaque transition est étiquetée avec un mot arbitraire. Nous disons que le mot-NFA accepte un motw s'il y a une marche d'un état initial à un état final de telle sorte que si nous concaténons les étiquettes de bord à travers la marche, nous obtenons w . En symboles, un mot-NFA acceptew s'il y a une séquence de transitions
q0→w1q1→w2q2→w3⋯→wnqn
tel que:
Un NFA est un mot-NFA dans lequel toutes les transitions sont étiquetées par des lettres (c.-à-d., Des mots de longueur exactement 1), et unϵ -NFA est celui dans lequel toutes les transitions sont étiquetées par des lettres ou ϵ (c.-à-d. des mots d'une longueur maximale de 1). Habituellement, nous exigeons également un état initial unique.
Un mot-NFA accepteϵ s'il y a une séquence de transitions
q0→ϵq1→ϵ⋯→ϵqn
tel que q0 est un état initial, qn est un état final et toutes les transitions sont valides. En particulier, si un état est à la fois initial et final, le mot-NFA accepteϵ (cela correspond à n=0 ).
la source