Ich bin die Sprache aller erfüllbar Propositionslogik Formeln unter Berücksichtigung, SAT (um sicherzustellen , dass dies eine endliche Alphabet hat, würden wir propositionaler Buchstaben in geeigneter Weise kodieren [edit: die Antworten darauf hingewiesen , dass die Antwort auf die Frage nicht robust unter sein kann Da die Kodierungen variieren, muss man genauer sein - siehe meine Schlussfolgerungen weiter unten] ). Meine einfache Frage ist
Ist SAT eine kontextfreie Sprache?
Meine erste Vermutung war, dass die heutige Antwort (Anfang 2017) lauten sollte: "Niemand weiß, da dies ungelöste Fragen in der Komplexitätstheorie betrifft." Dies ist jedoch nicht wirklich wahr (siehe Antwort unten), obwohl es auch nicht völlig falsch ist. Hier ist eine kurze Zusammenfassung von Dingen, die wir kennen (beginnend mit einigen offensichtlichen Dingen).
- SAT ist nicht regulär (da auch die Syntax der Aussagenlogik aufgrund übereinstimmender Klammern nicht regulär ist)
- SAT ist kontextsensitiv (es ist nicht schwer, eine LBA dafür zu vergeben)
- SAT ist NP-vollständig (Cook / Levin) und wird insbesondere von nicht deterministischen TMs in der Polynomzeit bestimmt.
- SAT kann auch von nichtdeterministischen Einweg-Stapelautomaten (1-NSA) erkannt werden (siehe WC-Runden, Komplexität der Erkennung in Sprachen der Mittelstufe , Switching and Automata Theory, 1973, 145-158 http://dx.doi.org/ 10.1109 / SWAT.1973.5 )
- Das Wort Problem für kontextfreie Sprachen hat eine eigene Komplexitätsklasse (siehe https://complexityzoo.uwaterloo.ca/Complexity_Zoo:C#cfl )
- , wobei LOGCFL die auf CFL reduzierbare Klasse von Problemen ist(siehehttps://complexityzoo.uwaterloo.ca/Complexity_Zoo:L#logcfl). Es ist bekannt, dass NL ⊆ LOGCFL .
- Es ist nicht bekannt, ob oder NL = NP (in der Tat ist sogar NC 1 open PH offen; ich glaube, ich habe dies von S. Arora, B. Barak erhalten: Computational Complexity: A Modern Approach ; Cambridge University Press 2009) . Daher kann es kein NP- vollständiges Problem geben, von dem bekannt ist, dass es nicht in LOGCFL vorhanden ist . Daher muss unbekannt sein, ob SAT in LOGCFL ist .
Dieser letzte Punkt lässt jedoch immer noch die Möglichkeit offen, dass SAT bekanntermaßen nicht in der . Im Allgemeinen konnte ich nicht viel über die Beziehung von CFL zur NC- Hierarchie herausfinden , was dazu beitragen könnte, den epistemischen Status meiner Frage zu klären.
Bemerkung (nachdem ich einige erste Antworten gesehen habe): Ich erwarte nicht, dass die Formel in konjunktiver normaler Form vorliegt (dies wird keinen Unterschied zum Wesen der Antwort machen, und normalerweise gelten immer noch Argumente, da ein CNF auch eine Formel ist behaupten, dass die Konstante-Anzahl-von-Variablen-Version des Problems regelmäßig ist, schlägt fehl, da man Klammern für die Syntax benötigt.).
Fazit: Entgegen meiner von der Komplexitätstheorie inspirierten Annahme kann man direkt zeigen, dass SAT nicht kontextfrei ist. Die Situation ist daher:
- Es ist bekannt , dass SAT ist nicht kontextfrei (mit anderen Worten: SAT nicht in ist ), unter der Annahme , dass man eine „direkte“ Codierung verwendet der Formeln in denen Aussagenvariablen durch Binärzahlen gekennzeichnet sind (und einige weitere Symbole verwendet werden , für Betreiber und Abscheider).
- Es ist nicht bekannt, ob SAT in , aber "die meisten Experten glauben", dass dies nicht der ist, da dies implizieren würde . Dies bedeutet auch, dass es nicht bekannt ist, ob andere "vernünftige" Kodierungen von SAT kontextfrei sind (vorausgesetzt, wir würden Logspace als akzeptablen Kodierungsaufwand für ein NP-hartes Problem betrachten).
Beachten Sie, dass diese beiden Punkte nicht implizieren . Dies kann direkt gezeigt werden, indem gezeigt wird, dass es Sprachen in L (daher in LOGCFL ) gibt, die nicht kontextfrei sind (z. B. a n) ).