Entscheidbarkeit der Präfixsprache


9

Mittelfristig gab es eine Variante der folgenden Frage:

Für ein entscheidbares definieren Sie Zeigen Sie, dass nicht unbedingt entscheidbar ist.L

Pref(L)={xy s.t. xyL}
Pref(L)

Aber wenn ich wähle, dann denke ich, dass auch , also entscheidbar. Auch ergibt das gleiche Ergebnis. Und da entscheidbar sein muss, kann ich das Halteproblem oder ähnliches nicht auswählen.L=ΣPref(L)ΣL=L

  1. Wie finde ich so, dass nicht entscheidbar ist?LPref(L)
  2. Welche Bedingungen für machen entscheidbar und welche machen es unentscheidbar?LPref(L)

Antworten:


9

Beachten Sie, dass wir mit einem existenziellen Quantifizierer vor einer entscheidbaren Sprache jede neue Sprache erhalten können, dh jede neue Sprache ist ausdrückbar als

{xΣyΣ x,yV}

wobei eine entscheidbare Sprache ist. Dazu gehören unentscheidbare Sprachen wie .A T M = { e , x | e  Encodierungen einer Turing - Maschine , die akzeptiert  x }V

ATM={e,x e encodes a Turing machine which accepts x}

Der einzige Unterschied besteht darin, dass wir hier und selbst trennen müssen. Der Standardtrick besteht darin, ein neues Symbol zu verwenden, um die beiden Teile zu trennen (vorausgesetzt, das Trennzeichen gehört zu ). Daher kann jede neue Sprache, einschließlich unentscheidbarer, in diesem Format ausgedrückt werden.y yxyy

Für die zweite Frage gibt es keine allgemeine algorithmische Methode, um zu überprüfen, ob die Präfixe einer bestimmten entscheidbaren Sprache nicht entscheidbar sind. Dies folgt aus dem Satz von Rice.


Können Sie das , das erzeugt, explizit ? A T M.VATM
Ran G.

2
Sei eine Zeichenfolge, die eine anhaltende akzeptierende Berechnung von auf soll. prüft, ob eine akzeptierende Berechnung von auf . M e x V y M e xyMexVyMex
Kaveh

Das ist eine schöne Lösung!
Ran G.

3

Meta-Wissen: Sie möchten eine nicht entscheidbare Sprache finden, die dennoch einige rechnerische Eigenschaften hat. Eine willkürliche, nicht entscheidbare Sprache wird Sie wahrscheinlich nicht sehr weit führen. Aber eine halbentscheidbare…


Stärkerer Hinweis: Was ist eine halbentscheidbare Sprache? Es bedeutet, dass wir die Wörter aufzählen können: Es ist eine Menge von Wörtern so dass es eine ganze Zahl so dassnun

u=f(n)

Starren Sie diese Gleichung ein wenig an, unter Berücksichtigung von Entscheidbarkeit und Präfixen.


Angenommen, Sie haben intuitiv ein und möchten testen, ob es sich in . Sie werden es im Allgemeinen nicht besser machen, als , , usw. zu , wobei die Buchstaben des Alphabets sind. Dies ist eine teilweise rekursive Funktion, die die Mitgliedschaft in testet . Natürlich wussten wir, dass bereits wieder vorhanden war. Was wir zeigen müssen ist, dass es manchmal keine alternative Methode gibt. Nehmen wir eine Menge die re und nicht rekursiv ist, und sei eine Aufzählung von (xPref(L)xaxbxaaa,b,Pref(L)Pref(L)SNfSS=f(x)xN ).

Angenommen, das Alphabet enthält drei Symbole , und (Wenn Sie nur zwei Symbole , codieren Sie als , als und als ). Wenn , läßt wird 2 in Basis geschrieben mit den Symbolen und ohne führende .01:{,}01:nNn¯n010

Sei . Im Klartext nehmen wir die Elemente von und greifen ihren Aufzählungsindex an. ist eindeutig entscheidbar (stellen Sie sicher, dass es eine einzelne gibt , dass die zweistelligen Sequenzen keine führende enthalten und dass die erste Ziffernfolge das Bild mit der Zahl buchstabiert, die die zweite buchstabiert). Die Entscheidung, ob ein ein Präfix von ist, ist gleichbedeutend mit der Entscheidung, ob in , was Sie nicht tun können, ohne da nicht durch Annahme rekursiv ist. Formal,S L : 0 f ˉ y L y S x S P R e f ( L ) , P r e f ( L ) { 0 , 1 } * : = S :L={y¯:x¯y=f(x)}SL:0fy¯LySxSPref(L) ist nicht entscheidbar, da nicht entscheidbar ist.Pref(L){0,1}:=S:

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.