Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3.5. BERECHENBARE FUNKTIONEN 95<br />
(q0, |) → (q1, #)<br />
(q0, #) → (qF,R)<br />
(q1, #) → (q2, R)<br />
(q2, |) → (q2, R)<br />
(q2, #) → (qF,|)<br />
Genauer, die TM<br />
M = ({q0, q1, q2, qF }, {|}, δ, q0, qF)<br />
mit der oben def<strong>in</strong>ierten Übergangsfunktion δ berechnet die Addition <strong>in</strong> unärer<br />
Darstellung.<br />
Beispiel 4. Multiplikation. Die Funktion<br />
f(n, m) = n ∗ m (unär dargestellt)<br />
kann von der folgenden 2-Band-TM berechnet werden:<br />
Band 1 ist das E<strong>in</strong>gabeband, aus Band 2 schreibt die Masch<strong>in</strong>e n-mal h<strong>in</strong>tere<strong>in</strong>ander<br />
die Zahl m, das heißt, m Symbole ” |“. Dann hält sie und hat auf Band 2<br />
(Ausgabeband) die Zahl n ∗ m.<br />
Def<strong>in</strong>ition. E<strong>in</strong>e Funktion (e<strong>in</strong>er oder mehrerer Variablen) von Σ ∗ nach Γ ∗ heißt<br />
berechenbar oder Tur<strong>in</strong>g-berechenbar, falls sie durch e<strong>in</strong>e TM berechnet werden<br />
kann.<br />
Beispiele 1. f(n) = 2n, f(n, m) = n + m, f(n, m) = n ∗ m und die Funktion<br />
f : Σ ∗ → N, die die Länge berechnet, s<strong>in</strong>d berechenbar.<br />
Bemerkung. 4. Wer der Churchschen These glaubt, erwartet, dass jede durch<br />
e<strong>in</strong>en (term<strong>in</strong>ierenden) Algorithmus gegebene, voll-def<strong>in</strong>ierte Funktion durch<br />
e<strong>in</strong>e TM berechenbar se<strong>in</strong> muss: man implementiert e<strong>in</strong>fach den Algorithmus<br />
auf e<strong>in</strong>er TM.<br />
5. Für partiell def<strong>in</strong>ierte Funktionen f : Σ ∗ → Γ ∗ können wir auch den Begriff<br />
von Berechnung durch e<strong>in</strong>e TM e<strong>in</strong>führen: die Situation, bei der f(w) nicht<br />
def<strong>in</strong>iert ist, entspricht der Berechnung der E<strong>in</strong>gabe w, wobei die TM nicht<br />
hält:<br />
Def<strong>in</strong>ition. E<strong>in</strong>e TM berechnet die partielle Funktion f : Σ ∗ → Γ ∗ , falls ihr E<strong>in</strong>gabealphabet<br />
Σ ∪ Γ enthält und die TM auf jede E<strong>in</strong>gabe w aus Σ ∗ genau dann hält,<br />
wenn f(w) def<strong>in</strong>iert ist, und sie dann den Band<strong>in</strong>halt f(w) hat. Solche Funktionen<br />
heißen partiell-berechenbar.<br />
Beispiel 5. Division. Die Funktion<br />
n : m (ganzzahlig) falls m = 0<br />
f(n, m) =<br />
undef<strong>in</strong>iert falls m = 0<br />
kann von der folgenden 2-Band-TM berechnet werden: Band 1 ist das E<strong>in</strong>gabeband,<br />
auf Band 2 schreibt die TM erst n und dann versucht sie, m Striche auf Band 2<br />
” wegzuwischen“. Falls dies nicht möglich ist, hält sie. Falls es jedoch möglich ist,<br />
versucht die Masch<strong>in</strong>e erneut, m Striche auf Band 2 zu löschen und so weiter.<br />
Beispiel 6. E<strong>in</strong>e unberechenbare Funktion β : →<br />
Diese Funktion, die als ” busy beaver“ (fleißiger Biber) bekannt ist, ist wie folgt<br />
def<strong>in</strong>iert:<br />
β(0) = 0<br />
und für jedes n > 0 ist<br />
β(n) = k,<br />
.