Handout - Institut für Theoretische Informatik - Technische ...

Handout - Institut für Theoretische Informatik - Technische ... Handout - Institut für Theoretische Informatik - Technische ...

iti.cs.tu.bs.de
von iti.cs.tu.bs.de Mehr von diesem Publisher
05.11.2013 Aufrufe

3. Turingmaschinen 3.4 Turing-berechenbare partielle Funktionen Beispiel ( f (n, m) = n + m : Wähle Σ = Γ = {|} , B = {|, @, #} .) Idee: 2-Band Maschine; Eingabe auf B 1 kopieren, dabei das Trennsymbol @ überspringen. 〈|, #〉/〈#, L〉, 〈|, R〉 〈|, #〉/〈#, L〉, 〈|, R〉 start q 0 〈@, #〉/〈#, L〉, 〈#, N〉 q F Idee: 1-Band Maschine; Trennsymbol @ mit erstem | von rechts überschreiben |/〈|, L〉 |/〈|, R〉 start q 0 |/〈#, L〉 q1 @/〈|, R〉 q F @/〈#, N〉 Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS 2012 40 / 215

3. Turingmaschinen 3.4 Turing-berechenbare partielle Funktionen Beispiel ( f (n, m) = n · m : Wähle Σ = Γ = {|} , B = {|, #} .) Wir begnügen uns nun mit einer High-Level-Beschreibung: Idee: 3-Band Maschine; das zweite Argument der Eingabe | n #| m auf B 2 verschieben; für jedes Symbol | auf B 2 das verbliebene Argument | n von B 0 nach B 1 kopieren, von links nach rechts. Bemerkung Die Erfahrungen mit Turing Maschinen und anderen Versuchen aus der ersten Hälfte des 20. Jahrhunderts, den Begriff der “durch einen (terminierenden) Algorithmus berechenbaren Funktion” formal zu fassen, führten zu der Vermutung, daß jede solche (totale) Funktion Turing-berechenbar sein muß. Diese nicht beweisbare Vermutung ist bekannt als Church-Turing These und wird in Kapitel 4 ausführlicher behandelt. Wie üblich stellt sich jetzt die Frage nach Funktionen, die nicht Turing-berechenbar sind. Jürgen Koslowski (TU-BS) Theoretische Informatik 2 SS 2012 41 / 215

3. Turingmaschinen 3.4 Turing-berechenbare partielle Funktionen<br />

Beispiel ( f (n, m) = n + m : Wähle Σ = Γ = {|} , B = {|, @, #} .)<br />

Idee: 2-Band Maschine; Eingabe auf B 1 kopieren, dabei das Trennsymbol<br />

@ überspringen.<br />

〈|, #〉/〈#, L〉, 〈|, R〉<br />

〈|, #〉/〈#, L〉, 〈|, R〉<br />

start<br />

q 0<br />

〈@, #〉/〈#, L〉, 〈#, N〉<br />

q F<br />

Idee: 1-Band Maschine; Trennsymbol @ mit erstem | von rechts<br />

überschreiben<br />

|/〈|, L〉<br />

|/〈|, R〉<br />

start q 0<br />

|/〈#, L〉 q1<br />

@/〈|, R〉<br />

q F<br />

@/〈#, N〉<br />

Jürgen Koslowski (TU-BS) <strong>Theoretische</strong> <strong>Informatik</strong> 2 SS 2012 40 / 215

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!