Lassen Gibt es eine Turingmaschine R, die die Sprache L ∅ entscheidet (ich meine nicht erkennt) ?
Es scheint, dass dieselbe Technik, die verwendet wurde, um zu zeigen, dass hier funktionieren sollte.
Lassen Gibt es eine Turingmaschine R, die die Sprache L ∅ entscheidet (ich meine nicht erkennt) ?
Es scheint, dass dieselbe Technik, die verwendet wurde, um zu zeigen, dass hier funktionieren sollte.
Antworten:
Mit Markieren meinen Sie wahrscheinlich die Erreichbarkeitsanalyse - die Suche nach einem Pfad vom Ausgangszustand zum akzeptierenden Zustand. In der Tat ist die Sprache eines DFA leer, wenn es keinen solchen Pfad gibt.
Beginnen wir mit einem Beispiel, warum dies in TMs fehlschlägt. Stellen Sie sich ein TM vor, das in seine Eingabe ignoriert, aber a auf sein Band schreibt , den Kopf nach rechts bewegt und in den Zustand q 1 wechselt. In q 1 ignoriert es erneut die Eingabe, schreibt a , bewegt den Kopf nach links und geht bis q 2 . In q 2 , wenn er liest ein , dann schreibt es ein , bewegt sich der Kopf nach rechts und geht zurück auf q 1 .q0 a q1 q1 a q2 q2 a a q1
Das heißt, die Maschine schreibt nura und wechselt zwischen zwei Zuständen ( und q 2 ) und hat immer zwei benachbarte a auf dem Band.q1 q2 a
Wir fügen nun einen Übergang von , der beim Lesen von b in einen akzeptierenden Zustand übergeht und anhält.q2 b
Die Sprache dieser Maschine ist leer. In der Tat bleibt der Lauf immer in der -Schleife stecken und wird niemals in den akzeptierenden Zustand gelangen. Es gibt jedoch einen staatlichen Weg zu einem akzeptierenden Staat. Also, was ist schief gelaufen?q1−q2
Nun, intuitiv ist der "Zustand" eines TM nicht informativ genug, um die Fortsetzung des Laufs zu beschreiben. Um alle Informationen zu erhalten, benötigen Sie die Konfiguration des TM, die den Status, die Position des Kopfes und den Inhalt des Bandes enthält. Wenn Sie einen Konfigurationspfad (der als Ausführen bezeichnet wird ) zu einer akzeptierenden Konfiguration finden, ist die Sprache tatsächlich nicht leer und es handelt sich um eine iff-Bedingung.
Das Problem bei der Verwendung der Erreichbarkeitsanalyse im Konfigurationsdiagramm besteht darin, dass sie möglicherweise unendlich ist. Deshalb ist die Entscheidung über die Leere der Sprache unentscheidbar.
Dies ist auch der Grund, warum die Nichtleere der Sprache erkennbar ist. Sie können ein BFS für das Diagramm mit der unendlichen Konfiguration durchführen. Wenn es einen Weg zu einem akzeptierenden Zustand gibt, werden Sie ihn schließlich finden. Wenn dies jedoch nicht der Fall ist, können Sie bei einer unendlichen Suche stecken bleiben.
quelle
ist aufgrund desSatzesvonRiceunentscheidbar, der besagt, dass nicht triviale Eigenschaften von Teilfunktionen nicht entscheidbar sind.A
Dies bedeutet, dass die von Elementen von berechneten Funktionen eine nicht triviale Eigenschaft haben. Daher ist A nicht entscheidbar.A A
nur unter der Annahme entschieden werden, dass DFAs auf spezielle Weise wie Zustandsübergangstabelle usw. codiert sind (wir können aufgrund des Satzes von Rice nicht entscheiden, ob ein TM nur reguläre Sprachen akzeptiert!). In diesem Fall ist der Satz von Rice nicht anwendbar, da die bestimmte Codierung eines Elements erforderlich ist, um über E zu entscheiden. Wir entscheiden uns also nicht nur für Teilfunktionen.E E
(Das heißt, wenn das Problem wäre, zu entscheiden, ob ein bestimmtes TM ein DFA - oder ein DFA-berechenbares - ist und die von ihm akzeptierte Sprache leer ist, wäre durch den Satz von Rice unentscheidbar. Beachten Sie, dass in diesem Fall A = E ist .)E A=E
quelle
Ein weiterer Hinweis: Versuchen Sie, das Halteproblem auf reduzieren .L∅
(Der ursprüngliche Hinweis ist, den Satz von Rice zu verwenden, aber in diesem Fall ist ein direkter Beweis auch ziemlich einfach.)
quelle
Lemma 1 : Wenn L unentscheidbar ist, ist auch das Komplement von L.
Wir wissen, dass das HalteproblemHTM unentscheidbar ist. Daher ist gemäß Lemma 1- Komplement des Stoppproblems auch HcTM unentscheidbar.
Angenommen,ETM ist entscheidbar. Wir werden HcTM auf ETM reduzieren - mit anderen Worten, wir werden zeigen, wie man eine Turingmaschine MHcTM konstruiert , die HcTM Verwendung des TM entscheidet, METM , das ETM . Dies gibt uns einen Widerspruch, weil wir wissen, dass HcTM unentscheidbar ist, und so MHcTM kann nicht existieren. Das Wort „reduzieren“ bedeutet einfach, ein bestimmtes Problem zu lösen, indem es in ein anderes Problem umgewandelt wird, dessen Lösung wir bereits kennen. Die Turingmaschine für HcTM kann also wie folgt aufgebaut sein:
Es ist wichtig zu verstehen, dass das TMM1 niemals tatsächlich simuliert wird - eine solche Simulation könnte in eine Endlosschleife gehen. Wir konstruieren lediglich den Code für M1 .
Let R be the reduction fromHcTM to ETM .
The reduction gives:
i)⟨M,x⟩∈HcTM⇔R(⟨M,x⟩)∈ETM
ii)⟨M,x⟩∉HcTM⇔R(⟨M,x⟩)∉ETM
quelle
Proof by contradictingATM={⟨M,w⟩∣M is a Turing Machine which accepts w} , (which we know is undecidable).
Assume the existence ofRTM , a TM that decides L∅
Use can then useRTM in the construction of a TM STM , which is a decider for ATM
ModifyM , taking into account the input w , such that the new M (call it M1 ) rejects all input which is not equal to w , where w is built into its description. If the input is equal to w , then M1 runs M on w and outputs whatever M outputs.
RunRTM with the input ⟨M1,w⟩
Output the opposite ofRTM s output."
The assumption that there exists a Turing Machine deicer forL∅ , allows us to construct a decider for ATM , which is a contradiction.
quelle
E={ | M is a TM and L(M)=Φ}. Is E Turing-recognizable?
E is a language, to accept language E we construct a Turing Machine. Suppose we create a Turing EM for the language E.
EM will be provided as input the encoding of another Turing machines, If that inputted machine M accepts an empty language then it will be a member of language E, else it will be not a member of language.
Suppose we have a Turing Machine M, we need to check if it accepts an empty language. Turing Machine EM have M and strings eps, a, b, aa, bb, ..... EM will check if M can reach a final state for at least on a single input, and if it accepts at least a single input it will be discarded and not included in language E. Now, see a possibility T.M M gets into a loop so M will keep on running and we couldn't decide whether it can accept or can't accept anything. Hence, this given language E is NOT RE.
PS: I think the complement of this given Language E will be RE.
quelle