2017-06-24 3 views
0

J'ai un exemple simple de conversion NFA-> DFA, mais je suis confus au sujet de l'état "q0, q1, q2". Pourquoi est-ce? Ou peut-être que j'ai fait quelque chose de mal?Transformer NFA en DFA

Ici, il est: enter image description here

+0

Y a-t-il une question ici? Les États sont des États - demander ce qu'ils sont «pour» individuellement n'est pas très significatif. Quelle est la FA "pour"? Collectivement, les états et les transitions constituent un FA qui reconnaît une langue sur un alphabet. Individuellement, les états ne sont qu'une partie des automates. –

+0

Oui, vous avez raison - la question n'a peut-être pas été claire; d Donc, la question est - est-ce que cette transformation (NFA-> DFA) est faite correctement? FA accepte toutes les chaînes contenant "ba". – Lucas

Répondre

1

Oui, il semble que vous avez fait correctement la transformation.

Mais un résultat correct n'est pas automatiquement le plus efficace. Vous pouvez ajouter "b" à la boucle d'état {q0, q2} et supprimer simplement l'état {q0, q1, q2} avec toutes les transitions qui le touchent. Les deux DFA acceptent la langue souhaitée.

+0

Merci bro :) Oui, je pensais à la même chose (suppression {q0, q1, q2} état) :) – Lucas

+0

Mais ne le supprime pas sans ajouter le b à la boucle ... –

+0

Oui, je sais, mais Merci :) – Lucas