turings arbeiten über berechenbarkeit – eine einführung und lesehilfe

8
HAUPTBEITRAG / TURINGS ARBEITEN ÜBER BERECHENBARKEIT } Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe Uwe Schöning · Wolfgang Thomas Der Name Turing ist heute jedem geläufig, der die Anfangssemester eines Informatikstudiums hinter sich gebracht hat. Zahllose Lehrbücher, Übungs- aufgaben und Klausuren haben den Begriff der Turingmaschine zum Gegenstand. Sehr wenige haben dagegen die Arbeit gelesen, in der Turing 1936 dieses Berechnungsmodell vorgeschlagen und analysiert hat. Das ist schade, denn es handelt sich um eine der originellsten und ideenreichsten wissenschaftlichen Arbeiten, die im vergangenen Jahrhundert verfasst wurden. Man kann sie als das wichtigste Gründungsdokument der Informatik an- sehen. In ihr wird der Grundbegriff der Informatik, nämlich ,,Algorithmus“ (als Verfahren der Sym- bolmanipulation), erstmalig mit überzeugenden Argumenten in eine präzise Form gebracht. Auch heute noch sind viele Abschnitte aus dieser Arbeit lesenswert. Das Original vermittelt eine Frische, wie man sie in den später geschriebenen Lehrbüchern kaum wiederfindet. Doch ist in Turings Text manches schwer verständlich, wenn man nicht die zugehörigen Hintergründe kennt. Das beginnt schon bei dem merkwürdigen Titel: ,,On computable numbers, with an application to the Entscheidungspro- blem“ [10]. Warum wird von berechenbaren Zahlen und nicht von berechenbaren Funktionen ge- sprochen? Was hat es mit dem deutschen Wort ,,Entscheidungsproblem“ auf sich? Im Folgenden versuchen wir, in informellen Worten zu erklären, mit welcher Absicht Turing seine Arbeit verfasst hat und welche Beiträge dort im Einzelnen geleistet werden. Wir gehen auch kurz auf eine zweite, weniger bekannte Folgearbeit [11] von 1938 ein. Das mag auch eine Einladung sein, Abb. 1 Alan M. Turing einmal in die Originaltexte hineinzuschauen. (Sie sind im Band Mathematical Logic der Collected Works of A.M. Turing zu finden [6], ebenso in den Sammelbänden [3] und [4].) Der persönliche und wissenschaftliche Hintergrund Turing (Abb. 1) kam im Alter von 19 Jahren an das King’s College der Universität Cambridge. Er hörte Vorlesungen bei hervorragenden Mathematikern. Turing war an zahlreichen mathematischen Gebieten interessiert, darunter Gruppentheorie, Wahrschein- lichkeitstheorie und besonders mathematische Logik (die durch Forscher wie Russell und Wittgenstein in Cambridge prominent vertreten war). DOI 10.1007/s00287-012-0626-3 © Springer-Verlag 2012 Uwe Schöning Ulm E-Mail: [email protected] Wolfgang Thomas Aachen E-Mail: [email protected] Informatik_Spektrum_35_4_2012 253

Upload: wolfgang-thomas

Post on 25-Aug-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

HAUPTBEITRAG / TURINGS ARBEITEN ÜBER BERECHENBARKEIT }

Turings Arbeitenüber Berechenbarkeit –eine Einführung und Lesehilfe

Uwe Schöning · Wolfgang Thomas

Der Name Turing ist heute jedem geläufig, der dieAnfangssemester eines Informatikstudiums hintersich gebracht hat. Zahllose Lehrbücher, Übungs-aufgaben und Klausuren haben den Begriff derTuringmaschine zum Gegenstand. Sehr wenigehaben dagegen die Arbeit gelesen, in der Turing1936 dieses Berechnungsmodell vorgeschlagen undanalysiert hat. Das ist schade, denn es handeltsich um eine der originellsten und ideenreichstenwissenschaftlichen Arbeiten, die im vergangenenJahrhundert verfasst wurden. Man kann sie als daswichtigste Gründungsdokument der Informatik an-sehen. In ihr wird der Grundbegriff der Informatik,nämlich ,,Algorithmus“ (als Verfahren der Sym-bolmanipulation), erstmalig mit überzeugendenArgumenten in eine präzise Form gebracht. Auchheute noch sind viele Abschnitte aus dieser Arbeitlesenswert. Das Original vermittelt eine Frische, wieman sie in den später geschriebenen Lehrbüchernkaum wiederfindet.

Doch ist in Turings Text manches schwerverständlich, wenn man nicht die zugehörigenHintergründe kennt. Das beginnt schon bei demmerkwürdigen Titel: ,,On computable numbers,with an application to the Entscheidungspro-blem“ [10]. Warum wird von berechenbaren Zahlenund nicht von berechenbaren Funktionen ge-sprochen? Was hat es mit dem deutschen Wort,,Entscheidungsproblem“ auf sich?

Im Folgenden versuchen wir, in informellenWorten zu erklären, mit welcher Absicht Turingseine Arbeit verfasst hat und welche Beiträge dortim Einzelnen geleistet werden. Wir gehen auch kurzauf eine zweite, weniger bekannte Folgearbeit [11]von 1938 ein. Das mag auch eine Einladung sein,

Abb. 1 Alan M. Turing

einmal in die Originaltexte hineinzuschauen. (Siesind im Band Mathematical Logic der CollectedWorks of A.M. Turing zu finden [6], ebenso in denSammelbänden [3] und [4].)

Der persönlicheund wissenschaftliche Hintergrund

Turing (Abb. 1) kam im Alter von 19 Jahren an dasKing’s College der Universität Cambridge. Er hörteVorlesungen bei hervorragenden Mathematikern.Turing war an zahlreichen mathematischen Gebieteninteressiert, darunter Gruppentheorie, Wahrschein-lichkeitstheorie und besonders mathematische Logik(die durch Forscher wie Russell und Wittgenstein inCambridge prominent vertreten war).

DOI 10.1007/s00287-012-0626-3© Springer-Verlag 2012

Uwe SchöningUlmE-Mail: [email protected]

Wolfgang ThomasAachenE-Mail: [email protected]

Informatik_Spektrum_35_4_2012 253

Page 2: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

{ TURINGS ARBEITEN ÜBER BERECHENBARKEIT

Abb. 2 Max Newman

Abb. 3 Kurt Gödel

Nach drei Jahren in Cambridge schrieb er eineArbeit, in der er einen Hauptsatz der Statistik be-wies. Es stellte sich dann heraus, dass dieses Resultatschon Jahre vorher erzielt worden war, ohne dassTuring dies wusste. Doch waren Turings Betreuerso beeindruckt von der Leistung dieses Nachwuchs-wissenschaftlers, dass sie ihm bereits im Alter vonnur 23 Jahren eine Stelle als Fellow am King’s Collegeanboten. In dieser Zeit trieb ihn bereits das Problemum, das ihm dann zu größtem Ruhm verhelfen sollte:das ,,Entscheidungsproblem“.

Er lernte dieses Problem in Vorlesungen vonMax Newman (Abb. 2) kennen, der die damals hoch-aktuellen Resultate von Kurt Gödel (Abb. 3) zu denGrundlagen der Mathematik vorstellte.

Gödel hatte bewiesen, dass der Beweiskalkül fürdie Logik der ersten Stufe nicht nur korrekt, sondernsogar vollständig ist (1930), und dass jeder Versuch,genau die wahren Aussagen der Zahlentheorie zuaxiomatisieren, zum Scheitern verurteilt ist (1931).Dabei war eine Frage offen geblieben, die sich nichtauf die Aussagen in einem festen Modell (dem dernatürlichen Zahlen) bezog, sondern auf die allge-meingültigen Formeln (die in jedem Modell gelten).Zu diesem Begriff der Allgemeingültigkeit hatte derGöttinger Mathematiker David Hilbert (Abb. 4) einfundamentales Problem, eben ,,das Entscheidungs-

Abb. 4 David Hilbert

problem“, formuliert. In seinem mit W. Ackermannverfassten Lehrbuch Grundzüge der theoretischenLogik [7] heißt es auf S. 73 (bezogen auf den ,,enge-ren Funktionenkalkül“, in heutiger Terminologie dieLogik erster Stufe):

,,Das Entscheidungsproblem ist gelöst, wenn manein Verfahren kennt, das bei einem vorgelegtenlogischen Ausdruck durch endlich viele Operatio-nen die Entscheidung über die Allgemeingültigkeitbzw. Erfüllbarkeit erlaubt.“

Mit dem Vollständigkeitssatz von Gödel ist diesäquivalent zur Frage, ob man zu einer Formel ers-ter Stufe entscheiden kann, ob sie im Beweiskalkülder ersten Stufe ableitbar ist oder nicht. Eine po-sitive Lösung dieser Frage war Teil des Bemühensder Schule um Hilbert, die Widerspruchsfreiheitder Mathematik mit rein syntaktischen Methodennachzuweisen. Hilbert hoffte, auf diese Weise alleBedenken zu zerstreuen, die aufgekommen waren,nachdem man bei unvorsichtigen Argumentationenin der Mengenlehre auf Widersprüche gestoßen war.

Die Prominenz des Entscheidungsproblemswird auch dadurch unterstrichen, dass man diedeutsche Bezeichnung international verwendete.Für einen jungen Forscher wie Turing war dasProblem eine faszinierende Herausforderung.Im Sommer 1935 formte sich die Lösung – undzwar in einer Weise, die eher nicht nach HilbertsGeschmack war: Ein Verfahren zur Lösung desEntscheidungsproblems kann es nicht geben.

Die einleitenden Bemerkungen:,,Computable Numbers“

Wenn Turing zeigen wollte, dass es kein Verfahrenzur Lösung des Entscheidungsproblems gibt, dann

254 Informatik_Spektrum_35_4_2012

Page 3: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

musste er den Begriff ,,Verfahren“ präzise fassen.Dies gelang ihm in einer durchschlagenden undoriginellen Weise. Er ging davon aus, dass Verfah-ren ,,maschinell“ ablaufen, und so spricht er in deneinleitenden Sätzen von ,,machines“ als Konkre-tisierung von ,,Verfahren“. Als Beispielsituationbetrachtet er die Erzeugung der Ziffern der De-zimaldarstellungen reeller Zahlen, so wie sie sichetwa bei den Ziffern der Dezimalentwicklung derQuadratwurzel von 2 ergeben:

1. 414213562373095048801688724209698078. ..

Turing endet den ersten Absatz mit den Worten

“According to my definition, a number is com-putable if its decimal can be written down bya machine.” [10, S. 230]

Der Ausgangspunkt Turings sind also Verfahren,die in der Regel gar nicht terminieren. Das magderjenige bedenken, der behauptet, dass Turingma-schinen nur auf endlichen Wörtern arbeiten. Turinghatte von vornherein eine umfassendere Sicht. DieEndlichkeit von Berechnungen spielt freilich danndie entscheidende Rolle, wenn es darum geht, voneiner ,,machine“ zu zeigen, dass sie bei der Erzeu-gung einer reellen Zahl jeweils nach Ausgabe einerZiffer irgendwann (nach endlicher Zeit) auch eineweitere Ziffer liefert. Turing nennt solche Maschinen,,zirkelfrei“. Diese Eigenschaft ist, wie er in einemspäteren Abschnitt zeigt, nicht entscheidbar, ebensowie die elementarere Frage, ob eine gegebene Ma-schine überhaupt jemals ein bestimmtes Symbol(zum Beispiel 0) druckt; dies entspricht dem Halte-problem. In einer späteren Arbeit [11] von 1938 weistTuring nach, dass diese Eigenschaft der Zirkelfrei-heit sich einer höheren Stufe von Unentscheidbarkeitals das Halteproblem befindet (in heutiger Ter-minologie in der Klasse Π2 der ,,arithmetischenHierarchie“).

Mit dem Begriff der berechenbaren Zahl eta-bliert Turing einen neuen Bereich reeller Zahlen,der jenseits der rationalen und der algebraischenZahlen (also der Nullstellen rationaler Funktio-nen) liegt und eine weitere Stufe von Zahlen mit,,endlicher Darstellung“ liefert. Turing weist nach,dass die algebraischen Zahlen berechenbar sind unddass gewisse nichtalgebraische (also transzendente)Zahlen, zum Beispiel e und π , berechenbar sind.

Er entwickelt ein Stück weit eine Theorie der bere-chenbaren Analysis, führt dazu auch berechenbarereelle Funktionen ein und zeigt Resultate wie denfolgenden Zwischenwertsatz: Eine berechenbarewachsende reelle Funktion, die an zwei berechen-baren Stellen einen Wert unter bzw. über Null hat,besitzt dazwischen eine Nullstelle, die wiederum be-rechenbar ist. Wir wollen uns im Folgenden jedochauf diejenigen Teile der Arbeit konzentrieren, diezur negativen Lösung des ,,Entscheidungsproblems“hinführen.

Das Modell der TuringmaschineTuring führt die Maschinen, wie er sie nennt, nacheiner kurzen Motivation unmittelbar ein. Sie wer-den beschrieben durch eine endliche Menge voninneren Zuständen, sowie einen Schreib-Lesekopf,der wie bei einem Tonbandgerät Zeichen von einempotenziell unendlich langen Band ablesen und auchlöschen bzw. durch andere Zeichen überschreibenkann. (Turing stellte sich unter diesem Kopf ganzkonkret einen Menschen als ,,Computer“ vor.) DerSchreib-Lesekopf darf sich dabei nach links undnach rechts bewegen. Turing unterscheidet hier-bei zwischen zwei Arten von Zeichen. Die Zeichen,,erster Art“ sind 0 und 1, die verwendet werden, umdie Binärdarstellung einer reellen Zahl, wie weiteroben beschrieben, Stück für Stück zu generieren.Zwischen diesen Zeichen erster Art können solche,,zweiter Art“ vorkommen, die als Markierungen,,,Flaggen“ oder ,,Schiffchen“ dienen, um den bishererzeugten Zahlenabschnitt zu strukturieren. Aufdiese Weise lässt sich zum Beispiel die irrationaleZahl

0,10110111011110111110111111011111110111111110. . .

berechnen, indem man den zuletzt geschriebenenAbschnitt von Einsen nach hinten kopiert (indemman jeweils Flaggen setzt, um sich zu merken, biswohin man bereits kopiert hat), dann die Kopie umeine weitere 1 verlängert, und dann eine 0 anfügtusw.

Turing gibt einige Beispiele solcher Maschinenan. Dabei führt er nützliche abkürzende Schreib-weisen für bereits einmal entwickelte Maschinenein. Heutzutage würde man sagen, dass dies Be-zeichnungen für Unterprogramme sind. Sodannwerden diese Maschinen zu immer komplexerenzusammengeschaltet.

Informatik_Spektrum_35_4_2012 255

Page 4: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

{ TURINGS ARBEITEN ÜBER BERECHENBARKEIT

Interessanterweise spricht Turing im einfüh-renden Abschnitt von einem Unterschied zwischen,,automatischen Maschinen“ (a-machines), bei de-nen jeder Schritt vollständig bestimmt ist, und,,Wahl-Maschinen“ (c-machines, c wie choice), beidenen das Fortschreiten der Berechnung nur teil-weise festgelegt ist. Eine solche Maschine kann erstdadurch den nächsten Rechenschritt in eindeutigerWeise durchführen, dass ein ,,externer Operator“festlegt, welche der möglichen Auswahlen zu treffenist. Dies ist vor allem bei der Behandlung axiomati-scher Systeme interessant, denn hier sind in jedemBeweisschritt meist mehrere Axiome bzw. Schluss-regeln anwendbar. Dieses Konzept ist nichts anderesals der Unterschied zwischen Determinismus undNichtdeterminismus, der den Jahrzehnte später ein-geführten Komplexitätsklassen P und NP zugrundeliegt.

In Abschn. 9 kommt Turing nochmals zur Mo-tivation und zum Appell an die Intuition zurück,um klarzustellen, dass seine Maschine wirklichden Berechenbarkeitsbegriff adäquat repräsen-tiert. Er erinnert daran, wie ein Schulkind eineschriftliche Addition oder Multiplikation durch-führt, nämlich auf einem in Karos eingeteiltenBlatt Papier. Jedes Karo oder Feld kann eine Zif-fer enthalten, also ein Symbol aus einem endlichenVorrat an Symbolen. Derjenige, der die Rechnungdurchführt, kann immer nur eine sehr begrenzte(endliche) Zahl von Feldern ,,im Auge behalten“.Diese Form der Wahrnehmung kann man dann(durch Verschieben des Lesekopfs) auf eine Folgevon Betrachtungen einzelner Felder reduzieren.Ebenso ist die Anzahl seiner inneren ,,Geistes-zustände“ endlich. Ferner argumentiert Turing(allerdings nicht wirklich rigoros), dass die Tatsacheeines zweidimensionalen Rechenblattes äquivalentdurch ein eindimensionales Rechenband ersetztwerden kann. In diesem Sinne macht er plausibel,dass jedwede Rechnung, die ein Mensch durchführtbzw. durchführen könnte, mithilfe einer geeigne-ten Maschine nachempfunden werden kann. Diesist eine (nicht beweisbare) These, die heutzutageden Namen ,,Church’sche These“ trägt (s. u.) unddie man besser ,,Church-Turing-These“ nennensollte. Des Weiteren wird Turings Idee unterstützt,dass mithilfe seiner Maschinen tatsächlich alleim intuitiven Sinne berechenbaren Funktionenerfasst werden, indem er in Abschn. 10 seiner Ar-beit in recht weitreichender Weise verschiedene

Beispielzahlen und -funktionen als berechenbarnachweist.

Universalität und UnentscheidbarkeitIn einem zentralen Abschnitt seines Papiers zeigtTuring dann, wie eine ,,universelle Maschine“konstruiert werden kann. Dies ist eine einzelneMaschine, die dazu verwendet werden kann, jedeberechenbare Zahl zu berechnen. In gewissemSinne ist diese Maschine also universell program-mierbar. Gibt man ihr die Beschreibung einerbeliebigen Maschine, dargestellt als Nummer (inForm eines Wortes), als Eingabe, so verhält sich dieuniverselle Maschine so wie eben diese Maschine.Heutzutage würde man sagen, eine universelle Ma-schine ist ein Interpreter. Ein Interpreter verhältsich eben so wie das Programm, das man die-sem Interpreter vorgibt. Sehr häufig werden zumBeispiel BASIC-Programme mithilfe von Interpre-tern ausgeführt. Aber im Jahre 1935/36, als Turingdiese Arbeit schrieb und noch keinerlei Compu-ter zur Verfügung standen, war das eine genialeund revolutionäre Idee. Turing zeigt in seiner Ar-beit rigoros, wie ein Turingmaschinen-Interpreter,selbst programmiert als Turingmaschine, zukonstruieren ist.

Nun zeigt sich, dass es sich auszahlt, eine prä-zise formale Definition dessen, was Berechenbarkeitheißt, bereit gestellt zu haben, und eine Begrün-dung dafür angegeben zu haben, dass mit dieserDefinition tatsächlich der intuitive Berechenbar-keitsbegriff adäquat erfasst wird. Nur wenn diesesFundament vorliegt, kann darauf aufbauend nunauch gezeigt werden, dass es nichtberechenbareZahlen bzw. Funktionen gibt. Diese erhält mandann durch die Methode der Diagonalisierung,so wie Cantor mit dieser Diagonalmethode ge-zeigt hat, dass es überabzählbar viele reelle Zahlengibt.

Hiervon ausgehend zeigt Turing dann die Un-entscheidbarkeit des Halteproblems in der folgendenFormulierung [10, S. 248]:

“There can be no machine E which, when suppliedwith the S.D [‘standard description’, d. h. Kodie-rung] of an arbitrary machine M, will determinewhether M ever prints a given symbol (0 say).”

Der Unterschied zwischen Turings Problem,,0 Drucken“ und dem Halteproblem (,,Stoppt die

256 Informatik_Spektrum_35_4_2012

Page 5: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

Turingmaschine mit der gegebenen S.D beim An-setzen auf das leere Band?“) ist unwesentlich; wenneines von beiden entscheidbar ist, dann auch das an-dere. Für die Unentscheidbarkeit des Halteproblemsist das Beweisargument indirekt: Angenommen,dieses Problem wäre entscheidbar, dann gäbe es einefiktive Turingmaschine M, die diese Entscheidungimmer in endlicher Zeit treffen kann. Diese Tu-ringmaschine kann man dann als ,,Black Box“ imRahmen einer umfassenderen Maschine M′ verwen-den. Die Maschine M′ kann man so konstruieren,dass sie gerade dann nicht stoppt, wenn die BlackBox im Inneren ,,stoppt“ anzeigen würde. Die Ma-schine M′ besitzt selber wiederum eine S.D. Mankönnte also diese S.D. von M′ der Maschine M′ alsEingabe zuführen. Es stellt sich dann heraus, dassdie Annahme, die Maschine würde stoppen, zurKonsequenz hat, dass sie gerade nicht stoppt, undebenso umgekehrt. Dieser logische Widerspruchzeigt – auch wenn dies einem Anfänger oft schwerfällt zu glauben – dass die ursprüngliche Annahme,nämlich die Entscheidbarkeit des Halteproblems,falsch gewesen sein muss.

Unlösbarkeit des Hilbert’schenEntscheidungsproblems

Anknüpfend an dieses Resultat beweist Turing dieUnlösbarkeit des Hilbert’schen Entscheidungspro-blems. Er benutzt Gödels Vollständigkeitssatz, nachdem die allgemeingültigen Formeln mit denjeni-gen übereinstimmen, die man im Beweiskalkül derLogik erster Stufe formal beweisen kann. Turingzeigt, dass es kein Verfahren gibt, mit dem man dieBeweisbarkeit einer Formel entscheiden kann [10,S. 259]:

“Corresponding to each computing machine M weconstruct a formula Un(M) and we show that, ifthere is a general method for determining whetherUn(M) is provable, then there is a general methodfor determining whether M ever prints 0.”

Turing führt dazu also eine Problemreduktiondurch: Un(M) wird zu gegebener Maschine M sokonstruiert, dass M irgendwann 0 druckt genaudann, wenn Un(M) ableitbar ist. Dazu wird dieArbeitsweise von M, also das Fortschreiten vonKonfiguration zu Konfiguration, durch bestimmteFormeln beschrieben, sodass das Erreichen einer,,print 0“-Konfiguration durch die Beweisbarkeit

Abb. 5 Alonzo Church

einer entsprechenden Formel, eben Un(M), ausge-drückt wird. (Der Text verrät übrigens nicht, welcheIdee sich hinter der Bezeichnung ,,Un“ verbirgt.)Diese Konstruktion wird sehr gedrängt dargestellt;und tatsächlich unterlief Turing hier ein kleinerFehler, den Hilberts Assistent Paul Bernays ent-deckte und den Turing in einer Korrekturnote [10]berichtigte.

Äquivalenz zwischen Turingmaschinenund Lambda-Kalkül

Als Turing seine Arbeit fertiggestellt und eingereichthatte, erfuhr er zu seiner großen Enttäuschung,dass soeben im ersten Band des neugegründetenJournal of Symbolic Logic ein Papier von AlonzoChurch ,,A Note on the Entscheidungsproblem“ [2]im Druck war – mit exakt dem Hauptergebnis sei-nes eigenen Artikels: Das Hilbert’sche Entschei-dungsproblem ist unlösbar.

Church (Abb. 5) war von einer anderen Präzi-sierung des Begriffs ,,berechenbar“ ausgegangen: Erarbeitete mit dem ,,Lambda-Kalkül“, einer Theorieder Termersetzung, in der man u. a. Funktionen überden natürlichen Zahlen definieren konnte. In einerlängeren Arbeit [1] (auch von 1936) hatte er vorge-schlagen, eine Funktion als ,,effectively calculable“anzusehen, wenn sie im Lambda-Kalkül definierbarist. Dies ist die ,,Church’sche These“, die Gleich-setzung des intuitiven Begriffs ,,berechenbar“ miteinem präzisen Definierbarkeitsbegriff (allerdingsohne eine so sorgfältige Rechtfertigung, wie Turingsie für seine Maschinen vorgenommen hatte).

Church zeigte dann auch, dass man diejeni-gen Lambda-Terme, die sich in eine bestimmteNormalform bringen lassen, nicht ihrerseits durcheinen Lambda-Term definieren kann; damit warihm erstmals der Nachweis eines unentscheidbaren

Informatik_Spektrum_35_4_2012 257

Page 6: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

{ TURINGS ARBEITEN ÜBER BERECHENBARKEIT

Abb. 6 Stephen C. Kleene

Abb. 7 Emil Post

Problems gelungen. In seiner ,,Note on the Entschei-dungsproblem“ übertrug er dieses Resultat auf dasHilbert’sche Entscheidungsproblem.

Turing musste nach Kenntnis der Arbeit vonChurch in seiner eigenen Arbeit darauf reagieren. Ertat es, indem er in einen Appendix anfügte, in wel-chem er bewies, dass die Lambda-Definierbarkeiteiner Funktion äquivalent ist zur Berechenbar-keit durch seine Maschinen. Damit war klar, dassdie beiden Arbeiten zum Hilbert’schen Entschei-dungsproblem (von Church und von Turing) in derTat dasselbe bewiesen. Dass diese doch sehr ver-schiedenartigen Formalismen im präzisen Sinneäquivalent sind, war ein weiteres Argument da-für, dass man damit einen fundamentalen Begriffgetroffen hatte.

Im gleichen Jahr 1936 erschienen noch zweiweitere Arbeiten, die ebenfalls aus verschiedenenBlickwinkeln zu exakt dem gleichen Berechenbar-keitsbegriff führten. (So schreibt R. Gandy, SchülerTurings, später von einer ,,confluence of ideas in1936“; vgl. [5]). Die erste Arbeit wurde von StephenC. Kleene (Abb. 6) verfasst, der gerade bei Church

seine Promotion abgeschlossen hatte, die zweitevon Emil Post (Abb. 7), der völlig unabhängig vonChurch und Kleene in New York arbeitete.

Kleene entwickelte einen Zugang zum Begriffder Berechenbarkeit, indem er von den Rekursions-gleichungen ausging, mit denen in der MathematikFunktionen über den natürlichen Zahlen definiertwerden. Diese Definitionen enthalten ja implizitauch Berechnungsvorschriften, und es bot sich an,den Begriff der Berechenbarkeit in Schemata derRekursion zu verankern. Anknüpfend an Überle-gungen von Gödel und Herbrand stellte Kleene in [8]seinen Kalkül der ,,rekursiven Funktionen“ vor, dervon einfachen Basisfunktionen ausging und dreiDefinitionsprozesse benutzte: die Einsetzung vonFunktionen, die ,,primitive Rekursion“ sowie dieAnwendung eines Minimierungsoperators (der diekleinste Zahl mit einer gegebenen Eigenschaft lie-fert, sofern eine solche Zahl existiert). Kleene zeigte,dass eine Funktion in diesem Sinne genau dann re-kursiv ist, wenn sie im Lambda-Kalkül definierbarist.

Emil Post führte in [9] ein Berechnungsmodellein, das bis auf Details mit dem Ansatz Turings über-einstimmt: In einem ,,computation space“, der exaktdem Turingband entspricht, verwendete er dieselbenelementaren Schritte der Symbolverarbeitung wie esTuring getan hatte. Offenbar lag die Idee der lokalenSymbolmanipulation in Wörtern als Grundidee desalgorithmischen Vorgehens ,,in der Luft“.

Doch geht Turings Arbeit in mehrerlei Hinsichtentscheidende Schritte weiter als die Arbeiten vonChurch, Kleene und Post. Zunächst liefert Turingin drei sorgfältig unterschiedenen Kategorien eineklare Rechtfertigung für sein Modell. (Dies ist derberühmte, bereits oben erwähnte Abschn. 9 seinerArbeit, der auch heute noch eine lohnende Lektürefür jede Informatikerin und jeden Informatiker ist.)Auch die Konzeption der universellen Maschine, imVorgriff auf die Idee des Interpreters in der Informa-tik, zeichnet Turings Arbeit gegenüber denjenigenseiner Zeitgenossen aus.

Schließlich hat Turings Modell gegenüber demLambda-Kalkül und dem Formalismus der re-kursiven Funktionen einen Vorteil, der erst vielspäter – bei Begründung der Komplexitätstheo-rie – zum Zuge kommen sollte: Man kann einerBerechnung in ganz natürlicher Weise die beidenwesentlichen Ressourcenparameter zuordnen, dieden ,,Aufwand“ der Rechnung bestimmen, nämlich

258 Informatik_Spektrum_35_4_2012

Page 7: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

Zeitbedarf und Speicherbedarf: Man zählt hierzueinfach, wie viele Rechenschritte die Maschine be-nötigt und wie viele Felder des Bandes sie besucht.Damit lassen sich ohne künstliche Konventionen diewesentlichen Parameter für Komplexitätsanalysenfixieren. Weder der Lambda-Kalkül noch die rekur-siven Funktionen erlauben dies in direkter Weise.Und so kommt es, dass die Komplexitätstheorie inder Regel im Modell der Turingmaschine verankertwird.

Es war vermutlich die Schlüssigkeit der Ar-gumentation Turings, die auch sehr vorsichtigeForscher schließlich überzeugte, dass wirklich eineadäquate Präzisierung des intuitiven und vagenBegriffs ,,berechenbar“ gelungen war. Insbeson-dere war es Gödel, der zehn Jahre später zugestand,dass nunmehr ein präziser Begriff von ,,berechen-bar“ gefunden war, der ,,by a kind of miracle“ eineAbsolutheit beanspruchen konnte, die man an-deren Fundamentalbegriffen (wie zum Beispiel,,definierbar“ oder ,,beweisbar“) nicht zuordnenkann (da hier notwendigerweise nur relativ zueinem bestimmten Kalkül argumentiert werdenkann).

Für Turing leitete die zunächst betrüblicheNachricht, dass Church bereits die Unlösbarkeit desHilbertschen Entscheidungsproblems gezeigt hatte,eine neue Etappe seiner Karriere ein. Sein BetreuerNewman schrieb sofort an Church und empfahl ihm,Turing als Doktorand in Princeton anzunehmen.Bereits im Herbst 1936 traf Turing in Princeton ein,und dort vollendete er auch den Appendix mit demÄquivalenzbeweis zwischen seinen Maschinen unddem Lambda-Kalkül. Umgekehrt war es Church, derin dem von ihm begründeten Journal of SymbolicLogic eine Rezension der Arbeit Turings veröffent-lichte und dabei den Terminus ,,Turing machine“einführte.

Relative BerechenbarkeitTurings Dissertation war schon nach zwei Jahrenfertiggestellt. Diese Arbeit ,,Systems of logic basedon ordinals“ von 1938 [11] ist nicht ganz einfach zulesen, sie strotzt aber nur so von Turings Ideen-reichtum. Verschiedene neue Ansätze werden hierverfolgt, manche auch nur kurz angerissen, diespäter aber in zahlreichen Veröffentlichungen an-derer Autoren weitergeführt werden. So geht es umCharakterisierungen und Beispiele von logischenEntscheidungsproblemen in verschiedenen Stufen

der Unentscheidbarkeit (der sog. arithmetischenHierarchie). Ganz besonders interessant, auch fürspätere Anwendungen in der Theorie der Unlösbar-keitsgrade, aber auch in der Komplexitätstheorie,ist das Konzept der Orakel-Turingmaschine, mit derBerechenbarkeit – relativ zu einem vorgegebenen,,Orakel“, das sehr wohl auch ein unentscheidbaresProblem repräsentieren kann – beschrieben wird.

“Let us suppose that we are supplied with someunspecified means of solving number-theoreticproblems: a kind of oracle as it were. [...] With thehelp of the oracle we could form a new kind ofmachine (call them o-machines), having as one ofits fundamental processes that of solving a givennumber-theoretic problem.” [11, S. 172 f.]

Mit diesem Konzept ist es möglich, über die relativeBerechenbarkeit (Problem A ist entscheidbar, so-fern wir die Hypothese akzeptieren, Problem B wäreentscheidbar), und in abgewandelter Form auchüber die relative Komplexität von algorithmischenProblemstellungen, zu reden. Dieses Konzept der,,Reduzierbarkeit“ (von Problem A auf Problem B)spielt eine entscheidende Rolle in der Theorie derNP-Vollständigkeit, die erst in den 1970er-Jahrenentwickelt wurde.

SchlusswortTurings Arbeit von 1936 gehört zu den erstaun-lichsten und einflussreichsten wissenschaftlichenPublikationen im Bereich der mathematischen Wis-senschaften. Dass dies ein 24-Jähriger fertiggebrachthat, ist – um Gödels Worte aufzugreifen – ebenfalls,,a kind of miracle“. Neben einer überragenden Be-gabung war sicher auch wesentlich, dass Turing ineiner Umgebung lernte und forschte, die führendauf dem Gebiet der Grundlagenforschung wirkte –seine Lehrer und Betreuer gehörten zur ChampionsLeague der Mathematik. Umso bemerkenswerterist die Tatsache, dass sich Turing später auch alsIngenieur in der Konzeption von Rechenmaschinenengagierte, also auch im praktischen Sinne einer derersten ,,Informatiker“ wurde.

Literatur1. Church A (1936) An unsolvable problem of elementary number theory. Amer J

Math 58:345–3632. Church A (1936) A note on the Entscheidungsproblem. J Symb Log 1:40–413. Copeland BJ (ed) (2004) The Essential Turing. Oxford Univ. Press, Oxford4. Davis M (1965) The Undecidable. Raven Press, Hewlett

Informatik_Spektrum_35_4_2012 259

Page 8: Turings Arbeiten über Berechenbarkeit – eine Einführung und Lesehilfe

{ TURINGS ARBEITEN ÜBER BERECHENBARKEIT

5. Gandy RO (1995) The confluence of ideas in 1936. In: Herken R (ed) The Univer-sal Turing Machine: a Half-Century Survey. Springer, Wien

6. Gandy RO, Yates CEM (eds) (2001) Collected Works of A.M. Turing, vol Mathema-tical Logic. North-Holland, Elsevier, Amsterdam

7. Hilbert D, Ackermann W (1928) Grundzüge der theoretischen Logik. Springer,Berlin

8. Kleene SC (1936) λ-definability and recursiveness. Duke Math J 2:340–353

9. Post E (1936) Finite combinatory processes – formulation I. J Symb Log1:103–105

10. Turing AM (1936/37) On computable numbers, with an application to the Ent-scheidungsproblem. In: Proc Lond Math Soc, ser 2, 42:230–265. A correction, ibid.vol 43:544–546

11. Turing AM (1939) Systems of logic based on ordinals. In: Proc Lond Math Soc,ser 2, 45:161–228

260 Informatik_Spektrum_35_4_2012