In einer Nussschale
Es scheint keinen guten Grund zu geben, das Halteproblem in Umgebungen zu vernachlässigen, die nicht das klassische der deterministischen Turingmaschinen sind, abgesehen von der Tatsache, dass das klassische Halteproblem einige wichtige mathematische Fragen beantwortet (wie das
Entscheidungsproblem) ) , während es sich nur um Varianten handelt interessante (?) technische Probleme, die sich jedoch weniger auf die Fundamente auswirken.
EINx
Nach der Antwort von jmite kann dieses nichtdeterministische Anhalten definiert werden als das Vorhandensein von mindestens einer Anhaltensberechnung ( existentielles Anhalten ) oder alternativ als die Anforderung, dass alle möglichen Berechnungen angehalten werden müssen ( universelles Anhalten ). Diese beiden Definitionen entsprechen zwei unterschiedlichen Definitionen des nichtdeterministischen Halteproblems.
Ich zeige, dass bei Turing-Maschinen die beiden Definitionen zwei unterschiedlichen Arten der Bestimmung der Maschine durch Verzahnung entsprechen. Daraus schließe ich, dass beide Varianten des nicht deterministischen Halteproblems dem klassischen deterministischen Halteproblem äquivalent sind
.
Ich zeige jedoch auch, dass jede dieser Definitionen von Anhalten in direktem Zusammenhang mit einer entsprechenden Definition der Sprache steht, die von einer Turing-Maschine erkannt wird, und diese Beziehung kann einfach unter der Bedingung ausgedrückt werden, dass konsistente Definitionen gewählt werden.
Angesichts der üblichen Definition der Sprache, die von einem nichtdeterministischen Automaten erkannt wird, ist die natürliche Definition des nichtdeterministischen Anhaltens existenzielles Anhalten, wie in der ursprünglichen Frage vorgeschlagen.
Der größte Teil dieser Analyse erstreckt sich natürlich auch auf andere Arten von Automaten, obwohl die Schwalbenschwanzkonstruktionen häufig nicht in weniger leistungsfähigen Familien als Turing-Maschinen verfügbar sind.
Einführung
Ich schreibe dies als Antwort, da es meine Frage nach weiteren Überlegungen teilweise beantwortet, wobei vorhandene Antworten berücksichtigt werden. Wenn ich meine Frage nach drei Antworten bearbeite, kann dies in diesem Fall zu Problemen führen, und ich möchte die Frage lieber so lassen, wie sie ursprünglich geschrieben wurde, um dies zu vermeiden.
Ich diskutiere zuerst einige meiner Meinungsverschiedenheiten mit den gegebenen Antworten. Es geht nicht darum, faire Versuche, meine Frage zu beantworten, herabzusetzen (ich danke Ihnen für alle Antworten), sondern darum, den Problemen auf den Grund zu gehen, indem Sie technische Punkte diskutieren oder diskutieren.
Ich denke, die ursprüngliche Frage braucht kaum Kontext oder Motivation. Das Problem des Anhaltens ist eine der Hauptfragen, die wir uns einerseits zu Automaten stellen, und Nichtdeterminismus ist andererseits ein sehr verbreitetes und nützliches Merkmal vieler Automaten. Darüber hinaus ist Nichtdeterminismus nicht nur ein gängiges theoretisches Mittel zur Vereinfachung von Beweisen, sondern ein wesentliches Merkmal einiger Automatenfamilien, wie beispielsweise des linearen gebundenen Automaten (LBA), zumindest zum Zeitpunkt dieses Schreibens.
Daher ist es selbstverständlich, sich zu fragen, ob das Halteproblem eine Bedeutung hat oder eine bevorzugte Bedeutung, welche und warum im Fall nicht deterministischer Automaten.
Ist das nicht-terministische Stopp-Problem gut gelöst?
Meine Frage fragt sich, warum das Stopp-Problem für nicht deterministische Automaten eine zweitklassige Behandlung zu erhalten scheint , die eine Ablehnung und eine Antwort von vzn erzeugt hat. Die Antwort von vzn , die eigentlich eher ein langer Kommentar ist, besteht darauf, dass " Nichtdeterminismus in CS ein sehr tiefgreifendes / allgegenwärtiges / übergreifendes Konzept zu sein scheint", woran ich nie gezweifelt habe. Es gibt auch einen Hinweis auf eine Forschung zum Anhalten für nichtdeterministische Maschinen, die nicht überraschend ist, aber meinen Standpunkt nicht wirklich anspricht. Mein Standpunkt ist, dass ich mich nicht daran erinnere, tatsächlich eine Definition des angestrebten Halteproblems gesehen zu haben an nicht deterministischen Maschinen, obwohl ich auf diesem Gebiet einiges an Literatur gelesen habe. Es wird in meinem Referenzlehrbuch (Hopcroft + Ullman 1979) nicht angesprochen, AFAIK. Es scheint für Menschen oft implizit, dass sie deterministische Automaten in Betracht ziehen, normalerweise Turing Maschinen, deren Referenzdefinition deterministisch ist.
Zum Beispiel in der Frage, warum das Halteproblem für LBA entscheidbar ist? Yuval Filmus vergaß in seiner Antwort, dass LBAs nicht deterministische Geräte sind - speicherte seine Antwort aber brillant mit einem 4-Wörter-Kommentar .
Als letztes Zeugnis der Tatsache, dass dieses Thema im Allgemeinen nicht gut angesprochen wird (trotz einiger spezialisierter Untersuchungen), möchte ich die Tatsache nennen, dass das Thema hier erörtert werden muss.
Die Antwort von jmite ist die einzige, die tatsächlich versucht zu erklären, warum es möglicherweise nicht gut angesprochen wird. Sein erstes Argument ist, dass es zwei mögliche Definitionen gibt, aber ich glaube, dass diese Situation eher zu mehr Analysen anregen sollte, um zu bestimmen, welche Definition am besten geeignet wäre. Das versuche ich weiter unten.
Er schlägt auch vor, dass, da ein nicht deterministisches TM immer in ein äquivalentes deterministisches TM umgewandelt werden kann, es nicht sinnvoll ist, sich über das Problem des Anhaltens im nicht deterministischen Fall Gedanken zu machen. Ich bin nicht ganz überzeugt, aber es kann von vielen als guter Grund angesehen werden. Das Argument gilt jedoch nicht für Linear Bounded Automata (LBA), da es immer noch ein offenes Problem ist, ob deterministische LBA zu nicht deterministischen LBA äquivalent sind. Und es gibt andere Automatenfamilien, bei denen die deterministische Unterfamilie schwächer ist als die gesamte nichtdeterministische Familie (z. B. PDA).
Ich stimme auch nicht mit dem letzten Punkt überein und behaupte, wir sollten uns nicht mit nicht deterministischem Anhalten befassen, weil Beweise mit deterministischen Maschinen einfacher sind. Raphael beanstandete dies in einem Kommentar : " Ich finde es normalerweise einfacher, sich auf schwierigere Probleme zu beschränken. " In der Tat dient die nichtdeterministische Version für viele Arten von Automaten hauptsächlich der Vereinfachung von Beweisen, beispielsweise der Reduktion auf diesen Automatentyp. Es könnte sogar als Vorteil angesehen werden, zusätzlich zwei Arten von Stopps zu haben, die verwendet werden können, wie von jmite selbst vorgeschlagen, da sie mehr Flexibilität bieten, um Probleme anzugehen.
Zur Definition des nicht deterministischen Halteproblems
Hinweis: Die Verwendung des Wortes "universal" im folgenden Text bezieht sich auf die universelle Quantifizierung , NICHT auf universelle Turing-Maschinen
Die Antwort von jmite ist die detaillierteste.
Diese Antwort vermutet, dass nicht deterministische Automaten weniger Aufwand für das Stopp-Problem bedeuten, da sie auf zwei verschiedene Arten definiert werden können (die Terminologie ist meine):
Die einzige Definition, die ich für angemessen gehalten hatte, ist existenzielles Anhalten .
x
Beweis : Dies ist mit König's Lemma leicht zu beweisen , da die Anzahl der möglichen nicht deterministischen Auswahlen bei jedem Schritt für einen gegebenen Automaten begrenzt ist. Wenn es unendlich viele Stoppberechnungen gäbe, könnten wir jede Konfiguration mit jedem der zu ihr führenden Berechnungspfade kennzeichnen, wodurch ein Berechnungsgraph mit unendlich vielen Knoten, aber nur endlicher nicht deterministischer Verzweigung an jedem Knoten erstellt würde. Nach König's Lemma impliziert dies die Existenz eines unendlichen Rechenpfades, der einer ununterbrochenen Berechnung entspricht.
Der Fall von (nicht deterministischen) Turingmaschinen
Lassen Sie uns nun das Anhalten bei einer nicht deterministischen Turing-Maschine (NTM) untersuchen.
Um die beiden Definitionen zu analysieren, ist es in der Tat am einfachsten, deterministische Versionen nicht deterministischer Maschinen zu betrachten, die nach Hendrik Jan durch Verzahnung aller möglichen Berechnungen erreicht werden können.
Es gibt jedoch (mindestens) zwei Möglichkeiten, Berechnungen für die Bestimmung zu verzahnen, obwohl normalerweise nur eine in Betracht gezogen wird:
existentielle Schwalbenschwanzbestimmung, die alle Berechnungen parallel simuliert und endet, wenn eine der simulierten Berechnungen endet.
universelle Schwalbenschwanzbestimmung, die alle Berechnungen parallel simuliert und nur dann endet, wenn alle simulierten Berechnungen enden. Es ist jedoch vorstellbar, dass die abschließenden Berechnungen in irgendeiner Weise aufgezählt oder gezählt werden.
Satz 2 :
MxM∀x
Satz 3 : Das Halteproblem für deterministisches TM und die existenziellen und universellen Halteprobleme für nichtdeterministisches TM sind gleichbedeutend mit Turing.
Beweis : Dies ergibt sich aus Satz 2 und aus der Tatsache, dass deterministische TMs eine Teilmenge von nicht deterministischen TMs sind, bei denen sowohl existenzielles als auch universelles Anhalten auf einfaches deterministisches Anhalten reduziert werden.
Unter dem Gesichtspunkt der Berechenbarkeit scheint es daher, und ich bin versucht, dies aus symbolischer Sicht zu sagen, unerheblich zu sein, welche Definition für das nicht deterministische Halteproblem existentiell oder universell gewählt wird.
Warum eine Definition von NTM-Stopp wählen und welche?
Hat ein Bestimmungsprozess, bei dem die vom ursprünglichen Automaten erkannte Sprache nicht erhalten bleibt, jedoch viel Sinn?
Das Wesen des Nichtdeterminismus bei der Spracherkennung besteht darin, dass er ein Orakel voraussetzt, das einen richtigen Rechenweg erraten soll, wenn es einen gibt, der zur Akzeptanz führt,
eine grundlegend existenzielle Sichtweise .
ϵ
Akzeptanz durch Anhalten kann daher als kanonische Form der Akzeptanz für nichtdeterministische Automaten angesehen werden.
In Anbetracht dieser kanonischen Sichtweise kann das Halteproblem auch gleichbedeutend mit dem Erkennungsproblem ausgedrückt werden :
LMxx ∈ L
MxxM
Im Falle des universellen Anhaltens geht diese enge Beziehung jedoch verloren. Eine ähnliche Aussage kann gemacht werden, jedoch für eine andere Sprache als die von der NTM erkannte (oder alternativ für eine andere, universelle Definition der von einer NTM erkannten Sprache).
Bei der Entwicklung einer Theorie ist es wichtig, konsistente Definitionen zu verwenden, um Strukturen und Beziehungen in ihrer einfachsten und übersichtlichsten Form hervorzuheben. Es ist ziemlich klar, dass im vorliegenden Fall die Übereinstimmung mit anderen Definitionen nahelegt, dass
existenzielles Anhalten die natürliche Definition des Anhaltens für nicht deterministische Turing-Maschinen ist.
xx
Der Fall anderer Automatenfamilien
Teile der obigen Analyse können nicht auf die meisten Familien nicht deterministischer Automaten ausgedehnt werden. Beispielsweise kann ein Pushdown-Atomaton (PDA) Sprachen definieren, die von einem deterministischen PDA nicht erkannt werden können. Das gleiche kann für LBAs zutreffen. Andere Teile können auf alle nicht deterministischen Familien ausgedehnt werden.
In Bezug auf die Definition des nichtdeterministischen Anhaltens erscheint es sinnvoll, eine Definition zu wählen, die mit der für nichtdeterministische Turing-Maschinen verwendeten Definition konsistent ist, daher die existenzielle Definition .
Die Definition des Halteproblems für diese Familien nichtdeterministischer Automaten folgt und entspricht der in der Frage vorgeschlagenen Definition.