11
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Embed Size (px)

Citation preview

Page 1: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 1

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität

Page 2: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 2

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität

Programmiertechniken: Zustand fungiert als „endlicher Speicher“

Page 3: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 3

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätProgrammiertechniken

„Zeichen markieren“

Um zu „markieren“, füge neuen Buchstaben

hinzu. steht für die markierte Version

von .

Beispiel: Animation aus http://i10www.ira.uka.de/arbeiten/

info3-animationen/Animationen

Page 4: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 4

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätMehrband-Turingmaschinen

Page 5: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 5

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität1-Band-versus k-Band Turingmaschinen

Wird die Sprache Lµ * von einer k-Band

Turingmaschine M entschieden (akzeptiert),

so gibt es auch eine 1-Band Turingmaschine,

die L entscheidet (akzeptiert).

Page 6: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 6

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexitätk-Band DTMs berechnen Funktionen

Page 7: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 7

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexitätk-Band DTMs berechnen Funktionen

Der Beweis von Satz 2.2.2 liefert nun auch, dass

es für jede Funktion f, die durch eine k-Band DTM

Berechnet wird, auch eine 1-Band DTM gibt, die

f berechnet.

Page 8: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 8

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätRegistermaschinen

Schematische Darstellung einer RAM

Page 9: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 9

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätRegistermaschinen

Page 10: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 10

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und KomplexitätRegistermaschinen

Page 11: Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität

Friedhelm Meyer auf der Heide 11

HEINZ NIXDORF INSTITUTUniversität Paderborn

Algorithmen und Komplexität

Turingmaschinen/Registermaschinen/Church‘sche These

Satz 2.3.1: Jede RAM kann durch DTM simuliert werden

Satz 2.3.2: Jede DTM kann durch RAM simuliert werden

Intuitiv: RAM-“Programmiersprache“ ist einfache, aber

„vollständige“ Assembler-Sprache, also:

Church‘sche These (1936). Die im intuitiven Sinne berechenbaren Funktionen sind genau die, die durch Turingmaschinen berechenbar sind.