15.09.2014 Aufrufe

2x2 - Theoretische Informatik - Universität Duisburg-Essen

2x2 - Theoretische Informatik - Universität Duisburg-Essen

2x2 - Theoretische Informatik - Universität Duisburg-Essen

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.

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Goto-Programme<br />

Goto-Programme<br />

Simulation von Turingmaschinenoperationen:<br />

Kopf liest Zeichen: y := x 2 Mod b<br />

Zeichen a j aufs Band schreiben: x 2 := (x 2 Div b) · b + j<br />

(falls a j das j-te Bandsymbol ist)<br />

Kopf nach links: x 2 := x 2 · b + (x 1 Mod b); x 1 := x 1 Div b<br />

Kopf nach rechts: x 1 := x 1 · b + (x 2 Mod b); x 2 := x 2 Div b<br />

Das zu erstellende Goto-Programm besteht nun aus folgenden<br />

drei Programmteilen:<br />

1. Teil: Die in den Variablen befindlichen Parameter werden<br />

in Binärdarstellung transformiert und es wird eine<br />

Darstellung der Startkonfiguration mit Hilfe von x 1 ,<br />

x 2 , x 3 erzeugt.<br />

2. Teil: Die Turingmaschinenberechnung wird durch<br />

Manipulation von x 1 , x 2 , x 3 simuliert.<br />

Goto-Programme<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Barbara König BeKo/TI 107<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Goto-Programme<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

Barbara König BeKo/TI 108<br />

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

Schema:<br />

M 2 : y := x 2 Mod b; (Zeichen einlesen)<br />

If (x 3 = 1) And (y = 1) Then Goto M 1,1 ;<br />

If (x 3 = 1) And (y = 2) Then Goto M 1,2 ;<br />

. . .<br />

M 1,1 : P 1,1 ; (Aktion δ(z 1 , a 1 ) ausführen)<br />

Goto M 2 ;<br />

M 1,2 : P 1,2 ; (Aktion δ(z 1 , a 2 ) ausführen)<br />

Goto M 2 ;<br />

. . .<br />

Im Programmteil P i,j wird die durch δ(z i , a j )<br />

beschriebene Aktion ausgeführt, wobei z i der i-te<br />

Zustand und a j das j-te Bandsymbol ist.<br />

Dabei wird – wie oben beschrieben – das Zeichen,<br />

auf dem der Kopf steht, überschrieben und bei<br />

Bedarf ein Schritt nach links oder rechts ausgeführt.<br />

3. Teil: Die Endkonfiguration gespeichert in x 1 , x 2 , x 3 wird in<br />

die eigentliche Ausgabe in der Variablen x 0 überführt.<br />

Bemerkung: Nur der 2. Teil hängt von der Überführungsfunktion δ<br />

ab.<br />

Barbara König BeKo/TI 109<br />

Barbara König BeKo/TI 110

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!