Bei einem NFA und seinem äquivalenten DFA die sich aus der Gesamtbestimmung von (z. B. unter Verwendung der Powerset-Konstruktion), gelten die folgenden Eigenschaften für , und für jedes Wort :D N.D w
- liest in der Laufzeit höchstens .O ( | w | . | N | 2 )
- liest in der Laufzeit höchstens und seine Größe kann (in der Anzahl der Zustände, die zur Darstellung von D benötigt werden ).
Ich frage mich, ob es einen partiellen Determinierungsalgorithmus gibt, der einen Kompromiss zwischen der Größe des Ergebnisses und der Laufzeit garantiert.
Zum Beispiel könnte dieser partielle Determinierungsalgorithmus eine NFA in teilweise deterministische Automaten D ' verwandeln , so dass garantiert, dass das Wort in O (| w |. | N | ^ x) gelesen wird, wobei ohne die Größe | D '| zu überschreiten \ leq 2 ^ {f (x)} wobei eine kontinuierlich abnehmende Funktion ist, die im Bereich so dass und .
Ich habe keine Methode gefunden, um eine NFA teilweise so zu bestimmen. In allen Veröffentlichungen: Jede Determinierung wird vermieden, weil die NFA zu groß ist, jede Determinierung ist voll und die NFA wird in eine DFA umgewandelt (mit einer möglichen exponentiellen Explosion). Es gibt keinen Kompromiss ...
Ich würde mich über Referenzen oder Antworten zu diesem Problem sehr freuen. Vielen Dank, Luz.
Antworten:
Das Papier [HP06] ist im Geiste Ihrer Idee, wenn auch in eine andere Richtung, im Kontext unendlicher Wörter. Es kann leichter an endliche Wörter angepasst werden.
Bei der Powerset-Konstruktion verfolgen wir gleichzeitig alle möglichen Läufe des Zustandsautomaten, indem wir uns um Token bewegen . Wir könnten uns jedoch entscheiden, nur Läufen zu folgen und eine partielle Powerset-Konstruktion durchzuführen. Im Allgemeinen ergibt dies einen nicht deterministischen Automaten, der nicht wirklich nützlicher ist als der ursprüngliche.n k < nn n k < n
Es könnte jedoch sein, dass das Erstellen von Läufen mit einer bestimmten deterministischen Strategie immer ausreicht, um eine akzeptierende zu erhalten, falls eine existiert. Stellen Sie sich zum Beispiel einen großen Automaten vor, bei dem der einzige Nichtdeterminismus darin besteht, zu erraten, ob der letzte Buchstabe oder a , und dann zu zwei deterministischen Automaten zu verzweigen. Dann genügen zwei Token, und eine Potenzsatz-Konstruktion funktioniert, bei der Teilmengen höchstens , dh der resultierende Automat hat -Zustände.a b 2 2 n ( n + 1 )k ein b 2 2 n ( n + 1 )2
Wir können die "Breite" eines nicht deterministischen Automaten als die Anzahl der Token definieren, die benötigt werden, um einen akzeptierenden Lauf deterministisch aufzubauen. Die Powerset-Konstruktion geht tatsächlich davon aus, dass wir uns im schlimmsten Fall befinden, dh die Breite entspricht der Anzahl der Zustände. Der Fall, in dem die Breite beträgt, entspricht dem in [HP06] eingeführten und in [BKKS13, KS15] weiter untersuchten Begriff des GFG-Automaten (Good-for-Games).1
Wir haben, dass ein NFA genau dann eine Breite von höchstens wenn seine Powerset-Konstruktion GFG ist. Bei endlichen Wörtern ist es in P zu erkennen, ob ein Automat GFG ist, und in diesem Fall bedeutet dies tatsächlich, dass er mit einigen zusätzlichen nutzlosen Übergängen deterministisch ist. Dies bedeutet, dass wir inkrementieren können, bis die resultierende Powerset-Konstruktion GFG ist, die nutzlosen Übergänge beschneiden und einen deterministischen Automaten erhalten. Dies entspricht der Betonung der Platzersparnis, da wir, anstatt den großen deterministischen Automaten zu bauen und ihn dann zu minimieren, versuchen, ihn "von unten" anzusprechen, in der Hoffnung, dass wir nicht die vollständige Powerset-Konstruktion durchführen müssen.k k kk k k k
[HP06] Spiele ohne Bestimmung lösen, Henzinger, Piterman, in CSL 2006
[BKKS13] Nichtdeterminismus in Gegenwart einer vielfältigen oder unbekannten Zukunft , Böker, Kuperberg, Kupferman, Skrzypczak, in ICALP 2013
[KS15] Zur Bestimmung von Spielautomaten , Kuperberg, Skrzypczak, in ICALP 2015
quelle