Angenommen, HALTS ist ein TM, das seine Eingabe als Paar und x liest , wobei M eine TM-Codierung ist und x eine beliebige Eingabe für dieses TM ist.MxMx
Ihre Frage ist ob das, was passieren würde , wenn wir davon ausgegangen , hält das Halteproblem für alle Eingänge gelöst , so dass x nicht eine Codierung eines TM ist , die funktional äquivalent zu ist M .⟨M,x⟩xM
Ich behaupte, dies impliziert einen Widerspruch. Ich habe mir das sofort ausgedacht, daher begrüße ich jede Kritik an meinem Beweis. Die Idee des Beweises ist, dass wir, anstatt etwas an sich zu diagonalisieren, zwei sich gegenseitig rekursive TMs erstellen, die sich bei einigen Eingaben unterschiedlich verhalten (daher nicht funktional äquivalent sind), aber ansonsten Widersprüche verursachen.
Sei und D 2 zwei gegenseitig rekursive TMs (dh wir können die Beschreibung von D 2 innerhalb des Programms von D 1 simulieren, drucken usw. und umgekehrt). Beachten Sie, dass wir aus dem Rekursionssatz gegenseitig rekursive TMs erstellen können.D1D2D2D1
Definieren Sie und D 2 wie folgt: am Eingang x , wenn | x | < 10 (10 willkürlich gewählt), dann akzeptiert D 1 und D 2 Schleifen. (Somit sind sie funktional nicht äquivalent).D1D2x|x|<10D1D2
Gegebene Eingabe mit | x | ≥ 10 definieren D 1 HALT auf simulieren ⟨ D 2 , x ⟩ und halt , wenn D 2 stoppt oder Schleife , wenn D 2 Schleife.x|x|≥10D1⟨D2,x⟩D2D2
Gegebene Eingabe mit | x | ≥ 10 definieren D 2 HALT auf simulieren ⟨ D 1 , x ⟩ und Schleife , wenn D 1 stoppt oder halt , wenn D 1 - Schleifen.x|x|≥10D2⟨D1,x⟩D1D1
Beachten Sie dann, dass für jedes mit | x | ≥ 10 , D 1 (x) hält entweder an oder schleift. Wenn D 1 am Eingang x anhält, wissen wir, dass HALTS ( D 2 , x) bestimmt hat, dass D 2 am Eingang x anhält. Das Anhalten von D 2 am Eingang x impliziert jedoch, dass HALTS ( D 1 , x) Schleifen sind.x|x|≥10D1D1D2D2D2D1
Wenn am Eingang x Schleifen hat, folgt der Widerspruch ähnlich.D1x
Dies ist ein Widerspruch, es sei denn, ist eine Codierung für eine Turingmaschine, die funktionell D 1 oder D 2 entspricht . In diesem Fall weist HALTS ein undefiniertes Verhalten auf. Allerdings x wurde willkürlich aus allen Saiten einer Größe von mehr als gewählt 10 . Es bleibt also zu zeigen, dass es eine Turingmaschine mit einer Codierung von mehr als 10 gibt, die sich anders verhält als D 1 und D 2 . Wir können eine solche Maschine trivial konstruieren. QED.xD1D2x10D1D2
Gedanken?