18.09.2013 Aufrufe

Skript in PDF - Theoretische Informatik - Technische Universität ...

Skript in PDF - Theoretische Informatik - Technische Universität ...

Skript in PDF - Theoretische Informatik - Technische Universität ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

118 KAPITEL 5. UNENTSCHEIDBARE PROBLEME<br />

Bemerkung 1. 1. Jede TM kann durch e<strong>in</strong>e TM mit dem Bandalphabet Σ =<br />

{0, 1} simuliert werden. Wir codieren die ursprünglichen E<strong>in</strong>gabesymbole si<br />

und das ursprüngliche Blanksymbol wie folgt:<br />

Symbol # s1 s2 ... sk<br />

Code 01 011 01 3 ... 01 k+1<br />

Die neue Masch<strong>in</strong>e hat also nur an den noch nicht beschrifteten Feldern Blanksymbole.<br />

Die e<strong>in</strong>zelnen Übergänge werden wie folgt simuliert:<br />

(a) e<strong>in</strong> Schritt nach rechts wird durch e<strong>in</strong>e Bewegung des Kopfes unter die<br />

nächste 0 nach rechts simuliert; analog für l<strong>in</strong>ks<br />

(b) Überschreibung von si und sj wird dadurch simuliert, dass 01 j+1 statt<br />

01 i+1 geschrieben wird. Dazu müssen, falls z.B. i = 1 und j = 2, alle<br />

Symbole 0, 1 rechts vom Lesekopf e<strong>in</strong> Feld nach rechts geschoben werden<br />

(und vorher muss die momentane Kopfposition gespeichert werden – z.B.<br />

dadurch, dass die momentan gelesene 0 gelöscht wird).<br />

2. Eigentlich kann jede TM durch e<strong>in</strong>e TM mit Σ = {|} simuliert werden. Die<br />

Idee ist gleich, aber die Details s<strong>in</strong>d aufwendiger.<br />

Wir beschränken uns auf TM mit dem b<strong>in</strong>ären Bandalphabet Σ = {0, 1}. Also<br />

hat die universelle Tur<strong>in</strong>gmasch<strong>in</strong>e Mu sowie alle simulierten Masch<strong>in</strong>en M dieses<br />

E<strong>in</strong>gabealphabet.<br />

Codierung c(M) von Tur<strong>in</strong>gmasch<strong>in</strong>en M: Für jede TM<br />

deren Zustände<br />

M = (Q, {0, 1}, δ, q0, q1)<br />

Q = {q0, q1, . . . , qn−1}<br />

so durchnummeriert s<strong>in</strong>d, dass q0 der Initialzustand und q1 der F<strong>in</strong>alzustand ist,<br />

def<strong>in</strong>ieren wir e<strong>in</strong> Codewort<br />

c(M) ∈ {0, 1} ∗<br />

wie folgt. Wir benutzen 0 i um die Zahl i zu codieren und 1 als Trennungssymbol. Das<br />

Wort c(M) hat die folgende Form: Am Anfang steht 111 als Trennungssymbol, dann<br />

folgt 0 n , das die Anzahl n aller Zustände bezeichnet. Dann werden die e<strong>in</strong>zelnen t<br />

Übergangsregeln aus R durch b<strong>in</strong>äre Wörter w1, . . . , wt codiert, wie später erklärt<br />

wird, und durch e<strong>in</strong>e 1 vone<strong>in</strong>ander getrennt. Am Ende schreiben wir wieder 111.<br />

Der Code hat also die Form<br />

c(M) = 1110 n 1w11w21 . . .1wt111.<br />

Um die Übergangsregeln zu codieren, schreiben wir für Zustände 10 i+1 statt qi und<br />

codieren die Symbole L, R, #, 0, 1 wie folgt<br />

Symbol L R # 0 1<br />

Code 10 100 10000 10 4 10 5<br />

Die Übergangsregel<br />

erhält also den Code<br />

die Übergangsregel<br />

den Code<br />

usw.<br />

(qi, 0) → (qj, L)<br />

w = 10 i+1 10 4 10 j+1 10,<br />

(qi, #) → (qj, 0)<br />

w = 10 i+1 10 3 10 j+1 10 4

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!