Ein falscher Nachweis des Schließens unter der Sternoperation unter Verwendung von NFA führt dazu, dass die NFA unerwünschte Zeichenfolgen erkennt?


8

Ich lese gerade das Buch Einführung in die Theorie der Berechnung (2. oder 3. Aufl.) Von Michael Sipser und bin auf eine Frage in Kapitel 1 - Reguläre Sprachen gestoßen , nämlich wenn der Autor die Beweisidee von Satz 1.49 vorlegt - "Die Klasse der regulären Sprachen ist unter der Sternoperation geschlossen." mit NFA.

Der vorgeschlagene Ansatz ist, dass wir, wenn wir eine reguläre Sprache und beweisen wollen, dass auch regulär ist, einen NFA und ihn in ein wie im Bild unten ändern können , das dann eine bestimmte NFA-Erkennung ist .EIN1EIN1N.1N.EIN1

Ändern des NFA $ N_1 $

Er bemerkte:

Eine (etwas schlechte) Idee ist einfach, den Startzustand zu der Menge der Akzeptanzzustände hinzuzufügen. Dieser Ansatz fügt der erkannten Sprache sicherlich hinzu , kann aber auch andere, unerwünschte Zeichenfolgen hinzufügen.ε

Ich habe die "schlechte" NFA wie folgt gezeichnet und versucht herauszufinden, warum dies zu unerwünschten Zeichenfolgen führt. Ich kann jedoch kein Beispiel dafür finden, wann eine unerwünschte Zeichenfolge erkannt wird. Warum führt diese Idee dazu, dass die NFA unerwünschte Zeichenfolgen erkennt?

Geben Sie hier die Bildbeschreibung ein

Könnte jemand mich darauf hinweisen oder mir einen Hinweis geben, oder habe ich den Autor falsch verstanden? Danke im Voraus!

Antworten:


11

Betrachten Sie einen Zwei-Zustands-Automaten für die Sprache , zwei Übergänge vom Anfangszustand, von denen einer mit dem Etikett und der andere mit dem Etikett in den Endzustand übergeht.einbeinb

Wenn der Anfangszustand endgültig ist, wird auch akzeptiert .ein

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.