Automates finis non déterministes | Exemple Sipser 1.16

9

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 q3 qui n'est pas un état accepté.

entrez la description de l'image ici

Léopard convexe
la source
1
Ceci est une question classique sur l'utilisation de ϵdans un NFA. Voici une question sur le même exemple, que signifie une chaîne d'entrée d'Epsilon? . Il y a aussi la question de la signification de ε dans NFA-ε? et comment un NFA utilise-t-il les transitions epsilon?
John L.
Merci pour les liens complets - je pense que je comprends cela maintenant.
Convex Leopard

Réponses:

10

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

q0w1q1w2q2w3wnqn
tel que:

  1. q0est un état initial. (Le modèle habituel ne permet qu'un seul état initial, mais nous pouvons assouplir cette exigence.)
  2. qn est un état final (également appelé état acceptant).
  3. Chaque transition qi1wiqi correspond à une transition du mot-NFA.
  4. w=w1wn.

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, qnest 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).

Yuval Filmus
la source
AHA, merci, cela a du sens maintenant. Donc, intuitivement, quand nous obtenonsϵ nous avons deux "branches": q1q1 et q1q3. Depuisq1q1 est un état accepté, nous acceptons ϵ
Convex Leopard
1
Oui, c'est une belle description.
Yuval Filmus