Leitfiiden und Monographien
der Informatik
E. Engeler/P. Liiuchli
Berechnungstheorie fUr Informatiker
Leitfiden und Monographien
der Informatik
Herausgegeben von
Prof.
Prof.
Prof.
Prof.
Dr.
Dr.
Dr.
Dr.
Hans-Jurgen Appelrath, Oldenburg
Volker Claus, Oldenburg
Gunter Hotz, Saarbriicken
Klaus Waldschmidt, Frankfurt
Die Leitfaden und Monographien behandeln Themen aus der Theoretischen, Praktischen und Technischen Informatik entsprechend dem aktuellen Stand der Wissenschaft. Besonderer Wert wird auf eine systematische
und fundierte Darstellung des jeweiligen Gebietes gelegt. Die Bucher dieser Reihe sind einerseits als Grundlage und Erganzung zu Vorlesungen der
Informatik und andererseits als Standardwerke fur die selbstandige Einarbeitung in umfassende Themenbereiche der Informatik konzipiert. Sie
sprechen vorwiegend Studierende und Lehrende in Informatik-Studiengangen an Hochschulen an, dienen aber auch in Wirtschaft, Industrie und
Verwaltung tatigen Informatikem zur Fortbildung im Zuge der fortschreitenden Wissenschaft.
Berechnungstheorie
fiir
Informatiker
Von Prof. Dr. sc. math. Erwin Engeler
und Prof. Dr. sc. math. Peter Uiuchli
Unter Mitwirkung von Dr. sc. math. Ronald Peikert
Eidg. Technische Hochschule Zurich
2., durchgesehene Auflage
Mit 22 Abbildungen und 34 Ubungsaufgaben
83
B. G. Teubner Stuttgart 1992
Prof. Dr. sc. math. Erwin Engeler
Geboren 1930 in Schaffhausen, Schweiz. Von 1950 bis 1955 Mathematikstudium an der Eidg. Technischen Hochschule Zurich, Diplom 1955, Dr.
sc. math. 1958. Liingerer Aufenthalt in USA: Assistenzprofessor Univ. of
Minnesota, Univ. of Calif. Berkeley 1958 bis 1963. Assoc. Prof. 1963, Professor 1967 (Univ. of Minnesota). Seit 1972 an der ETH fUr Logik und
Informatik.
Prof. Dr. Peter Liiuchli
Geboren 1928 in Zurich, Schweiz. Von 1948 bis 1953 Studium an der Eidg.
Technischen Hochschule (ETH) in Zurich mit AbschluB in Theoretischer
Physik. Assistent am Institut fUr Angewandte Mathematik, Mitarbeit an
der Fertigstellung des Computers ERMETH. 1959 Promotion in Mathematik, 1961 Habilitation an der ETH. 1964 Assistenzprofessor fUr Angewandte Mathematik, 1968 a. o. Prof. fUr Computerwissenschaften. 1972
Studienaufenthalt im IBM-Forschungslabor Yorktown Heights, N. Y. Seit
1983 Ordinarius fUr Informatik an der ETH Zurich.
Dr. sc. math. Ronald Peikert
Geboren 1955 in Zurich, Schweiz. Von 1974 bis 1979 Studium an der Eidg.
Technischen Hochschule Zurich mit AbschluB als Dipl. Math., 1985 Promotion. 1986 Visiting Assistant Professor an der University of Minnesota.
Seit 1987 Oberassistent an der ETH Zurich.
Die Deutsche Bibliothek - CIP·Einheitsaufnahme
Engeler, Erwin:
Berechnungstheorie fUr Informatiker I von Erwin Engeler und
Peter Uiuchli. Unter Mitw. von Ronald Peikert. - 2., durchges.
Aufl. - Stuttgart: Teubner, 1992
(Leitfliden und Monographien der Informatik)
ISBN 978-3-519-12258-6
ISBN 978-3-322-92677-7 (eBook)
DOI 10.1007/978-3-322-92677-7
NE: Uiuchli, Peter:
Das Werk einschlie13lich aller seiner Teile ist urheberrechtlich geschUtzt. Jede Verwertung au13erhalb
der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Veri ages unzuliissig und
strafbar. Das gilt besonders fUr Vervie1fii1tigungen, Ubersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.
© B. G. Teubner Stuttgart 1988
Gesamtherstellung: Zechnersche Buchdruckerei GmbH, Speyer
Umschlaggestaltung: M. Koch, Reutlingen
Vorwort
Der Inhalt dieses Buches entspricht weitgehend dem Stoff, den die beiden Autoren
seit mehreren lahren in einem zweisemestrigen Kurs fUr Informatiker an der ETH
Ziirich vermitteln. Vieles davon ist bereits friiher in der Form von provisorischen
Notizen von E. Engeler als "Kleines Repetitorium der Berechnungstheorie" an die Studenten abgegeben worden.
Bei der Niederschrift des nun vorliegenden Textes hat sich immer deutlicher
gezeigt, dass sich eine weitgehend unabhangige Redaktion der beiden, jetzt auch im
Inhaltsverzeichnis abgegrenzten Teile, sowohl arbeitstechnisch als auch von der
Stoffbehandlung her, als durchaus natUrlich aufdrangte. So hat denn P. Lauchli den
ersten, E. Engeler den zweiten Teil selbstandig betreut. Wir haben uns zwar punkto
Notation weitgehend abgesprochen, nehmen jedoch eine gewisse Verschiedenheit im Sti!
bewusst in Kauf.
FUr die Lektiire des Buches wird vorausgesetzt, dass der Leser iiber das mathematische Riistzeug verftigt, welches etwa in einem elementaren Kurs "Diskrete Mathematik" in den unteren Semestem eines Hochschulstudiums, Richtung Inforrnatik oder Elektrotechnik, angeboten wird. Dazu gehoren jedenfalls Grundbegriffe bezUglich Mengen,
Funktionen, Relationen etc.
Der erste Teil, im allgemeinen elementarer formuliert, entspricht ungefahr der oben
erwahnten ersten Vorlesung ("Berechnungstheorie", 4. Semester), in welcher vor allem
der Berechenbarkeitsbegriff herausgearbeitet und eine erste Bekanntschaft mit der Erzeugung, bzw. Erkennung von formalen Sprachen anhand der ausfUhrlich diskutierten
regularen Sprachen vermittelt wird. Die anschliessend eingeftihrte Fixpunkttheorie solI
dem Studenten ein theoretisches Werkzeug in die Hand geben, welches ihm erlaubt, verschiedene Gegenstiinde von einem einheitlichen Standpunkt aus zu betrachten.
Schliesslich liefert der "Hauptsatz iiber syntaktische Strukturen" eine Grundlage fUr die
strenge Definition der Semantik forrnaler Sprachen.
1m zweiten Teil, der in der Darstellung konzentrierter und anspruchsvoller gehalten
ist, kommt zumindest teilweise der Inhalt unserer zweiten Vorlesung ("Theoretische
Inforrnatik", 6. Semester) zur Sprache. Hier wird zunachst ftir die Konstruktion eines
Universalprogramrns, das aIle partiell-rekursiven Funktionen berechnen kann, eine
Godel-Numerierung der Programme und Wertbelegungen eingefUhrt und die effektive
Aufzahlung der erwahnten Funktionsklasse dann gleich in der Rekursionstheorie
angewendet. Verschiedene Maschinenmodelle (Turing-, Tag-Maschine, k-Kellerautomat)
werden als aquivalent erkannt und zur Diskussion von einigen klassischen unentscheidbaren Problemen herangezogen. Schliesslich kommt als wichtige Datenstruktur (zu den
bisherigen Zahlen und Zeichenreihen) diejenige der Listen ins Spiel, wo die
Identifikation von Daten und Programmen beide als Listen zu LISP-artiger Rekursion
ftihrt. Dabei ergeben sich natiirliche Verwendungen der Hauptsatze der Rekursionstheo-
6
Vorwort
rie sowohl fUr die Semantik rekursiver Definitionen als auch fUr die Grundlegung einer
Theorie von Interpretem und Compilem.
Zum ganzen Buch ist zu sagen, dass darin keineswegs alles behandelt wird, was zu
einem Minimum an Theorie in die Ausbildung zum Diplom-Informatiker gehort. So
fehlen z.B. konkret folgende Gegenstande: kontextfreie Sprachen, Automatentheorie
(ausser den endlichen Akzeptoren fUr reguliire Sprachen), Komplexitiitstheorie, LogikProgrammierung. Fiir diese Gebiete muss auf entsprechende Literatur hingewiesen werden.
In der vorliegenden zweiten Auflage wurden lediglich die uns bis dahin zur
Kenntnis gebrachten Fehler korrigiert.
Beide Autoren m6chten an dieser Stelle Herro Dr. R. Peikert recht herzlich danken
fUr die mehr als kompetente tiitige Mithilfe bei der letzten Redaktion und der Erstellung
des Textes. Von ihm stammen die Formulierungen fUr die den Kapiteln beigegebenen
Ubungsaufgaben, und ohne ihn ware das Biichlein wohl irgendwo auf der Strecke
geblieben. Dank gebiihrt auch Herro E. Bauer, der eine Vorversion erstellt hat und dem
Teubner Verlag fUr die vorbildliche Betreuung und Geduld.
Ziirich, im Januar 1992
E. Engeler, P. Liiuchli
Inhalt
VOIwort
5
Inhalt
7
Teil I
Berechenbarkeit, Aufziihlbarkeit
1.1
1.2
1.3
1.4
2
2.1
2.2
2.3
2.4
2.5
3
LOOP- / WHILE-Berechenbarkeit
Primitiv-rekursive, partiell-rekursive Funktionen
Aquivalenz von Berechenbarkeitsbegriffen
Aufziihlbarkeit
Ubungsaufgaben
Automaten und formale Sprachen
Produktionsgrammatiken
Endliche Akzeptoren und reguliire Sprachen
ReguUire Ausdriicke
Einige Satze tiber regulare und kontextfreie Sprachen
Kongruenzrelationen und reguliire Sprachen
Ubungsaufgaben
Fixpunkttheorie
Ubungsaufgaben
4
Syntaktische Strukturen
Ubungsaufgaben
10
10
16
23
26
30
32
32
36
44
48
51
56
58
65
66
73
Inhalt
8
Teil II
5
5.1
5.2
5.3
6
6.1
6.2
7
7.1
7.2
7.3
GOdelisierung und Universalprogramme
76
Godelnumerierung
Ein Universalprogramm
Ausblick in die Rekursionstheorie
Ubungsaufgaben
77
Unlosbare Probleme der Informatik
87
Tag-Maschinen und unlOsbare kombinatorische Probleme
Turing-Maschinen, Kellerautomaten und der Schluss des Zirkels
Ubungsaufgaben
Rekursive Prozeduren
Rekursion und LISP
Fixpunktsemantik
Partielle Evaluation, Interpreter und Compiler
Ubungsaufgaben
79
81
86
88
94
99
100
100
103
109
113
Bibliographische Schluss bemerkungen
114
Sachverzeichnis
118