Wir sagen , dass NFA ist ständig mehrdeutige Existieren k ∈ N , so dass jedes Wort w ∈ & Sigma; * durch entweder akzeptiert wird 0 oder (exakt) k Pfaden.
Wenn Automat für ständig mehrdeutig ist k = 1 , dann M heißt Eindeutiges FA (UFA).
Sei eine reguläre Sprache.
Kann ein konstant mehrdeutiger Automat für L kleiner sein als der kleinste UFA, der L akzeptiert ? Wie viel kleiner könnte es sein?
Kann ein endlich mehrdeutiger Automat für dieselbe Sprache exponentiell kleiner sein als der kleinste CFA?
Es ist bekannt, dass es endlich mehrdeutige Automaten gibt (es gibt , so dass jedes Wort von bis zu k Pfaden akzeptiert wird ), die exponentiell kleiner sind als die kleinste UFA für dieselbe Sprache, aber ich habe nichts über ständige Mehrdeutigkeit gesehen.
Außerdem ist hier eine verwandte Frage, die ich vor ein paar Monaten hier gepostet habe.
BEARBEITEN:
Domotorps Antwort zeigt, dass polynomiell auf U F A reduzierbar ist, geht jedoch nicht auf die Frage ein, ob wir diese polynomielle Raumreduktion durch C F A s erreichen können.
So ist die neue Frage wird: Wie viel kleiner (linear / quadratisch / etc.) Kann eine auf den minimal verglichen werden U F A ? für die gleiche Sprache?
Antworten:
Ich beanspruche , dass für einige Sprache , wenn es eine mit CFA mit ist Staaten und 0 oder c Pfade für jedes Wort zu akzeptieren, dann gibt es eine UFA mit C s s c Staaten. Die Grundidee ist, dass die Zustände der UFA die (geordneten) c-Tupel der Zustände der CFA sind und sie genau dann akzeptieren, wenn alle c-Zustände akzeptieren. Natürlich müssen wir auch sicherstellen, dass es sich tatsächlich um unterschiedliche Berechnungen handelt und wir nicht alle c zählen ! Permutationen, so dass für diese müssen wir einige zusätzliche C s Speicherbits.s 0 c Cssc c! Cs
Eine etwas detailliertere Beschreibung der Grundidee: Wenn ein Zustand der UFA ist, dann hat es einen Übergang von ihm (Lesen eines Buchstabens a ) zu dem Zustand ( s ′ 1 , … , s ' c ) wenn und nur wenn der CFA einen Übergang hat (Lese Buchstaben a ) von s i zu s ' i für jedes i . Ein Zustand ( s 1 , … , s c )(s1,…,sc) a (s′1,…,s′c) a si s′i i (s1,…,sc) akzeptiert genau dann, wenn für jedes i akzeptiert . Natürlich ist der Startzustand der UFA ( s 0 , ... , s 0 ), wobei s 0 der Startzustand der CFA ist.si i (s0,…,s0) s0
Das Problem mit dem oben genannten ist, dass die simulierten Läufe des CFA möglicherweise identisch sind. Wir fügen also einige zusätzliche Informationen hinzu, die beispielsweise in einem Diagramm für c Eckpunkte codiert sind , das eine Kante zwischen Eckpunkt i und Eckpunkt j hat, wenn wir während des bisherigen Laufs mindestens einmal dieses c i ≠ c j hatten .c c i j ci≠cj
Jetzt haben wir noch ein Problem, dass wir alles gezählt haben mal wegen der möglichen permutationen. Wir können dies beheben , indem sie verlangen , dass , wenn die i - ten und j - ten Staaten das gleiche gewesen sein , bis jetzt und im nächsten Schritt würde sie sich unterscheidet, dann im nächsten Schritt des i - ten Zustand sollte einen größeren Index hat.c! i j i
quelle