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

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

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 />

Loop-Programme<br />

Loop-Programme können aber gewisse Programmkonstrukte<br />

simulieren, die in der Syntax nicht enthalten sind.<br />

Multiplikation<br />

Simulation von x 0 := x 1 · x 2<br />

Wir werden im folgenden solche Konstrukte in Programmen verwenden.<br />

Wir nehmen dann an, dass sie – wie oben – geeignet simuliert<br />

werden.<br />

Analog: Ganzzahlige Division (x Div y) und Divisionsrest<br />

(x Mod y).<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

While-Programme<br />

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

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

While-Programme<br />

Syntax und Semantik von While-Programmen<br />

Statt Loop-Schleifen verwenden wir While-Schleifen der Form<br />

While x i ≠ 0 Do P End<br />

Programm P wird so lange ausgeführt bis der Wert von x i gleich 0<br />

ist.<br />

Eine Loop-Schleife<br />

Loop x Do P End<br />

kann simuliert werden durch<br />

y := x;<br />

While y ≠ 0 Do y := y − 1; P End<br />

Wichtig: dabei ist y eine neue Variable, die insbesondere in P nicht<br />

vorkommt.<br />

Kontextsensitive und Typ-0-Sprachen<br />

Berechenbarkeitstheorie<br />

Komplexitätstheorie<br />

While-Programme<br />

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

Berechnungsmodelle<br />

Unentscheidbarkeit<br />

Unentscheidbare Probleme<br />

While-Berechenbarkeit (Definition)<br />

Eine Funktion f : N k 0 → N 0 heißt While-berechenbar, falls es ein<br />

While-Programm P gibt, das<br />

gestartet mit n 1 , . . . , n k ∈ N 0 in den Variablen x 1 , . . . , x k<br />

stoppt mit f (n 1 , . . . , n k ) in der Variablen x 0 , falls<br />

f (n 1 , . . . , n k ) definiert ist.<br />

Ansonsten terminiert P nicht.<br />

While-Programme → Turingmaschinen<br />

Jede While-berechenbare Funktion ist auch Turing-berechenbar.<br />

Anders ausgedrückt: Turingmaschinen können While-Programme<br />

simulieren.<br />

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

Barbara König BeKo/TI 94

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!