Skript Math Grundlagen

February 14, 2018 | Author: Luki Setiarini | Category: Set (Mathematics), Databases, Mathematical Concepts, Psychology & Cognitive Science, Cognitive Science
Share Embed Donate


Short Description

Download Skript Math Grundlagen...

Description

Mathematische Grundlagen fu¨r die Informatik

Kurt-Ulrich Witt Hochschule Bonn-Rhein-Sieg Fachbereich Informatik b-it Applied Science Institute Grantham-Allee 20 53757 Sankt Augustin [email protected]

Hochschule Bonn-Rhein-Sieg Fachbereich Informatik

b-it Applied Science Institute

c Kurt-Ulrich Witt

Dieses Skript ist urheberrechtlich gesch¨ utzt. Alle Rechte vorbehalten. Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne schriftliche Zustimmung des Autors nicht erlaubt. ¨ Dies gilt insbesondere f¨ ur die Vervielf¨altigung, Ubersetzung oder die Verwendung in elektronischen Systemen. Alle Darstellungen wurden mit gr¨oßter Sorgfalt vorgenommen. Der Autor kann jedoch nicht f¨ ur Sch¨ aden haftbar gemacht werden, die in Zusammenhang mit der Verwendung des Skriptes stehen.

K.-U.W.

Sankt Augustin, 27. November 2011

Inhaltsverzeichnis Vorwort

ix

Kleiner Griechisch-Kurs f¨ ur Informatikerinnen und Informatiker

I

xiii

Mengen und Logik

1

1 Definition und Darstellung von Mengen 1.1 Ein Mengenbegriff . . . . . . . . . . . . 1.2 Darstellung von Mengen . . . . . . . . . 1.3 Bezeichner f¨ ur Zahlenmengen . . . . . . 1.4 Russellsche Antinomie . . . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

5 5 8 10 11

2 Aussagenlogik 2.1 Alphabet der Aussagenlogik . . . . . . . . . . . . 2.2 Syntax aussagenlogischer Formeln . . . . . . . . 2.3 Semantik aussagenlogischer Formeln . . . . . . . 2.3.1 Interpretation aussagenlogischer Formeln 2.3.2 Wahrheitstafeln . . . . . . . . . . . . . . . 2.3.3 Aussagenlogische Operationen . . . . . . . 2.3.4 Erf¨ ullbarkeit aussagenlogischer Formeln . 2.4 Logische Folgerung . . . . . . . . . . . . . . . . . 2.5 Kalk¨ ule . . . . . . . . . . . . . . . . . . . . . . . ¨ 2.6 Aussagenlogische Aquivalenzen . . . . . . . . . . 2.7 Normalformen und aussagenlogische Basen . . . 2.8 Resolutionskalk¨ ul . . . . . . . . . . . . . . . . . . 2.9 Hornlogik . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

13 14 14 16 16 18 19 20 21 24 26 28 31 38

. . . .

. . . .

. . . .

. . . .

3 Pr¨ adikatenlogik 45 3.1 Alphabet der Pr¨ adikatenlogik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.2 Syntax pr¨ adikatenlogischer Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.3 Semantik der Pr¨ adikatenlogik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 i

ii

INHALTSVERZEICHNIS

4 Beweismethoden 4.1 Direkter Beweis . . . . . . 4.2 Indirekter Beweis . . . . . 4.3 Beweis durch Widerspruch 4.4 Ringschluss . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

53 53 54 55 56

5 Operationen auf Mengen 5.1 Teilmengen . . . . . . . . 5.2 Potenzmengen . . . . . . 5.3 Verkn¨ upfung von Mengen 5.4 Elementare Eigenschaften

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

59 60 61 61 62

6 Boolesche Algebra 67 6.1 Definitionen und grundlegende Eigenschaften . . . . . . . . . . . . . . . . . . . . . . 67 6.2 Isomorphie Boolescher Algebren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 ¨ 7 Zusammenfassung und Ubungen 73 7.1 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 ¨ 7.2 Ubungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

II

Relationen und Funktionen

8 Relationen 8.1 Kartesisches Produkt . . . . . 8.2 Relation . . . . . . . . . . . . 8.3 Ordnungen . . . . . . . . . . ¨ 8.4 Aquivalenzrelationen . . . . . 8.5 Umkehrrelationen . . . . . . . 8.6 Komposition von Relationen . 8.7 Reflexiv-transitive H¨ ullen . .

. . . . . . .

. . . . . . .

79 . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

83 83 84 87 89 91 92 93

9 Funktionen 95 9.1 Begriff der Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 9.2 Eigenschaften von Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 9.3 Pr¨ adikate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 ¨ 10 Zusammenfassung und Ubungen 99 10.1 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 ¨ 10.2 Ubungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

III

Induktion und Rekursion

103

11 Die Menge der nat¨ urlichen Zahlen 107 11.1 Einf¨ uhrung der Menge der nat¨ urlichen Zahlen . . . . . . . . . . . . . . . . . . . . . . 107 11.2 Rechenregeln in N0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

INHALTSVERZEICHNIS

iii

11.3 Der Begriff der Abz¨ ahlbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 11.4 Aufz¨ ahlbare und entscheidbare Mengen . . . . . . . . . . . . . . . . . . . . . . . . . 114 12 Vollst¨ andige Induktion

115

13 Rekursion 13.1 Rekursive Definition arithmetischer Funktionen 13.2 Fibonacci-Zahlen . . . . . . . . . . . . . . . . . 13.3 Ackermannfunktion . . . . . . . . . . . . . . . . 13.4 Verallgemeinertes Rekursionsschema . . . . . . 13.5 Alphabete, W¨ orter, Sprachen . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

119 119 122 124 127 129

14 Berechenbare Funktionen 14.1 Primitiv-rekursive Funktionen . . . . . . 14.2 µ-Rekursion . . . . . . . . . . . . . . . . 14.3 Berechenbarkeit, Churchsche These . . . 14.4 utm- und smn-Theorem . . . . . . . . . 14.5 Aufz¨ ahlbare und entscheidbare Mengen

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

133 134 139 142 144 148

15 Zusammenfassung und 15.1 Zusammenfassung . ¨ 15.2 Ubungen . . . . . . .

IV

Zahlenmengen

. . . . .

. . . . .

. . . . .

. . . . .

¨ Ubungen 149 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

155

16 Die 16.1 16.2 16.3

Menge der ganzen Zahlen 159 Konstruktion der ganzen Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Rechenregeln in Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Abz¨ ahlbarkeit von Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

17 Die 17.1 17.2 17.3

Menge der rationalen Zahlen 165 Konstruktion der rationalen Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Rechenregeln in Q . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Abz¨ ahlbarkeit von Q . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

18 Reelle und komplexe Zahlen 171 ¨ 18.1 Uberabz¨ ahlbarkeit von R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 18.2 Komplexe Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 19 Zusammenfassung und 19.1 Zusammenfassung . ¨ 19.2 Ubungen . . . . . . .

¨ Ubungen 179 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Literaturhinweise

183

Index

184

iv

INHALTSVERZEICHNIS

Abbildungsverzeichnis 2.1

Entscheidungsverfahren f¨ ur die Erf¨ ullbarkeit von Hornformeln. . . . . . . . . . . . .

14.1 14.2 14.3 14.4 14.5

Primitive Rekursion als Z¨ ahlschleife. . . . . . . . . . . . . µ-Rekursion als Wiederholungsschleife. . . . . . . . . . . . Berechnung der Funktion sub durch µ-Rekursion. . . . . . √ Berechnung der Funktion durch µ-Rekursion. . . . . . . Berechnung der Logarithmus-Funktion durch µ-Rekursion.

v

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

40 136 139 140 141 141

vi

ABBILDUNGSVERZEICHNIS

Tabellenverzeichnis 1

Griechisches Alphabet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii

2.1

¨ Aussagenlogische Aquivalenzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

14.1 Definition der Bijektion ρ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

vii

viii

TABELLENVERZEICHNIS

Vorwort Liebe Studierende, herzlich willkommen zum Modul Mathematische Grundlagen f¨ ur die Informatik! Bevor der eigentliche Studientext dieses Moduls beginnt, m¨ochte ich zun¨achst ein paar Worte zur Bedeutung mathematischer Grundlagen f¨ ur die Informatik verlieren, und ich m¨ochte Sie dadurch f¨ ur die intensive Besch¨ aftigung mit den Inhalten dieses Moduls motivieren. Warum beeintr¨ achtigen Kratzer auf einer DVD nicht deren Wiedergabequalit¨at? Wie k¨onnen ¨ Speicherung und Ubertragung von Daten fehlertolerant gestaltet werden? Wie funktionieren ¨offentliche Verschl¨ usselungsverfahren? Wie hoch ist deren Sicherheit und worin ist diese begr¨ undet? Wie k¨ onnen Daten optimal komprimiert werden? Wie k¨onnen Transport- und Zuordnungsprobleme optimal gel¨ ost werden? Wie k¨ onnen durch Zuf¨alligkeiten bestimmte Bediensysteme beschrieben, analysiert und m¨ oglichst effizient gestaltet werden? Diese und viele andere Problemstellungen m¨ ussen zufriedenstellend beantwortet werden k¨onnen, um Informations- und Kommunikationstechnologien qualit¨atsgerecht zu gestalten. Informatikerinnen und Informatiker m¨ ussen in der Lage sein, diese Technologien erfolgreich einzusetzen und weiterzuentwickeln. Dazu ist die Kenntnis und das Verst¨andnis von Grundlagen erforderlich, auf denen diese Technologien basieren. Viele wesentliche Grundlagen liefert die Mathematik. Die Mathematik-Kurse geben Einf¨ uhrungen in wichtige mathematische Grundlagen der Informatik, die f¨ ur die L¨osung obiger und weiterer Problemstellungen von Bedeutung sind. Dabei sind diese Grundlagen weitestgehend unabh¨angig von konkreten Technologien. Das heißt, dass deren Kenntnis auch eine gute Grundlage f¨ ur das Verst¨ andnis zuk¨ unftiger technologischer Entwicklungen darstellt, die bei Informations- und Kommunikationssystemen, wie wir es allt¨ aglich erleben, schnell voranschreiten. Neben der Vermittlung mathematischer Grundlagen verfolgen die Mathematik-Kurse aber noch ein weiteres Ziel: Die Auseinandersetzung mit den Inhalten dieser Kurse st¨arkt Ihre Probleml¨osekompetenz. Sie schult Ihre F¨ ahigkeiten, abstrakt und logisch zu denken, sich klar und pr¨azise auszudr¨ ucken, neue Probleme anzugehen und gewissenhaft zu l¨osen und zu wissen, wenn Sie ein Problem noch nicht vollst¨ andig gel¨ ost haben. Auch diese F¨ahigkeiten sind unabh¨angig von aktuellen Technologien und stellen ein zeitinvariantes R¨ ustzeug f¨ ur Ihren weiteren Werdegang dar. Ich weiß sehr wohl, dass viele von Ihnen – aus welchen Gr¨ unden auch immer – eine Scheu, ja vielleicht sogar Angst oder gar einen Horror“ vor Mathematik haben, und froh sind, nach der ” Schule nichts mehr mit diesem Fach zu tun gehabt zu haben. Ich will und kann diese Vorbehalte an dieser Stelle nicht zerstreuen, sondern ich will Sie einfach ermutigen und Ihnen sagen: Machen Sie sich frei von bedr¨ uckenden Gedanken, packen Sie den Stoff an, indem Sie ihn Schritt f¨ ur Schritt ix

x

Vorwort

gewissenhaft und reflektierend erarbeiten. Leider m¨ ussen oft, um interessante Einsichten zu gewinnen, m¨ uhsam kleinere Details erarbeitet werden. Die Bew¨altigung des Stoffes verlangt Disziplin und große Anstrengungen von Ihnen. Geben Sie niemals auf! Versuchen Sie immer wieder, den Stoff zu ¨ verstehen, die Ubungsaufgaben zu bew¨altigen, Zusammenh¨ange zu erkennen. Dadurch wird es Ihnen mit Fortschreiten des Stoffes immer leichter fallen, sich diesen zu erarbeiten. Zum Verstehen und zum L¨ osen notwendige Ideen werden Ihnen schneller einfallen. Durch die unabl¨assige Besch¨aftigung mit dem Stoff werden Sie kreativ werden. Kreativit¨at ist eine der wichtigsten Eigenschaften, die Informatikerinnen und Informatiker besitzen m¨ ussen – wie wollen Sie sonst zu Ideen f¨ ur die L¨ osung von Problemen kommen. Je mehr Sie dieses an schwierigen, abstrakten Inhalten tun, umso besser werden Sie dabei. Ich verspreche Ihnen: Wenn Sie die Mathematik-Kurse erfolgreich absolviert haben, werden Sie sich sehr gut f¨ uhlen, weil Sie eine schwierige Aufgabe, die viel Arbeit, Konzentration und Geduld erfordert, bew¨ altigt haben, und Sie werden sehr stolz auf sich sein. Das Studium der Mathematik-Kurse setzt die Kenntnis grundlegender Begriffe der Logik und deren Eigenschaften sowie elementarer mathematischer Begriffe wie Menge, Relation und Funktion, Induktion und Rekursion voraus, und zwar in einem Umfang und einer Tiefe, wie diese Begriffe in diesem Modul vorgestellt werden. Mit dieser Vorkenntnis sind Sie in der Lage, die in den weiteren Mathematik-Modulen verwendeten mathematischen Notationen zu verstehen und anzuwenden, und Sie werden auf das dort praktizierte mathematische Denken und Arbeiten vorbereitet. Die Mathematik-Module umfassen neben den Mathematischen Grundlagen f¨ ur die Informatik die Module • Analysis und Numerik im 2. Semester • Stochastik und Statistik im 3. Semester • Graphentheorie im 3. Semester • Algebraische Grundlagen f¨ ur die Informatik im 5. Semester Gleichermaßen liefert dieses Modul Grundlagen f¨ ur das Modul Theoretische Informatik im 1. Semester. Zum Schluss m¨ ochte ich Ihnen noch ein paar Hinweise zum Studium selbst geben: • Der Stoff ist in Kapitel und diese sind in Abschnitte eingeteilt. Diese sind durchaus von unterschiedlichem Umfang und unterschiedlicher Schwierigkeit. Ein Kapitel stellt in der Regel einen Aspekt in sich geschlossen dar. Ich empfehle Ihnen, ein Kapitel abschnittsweise“ durchzuar” beiten, d.h. sich jeweils einen Abschnitt vorzunehmen und komplett durchzuarbeiten. Fassen Sie, nachdem Sie einen Abschnitt durchgearbeitet haben, diesen zusammen: Schreiben Sie auf, was Sie gelernt haben. Verfahren Sie mit Kapiteln genauso. • Arbeiten Sie mit Bleistift und Papier: Markieren Sie sich wichtige Begriffe und vollziehen Sie Definitionen, S¨ atze und Beweise sowie insbesondere Beispiele selbstst¨andig nach und zwar nicht nur im Kopf, sondern auch auf dem Papier. • Arbeiten Sie in Gruppen: Stellen Sie sich gegenseitig Fragen, erkl¨aren Sie sich gegenseitig – auch dies mit Bleistift und Papier – die Inhalte. Was Sie erkl¨aren k¨onnen, das verstehen Sie auch!

Vorwort

xi

¨ • Versuchen Sie (gemeinsam) die Ubungsaufgaben zu l¨osen. Geben Sie nicht zu fr¨ uh auf, und schauen Sie nicht zu fr¨ uh in die L¨ osungen. Falls Sie eine Aufgabe nicht l¨ osen k¨onnen, u ¨berlegen Sie, warum Sie das nicht k¨onnen, und wiederholen Sie den entsprechenden Stoff. • Im Text sind zu wesentlichen Themen jeweils Lernziele angegeben, die Sie durch das Studium der Abschnitte und Kapitel erreicht haben sollten. Falls das nicht der Fall ist, wiederholen Sie den entsprechenden Stoff. • Scheuen Sie sich nicht: Nehmen Sie die angebotenen Hilfen (Beratung, Tutorien) in Anspruch. Hier¨ uber werden Sie gesondert informiert. • Nehmen Sie weitere Literatur zur Hand. In den Kursen gibt es jeweils einschl¨agige bibliographische Hinweise. Andere Arten der Darstellung sowie weitere Beispiele und Aufgaben helfen beim Verst¨ andnis des Stoffes. Nun w¨ unsche ich Ihnen viel Erfolg beim Studium dieses Moduls, und ich hoffe, dass Sie trotz aller M¨ uhen und Schwierigkeiten bei Ihren Fortschritten auch ein wenig Freude empfinden, Freude u uber, dass ¨ber Ihren Erkenntnisgewinn, Freude u ¨ber den Zuwachs Ihrer Kompetenz, Freude dar¨ Sie einen schwierigen Stoff bew¨ altigen.

xii

Vorwort

Kleiner Griechisch-Kurs fu ¨r Informatikerinnen und Informatiker In der Informatik, insbesondere in der Theoretischen Informatik, sowie in der Mathematik m¨ ussen vielen Dingen, wie z.B. Variablen, Mengen, Relationen, Funktionen, Vektoren, Matrizen, Gruppen, Ringen, K¨ orpern, . . . Namen gegeben werden, damit man dar¨ uber reden und schreiben kann. Da es ziemlich ungeeignet ist, daf¨ ur menschliche Namen oder Tiernamen zu vergeben, wie z.B. Angela, Christian, Heike oder Kurt bzw. Hasso, Fenja, Bello oder Lassie nimmt man in aller Regel einzelne Buchstaben daf¨ ur. Da aber f¨ ur die vielen, vielen Dinge, die zu bezeichnen sind, die 26 Buchstaben, bzw. bei Verwendung von kleinen und großen Buchstaben, die 52 Buchstaben des deutschen Alphabetes nicht ausreichen, werden Buchstaben des alten deutschen Alphabetes (S¨ utterlin), ja sogar hebr¨ aische Buchstaben, insbesondere aber griechische Buchstaben verwendet. Man sagt: Mathematiker sind Menschen, die zehn Alphabete beherrschen, aber keine Sprache. Da ich in meinen Lehrveranstaltungen außer deutschen Buchstaben haupts¨achlich noch griechische verwende, liste ich die kleinen und großen griechischen Buchstaben mit ihren Namen und ihren Symbolen zum Kennenlernen in der Tabelle 1 auf. Goethe soll gesagt haben: Die Mathematiker sind eine Art Franzosen: redet man mit ihnen, so u ¨bersetzen sie es in ihre Sprache, und dann ist es alsobald ganz etwas anderes. alpha beta gamma delta epsilon zeta eta theta

α β γ δ ε,  ζ η ϑ, θ

A B Γ ∆ E Z H Θ

iota kappa lambda m¨ u n¨ u xi omikron pi

ι κ λ µ ν ξ o π, $

I I Λ M N Ξ O Π

rho sigma tau ypsilon phi chi psi omega

Tabelle 1: Griechisches Alphabet.

xiii

ρ, % σ, ς τ υ ϕ, φ χ ψ ω

P Σ T Y Φ X Ψ Ω

xiv

Griechisch-Kurs

¨ Um zu pr¨ ufen, ob das zutrifft, und als kleine Ubung zum Einpr¨agen der Symbole und deren Namen finden Sie im Folgenden einen Brief, den eine Studienanf¨angerin nach dem Besuch der ersten Vorlesungen an ihren Freund geschrieben hat. Lieber ϕlipp, gestern habe ich schon telefonisch oologisch geschildert, was iχn den ersten beiden Wochen bei meinem Mathe-Prof erlebt habe. Heute m¨ocht ich nun Dir ein paar Worte schreiben. Der Prof ist schon ein bisschen ¨ alter, aber noch nicht βgt, kaum seξ. Als Erstes fragte er uns, ob wir in der Schule Grieχsch gelernt h¨ atten. Alle waren verwundert u ¨ber die Frage, und nur einer hat sich gemeldet. Daraufhin hat er gesagt: Immer dasselbe. Wenn Sie Grieχsch gelernt h¨atten, dann k¨onnte ich jetzt ” gleich richtig loslegen und µsste Ihnen nicht erst die grieχschen Buchstaben erkl¨aren, die brauchen wir n¨ amlich.“ Er erkl¨ arte dann, dass man in der Mathematik mit τ senden von Begriffen rummacht und nur ein Idιllen einen richtigen Namen geben w¨ urde wie z.B. Mη oder πtter oder Stuψ. Sondern φl νtzlicher w¨ are es, Buchstaben zu benutzen. Da es aber so φle Begriffe gibt, dass die Buchstaben des deutschen αbetes nicht ausreichen, µsse man andere Sprachen zur Hilfe nehmen. Besonders emσche man von den grieχschen Buchstaben Gebrauch. N¨ achste Woche haben wir kein Mathe, da ist der Prof auf einer Maθgung im hohen Norden und anschließend auf einer Nordκrty. Wir sollen die Zeit nutzen und uns die grieχschen Buchstaben einpr¨ agen, hat er uns nachdr¨ ucklich mit eρbenem Zeigefinger aufgegeben. Da habe ich gedacht, schreib’ ϕlipp einen Brief und verwende dabei gleich deine Kenntnisse. Ob es Tωl ist, wenn wir am Samstag etwas sp¨ater zu seiner Limωparty kommen? Ich muss ja lernen. Ich w¨ urde ja lieber Pεgdrinks mit Mηxa trinken als den ganzen Abend Limo. Naja, so brauchen wir wenigstens kein Taξ. Seine Nuδschen sind ja immer meγechtig. Atζdelt ihn deswegen ja auch immer. Ob auch Saλ ist, der studiert doch auch Mathe, den µsste ich mal etwas fragen. Hoffentlich kommt µriam nicht, diese Bιnte kann einen ganz d¨oσchen mit ihrer gr¨ unen ϕlosoφ. ¨ Ubrigens, alle meine Radιsten sind kapput, werde sie ausτ schen µssen. Hast Du eigentlich den Tυoch gefunden, den Du letzten Samstag vergeblich im Web gesucht hast? Was willst Du eigentlich mit einem Silo? Naja, kannst es mir ja am Samstag erz¨ahlen. Bis dann, liebe Gr¨ uße Deine πψ

Teil I

Mengen und Logik

1

3 ¨ Ausgangspunkt unserer ersten Uberlegungen soll der Begriff Menge sein. Bei welchen Gelegenheiten verwenden Sie diesen Begriff? Denken Sie einen Moment nach, bilden Sie zwei, drei S¨atze mit diesem Begriff! Mir fallen spontan S¨ atze ein, wie Letztes Wochenende, auf dem Altstadtfest, ” da war eine Menge los, und wir haben eine Menge Bier getrunken.“, Von Popmusik versteht sie ” eine Menge.“, Bis Du mit Deiner Ausbildung fertig bist, wird noch eine Menge Wasser den Rhein ” runterlaufen.“, Eine große Menschenmenge versammelte sich auf dem Marienplatz und wartete auf ” die Ankunft des neuen Deutschen Meisters.“ In welchem Sinn wird in diesen S¨ atzen der Begriff Menge“ verwendet? Doch eher um auszu” dr¨ ucken, dass man nicht genau weiß, wie groß etwas ist oder wie viel von irgendetwas vorhanden ist. Genaueres kann oder will man nicht angeben; jedenfalls m¨ochte man mitteilen, dass es sich um viel oder Großes handelt. In der Mathematik und in der Informatik wird der Begriff Menge im Gegensatz zum umgangssprachlichen Gebrauch in einem pr¨ azisem Sinn benutzt. Er dient dazu, Objekte zu einer neuen Einheit zusammenzufassen, so dass diese Einheit als Ganzes betrachtet und weiterverwendet werden kann. Typische Beispiele in der Informatik sind Dateien und Datenbanken. Eine Kundendatenbank enth¨ alt etwa die f¨ ur ein Unternehmen wichtigen Daten ihrer Kunden. Anfragen und Auswertungen einer Datenbank liefern als Ergebnis wieder Mengen. Um festzustellen, welche Kunden ihre Rechnungen bis zum Ende des letzten Quartals noch nicht bezahlt haben, m¨ ussen m¨oglicherweise die Kundendatei mit der Bestelldatei und der Rechnungsdatei geeignet verkn¨ upft werden, um die f¨ ur das Versenden von Mahnungen notwendige Menge von Daten zu finden. Die Eigenschaften der Ergebnismenge m¨ ussen in einer formalen Sprache pr¨azise beschrieben werden, damit das Datenbanksystem die gew¨ unschte Ergebnismenge bestimmen kann. Solche Sprachen benutzen in aller Regel logische Ausdr¨ ucke. So werden wir zun¨ achst den Begriff der Menge pr¨azisieren und kennen lernen, wie Mengen festgelegt werden k¨ onnen. F¨ ur formale Beschreibungen von Mengen eignen sich logische Ausdr¨ ucke. Deshalb werden wir uns mit der Aussagenlogik und mit der Pr¨adikatenlogik besch¨aftigen. Dabei werden wir sehen, wie formale Sprachen festgelegt werden k¨onnen. Formale Sprachen sind ein wesentliches Werkzeug in der Informatik. Informatikerinnen und Informatiker m¨ ussen diese Werkzeuge nicht nur geeignet anwenden k¨ onnen, sondern Sie m¨ ussen auch in der Lage sein, formale Sprachen selbst zu schaffen, und zwar so, dass Problemstellungen und L¨osungsverfahren damit so beschrieben werden k¨ onnen, dass Sie mithilfe von Rechnersystemen gel¨ost bzw. ausgef¨ uhrt werden k¨onnen. Wir werden anhand der Aussagenlogik an einem einfachen Beispiel sehen, wie die Konstruktion einer formalen Sprache im Prinzip erfolgen kann. Des Weiteren benutzen wir die logische Ausdr¨ ucke, um Beziehungen zwischen Mengen und Operationen auf Mengen zu definieren sowie Eigenschaften dieser Beziehungen und Operationen zu zeigen. Das ist z.B. wichtig f¨ ur den oben bereits erw¨ahnten Anwendungsbereich der Datenbanken. Hier m¨ ussen Mengen in Beziehung gesetzt und miteinander verkn¨ upft werden. Ein Datenbanksystem muss mit Mengen rechnen k¨ onnen. Genau wie uns beim Rechnen mit Zahlen nach Adam Riese“ ” bestimmte Eigenschaften helfen, wie z.B. das Ausklammern von gemeinsamen Faktoren, gibt es auch f¨ ur das Rechnen mit Mengen Gesetze, die das Datenbanksystem benutzt, um korrekt und effizient Ergebnismengen zu berechnen. Durch Abstraktion gelangen wir am Schluss dieses Teils zu der Rechenstruktur einer Booleschen Algebra. Wir werden sehen, dass die vorher betrachtete Aussagenlogik und die ebenfalls vorher

4 betrachteten Teilmengen einer Menge mit logischen Verkn¨ upfungen bzw. mit Mengenverkn¨ upfungen als Rechenoperationen spezielle Prototypen solcher Algebren sind. Abstraktion ist eines der Probleml¨ose-Hilfsmittel in der Mathematik und in der Informatik. So ist man in aller Regel nicht an der L¨osung eines sehr speziellen Problems interessiert, sondern an Methoden, Verfahren und Werkzeugen, die in m¨oglichst vielen Anwendungsbereichen zur L¨osung von Problemen eingesetzt werden k¨ onnen. Mit einem Datenbankmanagementsystem sollten Datenbanken nicht nur in einem Anwendungsbereich, sondern bei unterschiedlichen Anwendungen realisiert werden k¨ onnen – unabh¨ angig von der der Art der Daten. Das Suchen von Elementen in Mengen, die Verkn¨ upfung von Mengen und die Darstellung von Mengen muss unabh¨angig von den konkreten Elementen einer Menge gel¨ ost werden. Ein Sortieralgorithmus sollte unabh¨angig sein vom Typ der Werte nach denen sortiert werden soll. Er sollte eine Menge von Daten korrekt und effizient sortieren unabh¨ angig davon, ob es sich z.B. um Kundennamen, Datumsangaben oder Rechnungsnummern handelt.

Kapitel 1

Definition und Darstellung von Mengen In diesem Kapitel wollen wir den Begriff der Menge in einer f¨ ur die weiteren Betrachtungen hinreichenden Art und Weise pr¨ azisieren. Wir lernen, wie Mengen dargestellt und beschrieben werden, wir vereinbaren Bezeichner f¨ ur g¨ angige Zahlenmengen, und wir werden sehen, dass unser Mengenbegriff zu Schwierigkeiten f¨ uhren kann. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

• den Cantorschen Begriff der Menge verstehen, • die Darstellungen von Mengen sowie die Bezeichner f¨ ur die g¨angigen Zahlenmengen kennen, • die Russelsche Antinomie erkl¨ aren k¨onnen.

1.1

Ein Mengenbegriff

Ausgangspunkt unserer Erkl¨ arung des Begriffes Menge soll die folgende Festlegung sein:1 Eine Menge ist eine Zusammenfassung bestimmter, wohlunterschiedener Dinge unserer Anschauung oder unseres Denkens, welche Elemente der Menge genannt werden, zu einem Ganzen. Diese Festlegung ist mehr eine informelle Vereinbarung, denn eine pr¨azise mathematische Definition. Sie setzt ein einheitliches Verst¨ andnis der darin verwendeten Begriffe voraus, und sie wird zu den schon angek¨ undigten Schwierigkeiten f¨ uhren. Eine axiomatische, mathematisch saubere“ ” Einf¨ uhrung des Mengenbegriffs, welche diese Schwierigkeiten vermeidet, w¨are aber im Hinblick darauf, wie wir diesen verwenden wollen, viel zu aufw¨andig. Immerhin haben zu Beginn des letzten Jahrhunderts eine Reihe von hervorragenden Logikern und Mathematikern viele Anstrengungen unternommen und geraume Zeit daf¨ ur ben¨otigt, um zu einer formal zufrieden stellenden Fundierung dieses Begriffes zu gelangen. F¨ ur die g¨angigen Betrachtungen in Mathematik und Informatik 1 Diese Festlegung geht auf Georg Cantor (1845 - 1918) zur¨ uck, der als Begr¨ under der Mengenlehre gilt und der wichtige Beitr¨ age zur modernen“ Mathematik geliefert hat. ”

5

Menge Element

6

KAPITEL 1. DEFINITION UND DARSTELLUNG VON MENGEN

reicht das Verst¨ andnis dieses Begriffes, welches wir mithilfe der folgenden weiteren Festlegungen bekommen werden, vollkommen aus. Die Notation einer Menge, also die Zusammenfassung von Dingen zu einem Ganzen“, erfolgt ” in der Art {...} Die Elemente der Menge werden durch die Mengenklammern { und } zu einem Ganzen zusammengefasst. . . .“ legt eindeutig fest, welche Dinge Elemente der Menge sind. Um auf Mengen Bezug ” nehmen zu k¨ onnen, geben wir diesen in aller Regel einen Namen. Dazu verwenden wir zumeist große Buchstaben. Die Namensgebung erfolgt mithilfe eines Gleichheitszeichens: M = {...} Element

Leere Menge

Ist ein Ding a Element einer Menge M , dann schreiben wir a ∈ M . Ist ein Ding a kein Element einer Menge, dann schreiben wir a ∈ / M . Wenn wir ausdr¨ ucken wollen, dass mehrere Elemente zu einer Menge geh¨ oren, dann schreiben wir das auch, indem wir diese Elemente durch Kommata getrennt auflisten und daf¨ ur die Zugeh¨ origkeit angeben. So schreiben wir z.B. anstelle von a ∈ M , b ∈ M , c ∈ M k¨ urzer a, b, c ∈ M . Entsprechend schreiben wir a, b, c ∈ / M , anstelle von a ∈ / M, b ∈ / M, c∈ / M , falls a, b und c keine Elemente der Menge M sind. Anschaulich kann man sich Mengen als Beh¨alter, z.B. als Schachteln oder als S¨acke, vorstellen. Der Beh¨ alter wird durch die Mengenklammern dargestellt. Genau wie Schachteln weitere Schachteln enthalten k¨ onnen, kann eine Menge weitere Mengen enthalten, und diese Mengen k¨onnen wiederum Mengen enthalten. Und genau wie eine Schachtel leer sein kann, kann auch eine Menge leer sein. Aus der Art der oben vereinbarten Mengennotation folgt, dass die leere Menge durch {} dargestellt wird. Die leere Menge wird auch durch das Symbol ∅ dargestellt. Ist die Menge M leer, so notieren wir M = ∅ oder M = {}. Offensichtlich gilt a ∈ / ∅ f¨ ur jedes Ding a. Beispiel 1.1. a) Die Menge A = { 1, 2, 3, 4, 5 } enth¨ alt als Elemente die Zahlen 1, 2, 3, 4 und 5. Es gilt also z.B. 2, 5 ∈ A sowie 0, 6, 13 ∈ / A. b) Die Menge B = { 1, 2, { 3, 4, 5, 6 } } enth¨ alt drei Elemente: die Zahlen 1 und 2 sowie die Menge { 3, 4, 5, 6 }, die selbst vier Elemente enth¨ alt, n¨ amlich die Zahlen 3, 4, 5 und 6. Machen Sie sich dies an der Schachtel-Metapher klar: Die Schachtel B enth¨ alt die Elemente 1, 2 sowie eine weitere Schachtel, die die Elemente 3, 4, 5 und 6 enth¨ alt. B kann in diese Schachtel nicht hineinschauen“. Deutlich wird das, wenn wir ” der inneren Schachtel einen Namen geben, etwa C = { 3, 4, 5, 6 }. Dann ergibt sich die Darstellung B = { 1, 2, C }, woraus man unmittelbar sieht, das B drei und nicht sechs Elemente enth¨alt. Es gilt C ∈ B, d.h. { 3, 4, 5, 6 } ∈ { 1, 2, { 3, 4, 5, 6 } }. Die Schachtel C ist ein Element der Schachtel B, und es gilt 3 ∈ C, aber 3 ∈ / B. c) Die Gleichung x2 = −1 besitzt in der Menge der reellen Zahlen keine L¨osung, d.h. ihre L¨osungsmenge L = { x | x ist reelle Zahl und x2 = −1 } ist leer: L = ∅. d) Die Menge D = {{}}

1.1. EIN MENGENBEGRIFF

7

enth¨ alt genau ein Element, n¨ amlich die leere Menge. Somit ist die Menge D selbst nicht leer. Auch dies kann man sich mit der Schachtel-Metapher veranschaulichen. Die Schachtel D ist nicht leer, denn sie enth¨ alt ein Element, n¨ amlich die leere Schachtel. Es gilt {} ∈ D. Wenn wir E = {} setzen, dann ist D = {E}, wodurch auch in der mathematischen Notation deutlich wird, dass D nicht die leere Menge ist. 2 ¨ Ubung 1.1. Sei M eine Menge sowie A = { 3, 4, { 5, 6 } } und B = { 5, 6 }. Setzen Sie ∈ oder ∈ / korrekt ein: (1) ∅ . . . ∅, (2) ∅ . . . {∅}, (3) M . . . { { 1, 2 }, M }, (4) 1 . . . { { 1, 2 }, M }, (5) 3 . . . A, (6) { 4 } . . . A, (7) { 5, 6 } . . . A, (8) { B } . . . A, (9) B . . . A, (10) 6 . . . A, (11) 6 . . . B.

2

¨ Ubung 1.2. Bestimmen Sie, ob folgende Aussagen wahr oder falsch sind und begr¨ unden Sie Ihre Antworten! (1) ∅ ∈ ∅, (2) ∅ ∈ {∅}, (3) { a, b } ∈ { a, b, c, { a, b } }, (4) { a, b, c } ∈ { a, b, c, { a, b } }, (5) { a, b } ∈ {{ a, b }}, (6) a ∈ { a, b, { a, b } }.

2

8

KAPITEL 1. DEFINITION UND DARSTELLUNG VON MENGEN

1.2

Darstellung von Mengen

Unsere Festlegung des Mengenbegriffs besagt, dass die Elemente einer Menge bestimmt sein m¨ ussen. Dazu verwenden wir zwei Arten der Darstellung von Mengen: die aufz¨ ahlende und die beschreibende Darstellung. Bei der aufz¨ ahlenden Darstellung werden die Elemente der Menge explizit angegeben. ¨ In dieser Art und Weise haben wir bereits die Mengen im Beispiel 12.1 sowie in den Ubungen 1.1 und 1.2 dargestellt. Beispiel 1.2. Wir geben einige weitere Beispiele f¨ ur die aufz¨ahlende Darstellung von Mengen an: A = { 2, 3, 5, 7, 11 } B = { 1, 2, . . . , 50 } C = { 1, 2, . . . } D = { 43, 44, . . . } Aufz¨ ahlende Darstellung von Mengen

Die Menge A enth¨ alt f¨ unf Elemente, n¨amlich die Primzahlen kleiner gleich 11. Bei den drei anderen Mengen wird ein Problem der aufz¨ahlenden Darstellung von Mengen offensichtlich. Falls sie viele Elemente enthalten oder falls sie unendlich viele Elemente enthalten, ist ihre komplette Aufz¨ ahlung aufw¨ andig bzw. unm¨ oglich. In diesen F¨allen helfen wir uns mit der . . .“-Schreibweise. Dabei muss ” durch die explizit angegebenen Elemente eindeutig klar sein, f¨ ur welche Elemente . . .“ steht. In B ” sind offensichtlich die ganzen Zahlen von 1 bis 50 gemeint, in C die nat¨ urlichen Zahlen ohne die Null und in D die nat¨ urlichen Zahlen gr¨oßer gleich 43. 2 Bei der Menge E = { 3, 5, 7, . . . } k¨onnte nicht klar sein, welche Menge gemeint ist: die Menge der positiven ungeraden Zahlen gr¨oßer gleich 3 oder die Menge der Primzahlen gr¨oßer gleich 3. Die explizite Aufz¨ ahlung eines weiteren Elementes k¨onnte Aufkl¨arung bringen: 9 im ersten Fall bzw. 11 im zweiten Fall. Die allgemeine Form der aufz¨ahlenden Darstellung von Mengen ist also M = { a1 , a2 , . . . , an } f¨ ur endliche Mengen sowie M = { a1 , a2 , . . . } f¨ ur unendliche Mengen. ¨ Ubung 1.3. Geben Sie folgende Mengen in aufz¨ahlender Form an: (1) M1 = Menge aller nicht negativen ganzen Zahlen, die Kubikzahlen von ganzen Zahlen und kleiner als 100 sind. (2) M2 = Menge aller ganzen Zahlen zwischen 10 und 50, die durch 3 aber nicht durch 4 teilbar sind. (3) M3 = Menge aller Mengen, die man aus den drei Elementen a, b und c bilden kann.

Multimenge

2

Erf¨ ullt die Menge F = { 3, 4, 5, 3, 6 } unsere Festlegung des Mengenbegriffs? Nein, denn Ihre Elemente sind nicht wohlunterschieden, da 3 mehr als einmal vorkommt. Wohlunterschieden bedeutet, dass jedes Element nur einmal in der Menge vorkommen darf. In der Informatik gibt es durchaus

1.2. DARSTELLUNG VON MENGEN

9

Anwendungen, in denen Mengen ein Element auch mehrfach enthalten k¨onnen sollten. Man spricht dann von Multimengen oder Bags. Die Menge M = { 1, 1, 2, 3, 3, 3, 3, 4, 5, 5, 5 } ist ein Beispiel einer Multimenge. Durch unterschiedliche Kenntlichmachung gleicher Elemente – etwa durch fortlaufende Indizierung oder durch Angabe der H¨aufigkeit – kann man diese unterscheidbar machen und so Multimengen durch Mengen darstellen. Nach Indizierung sieht die Menge M wie folgt aus M = { 11 , 12 , 21 , 31 , 32 , 33 , 34 , 41 , 51 , 52 , 53 } sowie bei Angabe der H¨ aufigkeit M = { 1(2), , 2(1), 3(4), 4(1), 5(3) } Die sp¨ ater folgenden Definitionen zu Teilmengen und Operationen auf Mengen k¨onnen mithilfe solcher Kennzeichnungen auf Multimengen u ¨bertragen werden. Wir betrachten im Folgenden in aller Regel keine Multimengen, sondern Mengen, die jedes Element genau einmal enthalten. Dabei sei beispielhaft auf eine Problematik hingewiesen, die entstehen kann, falls die Elemente Variablen sind und keine konkreten“ Elemente (Konstanten). Sind etwa ” a, b, c und d Variable f¨ ur ganze Zahlen, und bilden wir damit die Menge M = { a, b, c, d }, dann h¨ angt der Inhalt dieser Menge von der Belegung der Variablen ab. Haben z.B. a und c beide den Wert 5 und b den Wert 1 und d den Wert 2, dann ist M = { 1, 2, 5 }, d.h. M enth¨alt in diesem Fall drei Elemente. F¨ ur den Fall, dass alle Variablen denselben Wert haben, enth¨alt M genau ein Element. Bei der beschreibenden Darstellung werden die Elemente nicht explizit aufgez¨ahlt, sondern es Beschreibende Darstellung wird eine sie definierende Eigenschaft angegeben. Die allgemeine Form ist von Mengen

M = { x | p(x) }

(1.1)

Dabei ist x ein Platzhalter (eine Variable) f¨ ur die Elemente der Menge, und p(x) ist eine f¨ ur x informal oder formal angegebene Eigenschaft. Genau die Dinge, die die Eigenschaft erf¨ ullen, sind Elemente der Menge. Auf M¨ oglichkeiten die definierende Eigenschaft formal durch Pr¨adikate anzugeben, gehen wir im Kapitel 3 ein. Beispiel 1.3. Beispiele f¨ ur die beschreibende Darstellung von Mengen sind: A = { x | x ist eine Primzahl kleiner gleich 11 } G = { x | x ist eine positive ganze Zahl und x + x = 10 } H = { (x, y) | x und y sind positive ganze Zahlen und x + y = 6 } T64 = { y | y ist ein positiver Teiler von 64 } S = { st | st studiert Informatik in Sankt Augustin } Dabei haben wir die Eigenschaften, welche die Elemente festlegen sollen, halbformal“ ausgedr¨ uckt, ” d.h. umgangssprachlich unter Verwendung von mathematischen Ausdr¨ ucken. In aufz¨ahlender Dar-

10

KAPITEL 1. DEFINITION UND DARSTELLUNG VON MENGEN

stellung gilt offensichtlich: A = { 2, 3, 5, 7, 11 } G = {5} H = { (0, 6), (1, 5), (2, 4), (3, 3), (4, 2), (5, 1), (6, 0) } T64 = { 1, 2, 4, 8, 16, 32, 64 }

2

¨ Ubung 1.4. Geben Sie folgende Mengen in beschreibender Form an: (1) M1 = { 1, 2, 4, 8, 16, 32, 64 }, (2) M2 = { 4, 9, 25, 49, 121 }, (3) M3 = { 1, 8, 27, 64 }, 2

(4) M4 = { 1, 3, 5, 7, . . . }. Kardinalit¨ at einer Menge

Enth¨ alt eine Menge M endlich viele Elemente, etwa m St¨ uck, dann schreiben wir |M | = m und nennen M eine endliche Menge. |M | heißt die Kardinalit¨ at von M . Nicht endliche Mengen heißen unendlich, und wir notieren |M | = ∞. Es gilt also z.B. |A| = 5, |B| = 50, |D| = ∞ f¨ ur die Mengen A, B und D aus Beispiel 1.2 auf Seite 8 sowie |G| = 1, |H| = |T64 | = 7 f¨ ur die Mengen G und H aus Beispiel 1.3. Offensichtlich gilt |∅| = 0.

1.3

Bezeichner fu ¨ r Zahlenmengen

G¨ angige Zahlenmengen besitzen feste Bezeichner. Wir listen diese im Folgenden auf und verwenden sie so fortan. N = { 1, 2, 3, . . . }

nat¨ urliche Zahlen

N0 = { 0, 1, 2, 3, . . . }

nat¨ urliche Zahlen mit 0

Nk = { k, k + 1, k + 2, . . . }

nat¨ urliche Zahlen ab k, k ∈ N0

Nu,o = { u, u + 1, u + 2, . . . , o }

nat¨ urliche Zahlen zwischen u und o, u, o ∈ N0

Beispiele f¨ ur die zwei letzten Notationen sind N17 = { 17, 18, 19, . . . } N35,53 = { 35, 36, . . . , 53 }

1.4. RUSSELLSCHE ANTINOMIE

11

Des Weiteren gilt Nu,o = ∅, falls u gr¨ oßer als o ist. Z G+ G− G U+ U− U P

= = = = = = = =

Q Q+ Q− R R+ R− C

=

=

{ . . . , −2, −1, 0, 1, 2, . . . } { 0, 2, 4, . . . } { −2, −4, . . . } { −4, −2, 0, 2, 4, . . . } { 1, 3, 5, . . . } { −1, −3, −5 . . . } { −5, −3, −1, 1, 3, 5, . . . } { o n2, 3, 5, 7, 11, . . . } p q

| p ∈ Z und q ∈ N

{ a + bi | a, b ∈ R und i2 = −1 }

ganze Zahlen nicht negative gerade Zahlen negative gerade Zahlen gerade Zahlen positive ungerade Zahlen negative ungerade Zahlen ungerade Zahlen Primzahlen rationale Zahlen (Br¨ uche) rationale Zahlen gr¨oßer gleich 0 rationale Zahlen kleiner 0 reelle Zahlen reelle Zahlen gr¨oßer gleich 0 reelle Zahlen kleiner 0 komplexe Zahlen

Wie setzen an dieser Stelle die angegebenen Zahlenmengen in dem Sinne als bekannt voraus, als dass man sie aus der Schule und dem t¨aglichen Leben kennt. Im Teil IV geben wir formale Definitionen f¨ ur die Mengen der nat¨ urlichen, ganzen und rationalen Zahlen an und betrachten einige ihrer wesentlichen Eigenschaften.

1.4

Russellsche Antinomie

Unsere Festlegung des Mengenbegriffs l¨ asst es zu, dass Mengen Elemente von Mengen sein k¨onnen ¨ (siehe z.B. Beispiel 12.1 und Ubungen 1.1 und 1.2 auf den Seiten 7 und 7). Kann eine Menge sich auch selbst enthalten? In aller Regel fallen uns nur Beispiele von Mengen ein, die sich nicht selbst enthalten, wie z.B. die Menge D aller rechtwinkligen Dreiecke in der Ebene. Offensichtlich ist D kein Element von D, denn die Menge D ist kein rechtwinkliges Dreieck. Betrachten wir nun die Menge D0 aller Elemente, die keine rechtwinkligen Dreiecke sind. Da die Menge D0 offensichtlich kein rechtwinkliges Dreieck ist, muss sie selbst zur Menge D0 geh¨oren, denn diese enth¨alt ja alle Elemente, die keine rechtwinkligen Dreiecke sind. Nun betrachten wir die Menge M , welche alle Mengen enth¨alt. M ist selbst eine Menge, also muss M sich selbst enthalten, denn M enth¨alt ja alle Mengen. Unsere auf der Cantorschen Definition basierende Festlegung des Mengenbegriffs l¨asst diese Mengenbildungen zu und f¨ uhrt zu keinen Schwierigkeiten, insbesondere ist die in der Festlegung geforderte Bestimmtheit der Elemente gegeben. Nun betrachten wir die Menge M 0 aller Mengen, die sich nicht selbst enthalten, formal M0 = { A | A ∈ / A} und stellen die Frage, ob M 0 sich selbst enth¨alt: M 0 ∈ M 0 ? Gem¨aß der Cantorschen Mengendefintion muss bestimmt werden k¨ onnen, ob eine Ding zu einer Menge geh¨ort oder nicht. F¨ ur die Frage, ob M 0 ∈ M 0 gilt, muss also entweder die Antwort ja“ oder die Antwort nein“ zutreffen, und die ” ” richtige Antwort muss anhand der beschreibenden Eigenschaft entschieden werden k¨onnen.

12

KAPITEL 1. DEFINITION UND DARSTELLUNG VON MENGEN

Bevor wir diese Frage beantworten, betrachten wir als Vorbereitung darauf das folgende Paradoxon: Sei S die Schlange, die all diejenigen Schlangen in den Schwanz beißt, die sich nicht selbst in den Schwanz beißen. Frage: Beißt S sich selbst in den Schwanz? Es gibt zwei M¨ oglichkeiten: S beißt sich selbst in den Schwanz oder nicht. Nehmen wir an, S beiße sich in den Schwanz. Dann geh¨ort sie zu den Schlangen, die sich selber in den Schwanz beißen und die deshalb nicht von S in den Schwanz gebissen werden. Dies bedeutet aber, dass S nicht von S gebissen wird, also beißt S sich nicht selbst in den Schwanz. Nehmen wir an, S beiße sich nicht in den Schwanz. Dann geh¨ort sie zu den Schlangen, die sich nicht selber in den Schwanz beißen. Diese werden aber gerade von S gebissen, also beißt S sich selbst in den Schwanz. In beiden m¨ oglichen F¨ allen f¨ uhrt die jeweilige Annahme zu einem Widerspruch, d.h. die Frage kann nicht beantwortet werden. Es liegt ein sogenanntes Paradoxon vor. Kehren wir zur Frage M 0 ∈ M 0 ?“ zur¨ uck und gehen zu deren Beantwortung wie beim Schlangen” Paradoxon vor: Nehmen wir an, dass M 0 ∈ M 0 gelte. Dann geh¨ort M 0 zu den Mengen, die sich nicht selbst enthalten. Daraus folgt aber M 0 ∈ / M 0. 0 0 Nehmen wir an, dass M ∈ / M gelte. Dann enth¨alt M 0 sich nicht selbst, d.h. M 0 geh¨ort zu den Mengen, die sich nicht selbst enthalten. Daraus folgt aber M 0 ∈ M 0 . Wir stellen also fest, dass auch diese Frage nicht beantwortet werden kann. Dieses Paradoxon ist bekannt als Russelsche Antinomie.2 Es zeigt die Unzul¨anglichkeit der Cantorschen Mengendefinition. Eine Mengendefinition sollte in jedem Fall die eindeutige Beantwortung der Frage erm¨oglichen, ob ein Ding in einer Menge enthalten ist oder nicht. Die axiomatische Mengenlehre vermeidet Antinomien. Hierauf gehen wir, wie eingangs des Kapitels bereits angemerkt, nicht ein, da f¨ ur unsere Zwecke im Folgenden die Cantorsche Mengendefinition ausreicht, Widerspr¨ uche treten nicht auf.

2 Benannt nach Bertrand Russell (1872 - 1970), britischer Logiker, Philosoph, Schriftsteller und Pazifist. Er lieferte wesentliche Beitr¨ age zur Logik und Philosophie. Mit Abert Einstein initiierte er die Pugwash-Bewegung, mit JeanPaul Sartre das Vietnam-Tribunal, das erste sogenannte Russelsche Tribunal. 1950 erhielt er den Nobelpreis f¨ ur Literatur.

Kapitel 2

Aussagenlogik Aussagen- und Pr¨ adikatenlogik sind von grundlegender Bedeutung in der Informatik. Programmund Prozessabl¨ aufe sind in aller Regel abh¨angig vom Erf¨ ullt- oder Unerf¨ ulltsein von miteinan¨ der verkn¨ upften Bedingungen. So ist z.B. die Steuerung eines Uberdruckventils eines Heizkessels abh¨ angig von seiner aktuellen Stellung, der Temperatur und des Drucks. Bei einer Datenbankabfrage m¨ ussen der erwarteten Antwort entsprechende Bedingungen formuliert werden wie z.B.: Alle ” Kunden, die bis zum Ende des letzten Quartals ihre Rechnungen noch nicht bezahlt haben und keine Stammkunden sind, m¨ ussen eine Zahlungserinnerung bekommen.“ Wir werden, wie im Abschnitt 1.2 angek¨ undigt, Pr¨adikate verwenden, um darstellende Beschreibungen von Mengen zu formulieren (siehe (1.1) auf Seite 9). Außerdem benutzen wir Pr¨adikate, um im Kapitel 5 Teilmengenbeziehungen und Mengenverkn¨ upfungen zu definieren und deren Eigenschaften zu beweisen. Wir beginnen in diesem Kapitel mit der Aussagenlogik und behandeln im n¨achsten Kapitel einf¨ uhrend die Pr¨ adikatenlogik. Wir wollen die Aussagenlogik – m¨oglicherweise anders, als Sie diese bisher kennen gelernt haben – als eine Sprache betrachten. Sprachen, etwa formale Sprachen, wie Programmier- oder Dialogsprachen in der Informatik, oder nat¨ urliche Sprachen, wie die deutsche oder die englische Sprache, oder k¨ unstlerische Sprachen, wie die Poesie oder die Musik, werden festgelegt durch • ein Alphabet, welches ein endlicher Zeichenvorrat ist, aus dem die W¨orter und S¨atze einer Sprache zusammengesetzt sind, • die Syntax, die festlegt, welche mit den Elementen des Alphabets gebildete Zeichenketten als W¨ orter oder S¨ atze zur Sprache geh¨oren, • die Semantik, welche den W¨ ortern und S¨atzen der Sprache eine Bedeutung zuordnet. Nach Durcharbeiten dieses Kapitels sollten Sie • den syntaktischen Aufbau aussagenlogischer Formeln kennen, • den Wahrheitswert aussagenlogischer Formeln sowohl mit dem Interpretationsoperator als auch mithilfe von Wahrheitstafeln berechnen k¨onnen, 13

Lernziele

14

KAPITEL 2. AUSSAGENLOGIK ¨ • aussagenlogische Grundbegriffe wie Erf¨ ullbarkeit, Modell, logische Folgerung, logische Aquivalenz, Kalk¨ ul, Normalformen und logische Basen sowie Widerspruchsfreiheit und Vollst¨andigkeit von Kalk¨ ulen erl¨ autern k¨onnen, • den Resolutionskalk¨ ul erkl¨ aren und anwenden k¨onnen.

2.1

Alphabet der Aussagenlogik

Das Alphabet der Aussagenlogik besteht aus zwei Mengen: Aussagenlogische Operatorsymbole

• aus der Menge der aussagenlogischen Operatorsymbole

Aussagenlogische Variablen

• sowie aus der Menge { x, | } zur Generierung der aussagenlogischen Variablen. Die Menge V der aussagenlogischen Variablen kann wie folgt rekursiv definiert werden:

O = { 0, 1, ¬, ∧, ∨, (, ) }

(1) x ist eine Variable: x ∈ V . (2) Falls α ein Variable ist, dann auch α|, d.h., ist α ∈ V , dann ist auch α| ∈ V . Mithilfe dieser Regeln ergibt sich: V = { x, x|, x||, x|||, . . . } Wenn wir die Anzahl der Striche als Index notieren, dann ist V = { x0 , x1 , x2 , x3 , . . . } Wir werden in aller Regel nicht konkrete Elemente aus V , also indizierte x, in den aussagenlogischen Formeln verwenden, sondern dazu Variablenbezeichner benutzen, die bei Bedarf mit konkreten Elementen aus V belegt werden k¨onnen. Als Variablenbezeichner verwenden wir kleine Buchstaben vom Ende des deutschen Alphabetes, z.B. p, q, r, v, y und z, bei Bedarf auch indiziert. Mit der Aussage v ∈ V ist dann gemeint, dass v anstelle irgendeiner aussagenlogischen Variable xi ∈ V steht (v ist Platzhalter f¨ ur xi ).

2.2 Aussagenlogische Formeln Aussagenlogische Konstantenbezeichner

Syntax aussagenlogischer Formeln

Die Sprache A der Aussagenlogik, deren Elemente – ihre W¨orter – aussagenlogische Formeln heißen, ist durch folgende Syntax-Regeln festgelegt: (i) Die Operatorsymbole 0, 1 ∈ O, die so genannten aussagenlogischen Konstantenbezeichner, sind W¨ orter in A: 0, 1 ∈ A. (ii) Jede aussagenlogische Variable ist auch eine aussagenlogische Formel: F¨ ur jedes v ∈ V ist v ∈ A.

2.3. SEMANTIK AUSSAGENLOGISCHER FORMELN

15

(iii) Als Variablenbezeichner f¨ ur aussagenlogische Formeln verwenden wir kleine Buchstaben vom Anfang des griechischen Alphabetes: α, β, γ – bei Bedarf auch indiziert, z.B. α1 , α2 , . . . Aus bereits vorhandenen aussagenlogischen Formeln werden mithilfe der Operator- und der Klammersymbole neue Formeln gebildet: Sind α, β ∈ A, dann sind auch (α ∧ β), (α ∨ β), ¬α ∈ A.1 (iv) Genau die gem¨ aß den Regeln (i) - (iii) bildbaren Zeichenketten geh¨oren zu A. Konstanten und Variablen heißen auch atomare Formeln. Die unter Verwendung von Regel (iii) Atomare gebildeten Formeln heißen zusammengesetzt. Die Formeln der Gestalt v sowie die der Gestalt ¬v Formeln mit v ∈ V heißen Literale. Literale sind also Variable sowie mit dem Operator ¬ versehene Variable. Zusammengesetzte Formeln Literale

Beispiel 2.1. Es gilt: a) (p ∧ q) ∈ A. b) (((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0) ∈ A. c) p(¬q ∨ r) ∈ / A. Wir zeigen, dass b) gilt: aß Regel (i) bzw. Regel (ii). (1) 0, p, q, r ∈ A gem¨ (2) Gem¨ aß (1) und Regel (iii) ist ¬r ∈ A. (3) Gem¨ aß (1) und Regel (iii) ist (q ∧ r) ∈ A. (4) Gem¨ aß (1,2) und Regel (iii) ist (q ∨ ¬r) ∈ A. (5) Gem¨ aß (4) und Regel (iii) ist ¬(q ∨ ¬r) ∈ A. (6) Gem¨ aß (1,3) und Regel (iii) ist (p ∨ (q ∧ r)) ∈ A. (7) Gem¨ aß (4,6) und Regel (iii) ist ((p ∨ (q ∧ r)) ∧ ¬(q ∧ ¬r)) ∈ A. (8) Gem¨ aß (1,7) und Regel (iii) ist (((p ∨ (q ∧ r)) ∧ ¬(q ∧ ¬r)) ∨ 0) ∈ A. Durch schrittweises Anwenden der Regeln (i) - (iii) haben wir die aussagenlogische Formel (((p ∨ (q ∧ r)) ∧ ¬(q ∧ ¬r)) ∨ 0) konstruiert. Diese Formel enth¨ alt die vier Literale p, q, r sowie ¬r.

2

Wir werden im Folgenden, falls dadurch keine Missverst¨andnisse auftreten, die ¨außeren Klammern einer Aussage weglassen. Wir schreiben also p ∧ q anstelle von (p ∧ q) und ((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0 anstelle von (((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0).

16

KAPITEL 2. AUSSAGENLOGIK

2.3

Semantik aussagenlogischer Formeln

Die Bedeutung von aussagenlogischen Formeln wollen wir durch die Werte 0 f¨ ur falsch“ und 1 ” f¨ ur wahr“ angeben. Die Menge dieser beiden aussagenlogischen Konstanten bzw. Wahrheitswerte ” bezeichnen wir mit B. Dabei legen wir auf B = { 0, 1 } eine Ordnung fest: 0 sei kleiner als 1, d.h. Aussagenlogisch das Maximum der beiden Wahrheitswerte ist 1, was wir durch max{ 0, 1 } = 1 ausdr¨ ucken, dass Konstanten Minimum ist 0, d.h. min{ 0, 1 } = 0. Außerdem legen wir als Operationen auf B fest: 1 − 1 = 0 sowie Wahrheitswerte 1 − 0 = 1. F¨ ur diese Operationen gelten die beiden folgenden Beziehungen: min{ x, y } = 1 − max{ 1 − x, 1 − y }

(2.1)

max{ x, y } = 1 − min{ 1 − x, 1 − y }

(2.2)

Wir k¨ onnen also eine der beiden Operationen min bzw. max durch die jeweils andere und die −“” Operation ausdr¨ ucken, wir k¨ onnten also auf min oder auf max verzichten. Aus schreibtechnischen Gr¨ unden und der besseren Lesbarkeit wegen werden wir aber beide Operationen verwenden. Abstrakte Maschine

Wir k¨ onnen (B, max , min, −) als eine abstrakte Maschine auffassen, die die Werte 0 und 1 zur Verf¨ ugung stellt und darauf die Operationen max , min und −“ ausf¨ uhren kann. Wir ben¨otigen ” jetzt noch eine Vorschrift, die festlegt, wie eine aussagenlogische Formel – abh¨angig von Eingaben – von dieser Maschine berechnet wird. ¨ Ubung 2.1. Beweisen Sie die Beziehungen (2.1) und (2.2)!

2.3.1

2

Interpretation aussagenlogischer Formeln

Wir haben die Syntax der aussagenlogischen Formeln induktiv definiert: Die atomaren Formeln werden als gegeben angenommen und mit diesen und bereits konstruierten Formeln werden mithilfe Induktion von Operatoren und Klammern neue Formeln konstruiert. Induktion ist eine Konstruktionmethode mit fundamentaler Bedeutung in der Informatik, insbesondere beim Entwurf von Datenstrukturen und Algorithmen sowie in der Programmierung. Wir werden im Teil III noch ausf¨ uhrlicher auf Induktion eingehen. Es ist nun nat¨ urlich“ die Semantik aussagenlogischer Formeln rekursiv entlang der induktiven ” Definition ihrer Syntax zu definieren. Zun¨achst muss den atomaren Formeln, also den Konstantenbezeichnern und Variablen einer Formel ein Wahrheitswert zugewiesen werden und daraus wird dann der Wahrheitswert der gesamten Formel entsprechend ihres induktiven Aufbaus rekursiv berechnet. Belegung Die Zuweisung von Wahrheitswerten zu Variablen einer Formel γ ∈ A geschieht mit einer Belegung Interpretation I ( Eingabe“), und die Berechnung des Wahrheitswertes von γ geschieht durch die Interpretation ” I∗ Sei γ ∈ A eine aussagenlogische Formel, dann sei Vγ die Menge der Variablen in γ. Jeder Variablen v in γ, also jedem v ∈ Vγ , wird genau ein Wahrheitswert zugewiesen. Formal: I : Vγ → B mit I(v) ∈ B. F¨ ur jede Variable v ∈ Vγ gibt es zwei m¨ogliche Belegungen: I(v) = 0 oder I(v) = 1. Ist n die Anzahl der Variablen in γ, also |Vγ | = n, dann gibt es 2n m¨ogliche Belegungen I : Vγ → B. Diese fassen wir in der Menge Iγ = BVγ = { I | I : Vγ → B } 1 Anstelle

von ¬α ist auch die Notation α u ¨blich.

2.3. SEMANTIK AUSSAGENLOGISCHER FORMELN

17

zusammen. Mit einer gew¨ ahlten Belegung I ∈ Iγ wird die Interpretation I ∗ (γ) der aussagenlogischen Formel γ ∈ A gem¨ aß den folgenden Regeln berechnet (dabei erfolgt die Festlegung der Regeln rekursiv entsprechend der induktiven Definitionen (i) - (iii) der Syntax der aussagenlogischen Formeln im vorigen Abschnitt): (i) I ∗ (0) = 0 und I ∗ (1) = 1: Die Konstantenbezeichner werden unabh¨angig von der gegebenen Formel durch fest zugewiesene Wahrheitswerte interpretiert. (ii) I ∗ (v) = I(v), f¨ ur ein I ∈ Iγ : Die Variablen der Formel γ werden durch die gew¨ahlte Belegung I interpretiert. (iii) Die Interpretation zusammengesetzter Formeln wird gem¨aß folgender Regeln berechnet: Ist γ = α ∧ β mit α, β ∈ A, dann ist I ∗ (γ) = I ∗ (α ∧ β) = min{ I ∗ (α), I ∗ (β) } Ist γ = α ∨ β mit α, β ∈ A, dann ist I ∗ (γ) = I ∗ (α ∨ β) = max{ I ∗ (α), I ∗ (β) } Ist γ = ¬α mit α ∈ A, dann ist I ∗ (γ) = I ∗ (¬α) = 1 − I ∗ (α) Beispiel 2.2. Wir betrachten die Formel γ = ((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0 aus Beispiel 2.1 (Seite 15). Es ist Vγ = { p, q, r }. Wir w¨ahlen die Belegung I(p) = 1, I(q) = 0 sowie I(r) = 1. Mit dieser Belegung ergibt sich gem¨aß den obigen Regeln folgende Interpretation: I ∗ (γ) = I ∗ (((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0) = max{I ∗ ((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)), I ∗ (0)} = max{min{I ∗ (p ∨ (q ∧ r)), I ∗ (¬(q ∨ ¬r))}, 0)} = max{min{max{I ∗ (p), I ∗ (q ∧ r)}, 1 − I ∗ (q ∨ ¬r)}, 0} = max{min{max{I(p), min{I ∗ (q), I ∗ (r)}}, 1 − max{I ∗ (q), I ∗ (¬r)}}, 0} = max{min{max{1, min{I(q), I(r)}}, 1 − max{I(q), 1 − I ∗ (r)}}, 0} = max{min{max{1, min{0, 1}}, 1 − max{0, 1 − I(r)}}, 0} = max{min{max{1, min{0, 1}}, 1 − max{0, 1 − 1}}, 0} =

max{min{max{1, 0}, 1 − 0}, 0}

=

max{min{1, 1}, 0}

=

max{1, 0}

=

1

F¨ ur die gew¨ ahlte Belegung I ist der Wert der aussagenlogischen Formel also 1. Berechnen Sie den Wert f¨ ur weitere der insgesamt 23 = 8 m¨ oglichen Belegungen! 2

18

KAPITEL 2. AUSSAGENLOGIK

Wir werden im Folgenden, da wir die Operatoren 0 und 1 fest mit den Werten 0 bzw. 1 belegt haben, a ¨ußerlich nicht mehr zwischen den Operatoren und ihren Werten unterscheiden und 0 anstelle von 0 bzw. 1 anstelle von 1 schreiben. Programmiersprache

Wir k¨ onnen das Tripel (A, B, I ∗ ) auch als eine Programmiersprache auffassen: Jedes α ∈ A ist ein Programm, B enth¨ alt die m¨ oglichen Eingaben f¨ ur die Variablen sowie die m¨oglichen Ausgaben, die eine Interpretation in Abh¨ angigkeit der Eingaben berechnen kann. I legt eine konkrete Eingabe fest, und I ∗ ist der Interpreter, der jedes Programm bei gegebener Eingabe ausf¨ uhrt. Die Maschine, auf der dieser Interpreter ausgef¨ uhrt werden kann, ben¨otigt als Maschinenbefehle max, min sowie 1 − 0 und 1 − 1, mit diesen k¨ onnen alle aussagenlogischen Formeln berechnet werden. Am obigen Beispiel sieht man, dass die Berechnung einer Interpretation noch effizienter gestaltet werden kann. Im Beispiel werden stur“ die Regeln schrittweise von links nach rechts ausgef¨ uhrt. Ist ” man z.B. bei einem Ausdruck der Form min{ I ∗ (α), 0 } angekommen, so kann man diesen wegen der Definition von min sofort durch 0 ersetzen, ohne dass I ∗ (α) noch ausgerechnet werden muss. Insbesondere, wenn α noch ein komplexer Ausdruck ist, wird dadurch viel Zeit bei der Berechnung der ¨ Interpretation eingespart. Uberlegen Sie sich weitere M¨oglichkeiten zur Effizienzsteigerung bei der Auswertung! Wir werden an dieser Stelle nicht weiter darauf eingehen. Ein Gebiet der Informatik, welches sich mit solchen Fragestellungen besch¨aftigt ist der Compilerbau.

2.3.2

Wahrheitstafeln

Die Semantik aussagenlogischer Formeln und der Wert einer aussagenlogischen Formel kann auch mithilfe sogenannter Wahrheitstafeln festgelegt bzw. berechnet werden. Seien α, β ∈ A zwei aussagenlogische Formeln. Die folgenden Tabellen legen jeweils f¨ ur alle m¨oglichen Werte dieser beiden Formeln die Werte ihrer Verkn¨ upfungen mit den Operationen ¬, ∧ und ∨ fest:

α 1 0

¬α 0 1

α 1 1 0 0

β 1 0 1 0

α∧β 1 0 0 0

α 1 1 0 0

β 1 0 1 0

α∨β 1 1 1 0

Jede Zeile legt den Wert f¨ ur genau eine Belegung fest. Konjunktion Disjunktion

Wir sehen, dass die Verkn¨ upfung zweier Formeln mit ∧ genau dann 1 ergibt, wenn beide Formeln den Wert 1 besitzen. Diese Verkn¨ upfung heißt Und-Verkn¨ upfung oder Konjunktion. Die Verkn¨ upfung zweier Formeln mit ∨ ergibt genau dann 0, wenn beide Formeln den Wert 0 besitzen. Diese Verkn¨ upfung heißt Oder-Verkn¨ upfung oder Disjunktion. Die Verkn¨ upfung ¬ heißt Negation.

Negation

Beispiel 2.3. Die Wahrheitstafel der Formel γ = ((p ∨ (q ∧ r)) ∧ ¬(q ∨ ¬r)) ∨ 0

2.3. SEMANTIK AUSSAGENLOGISCHER FORMELN

19

aus Beispiel 2.1 (Seite 15) ist: p 1 1 1 1 0 0 0 0

q 1 1 0 0 1 1 0 0

r 1 0 1 0 1 0 1 0

0 0 0 0 0 0 0 0 0

¬r 0 1 0 1 0 1 0 1

q∧r 1 0 0 0 1 0 0 0

q ∨ ¬r 1 1 0 1 1 1 0 1

¬(q ∨ ¬r) 0 0 1 0 0 0 1 0

p ∨ (q ∧ r) 1 1 1 1 1 0 0 0

(p ∨ (q ∧ r)) ∧¬(q ∨ ¬r) 0 0 1 0 0 0 0 0

((p ∨ (q ∧ r)) ∧¬(q ∨ ¬r)) ∨ 0 0 0 1 0 0 0 0 0

Anstelle der Auswertung einer aussagenlogischen Formel durch I ∗ k¨onnen also auch die Wahrheitstabellen zu ihrer Berechnung verwendet werden. Dabei enth¨alt jede Zeile gerade die Berechnung f¨ ur genau eine Belegung I der Variablen. So entspricht die dritte Zeile der obigen Tabelle der Belegung und der Berechung der Formel γ im Beispiel 2.2 auf Seite 17. 2 Wenn eine aussagenlogische Formel n Variable enth¨alt, dann gibt es 2n m¨ogliche Belegungen, d.h. die Wahrheitstabelle f¨ ur eine Formel mit n Variablen enth¨alt 2n Zeilen.

2.3.3

Aussagenlogische Operationen

Neben den bereits bekannten aussagenlogischen Operationen Negation, Konjunktion und Disjunktion f¨ uhren wir noch drei weitere Operationen ein: die Subjunktion, die Bijunktion und das exklusive Oder. Seien α, β ∈ A aussagenlogische Formeln, dann sind auch die Subjunktion α → β (in Worten wenn α, dann β“ oder aus α folgt β“), die Bijunktion α ↔ β (in Worten α genau dann, wenn ” ” ” β“) sowie das exklusive Oder (α ⊕ β) (in Worten entweder α oder β“) aussagenlogische Formeln. ” Wir geben ihre Semantik in den folgenden Wahrheitstafeln an: α 1 1 0 0

β 1 0 1 0

α→β 1 0 1 1

α 1 1 0 0

β 1 0 1 0

α↔β 1 0 0 1

α 1 1 0 0

β 1 0 1 0

α⊕β 0 1 1 0

Rechnen Sie nach, dass die folgenden Folgerungen korrekt sind. Folgerung 2.1. a) F¨ ur jede Belegung I der Variablen in den aussagenlogischen Formeln α, β ∈ A gilt: I ∗ (α → β) = I ∗ (¬α ∨ β)

(2.3)

I ∗ (α ↔ β) = I ∗ ((α → β) ∧ (β → α))

(2.4)

I ∗ (α ⊕ β) = I ∗ ((α ∧ ¬β) ∨ (¬α ∧ β))

(2.5)

Die Operationen Subjunktion, Bijunktion und exklusives Oder erweitern also die semantischen M¨ oglichkeiten von A nicht, denn sie k¨ onnen mithilfe der bereits bekannten Operationen Negation, Konjunktion und Disjunktion ausgedr¨ uckt werden. Sie stellen syntaktische Hilfsmittel dar, um gegebenenfalls Ausdr¨ ucke k¨ urzer darzustellen.

Subjunktion Bijunktion Exklusives Oder

20

KAPITEL 2. AUSSAGENLOGIK

b) Wir kennen nun sechs verschiedene aussagenlogische Verkn¨ upfungen. Wie viele zweistellige verschiedene aussagenlogische Verkn¨ upfungen gibt es? Jede Wahrheitstafel f¨ ur zweistellige Verkn¨ upfungen besteht aus vier Zeilen, welche die vier m¨oglichen Belegungen von zwei Variablen darstellen. Jede Belegung f¨ uhrt zu einem Ergebnis, welches jeweils 0 oder 1 ist. Damit gibt es 24 = 16 m¨ogliche Ergebnisse u ¨berhaupt, und damit gibt es genau sechzehn verschiedene zweistellige aussagenlogische Verkn¨ upfungen. In a) haben wir bereits gesehen, dass wir mithilfe der Negation zweistellige Operationen durch andere zweistellige Operationen ausdr¨ ucken k¨onnen. Im Kapitel 2.7 werden wir uns mit der Frage besch¨ aftigen, wie viele und welche zweistelligen Operationen ausreichen, um alle sechzehn zweistelligen Operationen darstellen zu k¨onnen. 2 ¨ Ubung 2.2. Zeigen Sie, dass f¨ ur jede Belegung I der aussagenlogischen Formeln α, β ∈ A I ∗ (α ∧ ¬β) = I ∗ (¬(α → β))

(2.6) 2

gilt! Es gilt I ∗ (α ∧ ¬β) = min{ I ∗ (α), 1 − I ∗ (β) } = 1 − max { 1 − I ∗ (α), I ∗ (β) }

wegen (2.1)

= 1 − I ∗ (¬α ∨ β) = 1 − I ∗ (α → β)

wegen (2.3)



= I (¬(α → β))

2.3.4

Erfu ¨ llbarkeit aussagenlogischer Formeln

F¨ ur die folgenden Definitionen, die Begriffe f¨ ur wichtige Eigenschaften aussagenlogischer Formeln festlegen, erweitern wir Belegungen von einzelnen Formeln auf Formelmengen. Sei F eine endliche Menge von Formeln aus A, dann sei VF die Menge der Variablen, die entsteht, wenn alle Variablen aller Formeln in F zu einer Menge zusammengefasst werden. Die Belegung I : VF → B ordnet dann jeder Variablen v ∈ VF eine Belegung I(v) ∈ B zu. Wir verallgemeinern entsprechend Iγ zu IF = BVF = { I | I : VF → B } und nennen I ∈ IF dann eine Belegung von F. Beispiel 2.4. F¨ ur die Formelmenge F1 = { p ∨ q, q ∧ ¬r, (p ∧ q) ∨ (q → r) } gilt VF1 = { p, q, r }. W¨ ahlt man etwa die Belegung I(p) = I(q) = 1 und I(r) = 0, dann besitzen alle drei Formeln in F1 den Wert 1. 2 Definition 2.1. Sei α ∈ A eine aussagenlogische Formel und F eine endliche Menge aussagenlogischer Formeln aus A. Erf¨ ullbarkeit

a) α heißt erf¨ ullbar genau dann, wenn eine Belegung I von α existiert mit I ∗ (α) = 1.

Tautologie

b) α heißt Tautologie oder allgemeing¨ ultig (auch g¨ ultig) genau dann, wenn f¨ ur jede Belegung I von α gilt I ∗ (α) = 1.

Kontradiktion

c) α heißt Kontradiktion oder widerspruchsvoll (auch unerf¨ ullbar) genau dann, wenn f¨ ur jede Belegung I von α gilt I ∗ (α) = 0.

Modell Unerf¨ ullbarkeit

d) F heißt erf¨ ullbar genau dann, wenn es eine Belegung I von F gibt, so dass I ∗ (γ) = 1 f¨ ur alle γ ∈ F ist. I heißt ein Modell f¨ ur F. Gibt es zu F kein Modell, dann heißt F unerf¨ ullbar. 2

2.4. LOGISCHE FOLGERUNG

21

Beispiel 2.5. a) Die Formeln p ∧ q und (p ∧ q) ∨ (q → r) sowie die Formel aus Beispiel 2.4 sind erf¨ ullbar aber keine Tautologien. b) Die Formeln p ∨ ¬p und (p → q) ↔ (¬p ∨ q) sind Tautologien. c) Die Formel p ∧ ¬p ist eine Kontradiktion. d) Die Menge F1 = { p ∨ q, q ∧ ¬r, (p ∧ q) ∨ (q → r) } ist erf¨ ullbar, denn sie besitzt, wie bereits in Beispiel 2.4 festgestellt, das Modell I(p) = I(q) = 1, I(r) = 0. e) Die Menge F2 = { p, p → q, ¬q } ist unerf¨ ullbar, denn sie besitzt kein Modell, da f¨ ur eine Belegung I, f¨ ur die jede Formel in F2 den Wert 1 haben soll, I(p) = 1 und I(q) = 0 sein muss. F¨ ur diese Belegung ist aber I(p → q) = 0. Es gibt also keine Belegung, die F2 erf¨ ullt. 2 Folgerung 2.2. a) Eine Formel ist genau dann erf¨ ullbar, wenn in der Ergebnisspalte ihrer Wahrheitstafel mindestens eine 1 vorkommt. b) Eine Formel ist genau dann allgemeing¨ ultig, wenn in der Ergebnisspalte ihrer Wahrheitstafel nur Einsen vorkommen. c) Eine Formel ist genau dann widerspruchsvoll, wenn in der Ergebnisspalte ihrer Wahrheitstafel nur Nullen vorkommen. 2

2.4

Logische Folgerung

F¨ ur das Beweisen von mathematischen Behauptungen ist der logische Folgerungsbegriff elementar. Diesen legt die folgende Definition fest. Definition 2.2. Sei α ∈ A eine aussagenlogische Formel und F eine endliche Menge aussagenlo- Logische gischer Formeln aus A. α heißt logische Folgerung von F genau dann, wenn I ∗ (α) = 1 f¨ ur jedes Folgerung Modell I von F ist. Wir schreiben F |= α und sprechen aus F folgt α (logisch)“. 2 ” Beispiel 2.6. a) F¨ ur F = { p, q } gilt F |= p ∧ q, denn f¨ ur jedes Modell I von F muss gelten I(p) = 1 und I(q) = 1, damit ist aber auch I ∗ (p ∧ q) = 1. b) F¨ ur F = { p → q, q → r } gilt F |= p → r, denn F besitzt die folgenden vier Modelle (1) (2) (3) (4)

I(p) = 1 I(p) = 0 I(p) = 0 I(p) = 0

I(q) = 1 I(q) = 1 I(q) = 0 I(q) = 0

I(r) = 1 I(r) = 1 I(r) = 1 I(r) = 0

und f¨ ur alle diese Modelle gilt jeweils I ∗ (p → r) = 1. Aus den Formeln p → q und q → r folgt also logisch die Formel p → r. 2 Folgerung 2.3. Es sei F eine endliche Menge von aussagenlogischen Formeln und α, β ∈ A mit F |= α und F |= β. Dann gilt F |= α ∨ β. Beweis Sei I 0 ein Model von F, welches α erf¨ ullt, d.h. es gilt I 0∗ (α) = 1, und es sei I 00 ein 00∗ Model von F, welches β erf¨ ullt, d.h. es gilt I (β) = 1, dann gilt sowohl I 0∗ (α ∨ β) = 1 als auch 00∗ I (α ∨ β) = 1, d.h. alle Modelle von F erf¨ ullen α ∨ β. 2

22

KAPITEL 2. AUSSAGENLOGIK

Der folgende Satz macht eine Aussage u ultigkeit und ¨ber den Zusammenhang von Allgemeing¨ Unerf¨ ullbarkeit von Formeln. Diese Aussage ist wichtig f¨ ur die Programmierung von automatischen Beweisern, welche die G¨ ultigkeit von Formeln nachweisen sollen. Satz 2.1. a) Eine Formel α ∈ A ist allgemeing¨ ultig genau dann, wenn ¬α unerf¨ ullbar ist. b) Sei F = { α1 , α2 , . . . , αn } eine Menge aussagenlogischer Formeln und β ∈ A. Dann gilt F |= β genau dann, wenn { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar ist. Beweis a) α ist allgemeing¨ ultig genau dann, wenn I ∗ (α) = 1 f¨ ur jede Belegung I der Variablen von α gilt. I ∗ (α) = 1 gilt genau dann, wenn I ∗ (¬α) = 1 − I ∗ (α) = 0 gilt. F¨ ur jede Belegung I von α ist I ∗ (¬α) = 0 genau dann, wenn ¬α unerf¨ ullbar ist. Damit haben wir die Behauptung gezeigt. b) Wir beweisen die Behauptung in zwei Schritten, indem wir zeigen: (i) Wenn F |= β gilt, dann ist { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar. (ii) Wenn { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar ist, dann gilt F |= β. Zu (i): Sei I ein Modell f¨ ur F, d.h. I ∗ (αi ) = 1 f¨ ur alle i. Da F |= β gilt, ist I ∗ (β) = 1 f¨ ur I, d.h. ∗ I (¬β) = 0 f¨ ur I. Somit gibt es also keine Belegung I, f¨ ur die I ∗ (αi ) = 1 f¨ ur alle i und I ∗ (¬β) = 1 ist. Daraus folgt, dass { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar ist. Zu (ii): Sei I ein Modell f¨ ur F, d.h. I ∗ (αi ) = 1 f¨ ur alle i. Da { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar ist, kann I kein Modell f¨ ur ¬β sein, d.h. es gilt I ∗ (¬β) = 0 und damit gilt I ∗ (β) = 1 f¨ ur die Belegung I. Hieraus folgt, dass jedes Modell von F auch ein Modell von β ist, d.h. F |= β gilt. 2 Die Aussage a) des Satzes ist ein Spezialfall der Aussage b), wir brauchen nur F = ∅ zu w¨ ahlen. ¨ Der Satz gibt im Ubrigen eine Beweismethode an: Um zu zeigen, dass die Behauptung β aus den Voraussetzungen F logisch folgt, kann man zeigen, dass die Negation der Behauptung mit den Voraussetzungen unvereinbar ist. Folgerung 2.4. a) α ∈ A ist allgemeing¨ ultig genau dann, wenn ∅ |= α gilt.2 b) Ist F eine unerf¨ ullbare Menge von Formeln, dann gilt F |= α f¨ ur jede Formel α ∈ A. Dies bedeutet, dass man aus jeder unerf¨ ullbaren Formelmenge jede beliebige Formel folgern kann. Beweis a) F¨ ur F = ∅ besagt Satz 2.1 b), dass ∅ |= α genau dann gilt, wenn ¬α unerf¨ ullbar ist. Nach Satz 2.1 a) ist ¬α uner¨ ullbar genau dann, wenn α allgemeing¨ ultig ist. Insgesamt folgt: ∅ |= α gilt genau dann, wenn α allgemeing¨ ultig ist – was zu zeigen war. b) Sei F = { α2 , . . . , αn } unerf¨ ullbar, d.h. F besitzt kein Modell I. Wir betrachten nun f¨ ur ein α ∈ A zwei F¨ alle: (i) α ist allgemeing¨ ultig und (ii) α ist nicht allgemeing¨ ultig. (i) Sei α ∈ A allgemeing¨ ultig, d.h. gem¨aß Satz 2.1 a) ist ¬α unerf¨ ullbar. Es folgt, dass { α1 , . . . , αn , ¬α } unerf¨ ullbar ist, woraus mit Satz 2.1 b) F |= α folgt. (ii) Sei nun α nicht allgemeing¨ ultig, d.h. ¬α ist erf¨ ullbar, d.h. es gibt Modelle I f¨ ur ¬α. Diese sind aber keine Modelle f¨ ur F, da F unerf¨ ullbar ist. Es folgt, dass { α1 , . . . , αn , ¬α } unerf¨ ullbar ist. Daraus folgt mit Satz 2.1 b) F |= α. F¨ ur beide F¨ alle kann also die Behauptung gezeigt werden. 2 Der n¨ achste Satz gibt weitere Beweismethoden an: die Deduktion und die Modus ponens-Regel. 2 Anstelle

von ∅ |= α schreibt man auch |= α.

2.4. LOGISCHE FOLGERUNG

23

Satz 2.2. a) F¨ ur jede Menge F = { α1 , α2 , . . . , αn } aussagenlogischer Formeln und f¨ ur alle Formeln β, γ ∈ A gilt { α1 , α2 , . . . , αn , β } |= γ genau dann, wenn F |= (β → γ) gilt.

Deduktionstheorem

b) F¨ ur alle Formeln α, β ∈ A gilt { α, α → β } |= β.

Modus ponensRegel

Beweis a) Es gilt: { α1 , . . . , αn } |= β → γ genau dann, wenn { α1 , . . . , αn , ¬(β → γ) } unerf¨ ullbar genau dann, wenn { α1 , . . . , αn , β ∧ ¬γ } unerf¨ ullbar

(wegen Satz 2.1 b) ¨ (wegen Ubung 2.2)

genau dann, wenn { α1 , . . . , αn , β, ¬γ } unerf¨ ullbar genau dann, wenn { α1 , . . . , αn , β } |= γ

(wegen Satz 2.1 b)

b) Es gilt: { α, α → β } |= β genau dann, wenn { α, α → β, ¬β } unerf¨ ullbar

(wegen Satz 2.1 b)

Da wegen Beispiel 2.5 e) { α, α → β, ¬β } unerf¨ ullbar ist, ist die Behauptung gezeigt.

2

Definition 2.3. Gilt f¨ ur aussagenlogische Formeln α1 , α2 , . . . , αn und β, dass die Subjunktion (α1 ∧ α2 ∧ . . . ∧ αn ) → β eine Tautologie ist, dann heißt diese Subjunktion Implikation, und wir schreiben (α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β und sprechen α1 , α2 , . . . , αn implizieren β“. 2 Implikation ” Beispiel 2.7. Es seien α, β, γ ∈ A. Rechnen Sie nach, dass die folgenden Implikationen gelten: a) Abschw¨ achung der Nachbedingung: α ⇒ (α ∨ β). b) Versch¨ arfung der Vorbedingung: (α ∧ β) ⇒ α. 2

c) Kettenschluss: (α → β) ∧ (β → γ) ⇒ (α → γ).

Der folgende Satz besagt, dass die logische Folgerung und die Implikation in dem Sinne ¨aquivalente Folgerungsbegriffe sind, als dass die logische Folgerung { α1 , α2 , . . . , αn } |= β auch nachgewiesen werden kann, indem man zeigt, dass die Implikation (α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β gilt, und umgekehrt. Satz 2.3. F¨ ur die aussagenlogischen Formeln α1 , α2 , . . . , αn und β gilt { α1 , α2 , . . . , αn } |= β

genau dann, wenn

(α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β

gilt. Beweis Wir setzen F = { α1 , α2 , . . . , αn } und zeigen: (i) Wenn F |= β gilt, dann gilt auch (α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β.

Abschw¨ achung der Nachbedingung Versch¨ arfung der Vorbedingung Kettenschluss

24

KAPITEL 2. AUSSAGENLOGIK

(ii) Wenn (α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β gilt, dann auch F |= β. Zu (i): F¨ ur alle Modelle I von F ist I ∗ (αi ) = 1 f¨ ur 1 ≤ i ≤ k. F¨ ur diese Modelle muss, da F |= β vorausgesetzt ist, I ∗ (β) = 1 sein. F¨ ur diese Belegungen ist die Subjunktion (α1 ∧ α2 ∧ . . . ∧ αn ) → β immer wahr. F¨ ur Belegungen von F, die keine Modelle sind, ist I ∗ (αi ) = 0 f¨ ur mindestens ein i. ∗ Dann gilt I (α1 ∧ α2 ∧ . . . ∧ αn ) = 0 und damit ist die Subjunktion (α1 ∧ α2 ∧ . . . ∧ αn ) → β ebenfalls wahr und zwar unabh¨ angig vom Wert von β. Die Subjunktion (α1 ∧ α2 ∧ . . . ∧ αn ) → β ist also in jedem Falle wahr und damit eine Implikation, was zu zeigen war. Zu (ii): (α1 ∧ α2 ∧ . . . ∧ αn ) → β ist eine Tautologie genau dann, wenn entweder alle αi und β den Wert 1 haben oder mindestens ein αi den Wert 0 hat. Hieraus folgt, dass in beiden F¨allen die Formelmenge { α1 , α2 , . . . , αn , ¬β } unerf¨ ullbar ist. Gem¨aß Satz 2.1 b) folgt daraus, dass F |= β gilt, was zu zeigen war. 2

2.5

Kalku ¨ le

Die beiden bisher vorgestellten Folgerungsbegriffe, logische Folgerung (Definition 2.2) und Implikation (Definition 2.3), sind semantische Folgerungsbegriffe. Das soll heißen, dass in beiden F¨ allen die Werte der beteiligten Formeln berechnet werden m¨ ussen um zu entscheiden, ob die gegebenen Formeln eine logische Folgerung bzw. eine Implikation bilden. Es ist also notwendig, die Interpretationen der beteiligten Formeln bzw. die Wahrheitstafel der betreffenden Subjunktion zu betrachten. Wir wollen nun eine andere M¨oglichkeit der Folgerung, die syntaktische Folgerung, betrachten. Syntaktische Folgerung heißt, dass eine Folgerung vorgenommen wird, ohne die Semantik der beteiligten Formeln, sei es durch Interpretationen oder sei es durch die Wahrheitstafel, zu berechnen. Die Folgerung geschieht, indem in einer Formel Teilformeln durch andere Formeln ersetzt werden. Die Ersetzung von Formeln geschieht dabei mithilfe sogenannter Ableitungsregeln, auch Inferenzregeln genannt. AbleitungsregelDefinition 2.4. a) Seien α1 , α2 , . . . , αn Inferenzregel (α1 ∧ α2 ∧ . . . ∧ αn ) ⇒ β gilt. Dann heißt

und β ausagenlogische Formeln, f¨ ur die die Implikation α1 , α2 , . . . , αn β

Ableitungs- oder Inferenzregel. b) Sei γ eine aussagenlogische Formel, F = { α1 , α2 , . . . , αn } eine Menge aussagenlogischer Formeln, { β1 , β2 , . . . , βk } irgendeine Auswahl von Formeln aus F und { γ1 , γ2 , . . . , γm , } die Menge der nicht ausgew¨ ahlten Formeln aus F sowie β1 ,β2γ,...,βk eine Inferenzregel, dann heißt { γ1 , γ2 , . . . , γm , γ } ableitbar aus F, und wir schreiben F ` {γ1 , γ2 , . . . , γm , γ}. Logische Ableitung

c) Eine aussagenlogische Formel γ ist ableitbar aus einer Menge F von aussagenlogischen Formeln, falls es Mengen aussagenlogischer Formeln F1 , F2 , . . ., Fr , r ≥ 0, gibt mit: F ` F1 ` F2 ` . . . ` Fr ` {γ} Wir notieren dann F ` γ und sagen, dass γ logisch aus F ableitbar ist.

2

¨ 2.5. KALKULE

25

Beispiel 2.8. Es seien α, β, γ ∈ A. a) - d) sind Beispiele f¨ ur Ableitungsregeln. e) ist ein Beispiel f¨ ur eine logische Ableitung mithilfe der Regeln a) und b). Modus nens

po-

a) Modus ponens-Regel:

α, α→β β

b) Modus tollens-Regel:

α→β, ¬β . ¬α

c) Reductio ad absurdum-Regel: d) Kettenschluss:

α→β,β→γ α→γ

(siehe auch Satz 2.2 b). Modus lens

(γ∨α)→β, (γ∨α)→¬β . ¬α

(siehe auch Beispiel 2.7 c auf Seite 23).

tol-

Reductio ad absurdum Kettenschluss

e) Es gilt { α → β, ¬β, ¬α → γ } ` { ¬α, ¬α → γ } ` {γ} und damit { α → β, ¬β, ¬α → γ } ` γ Die erste Ableitung erfolgt mithilfe der Modus tollen-Regel, die zweite mithilfe der Modus ponensRegel. 2 Die logische Ableitung geschieht also, indem eine Menge von aussagenlogischen Formeln aufgrund von Inferenzregeln oder bereits durchgef¨ uhrten logischen Ableitungen ver¨andert wird. Dabei wird die Semantik der Formeln bei keinem Ableitungschritt betrachtet. Die korrekte Semantik wird nur – einmalig – f¨ ur die benutzten Inferenzregeln vorausgesetzt (Definition 2.4 a). Solche syntaktischen Ableitungssysteme werden auch Kalk¨ ule genannt. Kalk¨ ule sind gut geeignet f¨ ur die Logischer ul Programmierung von logischen Schlussfolgerungsmechanismen auf Rechnern. Dabei sollte ein aus- Kalk¨ sagenlogischer Kalk¨ ul den folgenden beiden Qualit¨atskriterien mindestens gen¨ ugen: • Widerspruchsfreiheit (auch Korrektheit): Jede mit dem Kalk¨ ul ableitbare Formel ist eine lo- Widerspruchsgische Folgerung. Ist also F eine Menge aussagenlogischer Formeln, α eine aussagenlogische freiheit Formel und gilt F ` α, dann folgt, dass auch F |= α gilt. Der Kalk¨ ul kann also keine Folge- Korrektheit rungen produzieren, die semantisch nicht korrekt sind. Mit Folgerung 2.4 (siehe Seite 22) gilt f¨ ur einen widerspruchsfreien Kalk¨ ul: Alle ableitbaren Formeln sind allgemeing¨ ultig, d.h., gilt ` α, dann gilt auch |= α. • Vollst¨ andigkeit: Jede logische Folgerung ist auch mit dem Kalk¨ ul ableitbar. Ist also F eine Vollst¨andigMenge aussagenlogischer Formeln, α eine aussagenlogische Formel und gilt F |= α, dann folgt, keit dass auch F ` α gilt. Der Kalk¨ ul kann also alle logischen Folgerungen syntaktisch ableiten. Mit Folgerung 2.4 gilt f¨ ur einen vollst¨andigen Kalk¨ ul: Alle allgemeing¨ ultigen Formeln sind ableitbar, d.h., gilt |= α, dann gilt auch ` α. F¨ ur einen widerspruchsfreien und vollst¨ andigen aussagenlogischen Kalk¨ ul gilt also F ` α genau dann, wenn F |= α gilt, bzw. ` α gilt genau dann, wenn |= α gilt. In Abschnitt 2.8 stellen wir einen widerspruchsfreien und vollst¨andigen Kalk¨ ul f¨ ur die Aussagenlogik vor.

26

KAPITEL 2. AUSSAGENLOGIK

2.6

¨ Aussagenlogische Aquivalenzen

Interessant f¨ ur das Rechnen“ mit aussagenlogischen Formeln ist, in ihnen Teilformeln durch gleich” wertige Teilformeln ersetzen zu k¨onnen, um kalk¨ ulm¨aßig“ – also rein syntaktisch – Formeln in ” gleichwertige Formeln transformieren zu k¨onnen. Dazu m¨ ussen wir zun¨achst die Gleichwertigkeit ¨ oder Aquivalenz von aussagenlogischen Formeln definieren. 2.5. Zwei aussagenlogische Formeln α, β ∈ A heißen logisch ¨ aquivalent, falls f¨ ur jede Belegung I von α und β gilt: I ∗ (α) = I ∗ (β). Schreibweise: α ≡ β. 2

Aussagenlogische Definition ¨ Aquivalenz

¨ Beispiel 2.9. Aus Folgerung 2.1 a) (Seite 19) folgt unmittelbar, dass f¨ ur α, β ∈ A folgende Aquivalenzen gelten: α → β ≡ ¬α ∨ β α ↔ β ≡ (α → β) ∧ (β → α) α ⊕ β ≡ (α ∧ ¬β) ∨ (¬α ∧ β) ¨ Der folgende Satz listet wichtige aussagenlogische Aquivalenzen auf. Satz 2.4. Es seien α, β, γ ∈ A aussagenlogische Formeln. Dann gelten die auf Seite 27 in Tabelle ¨ 2.4 aufgelisteten Aquivalenzen: ¨ ¨ Ubung 2.3. Beweisen Sie die im Satz 2.4 aufgelisteten logischen Aquivalenzen! ¨ Aquivalenz

2

Definition 2.6. Gilt f¨ ur aussagenlogische Formeln α und β, dass die Bijunktion α ↔ β eine ¨ Tautologie ist, dann heißt diese Bijunktion eine Aquivalenz, und wir schreiben α ⇔ β. 2 ¨ ¨ Dass die logische Aquivalenz (siehe Definition 2.5) und die Aquivalenz (Definition 2.6) gleichbedeutend sind, besagt der folgende Satz (vergleiche auch Satz 2.3 auf Seite 23). Satz 2.5. Seien α, β ∈ A aussagenlogische Formeln, dann gilt α ≡ β genau dann, wenn α ⇔ β gilt, und genau dann, wenn |= α ⇔ β gilt ¨ Ubung 2.4. Beweisen Sie Satz 2.5!

2

Satz 2.6. a) Seien α, β ∈ A mit α ≡ β, und sei γ ∈ A eine aussagenlogische Formel, die α als Teilformel enth¨ alt. γ 0 sei eine Formel, die aus γ entsteht, indem α durch β ersetzt wird. Dann gilt: γ ≡ γ0. b) Eine aussagenlogische Formel α ∈ A ist allgemeing¨ ultig genau dann, wenn α ≡ 1 (oder α ⇔ 1) gilt. 2 ¨ Ubung 2.5. Beweisen Sie Satz 2.6!

2

¨ Der Satz 2.6 bildet zusammen mit den in Satz 2.4 (Tabelle 2.4) aufgelisteten Aquivalenzen ¨ die M¨ oglichkeit, die Aquivalenz von aussagenlogischen Formeln bzw. die Allgemeing¨ ultigkeit von aussagenlogischen Formeln rein syntaktisch durch Ersetzen von Teilformeln durch ¨aquivalente nachzuweisen.

¨ 2.6. AUSSAGENLOGISCHE AQUIVALENZEN

¬α ≡ α → 0 ¬¬α ≡ α α∨α≡α

27

(Einf¨ uhrung der Negation) (Doppelte Negation) (Idempotenz)

α∧α≡α α∨β ≡β∨α

(Kommutativit¨ at)

α∧β ≡β∧α α ∨ (β ∨ γ) ≡ (α ∨ β) ∨ γ

(Assoziativit¨ at)

α ∧ (β ∧ γ) ≡ (α ∧ β) ∧ γ α ∨ (β ∧ γ) ≡ (α ∨ β) ∧ (α ∨ γ)

(Distributivit¨ at)

α ∧ (β ∨ γ) ≡ (α ∧ β) ∨ (α ∧ γ) α ∨ (α ∧ β) ≡ α

(Absorption)

α ∧ (α ∨ β) ≡ α ¬(α ∨ β) ≡ ¬α ∧ ¬β

(De Morgansche Regeln)

¬(α ∧ β) ≡ ¬α ∨ ¬β 1∨α≡1

(Tautologieregeln)

1∧α≡α ¬α ∨ α ≡ 1 0∨α≡α 0∧α≡0

(Unerf¨ ullbarkeitsregeln)

¬α ∧ α ≡ 0

¨ Tabelle 2.1: Aussagenlogische Aquivalenzen.

28

KAPITEL 2. AUSSAGENLOGIK

Beispiel 2.10. Seien α, β, γ ∈ A. Wir zeigen rein syntaktisch, dass die aussagenlogische Formel (α → β) ∨ (β → γ) allgemeing¨ ultig ist: (α → β) ∨ (β → γ) ⇔ (¬α ∨ β) ∨ (¬β ∨ γ)

(gem¨aß Definition der Subjunktion)

⇔ ¬α ∨ (β ∨ ¬β) ∨ γ

(wegen der Assoziativit¨at der Disjunktion)

⇔ ¬α ∨ 1 ∨ γ

(wegen der Tautologieregel)

⇔ (¬α ∨ γ) ∨ 1

(wegen Kommutativit¨at und Assoziativit¨at)

⇔1

2.7

N AN D N OR

(wegen der Tautologieregel)

Normalformen und aussagenlogische Basen

Wir kennen bisher folgende f¨ unf zweistellige Verkn¨ upfungen: Disjunktion ∨, Konjunktion ∧, Subjunktion →, Bijunktion ↔ und Exklusives Oder ⊕. F¨ ur die weiteren Betrachtungen f¨ uhren wir f¨ ur α, β ∈ A noch zwei weitere Verkn¨ upfungen ein: α ↑ β (NAND) und α ↓ β (NOR) definiert durch α 1 1 0 0

β 1 0 1 0

α↑β 0 1 1 1

bzw.

α 1 1 0 0

β 1 0 1 0

α↓β 0 0 0 1

Folgerung 2.5. F¨ ur aussagenlogische Formeln α, β ∈ A gilt: a) α ↑ β ⇔ ¬(α ∧ β). b) α ↓ β ⇔ ¬(α ∨ β).

2

¨ Ubung 2.6. Beweisen Sie die Aussagen in Folgerung 2.5!

2

In Folgerung 2.1 b) (Seite 19) haben wir bereits u upfungen ¨berlegt, wie viele zweistellige Verkn¨ es geben kann. Der folgende Satz verallgemeinert diese Aussage und beantwortet die Frage, wie viele n-stellige Verkn¨ upfungen es prinzipiell geben kann. n

Satz 2.7. Es gibt 22 n-stellige aussagenlogische Verkn¨ upfungen. Beweis Eine Wahrheitstafel besitzt f¨ ur n aussagenlogische Variablen 2n Zeilen, da jede Variable die Werte 0 oder 1 annehmen kann. Jede dieser 2n Zeilen kann als Ergebnis (in der letzten Spalte) n ebenfalls die Werte 0 oder 1 haben. Das bedeutet, dass es genau 22 verschiedene Ergebnisspalten 2n gibt. Also gibt es prinzipiell 2 verschiedene n-stellige aussagenlogische Verkn¨ upfungen. 2 Folgerung 2.6. Als Spezialfall gilt f¨ ur n = 2, dass es, wie wir bereits in Folgerung 2.1 b) festgestellt 2 haben, 22 = 16 verschiedene zweistellige aussagenlogische Verkn¨ upfungen gibt. 2

2.7. NORMALFORMEN UND AUSSAGENLOGISCHE BASEN

29

Wir gehen nun auf die bereits in Folgerung 2.1 b) gestellte Frage ein, ob man tats¨achlich 16 verschiedene zweistellige Operationen braucht oder ob man einige Operationen mithilfe anderer aquivalent darstellen kann. Nicht nur theoretisch, sondern auch aus praktischen Gr¨ unden ist diese ¨ Fragestellung von Interesse. So ist z.B. im Hinblick auf den Entwurf logischer Schaltungen die Frage nach einer minimalen Anzahl logischer Grundbausteine interessant, mit der alle logischen Schaltungen realisierbar sind. Beispiel 2.11. a) Es seien α, β ∈ A aussagenlogische Formeln. Aus Folgerung 2.1 a) (Seite 19) ¨ kennen wir folgende Aquivalenzen: (α → β) ⇔ (¬α ∨ β) (α ↔ β) ⇔ ((α → β) ∧ (β → α)) ⇔ ((¬α ∨ β) ∧ (¬β ∨ α)) (α ⊕ β) ⇔ ((α ∧ ¬β) ∨ (¬α ∧ β)) Subjunktion, Bijunktion und exklusives Oder sind also durch Negation, Disjunktion und Konjunktion darstellbar. b) Mithilfe der Doppelten Negation und der De Morganschen Regeln (siehe Satz 2.4 bzw. Tabelle ¨ 2.4, Seite 27) gelten die folgenden Aquivalenzen: α ∧ β ⇔ ¬¬(α ∧ β) ⇔ ¬(¬α ∨ ¬β) α ∨ β ⇔ ¬¬(α ∨ β) ⇔ ¬(¬α ∧ ¬β)

(2.7) (2.8)

Die Konjunktion l¨ asst sich also durch Negation und Disjunktion, die Disjunktion durch Negation und Konjunktion darstellen. c) Mithilfe von Idempotenz (siehe Satz 2.4) und Folgerung 2.5 b) (Seite 28) gilt ¬α ⇔ ¬(α ∨ α) ⇔ α ↓ α

(2.9)

Die Negation l¨ asst sich also durch NOR ausdr¨ ucken. ¨ ¨ d) Mithilfe von Aquivalenz (2.7), Folgerung 2.5 b) und der Aquivalenz (2.9) gilt α ∧ β ⇔ ¬(¬α ∨ ¬β) ⇔ ¬α ↓ ¬β ⇔ (α ↓ α) ↓ (β ↓ β) Die Konjunktion l¨ asst sich also alleine durch NOR ausdr¨ ucken. ¨ Ubung 2.7. Zeigen Sie: a) Die Negation l¨ asst sich alleine durch NAND ausdr¨ ucken. b) Die Konjunktion l¨ asst sich alleine durch NAND ausdr¨ ucken. c) Die Disjunktion l¨ asst sich alleine durch NOR ausdr¨ ucken. d) Die Disjunktion l¨ asst sich alleine durch NAND ausdr¨ ucken.

2

Definition 2.7. Eine Menge O aussagenlogischer Verkn¨ upfungen heißt aussagenlogische Basis, Aussagenlogische falls sich jede aussagenlogische Formel ¨ aquivalent in eine aussagenlogische Formel transformieren Basis l¨ asst, welche nur Verkn¨ upfungen aus O enth¨alt. 2 Auf die oben gestellten Fragen gibt nun der folgende Satz eine Antwort.

30

KAPITEL 2. AUSSAGENLOGIK

Satz 2.8. Die folgenden Mengen aussagenlogischer Verkn¨ upfungen bilden aussagenlogische Basen:3 Boolesche Basis De Morgan-Basis Frege-Basis NOR-Basis NAND-Basis

{ ¬, ∨, ∧ } {¬, ∨} und {¬, ∧} {¬, →} {↓} {↑}

¨ Ubung 2.8. Beweisen Sie Satz 2.8!

2

Disjunktive Normalform

Definition 2.8. a) Eine aussagenlogische Formel α ∈ A ist in disjunktiver Normaform (DNF), falls gilt: α = α1 ∨ . . . ∨ αn mit αi = pi1 ∧ . . . ∧ piki , 1 ≤ i ≤ n, wobei alle pij , 1 ≤ j ≤ ki , 1 ≤ i ≤ n, Literale sind.

Konjunktive Normalform

b) Eine aussagenlogische Formel α ∈ A ist in konjunktiver Normaform (KNF), falls gilt α = α1 ∧ . . . ∧ αn mit αi = pi1 ∨ . . . ∨ piki , 1 ≤ i ≤ n, wobei alle pij , 1 ≤ j ≤ ki , 1 ≤ i ≤ n, Literale sind. 2 Beispiel 2.12. Die Formel α = (p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q) ∨ (p ∧ q ∧ r) ∨ (¬q ∧ ¬r) ist ein Beispiel f¨ ur eine Formel in disjunktiver Normalform. Die Formel β = (¬p ∨ q ∨ r) ∧ (¬p ∨ ¬q) ∧ (¬p ∨ q ∨ ¬r) ist ein Beispiel f¨ ur eine Formel in konjunktiver Normalform.

2

Eine Formel in disjunktiver Normalform ist also eine Disjunktion von Konjunktionen von Literalen, eine Formel in konjunktiver Normalform entsprechend eine Konjunktion von Disjunktionen von Literalen. Satz 2.9. a) Jede aussagenlogische Formel l¨asst sich in eine ¨aquivalente aussagenlogische Formel in disjunktiver Normalform transformieren. b) Jede aussagenlogische Formel l¨asst sich in eine ¨aquivalente aussagenlogische Formel in konjunktiver Normalform transformieren. 2 ¨ Ubung 2.9. Beweisen Sie Satz 2.9! Dualit¨ atsprinzip der Aussagenlogik

2

Satz 2.10. Ersetzt man in einer aussagenlogischen Formel α ∈ A, in der nur die Operatoren ¬, ∨ und ∧ vorkommen, jedes Vorkommen von ∧ durch ∨, jedes Vorkommen von ∨ durch ∧, jedes Vorkommen von 0 durch 1, jedes Vorkommen von 1 durch 0 sowie jedes Vorkommen eines Literals durch seine Negation, dann gilt f¨ ur die so entstehende Formel β: α ⇔ ¬β. ¨ Ubung 2.10. Beweisen Sie Satz 2.10!

2

3 Die Frege-Basis ist benannt nach dem Mathematiker, Logiker und Philosoph Gottlob Frege (1848 - 1925). Dieser lieferte bedeutende Betr¨ age zur mathematischen Grundlagenforschung und beeinflusste durch seine sprachanalytischen Untersuchungen Philosophie und Linguistik. Frege gilt als Begr¨ under der modernen Logik. In seiner Arbeit Begriffsschrift, eine der arithmetischen nachgebildete Formelsprache des reinen Denkens“ stellte er als Erster einen ” leistungsf¨ ahigen Kalk¨ ul f¨ ur die Pr¨ adikatenlogik vor. Die Boolesche Basis ist nach George Boole und die De Morgan-Basis ist nach Augustus de Morgan benannt, zu beiden werden in Kapitel 6 bzw. in Kapitel 5 noch Angaben gemacht.

¨ 2.8. RESOLUTIONSKALKUL

31

Folgerung 2.7. Sei α ∈ A eine aussagenlogische Formel, dnf(α) ihre disjunktive und knf(α) ihre konjunktive Normalform, dann gilt dnf(α) ⇔ ¬knf(¬α) sowie knf(α) ⇔ ¬dnf(¬α) ¨ Ubung 2.11. Beweisen Sie Folgerung 2.7!

2.8

2

Resolutionskalku ¨l

Im Abschnitt 2.5 haben wir grundlegende Begriffe f¨ ur Kalk¨ ule und wesentliche Eigenschaften von Kalk¨ ulen kennen gelernt. Wir wollen nun kurz auf den Resolutionskalk¨ ul eingehen, der in der Logischen Programmierung und in der K¨ unstlichen Intelligenz eine wichtige Rolle spielt. Der Resolutionskalk¨ ul ist ein widerspruchsfreier und vollst¨andiger Kalk¨ ul, mit dem die (Un-) Erf¨ ullbarkeit einer Menge von Klauseln nachgewiesen werden kann. Definition 2.9. Sei

Klausel

α = (p11 ∨ . . . ∨ p1k1 ) ∧ . . . ∧ (pn1 ∨ . . . ∨ pnkn ) die in konjunktiver Normalform gegebene aussagenlogische Formel α ∈ A. Dann heißen die Mengen {pi1 , . . . , piki }, 1 ≤ i ≤ n, der jeweils disjunktiv verkn¨ upften Literale die Klauseln von α, und die Menge ihrer Klauseln Klauselmenge Mα = { { p11 , . . . , p1k1 }, . . . , { pn1 , . . . , pnkn } } 2

heißt Klauselmenge von α. Beispiel 2.13. F¨ ur die Formel β aus Beispiel 2.12 (Seite 30) gilt: Mβ = { { ¬p, q, r }, { ¬p, ¬q }, { ¬p, q, ¬r } }

Satz 2.11. Seien α1 und α2 zwei ¨ aquivalente aussagenlogische KNF-Formeln mit Vα1 = Vα2 . Dann gilt Mα1 = Mα2 . 2 Beispiel 2.14. Die folgenden drei Formeln sind ¨aquivalent α1 = (p ∨ p) ∧ (q ∨ ¬r) α2 = (¬r ∨ q) ∧ p α3 = p ∧ (q ∨ ¬r ∨ q) und es gilt Mα1 = Mα2 = Mα3 = { {p}, { q, ¬r } }.

2

Eine Klauselmenge abstrahiert von ¨ aquivalenten Umformungen mit Kommutativit¨ats-, Assoziativit¨ ats- und Dsitributivit¨ atsregeln. Da es sich bei der Klauselmenge einer Formel also nur um eine andere Darstellung dieser Formel handelt, k¨ onnen die Begriffe Belegung, Interpretation, Ableitungsregel, (Un-) Erf¨ ullbarkeit, ¨ Folgerung und Aquivalenz auf Klauselmengen entsprechend u ¨bertragen werden. ¨ In Vorbereitung auf die folgenden Uberlegungen betrachten wir folgendes Beispiel.

32

KAPITEL 2. AUSSAGENLOGIK

Beispiel 2.15. Es sei α = (p ∨ q ∨ ¬r) ∧ (r ∨ ¬s) Es ist also Mα = { { p, q, ¬r }, { r, ¬s } } Ist α bzw. Mα erf¨ ullbar? Mα ist erf¨ ullbar genau dann, wenn beide Klauseln K1 = { p, q, ¬r } und K2 = { r, ¬s } erf¨ ullbar sind. Beide Klauseln sind erf¨ ullbar genau dann, wenn I(p) = 1 oder I(q) = 1 und jedem Fall I(s) = 0 gesetzt wird. Die Belegung des Literals r ist f¨ ur die Erf¨ ullbarkeit von K1 und K2 unerheblich, da r in K1 und die Negation ¬r in K2 auftritt. r und ¬r neutralisieren“ sich ” ¨ quasi hinsichtlich der Erf¨ ullbarkeit von Mα . Aus unserer Uberlegung folgt, dass Mα genau dann erf¨ ullbar ist, wenn die Klauselmenge Mα0 = { { p, q, ¬r }, { r, ¬s }, { p, q, ¬s } } 2

erf¨ ullbar ist, es ist also Mα ≡ Mα0 .

¨ Diese beispielhafte Uberlegung ist die Grundlage f¨ ur folgende Ableitungsregel, auf welcher der Resolutionskalk¨ ul basiert. Resolution

Definition 2.10. Die Resolution erfolgt mithilfe der Ableitungregel p1 ∨ . . . ∨ pm ∨ r, q1 ∨ . . . ∨ qn ∨ ¬r p1 ∨ . . . ∨ pm ∨ q1 ∨ . . . ∨ qn oder in Klauselnotation“ ”

{ p1 , . . . , pm , r }, { q1 , . . . , qn , ¬r } { p1 , . . . , pm , q1 , . . . , qn }

Aus schreibtechnischen Gr¨ unden f¨ uhren wir eine neue Schreibweise ein: F¨ ur die Klauselmengen K1 = { p1 , . . . , pm , r } und K2 = { q1 , . . . , qn , ¬r } Resolvente

ist K = { p1 , . . . , pm , q1 , . . . , qn } eine Resolvente von K1 und K2 . Schreibweise: K = R(K1 , K2 ).

2

Beispiel 2.16. a) Es seien K1 = { p, q, ¬r } und K2 = { r, ¬s } die beiden Klauseln aus Beispiel 2.15 (Seite 32), dann ist R(K1 , K2 ) = { p, q, ¬s } die einzige Resolvente von K1 und K2 . b) Es sei K1 = { p, ¬q, r } und K2 = { q, ¬r }, dann sind R(K1 , K2 ) = { p, r, ¬r } sowie R(K2 , K1 ) = { p, q, ¬q } m¨ ogliche Resolventen von K1 und K2 . c) Die Resolvente von K1 = {p} und K2 = {¬p} ist leer: R(K1 , K2 ) = ∅.

2

Bemerkung 2.1. Zu beachten ist, dass die Definition 2.10 immer nur das Resolvieren genau eines Literals zul¨ asst. Zwei Klauseln k¨ onnen also mehrere verschiedene Resolventen haben (siehe Beispiel 2.16 b). 2

¨ 2.8. RESOLUTIONSKALKUL

33

2.12. Sei α ∈ A in konjunktiver Normalform, K1 , K2 ∈ Mα seien Klauseln von α und K = R(K1 , K2 ) eine Resolvente von K1 und K2 . Dann gilt Mα ≡ Mα ∪ {K}. Dabei ist Mα ∪ {K} die Menge von Klauseln bestehend aus allen Klauseln von Mα und der Klausel K.

Resolutionslemma Satz

Beweis Es sei K1 = { p1 , . . . , pm , r }, K2 = { q1 , . . . , qn , ¬r } sowie K = R(K1 , K2 ) = { p1 , . . . , pm , q1 , . . . , qn } Es ist offensichtlich, dass, wenn I ein Modell f¨ ur Mα ∪ {K} ist, dann ist I auch ein Modell f¨ ur Mα . Ist umgekehrt I ein Modell f¨ ur Mα , dann ist I auch ein Modell f¨ ur jede Klausel in Mα , also auch f¨ ur die Klauseln K1 und K2 . Wir betrachten zwei F¨alle: (1) I(r) = 1 sowie (2) I(r) = 0. Zu (1), I(r) = 1: Dann ist I(¬r) = 0 und da I Modell f¨ ur K2 ist, muss I ein Modell f¨ ur { q1 , . . . , qn } sein, und damit ist I ein Modell f¨ ur K = { p1 , . . . , pm , q1 , . . . , qn }. Zu (2), I(r) = 0: Dann muss, da I Modell f¨ ur K1 ist, I auch ein Modell f¨ ur { p1 , . . . , pm } sein, und damit ist I ein Modell f¨ ur K = { p1 , . . . , pm , q1 , . . . , qn }. In jedem Fall ist also ein Modell I von Mα auch ein Modell f¨ ur K und damit f¨ ur Mα ∪ { K }.2 Wir definieren nun die fortgesetzte Anwendung des Resolutionsoperators R auf eine Klauselmenge. Definition 2.11. Sei Mα die Klauselmenge einer aussagenlogischen Formel α ∈ A in konjunktiver Normalform. Dann gilt R(Mα ) = Mα ∪ { R(K1 , K2 ) | K1 , K2 ∈ Mα } Dabei bedeutet Mα ∪ { R(K1 , K2 ) | K1 , K2 ∈ Mα }, dass zur Klauselmenge Mα alle m¨oglichen Resolventen von allen m¨ ogichen Paaren von Klauseln aus Mα hinzugef¨ ugt werden. Wir wenden nun den Operator R wiederholt auf Mα an: R0 (Mα ) = Mα Rn+1 (Mα ) = R(Rn (Mα )), n ≥ 0 R(Mα ) bedeutet also die Anwendung des Operators R auf alle Paare von Klauseln aus Mα , und f¨ ur k ∈ N0 bedeutet Rk (Mα ), dass der R Operator k-mal angewendet wird, zun¨achst auf Mα , dann auf das Ergebnis dieser Anwendung, dann auf dessen Ergebnis usw.: Rk (Mα ) = R(R(. . . R(Mα ) . . .)) | {z } k-mal

Aus dem Resolutionslemma (Satz 2.12, Seite 33) folgt unmittelbar Folgerung 2.8. Sei Mα die Klauselmenge einer aussagenlogischen Formel α ∈ A in konjunktiver Normalform. Dann gilt a) Mα ≡ Ri (Mα ) f¨ ur alle i ≥ 0, b) Ri (Mα ) ≡ Rj (Mα ) f¨ ur alle i, j ≥ 0. Beispiel 2.17. Wir betrachten die Formel α = (¬r ∨ p ∨ q) ∧ (p ∨ q ∨ r) ∧ (¬q ∨ p)

2

34

KAPITEL 2. AUSSAGENLOGIK

Es ist also Mα = { { p, q, ¬r }, { p, q, r }, { p, ¬q }}. Es gilt: R(Mα ) = { { p, q, ¬r }, { p, q, r }, { p, ¬q }, { p, q }, { p, ¬r }, { p, r } } R2 (Mα ) = R(R(Mα )) = { { p, q, ¬r }, { p, q, r }, { p, ¬q }, { p, q }, { p, ¬r }, { p, r }, {p} } 3

R (Mα ) = R(R2 (Mα )) = { {p, q, ¬r }, { p, q, r }, { p, ¬q }, { p, q }, { p, ¬r }, { p, r }, {p} } Es ist also R3 (Mα ) = R2 (Mα ) und damit Rl (Mα ) = R2 (Mα ) f¨ ur alle l ≥ 2. Nach zweimaligem Anwenden des Operators wird die Klauselmenge station¨ar, d.h. ver¨andert sich nicht mehr. 2 Dass die fortgesetzte Anwendung des Operators R auf eine Klauselmenge nach endlich vielen Schritten station¨ ar wird, d.h. keine neuen Klauseln mehr produziert, ist einsichtig, denn bei jeder Anwendung von R kommen h¨ ochstens Klauseln hinzu, die ein Literal weniger enthalten. Da es nur endlich viele Klauseln und in jeder Klausel nur endlich viele Literale gibt, muss dieser Prozess stoppen. Es gilt der folgende Satz. Satz 2.13. Sei Mα Klauselmenge einer aussagenlogischen Formel α ∈ A in konjunktiver Normalform. Dann gibt es ein t ∈ N0 , so dass Rt (Mα ) = Rl (Mα ) ist f¨ ur alle l ≥ t. 2 Die Klauselmenge Rt (Mα ), f¨ ur die Rt (Mα ) = Rl (Mα ) f¨ ur alle l ≥ t gilt, bezeichnen wir mit R (Mα ). ∗

Beispiel 2.18. Im obigen Beispiel 2.17 gilt: R∗ (Mα ) = R2 (Mα ).

2

Aus dem Satz 2.13 und dem Resolutionslemma, Satz 2.12 (Seite 33), folgt unmittelbar Folgerung 2.9. Sei Mα Klauselmenge einer aussagenlogischen Formel α ∈ A in konjunktiver Normalform, dann ist a) Mα ≡ R∗ (Mα ), b) Mα (un-) erf¨ ullbar genau dann, wenn R∗ (Mα ) (un-) erf¨ ullbar ist. Als Vorbereitung auf den n¨ achsten Satz betrachten wir folgendes Beispiel. Beispiel 2.19. F¨ ur die Formel α = (p ∨ q ∨ ¬r) ∧ ¬p ∧ (p ∨ q ∨ r) ∧ (p ∨ ¬q) mit der Klauselmenge Mα = { { p, q, ¬r }, { ¬p }, { p, q, r }, { p, ¬q }} gilt: R(Mα ) = { { p, q, ¬r }, { ¬p }, { p, q, r }, { p, ¬q }, { q, ¬r }, { p, q }, { p, ¬r }, { q, r }, { ¬q }, { p, r } } 2

R (Mα ) = R(R(Mα )) = { { p, q, ¬r }, { ¬p }, { p, q, r }, { p, ¬q }, { q, ¬r }, { p, q }, { p, ¬r }, { q, r }, { ¬q }, { p, r } { q }, { ¬r }, { r }, { p } }

2

¨ 2.8. RESOLUTIONSKALKUL

35

¨ Diese Klauselmenge enth¨ alt die beiden Klauseln r und ¬r – im Ubrigen auch noch p und ¬p sowie q und ¬q –, d.h. die entsprechende Formel hat die Gestalt α0 = . . . ∧ ¬p ∧ . . . ∧ ¬q ∧ . . . ∧ q ∧ ¬r ∧ r ∧ p Alleine wegen der Teilformel r ∧ ¬r und ebenso wegen der Teilformeln p ∧ ¬p und ¬q ∧ q ist die Formel α0 und damit die Klauselmenge R2 (Mα ) unerf¨ ullbar, denn r und ¬r sind widerspr¨ uchlich (siehe Satz 2.4 bzw. Tabelle 2.4 auf Seite 27). Werden r und ¬r resolviert, dann entsteht die leere Menge: R({ r }, { ¬r }) = ∅, gleiches gilt f¨ ur p und ¬p sowie f¨ ur q und ¬q. Es folgt ∅ ∈ R3 (Mα ). 2 Aus dem Beispiel k¨ onnen wir ableiten, dass Rk (Mα ) f¨ ur ein k ≥ 1 erstmalig die leere Klausel k−1 enth¨ alt, falls in R (Mα ) eine Klausel genau aus einem Literal besteht und eine weitere Klausel genau aus dessen Negation. Damit ist Rk−1 (Mα ) eine unerf¨ ullbare Klauselmenge. Wegen Folgerung 2.9 b) (Seite 34) ist damit auch Mα und damit α unerf¨ ullbar. Im folgenden Satz fassen wir dieses Ergebnis zusammen, und wir zeigen im Beweis des Satzes, dass der Resolutionskalk¨ ul hinsichtlich des Nachweises der Unerf¨ ullbarkeit einer aussagenlogischen Formel korrekt und vollst¨ andig ist (siehe Abschnitt 2.5). Satz 2.14. Sei Mα die Klauselmenge der aussagenlogischen Formel α ∈ A in konjunktiver Nor- Resolutionssatz der Aussamalform. Dann gilt: Mα (und damit α) ist unerf¨ ullbar genau dann, wenn ∅ ∈ R∗ (Mα ) ist. Beweis Wir zeigen zuerst die Korrektheit, d.h., ist ∅ ∈ R∗ (Mα ), dann ist Mα unerf¨ ullbar, womit gezeigt ist, dass der Resolutionskalk¨ ul keine erf¨ ullbare Formel als unerf¨ ullbar ermittelt. Sei also ∅ ∈ R∗ (Mα ). Wie wir oben im Anschluss an Beispiel 2.19 u ¨berlegt haben, kann die leere Klausel nur durch Resolution zweier Klauseln K1 = { l } und K2 = { ¬l }, wobei l ein Literal ist, entstehen. Gem¨ aß Folgerung 2.8 auf Seite 33 gilt Mα ≡ Ri (Mα ) ≡ Rj (Mα ) f¨ ur alle i, j ≥ 0. Ist also ∅ ∈ ∗ R (Mα ), dann muss es ein k ≥ 1 geben mit ∅ ∈ Rk (Mα ) und K1 , K2 ∈ Rk−1 (Mα ). Da es keine Belegung gibt, die sowohl K1 als auch K2 erf¨ ullt, ist Rk−1 (Mα ) unerf¨ ullbar und damit, da Rk (Mα ) ≡ Mα ist, ist auch Mα unerf¨ ullbar. Wir zeigen nun die Vollst¨ andigkeit, d.h., ist α unerf¨ ullbar, dann ist ∅ ∈ R∗ (Mα ), womit gezeigt ist, dass alle unerf¨ ullbaren Formeln durch den Resolutionskalk¨ ul auch als solche erkannt werden. Wir zeigen die Behauptung mithilfe einer so genannten vollst¨andigen Induktion u ¨ber die Anzahl n der atomaren Formeln in einer Klauselmenge. Vollst¨andige Induktion bedeutet, dass man die Behauptung zun¨ achst f¨ ur einen Anfangswert f¨ ur n zeigt, dann annimmt, dass die Behauptung f¨ ur n gilt, und schließlich mithilfe dieser Annahme zeigt, dass die Behauptung dann auch f¨ ur n + 1 gilt. Auf vollst¨ andige Induktion gehen wir im Teil III noch ausf¨ uhrlich ein. Sei also n = 1, d.h. α enth¨ alt genau eine Variable p. Da Mα unerf¨ ullbar ist, m¨ ussen in Mα die Klauseln { p } und { ¬p } vorkommen. Diese resolvieren zur leeren Klausel, also ist ∅ ∈ R∗ (Mα ). Wir nehmen nun an, dass f¨ ur jede unerf¨ ullbare Klauselmenge Mα mit n atomaren Formeln p1 , . . . , pn gilt, dass ∅ ∈ R∗ (Mα ) ist. Sei nun Mβ eine Klauselmenge mit den atomaren Formeln p1 , . . . , pn+1 . Wir bilden aus Mβ zwei Klauselmengen Mβ0 und Mβ00 wie folgt: Mβ0 entsteht aus Mβ durch Streichen jedes Vorkommens von pn+1 in einer Klausel sowie durch Streichen aller Klauseln, in denen ¬pn+1 vorkommt. Mβ0 ist somit a ¨quivalent zu der Klauselmenge, die entsteht, wenn man in Mβ die atomare Formel pn+1 fest mit 0 belegt. Mβ00 entsteht aus Mβ in analoger Weise, nur mit vertauschten Rollen von pn+1 und ¬pn+1 . Mβ0 und Mβ00 m¨ ussen notwendigerweise unerf¨ ullbar sein. Denn, wenn wir annehmen, dass Mβ0 erf¨ ullbar ist, dann gibt es eine erf¨ ullende Belegung I : { p1 , . . . , pn } → { 0, 1 }. Dann ist I 0 mit ( I(x), falls x ∈ { p1 , . . . , pn } 0 I (x) = 0, falls x = pn+1

genlogik

36

KAPITEL 2. AUSSAGENLOGIK

ein Modell f¨ ur Mβ , was aber einen Widerspruch zur Unerf¨ ullbarkeit von Mβ bedeutet. In analoger Weise f¨ uhrt die Annahme, dass Mβ00 erf¨ ullbar ist, ebenfalls zu diesem Widerspruch. Mβ0 und Mβ00 sind also unerf¨ ullbare Klauselmengen mit n atomaren Formeln. Wegen der Induktionsannahme, dass f¨ ur jede unerf¨ ullbare Klauselmenge Mα mit n atomaren Formeln ∅ ∈ R∗ (Mα ) gilt, ist also ∅ ∈ R∗ (Mβ0 ) und ∅ ∈ R∗ (Mβ00 ). Aus ∅ ∈ R∗ (Mβ0 ) folgt, dass es Klauseln K1 , . . . , Kr gibt mit Kr = ∅, und es ist Ki ∈ Mβ0 oder Ki ist Resolvent zweier Klauseln Ka undKb mit a, b < i und 1 ≤ i ≤ r. Gleichermaßen muss es eine solche Folge K10 , . . . , Ks0 f¨ ur Mβ00 geben. Einige Klauseln Ki sind aus Klauseln in Mβ durch Streichen von pn+1 entstanden. Wir machen dieses Streichen r¨ uckg¨ angig, Ki ∪ { pn+1 }, und ber¨ ucksichtigen pn+1 beim Resolvieren. Aus der Folge K1 , . . . , Kr entsteht dann eine neue Folge, und es folgt, dass ∅ ∈ R∗ (Mβ ) oder dass { pn+1 } ∈ R∗ (Mβ ) ist. Analog folgt durch Wiedereinf¨ ugen von ¬pn+1 in die Klauseln von K10 , . . . , Ks0 , aus denen wir dieses Literal gestrichen haben, dass ∅ ∈ R∗ (Mβ ) oder dass { ¬pn+1 } ∈ R∗ (Mβ ) ist. Ist ∅ ∈ R∗ (Mβ ), dann ist nichts mehr zu zeigen. Ist { pn+1 } ∈ R∗ (Mβ ) und { ¬pn+1 } ∈ R∗ (Mβ ), dann gilt nach dem n¨ achsten Resolutionsschritt ∅ ∈ R∗ (Mβ ). Damit haben wir insgesamt die Behauptung gezeigt. 2 Resolutionsverfahren

Der Resolutionssatz ist die Grundlage f¨ ur das Resolutionsverfahren: Gegeben sei eine Formel α ∈ A in KNF. 1. Bilde die Klauselmenge Mα zu α. 2. Wende den Resolutionsoperator R fortgesetzt auf Mα an, bis ein t erreicht ist, so dass Rl (Mα ) = Rt (Mα ) f¨ ur l ≥ t, d.h. bestimme R∗ (Mα ). Solch ein t existiert gem¨aß Satz 2.13 (Seite 34). 3. Falls ∅ ∈ R∗ (Mα ) ist, dann ist α unerf¨ ullbar, sonst erf¨ ullbar. Das Verfahren muss nicht immer so lange ausgef¨ uhrt werden, bis die erneute Anwendung des ROperators keine neue Klauseln mehr erzeugt. Der Operator braucht nicht mehr angewendet zu werden, falls die leere Klausel ∅ bereits erzeugt wurde. Zu diesem Zeitpunkt steht bereits fest, dass α unerf¨ ullbar ist.

Deduktion der leeren Klausel

Definition 2.12. Eine Deduktion der leeren Klausel aus einer Klauselmenge Mα , α ∈ A in KNF, ist eine Folge K1 , K2 , . . . , Kt von Klauseln, so dass gilt: (1) Kt ist die leere Klausel und (2) Ki , 1 ≤ i ≤ t, ist entweder eine Klausel aus Mα oder eine Resolvente von Klauseln Kr , Ks mit r, s ≤ i. 2 Aus dem Resolutionssatz 2.14 (Seite 35) folgt unmittelbar Folgerung 2.10. Eine Formel α ∈ A in KNF ist unerf¨ ullbar genau dann, wenn eine Deduktion der leeren Klausel aus Mα m¨ oglich ist. 2 Beispiel 2.20. Wir betrachten die Formel (siehe auch Beispiel 2.19, Seite 34) α = (¬r ∨ p ∨ q) ∧ ¬p ∧ (p ∨ q ∨ r) ∧ (¬q ∨ p)

¨ 2.8. RESOLUTIONSKALKUL

37

Es ist also Mα = { { p, q, ¬r }, { ¬p }, { p, q, r }, { p, ¬q } }. Es gilt: K1 = {p, q, ¬r }

(Klausel aus Mα )

K2 = {p, q, r}

(Klausel aus Mα )

K3 = { p, q}

(Resolvent von K1 und K2 )

K4 = { p, ¬q}

(Klausel aus Mα )

K5 = { p }

(Resolvent von K3 und K4 )

K6 = { ¬p }

(Klausel aus Mα )

K7 = ∅

(Resolvent von K5 und K6 )

Die Klauselfolge K1 , . . . , K7 erf¨ ullt die Bedingungen von Definition 2.12. Es existiert also eine Deduktion der leeren Klausel aus Mα , α ist somit gem¨aß Folgerung 2.10 unerf¨ ullbar. 2 Eine Deduktion kann mithilfe eines Resolutionsgraphen dargestellt werden. Im Folgenden ist der Resolutionsgraph Resolutionsgraph f¨ ur die Deduktion in Beispiel 2.20 gezeichnet. { p, q, ¬r }

{ p, q, r }

- { p, q }

{ p, ¬q }



-

{p}

{ ¬p }



-





¨ Ubung 2.12. Sei α = (p ∨ ¬q ∨ r) ∧ (q ∨ r) ∧ (¬p ∨ r) ∧ (q ∨ ¬r) ∧ ¬r (1) Geben Sie Mα an! (2) Berechnen Sie R∗ (Mα )! (3) Ist α erf¨ ullbar? (4) Falls α unerf¨ ullbar ist, dann geben Sie eine Deduktion f¨ ur die leere Klausel an und zeichnen Sie den entsprechenden Resolutionsgraphen! 2

38

KAPITEL 2. AUSSAGENLOGIK

2.9

Hornlogik

Trotz aller Kalk¨ ule bleibt das Erf¨ ullbarkeitproblem der Aussagenlogik, auch SAT -Problem4 genannt, d.h. das Problem zu entscheiden, ob eine aussagenlogische Formel erf¨ ullbar ist oder nicht, gem¨ aß dem derzeitigen Stand der Erkenntnis ein schwieriges Problem. Nach diesem Erkenntnisstand gibt es kein Entscheidungsverfahren, welches im Allgemeinen f¨ ur eine aussagenlogische Formel mit n Variablen in weniger als 2n Schritten feststellt, ob die Formel erf¨ ullbar ist oder nicht. Manche praktische Anwendungen erfordern allerdings gar nicht, dass die gesamte Sprache A der aussagenlogischen Formeln zur Verf¨ ugung steht, sondern kommen mit einer Untermenge davon Logikaus. Solche Anwendungen sind z.B. die Logikprogrammierung sowie deduktive Datenbanken. Eine programsolche Datenbank besteht aus Fakten und Schlussregeln, mit denen aus den Fakten darin vorhanmierung denes Wissen abgeleitet werden kann. Betrachten wir als Beispiel ein Autobahnnetz, welches die Deduktive Großst¨ adte eines Landes miteinander verbindet. Als Fakten k¨onnte die Datenbank Aussagen u ¨ber Datenbanken die unmittelbare Verbindung von zwei St¨adten durch (mindestens) eine Autobahnstrecke enthalten. Die Aussage c(A, B) soll z.B. bedeuten, dass von der Stadt A nach der Stadt B eine direkte Autobahnverbindung existiert. Die Datenbank enth¨alt neben diesem extensionalen Wissen auch intensionales Wissen, n¨ amlich z.B. dass, wenn B von A direkt u ¨ber eine Autobahn erreicht werden kann, B auch direkt von A u ¨ber eine Autobahn erreicht werden kann oder dass es, wenn n(A, B) und n(B, C)5 gilt, eine (indirekte) Verbindung von A nach C gibt; das Wissen u ¨ber alle m¨ oglichen Erreichbarkeiten von Großst¨adten untereinander u ¨ber Autobahnen steckt in der Datenbank. Dies k¨ onnte man durch Schlussfolgerungsregeln beschreiben. So beschreibt die Subjunktion n(x, y) → n(y, x) die Symmetrie der Relation n, und die Subjunktionen n(x, y) → e(x, y) und e(x, y), e(y, z) → e(x, z)6 beschreiben deren Transitivit¨at und damit alle m¨oglichen Erreichbarkeiten in dem Autobahnnetz.

Erf¨ ullbarkeitsproblem der Aussagenlogik

Logische Formeln α ∈ A, die in diesen Anwendungen von Bedeutung sind, haben die folgenden Formen: • α = p ∈ V : α ist eine (atomare) Aussage, die ein Faktum beschreibt. α ist a¨quivalent zur Formel 1 → p. In deduktiven Datenbanken bilden diese Fakten das extensionale Wissen. • α = p ∨ ¬q1 ∨ . . . ∨ ¬qk , p, qi ∈ V , 1 ≤ i ≤ k. Die Formel α ist a¨quivalent zu der Formel (q1 ∧ . . . ∧ qk ) → p. α ist also eine Schlussfolgerung, die beschreibt, dass von den Fakten q1 , . . . , qk auf die Aussage p geschlossen werden kann. Diese Schlussfolgerungen stellen das intensionale Wissen der Datenbank bereit. • α = ¬q1 ∨ . . . ∨ ¬qk , qi ∈ V , 1 ≤ i ≤ k. α ist ¨aquivalent zu der Formel 0 ∨ ¬q1 ∨ . . . ∨ ¬qk und damit zu (q1 ∧ . . . ∧ qk ) → 0. α beschreibt also, dass nicht alle Aussagen qi , 1 ≤ i ≤ k, zutreffen. Wie wir sehen, lassen sich alle diese aussagenlogischen Formeln als Subjunktionen darstellen: 1→p (q1 ∧ . . . ∧ qk ) → p (q1 ∧ . . . ∧ qk ) → 0 4 SAT

steht f¨ ur Satisfiability. ) steht f¨ ur die Aussage Es gibt eine direkte Autobanhstrecke von X nach Y “. ” 6 e(x, y) steht f¨ ur y ist von x im Autobahnnetz erreichbar“. ” 5 n(X, Y

2.9. HORNLOGIK

39

Die folgende Definition fasst diese F¨ alle zusammen und zeichnet dadurch eine Untermenge von A aus. Definition 2.13. Eine aussagenlogische Formel α ∈ A in konjunktiver Normalform heißt Hornformel7 genau dann, wenn jede Klausel h¨ ochstens eine nicht negierte Varaible enth¨alt. Solche Klauseln Hornformel werden Hornklauseln genannt. Mit H bezeichnen wir die Menge aller Hornformeln in A. 2 Hornklausel Beispiel 2.21. a) Die Formel α = (p ∨ ¬q) ∧ (¬p ∨ ¬q ∨ ¬r ∨ s) ∧ (¬q ∨ ¬r) ∧ ¬p ∧ r ist eine Hornformel, in Klauselform α = { { p, ¬q }, { ¬p, ¬q, ¬r, s }, { ¬q, ¬r }, { ¬p }, { r } } und als Subjunktionen α = (q → p) ∧ ((p ∧ q ∧ r) → p) ∧ ((q ∧ r) → 0) ∧ (p → 0) ∧ (1 → r) Die Formel (¬p ∨ ¬q ∨ s) ∧ (p ∨ ¬q ∨ ¬r ∨ q) ist keine Hornformel, da in der zweiten Klausel zwei nicht negierte Variablen vorkommen. 2 Das Erf¨ ullbarkeitsproblem f¨ ur Hornformeln, HORNSAT , ist deutlich effizienter l¨osbar als das Erf¨ ullbarkeitsproblem SAT im Allgemeinen. W¨ahrend, wie eingangs des Kapitels erw¨ahnt, beim derzeitigen Kenntnisstand die Erf¨ ullbarkeit einer Formel α ∈ A im Allgemeinen exponentiellen Aufwand abh¨ angig von der Anzahl der Variablen in α erfordert, gibt es Verfahren, mit denen die Erf¨ ullbarkeit von Hornformeln β ∈ H in polynomieller Zeit gepr¨ uft werden kann (etwa in der Gr¨ oßenordnung m · n, wenn m die Anzahl der Klauseln und n die Anzahl der Literale in β sind). Das Schema eines Verfahrens, mit dem gepr¨ uft werden kann, ob eine Formel α ∈ H erf¨ ullbar ist, ist in Abbildung 2.1 gegeben. Beispiel 2.22. Gegeben sei die Hornformel α = p ∧ (¬p ∨ q) ∧ (¬p ∨ ¬q ∨ r) ∧ (¬s ∨ ¬p) ∧ (¬t ∨ s) Wir wandeln die Klauseln um in Subjunktionen: 1→p

(2.10)

p→q p∧q →r s∧p→0 t→s 7 Die Hornlogik ist benannt nach Alfred Horn (1918 – 2001), einem amerikanischen Mathematiker, der diese Variante der Aussagenlogik einf¨ uhrte. Die Hornlogik bildet die Grundlage f¨ ur das logische Programmieren und logische Programmiersprachen, wie z.B. die Sprache Prolog ( Programming in Logic“). ”

40

KAPITEL 2. AUSSAGENLOGIK

(1) Enth¨ alt α eine Teilformel 1 → p, dann markiere alle Vorkommen von p in α. (2) F¨ uhre die folgenden Schritte so lange aus, bis diese nicht mehr anwendbar sind: (i) Ist (q1 ∧ · · · ∧ qk ) → p eine Teilformel von α und alle qi , 1 ≤ i ≤ k, sind bereits markiert und p ist nicht markiert, dann markiere jedes Vorkommen von p in α. (ii) Ist (q1 ∧ · · · ∧ qk ) → 0 eine Teilformel von α und alle qi , 1 ≤ i ≤ k, sind bereits markiert, dann stoppe das Verfahren – die Formel α ist unerf¨ ullbar. (3) Stoppe das Verfahren – die Formel α ist erf¨ ullbar, und die Belegung I(q) = 1 f¨ ur alle markierten Variablen q und I(p) = 0 f¨ ur alle unmarkierten Variablen p in α ist ein Modell f¨ ur α.

Abbildung 2.1: Entscheidungsverfahren f¨ ur die Erf¨ ullbarkeit von Hornformeln.

Wegen der Klausel (2.10) erhalten wir mit Verfahrensschritt (1) folgende roten Markierungen: 1→p p→q

(2.11)

p∧q →r s∧p→0 t→s Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.11) zu folgenden blauen Markierungen: 1→p p→q p∧q →r

(2.12)

s∧p→0 t→s Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.12) zu folgender gr¨ unen Markierung: 1→p p→q p∧q →r s∧p→0 t→s Es ist kein Verfahrensschritt mehr anwendbar, die Formel ist erf¨ ullbar, und die Belegung I(p) = I(q) = I(r) = 1 sowie I(s) = I(t) = 0 ist ein Modell f¨ ur α. 2

2.9. HORNLOGIK

41

¨ Ubung 2.13. Testen Sie mit dem vorgestellten Verfahren die Erf¨ ullbarkeit der folgenden Hornformeln: (1) α = (r ∨ ¬p ∨ ¬q) ∧ (¬s ∨ t) ∧ (¬p ∨ ¬t) ∧ p ∧ (¬p ∨ q) 2

(2) β = p ∧ (¬p ∨ q) ∧ (¬q ∨ r ∨ ¬s) ∧ (¬p ∨ ¬r) ∧ s Zu (1): Umwandlung der Klauseln in Subjunktionen: p∧q →r s→t p∧t→0 1→p

(2.13)

p→q Wegen der Klausel (2.13) erhalten wir mit Verfahrensschritt (1) folgende roten Markierungen: p∧q →r s→t p∧t→0 1→p p→q

(2.14)

Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.14) zur folgenden blauen Markierung: p∧q →r

(2.15)

s→t p∧t→0 1→p p→q Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.15) zur folgenden gr¨ unen Markierung: p∧q →r s→t p∧t→0 1→p p→q Es ist kein Verfahrensschritt mehr anwendbar, die Formel ist erf¨ ullbar, und die Belegung I(p) = I(q) = I(r) = 1 sowie I(s) = I(t) = 0 ist ein Modell f¨ ur α.

42

KAPITEL 2. AUSSAGENLOGIK

Zu (2): Umwandlung der Klauseln in Subjunktionen: 1→p

(2.16)

p→q q∧s→r p∧r →0 1→s

(2.17)

Wegen der Klauseln (2.16) und (2.17) erhalten wir mit Verfahrensschritt (1) folgende roten Markierungen: 1→p p→q

(2.18)

q∧s→r p∧r →0 1→s Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.18) zur folgenden blauen Markierung: 1→p p→q q∧s→r

(2.19)

p∧r →0 1→s Anwendung von Verfahrensschritt (2i) f¨ uhrt wegen der Klausel (2.19) zur folgenden gr¨ unen Markierung: 1→p p→q q∧s→r p∧r →0

(2.20)

1→s Wegen Klausel (2.20) besagt Verfahrensschritt (2ii), dass die Formel β unerf¨ ullbar ist. Satz 2.15. Das in Abbildung 2.1 angegebene Verfahren entscheidet in korrekter Weise, ob eine Formel α ∈ H erf¨ ullbar ist oder nicht. Werden die dabei markierten Variablen mit 1 belegt, dann stellt diese Belegung ein Modell f¨ ur α dar. 2 Folgerung 2.11. Enth¨ alt eine Formel α ∈ H keine Klausel der Art (¬q1 ∨ . . . ∨ ¬qk )8 , k ≥ 1, dann ist α erf¨ ullbar. 2 Kleinstes Modell

Im Unterschied zu aussagenlogischen Formeln besitzen Hornformeln eindeutige kleinste Modelle. I ∈ Iα ist ein kleinstes Modell f¨ ur eine Formel α, falls f¨ ur jede Variable v ∈ Vα und jedes weitere ∗ Modell I 0 ∈ Iα gilt: Ist I 0 (v) = 1, dann ist auch I ∗ (v) = 1. 8 Als

Subjunktion geschrieben: q1 ∧ . . . ∧ qk → 0.

2.9. HORNLOGIK

43

Beispiel 2.23. a) Die Formel p ∨ q ist keine Hornformel. Sie besitzt zwei kleinste Modelle: I1 mit I1 (p) = 1 und I1 (q) = 0 sowie I2 mit I2 (p) = 0 und I2 (q) = 1. ¨ b) Die in Beispiel 2.22 und Ubung 2.13 (1) gefundenen Modelle sind kleinste Modelle, denn mindestens die Variablen p, q und r (in beiden F¨allen auch nicht mehr) m¨ ussen mit 1 belegt werden. c) Betrachten wir die Hornformel mit den folgenden Klauseln: 1→s

r→s

r→t

Dann ist I(s) = I(q) = 1 das kleinste Modell.

s→q

q∧t→p 2

44

KAPITEL 2. AUSSAGENLOGIK

Kapitel 3

Pr¨ adikatenlogik Die Aussagenlogik erm¨ oglicht die Verkn¨ upfung von elementaren und zusammengesetzten Aussagen zu neuen zusammengesetzten Aussagen. Die Belegung der Variablen mit einem Wahrheitswert erlaubt die Berechnung des Wahrheitswertes der gesamten Aussage. Die Aussagenlogik ist allerdings zu arm, um z.B. zu beschreiben, dass die Addition nat¨ urlicher Zahlen kommutativ ist: F¨ ur alle ” nat¨ urlichen Zahlen x und y gilt x + y = y + x“. x und y sind hier keine aussagenlogischen Variablen, die als Werte die Wahrheitswerte 0 und 1 annehmen k¨onnen, sondern Variable f¨ ur andere Werte wie z.B. Zahlenwerte. Operationssymbole wie + dr¨ ucken keine logische Verkn¨ upfung aus, und das Symbol = dr¨ uckt eine Relation aus. Außerdem haben wir – umgangssprachlich – noch ausgedr¨ uckt, dass die Beziehung f¨ ur alle x und y gelten sollen. Wir erweitern nun die Sprache der Aussagenlogik so, dass wir solche und weitere Eigenschaften ausdr¨ ucken k¨ onnen. Diese neue Sprache heißt Pr¨adikatenlogik (erster Stufe). Wir gehen dabei in gleicher Weise wie bei der Definition der Aussagenlogik vor, indem wir nacheinander das Alphabet, die Syntax und schließlich die Semantik der Pr¨adikatenlogik festlegen. Dabei werden wir nicht ganz so streng formal vorgehen, wie wir das bei der Aussagenlogik getan haben. Mithilfe von pr¨ adikatenlogischen Notationen werden wir dann in der Folge beschreibende Darstellungen von Mengen angeben. Ein Grund f¨ ur die Besch¨aftigung mit Aussagen- und Pr¨adikatenlogik ist, in der beschreibenden Darstellung M = { x | p(x) } einer Menge M die Eigenschaft p, welche festlegt, ob ein x zu M geh¨ ort oder nicht, m¨ oglichst pr¨azise anzugeben. Nach Durcharbeiten dieses Kapitels sollten Sie • den syntaktischen Aufbau der Pr¨ adikatenlogik erster Stufe kennen, • wissen, wie die Semantik pr¨ adikatenlogischer Formeln berechnet werden kann.

3.1

Alphabet der Pr¨ adikatenlogik

Das Alphabet der Pr¨ adikatenlogik besteht aus • Symbolen f¨ ur Individuenvariablen, daf¨ ur verwenden wir in der Regel kleine Buchstaben vom Ende des deutschen Alphabetes: x, y, z, x1 , x2 , . . . • Symbolen f¨ ur Individuenkonstanten, daf¨ ur verwenden wir in der Regel kleine Buchstaben vom Anfang des deutschen Alphabetes: a, b, c, a1 , a2 , . . .. 45

Lernziele

¨ KAPITEL 3. PRADIKATENLOGIK

46

• k-stellige Funktionssymbole, die wir in der Regel mit f k , g k , hk , f1k , f2k , . . . notieren. Dabei ist k ∈ N0 . • k-stellige Pr¨ adikatensymbole, die wir in der Regel mit P k , Qk , Rk , P1k , P2k , . . . notieren. Dabei ist k ∈ N0 . • den Symbolen ¬, ∧, ∨ f¨ ur logische Junktoren. • den Quantorsymbolen ∀ (Allquantor, gesprochen f¨ ur alle“) und ∃ (Existenzquantor, gespro” chen es existiert“). ” • den Klammersymbolen ( und ).

3.2 Pr¨ adikatenlogische Terme

Syntax pr¨ adikatenlogischer Formeln

Definition 3.1. Die Menge der pr¨ adikatenlogischen Terme ist gegeben durch: (1) Jede Individuenvariable und jede Individuenkonstante ist ein Term. (2) Sind t1 , . . . , tn pr¨ adikatenlogische Terme und ist f n ein n-stelliges Funktionssymbol, dann ist n f (t1 , . . . , tn ) ein pr¨ adikatenlogischer Term. (3) Genau die mit den Regeln (1) und (2) bildbaren Zeichenketten sind pr¨adikatenlogische Terme. 2 Beispiel 3.1. Die Individuenvariable x und die Individuenkonstante b sind Terme ebenso wie f 2 (x, b), f 2 (x, f 2 (b, x)) und g 3 (x, f 2 (b, b), h4 (x, y, a, z)). 2

Atomare Formeln

Definition 3.2. Die Menge der atomaren Formeln ist gegeben durch: (1) Sind t1 , . . . , tn pr¨ adikatenlogische Terme und ist P n ein n-stelliges Pr¨adikatensymbol, dann n ist P (t1 , . . . , tn ) eine atomare Formel. (2) Genau die Zeichenketten, die mit der Regel (1) gebildet werden k¨onnen, sind atomare Formeln. 2 Beispiel 3.2. Die Zeichenketten P 2 (a, b),

P 2 (a, f 2 (a, b)),

R4 (x, y, g 2 (f 2 (x, a), z)),

Q2 (f 2 (x, y), f 2 (y, x))

sind atomare Formeln. Pr¨ adikatenlogische Formeln

2

Definition 3.3. Die Menge der pr¨ adikatenlogischen Formeln ist gegeben durch: (1) Jede atomare Formel ist eine pr¨adikatenlogische Formel. (2) Sind α und β pr¨ adikatenlogische Formeln, dann auch ¬α, (α ∧ β) sowie (α ∨ β). (3) Ist α eine pr¨ adikatenlogische Formel, dann auch (∀x α) sowie (∃x α). (4) Genau die mit den Regeln (1) - (3) bildbaren Zeichenketten sind pr¨adikatenlogische Formeln. 2

¨ 3.2. SYNTAX PRADIKATENLOGISCHER FORMELN

47

Beispiel 3.3. Die Zeichenketten (∀x (¬P 1 (x))) (∀x (P 2 (a, f 2 (a, b)) ∧ Q3 (x, a, c)) (∀x(∃y (P 3 (x, y, z)))) (∀x(∀y Q2 (f 2 (x, y), f 2 (y, x)))) 2

sind pr¨ adikatenlogische Formeln.

Variablen, die sich im Wirkungsbereich eines Quantors befinden, heißen gebunden, nicht gebun- Gebundene, freie dene Variablen heißen frei. So sind in der Formel Variable

3

(∀x(∃y (P (x, y, z)))) die Variablen x und y gebunden, z ist frei. 2 Eine Formel heißt geschlossen, falls sie keine freie Variable enth¨alt. Die Formel (∀x(∀y Q2 (f 2 (x, y), fGeschlossene (y, x)))) Formel ist ein Beispiel f¨ ur eine geschlossene Formel. Geschlossene Formeln sind Aussagen, die wahr oder falsch sein k¨ onnen. Gebundene Variablen k¨ onnen beliebig umbenannt werden, solange die Umbennung nicht zu einer freien Variablen f¨ uhrt. So kann in der Formel

(∃x (P 2 (f 2 (x, y), z))) die Variable x in q umbenannt werden: (∃q (P 2 (f 2 (q, y), z))). Eine Umbennung in z ist nicht erlaubt, denn die Formel bekommt dadurch eine andere Bedeutung: (∃z (P 2 (f 2 (z, y), z))). Wie in der Aussagenlogik f¨ uhren wir zwei weitere logische Verkn¨ upfungen ein: Seien α und β zwei Formeln, dann schreiben wir (α → β) f¨ ur (¬α ∨ β) sowie (α ↔ β) f¨ ur ((α → β) ∧ (β → α)). Sofern Bindungen von Quantoren und Junktoren eindeutig sind, wollen wir entsprechende Klammern weglassen. Wenn man zudem festlegt, dass die Quantoren die h¨ochste Priorit¨at besitzen, dass ¬ h¨ ohere Priorit¨ at als ∧, ∧ h¨ ohere Priorit¨ at als ∨ und ∨ h¨ohere Priorit¨at als → und ↔ hat, k¨onnen weitere entsprechende Klammern weggelassen werden. Mit diesen Vereinbarungen kann z.B. anstelle der Formel (∀x ((¬P 1 (x)) ∨ Q1 (x))) die Formel ∀x (¬P 1 (x) ∨ Q1 (x)) und anstelle von (∀x(∀y (¬P 2 (x, y)) ∨ (Q2 (y, z) ∧ (¬R2 (x, z))))) kann ∀x(∀y ¬P 2 (x, y) ∨ Q2 (y, z) ∧ ¬R2 (x, z)) geschrieben werden.

2

Die Aussagenlogik kann als Spezialfall“ der Pr¨adikatenlogik aufgefasst werden: Wenn man in ” der Pr¨ adikatenlogik keine Individuenvariablen zul¨asst, wodurch die Quantoren u ussig werden, ¨berfl¨ und außerdem keine Individuenkonstanten, keine Funktionssymbole und nur 0-stellige Pr¨adikate zul¨ asst, erh¨ alt man genau die Aussagenlogik. Die 0-stelligen Pr¨adikatensymbole u ¨bernehmen dabei die Rolle der aussagenlogischen Variablen.

¨ KAPITEL 3. PRADIKATENLOGIK

48

3.3

Semantik der Pr¨ adikatenlogik

Um die Bedeutung einer pr¨ adikatenlogischen Formel zu bestimmen, m¨ ussen zun¨achst Belegungen vorgenommen werden: Grundmenge Universum

• Es muss eine Grundmenge (auch Universum genannt) ausgew¨ahlt werden. Mit ihren Elementen m¨ ussen Individuenkonstanten und freie Individuenvariablen belegt werden. • Jedem k-stelligen Funktionssymbol muss eine k-stellige Funktion u ¨ber der Grundmenge zugeordnet werden, und • jedem k-stelligen Pr¨ adikatensymbol muss eine k-stellige Relation u ¨ber der Grundmenge zugeordnet werden. Beispiel 3.4. a) W¨ ahlen wir als Grundmenge N0 und ordnen wir dem Funktionssymbol f 2 die Addition + sowie dem Pr¨ adikatensymbol die Gleichheitsrelation = zu, dann interpretieren wir die geschlossene Formel ∀x∀y (Q2 (f 2 (x, y), f 2 (y, x))) durch ∀x∀y (= (+(x, y), +(y, x))) Schreiben wir Gleichheits- und Additionssymbol wie u ¨blich infix, d.h. zwischen die Operanden, dann erhalten wir die Formel ∀x∀y x + y = y + x die das Kommutativgesetz der Addition in der Menge der nat¨ urlichen Zahlen ausdr¨ uckt. b) Betrachten wir die Formel ∃x∀y R2 (f 2 (a, x), y)) und ordnen dem Pr¨adikatensymbol R2 die Relation < zu, dem Funktionssymbol f 2 die Multiplikation und der Individuenkonstante die Zahl 5, dann erhalten wir die Formel ∃x∀y 5x < y. W¨ ahlen wir als Grundmenge N, dann ist diese Formel nicht wahr, denn z.B. zu y = 1 gibt es keine nat¨ urliche Zahl x, so dass 5x < 1 ist. W¨ahlen wir als Grundmenge N0 oder Z, dann ist diese Formel wahr. 2 Wenn die Grundmenge U ausgew¨ahlt wurde und Belegungen I der Individuenkonstanten, der freien Individuenvariablen, der Funktionssymbole sowie der Pr¨adikatensymbole vorgenommen sind, geschieht die Berechnung I ∗ des Wahrheitswertes analog zur Interpretation aussagenlogischer Formeln: (i) F¨ ur einen pr¨ adikatenlogischen Term f k (t1 , . . . , tk ) gilt I ∗ (f k (t1 , . . . , tk )) = I(f k )(I ∗ (t1 ), . . . , I ∗ (tk )) Die Belegung I(f k ) des Funktionssymbols f k wird auf das Ergebnis der Interpretationen der Terme t1 , . . . , tk angewendet. (ii) F¨ ur eine atomare Formel P m (t1 , . . . , tm ) gilt ( 1, ((I ∗ (t1 ), . . . , I ∗ (tm )) ∈ I(P m ) ∗ m I (P (t1 , . . . , tm )) = 0, sonst Falls die Interpretationen der Terme in der Relation stehen, die sich durch die Belegung I(P m ) des Pr¨ adikatensymbols ergibt, liefert die Interpretation der atomaren Formel den Wahrheitswert 1, sonst den Wahrheitswert 0.

¨ 3.3. SEMANTIK DER PRADIKATENLOGIK

49

(iii) Nachdem die Interpretation der atomaren Bestandteile von pr¨adikatenlogischen Formeln festgelegt ist, erfolgt nun die Berechnung zusammengesetzter Formeln. Seien α und β pr¨adikatenlogische Formeln, dann gilt: (1) I ∗ (¬α) = 1 − I ∗ (α). (2) I ∗ (α ∧ β) = min{I ∗ (α), I ∗ (β)}. (3) I ∗ (α ∨ β) = max{I ∗ (α), I ∗ (β)}. (4) ( ∗

I (∃x α) =

∗ 1, falls ein a ∈ U existiert mit Ix,a (α) = 1 0, sonst

(5) ( I ∗ (∀x α) =

∗ 1, falls f¨ ur alle a0 ∈ U gilt Ix,a (α) = 1 0, sonst

Dabei gilt ( I(y), y 6= x ∗ Ix,a (y) = a, sonst ∗ (α) f¨ ur a ∈ U bedeutet also, dass jedes Vorkommen von x in α mit dem Wert a aus der Ix,a Grundmenge U belegt wird.

Wir werden in den folgenden Kapiteln pr¨adikatenlogische Formeln benutzen, um mathematische Sachverhalte zu beschreiben. Dabei werden wir die Formeln pragmatisch“ verwenden, d.h. wir ” werden in der Regel nicht mit Individuenkonstanten, Funktions- und Pr¨adikatensymbolen arbeiten, sondern in den Formeln direkt konkrete Belegungen, d.h. Werte und Funktionen bzw. Relationen notieren. Ebenso liegt in der Regel durch den gegbenen Kontext fest, welche Grundmenge jeweils ¨ werden vorliegt. Oft werden wir die Grundmenge auch in der Formel selbst angeben. Im Ubrigen die Formulierungen in Definitionen, S¨ atzen usw. selten rein formal sein, sondern aus formalen und informalen Teilen bestehen. Als Beispiel f¨ ur unsere Sprech- und Schreibweise sei der Satz u ¨ber die Division mit Rest ganzer Zahlen hier aufgef¨ uhrt: ∀a ∈ Z und ∀b ∈ N ∃q ∈ Z und ∃r ∈ N0 , so dass gilt: a = bq + r mit 0 ≤ r < b. Ausschließlich in Worten: Zu jeder ganzen Zahl a und zu jeder nat¨ urlichen Zahl b ungleich Null existieren zwei ganze Zahlen q und r, so dass a bei Division durch b den ganzzahligen Quotienten q ergibt mit einem positiven Rest r, der kleiner als der Divisor b ist. Anstelle von ∀x ∈ M f¨ ur eine Menge M schreiben wir im Folgenden auch x ∈ M . Insbesondere k¨ onnen wir nun darstellende Beschreibungen von Mengen pr¨aziser als bisher angeben. Im Abschnitt 1.2 haben wir die allgemeine Form der beschreibenden Darstellung angegeben: M = { x | p(x) }. x ist ein Platzhalter – eine Variable – f¨ ur die Elemente von M , und p ist ein Pr¨ adikat. Alle Elemente einer Grundmenge, die das Pr¨adikat wahr machen, geh¨oren zu M .

¨ KAPITEL 3. PRADIKATENLOGIK

50

Beispiel 3.5. Wir geben f¨ ur die in Beispiel 1.3 auf Seite 9 halbformal“ dargestellten Mengen ” formale Beschreibungen an: A = { x | x ∈ P ∧ x ≤ 11 } G = { x | x ∈ N0 ∧ 2x = 10 } H = { (x, y) | x ∈ N0 ∧ y ∈ N0 ∧ x + y = 6 } T64 = { y | (y ≥ 0) ∧ (∃q ∈ N(k · q = 64)) } Da die formalen Beschreibungen zumeist aus konjunktiv verkn¨ upften Teilformeln bestehen, l¨ asst man das Symbol ∧ weg und schreibt an dessen Stelle ein Komma. So stellt man H wie folgt dar H = { (x, y) | x ∈ N0 , y ∈ N0 , x + y = 6 } oder noch k¨ urzer H = { (x, y) | x, y ∈ N0 , x + y = 6 } In der allt¨ aglichen Praxis“ werden beschreibende Mengendarstellungen in der Regel in einer Mi” schung von informalen und formalen Beschreibungen angegeben, wie z.B. A = { x | x prim, x ≤ 11 } Maßstab f¨ ur die Art und Weise der Beschreibung einer Menge M ist, dass aus der Beschreibung – m¨ oglicherweise zudem mithilfe des Kontextes – klar wird, welche Elemente zu M geh¨oren. 2 Man kann die Begriffe Erf¨ ullbarkeit, Modell, Tautologie, Kontradiktion, Implikation (syntakti¨ sche und semantische Folgerungsbegriffe) und Aquivalenz nun auch f¨ ur pr¨adikatenlogische Formeln analog zu aussagenlogischen Formeln einf¨ uhren. Viele Ergebnisse, die wir f¨ ur die Aussagenlogik in Kapitel 2 betrachtet haben, gelten analog ¨ auch f¨ ur die Pr¨ adikatenlogik, insbesondere auch die Aquivalenzen aus Satz 2.4 bzw. Tabelle 2.4 auf ¨ Seite 27. Dar¨ uber hinaus gelten in der Pr¨adikatenlogik noch folgende Aquivalenzen. ∀x∀y α ⇔ ∀y∀x α ∃x∃y α ⇔ ∃y∃x α ∀x α ∧ ∀x β ⇔ ∀x (α ∧ β) ∃x α ∧ ∃x β ⇔ ∃x (α ∧ β) ∀x α ⇔ ¬∃ ¬α ∃x α ⇔ ¬∀ ¬α

Im Gegensatz zur Aussagenlogik ist die Erf¨ ullbarkeit der Pr¨adikatenlogik nicht entscheidbar, sofern sie die Arithmetik nat¨ urlicher Zahlen umfasst. Mithilfe einer Wahrheitstafel oder mithilfe des Resolutionskalk¨ uls kann z.B. festgestellt werden, ob eine aussagenlogische Formel erf¨ ullbar ist oder nicht. Man kann hingegen beweisen, dass es f¨ ur die Pr¨adikatenlogik keinen Algorithmus geben kann, der f¨ ur jede beliebige pr¨ adikatenlogische Formel feststellt, ob diese erf¨ ullbar ist oder nicht. Neben der Aussagenlogik und der Pr¨adikatenlogik 1. Stufe gibt es weitere Logiken, die nicht nur von theoretischem sondern auch von praktischem Interesse sind.

¨ 3.3. SEMANTIK DER PRADIKATENLOGIK

51

In der Pr¨ adikatenlogik 2. Stufe ist es unter anderem auch erlaubt, u ¨ber Mengen, Funktionen und Pr¨ adikaten zu quantifizieren. In der Pr¨adikatenlogik 1. Stufe darf nur u ¨ber Individuenvariablen quantifiziert werden. Bei der Informations- und Wissensverarbeitung oder der Konzipierung und Implementierung verteilter Prozesse finden Logiken wie modale, nichtmonotone, temporale, mehrwertige oder FuzzyLogiken Anwendung. In modalen Logiken gibt es neben Quantoren und klassischen“ Junktoren Operatoren wie [ ] ” und 3 mit folgender Bedeutung: F¨ ur eine Formel α bedeutet [α], dass α notwendigerweise wahr ist, und 3α bedeutet, dass α m¨ oglicherweise gilt. Mit diesen Operatoren kann man z.B. zeitliches Planen beschreiben: [α] modelliert, dass α immer gilt oder dass α sicheres Wissen beschreibt. 3α modelliert, dass α manchmal gilt oder dass α Meinungen beschreibt. Klassische“ Logiken wie die Aussagenlogik und die Pr¨adikatenlogiken sind monoton. Das bedeu” tet, wenn f¨ ur Klauselmengen A, B und C gilt, dass alle Klauseln von A auch zu B geh¨oren und A ` C gilt, dass dann auch B ` C gilt. Konklusionen gelten also weiter, wenn man zu den Pr¨amissen Klauseln hinzuf¨ ugt. Bei realen Problemen gibt es aber oft Ausnahmen, welche diese Monotonie zerst¨oren. So trifft die Aussage alle V¨ ogel fliegen“, die etwa durch die Formel ∀x (Vogel(x) → Fliegen(x)), ” beschrieben werden kann, zwar auf fast alle V¨ogel zu, aber es gibt Vogelarten wie Strauße und Pinguine, die nicht fliegen k¨ onnen. Um solche Anwendungen ad¨aquat modellieren zu k¨onnen, m¨ ussen nicht monotone Schlussfolgerungen m¨ oglich sein. Mehrwertige Logiken lassen mehr als zwei Wahrheitswerte und Verkn¨ upfungen daf¨ ur zu, und in der Fuzzy-Logik werden Wahrheitswerte durch (stetige) Funktionen beschrieben, die den Zugeh¨ origkeitsgrad eines Elementes zu einer Menge festlegen.

52

¨ KAPITEL 3. PRADIKATENLOGIK

Kapitel 4

Beweismethoden Wie bereits erw¨ ahnt benutzen wir die Pr¨adikatenlogik, um Begriffe mathematisch zu definieren, Eigenschaften daf¨ ur zu formulieren und diese zu beweisen, d.h. deren G¨ ultigkeit herzuleiten. In diesem Kapitel stellen wir g¨ angige Beweisverfahren vor. Die meisten mathematischen S¨ atze (Theoreme; Hilfss¨atze, Lemmata; Folgerungen, Korrollare) Mathematischer Satz haben die Form: Theorem α⇒β Dabei sind α und β Formeln. α heißt Voraussetzung (Vorbedingung, Hypothese) und β Behauptung Voraussetzung ¨ (Nachbedingung, Folgerung) des Satzes. S¨ atze, die Aquivalenzen behaupten (α ⇔ β) sind ¨aquivalent Behauptung zu Folgerungen in beide Richtungen (α ⇒ β ∧ β ⇒ α), so dass wir uns auf Folgerungen beschr¨anken k¨ onnen. Zu zeigen, dass α ⇒ β gilt, bedeutet zu zeigen, dass α → β eine Tautologie ist, d.h. dass α → β immer wahr ist. Wir geben im Folgenden vier Verfahren an, die dazu verwendet werden k¨onnen: 1. direkter Beweis, 2. indirekter Beweis, 3. Widerspruchsbeweis, 4. Beweis durch Ringschluss. Eine weitere sehr wichtige Beweismethode, das Prinzip der vollst¨andigen Induktion, mit dem gezeigt werden kann, dass ein Pr¨ adikat P (n) wahr wird f¨ ur alle nat¨ urlichen Zahlen n ∈ N0 wird in Kapitel 12 behandelt. Nach Durcharbeiten dieses Kapitels sollten Sie • die oben aufgelisteten Beweismethoden erkl¨aren und anwenden k¨onnen.

4.1

Direkter Beweis

Ein direkter Beweis eines Theorems α ⇒ β ist eine Folge von Aussagen γ1 , γ2 , . . . , γn = β 53

Lernziele

54

KAPITEL 4. BEWEISMETHODEN

wobei f¨ ur jedes i mit 1 ≤ i ≤ n gilt: γi = α oder γi ist eine (bereits bewiesene) bekannte Aussage oder γj1 ∧γj2 ∧. . .∧γjr ⇒ γi mit j1 , j2 , . . . , jr < i. Bei den Zwischenschritten k¨onnen also Kombinationen von vorher – im Beweis selbst oder im Rahmen anderer Beweise – etablierten Aussagen verwendet werden. Beispiel 4.1. Wir wollen den Satz Ist eine nat¨ urliche Zahl durch 2 und durch 3 teilbar, dann ” ist sie auch durch 6 teilbar“ direkt beweisen. Zun¨achst formalisieren wir diesen umgangssprachlich formulierten Satz: x x x ∈ N0 ∧ ∈ N0 ⇒ ∈ N0 2 3 6 Dabei ist α=

x 2

∈ N0 ∧

 x ∈ N0 3

die Voraussetzung und β=

x 6

∈ N0



die Behauptung. Wir betrachten nun die folgenden Aussagen: γ1 = (∃y ∈ N0 (x = 2y) ∧ ∃z ∈ N0 (x = 3z)) γ2 = (∃y, z ∈ N0 (2y = 3z)) γ3 = (∃k ∈ N0 (z = 2k)) γ4 = ∃z, k ∈ N0 (x = 3z ∧ z = 2k) γ5 = ∃k ∈ N0 (x = 2 · 3 · k)) γ6 = ∃k ∈ N0 (x = 6k)) Die beiden Folgerungen: α ⇒ γ1 und γ1 ⇒ γ2 gelten offensichtlich. Da 2y = 3z, muss 3z und damit z eine gerade Zahl sein, also gilt: γ2 ⇒ γ3 . Die Folgerungen γ3 ⇒ γ4 , γ4 ⇒ γ5 und γ5 ⇒ γ6 sind offensichtlich. Insgesamt erhalten wir: α ⇒ γ1 ⇒ γ2 ⇒ γ3 ⇒ γ4 ⇒ γ5 ⇒ γ6 ⇒ β und damit α ⇒ β, was zu beweisen war (w.z.b.w.).1

4.2

2

Indirekter Beweis

¨ Dem indirekten Beweis liegt die folgende Aquivalenz zugrunde: (α ⇒ β) ⇔ (¬β ⇒ ¬α) Manchmal ist es tats¨ achlich einfacher, bequemer oder schneller, die rechte anstelle der linken Folgerung zu beweisen. 1 Auch:

qed f¨ ur quod erat demonstrandum.

4.3. BEWEIS DURCH WIDERSPRUCH

55

Beispiel 4.2. Als Beispiel wollen wir eine weitere Teilbarkeitsregel beweisen: Wenn die letzten beiden Ziffern einer nat¨ urlichen Zahl z als Zahl betrachtet durch 4 teilbar sind, dann ist auch die Zahl z durch 4 teilbar. Wir formalisieren: x  α = (x ∈ N0,99 ) ∧ ∈ N0 ∧ (y ∈ N0 ) 4   100y + x ∈ N0 β = (x ∈ N0,99 ) ∧ (y ∈ N0 ) ∧ 4

Anstelle α ⇒ β direkt zu beweisen, beweisen wir ¬β ⇒ ¬α. Es ist:   100y + x ¬β = (x ∈ / N0,99 ) ∨ (y ∈ / N0 ) ∨ ∈ / N0 4 x  ¬α = (x ∈ / N0,99 ) ∨ ∈ / N0 ∨ (y ∈ / N0 ) 4 Da sowohl x ∈ / N0,99 als auch y ∈ / N0 mit falsch zu bewerten sind, wird in beiden Disjunktionen der Wahrheitswert durch den jeweils verbleibenden Teilausdruck bestimmt (siehe Satz 2.4 bzw. Tabelle 2.4 auf Seite 27, Unerf¨ ullbarkeitsregeln), d.h. wir m¨ ussen nur noch 100y + x x ∈ / N0 ⇒ ∈ / N0 4 4 beweisen. Dies tun wir direkt: 100y + x 100y x ∈ / N0 ⇒ + ∈ / N0 4 4 4 x ⇒ 25y + ∈ / N0 4 x ⇒ ∈ / N0 4 Da jede Zahl z ∈ N0 sich darstellen l¨ asst als z = 100y + x mit y ∈ N0 und x ∈ N0,99 , ist die Behauptung bewiesen. 2

4.3

Beweis durch Widerspruch

¨ Dem Widerspruchsbeweis liegt die Aquivalenz (α → β) ⇔ ((α ∧ ¬β) → ¬α)

(4.1)

zugrunde. Um diesen Beweis zu f¨ uhren, nehmen wir also sowohl die Voraussetzung α als auch die Negation der Folgerung β, also ¬β, als wahr an und versuchen, daraus einen Widerspruch zu α zu folgern. √ Beispiel 4.3. Ein klassisches“ Beispiel f¨ ur einen Widerspruchsbeweis ist zu zeigen, dass 2 keine ” rationale Zahl ist. Genauer lautet diese Aussage: Wenn p und q teilerfremde nat¨ urliche Zahlen sind,

56

KAPITEL 4. BEWEISMETHODEN

dann ist



2 6= pq . Es seien also:  p  q α = ∀k ∈ N2 ∈ / N0 ∨ ∈ / N0 k  k √ p 2 6= β= q

(p und q sind teilerfremd)

(4.2)

√ ( 2 ist nicht rational)

√ Wir nehmen nun an, dass es teilerfremde Zahlen p und q gibt mit 2 = pq , d.h. wir nehmen an, dass α ∧ ¬β gilt. √ 2 Aus 2 = pq folgt, dass 2 = pq2 ist. Daraus folgt, dass p2 = 2q 2 gilt, und daraus, dass 2 ein Teiler von p2 ist, und daraus, dass 2 ein Teiler von p ist. Hieraus folgt, dass 2 · 2 ein Teiler von p · p = p2 und damit 4 ein Teiler von 2q 2 ist. Hieraus folgt, dass 2 ein Teiler von q 2 und damit ein Teiler von q ist. Aus diesen Schlussfolgerungen folgt, dass 2 ein Teiler von p und von q ist, womit p und q nicht teilerfremd sind, d.h.:  p q ∈ N 0 ∧ ∈ N0 (4.3) ∃k ∈ N2 k k Diese Aussage ist gleich ¬α, also ein Widerspruch zu α (vergleiche (4.2) und (4.3)). ¨ Damit haben wir (α∧¬β) ⇒ ¬α gezeigt, und damit ist wegen der Aquivalenz (4.1) die Folgerung α ⇒ β bewiesen. 2 ¨ Varianten von Widerspruchsbeweisen basieren auf den Aquivalenzen: (α → β) ⇔ ((α ∧ ¬β) → β) (α → β) ⇔ ((α ∧ ¬β) → (γ ∧ ¬γ)) (α → β) ⇔ ((α ∧ ¬β) → 0)

4.4

Ringschluss

¨ Um die Aquivalenz der Formeln α1 , . . . , αk , d.h. α1 ⇔ α2 ⇔ . . . ⇔ αk , k ≥ 2 zu beweisen, kann man anstelle der 2(k − 1) Folgerungen αi ⇒ αi+1 und αi+1 ⇒ αi , 1 ≤ i ≤ k − 1, die k − 1 Folgerungen αi ⇒ αi+1 , 1 ≤ i ≤ k − 1, und die Folgerung αk ⇒ α1 zeigen. Insgesamt ist ¨ zum Beweis der Aquivalenz der Formeln αi , 1 ≤ i ≤ k, die Folge der k Implikationen α1 ⇒ α2 ⇒ . . . ⇒ αk ⇒ α1 zu zeigen. Satz 4.1. Zeigen Sie: Sind α1 , . . . , αk , k ≥ 2, pr¨adikatenlogische Formeln, dann ist α1 ⇔ α2 ⇔ . . . ⇔ αk

(4.4)

α1 ⇒ α2 ⇒ . . . ⇒ αk ⇒ α1

(4.5)

aquivalent zu ¨

4.4. RINGSCHLUSS

57

Beweis Aus Beispiel 2.7 c) auf Seite 23 folgt: (α ⇒ β ⇒ γ) ⇒ (α ⇒ γ)

(4.6)

Wir zeigen zun¨ achst, dass (4.5) aus (4.4) folgt. Aus (4.4) folgt, dass αk ⇒ αk−1 ⇒ . . . ⇒ α2 ⇒ α1

(4.7)

α1 ⇒ α2 ⇒ . . . ⇒ αk−1 ⇒ αk

(4.8)

und dass

gilt. Aus (4.6) und (4.7) folgt, dass αk ⇒ α1 gilt. Hieraus folgt mit (4.8), dass (4.5) gilt. Damit ist gezeigt, dass (4.5) aus (4.4) folgt. Jetzt zeigen wir, dass (4.4) aus (4.5) folgt. Aus (4.5) und (4.6) folgt α1 ⇒ αi , 1 ≤ i ≤ k, und αj ⇒ α1 , 1 ≤ j ≤ k, sowie αi ⇒ αj , 1 ≤ i, j ≤ k − 1, i ≤ j. Es folgt, dass αj ⇒ α1 ⇒ αi f¨ ur 1 ≤ i, j ≤ k mit i ≤ j gilt. Es folgt, dass αk ⇒ αk−1 ⇒ . . . ⇒ α2 ⇒ α1 gilt. Mit der Voraussetzung (4.5) folgt hieraus die Behauptung (4.4).

2

¨ Ubung 4.1. Beweisen Sie, dass f¨ ur a, b ∈ R+ gilt a+b √ ≥ a·b 2 (das arithmetische Mittel von zwei positiven Zahlen ist gr¨oßer gleich deren geometrischem Mittel)! 2 ¨ ¨ Ubung 4.2. Beweisen Sie die Behauptung aus obiger Ubung 4.1 durch Widerspruchsbeweis!

2

58

KAPITEL 4. BEWEISMETHODEN

Kapitel 5

Operationen auf Mengen Wir kehren nun zu Mengen zur¨ uck und benutzen pr¨adikatenlogische Formeln, um Teilmengenbeziehungen zwischen Mengen sowie Verkn¨ upfungen von Mengen zu definieren. Dabei benutzen bei wir folgende formale Schreibweise bei der Definition von neuen Begriffen: α :⇔ β Dabei ist β eine Formel, in der bereits definierte Begriffe und Symbole verwendet werden, um den neuen Begriff oder das neue Symbol oder die neue Schreibweise α pr¨azise festzulegen. In vielen Anwendungsbereichen m¨ ussen Datenmengen miteinander verkn¨ upft werden. Hat man z.B. eine Datenbasis, in der die Kunden pro Tag festgehalten werden und m¨ochte man daraus eine Auflistung aller Kunden einer Woche haben, dann m¨ ussen die Tagesmengen vereinigt werden. Oder m¨ ochte man wissen, welche Kunden an allen Tagen Bestellungen aufgegeben haben, dann m¨ ussen die gemeinsamen Elemente der Tagesmengen bestimmt werden. In diesem Kapitel definieren wir mithilfe logischer Ausdr¨ ucke elementare Mengenoperationen und betrachten ihre grundlegenden Eigenschaften. Nach dem Durcharbeiten dieses Kapitels sollten Sie • den Teilmengenbegriff und dessen grundlegende Eigenschaften kennen, • wissen, wie die Potenzmenge einer Menge gebildet wird, • f¨ ur einfache Beispiele Element- bzw. Teilmengenbeziehungen entscheiden k¨onnen, • die Definitionen f¨ ur Vereinigung, Durchschnitt, Differenz und Komplement von Mengen kennen, • die grundlegenden Eigenschaften dieser Operationen kennen und beweisen k¨onnen, • diese Operationen anwenden k¨ onnen. 59

Lernziele

60

5.1

KAPITEL 5. OPERATIONEN AUF MENGEN

Teilmengen

Definition 5.1. a) Eine Menge A ist Teilmenge einer Menge B, falls jedes Element von A auch Teilmenge Element von B ist. Wir schreiben: A ⊆ B. Formal lautet die Definition: A ⊆ B :⇔ x ∈ A ⇒ x ∈ B

(5.1)

Untermenge Obermenge

Ein synonymer Begriff f¨ ur Teilmenge ist Untermenge. Entsprechend nennt man, wenn A ⊆ B gilt, B Obermenge von A.

Gleichheit von Mengen

b) Zwei Mengen A und B sind gleich, wenn jede Teilmenge der anderen ist: A = B :⇔ A ⊆ B ∧ B ⊆ A

(5.2)

Sind die Mengen A und B nicht gleich, gilt also ¬(A = B), dann schreiben wir A 6= B. Echte menge

Teil-

c) Eine Menge A ist eine echte Teilmenge einer Menge B, falls A Teilmenge von B ist, aber nicht gleich B ist: A ⊂ B :⇔ A ⊆ B ∧ A 6= B

(5.3) 2

Beispiel 5.1. Es gilt: a) { 2, 3, 4, 7 } ⊆ { 1, 2, 3, 4, 7, 13 }. b) { 1, 2, 3 } = { 3, 2, 1 } sowie { 1, 2, 3 } ⊆ { 3, 2, 1 }, aber { 1, 2, 3, 4 } 6⊂ { 3, 2, 4, 1 }. 2

c) { 2, 3, 4, 7 } ⊂ { 1, 2, 3, 4, 7, 13 }.

Folgerung 5.1. a) F¨ ur jede Menge A gilt ∅ ⊆ A, d.h. die leere Menge ist Teilmenge jeder Menge. b) F¨ ur jede Menge A gilt A ⊆ A, d.h. jede Menge ist Teilmenge von sich selbst. c) Seien A, B und C Mengen, dann gilt: A ⊆ B ∧ B ⊆ C ⇒ A ⊆ C. Beweis a) Nach Definition 5.1 ist zu zeigen: x ∈ ∅ ⇒ x ∈ A, d.h. wir m¨ ussen zeigen, dass die Subjunktion x ∈ ∅ → x ∈ A immer wahr ist. Das Pr¨ adikat x ∈ ∅ ist immer falsch, und das Pr¨adikat x ∈ A kann wahr oder falsch sein. Folgende Wahrheitstafel zeigt die beiden m¨oglichen Belegungen f¨ ur die Subjunktion: x∈∅ x∈A x∈∅→x∈A 0 1 1 0 0 1 x ∈ ∅ → x ∈ A ist also immer wahr, d.h. es gilt x ∈ ∅ ⇒ x ∈ A und damit die Behauptung ∅ ⊆ A. ¨ Der Beweis f¨ ur b) folgt analog (siehe folgende Ubung 5.1). c) Wir setzen α = (x ∈ A), β = (x ∈ B) sowie γ = (x ∈ C). Aus Beispiel 2.7 c) (Seite 23) wissen wir, dass (α ⇒ β) ∧ (β ⇒ γ) ⇒ (α ⇒ γ) gilt (Kettenschluss). Damit k¨onnen wir folgern A ⊆ B ∧ B ⊆ C ⇒ ((x ∈ A) ⇒ (x ∈ B)) ∧ ((x ∈ B) ⇒ (x ∈ C)) ⇒ (α ⇒ β) ∧ (β ⇒ γ) ⇒ (α ⇒ γ) ⇒ ((x ∈ A) ⇒ (x ∈ C)) ⇒A⊆C

5.2. POTENZMENGEN

61

womit die Behauptung gezeigt ist.

2

¨ Ubung 5.1. Beweisen Sie Folgerung 5.1 b)!

2

5.2

Potenzmengen

Definition 5.2. Sei M eine Menge. Dann heißt P(M ) = { A | A ⊆ M }, die Menge aller Teilmengen Potenzmenge von M , die Potenzmenge von M . Es gilt also: A ∈ P(M ) :⇔ A ⊆ M . Anstelle von P(M ) schreiben wir auch 2M . 2 Beispiel 5.2. Sei M = { a, b, c }, dann gilt P(M ) = { ∅, {a}, {b}, {c}, { a, b }, { a, c }, { b, c }, { a, b, c } } Aus Folgerung 5.1 a) und b) folgt unmittelbar Folgerung 5.2. Sei M eine Menge, dann gilt ∅ ∈ P(M ) sowie M ∈ P(M ).

2

Satz 5.1. Sei M eine Menge mit m Elementen, |M | = m, dann hat P(M ) 2m Elemente: |P(M )| = 2|M | . Beweis Siehe Beispiel 12.1 c) auf Seite 115.

2

Mit F(M ) bezeichnen wir die Menge der endlichen Teilmengen von M . F¨ ur endliche Mengen M gilt F(M ) = P(M ), f¨ ur unendliche Mengen M gilt F(M ) ⊂ P(M ). Es gilt z.B. G+ ∈ P(Z), aber G+ ∈ / F(Z). ¨ Ubung 5.2. Bestimmen Sie P(∅) sowie P(P(∅))!

2

¨ Ubung 5.3. Bestimmen Sie die einzige Menge M , f¨ ur die M ∈ P(M ) gilt!

2

5.3

Verknu ¨ pfung von Mengen

Definition 5.3. Es seien A und B zwei Mengen. a) Die Menge A ∪ B = { x | x ∈ A ∨ x ∈ B }, welche alle Elemente von A und B enth¨alt, heißt Vereinigung Vereinigung von A und B. b) Die Menge A ∩ B = { x | x ∈ A ∧ x ∈ B }, welche alle gemeinsamen Elemente von A und B Durchschnitt, Schnittmenge enth¨ alt, heißt Durchschnitt (auch Schnittmenge) von A und B. c) Gilt A ∩ B = ∅, dann heißen A und B disjunkt (auch elementfremd).

Disjunktheit

d) Die Menge A − B = { x | x ∈ A ∧ x ∈ / B }, welche alle Elemente von A enth¨alt, die nicht Element Differenz von B sind, heißt Differenz von A und B. e) Die Menge A B = (A − B) ∪ (B − A), welche alle Elemente von A enth¨alt, die nicht Element Symmetrische von B sind, und alle Elemente von B enth¨alt, die nicht Element von A sind, heißt symmetrische Differenz Differenz von A und B. f ) Falls A ⊆ B ist, dann heißt CB A = B − A das Komplement von A bez¨ uglich B. Falls die Menge Komplement 2 B aus dem Zusammenhang heraus klar ist, schreibt man anstelle von CB A auch A.

62

KAPITEL 5. OPERATIONEN AUF MENGEN

Beispiel 5.3. Es sei A = { 1, 2, 3, 4 } und B = { 3, 4, 5 }. Dann gilt: a) A ∪ B = { 1, 2, 3, 4, 5 } b) A ∩ B = { 3, 4 } c) A − B = { 1, 2 } d) A B = { 1, 2, 5 } 2

e) CN0 G = U

F¨ ur die Vereinigung bzw. f¨ ur den Durchschnitt von n Mengen A1 , A2 , . . ., An , n ≥ 0, f¨ uhren wir noch folgende Schreibweisen ein: A1 ∪ A2 ∪ . . . ∪ An = A1 ∩ A2 ∩ . . . ∩ An =

n [ i=1 n \

Ai Ai

i=1

Diese Schreibweise kann man noch verallgemeinern f¨ ur den Fall, dass die Indizes nicht die Zahlen 1, 2, . . ., n sind, sondern Elemente einer – m¨oglicherweise unendlichen – Indexmenge I: [ \ Ai bzw. Ai i∈I

i∈I

Betrachten wir hierzu ein Beispiel: Sei tag = { mo, di, mi, do, fr, sa } eine Indexmenge, und sei Kt die Menge der Kunden, die am Tag t kaufen, dann bezeichnet [ Kt t∈tag

die Menge der Kunden an allen Tagen, und \

Kt

t∈tag

bezeichnet die Menge der Kunden, die jeden Tag gekauft haben.

5.4

Elementare Eigenschaften

Im Folgenden werden die elementaren Eigenschaften der oben eingef¨ uhrten Mengenoperationen aufgelistet. Eine Reihe dieser Eigenschaften gelten, weil entsprechende Eigenschaften f¨ ur die die Operationen definierenden logischen Vekn¨ upfungen gelten (vergleiche Satz 2.4 bzw. Tabelle 2.4 auf Seite 27). Satz 5.2. F¨ ur alle Mengen A, B und C gelten die folgenden Gesetze:

5.4. ELEMENTARE EIGENSCHAFTEN

63

(1) Die Operationen Vereinigung, Durchschnitt und symmetrische Differenz sind kommutativ: A∪B =B∪A A∩B =B∩A A B =B A (2) Falls A ⊆ B ist, dann gilt: A∪B =B A∩B =A A−B =∅ A B =B−A (3) Vereinigung und Durchschnitt sind idempotente Verkn¨ upfungen: A∪A=A A∩A=A (4) Aus den Eigenschaften (1) - (3) folgt: A∪∅=A A∩∅=∅ A−A=∅ ∅−A=∅ A−∅=A (5) F¨ ur Vereinigung, Durchschnitt und Mengendifferenz gilt: A⊆A∪B B ⊆A∪B A∩B ⊆A A∩B ⊆B A−B ⊆A (6) F¨ ur die symmetrische Differenz gilt: A B = (A ∪ B) − (A ∩ B) (7) Vereinigung und Durchschnitt sind assoziative Operationen: A ∪ (B ∪ C) = (A ∪ B) ∪ C A ∩ (B ∩ C) = (A ∩ B) ∩ C

64

KAPITEL 5. OPERATIONEN AUF MENGEN

(8) Vereinigung und Durchschnitt sind distributiv: A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C) (A ∩ B) ∪ C = (A ∪ C) ∩ (B ∪ C) A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C) (A ∩ B) ∪ C = (A ∪ C) ∩ (B ∪ C) (9) Es gelten die De Morganschen Regeln:1 A∪B =A∩B A∩B =A∪B (10) Es gelten die Absorptionsgesetze: A ∪ (B ∩ A) = A A ∩ (B ∪ A) = A (11) Doppelte Komplementbildung: A = A Beweis Bei allen Eigenschaften – bis auf (5) – sind Gleichheiten von Mengen zu zeigen. Gem¨ aß Definition 5.1 b) auf Seite 60 sind zwei Mengen gleich, wenn jede Teilmenge der anderen ist. Mit dieser Methode zeigen wir die erste Gleichheit von (9), alle anderen Beweise sind Gegenstand von ¨ ¨ Ubung 5.4. Fast alle Gleichheiten lassen sich auf die Aquivalenz der Pr¨adikate zur¨ uckf¨ uhren, mithilfe derer die Mengenoperationen definiert sind (siehe Definition 5.3 auf Seite 61). Um A ∪ B = A ∩ B zu zeigen, m¨ ussen wir also A ∪ B ⊆ A ∩ B und A ∩ B ⊆ A ∪ B zeigen. A ∪ B ⊆ A∩B gilt, falls die Implikation x ∈ A ∪ B ⇒ x ∈ A∩B g¨ ultig ist, was wir im Folgenden zeigen: x∈A∪B ⇒x∈ / A∪B

(gem¨aß Definiton des Komplements)

⇒ ¬(x ∈ A ∪ B)

(gem¨aß Definition von ∈) /

⇒ ¬(x ∈ A ∨ x ∈ B)

(gem¨aß Definition der Vereinigung)

⇒x∈ / A∧x∈ /B

(gem¨aß De Morganscher Regeln f¨ ur Konjunktion und Disjunktion, Tabelle 2.4, Seite 27)

⇒x∈A∧x∈B

(gem¨aß Definiton des Komplements)

⇒x∈A∩B

(gem¨aß Definition des Durchschnitts)

Der Beweis von A ∩ B ⊆ A ∪ B geschieht durch Umkehrung dieser Implikationen.

2

1 Benannt nach Augustus De Morgan (1806 - 1871), britischer Mathematiker und Logiker. De Morgan leistete Beitr¨ age zur Algebra und zur mathematischen Logik und begr¨ undete neben George Boole eine Algebra der Logik.

5.4. ELEMENTARE EIGENSCHAFTEN

65

¨ Ubung 5.4. Beweisen Sie Satz 5.2!

2

Folgerung 5.3. a) F¨ ur zwei endliche Mengen A und B gilt: |A ∪ B| = |A| + |B| − |A ∩ B| b) Sind A und B endlich und disjunkt, dann gilt |A ∪ B| = |A| + |B|.

2

Definition 5.4. Sei A eine nicht leere Menge, I eine Indexmenge und Ai ⊆ A, i ∈ I, eine Familie Partition ¨ von nicht leeren Teilmengen von A. Dann heißt {Ai }i∈I eine Partition von A genau dann, wenn Uberdeckung Zerlegung gilt: (1) Ai ∩ Aj = ∅ f¨ ur i, j ∈ I mit i 6= j, S (2) i∈I Ai = A. Eine Partition zerlegt also eine Menge vollst¨andig in disjunkte Teilmengen. Man sagt auch, dass die Menge A von {Ai }i∈I (vollst¨ andig und disjunkt) u 2 ¨berdeckt wird. Beispiel 5.4. a) Die Mengen G+ und U+ bilden eine Partition von N0 . b) Sei Σ = { a, b, . . . , z } die Menge der Kleinbuchstaben des deutschen Alphabets. Seien Wa , Wb , . . . , Wz die Menge der W¨ orter der deutschen Sprache, die mit a, mit b usw. oder mit z beginnen. Dann bilden diese Mengen eine Partition der Menge D aller deutschen klein geschriebenen W¨orter, denn S es gilt: α∈Σ Wα = D und Wα ∩ Wβ = ∅ f¨ ur α 6= β, α, β ∈ Σ. 2

66

KAPITEL 5. OPERATIONEN AUF MENGEN

Kapitel 6

Boolesche Algebra Wenn wir Satz 2.4 (Seite 26) und Satz 5.2 (Seite 62) vergleichen, bemerken wir, dass sowohl f¨ ur Verkn¨ upfungen der Logik als auch f¨ ur Mengenverkn¨ upfungen gleiche Eigenschaften gelten. Wir wollen von den konkreten Operanden, aussagen- oder pr¨adikatenlogische Formeln bzw. Mengen abstrahieren und Verkn¨ upfungsstrukturen betrachten, die Elemente einer Menge mit drei Operatoren verkn¨ upfen und dabei bestimmten Rechenregeln gen¨ ugen. Wir lernen damit eine erste abstrakte Rechenstruktur kennen, von der wir bereits Beispiele, n¨amlich aussagenlogische Formeln und Mengen, betrachtet haben. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

• den Begriff der Booleschen Algebra und dessen grundlegende Eigenschaften kennen, • den Begriff des Isomorphie Boolescher Algebren erkl¨aren k¨onnen, • wissen, dass die Boolesche Algebra der Wahrheitswerte ein Repr¨asentant f¨ ur alle minimalen Booleschen Algebren ist, • wissen, dass die Booleschen Algebren der Potenzmengen von endlichen Mengen Repr¨asentanten f¨ ur endliche Boolesche Algebren sind.

6.1

Definitionen und grundlegende Eigenschaften

Definition 6.1. Eine Boolesche Algebra1 A = (A, 0, 1, ⊕, ⊗,0 ) ist gegeben durch eine Menge A mit zwei ausgezeichneten Elementen 0 (sogenanntes Nullelement) und 1 (sogenanntes Einselement) aus A sowie den zweistelligen Operatoren ⊕ und ⊗, die angewendet auf zwei Elemente aus A wieder ein Element aus A ergeben, und den einstelligen Operator 0 , der angewendet auf ein Element aus A wieder ein Element aus A liefert. Die Operatoren und beliebigen Elementen x, y, z ∈ A m¨ ussen dabei folgenden Gesetzen gen¨ ugen: 1 Der britische Mathematiker und Logiker George Boole (1815 - 1864) gilt als Begr¨ under der mathematischen Logik. Durch Formalisierung des mathematischen Denkens ( An investigation of the laws of thought“ ist eine ber¨ uhmte ” Schrift von Boole zu diesem Thema) entwickelte er eine Algebra der Logik, d.h. eine Logik, mit der man rechnen“ ” kann (siehe Kapitel 2 u ¨ber Aussagenlogik).

67

Boolesche Algebra Nullelement Einselement

68

KAPITEL 6. BOOLESCHE ALGEBRA

(i) Kommutativit¨ at f¨ ur ⊕ und ⊗: x⊕y =y⊕x x⊗y =y⊗x (ii) Assoziativit¨ at f¨ ur ⊕ und ⊗: x ⊕ (y ⊕ z) = (x ⊕ y) ⊕ z x ⊗ (y ⊗ z) = (x ⊗ y) ⊗ z (iii) Absorption: x ⊕ (y ⊗ x) = x x ⊗ (y ⊕ x) = x (iv) Distributivit¨ at: x ⊕ (y ⊗ z) = (x ⊕ y) ⊗ (x ⊕ z) x ⊗ (y ⊕ z) = (x ⊗ y) ⊕ (x ⊗ z) (v) Eigenschaften von 0 und 1: x⊕0=x

x⊗0=0

x⊕1=1

x⊗1=x

x ⊕ x0 = 1

x ⊗ x0 = 0

(vi) Eigenschaften von 0 :

2 Die n¨ achste Folgerung gibt zwei Boolesche Algebren an, die wir schon kennen. Folgerung 6.1. a) Sei M irgendeine Menge, dann bildet PM = (P(M ), ∅, M, ∪, ∩, CM ) eine Boolesche Algebra. b) B = ({ 0, 1 }, 0, 1, ∨, ∧, ¬) mit 1∨1=1 1∧1=1

1∨0=1 1∧0=0

bildet ebenfalls eine Boolesche Algebra.

0∨1=1 0∧1=0

0 ∨ 0 = 0 ¬1 = 0 0 ∧ 0 = 0 ¬0 = 1 2

PM ist die Boolesche Algebra aller Teilmengen einer gegebenen Menge M . Die Operation ⊕ ist die Vereinigung, die Operation ⊗ ist der Durchschnitt und die Operation 0 ist das Komplement bez¨ uglich M . Das Nullelement ist die leere Menge und das Einselement ist die Menge M selbst.

6.1. DEFINITIONEN UND GRUNDLEGENDE EIGENSCHAFTEN

69

Die Mengenverkn¨ upfungen gen¨ ugen den Bedingungen (i) - (vi) der Definition 6.1 f¨ ur eine Boolesche Algebra (siehe Satz 5.2, Seite 62). B ist die Boolesche Algebra der Wahrheitswerte in der Aussagenlogik. Die Operation ⊕ ist die Disjunktion, die Operation ⊗ ist die Konjunktion und die Operation 0 ist die Negation. Das Nullelement ist der Wahrheitswert 0 ( falsch“) und das Einselement ist der Wahrheitswert 1 ( wahr“). ” ” Die Junktoren gen¨ ugen den Bedingungen (i) - (vi) der Definition 6.1 f¨ ur eine Boolesche Algebra (siehe Satz 2.4 bzw. Tabelle 2.4, Seite 27). F¨ ur Boolesche Algebren allgemein gelten nat¨ urlich alle Eigenschaften, die wir f¨ ur die speziellen Booleschen Algebren B und PM f¨ ur eine Menge M bereits gezeigt haben (siehe S¨atze 2.4 und 5.2). Ebenso gilt f¨ ur jede Boolesche Algebra das Dualit¨atsprinzip, das wir in Satz 2.10 (Seite 30) f¨ ur die Aussagenlogik bereits formuliert haben. Satz 6.1. Ist eine Eigenschaft einer Booleschen Algebra A g¨ ultig, dann ist auch ihre duale Eigenschaft in A g¨ ultig. Die duale Eigenschaft erh¨alt man, indem man jedes Vorkommen von ⊕ durch ⊗, jedes ⊗ durch ⊕, jedes Vorkommen von 0 durch 1 und jede 1 durch 0 ersetzt. 2 ¨ Uber die im Satz 2.4 bzw. im Satz 5.2 formulierten Eigenschaften hinaus gelten f¨ ur alle Booleschen Algebren noch die im folgenden Satz aufgef¨ uhrten fundamentalen Eigenschaften. Satz 6.2. Sei A = (A, 0, 1, ⊕, ⊗,0 ) eine Boolesche Algebra. Dann sind durch die definierenden Eigenschaften in Definition 6.1 a) das Null- und das Einselement sowie b) a0 f¨ ur jedes a ∈ A eindeutig bestimmt. Beweis a) Wir nehmen an, es g¨ abe außer 0 noch das davon verschiedene Nullelement z. z muss die Eigenschaft (v) aus Definition 6.1 erf¨ ullen. Es gilt also a ⊗ z = z f¨ ur alle a ∈ A, d.h. diese Gleichung gilt auch f¨ ur a = 0: 0⊗z =z

(6.1)

Andererseits gilt a ⊗ 0 = 0 f¨ ur alle a ∈ A, also auch f¨ ur a = z, d.h. z⊗0=0

(6.2)

Aus den Gleichungen (6.1) und (6.2) und mit der Kommutativit¨at von ⊗ folgt z =0⊗z =z⊗0=0 und damit z = 0. Der Beweis der Eindeutigkeit des Einselements erfolgt analog durch Dualisierung des obigen Beweises der Eindeutigkeit des Nullelementes. b) Wir nehmen an, es g¨ abe zu x ∈ A außer x0 noch ein Element cx mit den Eigenschaften (vi) aus Definition 6.1. Es gilt also: x ⊕ cx = 1

(6.3)

x ⊗ cx = 0

(6.4)

70

KAPITEL 6. BOOLESCHE ALGEBRA

Es folgt: x0 = x0 ⊕ 0

(wegen Eigenschaft (v) von Definition 6.1)

0

= x ⊕ (x ⊗ cx ) 0

(wegen (6.4)) 0

= (x ⊕ x) ⊗ (x ⊕ cx )

(wegen Eigenschaft (iv) von Definition 6.1)

= 1 ⊗ (x0 ⊕ cx )

(wegen Eigenschaft (vi) von Definition 6.1)

0

= x ⊕ cx

(wegen Eigenschaft (v) von Definition 6.1)

Es gilt also x0 = x0 ⊕ cx

(6.5)

Dual zur Herleitung dieser Gleichung l¨asst sich mit x0 = x0 ⊗ 1

(wegen Eigenschaft (v) von Definition 6.1)

0

= x ⊗ (x ⊕ cx ) 0

(wegen (6.3)) 0

= (x ⊗ x) ⊕ (x ⊗ cx )

(wegen Eigenschaft (iv) von Definition 6.1)

0

= 0 ⊕ (x ⊗ cx )

(wegen Eigenschaft (vi) von Definition 6.1)

= x0 ⊗ cx

(wegen Eigenschaft (v) von Definition 6.1)

die Gleichung x0 = x0 ⊗ cx

(6.6)

herleiten. Mit diesen Ergebnissen folgt nun: x0 = x0 ⊗ cx

(wegen (6.6))

0

= (x ⊕ cx ) ⊗ cx 0

(wegen (6.5))

= cx ⊗ (x ⊕ cx )

(wegen Eigenschaft (i) von Definition 6.1)

= cx

wegen Eigenschaft (iii) von Definition 6.1)

Damit haben wir ausgerechnet, dass x0 = cx gilt.

6.2

Isomorphismus

2

Isomorphie Boolescher Algebren

¨ B ist im Ubrigen im folgenden Sinn die kleinste Boolesche Algebra: Jede Boolesche Algebra mit zwei Elementen ist strukturgleich zu B. Das bedeutet, dass es zum einen keine Boolesche Algebra mit nur einem Element geben kann, und zum anderen gibt es f¨ ur jede andere Boolesche Algebra B 0 = ({a, b}, a, b, ⊕, ⊗,0 ) mit zwei Elementen eine eineindeutige Zuordnung ϕ : { a, b } → { 0, 1 }, so dass f¨ ur alle x, y ∈ { a, b } gilt ϕ(x ⊕ y) = ϕ(x) ∨ ϕ(y) ϕ(x ⊗ y) = ϕ(x) ∧ ϕ(y) ϕ(x0 ) = ¬ϕ(x)

6.2. ISOMORPHIE BOOLESCHER ALGEBREN

71

Bis auf die Umbenennung ϕ der Elemente von B 0 und der entsprechenden Umbenennung der Operatoren sind also alle zweielementigen Booleschen Algebren identisch zu B. Diese Art der Strukturgleichheit nennt man Isomorphismus. So wie die Boolesche Algebra der Wahrheitswerte B ein Prototyp“ f¨ ur alle minimalen Boole” schen Algebren ist, ist die Boolesche Algebra Pn = (P(N1,n ), ∪, ∩, CN1,n ) der Teilmengen der Menge N1,n = { 1, . . . , n }, n ≥ 1, ein Protoyp f¨ ur alle endlichen Booleschen Algebren. Dies besagt der folgenden Satz, den wir ohne Beweis angeben. Satz 6.3. Zu jeder endlichen Booleschen Algebra X = (X, 0, 1, ⊕, ⊗,0 ) gibt es eine Zahl n ∈ N, so dass X und Pn isomorph zueinander sind, d.h. es gibt eine eineindeutige Zuordnung ( Umbennung“) ” ϕ : P(N1,n ) → X, so dass f¨ ur alle A, B ∈ P(N1,n ) gilt ϕ(A ∪ B) = ϕ(A) ⊕ ϕ(B) ϕ(A ∩ B) = ϕ(A) ⊗ ϕ(B) ϕ(CN1,n A) = (ϕ(A))0 2 Folgerung 6.2. a) Die Anzahl der Elemente einer endlichen Booleschen Algebra ist immer 2n f¨ ur ein n ≥ 1. b) Je zwei endliche, isomorphe Boolesche Algebren haben in jedem Fall dieselbe Anzahl von Elementen. 2

72

KAPITEL 6. BOOLESCHE ALGEBRA

Kapitel 7

¨ Zusammenfassung und Ubungen 7.1

Zusammenfassung

Mengen sind ein grundlegendes, wesentliches Hilfsmittel in der Mathematik und in der Informatik, um Dinge zusammenzufassen und dieser Zusammenfassung einen Namen zu geben. Die Dinge, die zu einer Menge zusammengefasst werden, heißen Elemente der Menge. Mengen k¨onnen auf zwei Arten dargestellt werden: aufz¨ ahlend oder beschreibend. Bei der aufz¨ahlenden Darstellung werden die Elemente der Menge explizit angegeben. Dies ist bei Mengen mit vielen Elementen und erst recht bei unendlichen Mengen unm¨ oglich. Man hilft sich dann durch die P¨ unktchennotation“, bei ” der einige Elemente angegeben werden. Aus den angegebenen Elementen und Informationen aus dem Zusammenhang muss bestimmt werden k¨onnen, ob ein Ding Element der Menge ist oder nicht. Bei der beschreibenden Darstellung werden die Eigenschaften, die die Elemente einer Menge haben, durch ein Pr¨ adikat angegeben. Pr¨ adikate werden in der Regel durch halbformale“ Ausdr¨ ucke ” angegeben, die neben logischen (Teil-) Ausdr¨ ucken auch nat¨ urliche Sprachkomponenten enthalten. Die klassische“ Cantorsche Mengendefinition kann zu Paradoxien f¨ uhren, was durch die Rus” selsche Antinomie deutlich wird. Die Sprache der Aussagenlogik besteht aus aussagenlogischen Ausdr¨ ucken (Formeln). Deren syntaktischer Aufbau kann durch rekursiv definierte Regeln festgelegt werden. Die Bedeutung der Ausdr¨ ucke in Abh¨ angigkeit einer Belegung ihrer Variablen kann durch einen Interpreter festgelegt werden, der die belegten Formeln mithilfe einer abstrakten Maschine ausrechnet. Die Bedeutung von aussagenlogischen Verkn¨ upfungen kann auch mithilfe von Wahrheitstafeln festgelegt werden. Formeln bzw. Formelmengen heißen erf¨ ullbar, wenn sie mindestens eine wahre Interpretation besitzen. Solche Interpretationen heißen Modelle f¨ ur die Formeln bzw. Formelmengen. F¨ ur das Beweisen von Behauptungen in Mathematik und Informatik sowie f¨ ur das Ableiten von Wissen aus Wissensbasen (Expertensysteme, Wissensmanagementsysteme) sind Schlussfolgerungsmechanismen von Bedeutung. Eine Formel kann aus einer Formelmenge logisch gefolgert werden, wenn alle Modelle der Formelmenge auch Modelle der Formel sind. Durch Implikationen, das sind immer wahre Subjunktionen, ist ein weiterer semantischer Folgerungsbegriff gegeben. Die logische Folgerung und die Implikation sind semantische Folgerungsbegriffe, weil die Folgerung auf Interpretationen bzw. auf Wahrheitstafeln beruht, d.h. die Belegungen 73

¨ KAPITEL 7. ZUSAMMENFASSUNG UND UBUNGEN

74

der Formelmengen und Formeln werden betrachtet. Bei syntaktischen Folgerungsbegriffen wird f¨ ur m¨oglichst wenige (und kleine“) Schlussfolge” rungen deren G¨ ultigkeit gezeigt. Die Ableitung von Formeln aus Formelmengen geschieht dann, in dem Regeln eines Kalk¨ uls angewendet werden. Der Kalk¨ ul beschreibt, welche Formeln in einer Formelmenge durch welche Formeln ersetzt werden k¨onnen und zwar rein als Texte ( syntaktisch“), ” d.h. ohne dass Interpretationen oder Wahrheitstafeln berechnet werden m¨ ussen. Wichtigste Anforderungen an einen Kalk¨ ul sind Korrektheit und Vollst¨andigkeit. Korrektheit fordert, dass jede aus einer Formelmenge mit dem Kalk¨ ul ableitbare Formel auch eine logische Folgerung dieser Formelmenge ist. Vollst¨andigkeit bedeutet, dass jede logisch ableitbare Formel auch mit dem Kalk¨ ul abgeleitet werden kann. Ein korrekter und vollst¨andiger Kalk¨ ul ist der Resolutionskalk¨ ul. n

Es gibt 22 n-stellige logische Verkn¨ upfungen, d.h. 16 zweistellige. Zwei Formeln bzw. Formelmengen heißen ¨ aquivalent, wenn alle ihre Interpretationen (bei identischen Belegungen gemeinsamer Variablen) denselben Wert haben. Man kann Formeln in ¨aquivalente Formeln transformieren, die nur Verkn¨ upfungen einer aussagenlogischen Basis enthalten. Aussagenlogische Basen f¨ ur zweistellige Verkn¨ upfungen, mit deren Operationen jeweils alle anderen Verkn¨ upfungen ausgedr¨ uckt werden k¨ onnen, sind z.B. die Boolesche Basis { ¬, ∨, ∧ }, die De Morgan-Basen { ¬, ∨ } und { ¬, ∧ }, die Frege-Basis { ¬, → }, die NOR-Basis { ↓ } und die NAND-Basis { ↑ }. So l¨asst sich jede Formel in disjunktiver Normalform (Disjunktion von Konjunktionen) und in konjunktiver Normalform (Konjunktion von Disjunktionen) darstellen. Aussagenlogische Ausdr¨ ucke bestehen aus Konstanten und Variablen, die mit aussagenlogischen Operationen miteinander verkn¨ upft werden k¨onnen. Damit k¨onnen aber nur sehr einfache Pr¨ adikate formuliert werden. Um auch Aussagen u ber Mengen und Beziehungen zwischen Elementen ¨ von Mengen auszudr¨ ucken, ben¨ otigt man weitere sprachliche Mittel wie weitere Konstanten sowie Quantoren, Funktionen und Relationen. Pr¨adikatenlogische Ausdr¨ ucke werden – zusammen mit nat¨ urlichsprachlichen Formulierungen – verwendet, um beschreibende Darstellungen von Mengen anzugeben; so z.B. auch f¨ ur die Definition der Teilmengenbeziehung und der Mengenverkn¨ upfungen. Eigenschaften dieser Begriffe ergeben sich dann aus den entsprechenden Eigenschaften der definierenden Pr¨ adikate. Eine mathematische Behauptung α ⇒ β mit der Voraussetzung α und der Behauptung β ist eine logische Schlussfolgerung, die bewiesen, d.h. deren G¨ ultigkeit gezeigt werden muss. Aufgrund ¨ von lgischen Aquivalenzen kann der direkte Beweis von α ⇒ β auch mit anderen Methoden gezeigt ¨ werden wie indirekter Beweis und Widerspruchsbeweis. Eine Aquivalenz von mehreren Formeln kann durch einen Ringschluss gezeigt werden. Da die Verkn¨ upfungen von Mengen mithilfe von logischen Pr¨adikaten definiert werden, ist es nicht verwunderlich, dass logische Verkn¨ upfungen von Aussagen und Verkn¨ upfungen von Teilmengen einer Menge analoge Eigenschaften erf¨ ullen, wie z.B. Kommutativit¨at, Assoziativit¨at und Distributivit¨ at sowie die Existenz von ausgezeichneten Elementen wie die Menge selbst und die leere Menge bzw. die logische 1 und die logische 0. Es stellt sich heraus, dass die Rechenstruktur der Potenzmenge einer Menge mit den Mengenverkn¨ upfungen Vereinigung, Durchschnitt und Komplement quasi dieselbe ist wie aussagenlogischen Formeln, welche mit der Booleschen Basis gebildet werden. Eine Abstraktion f¨ ur solche Rechenstrukturen stellt die Boolesche Algebra dar. Die Potenzmenge einer n-elementigen Menge ist z.B. ein Prototyp f¨ ur eine endliche Boolesche Algebra. Daraus folgt, dass endliche Boolesche Algebren immer genau 2n Elemente besitzen.

¨ 7.2. UBUNGEN

7.2

75

¨ Ubungen

1. Geben Sie folgende Mengen in beschreibender Form an: (1) M1 = { 1, 2, 4, 8, 16, 32, 64 }, (2) M2 = { 4, 9, 25, 49, 121, . . . }, (3) M3 = { 1, 8, 27, 64 }, (4) U = { 1, 3, 5, 7, . . . }, (5) G− = { −2, −4, −6, . . . }. 2. Geben Sie folgende Mengen in aufz¨ ahlender Form an: (1) die Menge M1 aller ganzen Zahlen, die Kubikzahlen von ganzen Zahlen und kleiner als 100 sind, (2) die Menge M2 aller ganzen Zahlen zwischen 10 und 50, die durch 3 aber nicht durch 4 teilbar sind, √ (3) die Menge M3 = { x | x = y und 0 ≤ y ≤ 100 und x ∈ N }, (4) die Menge M4 = { x | 24 x ∈ N0 }, (5) die Menge M5 = { x | x = 2 und x = 4 }, (6) die Menge M6 = { x | x = 2 oder x ∈ { 1, 2, 3 } }. 3. Seien K und M irgendwelche Mengen sowie A = { 3, 4, { 5, 6 } } und B = { 5, 6 }. (1) Setzen Sie eines oder mehrere der Symbole ∈, ∈, / ⊆, 6⊆ richtig ein: (a) M . . . M , (b) ∅ . . . { 0 }, (c) K . . . { { 1, 2 }, K }, (d) { 1 } . . . { { 1, 2 }, K }. (2) Welche der folgenden Aussagen sind wahr: (a) { 3, 4 } ⊆ A, (b) ∅ ∈ A, (c) ∅ ⊆ A, (d) B ⊆ A, (e) B ∈ A, (f) 6 ∈ A, (g) { 6 } ⊆ A? 4. Beweisen Sie Folgerung 2.1 auf Seite 19! 5. Zeigen Sie die Allgemeing¨ ultigkeit der Formel (α → β) → (¬β → ¬α) f¨ ur α, β ∈ A! 6. Zeigen Sie, dass die Bauernregel Wenn der Hahn kr¨aht auf dem Mist, dann ¨andert sich das ” Wetter oder es bleibt, wie es ist eine Tautologie ist! 7. Beweisen Sie Beispiel 2.5 a- c) auf Seite 21! 8. Beweisen Sie Beispiel 2.7 a - c) auf Seite 23! ¨ 9. Beweisen Sie Satz 2.4, d.h. die in Tabelle 2.4 auf Seite 27 aufgelisteten Aquivalenzen! 10. Beweisen Sie Satz 2.5 auf Seite 26! 11. Beweisen Sie Folgerung 2.5 auf Seite 28! 12. Zeigen Sie, dass { ↓ } eine aussagenlogische Basis bildet! 13. Zeigen Sie, dass { ↑ } eine aussagenlogische Basis bildet!

¨ KAPITEL 7. ZUSAMMENFASSUNG UND UBUNGEN

76

14. Pr¨ ufen Sie mit Hilfe der Resolutionsmethode, ob die aussagenlogische Formel α = (((p → q) ∧ (q → r) ∧ (r → p) ∧ (p ∨ q ∨ r)) → (p ∧ q ∧ r)) erf¨ ullbar ist oder nicht! 15. Berechnen Sie R∗ (Mα ) f¨ ur α = (p ∨ ¬β) ∧ (¬p ∨ β)! 16. Pr¨ asident I weiß: (i) Wenn Professor W eine Vorlesung h¨alt, dann kommen viele Studierende, falls kein ” sch¨ ones Wetter ist.“ (ii) Wenn Professor W eine Vorlesung h¨alt, dann ist schlechtes Wetter.“ ” (iii) I vermutet, dass die Aussage Wenn Professor W eine Vorlesung h¨alt, dann kommen ” viele Studierende.“ zutrifft. K¨ onnen Sie best¨ atigen, dass die Vermutung von Pr¨asident I zutrifft? Gehen Sie wie folgt vor: 0) Benutzen Sie die Variablen P , S und W f¨ ur die Aussagen – P : Professor W h¨alt eine Vorlesung.“ ” – S: Viele Studierende kommen.“ ” – W : Es ist sch¨ ones Wetter.“ ” a) Formulieren Sie die Aussagen (i) - (iii) durch geeignete aussagenlogische Verkn¨ upfungen dieser Variablen! b) Transformieren Sie diese Verkn¨ upfungen in Disjunktionen! c) Geben Sie eine Klauselmenge an, die die Vermutung von Pr¨asident I beschreibt! d) Wenden Sie das Resolutionsverfahren an und beantworten Sie mithilfe des Ergebnisses die Frage, ob die Vermutung von Pr¨asident I zutrifft. 17. Ist die Formel α = (((p → q) ∧ (q → r) ∧ (r → p) ∧ (p ∨ q ∨ r) ∧ (¬p ∨ ¬q ∨ ¬r)) erf¨ ullbar? 18. Beweisen Sie: a, b ∈ R+ ⇒

(a+b)2 4

19. Beweisen Sie: a, b ∈ R+ ⇒

a+b 2

≥ a · b! √ ≥ ab!

20. Beweisen Sie durch direkten sowie durch Widerspruchsbeweis, dass das Produkt zweier ungerader Zahlen wieder ungerade ist: x, y ∈ U+ ⇒ xy ∈ U+ ! 21. Beweisen Sie: F¨ ur jede Menge A gilt: A ⊆ A (siehe Folgerung 1.8)! 22. Bestimmen Sie P(∅) sowie P(P(∅))!

¨ 7.2. UBUNGEN

77

23. F¨ ur welche Mengen M gilt M ∈ P(M ) und M ⊆ P(M )? 24. Beweisen Sie Satz 5.2 auf Seite 62! 25. Zeigen Sie, dass die Mengendifferenz im Allgemeinen keine kommutative Verkn¨ upfung ist! F¨ ur welche Mengen A und B gilt A − B = B − A? 26. Beweisen Sie Folgerung 5.3 auf Seite 65!

78

¨ KAPITEL 7. ZUSAMMENFASSUNG UND UBUNGEN

Teil II

Relationen und Funktionen

79

81 Relationen und Funktionen als spezielle Relationen spielen in der Informatik eine sehr wichtige Rolle. Relationen setzen Werte aus verschiedenen Mengen in Beziehung. Betrachten wir zur Einf¨ uhrung eine kleine relationale Datenbank. Diese soll Daten u ¨ber Studierende und u ¨ber Professorinnen und Professoren enthalten. F¨ ur die Datenbank sollen bei den Studierenden die Merkmale Matrikelnummer, Name, Wohnort und Studienfach, und f¨ ur die Professorinnen und Professoren sollen die Merkmale Name, Fachbereich, Raum und Telefonnummer gespeichert werden. Außerdem soll festgehalten werden, welche Studierende bei welchen Professorinnen oder Professoren in welchem Semester welche Vorlesung mit welchen Pr¨ ufungsergebnissen geh¨ ort haben. Diese Anwendung k¨ onnen wir durch drei Beziehungen modellieren: 1. Die Relation Studis setzt f¨ ur jeden Studierenden die entsprechenden Werte der oben genannten Merkmale in Beziehung. Wir k¨ onnen diese wie folgt als Tabelle darstellen: Studis

Matr 123456 790123 456789 .. .

Name Schmitz M¨ uller Meier .. .

Wohnort Bonn Berlin Dresden .. .

Studienfach Informatik Mathematik Mathematik .. .

2. Die Relation Profs setzt f¨ ur jede Professorin und jeden Professor die entsprechenden Werte ihrer oben genannten Merkmale in Beziehung. Folgende Tabelle zeigt m¨ogliche Daten: Profs

Name Einstein Noether Codd .. .

Fachbereich Physik Mathematik Informatik .. .

Raum C 123 A 890 B 567 .. .

Telefon 4567 1234 8901 .. .

3. Die Relation h¨ ort bei setzt Studierende und Professorinnen oder Professoren mit entsprechenden Werten der oben daf¨ ur genannten Merkmale in Beziehung. Folgende Tabelle zeigt m¨ ogliche Daten: h¨ ort bei

Studi 123456 790123 456789 .. .

Prof Codd Noether Einstein .. .

Semester WS 00/01 SS 00 WS00/01 .. .

Vorlesung Datenbanken Verbandstheorie Math. Physik I .. .

Ergebnis 2,0 1,0 3,0 .. .

Den Merkmalen sind Wertebereiche zugeordnet, und eine Relation setzt Kombinationen von Werten den Merkmalen entsprechender Wertebereiche in Beziehung. Im Beispiel ist dem Merkmal Matr als Wertebereich die Menge sechsstelliger Ziffernfolgen zugeordnet, Name, Wohnort und Studienfach sind jeweils Zeichenketten als Werte zugeordnet. Die Relation Studis setzt Kombinationen von Werten dieser Wertebereiche in Beziehung, jede Zeile der obigen Tabelle Studis ist eine solche Kombination. Tabellen sind eine M¨ oglichkeit zur Darstellung von Relationen.

82 F¨ ur die beiden anderen Tabellen bzw. Relationen gilt Entsprechendes. Zur Tabelle h¨ ort bei sei bemerkt, dass Werte des Merkmals Studi Werte sind, die als Werte des Merkmals Matr in der Tabelle Studis vorkommen und dass Werte des Merkmals Prof Werte sind, die als Werte des Merkmals Name in der Tabelle Profs vorkommen. Bedingung daf¨ ur ist, dass Matr ein identifizierendes Merkmals f¨ ur Studis und Name ein identifizierendes Merkmals f¨ ur Profs ist. Matr und Name heißen auch Schl¨ usselmerkmale f¨ ur Studis bzw. f¨ ur Profs. Studi und Prof heißen Fremdschl¨ ussel in h¨ ort bei. Der Entwurf, die Implementierung und die Anwendung relationaler Datenbanksysteme basieren auf soliden mathematischen Grundlagen. Relationale Datenbanksystem-Technologien sind heutzutage die weltweit am verbreitesten eingesetzten Technologien zur Speicherung und Verwaltung von Daten. Funktionen sind eindeutige Relationen in dem Sinne, dass ein Element einer Menge mit h¨ochstens einem Element einer anderen Menge in Beziehung stehen darf. Funktionale Beziehungen treten bei vielen Ph¨ anomenen in Natur- und Ingenieurwissenschaften auf, sie sind ein wichtiges Hilfsmittel zu deren Modellierung und Analyse. In diesem Teil II f¨ uhren wir die Begriffe Relation und Funktion sowie ihre grundlegenden Eigenschaften ein. Sie sind elementare und wesentliche Begriffe in vielen Modulen der InformatikStudieng¨ ange.

Kapitel 8

Relationen Relationen sind ein wichtiges Hilfsmittel um Beziehungen zwischen Elementen von Mengen auszudr¨ ucken. So kann man, wie z.B. in der Einleitung von Teil II angedeutet, den Entwurf und die Implementierung von Datenbanken mithilfe von Relationen realisieren. Weitere Beispiele f¨ ur die Verwendung des Relationsbegriffs in der Informatik sind: das Ableiten von Formelmengen mithilfe von Kalk¨ ulen (siehe Kapitel 2.5 und 2.8), die Ableitung von W¨ortern mithilfe von Grammatiken, die Konfigurations¨ uberg¨ ange von Automaten beim Abarbeiten von W¨orten, die Ausf¨ uhrung von Programmen auf (abstrakten) Maschinen. In diesem Kap¨ıtel werden grundlegende Begriffe und Eigenschaften f¨ ur Relationen vorgestellt. Nach dem Durcharbeiten des Kapitels sollten Sie Lernziele • die Begriffe kartesisches Produkt und Relation kennen sowie die Eigenschaften Reflexivit¨at, Symmetrie, Antisymmetrie und Transitivit¨at erkl¨aren k¨onnen, • den Begriff der Ordnung kennen und nachweisen k¨onnen, ob eine Relation eine Ordnung ist, • erkl¨ aren k¨ onnen, was totale und was dichte Ordnung bedeutet, ¨ ¨ • den Begriff der Aquivalenzrelation kennen und nachweisen k¨onnen, ob eine Relation eine Aqui¨ valenzrelation ist, und gegebenenfalls die Aquivalenzklassen der Relation bestimmen k¨onnen, ¨ • wissen, was der Begriff Partitionierung bedeutet und dessen Zusammenhang zu Aquivalenzrelationen verstehen, • die Begriffe Umkehrrelation und Komposition von Relationen kennen, • wissen, was die reflexiv-transitive bzw. die transitive H¨ ulle einer Relation ist.

8.1

Kartesisches Produkt

Zun¨ achst definieren wir als weitere Mengenverkn¨ upfung das kartesische Produkt. Definition 8.1. F¨ ur n Mengen A1 , . . . , An , n ≥ 0, heißt die Menge A1 × . . . × An = { (x1 , . . . , xn ) | xi ∈ Ai , 1 ≤ i ≤ n } 83

84

n-Tupel Paar, Tripel Quadrupel Quintupel i-te Komponente

KAPITEL 8. RELATIONEN

n-stelliges kartesisches Produkt von A1 , . . . , An . Anstelle von A1 × . . . × An schreiben wir auch Kartesisches Produkt ×ni=1 Ai . n Falls Ai = ∅ f¨ ur mindestens ein i, 1 ≤ i ≤ n, ist, dann ist ×i=1 Ai = ∅. (x1 , . . . , xn ) heißt n-Tupel, f¨ ur n = 2 sprechen wir von Paaren, f¨ ur n = 3 von Tripeln und f¨ ur n = 4 oder n = 5 auch von Quadrupeln bzw. von Quintupeln. xi , 1 ≤ i ≤ n, heißt die i-te Komponente von (x1 , . . . , xn ). 2 Tupel entsprechen den Zeilen in den Tabellen in der Einleitung zu Teil II, welche die Relationen unserer Hochschuldatenbank“ darstellen. ” Beispiel 8.1. F¨ ur die Mengen A = { 1, 2 }, B = { a, b, c } und C = { 2, 3 } ist A × B = { (1, a), (1, b), (1, c), (2, a), (2, b), (2, c) } und A × B × C = { (1, a, 2), (1, a, 3), (1, b, 2), (1, b, 3), (1, c, 2), (1, c, 3), (2, a, 2), (2, a, 3), (2, b, 2), (2, b, 3), (2, c, 2), (2, c, 3) } Folgerung 8.1. Ist |Ai | = mi , 1 ≤ i ≤ n, n ≥ 0, dann gilt |A1 × . . . × An | = m1 · . . . · mn 2 Sind alle Ai identisch, d.h. Ai = Ai+1 , 1 ≤ i ≤ n − 1, n ≥ 1, dann heißt A1 × . . . × An = A × . . . × A {z } | n−mal

n-faches kartesisches Produkt von A. Abk¨ urzend benutzen wir daf¨ ur auch die Potenzschreibweise: An . Es gilt dann A1 = A. Das n-fache kartesische Produkt von A k¨onnen wir auch wie folgt rekursiv definieren: A1 = A An+1 = An × A, n ≥ 1 Ist |A| = m, dann ist |An | = mn .1

8.2

Relation

Ein n-stelliges kartesisches Produkt setzt alle Elemente der zugrunde liegenden Mengen miteinander in Beziehung. Sollen nur bestimmte Elemente der zugrunde liegenden Mengen in Beziehung gesetzt werden, wie etwa bei der Hochschul-Datenbank“ in der Einleitung von Teil II, dann sprechen wir ” von Relationen. Jede Teilmenge R ⊆ A1 × . . . × An heißt n-stellige Relation u 2 ¨ber A1 , . . . , An . 1 Nk bedeutet gem¨ aß den Vereinbarungen von Kapitel 1.3 u ¨ber die Notation von Zahlenmemgen die Menge der u nat¨ urlichen Zahlen von u bis k. Nach der hier getroffenen Vereinbarung kann damit auch das k-fache kartesiche Produkt der Menge Nu der nat¨ urlichen Zahlen gr¨ oßer gleich u gemeint sein. Im Folgenden wird jeweils aus dem Zusammenhang klar, welche dieser beiden Bedeutungen f¨ ur Nku gemeint ist.

8.2. RELATION

85

Beispiel 8.2. Es sei A = { −3, −2, −1, 0, 1, 2, 3 }. a) F¨ ur die Relation R1 = { (x, y) ∈ A × A | x · y > 2 } gilt R1 = { (−3, −3), (−3, −2), (−3, −1), (−2, −3), (−2, −2), (−1, −3), (1, 3), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3) } b) F¨ ur die Relation R2 = { (x, y, z) ∈ A3 | x + y = z } gilt R2 = { (−3, 0, −3), (−3, 1, −2), (−3, 2, −1), (−3.3, 0), (−2, −1, −3), . . . , (−2, 3, 1), (−1, −2, −3), . . . , (−1, 3, 2), (0, −3, −3), . . . , (0, 3, 3), (1, −3, −2), . . . , (1, 2, 3), (2, −3, −1), . . . , (2, 1, 3), (3, −3, 0), . . . , (3, 0, 3) } 2 Endliche zweistellige Relationen R ⊆ A × B lassen sich auch als Boolesche Matrizen darstellen: Die Zeilen werden mit den Elementen aus A gekennzeichnet, die Spalten mit den Elementen aus B. Ist A = {a1 , . . . , am } und B = {b1 , . . . , bn }, dann tragen wir am Kreuzungspunkt der Zeile i und der Spalte j genau dann eine 1 ein, falls (ai , bj ) ∈ R ist, ansonsten tragen wir dort 0 ein. Die Relation R1 aus dem obigen Beispiel kann also durch folgende Matrix dargestellt werden: x \y −3 −2 −1 −0 1 2 3

−3 1 1 1 0 0 0 0

−2 1 1 0 0 0 0 0

−1 1 0 0 0 0 0 0

0 0 0 0 0 0 0 0

1 0 0 0 0 0 0 1

2 0 0 0 0 0 1 1

3 0 0 0 0 1 1 1

Bei zweistelligen Relationen R ⊆ A × B wollen wir die Tatsache, dass ein Paar (x, y) ∈ A × B zu R geh¨ ort ( in der Beziehung R steht“) ausdr¨ ucken, indem wir die normale Elementschreibweise ” (x, y) ∈ R, die Pr¨ afixschreibweise R(x, y) oder die Infixschreibweise xRy verwenden. Bei einer zweistelligen Relation R ⊆ A×B nennen wir A die Ausgangsmenge und B die Zielmenge von R. Ist A = B, dann heißt A die Grundmenge von R. Ist R = ∅, dann heißt R Nullrelation. Ist R = A × B, dann heißt R vollst¨ andig. Ist R ⊆ A × A mit R = { (x, x) | x ∈ A }, dann ist R die identische Relation u ber A, diese wird in der Regel mit ¨ id A bezeichnet. Im Folgenden betrachten wir Eigenschaften zweistelliger Relationen u ¨ber einer Grundmenge A. Dabei kann A selbst strukturiert sein, etwa ein kartesisches Produkt A = A1 × . . . × Ak sein.

Ausgngsmenge Zielmenge Grundmenge Nullrelation Vollst¨ andige Relation Identische Relation

Definition 8.2. Sei R ⊆ A × A eine zweistellige Relation u ¨ber der Grundmenge A. Dann heißt R a) reflexiv genau dann, wenn xRx f¨ ur alle x ∈ A gilt. Bei einer reflexiven Relation muss also jedes Reflexivit¨at

86

KAPITEL 8. RELATIONEN

Element der Grundmenge mit sich selber in Relation stehen. b) irreflexiv genau dann, wenn R nicht reflexiv ist. Symmetrie

c) symmetrisch genau dann, wenn gilt: xRy ⇒ yRx. Eine Relation ist symmetrisch, wenn gilt: Steht x mit y in Relation, dann muss auch y mit x in der Relation stehen.

Asymmetrie

d) asymmetrisch genau dann, wenn gilt: Ist xRy, dann ¬yRx.

Antisymmetrie

e) antisymmetrisch genau dann, wenn gilt: xRy ∧ yRx ⇒ x = y. Eine Relation ist antisymmetrisch, wenn gilt: Steht x mit y in Relation und y mit x, dann muss notwenidgerweise x = y sein.

Transitivit¨ at

f ) transitiv genau dann, wenn gilt: xRy ∧ yRz ⇒ xRz. Eine Relation ist transitiv, wenn gilt: Stehen x mit y und y mit z in Relation, dann steht auch ist x mit z in Relation.

Injektivit¨ at

g) linkseindeutig oder injektiv genau dann, wenn gilt: Ist x1 Ry1 , x2 Ry2 und x1 6= x2 , dann muss y1 6= y2 gelten.

Rechtseindeutige Relation Funktion

h) rechtseindeutig genau dann, wenn gilt: Ist x1 Ry1 , x2 Ry2 und y1 6= y2 , dann muss x1 6= x2 gelten. Rechtseindeutige Relationen werden in der Regel Funktionen genannt. Funktionen werden im Allgemeinen mit den Buchstaben f , g und h bezeichnet, und anstelle f ⊆ A × A wird f : A → A geschrieben sowie anstelle von xf y wird f (x) = y notiert.

Totale Relation Surjektivit¨ at

i) linkstotal oder total genau dann, wenn gilt: F¨ ur alle x ∈ A existiert ein y ∈ A mit xRy.

Bijektivit¨ at

l) bijektiv genau dann, wenn R total, injektiv, rechtseindeutig und surjektiv ist. Eine Bijektion ist eine eineindeutige Zuordnung zwischen den Elementen von Ausgangs- und Zielmenge.

k) rechtstotal oder surjektiv genau dann, wenn gilt: F¨ ur alle y ∈ A existiert ein x ∈ A mit xRy.

Die Definitionen g) – l) gelten analog auch f¨ ur Relationen R ⊆ A×B, d.h. f¨ ur Relationen, bei denen Ausgangs- und Zielmenge verschieden sind. 2 ¨ Ubung 8.1. Sei R ⊆ A × A. Zeigen Sie das Folgendes gilt: (1) R ist antisymmetrisch genau dann, wenn gilt: Ist xRy und x 6= y, dann gilt ¬yRx. (2) R ist injektiv genau dann, wenn gilt: Ist x1 Ry und x2 Ry, dann ist x1 = x2 , d.h. verschiedene Elemente der Ausgangsmenge k¨onnen nicht mit demselben Element der Zielmenge in Relation stehen. (3) R ist rechtseindeutig genau dann, wenn gilt: Ist xRy1 und xRy2 , dann ist y1 = y2 . Ein Element der Ausgangsmenge kann h¨ ochstens mit einem Element der Zielmenge in Relation stehen. 2 Beispiel 8.3. Wir definieren die Relation ≤⊆ N0 × N0 durch x ≤ y genau dann, wenn es ein c ∈ N0 gibt, so dass x + c = y Es gilt z.B. 3 ≤ 5, denn es gibt ein c = 2, so dass 3 + 2 = 5. ≤ ist eine reflexive Relation, denn f¨ ur jedes x ∈ N0 gibt es c = 0, so dass x + 0 = x ist, d.h. f¨ ur alle x ∈ N0 gilt x ≤ x. ≤ ist nicht symmetrisch, denn es gilt z.B. 3 ≤ 5, aber nicht 5 ≤ 3. ≤ ist antisymmetrisch: Sei x ≤ y und y ≤ x, d.h. es gibt ein cx ∈ N0 mit x + cx = y, und es gibt ein cy ∈ N0 mit y + cy = x. Aus den beiden Gleichungen folgt x + cx + cy = x und daraus cx + cy = 0.

Irreflexivit¨ at

8.3. ORDNUNGEN

87

Da cx , cy ∈ N0 , kann cx + cy = 0 nur gelten, wenn cx = cy = 0 gilt. Das bedeutet aber, dass x = y ist. ≤ ist transitiv: Sei x ≤ y und y ≤ z. Wir m¨ ussen zeigen, dass dann auch x ≤ z gilt. Da x ≤ y ist, gibt es ein cx ∈ N0 mit x + cx = y, und da y ≤ z ist, gibt es ein cy ∈ N0 mit y + cy = z. Hieraus folgt unmittelbar, dass es ein cz = cx + cy gibt mit x + cz = z, d.h. es gilt x ≤ z. 2 ¨ Ubung 8.2. Sei D die Menge der W¨ orter der deutschen Sprache. Die Relation α ⊆ D × D sei ¨ definiert durch: xαy genau dann, wenn x und y denselben Anfangsbuchstaben haben. Uberlegen Sie, dass α eine reflexive, symmetrische und transitive Relation ist! 2

8.3

Ordnungen

Definition 8.3. Eine Relation R ⊆ A × A heißt Ordnung u ¨ber A genau dann, wenn R reflexiv, Ordnung antisymmetrisch und transitiv ist. 2 Beispiel 8.4. a) Die Relation ≤ aus dem Beispiel 8.3 ist eine Ordnung u ¨ber N0 . b) Sei M = { a, b, c } und S ⊆ P(M ) × P(M ) definiert durch xSy genau dann, wenn x ⊆ y Die Teilmenge x ⊆ M steht also in Relation S zur Teilmenge y ⊆ M , falls x eine Teilmenge von yist. S ist eine Ordnung u ¨ber P(M ), denn S ist reflexiv, antisymmetrisch und transitiv: S ist reflexiv, denn jede Menge ist Teilmenge von sich selbst (siehe Folgerung 5.1 b) auf Seite 60), und damit gilt x ⊆ x f¨ ur jedes x ∈ P(M ) und damit xSx f¨ ur jedes x ∈ P(M ). S ist antisymmetrisch: Gilt xSy und ySx, d.h. x ⊆ y und y ⊆ x, dann gilt (siehe Definition 5.1 b) auf Seite 60) x = y. S ist transitiv: Sei xSy und ySz, dann muss auch xSz gelten. xSy bedeutet x ⊆ y und ySz bedeutet y ⊆ z. Hieraus folgt (siehe Folgerung 5.1 c) auf Seite 60), dass x ⊆ z und damit xSz. 2 Ist R eine partielle Ordnung u ur auch (A, R) und nennt A eine ¨ber A, dann schreibt man daf¨ geordnete Menge. F¨ ur unsere bisherigen Beispiele 8.3 und 8.4 b) k¨onnen wir also schreiben: (N0 , ≤) Geordnete Menge bzw. (P({ a, b, c }), S) oder f¨ ur Letzteres auch (P({ a, b, c }), ⊆) Definition 8.4. Sei (A, R) eine Ordnung und x, y ∈ A. a) Gilt xRy oder yRx, dann heißen x und y vergleichbar. Gilt ¬xRy und ¬yRx, dann heißen x und y unvergleichbar. b) Sei B ⊆ A, B 6= ∅. x ∈ B heißt minimales Element von B, falls xRy f¨ ur alle y ∈ B gilt. x ∈ B Minimales Element heißt maximales Element von B, falls yRx f¨ ur alle y ∈ B gilt. Maximales

c) K ⊆ A, K 6= ∅, heißt Kette genau dann, wenn f¨ ur alle x, y ∈ K gilt, dass x und y vergleichbar Element Kette sind.

d) (A, R) heißt totale Ordnung oder auch lineare Ordnung (A, R) genau dann, wenn A eine Kette Totale Ordnung bildet. e) Eine totale Ordnung (A, R) heißt Wohlordnung genau dann, wenn falls jede Teilmenge K ∈ A, Wohlordnung K 6= ∅, ein minimales Element besitzt. 2

88

KAPITEL 8. RELATIONEN

Beispiel 8.5. a) Die Ordnung (N0 , ≤) ist total, denn f¨ ur zwei nat¨ urliche Zahlen x und y gilt x ≤ y oder y ≤ x. Diese Ordnung ist zudem eine Wohlordnung. b) Wenn wir die Ordnung aus Beispiel 8.3 auf ganze Zahlen erweitern, dann bildet (Z, ≤) eine totale Ordnung, aber keine Wohlordnung, denn die Teilmenge der geraden Zahlen besitzt kein minimales Element. Wenn wir die ganzen Zahlen aber anders ordnen, z.B. in der Reihenfolge 0, 1, −1, 2, −2, . . . dann liegt eine Wohlordnung vor. Um diese formal zu beschreiben, verwenden wird die Bijektion ϕ : Z → N0 definiert durch ( 2x, falls x ≥ 0 (8.1) ϕ(x) = −(2x + 1), falls x < 0 und definierten die Relation ≤ Z × Z damit wie folgt: x ≤ϕ y genau dann, wenn ϕ(x) ≤ ϕ(y) Die Bijektion ϕ nimmt also eine eineindeutige Umbennenung der ganzen Zahlen durch nat¨ urliche Zahlen vor und u agt quasi die Relation ≤ von den nat¨ urlichen Zahlen auf die ganzen Zahlen. ¨bertr¨ Damit bildet (Z, ≤ϕ ) eine Wohlordnung. c) Die Ordnung (P({ a, b, c }), ⊆) ist nicht total, denn es gibt Teilmengen von { a, b, c }, die nicht in Beziehung zueinander stehen. Es gilt z.B. weder { a, b } ⊆ { b, c } noch { b, c } ⊆ { a, b }. 2 ¨ ¨ Ubung 8.3. (1) Uberlegen Sie, f¨ ur welche Mengen M die Ordnung (P(M ), ⊆) total ist! (2) Beweisen Sie, dass die in (8.1) definierte Relation tats¨achlich eine Bijektion ist!

2

Da die ≤-Relation auf allen Zahlenmengen eine totale Ordnung festlegt, gilt sie als Prototyp f¨ ur totale Ordnungen. Deshalb benutzt man das Symbol ≤ auch allgemein als Symbol f¨ ur totale Ordnungen. Wird also (A, ≤) f¨ ur irgendeine Menge A notiert, soll dies bedeuten, dass eine total geordnete Menge A vorliegt. Wenn wir im Folgenden von Ordnungen oder geordneten Mengen sprechen, sind totale Ordnungen bzw. total geordnete Mengen gemeint. Dichte Menge

Definition 8.5. Sei (A, ≤) eine Ordnung. A heißt dicht bez¨ uglich ≤ genau dann, wenn f¨ ur alle x, y ∈ A mit x 6= y und x ≤ y ein z ∈ A existiert mit z 6= x, z 6= y und x ≤ z ≤ y. 2 Eine geordnete Menge ist also dicht, falls zwischen zwei Elementen dieser Menge immer noch ein drittes liegt. Beispiel 8.6. a) (N0 , ≤) und (Z, ≤) sind nicht dicht, denn zwischen zwei benachbarten nat¨ urlichen (ganzen) Zahlen x und y = x + 1 liegt keine weitere nat¨ urliche (ganze) Zahl. b) Die Menge der rationalen Zahlen (Br¨ uche) (Q, ≤) ist dicht. Betrachten wir z.B. a, b ∈ Q mit a ≤ b und a 6= b, dann ist auch 1.

a+b 2

2. a 6=

∈ Q, a+b 2

und b 6=

a+b 2

und

¨ 8.4. AQUIVALENZRELATIONEN 3. a =

a+a 2



a+b 2



b+b 2

89

= b.

Zwischen zwei rationalen Zahlen a und b existiert also immer eine weitere rationale Zahl, z.B. die 2 Zahl a+b 2 . ¨ ¨ Ubung 8.4. Uberlegen Sie, dass in einer dichten Menge A zwischen zwei verschiedenen Elementen a, b ∈ A unendlich von a und b verschiedene Elemente liegen!

8.4

¨ Aquivalenzrelationen

¨ ¨ Definition 8.6. Eine Relation R ⊆ A × A heißt Aquivalenzrelation u ¨ber A genau dann, wenn R Aquivalenzreflexiv, symmetrisch und transitiv ist. 2 relation ¨ ¨ Beispiel 8.7. a) Die Relation α in Ubung 8.2 ist eine Aquivalenzrelation. b) Die Relation ≡3 ⊆ Z × Z sei definiert durch x ≡3 y genau dann, wenn

x−y ∈Z 3

Die zwei ganzen Zahlen x und y stehen in der Relation ≡3 genau dann, wenn die Differenz x − y ¨ durch 3 teilbar ist. Diese Relation ist eine Aquivalenzrelation, denn sie ist reflexiv, symmetrisch und transitiv: ≡3 ist reflexiv: F¨ ur alle x ∈ Z gilt reflexiv.

x−x 3

= 0 ∈ Z, also gilt x ≡3 x f¨ ur alle x ∈ Z und damit ist ≡3

≡3 ist symmetrisch, denn es gilt: x ≡3 y ⇒

x−y y−x x−y ∈ Z ⇒ (−1) · ∈Z⇒ ∈ Z ⇒ y ≡3 x 3 3 3

≡3 ist transitiv, denn es gilt: x ≡3 y ∧ y ≡3 z

⇒ ⇒ ⇒ ⇒

x−y y−z ∈Z∧ ∈Z 3 3 x−y y−z + ∈Z 3 3 x−z ∈Z 3 x ≡3 z 2

¨ Definition 8.7. Sei R ⊆ A × A eine Aquivalenzrelation und x ∈ A. Dann heißt die Menge [x]R = { y ∈ A | xRy } ¨ aller Elemente von A, mit denen x in der Beziehung R steht, Aquivalenzklasse von R. x heißt ¨ ¨ Repr¨ asentant der Aquivalenzklasse [x]R . Die Anzahl der Aquivalenzklassen von R heißt der Index von R. 2

¨ Aquivalenzklasse Repr¨ asentant Index

90

KAPITEL 8. RELATIONEN

¨ ¨ Beispiel 8.8. a) F¨ ur die Aquivalenzrelation α aus Ubung 8.2 gilt z.B. [Boot]α = { Boot, Buch, Ball, Badesalz, boxen, . . . } [Boot]α enth¨ alt W¨ orter, die mit B oder b beginnen: Alle diese W¨orter haben denselben Anfangsbuchstaben (abgesehen von Groß- und Kleinschreibung). Offensichtlich kann jedes Element von [Boot]α ¨ als Repr¨ asentant dieser Aquivalenzklasse gew¨ahlt werden, denn es gilt z.B. [Boot]α = [boxen]α . ¨ Die Aquivalenzklassen von α werden durch die Anfangsbuchstaben bestimmt. Es gibt somit 26 ¨ Aquivalenzklassen, der Index von α ist also 26. ¨ b) F¨ ur die Aquivalenzrelation ≡3 aus Beispiel 8.7 b) gilt: [0]≡3 = { 0, 3, −3, 6, −6, . . . } = { x | x = 3y, y ∈ Z } [1]≡3 = { 1, −2, 4, −5, 7, −8, . . . } = { x | x = 3y + 1, y ∈ Z } [2]≡3 = { 2, −1, 5, −4, 8, −7, . . . } = { x | x = 3y + 2, y ∈ Z }

Restklasse

[0]≡3 enth¨ alt die durch 3 teilbaren ganzen Zahlen, [1]≡3 enth¨alt die ganzen Zahlen, die bei Division durch 3 den Rest 1 lassen, und [2]≡3 enth¨alt die ganzen Zahlen, die bei Division durch 3 den Rest ¨ 2 lassen. Weitere Aquivalenzklassen gibt es nicht, denn bei Division durch 3 k¨onnen nur drei Reste auftreten. Der Index von ≡3 ist also 3. ¨ als ihr Auch in diesem Beispiel sieht man sofort, dass jedes Element einer Aquivalenzklasse Repr¨ asentant gew¨ ahlt werden kann. ¨ Die Aquivalenzklassen von ≡3 heißen auch Restklassen modulo 3 von Z. 2 ¨ Die Elemente einer Aquivalenzklasse sind ¨aquivalent zueinander, d.h. sie sind durch die Brille“ ” ¨ (den Filter“) der Aquivalenzrelation betrachtet ununterscheidbar. Die Relation α projiziert alle ” W¨ orter der deutschen Sprachen nur auf den Anfangsbuchstaben. So gesehen gibt es nur 26 W¨ orter. Die Relation ≡3 betrachtet f¨ ur alle Zahlen nur die Reste, die bei Division durch 3 bleiben, alle Zahlen mit demselben Rest werden zusammengefasst. So betrachtet gibt es nur 3 Zahlen: [0]≡3 , [1]≡3 und [2]≡3 , die man jetzt der einfacheren Notation wegen auch wieder mit 0, 1 bzw. 2 bezeichnen k¨ onnte. ¨ Satz 8.1. Sei R ⊆ A × A eine Aquivalenzrelation. Dann gilt: ¨ a) F¨ ur alle x ∈ A ist [x]R 6= ∅, d.h. Aquivalenzklassen sind niemals leer. ¨ b) F¨ ur alle y ∈ [x]R gilt [x]R = [y]R , d.h. jede Aquivalenzklasse ist unabh¨angig von ihrem Repr¨ asentanten. ¨ c) Falls (x, y) ∈ / R, dann ist [x]R ∩ [y]R = ∅, d.h. die Aquivalenzklassen nicht in Relation stehender Repr¨ asentanten sind disjunkt. S ¨ ¨ d) A = x∈A [x]R , d.h. die Aquivalenzklassen bilden eine Uberdeckung von A. Beweis: a) Wegen der Reflexivit¨at von R gilt xRx f¨ ur alle x ∈ A und damit x ∈ [x]R f¨ ur alle x ∈ A.

8.5. UMKEHRRELATIONEN

91

b) Sei z ∈ [x]R , d.h. es ist xRz. Nach Voraussetzung ist y ∈ [x]R , also xRy, und damit, da R als ¨ Auivalenzrelation symmetrisch ist, gilt auch yRx. Da R transitiv ist, folgt, da yRx und xRz gilt, dass auch yRz gilt, d.h. es gilt z ∈ [y]R . Wir haben gezeigt, dass gilt: z ∈ [x]R ⇒ z ∈ [y]R und damit [x]R ⊆ [y]R . Sei z ∈ [y]R , d.h. es ist yRz. Nach Voraussetzung ist y ∈ [x]R , also xRy. Da R transitiv ist, folgt xRz, d.h. es gilt z ∈ [x]R . Wir haben gezeigt, dass gilt: z ∈ [y]R ⇒ z ∈ [x]R und damit [y]R ⊆ [x]R . Insgesamt folgt die Behauptung [x]R = [y]R . c) Wir nehmen an, dass [x]R ∩ [y]R 6= ∅. Es gibt also mindestens ein z ∈ [x]R ∩ [y]R , d.h. es ist z ∈ [x]R und z ∈ [y]R . Es folgt, dass xRz und yRz, und wegen Symmetrie von R gilt xRz und zRy, und wegen Transitivit¨ at gilt dann xRy. Dies ist ein Widerspruch zur Voraussetzung (x, y) ∈ / R, womit unsere Annahme falsch ist. S S d) Sei z ∈ A, S dann ist z ∈ [z]R und damit z ∈ x∈A [x]R . Also ist A ⊆ x∈A [x]R . Sei z ∈ x∈A [x]RS . Dann gibt es ein x ∈ A mit z ∈ [x]R . Da [x]R ⊆ A f¨ ur jedes x ∈ A, folgt, dass z ∈ A. Also gilt x∈A [x]R ⊆ A S Insgesamt haben wir gezeigt: A = x∈A [x]R . 2 ¨ Die Aussagen c) und d) des Satzes besagen, dass eine Aquivalenzrelation Ru ¨ber der Grundmenge ¨ A eine Partition (siehe Definition 5.4 auf Seite 65) dieser Menge in die Aquivalenzklassen von R ¨ induziert. Die n¨ achste Folgerung bsagt in ihren Aussagen a) und b), dass Aquivalenzrelationen und Partitionen ¨ aquivalente Zerlegungskonzepte sind. ¨ Folgerung 8.2. a) Jede Aquivalenzrelation R ⊆ A × A legt eine Partition von A fest. ¨ b) Jede Partition von A definiert eine Aquivalenzrelation auf A. c) Die identische Relation idA ⊆ A × A definiert durch x idA y genau dann, wenn x = y, legt Identische ¨ die feinste“ Partition von A fest, denn jedes Element bildet genau eine Aquivalenzklasse: Es ist Relation ” Feinste [x]R = { x } f¨ ur alle x ∈ A. Partiton

d) Die Relation R = A × A legt die gr¨obste“ Partition auf A fest, denn es gibt genau eine Gr¨obste ” ¨ Aquivalenzklasse: Es ist [x]R = A f¨ ur alle x ∈ A. 2 Partiton ¨ Ubung 8.5. Beweisen Sie Folgerung 8.2!

2

Beispiel 8.9. a) Die Relation α aus Beispiel 5.4 b) auf Seite 65 partitioniert die Menge D der W¨ orter der deutschen Sprache in 26 disjunkte W¨ortermengen nach dem ersten Buchstaben, wie es in der Regel in W¨ orterb¨ uchern vorzufinden ist (siehe auch Beispiel 8.8 a) auf Seite 90). ¨ b) Die Aquivalenzklassen [0]≡3 , [1]≡3 und [2]≡3 der Relation ≡3 (siehe auch Beispiele 8.7 b) auf Seite 89 bzw. 8.8 b) auf Seite 90) sind disjunkt, und sie u ¨berdecken die Grundmenge Z: Z = [0]≡3 ∪ [1]≡3 ∪ [2]≡3 2

8.5

Umkehrrelationen

Definition 8.8. Seien A und B zwei Mengen. F¨ ur die Relation R ⊆ A × B heißt die Relation Umkehrrelation

92

KAPITEL 8. RELATIONEN

R−1 ⊆ B × A definiert durch yR−1 x genau dann, wenn xRy 2

die Umkehrrelation zu R.

Folgerung 8.3. a) Die Umkehrrelation R−1 zu einer Relation R ⊆ A × B enth¨alt genau die umgedrehten“ Paare von R: ” R−1 = {(y, x) ∈ B × A | (x, y) ∈ R} ¨ ¨ b) Ist R eine Aquivalenzrelation u ¨ber der Grundmenge A, dann ist auch R−1 eine Aquivalenzrelation u 2 ¨ber A. ¨ c) Ist R ⊆ A × A eine Aquivalenzrelation, dann gilt R = R−1 . ¨ Ubung 8.6. Beweisen Sie diese Folgerungen!

8.6 Komposition

2

Komposition von Relationen

Definition 8.9. Seien A, B und C Mengen sowie R1 ⊆ A × B und R2 ⊆ B × C Relationen. Dann heißt die Relation R2 ◦ R1 ⊆ A × C definiert durch R2 ◦ R1 = { (x, z) ∈ A × C | ∃y ∈ B : xR1 y ∧ yR2 z } 2

die Komposition von R1 und R2 .

Beispiel 8.10. Es seien die Relationen R1 , R2 ⊆ N × N definiert durch xR1 y genau dann, wenn y = 2x, sowie xR2 y genau dann, wenn y = 3x, gegeben. Es gilt also R1 = { (1, 2), (2, 4), (3, 6), . . . } R2 = { (1, 3), (2, 6), (3, 9), . . . } Die Komposition von R1 und R2 ergibt R2 ◦ R1 = { (1, 6), (2, 12), (3, 18), . . . } d.h. xR2 ◦ R1 y genau dann, wenn y = 6x. Es gilt n¨amlich aR2 ◦ R1 b genau dann, wenn es ein c gibt mit aR1 c und cR2 b, d.h. wenn es ein c gibt mit c = 2a bzw. mit b = 3c, und hieraus folgt, dass b = 6a ist. 2 Der folgende Satz begr¨ undet die Berechtigung des Begriffes Umkehrrelation“. ” Satz 8.2. Seien A und B Mengen und R ⊆ A × B. Dann gilt R−1 ◦ R = idA R ◦ R−1 = idB

¨ Ubung 8.7. Beweisen Sie Satz 8.2!

2

Der folgende Satz besagt, wie die Umkehrung einer Kompositon von Relationen berechnet wird.

¨ 8.7. REFLEXIV-TRANSITIVE HULLEN

93

Satz 8.3. Seien A, B und C Mengen sowie R ⊆ A × B und S ⊆ B × C. Dann gilt: (S ◦ R)−1 = R−1 ◦ S −1

2

¨ Ubung 8.8. Beweisen Sie Satz 8.3!

8.7

Reflexiv-transitive Hu ¨ llen

Wir betrachten jetzt fortgesetzte Kompositionen einer Relation R ⊆ A × A. Definition 8.10. Sei A eine Menge und R ⊆ A × A eine zweistellige Relation u ur R setzen ¨ber A. F¨ wir fest: (i) R0 = idA = {(x, x) | x ∈ A} (ii) R1 = R (iii) Rn = Rn−1 ◦ R, n ≥ 1 (iv) R∗ = R0 ∪ R1 ∪ R2 ∪ . . . =

S

i≥0

Ri

(v) R+ = R∗ − R0 R∗ heißt die reflexiv-transitive H¨ ulle von R, und R+ ist die transitive H¨ ulle von R.

2 Reflexivtransitive H¨ ulle Transitive H¨ ulle

Beispiel 8.11. Sei R ⊆ N × N definiert durch: xRy genau dann, wenn y = 2x. Es gilt (i) R0 = { (1, 1), (2, 2), (3, 3), . . . } = { (x, y) | x = y } (ii) R1 = R = { (1, 2), (2, 4), (3, 6), . . . } = { (x, y) | y = 2x } (iii) Fortgesetzte Komposition von R: R2 R3 R4

= R◦R = R2 ◦ R = R3 ◦ R .. .

= { (1, 4), (2, 8), (3, 12), . . . } = { (1, 8), (2, 16), (3, 24), . . . } = { (1, 16), (2, 32), (3, 48), . . . } .. .

= { (x, y) | y = 4x } = { (x, y) | y = 8x } = { (x, y) | y = 16x } .. .

F¨ ur n ∈ N0 ergibt sich: Rn = Rn−1 ◦ R = { (1, 2n · 1), (2, 2n · 2), (3, 2n · 3), . . . } = { (x, y) | y = 2n x } (iv) R∗ = { (x, y) | y = 2n x, n ∈ N0 } (v) R+ = { (x, y) | y = 2n x, n ∈ N }

2

94

KAPITEL 8. RELATIONEN

Kapitel 9

Funktionen In diesem Kapitel betrachten wir Relationen R ⊆ A × B, bei denen einem Element aus der Ausgangsmenge A h¨ ochstens ein Element aus der Zielmenge B zugeordnet sein darf. Solche Relationen werden Funktionen genannt. Nach dem Durcharbeiten des Kapitels sollten Sie Lernziele • feststellen k¨ onnen, ob eine Relation eine Funktion ist, • Definitions- und Wertebereiche von Funktionen bestimmen k¨onnen, • feststellen k¨ onnen, ob eine Funktion total, injektiv, surjektiv, bijektiv ist, • den Begriff Pr¨ adikat erkl¨ aren k¨ onnen.

9.1

Begriff der Funktion

Definition 9.1. Seien A und B Mengen. Die Relation R ⊆ A × B heißt Funktion, falls R recht- Rechtseindeutige Relation seindeutig ist, d.h. falls gilt: Funktion xRy1 ∧ xRy2 ⇒ y1 = y2 In einer rechtseindeutigen Relation darf ein x aus der Ausgangsmenge A also h¨ochstens mit einem y der Zielmenge B in Relation stehen. 2 Beispiel 9.1. a) Die Relation R ⊆ N × N definiert durch xRy genau dann, wenn Funktion. Es gilt z.B. 2R4 und 2R6, R ist also nicht rechtseindeutig.

y x

∈ N ist keine

b) Die Relation sqr ⊆ N × N definiert durch x sqr y genau dann, wenn y = x2 , ist rechtseindeutig. Die Umkehrrelation sqr −1 ist ebenfalls rechtseindeutig. c) Die Relation sqr ⊆ Z × Z definiert durch x sqr y genau dann, wenn y = x2 , ist rechtseindeutig. Die Umkehrrelation sqr −1 ist in diesem Fall nicht rechtseindeutig, denn es gilt z.B. 4 sqr −1 2 und 4 sqr −1 − 2, aber 2 6= −2. 2 An diesen Beispielen k¨ onnen wir sehen, dass die Rechtseindeutigkeit einer Relation nicht alleine von der Vorschrift abh¨ angt, die festlegt, welche Objekte in Beziehung stehen, sondern auch von der Wahl der Ausgangs- oder der Zielmenge. Aus diesem Grund f¨ uhren wir den Begriff der Abbildung ein, der außer der Funktionsvorschrift die Wahl der Mengen mit einbezieht. 95

96 Abbildung

KAPITEL 9. FUNKTIONEN

Definition 9.2. Seien A und B Mengen. Eine Abbildung φ = (A, B, f ) besteht aus den beiden Mengen A und B sowie aus der Funktion f . Bei Funktionen schreiben wir in der Regel nicht f ⊆ A × B wie bei Relationen, sondern f : A → B, und anstelle von xf y oder von (x, y) ∈ f wie bei Relationen, notieren wir in der Regel y = f (x). 2 √ Beispiel 9.2. Durch die Festlegung ist nun gekl¨art, dass φ1 = (N, N, sqrt) mit y = sqrt(x) = x √ eine Abbildung ist, da auf N rechtseindeutig ist, w¨ahrend φ2 = (Z, Z, sqrt) mit x sqrt y genau 2 dann, wenn y = x, keine Abbildung ist. 2 Nachdem wir den Unterschied zwischen den Begriffen Abbildung und Funktion gekl¨art haben, werden wir im Folgenden beide Begriffe – wie durchaus in der Literatur u ¨blich – synonym verwenden.

9.2

Eigenschaften von Funktionen

F¨ ur Abbildungen f : A → B legen wir jetzt noch ein paar Begriffe und Schreibweisen fest: Definition 9.3. Es sei f : A → B eine Funktion. Ausgangsmenge Zielmenge

(1) A heißt Ausgangsmenge von f , und B heißt Zielmenge von f

(2) Definitionsbereich Argument

D(f ) = { x ∈ A | ∃y ∈ B : y = f (x) }, die Menge aller Elemente der Ausgangsmenge, f¨ ur die f tats¨ achlich definiert ist, heißt Definitionsbereich von f . Die Elemente von D(f ) heißen die Argumente von f .

Wertebereich Wert

(3) W (f ) = { y ∈ B | ∃x ∈ A : y = f (x) }, die Menge aller Elemente der Zielmenge, denen tats¨ achlich Argumente von f zugeordnet werden, heißt Wertebereich von f . Die Elemente von W (f ) heißen Werte von f .

Totale Funktion

(4) f heißt total, falls f f¨ ur jedes Element der Ausgangsmenge definiert ist, d.h. falls D(f ) = A ist.

Surjektive Funktion

(5) f heißt surjektiv, falls jedes Element der Zielmenge als Wert von f vorkommt, d.h. falls W (f ) = B ist.

Linkseindeutige, injektive Funktion

(6) f heißt linkseindeutig oder injektiv, falls jeder Wert von f nur ein Argument hat, d.h. falls gilt: f (x1 ) = y ∧ f (x2 ) = y ⇒ x1 = x2 .

Eineindeutige, bijektive Funktion

(7) f heißt bijektiv oder eineindeutig, falls f total, injektiv und surjektiv ist.

2

¨ Ubung 9.1. Zeigen Sie, dass eine Funktion f : A → B injektiv ist genau dann, wenn gilt: x1 6= x2 ⇒ f (x1 ) 6= f (x2 ). 2 Der folgende Satz beantwortet die Frage, unter welcher Voraussetzung die Umkehrrelation f −1 einer Funktion f ebenfalls eine Funktion ist.

Umkehrfunktion

Satz 9.1. a) Sei f : A → B eine Funktion, dann ist f −1 : B → A eine Funktion, falls f injektiv ist. b) Ist die Funktion f : A → B bijektiv, dann ist auch f −1 : B → A bijektiv.

2

n-stellige Operation

¨ 9.3. PRADIKATE

97

¨ Ubung 9.2. Beweisen Sie Satz 9.1!.

2

n-stellige Funktionen, sind Funktionen, bei denen die Ausgangsmenge ein n-stelliges kartesisches Produkt ist. Funktionen dieser Art heißen auch n-stellige Operationen, Operatoren oder Verkn¨ upfungen. Sie haben die Gestalt f : A1 × . . . × An → B, n ≥ 0 In f (x1 , . . . , xn ) = y heißen die xi ∈ Ai , 1 ≤ i ≤ n, Operanden von f . Die Begriffe der Definition Operand 9.3 werden analog auf n-stellige Operatoren u ¨bertragen. 0-stellige Funktionen entsprechen Konstanten. Betrachten wir z.B. die 0-stellige Funktion f :→ N Konstante definiert durch f () = 17, dann k¨ onnen wir diese Funktion mit der Zahl 17 identifizieren, d.h. wir Funktion h¨ atten f auch 17 nennen k¨ onnen: 17 :→ N definiert durch 17() = 17. Bei Rechenstrukturen, wie z.B. bei Booleschen Algebren (siehe 6.1 auf Seite 67) treten u ¨berwiegend ein- oder zweistellige Operationen auf, bei denen zudem alle Ausgangsmengen und die Zielmenge identisch sind, d.h. es handelt sich um Funktionen der Art f : A → A bzw. f : A × A → A. Beispiele sind arithmetische Operationen wie +, −, · usw., die Zahlen miteinander verkn¨ upfen und deren Ergebnis wieder eine Zahl ist, oder aussagenlogische Junktoren wie ¬, ∨ und ∧, die Wahrheitswerte zu Wahrheitswerten verkn¨ upfen, oder die Mengenverkn¨ upfungen ∪, ∩ und C, die Teilmengen einer Menge zu Teilmengen dieser Menge verkn¨ upfen. Bei den Notationen ein- oder zweistelliger Verkn¨ upfungen der Art f : A → A bzw. der Art f : A × A → A unterscheidet man generell drei Schreibweisen: 1. Infixschreibweise: Der Operator steht zwischen den Operanden: xf y = z, z.B. x + y = z bei Infixschreibweise arithmetischen Verkn¨ upfungen von Zahlen. 2. Pr¨ afixschreibweise: Der Operator steht vor dem Argument: f x = y, z.B. beim Logarithmus Pr¨afixschreibweise log x = y. 3. Postfixschreibweise: Der Operator steht hinter dem Argument: xf = y, z.B. x! = 1 · 2 · . . . · x Postfixschreibweise (sprich: x Fakult¨ at“). ” Dar¨ uber hinaus gibt es noch Schreibweisen, die nicht unmittelbar einer dieser drei aufgelisteten √ zugeordnet werden k¨ onnen, wie z.B. f (x, y) = xy , f (x, y) = xy oder f (x) = x. Wie Relationen k¨ onnen Funktionen komponiert werden. F¨ ur die n-fache Komposition einer Funktion f mit sich selbst schreiben wir wie bei Relationen f n und es gilt auch hier f 0 = id.

9.3

Pr¨ adikate

n-stellige Funktionen

Pr¨ adikat

f : A1 × . . . An → B, n ≥ 0 mit der Zielmenge B = { 0, 1 } heißen auch Pr¨ adikate. Beispiel 9.3. a) Die Funktion d : N × N × N → B definiert durch ( 1, x + y = z d(x, y, z) = 0, sonst

98

KAPITEL 9. FUNKTIONEN

ist ein Pr¨ adikat, welches testet, ob die Summe von x und y gleich z ist. b) F¨ ur das dreistellige Pr¨ adikat ∆ : N0 × N0 × N0 → B definiert durch ( 1, falls x, y, z Seitenl¨angen eines Dreiecks sein k¨onnen ∆(x, y, z) = 0, sonst 2

gilt z.B. ∆(3, 4, 5) = 1 und ∆(3, 1, 1) = 0. Es sind prinzipiell zwei 0-stellige Pr¨adikate m¨oglich: true : →

{ 0, 1 }

mit

true()

=

1

: →

{ 0, 1 }

mit

false()

=

0

sowie false

welche als Wahrheitswerte interpretiert werden k¨onnen. Die Festlegung der Funktionen true und false k¨ onnte nat¨ urlich auch umgekehrt erfolgen, was aber un¨ ublich ist. Im Kapitel 2.3 haben wir true mit 1 und false mit 0 benannt. Jedes total definierte n-stellige Pr¨adikat f : A1 × . . . An → B, n ≥ 1, legt eine n-stellige Relation Rf ⊆ A1 × . . . An wie folgt fest: Rf = { (x1 , . . . , xn ) ∈ A1 × . . . An | f (x1 , . . . , xn ) = 1 } Auf diese Weise erfolgt in Kapitel 3.3 die Interpretation von Pr¨adikatensymbolen. Einem n-stelligen Pr¨ adikatensymbol P n wird als Bedeutung eine n-stellige Relation RP n zugeordnet, I ∗ (P n ) = RP n , und es gilt ( 1, falls (I ∗ (x1 ), . . . , I ∗ (xn )) ∈ RP n ∗ n I (P )(x1 . . . , xn ) = 0, sonst L¨ osungsmenge eines Pr¨ adikats

Rf = { (x1 , . . . , xn ) ∈ A1 × . . . An | f (x1 , . . . , xn ) = 1 } heißt auch die L¨ osungsmenge von f . Dabei schreiben wir anstelle von f (x1 , . . . , xn ) = 1 nur f (x1 , . . . , xn ) um auszudr¨ ucken, dass das Pr¨ adikat f auf das Argument (x1 , . . . , xn ) zutrifft. Bei der beschreibenden Darstellung von Mengen haben wir das bisher auch so praktiziert: M = { (x1 , . . . , xn | P (x1 , . . . , xn ) } (siehe Festlegung (1.1) auf Seite 9 in Kapitel 1.2). Es gilt M = RP .

Kapitel 10

¨ Zusammenfassung und Ubungen 10.1

Zusammenfassung

Relationen setzen Elemente von Mengen in Beziehung. Wichtige Eigenschaften von Relationen sind Refexivit¨ at, Symmetrie, Antisymmetrie und Transitivit¨at. Mithilfe von reflexiven, antisymmetrischen und transitiven Relationen werden Mengen geordnet. Geordnete Mengen M werden im Allgemeinen mit (M, ≤) bezeichnet. Gilt f¨ ur a, b ∈ M a ≤ b oder b ≤ a, dann heißt diese Ordnung total. Gibt es zu a, b ∈ M mit a ≤ b und a 6= b ein c ∈ M mit a 6= c, b 6= c und a ≤ c ≤ b, dann heißt die Ordnung dicht. ¨ ¨ Relationen, die reflexiv, symmetrisch und transitiv sind, heißen Aquivalenzrelationen. Eine Aqui¨ valenzrelation partitioniert die Grundmenge vollst¨andig in disjunkte Aquivalenzklassen. Die Anzahl der Klassen heißt Index der Relation. Die Identit¨at auf einer Grundmenge A induziert die feinste Partition von A, das kartesische Produkt A×A legt die gr¨obste Partition von A fest. Durch die Bril” ¨ ¨ le“ einer Aquivalenzrelation betrachtet sind die Elemente einer Aquivalenzklasse ununterscheidbar – jedes Element einer Klasse kann als ihr Repr¨asentant gew¨ahlt werden. Werden alle durch eine Relation R (reflexiv und) transitiv in Beziehung stehenden Elemente zu einer Relation zusammengefasst, entsteht die so genannte (reflexiv-) transitive H¨ ulle (R∗ ) R+ von R. Bei rechtseindeutigen Relationen steht ein Element der Ausgangsmenge mit h¨ochstens einem Element der Zielmenge in Beziehung. Solche Beziehungen werden funktional genannt. Der Definitionsbereich einer Funktion enth¨ alt alle Elemente der Ausgangsmenge, denen die Funktion einen Wert zuweist. Diese Elemente heißen auch Argumente der Funktion. Der Wertebereich einer Funktion enth¨ alt alle Elemente der Zielmenge, die tats¨achlich als Werte der Funktion auftreten, d.h. zu denen es mindestens ein Argument gibt. Ist der Definitionsbereich gleich der Ausgangsmenge, ist also die Funktion auf allen Elementen der Ausgangsmenge definiert, dann heißt die Funktion total. Wenn alle Elemente der Zielmenge als Werte auftreten, d.h. wenn der Wertebereich gleich der Zielmenge ist, dann heißt die Funktion surjektiv. Ist die Funktion linkseindeutig, d.h. hat jeder Wert der Funktion genau ein Argument, dann heißt sie injektiv. Die Umkehrrelation einer linkseindeutigen, also injektiven Funktion ist rechtseindeutig, also wieder eine Funktion. Funktionen, die total, surjektiv und injektiv sind, heißen eineindeutig oder bijektiv. 99

¨ KAPITEL 10. ZUSAMMENFASSUNG UND UBUNGEN

100

Pr¨ adikate sind Funktionen, welche den Argumenten boolesche Werte zuweisen. Sie werden z.B. f¨ ur die beschreibende Darstellung von Mengen verwendet.

10.2

¨ Ubungen

1. Sei A = B = { x ∈ Z | −3 ≤ x ≤ 3 }. Geben Sie die folgenden Relationen u ¨ber A × B in aufz¨ ahlender Form an: (1) R1 = { (x, y) | y < 2x + 2 } (2) R2 = { (x, y) | y < x + 1 } (3) R3 = { (x, y) | 2x + y > 1 } ∪ { (x, y) | x = y } (4) R4 = { (x, y) | 2x + y > 1 } ∩ { (x, y) | x = y } (5) R5 = { (x, y) | 3 − x2 ≤ y } ∩ { (x, y) | x2 ≥ y + 3 } Welche der Relationen sind Funktionen? 2. Sei D die Menge der W¨ orter der deutschen Sprache. Die Relation α ⊆ D × D sei definiert durch: x α y genau dann, wenn x und y denselben Anfangsbuchstaben haben. Zeigen Sie, dass α eine reflexive, symmetrische und transitive Relation ist! 3. Sei die Relation suc ⊆ N0 × N0 definiert durch: (x, y) ∈ suc genau dann, wenn y = x + 1. Ist ¨ suc eine Ordnung? Ist suc eine Aquivalenzrelation? Beweisen Sie Ihre Anworten! 4. Sei A eine endliche Menge. Die Relation R sei u ¨ber der Grundmenge A definiert durch: ¨ R = A × A. Ist R eine Ordnung? Ist R eine Aquivalenzrelation? Beweisen Sie Ihre Aussagen! ¨ ¨ Falls R eine Aquivalenzrelation ist, dann geben Sie ihre Aquivalenzklassen an! 5. Sei A eine endliche Menge. Die identische Relation idA u ¨ber der Grundmenge A ist defi¨ niert durch: idA = { (x, x) | x ∈ A }. Ist idA eine Ordnung? Ist idA eine Aquivalenzrelation? ¨ ¨ Beweisen Sie Ihre Aussagen! Falls idA eine Aquivalenzrelation ist, dann geben Sie ihre Aquivalenzklassen an! ¨ 6. Uberlegen Sie, f¨ ur welche Mengen M die Ordnung (P(M ), ⊆) total ist! 7. Es sei m ∈ N. Zeigen Sie, dass die Relation ≡m ⊆ Z × Z definiert durch x ≡m y genau dann, wenn

x−y ∈Z m

¨ ¨ eine Aquivalenzrelation ist! Geben Sie die Aquivalenzklassen und den Index von ≡m an! 8. Beweisen Sie Folgerung 8.2 a) und b) auf Seite 91! 9. Beweisen Sie Folgerung 8.3 auf Seite 92! 10. Beweisen Sie Satz 8.2 auf Seite 92! 11. Beweisen Sie Satz 8.3 auf Seite 93!

¨ 10.2. UBUNGEN

101

12. Aus den drei Eigenschaften surjektiv, injektiv und total kann man sechs Kombinationen bilden. Geben Sie Funktionen an, die jeweils genau eine solche Kombination von Eigenschaften erf¨ ullt! 13. Zeigen Sie, dass eine Funktion f : A → B injektiv ist genau dann, wenn gilt: x 6= y ⇒ f (x) 6= f (y)! 14. Beweisen Sie Satz 9.1 auf Seite 96! 15. Geben Sie f¨ ur die Funktion f : R → R definiert durch f (x) =

1 x

D(f ) und W (f ) an! Ist f total, surjektiv, injektiv? Geben Sie f −1 an! Ist f −1 eine Funktion? 16. Geben Sie f¨ ur die Funktion f : R → R definiert durch f (x) =

1 x2

D(f ) und W (f ) an! Ist f total, surjektiv, injektiv? Geben Sie f −1 an! Ist f −1 eine Funktion?

102

¨ KAPITEL 10. ZUSAMMENFASSUNG UND UBUNGEN

Teil III

Induktion und Rekursion

103

105 Induktion und Rekursion sind elementare Prinzipien zum Einen f¨ ur die Definition von Begriffen und zum Anderen f¨ ur das L¨ osen von Problemen. Wir haben bereits in Teil I dieses Prinzip mehrfach bei Definitionen angewendet, etwa bei der Definition der Menge V der aussagenlogischen Variablen und bei der Festlegung der Syntax der aussagenlogischen Formeln in Kapitel 2.2, und die Definition der Semantik dieser Formeln folgt deren rekursiver Definition (siehe Kapitel 2.3). Wir werden in diesem Teil weitere f¨ ur die Informatik wichtige Begriffe mithilfe von rekursiven Definitionen einf¨ uhren. Rekursion ist aber auch eine sehr wichtige (und elegante“) Probleml¨osemethode. Deren grund” legendes Prinzip ist, dass die L¨ osung eines Problems auf die L¨osung einfacherer, kleinerer Probleme zur¨ uck gef¨ uhrt wird. Hierzu werden wir in diesem Teil grundlegende Ans¨atze kennen lernen und Beispiele dazu betrachten. Beginnen werden wir mit Vollst¨ andiger Induktion, einer Beweismethode, mit der gezeigt werden kann, dass ein Pr¨ adikat auf die Menge der nat¨ urlichen Zahlen zutrifft.

106

Kapitel 11

Die Menge der natu ¨ rlichen Zahlen Die nat¨ urlichen Zahlen sind von Gott gegeben, alles andere hat der Mensch gemacht“. Diese ”¨ Außerung wird Ernst Eduard Kummer zugeschrieben.1 Diese Position werden wir auch einnehmen. In diesem Kapitel f¨ uhren wir die Menge der nat¨ urlichen Zahlen und das Rechnen mit ihnen quasi als gegeben ein und deuten dabei nur an, wie diese auch axiomatisch eingef¨ uhrt werden k¨onnten. Mit den Problematiken, die dabei auftreten k¨onnen, wollen wir uns aber nicht weiter belasten“, ” weil das f¨ ur die folgenden Betrachtungen keine Rolle spielt. So betrachten wir also zun¨ achst die nat¨ urlichen Zahlen als gegeben und listen die bekannten Rechenregeln f¨ ur nat¨ urliche Zahlen auf. Nat¨ urliche Zahlen sind die Zahlen, die naturgem¨aß zum Z¨ ahlen verwendet werden. So liegt es also nahe, die Menge der nat¨ urlichen Zahlen als Referenzmenge f¨ ur die Abz¨ ahlbarkeit von Mengen zu betrachten. Nach dem Durcharbeiten dieses Kapitels sollten Sie • die axiomatische Einf¨ uhrung der Menge der nat¨ urlichen Zahlen verstehen, • die Rechenregeln f¨ ur nat¨ urliche Zahlen kennen, • das Summationssymbol kennen und anwenden k¨onnen, • den Begriff der Abz¨ ahlbarkeit verstehen und anwenden k¨onnen.

11.1

Einfu ¨ hrung der Menge der natu ¨ rlichen Zahlen

Man kann Zahlen, und so sind diese vielleicht auch in der Menschheitsgeschichte entstanden, als ¨ Abstraktionen von Mengen mit derselben Anzahl von Elementen betrachten. Sieben Apfel, sieben Birnen, sieben Ziegen bilden Mengen mit 7 Elementen, welches man z.B. durch sieben Kerben in einem Holzstab oder sieben Striche im Sand oder durch die Symbole 7 oder VII notieren kann. 1 Ernst Eduard Kummer (1810 - 1893) lieferte fundamentale Beitr¨ age zu vielen Gebieten der Mathematik, insbesondere zur Zahlentheorie und zur Funktionentheorie. Zusammen mit Leopold Kronecker (1823 - 1891, fundamentale Beitr¨ ae zur Algebra, Zahlentheorie, Analysis und Funktionentheorie) und Karl Weierstraß (1812 - 1897, fundamentale Beitr¨ age zur Analysis und Funktionentheoriemachte, zur Theorie elliptischer Funktionen, zur Differentialgeometrie und zur Variationsrechnung) machte er Berlin zum Ende des 19. Jahrhunderts zu einem Weltzentrum der Mathematik.

107

Lernziele

¨ KAPITEL 11. DIE MENGE DER NATURLICHEN ZAHLEN

108

Was braucht man nun wirklich“ zum Z¨ahlen? Nun, wir brauchen eine unendliche Menge, deren ” Elemente zum Z¨ ahlen verwendet werden k¨onnen (Strichfolgen, Zahlensymbole, . . .). Dann brauchen wir eine Zahl, bei der das Z¨ ahlen beginnt, eine kleinste“ Zahl, und wir m¨ ussen festlegen, dass ” verschiedene Zahlensymbole auch verschiedene Anzahlen angeben. Z¨ ahlstruktur

Diese grundlegenden Eigenschaften des Z¨ahlens wollen wir mathematisch mithilfe einer Z¨ ahlstruktur festlegen: (S, 0, s) Dabei sei S eine nicht leere Menge, 0 ∈ S ein ausgezeichnetes Element, welches wir Null nennen, sowie s : S → S eine Funktion, die wir Nachfolgerfunktion nennen. Die Z¨ahlstruktur soll dabei folgende Axiome erf¨ ullen: (P1) F¨ ur alle x ∈ S gilt: s(x) 6= 0, d.h. 0 kann kein Nachfolger einer Zahl sein. Damit wird 0 quasi als kleinste Zahl festgelegt. (P2) s ist injektiv, d.h. f¨ ur alle x, y ∈ S gilt: Ist x 6= y, dann ist auch s(x) 6= s(y), verschiedene Zahlen haben verschiedene Nachfolger. Das bedeutet allgemeiner, dass verschiedene Zahlen auch verschiedene Anzahlen bedeuten.

Induktionsaxiom

(P3) F¨ ur jede Teilmenge M von S gilt: Ist 0 ∈ M und folgt daraus, dass x ∈ M ist, auch, dass s(x) ∈ M ist, dann gilt M = S. Dieses ist das sogenannte Induktionsaxiom.

Dedekindtripel Diese Axiome gehen auf Dirichlet2 und Peano3 zur¨ uck. Deswegen wird (S, 0, s) auch Dedekindtripel, Peanound die Axiome P1 - 3 geh¨ oren auch zu den Peano-Axiomen zur Definition der Menge der nat¨ urlichen Axiome

Zahlen.

Folgende konkrete Strukturen erf¨ ullen diese Axiome, sind also Beispiele f¨ ur Z¨ahlstrukturen: Beispiel 11.1. a) (S1 , 01 , s1 ) mit S1 = {ε, |, ||, |||, . . . , }, 01 = ε, die leere Strichfolge, und s1 (x) = x|. 2 Isomorphie

b) (S2 , 02 , s2 ) mit S2 = {∅, {∅}, {∅, {∅}}, {∅, {∅}, {∅, {∅}}}, . . .} mit 02 = ∅ und s2 (x) = x ∪ {x}.

Wir wollen zwei Peano-Strukturen (S1 , 01 , s1 ) und (S2 , 02 , s2 ) strukturgleich oder isomorph nennen, falls es eine bijektive Abbildung ϕ : S1 → S2 gibt, f¨ ur die ϕ(s1 (x)) = s2 (ϕ(x)) f¨ ur alle x ∈ S1

(11.1)

gilt. Die Abbildung ϕ ordnet also jedem Element der einen genau ein Element der anderen Struktur zu, und diese Zuordnung ist vertr¨aglich mit den Nachfolgerfunktionen in beiden Strukturen. Das bedeutet, dass, wenn x ∈ S1 dem Element y ∈ S2 zugeordnet wird, dann werden auch ihre Nachfolger s1 (x) ∈ S1 und s2 (y) ∈ S2 einander zugeordnet. Sind S1 und S2 isomorph, so schreiben wir: (S1 , 01 , s1 ) ∼ = (S2 , 02 , s2 ). 2 Johann Peter Gustav Lejeune-Dirichlet (1805 - 1859), deutscher Mathematiker, lieferte zu vielen Gebieten der Mathematik (Theorie algebraischer Zahlen, Randwertprobleme, Variationsrechnung, geometrische Funktionentheorie, Theorie unendlicher Reihen, Fourier-Reihen) fundamentale Beitr¨ age. 3 Giuseppe Peano (1858 - 1932), italienischer Mathematiker und Logiker, besch¨ aftigte sich mit axiomatische Ans¨ atzen zur Beschreibung von Mengen und Strukturen.

¨ ¨ 11.1. EINFUHRUNG DER MENGE DER NATURLICHEN ZAHLEN

109

Beispiel 11.2. Wir zeigen, dass die beiden Z¨ahlstrukturen aus Beispiel 11.1 isomorph sind. Dazu legen wir die Abbildung ϕ : S1 → S2 wie folgt rekursiv fest: ϕ(ε) = ∅ ϕ(x|) = ϕ(x) ∪ {ϕ(x)} Wir berechnen mithilfe dieser rekursiven Definition z.B. ϕ(|||) schrittweise: ϕ(|) = ϕ(ε) ∪ {ϕ(ε)} = ∅ ∪ {∅} = {∅} ϕ(||) = ϕ(|) ∪ {ϕ(|)} = {∅} ∪ {{∅}} = {∅, {∅}} ϕ(|||) = ϕ(||) ∪ {ϕ(||)} = {∅, {∅}} ∪ {{∅, {∅}}} = {∅, {∅}, {∅, {∅}}} Diese Abbildung ϕ ist bijektiv und sie erf¨ ullt die Bedingung (11.1): ϕ(s1 (x)) = ϕ(x|) = ϕ(x) ∪ {ϕ(x)} = s2 (ϕ(x)) Es gilt also: (S1 , ε, s1 ) ∼ = (S2 , ∅, s2 ).

2

¨ Durch Verallgemeinerung der Uberlegungen in obigem Beispiel kann man beweisen, dass alle Z¨ ahlstrukturen isomorph zueinander sind: Zu je zwei Strukturen, die die Peano-Axiome erf¨ ullen, l¨ asst sich eine bijektive Abbildung finden, die die Bedingung (11.1) erf¨ ullt. Außerdem gilt, dass diese Abbildung in jedem Fall die beiden Nullen einander zuordnet. Satz 11.1. F¨ ur alle Z¨ ahlstrukturen (S1 , 01 , s1 ) und (S2 , 02 , s2 ) gilt (S1 , 01 , s1 ) ∼ = (S2 , 02 , s2 ) und f¨ ur alle Isomorphismen ϕ zwischen diesen Strukturen gilt 2 ϕ(01 ) = 02 ¨ Ubung 11.1. Zeigen Sie, dass f¨ ur zwei isomorphe Z¨ahlstrukturen (S1 , 01 , s1 ) und (S2 , 02 , s2 ) und f¨ ur einen Isomorphismus ϕ zwischen diesen Strukturen ϕ(01 ) = 02 gelten muss! 2 Gem¨ aß Satz 11.1 sind also alle Z¨ ahlstrukturen bis auf die Benennung ihrer Elemente identisch. Wir k¨ onnen f¨ ur den t¨ aglichen Gebrauch also irgendeine Z¨ahlstruktur ausw¨ahlen. Da die Notation der Elemente der Z¨ ahlstrukturen in Beispiel 11.1 in Bezug auf ihr Hinschreiben, ihr Lesen oder in Bezug auf das Rechnen mit ihnen sehr umst¨andlich ist, stellt sich die Frage nach geeigneten Zahlensymbolen. Im Verlaufe der Geschichte hat es hier unterschiedliche Entwicklungen gegeben, wie z.B. die r¨ omischen Zahlen oder die arabischen Zahlen. Die arabischen Zahlen haben sich durchgesetzt, weil sie auf einem Stellenwertsystem basieren, woraus sich eine systematische Notation ergibt sowie einfache Verfahren zur Durchf¨ uhrung von Rechenoperationen.

110

¨ KAPITEL 11. DIE MENGE DER NATURLICHEN ZAHLEN

Wenn wir nun von der Struktur (S1 , ε, s1 ) im Beispiel 11.1 ausgehen und f¨ ur eine Folge von n Strichen das arabische Zahlensymbol f¨ ur n und den Nachfolger s(n) von n mit n + 1 notieren, erhalten wir die Menge der uns bekannten nat¨ urlichen Zahlen N0 = { 0, 1, 2, 3, . . . } als weitere Z¨ ahlstruktur (N0 , 0, s). Da man gelegentlich Aussagen u urlichen Zahlen ohne ¨ber alle nat¨ die Null machen m¨ ochte, f¨ uhren wir N als Symbol f¨ ur diese Menge ein: N = N0 − {0} = { 1, 2, 3, . . . } Addition und Multiplikation nat¨ urlicher Zahlen

Mithilfe der Nachfolgerfunktion s lassen sich nun die elementaren arithmetischen Operationen f¨ ur nat¨ urliche Zahlen, Addition und Multiplikation, rekursiv definieren (siehe auch Kapitel 13 und 14). (1) Wir f¨ uhren die Addition zweier Zahlen x und y auf die y-fache Addition der 1 zu x zur¨ uck: add : N0 × N0 → N0 definiert durch add(x, 0) = x add(x, s(y)) = s(add(x, y)) Mit dieser Berechnungsvorschrift ergibt sich z.B. add(2, 3) = add(2, s(2)) = s(add(2, 2)) = s(add(2, s(1))) = s(s(add(2, 1))) = s(s(add(2, s(0)))) = s(s(s(add(2, 0)))) = s(s(s(2))) = s(s(3)) = s(4) =5 (2) Mithilfe der Addition k¨ onnen wir nun die Multiplikation mult : N0 × N0 → N0 definieren: mult(x, 0) = 0 mult(x, s(y)) = add(mult(x, y), x) Die Multiplikation von x und y wird hier durch y-fache Addition von x mit sich selbst berechnet. (3) Analog k¨ onnen wir nun die Potenzfunktion mithilfe der Multiplikation definieren: exp : N0 × N0 → N0 mit exp(x, 0) = 1 exp(x, s(y)) = mult(exp(x, y), x) Die Potenzierung von x mit y wird hier durch y-fache Multiplikation von x mit sich selbst berechnet. In analoger Art und Weise k¨ onnen weitere arithmetische Operationen definiert werden, die letztendlich immer auf der Addition und damit auf der Addition der 1, d.h. auf der Nachfolgerfunktion s – also auf dem Z¨ ahlen – basieren. Und zu diesem Zweck, n¨amlich zum Z¨ahlen, haben wir die nat¨ urlichen Zahlen ja gerade eingef¨ uhrt.

Die Menge der nat¨ urlichen Zahlen

11.2. RECHENREGELN IN N0

111

¨ Ubung 11.2. a) Berechnen Sie mult(2, 3)! b) Berechnen Sie exp(2, 3)!

2

Im Folgenden schreiben wir x + y anstelle von add(x, y) und x · y oder xy anstelle von mult(x, y) sowie xy f¨ ur exp(x, y). Die nat¨ urlichen Zahlen sind abgeschlossen bez¨ uglich der Addition und Multiplikation. Das bedeutet, dass die Summe bzw. das Produkt zweier nat¨ urlicher Zahlen wieder eine nat¨ urliche Zahl ist. Die nat¨ urlichen Zahlen sind nicht abgeschlossen gegen¨ uber Subtraktion und Division, denn die Differenz bzw. der Quotient zweier nat¨ urlicher Zahlen muss keine nat¨ urliche Zahl sein.

11.2

Abgeschlossenheit von Addition und Multiplikation

Rechenregeln in N0

Mithilfe vollst¨ andiger Induktion und bereits bewiesener Eigenschaften kann man beweisen, dass f¨ ur beliebige Zahlen x, y, z ∈ N0 folgende bekannte Rechenregeln gelten: (A1) Assoziativgesetz der Addition: (x + y) + z = x + (y + z), d.h. bei der Addition von mehr Rechenregeln als zwei Zahlen kommt es nicht auf die Reihenfolge der Ausf¨ uhrung dieser Operation an. Deshalb k¨ onnen die Klammern auch weggelassen werden: x + y + z. (A2) Kommutativgesetz der Addition: x + y = y + x, d.h. das Ergebnis einer Addition ist unabh¨angig von der Reihenfolge der Operanden. (A3) Neutrales Element der Addition: x + 0 = 0 + x = x, d.h. die Addition mit 0 ver¨andert den anderen Operanden nicht. (M1) Assoziativgesetz der Multiplikation: (xy)z = x(yz). (M2) Kommutativgesetz der Multiplikation: xy = yx. (M3) Neutrales Element der Multiplikation: x·1 = 1·x = x, d.h. die Multiplikation mit 1 ver¨andert den anderen Operanden nicht. (D1) Distributivgesetz 1: x(y + z) = xy + xz. (D2) Distributivgesetz 2: (x + y)z = xz + yz. In gewissem Rahmen sind auch die Umkehroperationen Subtraktion und Division zur Addition bzw. zur Multiplikation f¨ ur nat¨ urliche Zahlen definiert: • Subtraktion: Gilt x + y = z, dann gilt x = z − y. x heißt dann auch die Differenz von z und ¨ sofort ableiten, dass auch y. Mithilfe des Kommutativgesetzes (A2) kann man im Ubrigen y = z − x gelten muss. • Division: Gilt xy = z, dann gilt x = z : y. x heißt dann auch der Quotient von z und y. Anstelle von z : y notieren wir auch z/y oder yz . Die Relation ≤ ⊆ N0 × N0 definiert durch x ≤ y genau dann, wenn eine Zahl d ∈ N0 existiert mit x + d = y legt auf N0 eine totale Ordnung fest (siehe Kapitel 8.3). F¨ ur diese Ordnung gelten die beiden folgenden Vertr¨ aglichkeitsregeln, auch Monotonieregeln genannt:

¨ KAPITEL 11. DIE MENGE DER NATURLICHEN ZAHLEN

112

(O1) sind x, y, z ∈ N0 und ist x ≤ y, dann gilt auch x + z ≤ y + z, (O2) sind x, y, z ∈ N0 und ist x ≤ y, dann gilt auch xz ≤ yz. Anstelle von x ≤ y schreiben wir auch y ≥ x. Summationssymbol

Zur Notation derP Summe von mehreren Summanden x1 , x2 , . . . , xn verwendet man oft auch das Summationssymbol : n X x1 + x2 + . . . + xn = xi i=1

L¨ auft der Summationsindex i nicht zwischen den Grenzen 1 und n, sondern zwischen u und o mit u, o ∈ N0 und u ≤ o, dann notieren wir xu + xu+1 + . . . + xo =

o X

xi

i=u

u untere und o heißt obere Index- oder Summationsgrenze. F¨ ur den Fall u > o legen wir Pheißt o i=u xi = 0 fest. Multiplikationssymbol

Analog wird f¨ ur die Multiplikation mehrerer Faktoren xu , xu+1 , . . . xo xu · xu+1 · . . . · xo =

o Y

xi

i=u

geschrieben. F¨ ur den Fall u > o legen wir

Qo

i=u

xi = 0 fest.

Sowohl bei der Addition als auch bei der Multiplikation kann die Anzahl der Summanden bzw. die Anzahl der Faktoren unendlich sein, d.h. es kann o = ∞ sein. Man spricht dann von einer unendlichen Summe bzw. von einem unendlichen Produkt. Verallgemeinertes Distributivgesetz

Aus den Distributivgesetzen l¨asst sich das folgende verallgemeinerte Distributivgesetz ableiten:  ! n m X X xi  yj  = (x1 + x2 + . . . + xm )(y1 + y2 + . . . + yn ) i=1

j=1

= x1 y1 + x1 y2 + . . . + x1 yn + x2 y1 + x2 y2 + . . . + x2 yn .. . + xm y1 + xm y2 + . . . + xm yn m X n X = xi yj i=1 j=1

Wegen der Kommutativit¨ at der Addition gilt nat¨ urlich m X n X i=1 j=1

xi yj =

n X m X j=1 i=1

xi yj

Monotonieregel

¨ 11.3. DER BEGRIFF DER ABZAHLBARKEIT

11.3

113

Der Begriff der Abz¨ ahlbarkeit

Die Menge der nat¨ urlichen Zahlen ist ja gerade zum Abz¨ahlen geschaffen worden. Insofern erscheint es als nat¨ urlich“ diese Menge als Referenzmenge f¨ ur abz¨ahlbare Mengen zu w¨ahlen. Wir wollen ” eine Menge abz¨ ahlbar nennen, falls ihre Elemente eindeutig mit nat¨ urlichen Zahlen nummeriert werden k¨ onnen. Definition 11.1. Eine Menge M heißt abz¨ ahlbar genau dann, wenn sie endlich ist oder wenn Abz¨ahlbares eine bijektive (d.h. totale, injektive und surjektive) Abbildung f : M → N0 gibt, d.h. jedem keit Element m ∈ M kann eineindeutig eine nat¨ urliche Zahl f (m) zugeordnet werden. Ist f (m) = i, dann schreiben wir auch mi . Die Elemente aus M besitzen eine eindeutige Nummer, k¨onnen also abgez¨ ahlt werden: m0 , m1 , m2 , . . . Eine unendliche abz¨ ahlbare Menge M kann als gleichm¨ achtig zur Menge der nat¨ urlichen Zahlen verstanden werden, denn jedem Element aus M kann genau eine nat¨ urliche Zahl und jeder Gleichm¨achtigkeit nat¨ urlichen Zahl kann genau ein Element aus M zugeordnet werden. Ist eine Menge nicht abz¨ ahlbar, dann nennen wir sie u ahlbar. ¨berabz¨

¨ 2 Uberabz¨ ahlbarkeit

Folgerung 11.1. F¨ ur den Begriff der Abz¨ahlbarkeit gelten einsichtigerweise die folgenden Eigenschaften: a) Jede Teilmenge einer abz¨ ahlbaren Menge ist abz¨ahlbar. b) Jede Obermenge einer nicht abz¨ ahlbaren Menge ist nicht abz¨ahlbar.

2

Beispiel 11.3. a) Die Menge der positiven geraden Zahlen G+ = { n | n = 2k, k ∈ N0 } ist abz¨ ahlbar, da G+ eine Teilmenge von N0 ist. Eine m¨ogliche Abz¨ahlung ist z.B. f : G+ → N0 definiert durch f (2k) = k f¨ ur k ∈ N0 . f ist eine bijektive Abbildung, welche die geraden Zahlen in ihrer nat¨ urlichen Reihenfolge abz¨ ahlt: 0, 2, 4, . . . ¨ b) Die Potenzmenge P(N) der Menge der nat¨ urlichen Zahlen ist u ahl¨berabz¨ahlbar. Wir zeigen dies Uberabz¨ barkeit der durch einen Widerspruchsbeweis. Potenzmenge

Wir nehmen also an, dass P(N) abz¨ ahlbar ist, d.h. es gibt eine bijektive Abbildung f : P(N) → von N N0 , die P(N) abz¨ ahlt. M0 , M1 , M2 . . . sei die durch f festgelegte Abz¨ahlung von P(N). N0 ist abz¨ ahlbar, und x0 , x1 , x2 . . . sei eine solche Abz¨ahlung. Mit den beiden Abz¨ahlungen k¨onnen wir folgende Matrix betrachten:

M0 M1 M2 .. . .. . Mi .. .

x0 b00 b10 b20 .. . .. . bi0 .. .

x1 b01 b11 b21 .. . .. . bi1 .. .

x2 b02 b12 b22 .. . .. . bi2 .. .

... ... ... ... .. . .. . ... .. .

xj b0j b1j b2j .. . .. . bij .. .

... ... ... ... .. . .. . ... .. .

¨ KAPITEL 11. DIE MENGE DER NATURLICHEN ZAHLEN

114 Dabei sei

( bij =

Diagonalisierung

1, falls xj ∈ Mi 0, falls xj ∈ / Mi

Wir definieren mithilfe der Diagonalen dieser Matrix die Menge D wie folgt: xk ∈ D genau dann, wenn bkk = 0 ist

(11.2)

xk ist also in D enthalten, falls xk nicht in Mk enthalten ist, und xk ist nicht in D enthalten, falls xk in Mk enthalten ist. Die Menge D ist also so konstruiert, dass sie sich mindestens in einem Element, was durch die Diagonale der Matrix bestimmt wird, von jeder Menge Mi unterscheidet. Das f¨ uhrt nun gerade im Folgenden zum Widerspruch. Zun¨ achst stellen wir fest, dass D eine Menge nat¨ urlicher Zahlen ist, d.h. es muss D ∈ P(N) sein. Das bedeutet aber, dass D in der Abz¨ahlung M0 , M1 , M2 , . . . von P(N) vorkommen muss. Damit muss es eine Nummer s geben mit f (s) = D, d.h. mit D = Ms . F¨ ur die Zahl s gibt es nun zwei F¨ alle: xs ∈ Ms oder xs ∈ / Ms . (1) Sei xs ∈ Ms , dann gilt bss = 1 und damit wegen (11.2) xs ∈ / D, woraus wegen D = Ms folgt xs ∈ / Ms . (2) Sei xs ∈ / Ms , dann gilt bss = 0 und damit wegen (11.2) xs ∈ D, woraus wegen D = Ms folgt x s ∈ Ms . In beiden F¨ allen erhalten wir also einen Widerspruch, d.h. wir k¨onnen herleiten, dass xs ∈ D gilt genau dann, wenn xs ∈ / D gilt, was offensichtlich einen Widerspruch darstellt. Unsere Annahme muss also falsch sein. Damit haben wir bewiesen, dass P(N) u 2 ¨berabz¨ahlbar ist.

11.4

Aufz¨ ahlbare und entscheidbare Mengen

Im Kapitel 14 haben wir den Begriff der Berechenbarkeit f¨ ur Funktionen f : Nk0 → N0 einf¨ uhrend betrachtet. Wir werden diesen Begriff nun auf Mengen u bertragen, wobei in diesen Zusammen¨ hang von Entscheidbarkeit von Mengen gesprochen wird. Wir werden unterschiedliche Grade von Entscheidbarkeit kennenlernen, und wir werden Zusammenh¨ange zur Abz¨ahlbarkeit von Mengen herstellen, wobei wir dabei von berechenbaren Abz¨ahlungen, sogenannten Aufz¨ahlungen ausgehen werden. Des Weiteren werden wir nicht berechenbare Funktionen und nicht entscheidbare Mengen kennenlernen. Lernziele

Nach dem Durcharbeiten dieses Kapitels sollten Sie • x

Kapitel 12

Vollst¨ andige Induktion Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

• das Prinzip der Vollst¨ andigen Induktion verstehen, • Behauptungen mithilfe Vollst¨ andiger Induktion beweisen k¨onnen. Vollst¨ andige Induktion ist eine Methode, mit der bewiesen werden kann, dass ein Pr¨adikat auf die Menge der nat¨ urlichen Zahlen zutrifft, d.h. dass ein Pr¨adikat P : N0 → B die L¨osungsmenge RP = N0 besitzt, d.h. dass P von allen nat¨ urlichen Zahlen erf¨ ullt wird (siehe 9.3). Die Menge der nat¨ urlichen Zahlen wird in Kapitel 11.1 eingef¨ uhrt. Grundlage f¨ ur die Vollst¨andige Induktion ist dabei das Axiom P3 (siehe Seite 108). Ein Beweis mit vollst¨ andiger Induktion gen¨ ugt dementsprechend folgendem Schema: • Induktionsanfang: Zeige, dass P (0) gilt, d.h. dass 0 ∈ RP gilt.

Induktionsanfang

• Induktionsschritt: Zeige: ∀n ∈ N0 : P (n) ⇒ P (n + 1). Dabei heißt P (n) Induktionsannahme Induktionsschritt Induktionsannahme oder Induktionsvoraussetzung und P (n + 1) Induktionsbehauptung. Induktions-

Haben wir f¨ ur ein Pr¨ adikat P : N0 → B Induktionsanfang und Induktionsschritt gezeigt, dann behauptung wissen wir, dass P (n) f¨ ur alle n ∈ N0 gilt, d.h. dass RP = { n ∈ N0 | P (n)} = N0 gilt: Das Pr¨adikat P trifft auf alle nat¨ urlichen Zahlen zu. Bemerkung 12.1. Veranschaulichen kann man diese Methode an folgendem Problem: Wann bin ich in der Lage, eine (unendliche) Leiter hinauf zu steigen. Nun, ich werde es schaffen, wenn ich in der Lage bin, die folgenden beiden Schritte zu tun: Ich muss die erste Sprosse besteigen k¨onnen (das entspricht dem Induktionsanfang), und wenn ich auf irgendeiner Stufe stehe (Induktionsannahme), dann muss ich auf die n¨ achste Sprosse steigen k¨onnen (Induktionsschritt). 2 Pn Beispiel 12.1. a) Zeige: ∀n ∈ N0 : i=0 i = n(n+1) . Das Pr¨adikat 2 P (n) =

n X

i=

i=0

115

n(n + 1) 2

(12.1)

¨ KAPITEL 12. VOLLSTANDIGE INDUKTION

116

Pn ur jede nat¨ urliche Zahl n behauptet also, dass sich i=0 i, die Summe der Zahlen von 0 bis n, f¨ durch den Ausdruck n(n+1) berechnen l¨ a sst. 2 Wir beweisen die Behauptung mit vollst¨andiger Induktion gem¨aß dem obigen Schema: Induktionsanfang: Zeige, dass P (0) gilt. Es ist 0 X

i=0=

i=0

0(0 + 1) 2

also gilt P (0). Induktionsschritt: Zeige unter der Annahme, dass P (n) gilt, auch P (n + 1) gilt. In unserem Fall m¨ ussen wir also zeigen, dass P (n + 1) =

n+1 X

i=

i=0

(n + 1)(n + 2) 2

gilt unter der Vorraussetzung, dass P (n) =

n X

i=

i=0

n(n + 1) 2

gilt. Die Summe der Zahlen von 0 bis n + 1 ist gleich der Summe der Zahlen von 1 bis n plus n + 1, d.h. es ist n+1 X i=0

i=

n X

i + (n + 1)

(12.2)

i=0

Es gilt nun: n+1 X

i=

i=0

n X

i + (n + 1)

wegen (12.2)

i=0

n(n + 1) + (n + 1) 2 n(n + 1) + 2(n + 1) = 2 (n + 1)(n + 2) = 2 =

wegen der Induktionsannahme

Damit haben wir den Induktionsschritt durchgef¨ uhrt. Insgesamt haben wir also gezeigt, dass unser Pr¨adikat (12.1) f¨ ur alle nat¨ urlichen Zahlen erf¨ ullt ist. b) Zeige, dass f¨ ur jede nat¨ urliche Zahl n die Zahl (2n + 1)2 bei Division durch 8 den Rest 1 l¨ asst. Zun¨ achst formulieren wir diese Behauptung als Pr¨adikat: P (n) = ∀n ∈ N0 ∃q ∈ N0 : (2n + 1)2 = 8q + 1

(12.3)

117 Wir beweisen diese Behauptung durch vollst¨andige Induktion: Induktionsanfang: Zeige, dass P (0) gilt, d.h. zeige, dass eine nat¨ urliche Zahl q existiert, so dass (2 · 0 + 1)2 = 8q + 1 ist. Da f¨ ur q = 0 diese Gleichung erf¨ ullt ist, gilt P (0). Induktionsschritt: Zeige unter der Annahme, dass P (n) gilt, auch P (n + 1) gilt. In unserem Fall m¨ ussen wir also zeigen, dass P (n + 1) = ∃q 0 ∈ N0 : (2(n + 1) + 1)2 = 8q 0 + 1 gilt unter der Voraussetzung, dass P (n) = ∃q ∈ N0 : (2n + 1)2 = 8q + 1

(12.4)

gilt. Dazu u ¨berlegen wir wie folgt: ∃q 0 ∈ N0 : (2(n + 1) + 1)2 = 8q 0 + 1 ⇔

∃q 0 ∈ N0 : (2n + 3)2 = 8q 0 + 1



∃q 0 ∈ N0 : 4n2 + 12n + 9 = 8q 0 + 1



∃q 0 ∈ N0 : (4n2 + 4n + 1) + (8n + 8) = 8q 0 + 1



∃q 0 ∈ N0 : (2n + 1)2 + 8(n + 1) = 8q 0 + 1

(12.5)

Nach der Induktionsvoraussetzung (12.4) gibt es ein q, so dass (2n + 1)2 = 8q + 1 gilt. Mit (12.5) erhalten wir daraus: ∃q, q 0 ∈ N0 : 8q + 1 + 8(n + 1) = 8q 0 + 1 ⇔ ∃q, q 0 ∈ N0 : 8(q + n + 1) + 1 = 8q 0 + 1 Damit haben wir gezeigt, dass es mit der Induktionsvoraussetzung (12.4) zu jedem n ∈ N0 ein q 0 = q +n+1 gibt mit (2(n+1)+1)2 = 8q 0 +1. Damit haben wir den Induktionsschritt durchgef¨ uhrt. Insgesamt haben wir also gezeigt, dass unser Pr¨adikat (12.3) f¨ ur alle nat¨ urlichen Zahlen erf¨ ullt ist. c) In Satz 5.1 auf Seite 61 haben wir behauptet, dass, wenn eine Menge M m Elemente hat, die Potenzmenge P(M ) von M 2m Elemente hat. Wir formalisieren diese Behauptung als Pr¨adikat: P (m) = ∀m ∈ N0 : |M | = m ⇒ |P(M )| = 2m Induktionsanfang: Zeige P (0). Sei also m = 0, d.h. M = ∅ und damit P(M ) = { ∅ }, woraus folgt: |P(M )| = 1. Da 20 = 1, gilt also die Behauptung f¨ ur m = 0. Induktionsschritt: Zeige, dass |M | = m + 1 ⇒ |P(M )| = 2m+1 gilt, unter der Voraussetzung, dass |P(M )| = 2m gilt f¨ ur |M | = m. Sei M = {a1 , a2 , . . . , am , am+1 } sowie M 0 = {b1 , b2 , . . . , bm }, bi ∈ M , 1 ≤ i ≤ m, und {a} = M − M 0 . Nach Induktionsvoraussetzung ist |P(M 0 )| = 2m . Sei etwa P(M 0 ) = {D1 , D2 , . . . , D2m }. Alle Dj ∈ P(M 0 ), 1 ≤ j ≤ 2m , sind auch Elemente von P(M ). Es fehlen noch die Elemente Dj ∪ {a}, 1 ≤ j ≤ 2m . Insgesamt enth¨alt P(M ) also 2m + 2m = 2 · 2m = 2m+1 Elemente. Damit ist der Induktionsschritt gezeigt.

¨ KAPITEL 12. VOLLSTANDIGE INDUKTION

118

d) Sei x ∈ R, x > −1, x 6= 0, dann gilt: ∀n ∈ N2 : (1 + x)n > 1 + nx.1 Wir beweisen diese Behauptung mit vollst¨andiger Induktion: Induktionsanfang: Zeige P (2). F¨ ur n = 2 gilt (1 + x)2 = 1 + 2x + x2 > 1 + 2x, da x2 > 0 Induktionsschritt: Zeige, dass (1 + x)n+1 > 1 + (n + 1)x gilt, unter Voraussetzung, dass (1 + x)n > 1 + nx gilt, f¨ ur x ∈ R, x > −1, x 6= 0. Es gilt: (1 + x)n+1 = (1 + x)n (1 + x) > (1 + nx)(1 + x)

(nach Induktionsvoraussetzung) 2

= 1 + x + nx + nx > 1 + nx + x

(da nx2 > x)

= 1 + (n + 1)x e) Als letztes Beispiel wollen wir das Pr¨adikat P (n) = ∀n ∈ N7 : 2n2 + 1 < 2n beweisen. Induktionsanfang: Zeige P (7). Es gilt 2 · 72 + 1 = 99 und 27 = 128, und damit P (7). Induktionsschritt: Wir nehmen an, dass P (n) = 2n2 + 1 < 2n gilt, und zeigen, dass dann auch P (n + 1) = 2(n + 1)2 + 1 < 2n+1 gilt. Es ist 2(n + 1)2 + 1 = 2(n2 + 2n + 1) + 1 = 2n2 + 1 + 4n + 2 < 2n + 4n + 2 n

1 + (n + 2)x, und in Beispiel e) w¨ are die transformierte Behauptung P 0 (n) = 2(n + 7)2 + 1 < 2n+7 . 1 Diese Ungleichung wird als Bernoullische Ungleichung bezeichnet, benannt nach Jakob Bernoulli (1654 - 1705), einer der Mitglieder der ber¨ uhmten schweizerischen Gelehrtenfamilie Bernoulli (niederl¨ andischer Herkunft), die im 17. und 18. Jahrhundert als Mathematiker, Physiker, Mediziner und Theologen hervorragende Beitr¨ age zu diesen Wissenschaften geliefert haben.

Kapitel 13

Rekursion Die induktive Definition der Menge der nat¨ urlichen Zahlen erm¨oglicht induktive bzw. rekursive Definitionen von Funktionen und Relationen u ¨ber dieser Menge. Die Grundidee der rekursiven Definition ist: Der Funktionswert f (n+1) einer Funktion f : N0 → N0 ergibt sich durch Verkn¨ upfung bereits vorher berechneter Werte f (n), f (n − 1), . . . Falls außerdem die Funktionswerte von f f¨ ur hinreichend viele Startargumente bekannt sind, kann jeder Funktionswert von f berechnet werden. Nach Durcharbeiten dieses Kapitels sollten Sie

Lernziele

• das Prinzip der rekursiven Definition von Funktionen verstehen, • rekursive Definitionen f¨ ur Funktionen angeben k¨onnen.

13.1

Rekursive Definition arithmetischer Funktionen

Betrachten wir als erstes Beispiel die Funktion sum : N0 → N0 definiert durch sum(n) = 0 + 1 + 2 + . . . + n

(13.1)

sum(n) berechnet die Summe der ersten n Zahlen. Aus Beispiel 12.1 a) wissen wir, dass sum(n) = n(n+1) gilt. sum l¨ asst sich aber auch anders berechnen. Dazu betrachten wir (13.1) etwas genauer: 2 sum(n) = 0 + 1 + 2 + . . . + (n − 1) + n = 0 + 1 + 2 + . . . + (n − 1) +n | {z } =sum(n−1)

= sum(n − 1) + n Die Summe der ersten n Zahlen l¨ asst sich also berechnen, indem man die Summe der ersten n − 1 Zahlen berechnet und dazu die Zahl n addiert. 119

120

KAPITEL 13. REKURSION

Falls man nun noch als Rekursionsanfang sum(0) = 0 festlegt, l¨asst sich sum(x) f¨ ur jedes x ∈ N0 mithilfe folgender rekursiver Definition berechnen: ( sum(n) =

0, sum(n − 1) + n,

n=0 n≥1

(Rekursionsanfang) (Rekursionsschritt)

Es gilt z.B. sum(3)

= = = = =

sum(1) sum(0) + 1 0 + 1 6

+ + +

sum(2) + 3 (Rekursionsschritt) 2 + 3 (Rekursionsschritt) 2 + 3 (Rekursionsschritt) 2 + 3 (Rekursionsanfang)

In analoger Weise l¨ asst sich die Fakult¨atsfunktion ! : N0 → N0 die das Produkt der ersten n Zahlen festlegt n! = 1 · 2 · . . . · n rekursiv definieren: ( n! =

1, n=0 (n − 1)! · n, n ≥ 1

(Rekursionsanfang) (Rekursionsschritt)

¨ Ubung 13.1. Berechnen Sie nach dieser Vorschrift 3! (Fakult¨at von 3)!

2

Wir wollen nun einige Beispiele rekursiver Definitionen von mehrstelligen Funktionen betrachten. Dabei setzen wir die Sukzessorfunktion suc : N0 → N0 definiert durch suc(n) = n + 1 f¨ ur alle n ∈ N0 , voraus. (1) Wir f¨ uhren die Addition zweier Zahlen x und y auf die y-fache Addition der 1 zu x zur¨ uck: add : N0 × N0 → N0 definiert durch add (x, 0) = x add (x, suc(y)) = suc(add (x, y))

13.1. REKURSIVE DEFINITION ARITHMETISCHER FUNKTIONEN

121

Mit dieser Berechnungsvorschrift ergibt sich z.B. add (2, 3) = add (2, suc(2)) = suc(add (2, 2)) = suc(add (2, suc(1))) = suc(suc(add (2, 1))) = suc(suc(add (2, suc(0)))) = suc(suc(suc(add (2, 0)))) = suc(suc(suc(2))) = suc(suc(3)) = suc(4) =5 (2) Mithilfe der Addition k¨ onnen wir nun die Multiplikation definieren: mult : N0 × N0 → N0 mit mult(x, 0) = 0 mult(x, suc(y)) = add (mult(x, y), x)

(13.2) (13.3)

Die Multiplikation von x und y wird hier durch y-fache Addition von x mit sich selbst berechnet. ¨ Ubung 13.2. Berechnen Sie mit dieser Vorschrift z.B. mult(2, 3)!

2

(3) Analog k¨ onnen wir nun die Potenzfunktion mithilfe der Multiplikation definieren: exp : N0 × N0 → N0 mit exp(x, 0) = 1 exp(x, suc(y)) = mult(exp(x, y), x) Die Potenzierung von x mit y wird hier durch y-fache Multiplikation von x mit sich selbst berechnet. ¨ Ubung 13.3. Berechnen Sie mit dieser Vorschrift z.B. exp(2, 3)! Die hier beispielhaft durchgef¨ uhrte Definition von rekursiv festgelegten Funktionen ist eine grunds¨ atzliche Vorgehensweise in der funktionalen Programmierung. Ausgehend von einigen gegebenen Funktionen, wie z.B. in unserem Fall die Fallunterscheidung und die Sukzessorfunktion, werden schrittweise neue Funktionen definiert, mithilfe derer weitere Funktionen definiert werden k¨ onnen.

122

KAPITEL 13. REKURSION

Ein Ansatz, den Begriff der Berechenbarkeit formal, d.h. mathematisch, zu pr¨azisieren, beruht ebenfalls auf dieser Vorgehensweise. Man geht von ganz wenigen, einfachen“ Funktionen aus, die ” per se als berechenbar angesehen werden. Mit weiteren Funktionen werden dann aus diesen so genannten Grundfunktionen weitere Funktionen zusammengesetzt. Alle Funktionen, die sich auf diese Weise darstellen lassen, gelten dann in diesem Berechenbarkeitskonzept als berechenbar. Hierauf gehen wir in Kapitel 14 noch n¨ aher ein.

13.2

Fibonacci-Zahlen

In diesem Kapitel wollen wir die Fibonacci-Folge betrachten. Diese taucht interessanterweise auf die eine oder andere Art bei vielen Ph¨anomenen in Mathematik, Informatik und Naturwissenschaften aber auch in Bereichen der Kunst auf. Wir betrachten die Fibonacci-Folge hier nur als weiteres Beispiel einer rekursiv definierten Funktion, und wir werden nur ein paar wenige ihrer Eigenschaften betrachten. Die Folge wird in der Regel auf das ber¨ uhmte Kaninchenproblem“ zur¨ uckgef¨ uhrt. Dieses Pro” blem wird im Liber Abbaci von dem wohl gr¨oßten europ¨aischen Mathematiker vor der Renaissance, Leonardo Pisano (Leonardo von Pisa, genannt Leornado Fibonacci, als Abk¨ urzung von Filius Bo¨ naccii, 1170 - 1240) als Ubungsaufgabe gestellt: Die Vermehrung von Kaninchenpaaren geschehe wie folgt: Am Anfang gebe es kein Paar, nach dem ersten Monat sei ein Paar – durch wen auch immer geschaffen – da. Jedes Kaninchenpaar ist nach dem zweiten Monat seiner Existenz geschlechtsreif, und jedes Kaninchenpaar bringe von da an jeden Monat ein weiteres Paar zur Welt. Frage: Wie viele Kaninchenpaare Fn gibt es nach n Monaten? Zum Zeitpunkt 0 gibt es kein Paar, also ist F0 = 0. Nach einem Monat gibt es ein Paar P1 , also ist F1 = 1. Nach zwei Monaten ist dieses Paar geschlechtsreif geworden, wir nennen es P1g , und es ist F2 = 1. Nach drei Monaten hat P1g ein neues Paar P2 gezeugt, so dass F3 = 2 ist. Nach vier Monaten hat P1g ein weiteres Paar P3 gezeugt, und P2 ist geschlechtsreif geworden, was wir mit P2g notieren. Es ist F4 = 3. Nach f¨ unf Monaten haben P1g und P2g je ein Paar, P4 und P5 , gezeugt, und P3 ist geschlechtsreif geworden, was wir wieder entsprechend kennzeichnen: P3g . Es ist F5 = 5. ¨ ¨ Ubung 13.4. Uberlegen Sie selbst in dieser Art weiter! Sie werden herausfinden, dass F6 = 8 und F7 = 13 ist. 2 Gibt es eine Gesetzm¨ aßigkeit, mit der sich Fn f¨ ur jedes n ∈ N0 berechnen l¨asst? Im n-ten Monat gibt es alle Paare, die es auch im vorhergehenden Monat n − 1 gegeben hat, sowie so viele Paare, wie es im Monat n − 2 gegeben hat, denn diese sind im Monat n alle geschlechtsreif und bekommen ¨ je ein Paar Nachwuchs. Aus dieser Uberlegung ergibt sich die folgende rekursive Definition f¨ ur die Fibonacci-Funktion F : N0 × N0 → N0 die f¨ ur jeden Monat n die Anzahl der Kaninchenpaare Fn angibt:1 F0 = 0, F1 = 1, Fn = Fn−1 + Fn−2 , n ≥ 2

(13.4)

1 Es ist ublich bei der Fibonacci-Funktion die eher bei Folgen ubliche Schreibweise F anstelle der Funktions¨ ¨ n schreibweise F (n) zu verwenden.

13.2. FIBONACCI-ZAHLEN

123

Es gilt also z.B. F2 F3 F4 F5 F6 F7 F8 F9 F10

= = = = = = = = =

F1 F2 F3 F4 F5 F6 F7 F8 F9

+ + + + + + + + +

F0 F1 F2 F3 F4 F5 F6 F7 F8

= = = = = = = = =

1 1 2 3 5 8 13 21 34

+ + + + + + + + +

0 1 1 2 3 5 8 13 21

= = = = = = = = =

1 2 3 5 8 13 21 34 55

Mithilfe analytischer Methoden aus der Theorie der Differenzengleichungen, auf die wir im Rahmen dieses Buches nicht eingehen, kann man einen geschlossenen Ausdruck zur Berechnung von Fn herleiten: 1 Fn = √ (φn − φ0n ) 5 Dabei ist φ φ0

= =

1 2 (1 1 2 (1

√ + √5) − 5)

(13.5)

= 1, 6180339 . . . = −0, 6180339 . . .

Es gilt sogar:2 

 1 √ φn 5 Die Anzahl der Kaninchenpaare Fn w¨ achst also exponentiell in der Anzahl der Monate n. Fn = round

Die Zahl φ stellt den Goldenen Schnitt dar. Ein geometrisches Verh¨altnis von Gr¨oßen in Kunst- Goldener oder Bauwerken galt von alters her (bei Euklid; in der Renaissance g¨ottliche Proportion“) als Schnitt ” asthetisch, falls es durch diese Zahl ausgedr¨ uckt werden konnte.3 ¨ Die Fibonacci-Zahlen k¨ onnen auch durch fortgesetzte Multiplikation der Matrix     F0 F1 0 1 = F1 F2 1 1 berechnet werden. Dazu erkl¨ aren wir zun¨ achst, wie zwei 2 × 2-Matrizen miteinander multipliziert werden:       a b e f ae + bg af + bh · = (13.6) c d g h ce + dg cf + dh Es gilt nun f¨ ur alle n ≥ 1 

Fn−1 Fn

Fn Fn+1



 =

F0 F1

F1 F2

n

 =

0 1

1 1

n

2 round 3 Eine

ist die bekannte Rundungsfunktion. Strecke AB wird durch einen Teilpunkt C gem¨ aß dem Goldenen Schnitt geteilt, falls gilt

|AC| |CB|

=

|CB| . |AB|

Dabei

bedeutet |XY | die L¨ ange der Strecke XY . Wenn man |AC| = 1 und |CB| = x setzt, dann wird das Streckenverh¨ altnis x , umgeformt durch x2 − x − 1 = 0 ausgedr¨ uckt. L¨ osen wir diese Gleichung auf, dann erhalten wir als durch x1 = 1+x L¨ osungen φ und φ0 .

124

KAPITEL 13. REKURSION

Wir beweisen dies durch vollst¨ andige Induktion u ¨ber n: Induktionsanfang: F¨ ur n = 1 gilt: 

F1−1 F1

F1 F1+1



 =

F0 F1

F1 F2

1

 =

0 1

1 1



Induktionsschritt: Es gilt 

0 1

1 1

n+1



0 1



Fn−1 Fn

= =  =  =

13.3

1 1

Fn Fn+1 Fn Fn+1

n   0 1 · 1 1   Fn 0 · Fn+1 1  Fn−1 + Fn Fn + Fn+1  Fn+1 F n+

1 1

 wegen Induktionsvoraussetzung wegen (13.6) wegen (13.4)

Ackermannfunktion

Als weitere Beispiele zu rekursiv definierten Funktionen betrachten wir die Ackermannfunktion und Varianten davon. Die Ackermannfunktion ist von großer Bedeutung in der Berechenbarkeitstheorie (siehe Kapitel 14.3). Sie ist eine Funktion, die mit Z¨ahlschleifen nicht berechnet werden kann, weil sie schneller als alle Funktionen w¨achst, die mit Z¨ahlschleifen berechnet werden k¨onnen. Einen Eindruck dieses Wachstums geben die folgenden Betrachtungen. Ackermannfunktion

Definition 13.1. Die Ackermannfunktion A : N0 × N0 → N0 ist definiert durch   x=0  y + 1, A(x, y) = A(x − 1, 1), x 6= 0 ∧ y = 0   A(x − 1, A(x, y − 1)), sonst 2 ¨ Ubung 13.5. Berechnen Sie, um einen ersten Eindruck von dieser Funktion zu bekommen, A(3, 3)! 2 Folgerung 13.1. F¨ ur alle n ≥ 0 gilt: a) A(1, n) = n + 2, b) A(2, n) = 2n + 3, c) A(3, n) = 2n+3 − 3, d) A(4, n) =

..

.2

2| 2{z }

n+3 Zweien

−3.

2

13.3. ACKERMANNFUNKTION

125 2

¨ Ubung 13.6. Beweisen Sie Folgerung 13.1! Wir definieren nun die Familie { Ai }i≥0 von Funktionen Ai : N0 → N0 rekursiv wie folgt:   x=0  1, A0 (x) = 2, x=1   x + 2, sonst An+1 (x) = Axn (1) = An (An (. . . An (1) . . .)) | {z } x-mal

Und mithilfe dieser Funktionen legen wir die Funktion ack : N0 → N0 fest: ack (x) = Ax (x)

(13.7)

Gem¨ aß diesen Definitionen gilt nun: ack(0) = A0 (0) = 1 ack(1) = A1 (1) = A10 (1) = 2 ack(2) = A2 (2) = A21 (1) = A1 (A1 (1)) = A1 (2) = A20 (1) = A0 (A0 (1)) = A0 (2) = 2 + 2 = 4 ack(3) = A3 (3) = A32 (1) = A2 (A2 (A2 (1))) = A2 (A2 (2)) = A2 (4) = A41 (1) = A1 (A1 (A1 (A1 (1)))) = A1 (A1 (A1 (2))) = A1 (A1 (4)) = A1 (A1 (4)) = A1 (A40 (1)) = A1 (A0 (A0 (A0 (A0 (1))))) = A1 (A0 (A0 (A0 (2)))) = A1 (A0 (A0 (4))) = A1 (A0 (6)) = A1 (8) = . . . .. . = 16 Zur Berechnung von ack (4) bestimmen wir zun¨achst (1) A2 (x) und dann (2) A3 (x). Zu (1): Es gilt: A2 (x) = 2x f¨ ur alle x ∈ N0 Wir beweisen dies mit vollst¨ andiger Induktion: Induktionsanfang: Es gilt: A2 (0) = A01 (1) = 1 = 20 . F¨ ur x = 0 stimmt also die Behauptung.

(13.8)

126

KAPITEL 13. REKURSION

Induktionsschritt: Es gilt A2 (x + 1) = Ax+1 (1) 1 = A1 (Ax1 (1)) = A1 (A2 (x)) = A1 (2x ) =

nach Induktionsvoraussetzung

x A20 (1)

= A0 (A0 (. . . A0 (A0 (1)) . . .)) | {z } 2x -mal

= A0 (A0 (. . . A0 (2) . . .)) | {z } (2x −1)-mal

= 2 + 2 + ... + 2 | {z } 2x -mal x x+1

=2·2 =2

womit der Induktionsschritt vollzogen ist. Zu (2): Die x-mal iterierte Zweierpotenz ist die Funktion iter 2 : N0 → N0 definiert durch iter 2 (0) = 1 iter 2 (n + 1) = 2iter 2 (n) , n ≥ 1 Es gilt also z.B. 2iter 2 (0) =

iter 2 (1) =

iter 2 (1)

iter 2 (2) =

2

=

2iter 2 (2) =

iter 2 (3) =

2iter 2 (3) =

iter 2 (4) =

2iter 2 (4) =

iter 2 (5) =

21 = 2

2 =

2=

2

(13.9)

2

4

(13.10)

16

(13.11)

=

65 536

(13.12)

=

...

(13.13)

2 = 2

24 =

22 =

216 =

22

22

2 22

265 536 =

22

Man erkennt, dass iter 2 (x) die x-mal iterierte 2er-Potenz ist. Wir beweisen nun mit vollst¨ andiger Induktion, dass gilt A3 (x) = iter 2 (x)

(13.14)

Induktionsanfang: Es gilt: A3 (0) = A02 (1) = 1 = iter 2 (0). F¨ ur x = 0 stimmt also die Behauptung. Induktionsschritt: Es gilt A3 (x + 1) = Ax+1 (1) 2 = A2 (Ax2 (1)) = A2 (A3 (x)) = A2 (iter 2 (x)) iter 2 (x)

nach Induktionsvoraussetzung

=2

wegen (13.8)

= iter 2 (x + 1)

wegen der Definition von iter 2

13.4. VERALLGEMEINERTES REKURSIONSSCHEMA

127

womit der Induktionsschritt vollzogen ist. Nun k¨ onnen wir ack (4) berechnen: ack (4) = A4 (4) = A43 (1) = A33 (A3 (1)) = A33 (2) = =

A23 (A3 (2)) A23 (4))

wegen (13.14) und (13.9) wegen (13.14) und (13.10)

= A3 (A3 (4)) = A3 (65536)

wegen (13.14) und (13.12)

= iter 2 (65536) ..

22

=2

.2

65536-mal iterierte Zweierpotenz

Man sch¨ atzt die Anzahl der Atome im bekannten“ Universum auf etwa 2350 , im Vergleich zu ack (4) ” eine sehr kleine Zahl. Die Ackermannfunktion hat ein immenses Wachstumsverhalten. Man kann sogar zeigen, dass die Ackermannfunktion st¨ arker w¨achst als Funktionen, die mit Z¨ahlschleifen berechnet werden k¨ onnen. Bei Z¨ ahlschleifen liegt die Anzahl der Schleifendurchl¨aufe vor Ausf¨ uhrung der Schleife fest, d.h. die Schleifenbedingung kann – im Unterschied zu Bedingungsschleifen – w¨ahrend der Schleifenausf¨ uhrung nicht ver¨ andert werden.

13.4

Verallgemeinertes Rekursionsschema

Wir haben schon im Kapitel 2 rekursive Definitionen benutzt. So haben wir im Abschnitt 2.2 die Syntax der Aussagenlogik definiert, indem wir zun¨achst – als Rekursionsanfang – atomare Formeln festgelegt haben und anschließend – im Rekursionsschritt – beschrieben, wie aus bereits gegebenen Formeln neue gebildet werden k¨onnen. In der Definition 8.10 auf Seite 93 haben wir die n-fache Komposition einer Relation R mit sich selbst rekursiv definiert: Zun¨achst haben wir als Rekursionsanfang R = id festgelegt und im Rekursionsschritt, wie Rn aus Rn−1 berechnet wird. Tats¨ achlich sind rekursive Definition und vollst¨andige Induktion nicht auf auf nat¨ urlichen Zahlen definierte Funktionen beschr¨ ankt. Insbesondere in der Informatik sind viele wichtige Datenstrukturen, wie z.B. Listen und B¨ aume, rekursive Strukturen, auf denen Operationen wie Einf¨ ugen, L¨ oschen und Suchen von Elementen entsprechend als rekursive Prozeduren programmiert werden k¨ onnen. Rekursion ist ein allgmeines Probleml¨oseprinzip, welches in vielen F¨allen zu eleganten“ ” L¨ osungen f¨ uhrt. Zum Abschluss des Kapitels betrachten wir ein verallgemeinertes Induktionsprinzip f¨ ur Pr¨adi- Verallgemeinertes kate u ¨ber induktiv definierte Mengen: Sei M eine induktiv definierte Menge und P : M → B ein Rekursionsschema totales Pr¨ adikat. Falls gilt: • Induktionsanfang: Gilt P (x) f¨ ur alle explizit angegebenen Elemente von M und • Induktionsschritt: gilt u ur jedes daraus nach den Definitionsregeln ¨r alle x1 , . . . , xk ∈ M und f¨ von M erzeugbare y ∈ M : P (x1 ), . . . , P (xk ) ⇒ P (y),

128

KAPITEL 13. REKURSION

dann gilt f¨ ur alle x ∈ M : P (x). Haben wir f¨ ur ein Pr¨ adikat P : M → B Induktionsanfang und Induktionsschritt gezeigt, dann wissen wir, dass P f¨ ur alle Elemente von M zutrifft. Beispiel 13.1. Im Abschnitt 2.2 haben wir die Menge A der aussagenlogischen Formeln induktiv definiert. Wir beweisen nun das Pr¨adikat P u ¨ber dieser Menge, welches besagt, dass in jeder aussagenlogischen Formel, die Anzahl der ¨offnenden Klammern gleich der Anzahl der schließenden Klammern ist. Wir formalisieren zun¨ achst dieses Pr¨adikat. F¨ ur eine Formel α ∈ A bezeichne α( die Anzahl der o ffnenden und α die Anzahl der schließenden Klammern in α. Unser Pr¨adikat lautet damit: ¨ ) P (α) = α( = α) . Mit dem verallgemeinerten Induktionsschema zeigen wir nun, dass f¨ ur alle α ∈ A gilt P (α). Induktionsanfang: Die explizit angegebenen Elemente von A sind die aussagenlogischen Konstanten 0 und 1 sowie die aussagenlogischen Variablen v ∈ V . Diese atomaren Formeln enthalten keine Klammern, d.h. es gilt 0( 1( v(

= = =

0 0 0

= = =

0) 1) v) , f¨ ur alle v ∈ V

Somit gilt P (0) und P (1) sowie P (v) f¨ ur alle v ∈ V . Damit ist der Induktionsanfang f¨ ur unser Pr¨ adikat P gezeigt. Induktionsschritt: F¨ ur gegebene Formeln α, β ∈ A k¨onnen aufgrund der Definitionsregeln von A die Formeln (1) γ1 = (α ∧ β, (2) γ2 = α ∨ β sowie (3) γ3 = ¬α gebildet werden. Nach Induktionsvoraussetzung gelten P (α) und P (β), d.h. α( = α) bzw. β( = β) . Wir zeigen nun, dass auch P (γi ), d.h. γi( = γi) , f¨ ur i = 1, 2, 3, gilt: Zu (1): Es gilt γ1( = α( + β( + 1 = α ) + β) + 1

wegen Induktionsvoraussetzung

= γ1) Zu (2): Der Beweis f¨ ur diesen Fall ist identisch zum Fall (1). Zu (3): Dieser Fall gilt offensichtlich, denn bei der Negation einer Formel kommen keine weiteren Klammern hinzu. Damit ist auch der Induktionsschritt f¨ ur alle F¨alle gezeigt, und damit gilt gem¨aß dem verallgemeinerten Induktionsprinzip: f¨ ur alle α ∈ A: P (α). 2 ¨ Ubung 13.7. F¨ ur die aussagenlogischen Formeln gilt nicht nur, dass die Anzahl der ¨offnenden gleich der Anzahl der schließenden Klammern ist, sondern auch dass in jedem Pr¨afix einer Formel die Anzahl der schließenden Klammern nicht gr¨oßer als die Anzahl der ¨offnenden Klammern ist. Beweisen Sie diese Aussage! 2

¨ 13.5. ALPHABETE, WORTER, SPRACHEN

13.5

129

Alphabete, W¨ orter, Sprachen

In Kapitel 2 haben wir bereits Sprachen kennen gelernt: die Sprache der Aussagenlogik und die Sprache der Pr¨ adikatenlogik. Daher kennen wir anhand dieser Beispiele schon die Begriffe Alphabet, Wort und Sprache. In diesem Abschnitt gehen wir allgemein auf diese Begriffe ein, zum Einen, um diese kennen zu lernen, und zum Anderen, weil wir dabei rekursive Definitionen benutzen und somit den Umgang mit Rekursion weiter u ¨ben k¨onnen. Die Symbole, aus denen W¨ orter bestehen, fassen wir in einer Menge, dem Alphabet, zusammen. Alphabet Dabei wollen wir nur endliche Alphabete zulassen. Ihre Elemente heißen Symbole oder Buchstaben. Symbol Buchstabe Zur allgemeinen Bezeichnung von Alphabeten wird zumeist das Symbol Σ benutzt. Falls wir kein konkretes, sondern allgemein ein Alphabet Σ betrachten, dann benennen wir dessen Buchstaben in der Regel mit a, b, c oder mit a1 , a2 , . . . , an : Σ = { a1 , a2 , . . . , an }, n ≥ 0. Dabei soll durch die Reihenfolge der Aufz¨ ahlung der Buchstaben auf Σ eine (alphabetische) Ordnung festgelegt Alphabetische Ordnung sein: ai < ai+1 , 1 ≤ i ≤ n − 1. Die endlich langen Zeichenfolgen, die u ¨ber einem Alphabet Σ gebildet werden k¨onnen, heißen W¨ orter u orter entstehen, indem Symbole oder bereits erzeugte W¨orter aneinandergereiht W¨orter ¨ber Σ. W¨ (miteinander verkettet, verklebt, konkateniert) werden. Σ∗ , die Menge aller W¨orter, die u ¨ber dem Alphabet Σ gebildet werden kann, ist wie folgt definiert: (1) Jeder Buchstabe a ∈ Σ ist auch ein Wort u ¨ber Σ, d.h. a ∈ Σ∗ . (2) Werden bereits existierende W¨ orter hintereinandergeschrieben (konkateniert), entstehen neue Konkatenation W¨ orter, d.h. sind v, w ∈ Σ∗ , dann ist auch ihre Verkettung (Konkatenation) vw ∈ Σ∗ . (3) ε, das leere Wort, ist ein Wort u ¨ber (jedem Alphabet) Σ, d.h. ε ∈ Σ∗ . ε ist ein definiertes Leeres Wort Wort ohne Ausdehnung“. Es hat die Eigenschaft: εw = wε = w f¨ ur alle w ∈ Σ∗ . ” Mit Σ+ bezeichnen wir die Menge aller W¨orter u ¨ber Σ ohne das leere Wort, d.h. Σ+ = Σ∗ − {ε}. Wenn wir im Folgenden ein Wort w buchstabenweise notieren, w = w1 . . . wn , n ≥ 0, sind die wi Buchstaben, also wi ∈ Σ, 1 ≤ i ≤ n. n = 0 bedeutet, dass w das leere Wort ist: w = ε. Beispiel 13.2. a) Sei Σ = { a, b }, dann ist Σ∗ = { ε, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa, bab, bba, bbb, . . . } 2

b) Sei Σ = ∅, dann gilt Σ∗ = { ε }. n

n

urzend w = v . v heißt die n-te Potenz von v. Es ist Ist w = v| v{z . . . v} dann schreiben wir abk¨ n−mal

onnen wir Σ∗ also auch wie folgt schreiben: v 0 = ε. In Beispiel 13.2 a) k¨ Σ∗ = { ε, a, b, a2 , ab, ba, b2 , a3 , a2 b, aba, ab2 , ba2 , bab, b2 a, b3 , . . . } Die n-te Potenz des Wortes v ∈ Σ∗ kann auch rekursiv definiert werden: v0 = ε v n+1 = v n v, n ≥ 0

130

KAPITEL 13. REKURSION

Ist w ∈ Σ∗ ein Wort der Form w = xyz mit x, y, z ∈ Σ∗ , dann heißt x Pr¨ afix, y Infix und z Pr¨afix Infix Postfix oder Suffix von w. Die L¨ ange eines Wortes kann durch die Funktion l : Σ∗ → N0 definiert durch l(ε) = 0 l(wa) = l(w) + 1, f¨ ur w ∈ Σ∗ , a ∈ Σ berechnet werden, die einem Wort u ¨ber Σ die Anzahl seiner Buchstaben als L¨ange zuordnet: Das leere Wort hat die L¨ ange 0. Die L¨ange eines Wortes, das mindestens einen Buchstaben a sowie ein – m¨oglicherweise leeres – Pr¨ afix w enth¨alt, wird berechnet, indem zur L¨ange des Pr¨afixes eine 1 addiert wird. Die L¨ ange des Wortes aba u ¨ber Σ = { a, b } berechnet sich also rekursiv mit der Funktion l wie folgt: l(aba) = l(ab) + 1 = l(a) + 1 + 1 = l(ε) + 1 + 1 + 1 = 0 + 1 + 1 + 1 = 3 Eine andere g¨ angige Notation f¨ ur die L¨ange l(w) eines Wortes w ist |w|. Lexikografische Ordnung vi

Auf Σ∗ definieren wir eine lexikografische Ordnung ≺ ⊆ Σ∗ × Σ∗ wie folgt: Sei v = v1 . . . vm , ∈ Σ, 1 ≤ i ≤ m, und w = w1 . . . wn , wj ∈ Σ, 1 ≤ j ≤ n, dann gilt v ≺ w genau dann,

(1) wenn m < n (d.h. |v| < |w|) oder (2) wenn m = n ist und es ein k, 1 ≤ k < m, gibt, so dass v1 . . . vk = w1 . . . wk sowie vk+1 < wk+1 gilt. ≺ ordnet W¨ orter also zun¨ achst nach der L¨ange und innerhalb gleicher L¨angen alphabetisch, d.h. wie durch die Ordnung auf Σ vorgegeben. Ist etwa Σ = { a, b } (d.h. a < b), dann gilt z.B. • bb ≺ aaa wegen (1), • baab ≺ baba wegen (2). Sei Σ ein Alphabet, dann heißt jede Menge L ⊆ Σ∗ eine (formale) Sprache u ¨ber Σ. Sprachen sind also Mengen von W¨ortern und k¨onnen somit mit den u ¨blichen Mengenoperationen wie Vereinigung, Durchschnitt und Differenz miteinander verkn¨ upft werden. Wir wollen f¨ ur Konkatenation Sprachen eine weitere Verkn¨ upfung einf¨ uhren, die Konkatenation: Seien L1 und L2 zwei Sprachen von Sprachen u ¨ber Σ, dann ist die Konkatenation L1 ◦ L2 von L1 und L2 definiert durch

Formale Sprache

L1 ◦ L2 = { vw | v ∈ L1 , w ∈ L2 } Es werden also alle W¨ orter aus L1 mit allen W¨ortern aus L2 konkateniert. Gelegentlich lassen wir wie bei der Konkatenation von W¨ortern auch bei der Konkatenation von Sprachen das Konkatenationssymbol ◦ weg, d.h. an Stelle von L1 ◦ L2 schreiben wir L1 L2 . Beispiel 13.3. Seien L1 = { ε, ab, abb } und L2 = { b, ba } zwei Sprachen u ¨ber { a, b }, dann ist L1 ◦ L2 = { b, ba, abb, abba, abbb, abbba } sowie L2 ◦ L1 = { b, bab, babb, ba, baab, baabb }

Postfix, Suffix Wortl¨ ange

¨ 13.5. ALPHABETE, WORTER, SPRACHEN

131

Folgerung 13.2. F¨ ur zwei Sprachen L1 , L2 ⊆ Σ∗ gilt: Falls ε ∈ L1 , dann ist L2 ⊆ L1 ◦ L2 , bzw. umgekehrt, falls ε ∈ L2 , dann ist L1 ⊆ L1 ◦ L2 . 2 ¨ Ubung 13.8. Beweisen Sie Folgerung 13.2!

2

Sei L eine Sprache u ¨ber Σ, dann ist die n-te Potenz von L definiert durch: L0 = { ε } Ln+1 = Ln ◦ L, n ≥ 0 Beispiel 13.4. Sei L = { a, ab }, dann ist L0 = { ε } L1 = L0 ◦ L = { ε } ◦ { a, ab } = { a, ab } =L 2

L = L1 ◦ L = { a, ab} ◦ {a, ab } = { a2 , a2 b, aba, (ab)2 } L3 = L2 ◦ L = { a2 , a2 b, aba, (ab)2 } ◦ { a, ab } = { a3 , a3 b, a2 ba, a2 bab, aba2 , aba2 b, (ab)2 a, (ab)3 } .. . 2 Das Kleene-Stern-Produkt L∗ einer Sprache L ist die Vereinigung aller ihrer Potenzen Ln , n ≥ 0: KleeneStern[ Produkt L∗ = Ln = L0 ∪ L1 ∪ L2 ∪ L3 ∪ . . . n≥0

Das Kleene-Stern-Produkt von L ohne das leere Wort notieren wir mit L+ bezeichnet, d.h. L+ = L∗ − L0 .

132

KAPITEL 13. REKURSION

Kapitel 14

Berechenbare Funktionen Im vorigen Kapitel 13 haben wir an vielen Beispielen gesehen, dass Rekursion ein sehr geeignetes Mittel zur L¨ osung von Problemen ist. Im Allgemeinen kann man ein Problem π = (F, A, fπ ) Problem formalisieren, indem man die Menge der m¨oglichen Fragen F, die Menge der m¨oglichen Antworten A Problemspezifikation sowie die Spezifikation fπ : F → A angibt, die jeder Frage x ∈ F, die richtige Antwort fπ (x) = y ∈ A – soweit existierend – zuordnet. So kann man z.B. die Addition beschreiben durch add = (N0 × N0 , N0 , fadd ) mit fadd (x, y) = x + y Gesucht ist nun ein Algorithmus, der dieses Problem l¨ost, d.h. zu gegebenen zwei nat¨ urlichen Zahlen deren Summe berechnet. Berechnungsverfahren sind von alters her bekannt, sie wurden erfunden und angewendet, um Probleme des t¨ aglichen Lebens oder in Naturwissenschaften und Technik zu l¨osen, ohne dass u ¨berhaupt festgelegt worden w¨ are, was denn ein Berechnungsverfahren, ein Algorithmus u ¨berhaupt ist. Zu Beginn des letzten Jahrhunderts tauchte dann die Frage danach auf, was u ¨berhaupt berechenbar ist. Ein solche Frage kann nat¨ urlich nicht beantwortet werden, wenn man den Begriff Algorithmus nicht formal pr¨ azisiert. So wurde Ende der zwanziger Jahre und in den dreißiger Jahren des vorigen Jahrhunderts mit unterschiedlichen Ans¨ atzen versucht, den Begriff der Berechenbarkeit mathematisch zu pr¨ azisieren. Dabei betrachtete man Probleme auf nat¨ urlichen Zahlen, d.h. Probleme der Art π = (Nk0 , N0 , fπ ), k ≥ 0 Einer dieser Ans¨ atze geht davon aus, dass es einige wenige, sehr einfache Funktionen gibt, die man per se als berechenbar ansieht. Aus diesen Funktionen k¨onnen dann mit rekursiven Konzepten neue Funktion konstruiert werden, die dann ebenfalls als berechenbar angesehen werden. Weil deshalb dieser Ansatz zum Thema Rekursion passt, wollen wir in diesem Kapitel einf¨ uhrend darauf eingehen. Nach dem Durcharbeiten dieses Kapitels sollten Sie • das Konzept der primitiv-rekursiven und der µ-rekursiven Funktionen zur Definition von Berechenbarkeit verstehen und erkl¨aren k¨onnen, • in der Lage sein f¨ ur einfache arithmetische Funktionen primitiv-rekursive oder n¨otigenfalls µ-rekursive Funktionen anzugeben. 133

Lernziele

134

KAPITEL 14. BERECHENBARE FUNKTIONEN

14.1

Primitiv-rekursive Funktionen

Folgende Funktionen werden als berechenbar angesehen: Nullfunktion F¨ ur k ≥ 0 sind die k-stelligen Nullfunktionen Ok : Nk0 → N0 definiert durch Ok (x1 , . . . , xk ) = 0 berechenbar. Projektion F¨ ur k ≥ 1 sind die k-stelligen Projektionen πik : Nk0 → N0 , 1 ≤ i ≤ k definiert durch πik (x1 , . . . , xk ) = xi berechenbar. Nachfolgerfunktion Die Nachfolgerfunktion ν : N0 → N0 definiert durch ν(x) = x + 1 ist berechenbar. Aus diesen Grundfunktionen k¨onnen wie folgt weitere Funktionen zusammengesetzt werden: Komposition F¨ ur m ∈ N und k ∈ N0 ist die Komposition einer berechenbaren Funktion g : Nm 0 → N0 mit berechenbaren Funktionen h1 , . . . , hm : Nk0 → N0 definiert durch die Funktion C [g; h1 , . . . , hm ] : Nk0 → N0 mit C [g; h1 , . . . , hm ] (x1 , . . . , xk ) = g(h1 (x1 , . . . , xk ), . . . , hm (x1 , . . . , xk ))

14.1. PRIMITIV-REKURSIVE FUNKTIONEN

135

berechenbar. Der Komposition von Funktionen entspricht der Sequenz von Anweisungen in Programmen: yi = hi (x1 , . . . , xk ), 1 ≤ i ≤ m, sind die Ergebnisse der Anweisungen hi , die dann in die Anweisung g einfließen, um y = g(y1 , . . . , ym ) zu berechnen: y1 = h1 (x1 , . . . , xk ) y2 = h2 (x1 , . . . , xk ) .. . ym = hm (x1 , . . . , xk ) y = g(y1 , . . . , ym ) Etwas abstrakter ausgedr¨ uckt k¨ onnen die hi als Unterprogramme aufgefasst werden, die vom Programm g aufgerufen werden. Primitive Rekursion F¨ ur k ∈ N0 ist die primitive Rekursion der Funktionen g : Nk0 → N0 und h : Nk+2 → N0 0 definiert durch die Funktion PRK [g, h] : Nk+1 → N0 0 mit PRK [g, h] (x1 , . . . , xk , 0) = g(x1 , . . . , xk ) PRK [g, h] (x1 , . . . , xk , ν(y)) = h(x1 , . . . , xk , y, PRK [g, h] (x1 , . . . , xk , y)) Sei y = 2 = ν(1), dann gilt PRK [g, h] (x1 , . . . , xk , ν(1)) = h(x1 , . . . , xk , 1, PRK [g, h] (x1 , . . . , xk , 1)) = h(x1 , . . . , xk , 1, PRK [g, h] (x1 , . . . , xk , ν(0))) = h(x1 , . . . , xk , 1, h(x1 , . . . , xk , 0, PRK [g, h] (x1 , . . . , xk , 0))) = h(x1 , . . . , xk , 1, h(x1 , . . . , xk , 0, g(x1 , . . . , xk ))) Dieses Rekursionsschema ist eine abstrakte, mathematische Beschreibung dessen, was eine Z¨ahlschleife in prozeduralen Programmiersprachen bewirkt. Ist f = PRK [g, h] dann bewirkt der Aufruf f (x1 , . . . , xk , y) Folgendes: y wird als Z¨ahlvariable betrachtet. Am Schleifenanfang (y = 0) findet mithilfe von g eine Initialisierung statt. Deren Ergebnis geht in die erste

136

KAPITEL 14. BERECHENBARE FUNKTIONEN f := g(x1 , . . . , xk ); for i := 0 to y − 1 do f := h(x1 , . . . , xk , i, f ) endfor Abbildung 14.1: Primitive Rekursion als Z¨ahlschleife.

Schleifenrunde ein. In jeder Schleifenrunde wird dann mit dem, was in der vorherigen Runde berechnet wurde, mit dem Z¨ ahler y und den Schleifenvariablen x1 , . . . , xk das Ergebnis dieser Runde berechnet. Die Schleife wird y-mal durchlaufen. In einer prozeduralen Programmiersprache k¨onnte die Schleife f (x1 , . . . , xk , y) wie in Abbildung 14.1 dargestellt aussehen. Definition 14.1. Die Menge PR der primitiv-rekursiven Funktionen ist die kleinste Menge von Funktionen von Nk0 → N0 , k ≥ 0, die alle Nullfunktionen, alle Projektionen und die Nachfolgerfunktion enth¨ alt und die unter Komposition und primitiver Rekursion abgeschlossen ist. 2 Beispiel 14.1. a) Die Konstante 1 : N00 → N0 definiert durch 1() = 1 ist eine primitiv-rekursive Funktion, denn es gilt   1 = C ν; O0 (14.1) mit   1() = C ν; O0 () = ν(O0 ()) = ν(0) = 1 b) Jede Konstante c : N00 → N0 definiert durch c() = c ist eine primitiv-rekursive Funktion, denn es gilt c = C [ν; C [ν; . . . ; C [ν; O0 ] . . .]] {z } |

(14.2)

c−mal

mit c() = C [ν; C [ν; . . . ; C [ν; O0 ] . . .]] () = ν c (O0 ()) = ν c (0) = c {z } | c−mal

c) Die Identit¨ at id : N0 → N0 definiert durch id (x) = x ist primitiv-rekursiv, denn es gilt id = π11 mit id (x) = π11 (x) = x d) Die Addition add : N0 × N0 → N0 definiert durch add (x, y) = x + y ist primitiv-rekursiv, denn es gilt    add = PRK π11 , C ν; π33 (14.3)

14.1. PRIMITIV-REKURSIVE FUNKTIONEN

137

Es gilt z.B.    add (3, 2) = PRK π11 , C ν, π33 (3, 2)      = C ν; π33 (3, 1, PRK π11 , C ν; π33 (3, 1))    = ν(π33 (3, 1, PRK π11 , C ν; π33 (3, 1)))    = ν(PRK π11 , C ν; π33 (3, 1))      = ν(C ν; π33 (3, 0, PRK π11 , C ν; π33 (3, 0)))    = ν(ν(π33 (3, 0, PRK π11 , C ν; π33 (3, 0)))    = ν(ν(PRK π11 , C ν; π33 (3, 0))) = ν(ν(π11 (3, 0))) = ν(ν((3)) = ν(4) =5 e) Die Multiplikation mult : N0 × N0 → N0 definiert durch mult(x, y) = x · y ist primitiv-rekursiv, denn es gilt    mult = PRK O1 , C add ; π13 , π33 (14.4) f ) Die Quadrierung sqr : N0 → N0 definiert durch sqr (x) = x2 ist primitiv-rekursiv, denn es gilt   sqr = C mult; π11 , π11 (14.5) g) Die Vorg¨ angerfunktion pre : N0 → N0 definiert durch ( 0, x=0 pre(x) = x − 1, x ≥ 1 ist primitiv-rekursiv, denn es gilt:   pre = PRK O0 , π12

(14.6)

h) Die Subtraktion minus : N0 × N0 → N0 definiertt durch ( x − y, x ≥ y minus(x, y) = 0, x 0 sign(x) = 0, x = 0 ist primitiv-rekursiv, denn es gilt   sign = C minus; π11 , pre oder in u ¨blicher“ Notation ”

(14.9)

sign(x) = x − pre(x)

k) Der Test auf Gleichheit equal : N0 × N0 → N0 definiert durch ( 1, x = y equal (x, y) = 0, x 6= y ist primitiv-rekursiv, denn es gilt        equal = C minus; 1, C sign; C add ; C minus; π12 , π22 , C minus; π22 , π12

(14.10)

oder in u ¨blicher Notation equal (x, y) = 1 − sign((x − y) + (y − x)) 2 ¨ Ubung 14.1. a) Berechnen Sie mit dem Schema (14.4) mult(3, 2)! b) Berechnen Sie mit dem Schema (14.6) pre(3)! c) Berechnen Sie mit dem Schema (14.7) minus(5, 2)! 2

d) Berechnen Sie mit dem Schema (14.8) exp(2, 3)!

¨ Ubung 14.2. a) Geben Sie eine primitv-rekursive Funktion an, die die Funktion sum : N0 → N0 definiert durch n X sum(n) = i i=0

berechnet! b) Geben Sie eine primitv-rekursive Funktion an, die die Funktion ! : N0 → N0 definiert durch ( 1, n=0 n! = n(n − 1)!, n ≥ 1 berechnet!

2

14.2. µ-REKURSION

139

read(x1 , . . . , xk ); y := 0; while f (x1 , . . . , xk , y) 6= 0 do y := y + 1 endwhile; write(y) Abbildung 14.2: µ-Rekursion als Wiederholungsschleife.

14.2

µ -Rekursion

Die Grundfunktionen, Nullfunktionen, Projektionen und Nachfolgerfunktion, sind totale Funktionen. Die Komposition und die primitive Rekursion erhalten diese Eigenschaft, d.h. jedes Element von PR ist eine totale Funktion. Es gibt aber Funktionen, die wir sicherlich als berechenbar ansehen, die aber nicht total definiert sind. Beispiele sind die Wurzelfunktionen und die Logarithmen. Die Quadratwurzel etwa ist nur auf Quadratzahlen definiert und der Logarithmus zur Basis zwei nur f¨ ur Zweierpotenzen. Diese nur partiell definierten Funktionen k¨onnen also nicht primitiv-rekursiv sein. Wir ben¨ otigen also noch ein weiteres Konzept, mit denen auch nicht totale Funktionen berechnet werden k¨ onnen. Definition 14.2. Sei f : Nk+1 → N0 , dann ist die Funktion µ [f ] : Nk0 → N0 definiert durch 0

µ -Rekursion

µ [f ] (x1 , . . . , xk ) = min{ z | (x1 , . . . , xn , y) ∈ Def (f ) f¨ ur y ≤ z und f (x1 , . . . , xk , z) = 0 } Das Ergebnis der µ-Rekursion auf f ist also das kleinste z mit f (x1 , . . . , xk , z) = 0 unter der Voraussetzung, dass f (x1 , . . . , xk , y) f¨ ur y ≤ z definiert ist. 2 Die µ-Rekursion kann als mathematische Abstraktion von Wiederholungsschleifen (While-Schleifen) in prozeduralen Programmiersprachen betrachtet werden. y ist die Schleifenvariable, die mit Null beginnend hoch gez¨ ahlt wird, und in jedem Schleifendurchlauf wird gepr¨ uft, ob f (x1 , . . . , xk , y) = 0 ist. Falls das zutrifft, ist z = y, die Anzahl der Schleifendurchl¨aufe, das Ergebnis der Schleife. Falls die Bedingung nicht erreicht wird, dann terminiert die Schleife nicht, d.h. µ [f ] (x1 , . . . , xk ist nicht definiert. In einer prozeduralen Programmiersprache k¨onnte die Schleife µ [f ] (x1 , . . . , xk ) wie in Abbildung 14.2 dargestellt aussehen. Definition 14.3. Die Klasse µR der µ-rekursiven Fuktionen ist die kleinste Menge von Funktionen f : Nk0 → N0 , k ≥ 0, die alle Grundfunktionen (Nullfunktionen, Projektionen, Nachfolgerfunktion) enth¨ alt und die unter Komposition, primitver Rekursion und Anwendung des µ-Operators abgeschlossen ist. 2 Beispiel 14.2. a) Die Funktion sub : N0 × N0 → N0 definiert durch ( x − y, x ≥ y sub(x, y) = ⊥, x y und x < y. Ist x = y, dann ist f (x, y, d) = 0 f¨ ur alle d ∈ N0 . Ist x > y, dann ist sign(x − y) = 1, sign(y − x) = 0 und (x − (y + d)) > 0 f¨ ur d < x − y, d.h. es ist f (x, y, d) = 1 f¨ ur d < x − y und f (x, y, , x − y) = 0. Ist x < y, dann ist sign(x − y) = 0 und sign(y − x) = 1 f¨ ur alle d ∈ N0 , d.h. es ist f (x, y, d) = 1 f¨ ur alle d ∈ N0 . ¨ Aus diesen Uberlegungen folgt, dass sub = µ [f ]

(14.11)

ist. Betrachten wir das Muster von Abbildung 14.2, dann wird sub von dem in Abbildung 14.3 dargestellten Programm berechnet. Falls x ≥ y ist, dann wird d so lange hoch gez¨ahlt, bis d = x − y ist, und d wird ausgegeben. Ist x < y, dann terminiert die Schleife nicht, d.h. f¨ ur die Eingabe (x, y) erfolgt keine Ausgabe. √ b) Die Funktion : N0 → N0 definiert durch √

( x=

y, falls x = y 2 ⊥, sonst

ist µ-rekursiv. Dazu setzen wir f (x, y) = x y 2 , dabei sei “ eine Darstellung f¨ ur die Funktion ” sub. f ist eine µ-rekursive Funktion, denn es gilt    f = C sub; π12 , C sqr ; π22 Wir k¨ onnen nun zu gegebenem x die Quadratwurzel berechnen, indem wir y √ beginnend bei Null hoch z¨ ahlen und dabei testen, ob x = y 2 ist. Falls das erreicht wird, ist y = x, ansonsten terminiert das Verfahren nicht. Es gilt     √ = µ [f ] = µ C sub; π12 , C sqr ; π22 (14.12) Abbildung 14.4 zeigt eine Implementierung dieses Verfahrens.

14.2. µ-REKURSION

141

read(x); y := 0; while x y 2 6= 0 do y := y + 1 endwhile; write(y) Abbildung 14.4: Berechnung der Funktion



durch µ-Rekursion.

read(b, x); y := 0; while x exp(b, y) 6= 0 do y := y + 1 endwhile; write(y) Abbildung 14.5: Berechnung der Logarithmus-Funktion durch µ-Rekursion. c) Die Funktion log : N0 × N0 → N0 definiert durch ( y, falls by = x log(b, x) = ⊥, sonst ist µ-rekursiv. Dazu setzen wir f (b, x, y) = x exp(b, y) (siehe Beispiel 14.1 i). f ist µ-rekursiv, denn es gilt    f = C sub; π23 , C exp; π13 , π33 Wir k¨ onnen nun zu gegebenem b und x den Logarithmus von x zur Basis b berechnen, indem wir y beginnend bei Null hoch z¨ ahlen und dabei testen, ob by = x ist. Falls das erreicht wird, ist y = logb x, ansonsten terminiert das Verfahren nicht. Es gilt     log = µ [f ] = µ C sub; π23 , C exp; π13 , π33 (14.13) Abbildung 14.5 zeigt eine Implementierung dieses Verfahrens.

2

¨ Ubung 14.3. Geben Sie eine µ-rekursive Funktion an, welche die Funktion div : N0 × N0 → N0 definiert durch div (a, b) =

   q,

falls b 6= 0 und q, r ∈ N0 existieren mit a = bq + r und 0 ≤ r < b   ⊥, sonst 2

berechnet! ¨ Ubung 14.4. Geben Sie eine µ-rekursive Funktion an, welche die Funktion mod : N0 × N0 → N0

142

KAPITEL 14. BERECHENBARE FUNKTIONEN

definiert durch

mod (a, b) =

   r,

falls b 6= 0 und q, r ∈ N0 existieren mit a = bq + r und 0 ≤ r < b   ⊥, sonst 2

berechnet! ¨ Ubung 14.5. Geben Sie eine µ-rekursive Funktion an, welche die Funktion √ definiert durch √ n

: N0 × N0 → N0 (

x=

y, falls x = y n ⊥, sonst 2

berechnet!

14.3

Berechenbarkeit, Churchsche These

Die µ-rekursiven Funktionen sind ein Konzept, um den Begriff der Berechenbarkeit von Funktionen f : Nk0 → N0 mathematisch zu pr¨ azisieren.1 Daneben gibt es eine Reihe weiterer Konzepte, wie z.B. Turingmaschinen, Universelle Registermaschinen, Goto-Programme, While-Programme, MarkovAlgorithmen, λ-Kalk¨ ul. Obwohl diese Konzepte teilweise auf sehr unterschiedlichen Ans¨atzen basieren, kann gezeigt werden, dass sie alle dieselbe Klasse von Funktionen { f | f : Nk0 → N0 , k ≥ 0 } ¨ als berechenbar festlegen. Diese Aquivalenz der Berechenbarkeitskonzepte ist die Begr¨ undung f¨ ur 2 die Churchsche These. Churchsche These

Churchsche These Die Klasse µR der µ-rekursiven Funktionen ist genau die Klasse der im intuitiven Sinne berechenbaren Funktionen. 2

Partiell berechenbare Funktion

Wir bezeichnen mit P = { f | f : Nk0 → N0 , k ≥ 0, f ist im intuitiven Sinn berechenbar } die Klasse der partiell berechenbaren Funktionen. Die Churchsche These besagt, dass µR = P ist.

Zu Beginn von Kapitel 14.2 haben wir bereits festgestellt, dass PR, die Klasse der primitivrekursiven Funktionen, eine echte Teilklasse von P ist: PR ⊂ P. Des Weiteren haben wir dort u ¨berlegt, dass alle primitiv-rekursiven Funktionen total sind. Wenn wir mit R die Klasse der total berechenbaren Funktionen bezeichnen, dann gilt also PR ⊆ R. Die Frage ist, ob auch die Umkehrung gilt, d.h., ob alle total berechenbaren Funktionen auch primitivrekursiv sind. In den ersten Jahren der Berechenbarkeitstheorie gab es Vermutungen in diese RichAckermannfunktion tung. Doch F.W. Ackermann3 konnte 1926 (ver¨offentlicht 1928) eine Funktion angeben, die total 1 Dieser Ansatz geht auf Stephen C. Kleene (1909 – 1998) zur¨ uck, einem amerikanischen Mathematiker und Logiker, der fundamentale Beitr¨ age zur Logik und zur Theoretischen Informatik geliefert hat. 2 Diese These wurde vorgeschlagen und begr¨ undet von Alonzo Church (1903 – 1995), amerikanischer Mathematiker und Logiker, der, wie sein Sch¨ uler Kleene, wesentliche Beitr¨ age zur mathematischen Logik und Berechenbarkeitstheorie geleistet hat. Auf Church geht auch das Berechenbarkeitskonzept des λ-Kalk¨ uls zur¨ uck.

14.3. BERECHENBARKEIT, CHURCHSCHE THESE

143

berechenbar, aber nicht primitiv-rekursiv ist. Ackermanns Idee war, eine Folge stark anwachsender Funktionen ϕi (a, b), i ≥ 0, rekursiv wie folgt festzulegen: b + 1, a + b, a · b, ab , . . .

(14.14)

Diese Folge hat die Eigenschaft, dass bei jedem Glied die Operation des vorherigen Gliedes (b − 1)mal auf a angewandt wird. So bedeutet a + b, dass (b − 1)-mal 1 zu a + 1 addiert wird: a + b = a + 1 +1 + 1 + . . . + 1 | {z } (b−1)-mal

a · b bedeutet, dass (b − 1)-mal a zu a addiert wird: a · b = a +a + a + . . . + a | {z } (b−1)-mal

Und ab bedeutet, dass (b − 1)-mal a mit a multipliziert wird: ab = a ·a · . . . · a} | · a {z (b−1)-mal

F¨ ur das n¨ achste Folgenglied gibt es keine g¨angige mathematische Notation. Deshalb ist in (14.14) an der Stelle . . . angegeben. Dieses Folgendglied ergibt sich, indem (b − 1)-mal a mit sich selbst fortgesetzt potenziert wird: aa

··

·a

Ackermann beschrieb diese Folge mit der Funktion ϕ : N0 × N0 × N0 → N0 , deren drittes Argument die entsprechende Nummer des Gliedes in der Folge (14.14) angibt, d.h. ϕ(a, b, i) = ϕi (a, b): ϕ(a, b, 0) = b + 1 ϕ(a, b, 1) = a + b ϕ(a, b, 2) = a · b ϕ(a, b, 3) = ab ϕ/a, b, 4) = . . . R´ ozsa P´eter4 konnte 1955 eine vereinfachte Definition der Ackermannfunktion ϕ angeben. Ihre Definition dieser Funktion ist die, die wir bereits aus Definiton 13.1 auf Seite 124 kennen. Diese Definition kommt ohne informelle Beschreibung der fortgesetzten Definition der Folgenglieder bzw. ohne Einf¨ uhrung neuer mathematischer Operationen zu deren formalen Beschreibung aus. Es kann nun zum einen gezeigt werden, dass die in Kapitel 13.3 auf der Basis der Ackermannfunktion definierte Funktion ack (siehe Gleichung (13.7)auf Seite 125) total berechenbar ist, und zum anderen, dass diese Funktion st¨ arker w¨achst, als alle primitiv-rekursiven Funktionen. 3 Friedrich Wilhelm Ackermann (1896 - 1962) lieferte wichtige Beitr¨ age zu mathematischen Grundlagen, zur mathematischen Logik und zur Rekursionstheorie. 4 Die ungarische Mathematikerin R´ ozsa P´ eter (1905 - 1977) lieferte wesentliche Beitr¨ age zur Theoreie der rekursiven Funktionen.

144

KAPITEL 14. BERECHENBARE FUNKTIONEN

Satz 14.1. Zu jeder primitv-rekursiven Funktion f : N0 → N0 existiert ein xf ∈ N0 , so dass ack (x) > f (x) f¨ ur alle x ≥ xf ist. 2 Folgerung 14.1. a) Es ist ack ∈ R − PR. b) Es gilt PR ⊂ R sowie 2

c) PR ⊂ R ⊂ P.

Wir werden in Kapitel 14.5 noch sehen, dass P ⊂ { f | f : Nk0 → N0 , k ≥ 0 } ist, d.h. es gibt Funktionen, die nicht berechenbar sind, und wir werden auch ein Beispiel einer solchen Funktion angeben.

14.4

utm- und smn-Theorem

Anforderungen Das Berechenbarkeitskonzept der µ-rekursiven Funktionen erf¨ ullt (wie auch die anderen erw¨ ahnten an Konzepte) zwei wesentliche Anforderungen, die man sowohl aus theoretischer als auch aus praktiBerechenbarkeits-

scher Sicht an solche Konzepte stellen kann:

konzepte

(1) die Existenz einer berechenbaren universellen Funktion und (2) die M¨ oglichkeit der Parametrisierung. Um diese beiden Anforderungen zu beschreiben und zu analysieren, nehmen wir eine Nummerierung der Menge P der partiell berechenbaren Funktionen vor. Wenn wir uns noch einmal die Beispiele in den Kapiteln 14.1 und 14.2 ansehen, k¨onnen wir feststellen, dass µ-rekursive Funktionen syntaktisch betrachtet Zeichenketten sind, die aus Symbolen f¨ ur die Namen der Grundfunktionen, aus Symbolen f¨ ur die Komposition, die primitive Rekursion und die µ-Rekursion sowie aus eckigen Klammern bestehen, außerdem kommen Kommata und das Semikolon vor. F¨ ur die folgenden Betrachtungen wollen wir die Exponenten bzw. Indizes bei den Nullfunktionen Ok , k ≥ 0, und den Projektionen πik , 1 ≤ i ≤ k, k ≥ 1, mithilfe der Bierdeckelnotation“ codieren, ” indem wir folgende Darstellungen vornehmen: Ok −→ O|k , k ≥ 0 πik −→ π|k #|i , 1 ≤ i ≤ k, k ≥ 1 Es wird also z.B. O3 durch O||| und π25 durch π|||||#|| codiert. Mit diesen Darstellungen der Nullfunktionen und der Projektionen k¨onnen wir nun µ-rekursive Funktionen syntaktisch als W¨ orter u ¨ber dem folgenden 12-elementigen Alphabet auffassen: Σ = { |, #, O, π, ν, C, PRK, µ, [, ] , ; , , } Mit diesem Alphabet haben wir also eine Codierung σ : µR → Σ+ festgelegt. F¨ ur die im Beispiel 14.1 d) programmierte Funktion    add = PRK π11 , C ν; π33

14.4. UTM- UND SMN-THEOREM

145

ρ(|) = 1 ρ(π) = 4 ρ(PRK) = 7 ρ( ]) = 10 ρ(#) = 2 ρ(ν) = 5 ρ(µ) = 8 ρ(; ) = 11 ρ(O) = 3 ρ(C) = 6 ρ([ ) = 9 ρ(,) = 12 Tabelle 14.1: Definition der Bijektion ρ. gilt z.B. σ(add ) = PRK [π|#|, C [ν; π|||#|||]] Jetzt gehen wir noch einen Schritt weiter und ordnen den Buchstaben dieses Alphabetes in der aufgez¨ ahlten Reihenfolge die Zahlen 1, 2, . . . , 12 zu, d.h. wir verwenden z.B. die Bijektion ρ : Σ → { 1, 2, . . . , 12 } definiert durch die Tabelle 14.4. Daraus ergibt sich folgendermaßen eine Nummerierung der W¨orter u ¨ber Σ: Es sei pi ∈ P die i-te Primzahl, dann sei die Abbildung g : Σ+ → N definiert durch ρ(x1 )

g(x1 . . . xn ) = p1

· . . . · pnρ(xn )

Betrachten wir als Beispiel (siehe Beispiel 14.1 c) die Funktion id = π11 Es gilt σ(id ) = π|#| und g(π|#|) = 24 · 31 · 52 · 71 = 8 400 d.h. der Funktion id wird die Nummer 8 400 zugeordnet. Betrachten wir als weiteres Beispiel (siehe Beispiel 14.1 b) die Funktion   1 = C ν; O0 Es gilt   σ(1) = C ν; O0 und   g C ν; O0 = 26 · 39 · 55 · 711 · 113 · 1310 = 1 428 273 264 576 872 238 279 737 182 200 000 d.h. der Funktion 1 wird die Nummer 1 428 273 264 576 872 238 279 737 182 200 000 zugeordnet. Man sieht, dass durch die Funktion τ : µR → N definiert durch τ =g◦ρ

146

KAPITEL 14. BERECHENBARE FUNKTIONEN

den µ-rekursiven Funktionen sehr große Zahlen zugeordnet werden k¨onnen. Die Funktion τ ist injektiv und damit umkehrbar. Zu einer Zahl n ∈ N, die die Nummer einer µ-rekursiven Funktion f ist, kann f = τ −1 (n) berechnet werden. n muss in seine Primfaktoren zerlegt werden, diese werden der Gr¨oße nach geordnet und gleiche Faktoren werden zu Potenzen zusammengefasst. Diese sogenannte kanonische Faktorisierung nat¨ urlicher Zahlen ist eindeutig. Betrachten wir als Beispiel die Zahl 172 821 065 013 801 540 831 848 199 046 200 000 Ihre kanonische Faktorisierung ist 26 · 39 · 55 · 711 · 115 · 1310 woraus mithilfe der Tabelle 14.4 die µ-rekursive Funktion C [ν; ν] ergibt. Die Funktion τ ist nicht surjektiv, d.h. ihre Umkehrung τ −1 ist nicht total, d.h. es gibt Zahlen n ∈ N, die nicht Nummer einer µ-rekursiven Funktion sind, wie z.B. die Zahl 30 oder alle Primzahlen gr¨ oßer als 5. 30 hat die Faktorisierung 21 · 31 · 51 , woraus sich gem¨aß Tabelle 14.4 die Zeichenkette ||| ergibt, die keine µ-rekursive Funktion darstellt. Wir k¨ onnen die Funktion τ −1 aber zu einer surjektiven Funktion erg¨anzen, indem wir allen Zahlen, die nicht Nummer einer µ-rekursiven Funktion sind, irgendeiner µ-rekursive Funktion zuordnen. Als solche Funktion k¨ onnen wir z.B. ω : N0 → N0 definiert durch ω(n) =⊥ w¨ ahlen. Es gilt D(ω) = ∅, ω ist die nirgends definierte Funktion“. ω ist µ-rekursiv, denn f¨ ur ”     f = C add ; C ν; π22 , π12 gilt5 ω = µ [f ] Jetzt k¨ onnen wir folgende total definierte Umkehrung der Funktion τ −1 definieren: h : N → µR mit ( h(i) = G¨ odelisierung

f, falls i ∈ W (τ ) und τ (f ) = i ω, sonst

¨ Die Funktion τ stellt im Ubrigen eine sogenannte G¨ odelisierung dar. Darauf gehen wir im Kapitel 14.5 noch n¨ aher ein. 5 In

u ¨blicher Notation ist f (x, y) = ν(y) + x.

14.4. UTM- UND SMN-THEOREM

147

¨ Mithilfe der obigen Uberlegungen bekommen wir eine Nummerierung ϕ : N0 → P der partiell berechenbaren Funktionen: ϕ(i) = f genau dann, wenn h(i) die Funktion f berechnet Es ist also ϕ(i) = f genau dann, wenn f von der µ-rekursiven Funktion berechnet wird, die durch die Nummer i codiert ist. Im Folgenden schreiben wir, falls ϕ(i) = f und f eine k-stellige Funktion f : Nk0 → N0 ist, ϕi = f anstelle von ϕ(i) = f , um doppelte Argumente“zu vermeiden: ϕi (x1 , . . . , xk ) = f (x1 , . . . , xk ) ” anstelle von ϕ(i)(x1 , . . . , xk ) = f (x1 , . . . , xk ). Die Nummerierung (N0 , P, ϕ) kann als Programmiersprache aufgefasst werden: Jedes i ∈ N0 Nummerierung stellt ein Programm (genauer nat¨ urlich eine µ-rekursive Funktion) dar, und ϕ ordnet jedem Pro- Programmiergramm (genauer der µ-rekursiven Funktion mit der Nummer) i seine Bedeutung ϕi = f zu, n¨amlich sprache die Funktion, die von diesem Programm (von dieser µ-rekursiven Funktion) berechnet wird.6 Der folgende Satz, das so genannte utm-Theorem besagt, dass die Nummerierung (N0 , P, ϕ) die Anforderung (1) von Seite 144 erf¨ ullt. Satz 14.2. Es sei (N0 , P, ϕ) eine Nummerierung. Dann gibt es eine berechenbare Funktion uϕ ∈ P utmTheorem mit uϕ (i, x) = ϕi (x) 2 uϕ heißt universelle Funktion von (N0 , P, ϕ). Da uϕ ∈ P ist, gibt es eine µ-rekursive Funktion, Universelle die uϕ berechent, d.h. es gibt eine µ-rekursive Funktion Uϕ ∈ µR, die alle µ-rekursiven Funktionen Funktion f ∈ µR berechnet: Uϕ (f, x) = f (x). Die universelle Funktion kann also alle berechenbaren Funktionen berechnen. Das entspricht dem Konzept des universellen Rechners (genauer: eines universellen Programms), der alle Programme ausf¨ uhren kann. Wenn man sich vorstellt, dass ein Berechenbarkeitskonzept, keine universelle Funktion erm¨ oglicht, bedeutet dies, dass man f¨ ur jedes Programm einen eigenen Rechner bauen m¨ usste, um dieses auszuf¨ uhren. Das w¨ are wahrscheinlich sehr m¨ uhsam, und die entsprechende Technologie h¨ atte sicher nicht den Erfolg gehabt, die unsere bekannte IT-Technologie hat, die ganz wesentlich auf der Existenz universeller Maschinen beruht. Anforderung (2) (siehe Seite 144), die M¨oglichkeit der Parametrisierung, bedeutet, dass Programme Eingaben enthalten, die als Daten oder als Programme interpretiert werden k¨onnen. Betrachten wir etwa die Multiplikationsfunktion mult : N0 ×N0 → N0 definiert durch mult(x, y) = x·y (siehe (13.3) auf Seite 121 sowie Beispiel 14.1 e) auf Seite 136). Dann k¨onnen f¨ ur x und y Zahlen eingesetzt werden, aber es k¨ onnen auch Funktionen eingesetzt werden, wie z.B. x = (a + b)2 und y = (c − d). Damit ergibt sich die neue Funktion m : N40 → N0 definiert durch m(a, b, c, d) = 6 Nachdem man sich den Unterschied zwischen der µ-rekursiven Funktion f ∈ µR mit der Nummer i (es ist also τ (f ) = i) und der Funktion f 0 ∈ P, die von f berechnet wird (es ist also ϕi = f 0 ), klar gemacht hat, unterscheidet man im u ¨blichen Sprachgebrauch nicht mehr zwischen f und f 0 und spricht von der i-ten berechenbaren Funktion“oder ” vom i-ten Programm“oder von der Funktion mit der Nummer i.“ ” ”

148

KAPITEL 14. BERECHENBARE FUNKTIONEN

mult((a + b)2 , (c − d)) = (a + b)2 (c − d) bzw. m(a, b, c, d) = mult(sqr (add (a, b)), minus(c, d)). Durch Funktionen als aktuelle Parameter wird also aus    mult = PRK O1 , C add ; π13 , π33 die neue Funktion       m = C mult; C sqr ; C add ; π14 , π24 , C minus; π34 , π44 generiert. Das allgemeine Prinzip dieser M¨oglichkeit zur Parametrisierung beschreibt der folgende Satz, das so genannte smn-Theorem. smnTheorem

Satz 14.3. Es sei (N0 , P, ϕ) eine Nummerierung. Dann gibt es f¨ ur alle i ∈ N0 sowie f¨ ur alle m+1 n (x1 , . . . , xm ) ∈ Nm und (y , . . . , y ) ∈ N eine total berechenbare Funktion s : N → N , so dass 1 n 0 0 0 0 ϕi (x1 , . . . , xm , y1 , . . . , yn ) = ϕs(i,x1 ,...,xm ) (y1 , . . . , yn ) 2

gilt.

Die Parameter x1 , . . . , xm k¨ onnen als Programme interpretiert werden. Die Funktion s generiert aus dem Progamm i und den Programmen x1 , . . . , xm das Programm s(i, x1 , . . . , xm ). Wichtig ist, dass dieser Generator allgemein existiert, d.h. f¨ ur alle i und alle (x1 , . . . , xm ). Angewendet auf unser obiges Beispiel w¨are i die Codierung der µ-rekursiven Funktion f¨ ur mult, x1 die Codierung der µ-rekursiven Funktion f¨ ur C [sqr ; add ], x2 die Codierung der µ-rekursiven Funktion f¨ ur minus, y1 = a, y2 = b, y3 = c und y4 = d. Die Funktion s w¨ urde dann aus den Codierungen von mult, C [sqr ; add ] und minus die Codierung von m generieren.

14.5

Aufz¨ ahlbare und entscheidbare Mengen

Im Kapitel 14 haben wir den Begriff der Berechenbarkeit f¨ ur Funktionen f : Nk0 → N0 einf¨ uhrend betrachtet. Wir werden diesen Begriff nun auf Mengen u ¨bertragen, wobei in diesen Zusammenhang von Entscheidbarkeit von Mengen gesprochen wird. Wir werden unterschiedliche Grade von Entscheidbarkeit kennenlernen, und wir werden Zusammenh¨ange zur Abz¨ahlbarkeit von Mengen herstellen, wobei wir dabei von berechenbaren Abz¨ahlungen, sogenannten Aufz¨ahlungen ausgehen werden. Des Weiteren werden wir nicht berechenbare Funktionen und nicht entscheidbare Mengen kennenlernen. Lernziele

Nach dem Durcharbeiten dieses Kapitels sollten Sie • x

Kapitel 15

¨ Zusammenfassung und Ubungen 15.1

Zusammenfassung

Induktion und Rekursion sind elementare Prinzipien sowohl f¨ ur die Definition von Mengen, Relationen, Funktionen und Strukturen als auch f¨ ur das L¨osen von Problemen. Die Vollst¨ andige Induktion ist eine Methode, mit der man beweisen kann, dass ein Pr¨adikat P auf die Menge aller nat¨ urlichen Zahlen gr¨ oßer gleich einer Zahl n0 zutrifft (zumeist ist n0 = 0 oder n0 = 1). Ein Beweis mit Vollst¨ andiger Induktion besteht aus zwei Schritten, aus dem Induktionsanfang und dem Induktionsschritt. Mit dem Induktionsanfang wird gezeigt, dass P (n0 ) gilt. MIt dem Induktionsschritt wird gezeigt, dass unter der Annahme, dass P (n) (die Induktionsannahme) gilt, auch P (n + 1) (die Induktionsbehauptung) gilt. Mit einem verallgemeinerten Rekursionsschema f¨ ur eine Menge M werden zun¨achst Elemente von M explizit festgelegt (Rekursionsanfang). Dann wird ein Pr¨adikat angegeben, welches beschreibt, wie aus bereits vorhandenen Elementen von M deren weitere Elemente bestimmt werden k¨ onnen (Rekursionschritt). Ein Beispiel f¨ ur eine rekursiv definierte Menge, ist die Menge der aussagenlogischen Ausdr¨ ucke A in Kapitel 2. Aussagenlogische Konstanten und Variablen werden als gegebene aussagenlogische Ausdr¨ ucke angesehen (Rekursionsanfang), und aus gegebenen sowie bereits konstruierten Ausdr¨ ucken werden durch Verkn¨ upfung mit Operatorsymbolen weitere Ausdr¨ ucke gebildet (Rekursionschritt). Dass eine Eigenschaft P auf alle Elemente einer mit einem solchen Rekursionsschema definierten Menge zutrifft, kann nun durch verallgemeinerte Induktion gezeigt werden. Im Induktionsanfang wird gezeigt, dass P auf die explizit angegebenen Elemente zutrifft. Im Induktionsschritt wird gezeigt, dass unter der Voraussetzung, dass P auf Elemente von M zutrifft, P auch auf die gem¨aß dem Rekursionsschema aus diesen Elementen konstruierbaren Elemente zutrifft. Dann gilt, dass P auf alle Elemente der Menge zutrifft. Ein Beispiel ist die Eigenschaft der aussagenlogischen Ausdr¨ ucke, dass in ihnen die Anzahl der ¨ offnenden Klammern gleich der Anzahl der schließenden Klammern ist. Im Induktionsanfang zeigt man, dass die Eigenschaft auf alle explizit gegebenen Ausdr¨ ucke (Konstanten und Variablen) zutrifft. Im Induktionsschritt zeigt man, dass, wenn zwei Ausdr¨ ucke diese Eigenschaft besitzen, auch die gem¨ aß dem Rekursionsschema aus diesen beiden Ausdr¨ ucken konstruierbaren Ausdr¨ ucke diese 149

¨ KAPITEL 15. ZUSAMMENFASSUNG UND UBUNGEN

150 Eigenschaft besitzen.

Die Fibonacci-Folge und die Ackermannfunktion sind bekannte und bedeutende Beispiele f¨ ur rekursiv definierte Funktionen. Die Fibonacci-Folge hat nicht nur einen historisch unterhaltsamen Ursprung (Wachstum von Kaninchen-Populationen), sondern mit ihr und Varianten von ihr k¨ onnen Ph¨ anomene in vielen Bereichen von Mathematik, Informatik und Naturwissenschaften beschrieben und analysiert werden, und nicht zuletzt besteht ein enger Zusammenhang zum Goldenen Schnitt, ¨ einem Proportionalverh¨ altnis, welches in der Asthetik eine große Rolle spielt. Die Ackermannfunktion ist wegen ihres enormen Wachstumsverhaltens von großer Bedeutung. Sie ist ein Beispiel f¨ ur eine total berechenbare Funktion, die nicht mit Z¨ahlschleifen berrechnet werden kann, denn man kann zeigen, dass sie schneller als alle primtiv-rekursiven Funktionen w¨ achst. Mithilfe eines verallgemeinerten Rekursionsschemas kann auch der Begriff der Berechenbarkeit einer Funktion f : Nk0 → N0 definiert werden. Als berechenbar werden sehr einfache, elementare Funktionen (Grundfunktionen) angesehen wie die Nullfunktion, die Projektionen und die Nachfolgerfunktion. Mithilfe von Operatoren wie Komposition, primitive Rekursion und µ-Rekursion werden aus berechenbaren Funktionen neue berechenbare Funktionen konstruiert. Eine Funktion f : Nk0 → N0 wird als partiell berechenbar bezeichnet, falls es eine µ-rekursive Funktion gibt, die f berechnet. Neben den µ-rekursiven Funktionen gibt es weitere, davon und untereinander verschiedene Ans¨ atze, den Begriff der Berechenbarkeit zu definieren (z.B. Turingmaschinen, Universelle Registermaschinen, Goto-Programme, While-Programme, Markov-Algorithmen, λ-Kalk¨ ul). Man kann zeigen, dass alle diese Konzepte ¨ aquivalent sind, d.h. sie beschreiben alle dieselbe Klasse von Funktionen, n¨ amlich die Klasse P der partiell berechenbaren Funktion. Dies ist die Begr¨ undung f¨ ur die Churchsche These, die besagt, dass P mit der Klasse der Funktionen u ¨bereinstimmt, die man intuitiv als berechenbar ansieht. Die Klasse PR der primitiv-rekursiven Funktionen besteht aus den Funktionen, die sich aus den Grundfunktionen und der Anwendung von Komposition und primitver Rekursion ergibt. Diese Funktionen sind alle total definiert. Es gibt Funktionen, wie die Ackermannfunktion, die total berechenbar sind, aber nicht primitv-rekursiv. Wenn R die Klasse der total berechenbaren Funktionen ist, dann gilt: PR ⊂ R ⊂ P. Die µ-rekursiven Funktionen erf¨ ullen zwei wesentliche Anforderungen, die an Berechenbarkeitskonzepte sinnvollerweise gestellt werden k¨onnen: die Existenz einer berechenbaren universellen Funktion und die M¨ oglichkeit der Parametrisierung. Eine berechenbare universelle Funktionen kann alle anderen berechenbaren Funktionen berechnen, sie ist die Grundlage f¨ ur die Existenz universeller Rechner, welche alle Programme ausf¨ uhren k¨ onnen. Die Parametrisierung erlaubt effektives Programmieren, d.h. Programme k¨onnen nicht nur Daten als Eingaben haben, sondern auch Programme, wodurch neue Programme entstehen. In der Konsequenz besteht prinzipiell bei Eingaben kein Unterschied zwischen Daten und Programme.

15.2

¨ Ubungen

1. Beweisen Sie mithilfe vollst¨ andiger Induktion folgende Pr¨adikate: Pn (1) ∀n ∈ N: i=1 2(i − 1) = n2 ,

¨ 15.2. UBUNGEN

151

(2) Sei q ∈ R, q 6= 1, dann gilt ∀n ∈ N0 : (3) Sei x, y ∈ Z, dann gilt ∀n ∈ N0 :

Pn

xn −y n x−y

i=0

qi =

1−q n+1 1−q ,

∈ Z.

2. Zeigen Sie, dass f¨ ur die Folge der Fibonacci-Zahlen folgende Gleichungen gelten: (1) ∀n ∈ N: F1 + F3 + . . . + F2n−1 = F2n , (2) ∀n ∈ N0 : F0 + F2 + . . . + F2n = F2n+1 − 1, (3) ∀n ∈ N: 1 + F1 + F2 + . . . + Fn = Fn+2 , (4) ∀n ∈ N: Fn+1 Fn−1 − Fn2 = (−1)n . 3. Gilt ∀ ∈ N0 : n2 − n + 41 ∈ P? n

4. Die Fermat-Zahlen sind f¨ ur n ≥ 0 definiert durch An = 22 + 1. Zeigen Sie, dass f¨ ur alle n ≥ 1 gilt: A0 · A1 · . . . · An−1 = An − 2. 5. Bei der Fibonacci-Folge werden die Kaninchen als unsterblich vorausgesetzt. Eine unrealis¨ tische Annahme, die Mathematikerinnen und Mathematiker im Ubrigen (oft) machen, um zu eleganten L¨ osungen oder Theorien zu gelangen. Informatikerinnen und Informatiker m¨ ussen realistischer sein und sollten von der Sterblichkeit der Kaninchenpaare ausgehen. Nehmen wir – um u ¨berhaupt zu ersten L¨osungsans¨atzen zu kommen wieder vereinfachend – an, dass alle Kaninchen nach jeweils k Monaten sterben. Wie lautet nun eine Rekursiongleichung f¨ ur die Anzahl der Paare Fn nach n Monaten? F¨ ur welche k k¨onnen Sie analog zur Definition (13.4) auf Seite 122 eine geschlossene Formel zur Berechnung von Fn angeben? Welches Wachstum hat Fn f¨ ur diese k? 6. Beweisen Sie die Folgerungen 13.1 (Seite 124)! 7. Die Menge A der arithmetischen Ausdr¨ ucke u ¨ber N0 kann induktiv wie folgt definiert werden: (i) a ∈ N0 ⇒ a ∈ A: Jede nat¨ urliche Zahl a ist ein arithmetischer Ausdruck. (ii) x, y ∈ A ⇒ (x + y), (x · y) ∈ A: Sind x und y arithmetische Ausdr¨ ucke, dann auch (x + y) und (x · y). (iii) Genau die gem¨ aß den Regeln (i) und (ii) bildbaren Ausdr¨ ucke geh¨oren zu A. Beweisen Sie: In jedem Ausdruck von A ist die Anzahl von Zahlen aus N0 um 1 h¨oher als die Anzahl der Operatorsymbole + oder ·. 8. Die Relation R ⊆ N0 × N0 sei induktiv definiert durch: (i) Es ist (0, 0) ∈ R und (1, 1) ∈ R. (ii) (x, y) ∈ R ⇒ (x, y + 2) ∈ R ∧ (x + 2, y) ∈ R. Beweisen Sie: ∀(x, y) ∈ N0 × N0 : m − n ∈ G. 9. Definieren Sie die n-te Potenz von W¨ortern rekursiv! 10. Geben Sie eine rekursive Definition f¨ ur eine Funktion an, welche alle W¨orter u ¨ber einem gegebenen Alphabet Σ spiegelt!

¨ KAPITEL 15. ZUSAMMENFASSUNG UND UBUNGEN

152

11. Geben Sie eine rekursive Definition der Funktion anz : Σ∗ × Σ → N0 an, so dass anz (w, a) angibt, wie oft der Buchstabe a im Wort w vorkommt. 12. Beweisen Sie Folgerung 13.2 auf Seite 131! 13. Geben Sie eine primitv-rekursive Funktion an, die die Funktion sum : N0 → N0 definiert durch n X sum(n) = i i=0

berechnet! 14. Geben Sie eine primitv-rekursive Funktion an, die die Funktion ! : N0 → N0 definiert durch ( 1, n=0 n! = n(n − 1)!, n ≥ 1 berechnet! 15. Geben Sie eine µ-rekursive Funktion an, welche die Funktion div : N0 × N0 → N0 definiert durch    q, falls b 6= 0 und q, r ∈ N0 existieren mit a = bq + r div (a, b) = und 0 ≤ r < b   ⊥, sonst berechnet! 16. Geben Sie eine µ-rekursive Funktion an, welche die Funktion mod : N0 × N0 → N0 definiert durch    r, falls b 6= 0 und q, r ∈ N0 existieren mit a = bq + r mod (a, b) = und 0 ≤ r < b   ⊥, sonst berechnet! 17. Geben Sie eine µ-rekursive Funktion an, welche die Funktion √ : N0 × N0 → N0 definiert durch √ n

( x=

y, falls x = y n ⊥, sonst

berechnet! 18. Geben Sie eine µ-rekursive Funktion an, welche die Funktion geq : N0 × N0 → N0 definiert durch ( 1, falls x ≥ y geq(x, y) = 0, sonst berechnet! Geben Sie µ-rekursive Funktionen f¨ ur die analog definierten Funktionen ≤, > und < an!

¨ 15.2. UBUNGEN

153

19. Geben Sie eine µ-rekursive Funktion an, welche die Funktion max : N0 × N0 → N0 definiert durch ( x, falls x ≥ y max (x, y) = y, sonst berechnet! 20. Geben Sie eine µ-rekursive Funktion an, welche die Funktion min : N0 × N0 → N0 definiert durch ( x, falls x ≤ y min(x, y) = y, sonst berechnet! 21. Geben Sie eine µ-rekursive Funktion an, welche die Funktion () : N0 × N0 → N0 definiert durch   ( n! , n≥k n = k!·(n−k)! k ⊥, sonst berechnet!

154

¨ KAPITEL 15. ZUSAMMENFASSUNG UND UBUNGEN

Teil IV

Zahlenmengen

155

157 In den vorhergehenden Kapitelnn werden Zahlen und Zahlenmengen bereits verwendet, insbesondere in vielen Beispielen, ohne dass diese vorher definiert werden. Da diese Zahlen und Zahlenmengen sowie arithmetische Operationen darauf wie Addition und Multiplikation den meisten vertraut sein d¨ urften, konnten wir sie dort ohne Weiteres als Beispiele verwenden. Trotzdem wollen wir in diesem Teil noch etwas detaillierter auf die Zahlenmengen N (nat¨ urliche Zahlen), Z (ganze Zahlen), Q (rationale Zahlen) sowie R (reelle Zahlen)und C (komplexe Zahlen) eingehen, indem wir diese schrittweise aufeinander aufbauend einf¨ uhren und ihre elementaren Eigenschaften betrachten. Dies soll zur Wiederholung und Bewusstmachung der u ¨blicherweise unbewusst verwendeten Eigenschaften und Rechenregeln von bzw. mit Zahlen dienen. Bei all diesen Betrachtungen verwenden wir als Hilfsmittel zur Definition von neuen Begriffen und bei der Untersuchung derer Eigenschaften Konzepte und Methoden aus Teil I: Mengen, Relationen und Funktionen sowie Notationen der Logik.

158

Kapitel 16

Die Menge der ganzen Zahlen Wir haben im vorigen Kapitel gesehen, dass die Subtraktion x − y in N0 nur dann m¨oglich ist, falls x ≥ y ist. Wir werden nun eine neue Zahlenmenge einf¨ uhren, in der wir sowohl die Menge der nat¨ urlichen Zahlen und das in dieser Menge m¨ogliche Rechnen wiederfinden“ werden, in der wir ” aber auch die Subtraktion ohne Einschr¨ ankung durchf¨ uhren k¨onnen. Des Weiteren werden wir die Rechenregeln f¨ ur diese neuen Zahlen auflisten und uns mit der Frage nach der Abz¨ahlbarkeit der neuen Zahlenmenge besch¨ aftigen. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

¨ • verstehen, wie die ganzen Zahlen und das Rechnen mit diesen mithilfe einer geeigneten Aquivalenzrelation auf den nat¨ urlichen Zahlen eingef¨ uhrt werden k¨onnen, • die Rechenregeln f¨ ur ganze Zahlen kennen, • die Abz¨ ahlbarkeit der Menge der ganzen Zahlen beweisen k¨onnen.

16.1

Konstruktion der ganzen Zahlen

¨ Wir werden die Menge der ganzen Zahlen Z mithilfe einer Aquivalenzrelation u ¨ber Paaren von nat¨ urlichen Zahlen konstruieren. Die Relation Z ⊆ (N × N) × (N × N) sei definiert durch: (a, b) Z (c, d) genau dann, wenn a + d = b + c

(16.1)

gilt. Die Relation Z verwendet nur bekannte Begriffe: nat¨ urliche Zahlen bzw. Paare von nat¨ urlichen Zahlen sowie die Addition von nat¨ urlichen Zahlen. ¨ Wir zeigen nun, dass Z eine Aquivalenzrelation ist: Z ist reflexiv: F¨ ur alle (a, b) ∈ N × N gilt a + b = b + a, woraus mit (16.1) folgt, dass f¨ ur alle (a, b) ∈ N × N gilt: (a, b) Z (a, b). Z ist symmetrisch: Sei (a, b) Z (c, d), d.h. a + d = b + c. Mit den bekannten Rechenregeln folgt daraus, dass c + b = d + a gilt, und hieraus mit (16.1), dass (c, d) Z (a, b) gilt. 159

160

KAPITEL 16. DIE MENGE DER GANZEN ZAHLEN

Z ist transititv: Sei (a, b) Z (c, d) und (c, d) Z (e, f ), d.h. es ist a + d = b + c und c + f = d + e. Hieraus folgt, dass (a + d) + (c + f ) = (b + c) + (d + e) ist, und daraus folgt, dass a + f = b + e ist. Mit (16.1) folgt (a, b) Z (e, f ). ¨ Wir wollen nun die Aquivalenzklassen von Z bestimmen. Es gilt beispielsweise [(7, 3)]Z = { (7, 3), (5, 1), (6, 2), (8, 4), . . . } [(2, 2)]Z = { (2, 2), (1, 1), (3, 3), (4, 4), . . . } [(1, 3)]Z = { (2, 4), (3, 5), (4, 6), (5, 7), . . . } Konstruktion von Z

¨ Wir wollen als Repr¨ asentant jeder Aquivalenzklasse das Paar w¨ahlen, welches die Zahl 1 mindestens in einer Komponente enth¨ alt. Dann gilt allgemein f¨ ur a, b ∈ N mit a, b ≥ 2: [(a, 1)]Z = { (c, d) | c = d + (a − 1) }

(16.2)

[(1, 1)]Z = { (x, x) | x ∈ N }

(16.3)

[(1, b)]Z = { (c, d) | c + (b − 1) = d }

(16.4)

was sich leicht mithilfe von (16.1) nachrechnen l¨asst. RechenoperationenAuf der Menge (N × N)/Z f¨ ur ganze Addition ⊕, die Subtraktion Zahlen

¨ der Aquivalenzklassen f¨ uhren wir Rechenoperationen, n¨amlich die sowie die Multiplikation , ein:

[(a, b)]Z ⊕ [(c, d)]Z = [(a + c, b + d)]Z

(16.5)

[(a, b)]Z [(c, d)]Z = [(a + d, b + c)]Z

(16.6)

[(a, b)]Z [(c, d)]Z = [(ac + bd, bc + ad)]Z

(16.7)

Es sei darauf hingewiesen, dass diese Rechenoperationen ausschließlich mit nat¨ urlichen Zahlen und den daf¨ ur vollst¨ andig definierten Operationen Addition + und Multiplikation · definiert sind. Bevor wir die neu definierten Rechenoperationen weiter betrachten, wollen wir zur Vereinfachung ¨ den Aquivalenzklassen Namen geben. Da a, b ∈ N mit a, b ≥ 2 ist, gilt a − 1, b − 1 ∈ N. Damit f¨ uhren wir folgende Bezeichnungen ein: a − 1 = [(a, 1)]Z 0 = [(1, 1)]Z b − 1 = [(1, b)]Z

(16.8)

Es ist also z.B. 4 = [(5, 1)]Z und 2 = [(1, 3)]Z . ¨ Wir wollen nun diese Bezeichner f¨ ur die Aquivalenzklassen ganze Zahlen nennen und die Menge der ganzen Zahlen mit Z bezeichnen. Es ist also Z = { . . . , 3, 2, 1, 0, 1, 2, 3, . . . } Wir haben mithilfe der nat¨ urlichen Zahlen, mit den auf diesen vollst¨andig definierten Operatio¨ Z die Zahlenmenge Z mit vollst¨andig auf ihr definierten nen + und · und mit der Aquivalenzrelation

16.1. KONSTRUKTION DER GANZEN ZAHLEN Operationen ⊕, und rechnen: [(7, 3)]Z [(7, 3)]Z [(7, 3)]Z [(7, 3)]Z [(7, 3)]Z

161

geschaffen. In dieser neuen Rechenstruktur wollen wir ein paar Beispiele ⊕ ⊕

[(9, 2)]Z [(9, 2)]Z [(3, 7)]Z [(9, 2)]Z [(3, 7)]Z

= = = = =

[(16, 5)]Z [(9, 12)]Z [(10, 10)]Z [(69, 41)]Z [(42, 58)]Z

bzw. bzw. bzw. bzw. bzw.

4 4 4 4 4

⊕ ⊕

7 7 4 7 4

= 11 = 3 = 0 = 28 = 16

Nun, sp¨ atestens an diesen Beispielen bemerken wir, dass es sich um die uns bekannten ganzen Zahlen und f¨ ur diese definierte Rechenoperationen Addition, Subtraktion und Multiplikation handelt. Wenn wir x anstelle von x, −x anstelle von x notieren und diese Zahlen positive ganze Zahlen bzw. negative ganze Zahlen nennen, und außerdem + f¨ ur ⊕, − f¨ ur sowie · f¨ ur schreiben, benutzen wir die uns aus der Schule vertrauten Schreibweisen und Bezeichnungen f¨ ur das Rechnen mit ganzen Zahlen. Wir k¨ onnen zudem feststellen, dass die nat¨ urlichen Zahlen den positiven Zahlen entsprechen und dass wir den Zahlenraum der nat¨ urlichen Zahlen um die 0 und die negativen ganzen Zahlen erweitert haben. In diesem Zahlenraum ist nun – im Gegensatz zu den nat¨ urlichen Zahlen – die Subtraktion uneingeschr¨ ankt ausf¨ uhrbar. Dass die ganzen Zahlen eine Erweiterung der nat¨ urlichen Zahlen darstellen, d.h. dass die positiven ganzen Zahlen mit der auf ihnen definierten Addition und Multiplikation den nat¨ urlichen Zahlen mit ihrer Addition und Multiplikation entsprechen, also – mathematisch gesprochen – die Strukturgleichheit dieser beiden Rechenstrukturen, kann wieder mithilfe eines Isomorphismus beschrieben werden. Dazu sei Z+ = { [(a, 1)]Z | a ∈ N, a ≥ 1 }

Abgeschlossenheit von Addition, Multiplikation und Subtraktion Z als Erweiterung von N0

die Menge der positiven ganzen Zahlen einschließlich der Null (dargestellt in der urspr¨ unglichen ¨ Notation (16.8) als Aquivalenzklassen, um sie von der Notation der nat¨ urlichen Zahlen zu unterscheiden). Dann gelten f¨ ur die Abbildung ϕ : Z+ → N0 definiert durch ϕ([(a, 1)]Z ) = a − 1

(16.9)

die Eigenschaften: ϕ ist bijektiv und gen¨ ugt den Strukturgleichungen ϕ ([(a, 1)]Z ⊕ [(b, 1)]Z ) = ϕ ([(a, 1)]Z ) + ϕ ([(b, 1)]Z )

(16.10)

ϕ ([(a, 1)]Z ⊗ [(b, 1)]Z ) = ϕ ([(a, 1)]Z ) · ϕ ([(b, 1)]Z )

(16.11)

sowie

¨ Ubung 16.1. Beweisen Sie, dass die oben definierte Abbildung ϕ bijektiv ist und dass sie die Strukturgleichungen (16.10) und (16.11) erf¨ ullt! 2 Ein Isomorphismus kann als eineindeutige Umbenennung der Elemente einer Rechenstruktur Isomorphismus mit Elementen einer anderen Rechenstruktur aufgefasst werden, wobei diese Umbenennung mit den Rechenoperationen vertr¨ aglich sein muss. Diese Vertr¨aglichkeit wird durch die Strukturgleichungen

162

KAPITEL 16. DIE MENGE DER GANZEN ZAHLEN

f¨ ur die einzelnen Operationen beschrieben. Bis auf die Benennung der Elemente handelt es sich quasi um dieselben Rechenstrukturen. ¨ In unserem Beispiel werden die positiven ganzen Zahlen, d.h. die Aquivalenzklassen [a, 1]Z von Z mit a ≥ 1 eineindeutig den nat¨ urlichen Zahlen a − 1 zugeordnet, so dass die Umbenennung der Summe (des Produktes) von zwei ganzen Zahlen gleich der Summe (Produkte) der Umbenennungen, d.h. gleich der Summe (dem Produkt) der entsprechenden nat¨ urlichen Zahlen, ist.

16.2

Rechenregeln in Z

Neben den Regeln A1, A2, A3, M1, M2 und M3 (siehe Abschnitt 11.2), die in Z ebenfalls gelten, gilt f¨ ur x, y ∈ Z noch: (A4) Additives Inverses: x + y = 0. Dabei gilt y = −x, und −x heißt die zu x bez¨ uglich der Addition inverse oder die zu x negative Zahl.1

Additives Inverses

Die Definition der Relation ≤ kann ebenfalls u ¨bernommen werden: ≤ ⊆ Z × Z definiert durch x ≤ y genau dann, wenn ∃ d ∈ N0 : x + d = y definiert eine totale Ordnung auf Z. F¨ ur diese Ordnung gilt ebenfalls die Regel O1, w¨ahrend bei der Regel O2 unterschieden werden muss, ob der Faktor positiv oder negativ ist:

Monotonieregeln

(O2+) ∀ x, y, z ∈ Z mit x ≤ y und z ≥ 1 gilt xz ≤ yz, (O2−) ∀ x, y, z ∈ Z mit x ≤ y und z ≤ −1 gilt xz ≥ yz. Absolutbetrag

Eine oft verwendete Funktion f¨ ur ganze Zahlen ist der Absolutbetrag | | : Z → N0 definiert durch ( |x| =

x, −x,

falls x ≥ 0 falls x < 0

F¨ ur den Absolutbetrag gelten die folgenden Regeln: Dreiecksungleichung

(ABS1) Dreiecksungleichung: ∀ x, y ∈ Z : |x + y| ≤ |x| + |y|, (ABS2) ∀x, y ∈ Z : |x − y| ≤ |x| + |y|, (ABS3) ∀x, y ∈ Z : ||x| − |y|| ≤ |x| − |y|, (ABS4) ∀x, y ∈ Z : |xy| = |x||y|. 1 Formal betrachtet hat das Vorzeichen −“ von x eine andere Bedeutung als der Operator −“ in einer Subtraktion ” ” a − b zweier ganzer Zahlen a und b. Dies haben wir bei Einf¨ uhrung der ganzen Zahlen durch die Notationen x bzw. auch ganz bewusst unterschieden. Es gilt allerdings a + (−b) = a − b oder genauer a ⊕ b = a b, weswegen wir beim Rechnen nicht zwischen dem Operator − und dem Vorzeichen − streng unterscheiden m¨ ussen.

¨ 16.3. ABZAHLBARKEIT VON Z

16.3

163

Abz¨ ahlbarkeit von Z

Wir wollen nun die Abz¨ ahlbarkeit von Z untersuchen, d.h. die Frage beantworten, ob Z gleichm¨achtig zu N ist. Dazu betrachten wir die Abbildung f : Z → N0 definiert durch   falls z = 0  0, f (z) = 2z, falls z > 0   −(2z + 1), falls z < 0 f ist eine bijektive Abbildung, die den positiven ganzen Zahlen die geraden Zahlen und den negativen ganzen Zahlen die ungeraden Zahlen zuordnet. Die durch f definierte Abz¨ahlung z¨ahlt Z wie folgt ab: 0, −1, 1, −2, 2, −3, 3, . . .

164

KAPITEL 16. DIE MENGE DER GANZEN ZAHLEN

Kapitel 17

Die Menge der rationalen Zahlen Wir haben im vorigen Kapitel die Rechenstruktur N erweitert zur Rechenstruktur Z, in der auch die Subtraktion uneingeschr¨ ankt ausf¨ uhrbar ist. Die beschr¨ankte Ausf¨ uhrung der Division bleibt aber weiterhin bestehen: Die Division x : y f¨ ur zwei Zahlen x ∈ Z und y ∈ Z − {0} ist nur ausf¨ uhrbar, falls es ein z ∈ Z gibt mit x = yz. So existiert etwa der Quotient 4 : 3 in Z nicht, da es keine ganze Zahl z gibt mit 4 = 3z. Das heißt: Nicht alle Gleichungen der Art ax = b mit a, b ∈ Z mit a 6= 0 sind in Z l¨ osbar (sondern nur solche, bei denen a ein Teiler von b ist). In diesem Kapitel werden wir eine neue Zahlenmenge, die Menge Q der rationalen Zahlen, einf¨ uhren, in der wir zum einen solche Gleichungen l¨osen k¨onnen und in der wir zum anderen die Menge der ganzen Zahlen und das in dieser Menge m¨ogliche Rechnen erhalten, insofern Z zu Q erweitern. Auch f¨ ur Q werden wir weitere Rechenregeln auflisten und uns mit der Frage nach der Abz¨ahlbarkeit dieser Zahlenmenge besch¨ aftigen. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

• verstehen, wie die rationalen Zahlen und das Rechnen mit diesen mithilfe einer geeigneten ¨ Aquivalenzrelation auf den ganzen Zahlen eingef¨ uhrt werden k¨onnen, • die Rechenregeln f¨ ur rationale Zahlen kennen, • die Abz¨ ahlbarkeit der Menge der rationalen Zahlen beweisen k¨onnen.

17.1

Konstruktion der rationalen Zahlen

Analog zur Menge der ganzen Zahlen konstruieren wir die rationalen Zahlen ebenfalls mithilfe einer ¨ Aquivalenzrelation: Die Relation Q ⊆ (Z × (Z − {0}) × (Z × Z − {0}) sei definiert durch: (a, b) Q (c, d) genau dann, wenn ad = bc 165

(17.1)

166

KAPITEL 17. DIE MENGE DER RATIONALEN ZAHLEN

Die Relation Q verwendet nur bekannte Begriffe: ganze Zahlen bzw. Paare von ganzen Zahlen sowie die Multiplikation von ganzen Zahlen. ¨ Der Beweis, dass Q eine Aquivalenzrelation ist, erfolgt analog dem Beweis im vorigen Kapitel, ¨ der zeigt, dass die Relation Z eine Aquivalenzrelation ist: Q ist reflexiv: F¨ ur alle (a, b) ∈ Z × Z − {0} gilt ab = ba, woraus mit (17.1) folgt, dass f¨ ur alle (a, b) ∈ Z × Z − {0} gilt: (a, b) Q (a, b). Q ist symmetrisch: Sei (a, b) Q (c, d), d.h. ad = bc. Mit den bekannten Rechenregeln folgt daraus, dass cb = da gilt, und hieraus mit (17.1), dass (c, d) Q (a, b) gilt. Q ist transitiv: Sei (a, b) Q (c, d) und (c, d) Q (e, f ), d.h. es ist ad = bc und cf = de. Hieraus folgt, dass adf = bcf = bde ist, und daraus folgt, da d 6= 0 ist, dass af = be ist. Mit (17.1) folgt (a, b) Q (e, f ). Konstruktion von Q

¨ Die Aquivalenzklassen von Q sind f¨ ur x, y ∈ Z mit y 6= 0 gegeben durch: [(x, y)]Q = { (qx, qy) | q ∈ Z − {0} }

Rechenoperationen f¨ ur rationale Zahlen

(17.2)

¨ Auf der Menge Q = (Z × Z − {0})/Q der Aquivalenzklassen von Q, die wir Menge der rationalen Zahlen nennen wollen, f¨ uhren wir Rechenoperationen ein:1 • Addition und Subtraktion: [(a, b)]Q ± [(c, d)]Q = [(ad ± bc, bd)]Q • Multiplikation: [(a, b)]Q · [(c, d)]Q = [(ac, bd)]Q • Division: [(a, b)]Q : [(c, d)]Q = [(ad, bc)]Q Diese (neuen) Rechenoperationen sind ausschließlich mit ganzen Zahlen und den daf¨ ur vollst¨ andig ¨ definierten Operationen Addition, Subtraktion und Multiplikation definiert. Dabei stellen die Aquivalenzklassen [(x, y)]Q mit y = 1 genau die ganzen Zahlen dar. Auch hier kann man mithilfe eines Isomorphismus zeigen, dass die rationalen Zahlen als Erweiterung der ganzen Zahlen betrachtet werden k¨ onnen. F¨ ur die neuen Zahlen [(a, b)]Q mit a 6= 0 gilt wegen (17.2): [(a, b)]Q · [(b, a)]Q = [(ab, ba)]Q = [(ab · 1, ab · 1)]Q = [(1, 1)]Q [(b, a)]Q heißt das (multiplikative) Inverse zu [(a, b)]Q . Weiterhin gilt f¨ ur alle Zahlen [(a, b)]Q , [(c, d)]Q ∈ Q mit c 6= 0: ([(a, b)]Q · [(c, d)]Q ) : [(c, d)]Q = [(ac, bd)]Q : [(c, d)]Q = [(acd, bdc)]Q = [(cda, cdb)]Q = [(a, b)]Q In der Einleitung dieses Kapitels haben wir das Ziel formuliert, die ganzen Zahlen so zu erweitern, dass Gleichungen der Art ax = b f¨ ur a 6= 0 l¨osbar sind. Der folgende Satz besagt, dass dies in der Menge Q der rationalen Zahlen m¨oglich ist.

17.2. RECHENREGELN IN Q L¨ osung von ax = b in Q

167

Satz 17.1. F¨ ur alle Zahlen [(a, b)]Q , [(c, d)]Q ∈ Q mit a 6= 0 gibt es genau eine Zahl [(x, y)]Q ∈ Q mit [(a, b)]Q · [(x, y)]Q = [(c, d)]Q . Beweis Wir setzen x = bc und y = ad, dann gilt wegen (17.2): [(a, b)]Q · [(bc, ad)]Q = [(abc, abd)]Q = [(c, d)]Q Somit ist die Gleichung [(a, b)]Q · [(x, y)]Q = [(c, d)]Q f¨ ur gegebene rationale Zahlen [(a, b)]Q und [(c, d)]Q mit a 6= 0 l¨ osbar. Wir m¨ ussen noch die Eindeutigkeit der L¨osung x = bc und y = ad zeigen. Wir nehmen an, es gebe eine weitere L¨ osung [(x0 , y 0 )]Q . Es muss dann gelten [(a, b)]Q · [(x, y)]Q = [(a, b)]Q · [(bc, ad)]Q = [(abc, abd)]Q = [(c, d)]Q sowie [(a, b)]Q · [(x0 , y 0 )]Q = [(ax0 , by 0 )]Q = [(c, d)]Q Es folgt, dass [(abc, abd)]Q = [(ax0 , by 0 )]Q sein muss und damit x0 = bc und y 0 = ad, womit die Eindeutigkeit gezeigt ist.

2

In der uns vertrauten Notation werden rationale Zahlen nicht als Paare [(a, b)]Q , sondern als Br¨ uche Z¨ ahler ahler und b der Nenner des Bruches ab . Br¨ uche ab dargestellt. Dabei heißt a der Z¨

Nenner

17.2

Rechenregeln in Q

Die Rechenregeln A1 - 4 und M1 - 3 aus Z gelten analog auch in Q. Zudem gilt wegen Satz 17.1 die Rechenregel (M4) Multiplikatives Inverses: Zu jeder rationalen Zahl x 6= 0 existiert eine rationale Zahl y mit Multiplikatives Inverses xy = 1. Wir nennen x−1 = y das (multiplikative) Inverse von x. Aus Satz 17.1 folgt zudem f¨ ur x =

a b

mit a 6= 0: x−1 = ab .

F¨ ur den Absolutbetrag gilt neben den Regeln ABS1 - 4 noch die Regel (ABS5) | ab | =

|a| |b| .

Die Relation ≤ ⊆ Q × Q definiert durch a c x a x c ≤ genau dann, wenn es gibt mit x ≥ 0, y ≥ 1 und + = b d y b y d legt eine totale Ordnung auf Q fest. F¨ ur diese Ordnung gelten die Regeln O1, O2+ und O2−. Bez¨ uglich dieser Ordnung ist die Menge der rationalen Zahlen im Gegensatz zur Menge der Dichtheit ganzen Zahlen und damit auch im Gegensatz zur Menge der nat¨ urlichen Zahlen dicht, d.h. zwischen von Q 1 Dabei benutzen wir jetzt sofort die ublichen Notationen und nicht erst aus formalen Gr¨ unden, wie im vorigen ¨ Kapitel bei der Einf¨ uhrung der ganzen Zahlen, neue Symbole.

168

KAPITEL 17. DIE MENGE DER RATIONALEN ZAHLEN

zwei verschiedenen rationalen Zahlen a und c mit a ≤ c existiert immer eine von a und c verschiedene rationale Zahl b mit a ≤ b ≤ c. F¨ ur gegebene a und c braucht man nur b = a+c ahlen, denn es 2 zu w¨ gilt: a=

a+c c+c a+a ≤ ≤ =c 2 2 2

(17.3)

¨ ¨ Ubung 17.1. Uberlegen Sie, dass sogar gilt: Zwischen zwei verschiedenen rationalen Zahlen gibt es immer unendlich viele davon verschiedene rationale Zahlen. 2

17.3

Abz¨ ahlbarkeit von Q

Gerade in Anbetracht dieser Tatsache stellt sich nun die Frage, ob Q abz¨ahlbar ist. Denken Sie, bevor Sie weiter lesen, einen Moment u ¨ber diese Frage nach! Zu welchem Schluss sind Sie gekommen? Erstaunlicherweise l¨asst sich die Menge der rationalen Zahlen trotz ihrer Dichtheit abz¨ ahlen. Satz 17.2. Q ist abz¨ ahlbar. Beweis Wir betrachten zun¨ achst nur eine Teilmenge von Q, n¨amlich die positiven Br¨ uche gr¨ oßer 0: Q+ = { pq | p, q ≥ 1 }. Die folgende Matrix veranschaulicht eine Abz¨ahlung von Q+ .

1

1 1

2

3

3

6

4 .. .

10

2 2

3 4

.

.

4 7

...

q

...

.

5

8

.

. 9

.

p .. . Wir u ¨berlegen uns nun eine bijektive Abbildung f : N × N → N, die diese Matrix darstellt. Dabei benutzen wir, dass f¨ ur alle n ∈ N gilt (siehe Beispiel 12.1 auf Seite 115): n X

i=

i=1

n(n + 1) 2

(17.4)

In der ersten Spalte der Matrix stehen die Nummern der Paare (p, 1), p ≥ 1.2 Diese ergeben sich – unter Verwendung von (17.4) – durch f (p, 1) =

p X i=1

2 Diese

Paare entsprechen den Br¨ uchen

p 1

i=

p(p + 1) 2

= p, also den positiven ganzen Zahlen gr¨ oßer 0.

(17.5)

¨ 17.3. ABZAHLBARKEIT VON Q

169

F¨ ur q ≥ 2 gilt, dass sich die Nummer an der Stelle (p, q) in der Matrix ergibt, indem man die Nummer an der Stelle (p + 1, q − 1) (eine Zeile weiter und eine Spalte vorher) um 1 vermindert. F¨ ur f gilt also f (p, q) = f (p + 1, q − 1) − 1, q ≥ 2 Daraus ergibt sich f (p, q) = f (p + 1, q − 1) − 1 = f (p + 2, q − 2) − 2 .. . = f (p + q − 1, 1) − (q − 1), q ≥ 2 Mit (17.5) folgt hieraus f (p, q) =

p+q−1 X

i − (q − 1)

i=1

=

(p + q − 1)(p + q) − (q − 1) 2

¨ f ist bijektiv und stellt somit eine Abz¨ ahlung von N × N dar. Die Abbildung f heißt im Ubrigen Cantorsche Paarungsfunktion Cantorsche Paarungsfunktion. Mit der Funktion g(−p, q) = −f (p, q) erh¨alt man eine Abz¨ahlung der negativen Br¨ uche durch die negativen ganzen Zahlen. Wenn wir jetzt noch der rationalen 0 die Nummer 0 zuweisen, haben wir insgesamt eine Abz¨ ahlung aller Br¨ uche durch ganze Zahlen erhalten. Da die Menge der ganzen Zahlen abz¨ ahlbar ist, folgt, dass auch die Menge der Br¨ uche abz¨ahlbar ist. 2 ¨ Uberlegen Sie bitte noch folgenden Aspekt: Die Funktion f z¨ahlt nicht nur alle Elemente von Q ab, sondern sogar alle Br¨ uche. Das bedeutet, dass nicht nur jeder Bruch ab eine eineindeutige ¨ Nummer bekommt, sondern auch alle Elemente qa qb , q ∈ Z − {0}, der Aquivalenzklasse [(a, b)]Q ¨ (siehe (17.2) auf Seite 166), und jede dieser Aquivalenzklassen enth¨alt selbst schon unendlich viele Elemente.

170

KAPITEL 17. DIE MENGE DER RATIONALEN ZAHLEN

Kapitel 18

Reelle und komplexe Zahlen In Q lassen sich l¨ angst noch nicht alle Aufgabenstellungen mit praktischem Bezug l¨osen. So ist z.B. die Gleichung x2 = 2 in Q nicht l¨ osbar, d.h. dass es keine rationale Zahl a mit a2 = 2 gibt (siehe Beispiel 4.3 auf Seite 55). Allerdings stoßen wir schon bei den rationalen Zahlen an die Grenzen derzeitiger Rechnersysteme. Kein Intervall von Q kann (wegen der Dichtheit) vollst¨andig in Rechnern dargestellt werden. Da außerdem die Konstruktion der reellen Zahlen auf der Basis der bis jetzt vorgestellten Zahlenmengen mathematische Konzepte erfordert, die außerhalb der in dieser Lehreinheit vorgestellten mathematischen Grundlagen der Informatik liegen, werden wir darauf nicht weiter eingehen. Wir sehen die reellen Zahlen als gegeben an und betrachten nur eine einzige Frage, n¨ amlich die nach der Abz¨ ahlbarkeit von R. In vielen Anwendungen spielen die komplexen Zahlen eine wichtige Rolle. Wir f¨ uhren diese als Paare von reellen Zahlen ein, die bestimmten Rechenregeln gen¨ ugen. Nach dem Durcharbeiten dieses Kapitels sollten Sie

Lernziele

¨ • den Beweis der Uberabz¨ ahlbarkeit der reellen Zahlen verstehen und nachvollziehen k¨onnen, • die Definition komplexer Zahlen nachvollziehen k¨onnen und die Rechenregeln f¨ ur komplexe Zahlen kennen, • die Polarkoordinatendarstellung von komplexen Zahlen sowie das Multiplizieren und Dividieren mit diesen Darstellungen verstehen.

18.1

¨ Uberabz ahlbarkeit von R ¨

Zur Untersuchung dieser Frage betrachten wir R als eine Menge von Ziffernfolgen der folgenden Art: R = { g, d1 d2 d3 . . . | g ∈ Z, di ∈ { 0, 1, 2, . . . , 9 }, i ≥ 1 }

(18.1)

R enth¨ alt alle unendlichen Dezimalzahlfolgen mit ganzzahligem Anteil: g ∈ Z ist der ganzzahlige Anteil, und d1 d2 d3 . . ., di ∈ { 0, 1, 2, . . . , 9 }, i ≥ 1, ist die unendliche Folge von Dezimalstellen. Ohne weitere Begr¨ undung halten wir fest, dass jede reelle Zahl so dargestellt werden kann. Dabei sind die rationalen Zahlen genau diejenigen, die als periodische Dezimalbr¨ uche darstellbar sind. Beispiele 171

172

KAPITEL 18. REELLE UND KOMPLEXE ZAHLEN

sind etwa der Bruch 12 , der als endlicher Dezimalbruch 0, 5 und dieser als periodischer Dezimalbruch 0, 49 . . . = 0, 49,1 bzw. der Bruch 17 , der als periodischer Dezimalbruch 0, 142857 dargestellt werden kann. Die reellen Zahlen, die nicht rational sind, sind genau die, die als aperiodische Dezimalbr¨ uche darstellbar sind. Somit gehen wir im Folgenden von der Festlegung (18.1) aus. Satz 18.1. R ist u ahlbar. ¨berabz¨ Beweis Wir zeigen, dass die Menge der reellen Zahlen im offenen Intervall zwischen 0 und 1, das ¨ ist die Menge I = { x ∈ R | 0 < x < 1 }, u ahlbarkeit von R ¨berabz¨ahlbar ist, woraus die Uberabz¨ folgt. Jedes x ∈ I l¨ asst sich als unendlicher Dezimalbruch schreiben: x = 0, x1 x2 x3 . . . wobei die xi die Dezimalziffern von x sind, also xi ∈ { 0, 1, . . . , 9 } f¨ ur alle i. Wir nehmen an, dass I abz¨ ahlbar ist. Dann lassen sich alle Elemente von I abz¨ahlen, etwa wie folgt: x1 = 0, x11 x12 x13 . . . x2 = 0, x21 x22 x23 . . . x3 .. .

(18.2)

= 0, x31 x32 x33 . . . .. .. . .

Mithilfe dieser Tabelle konstruieren wir den folgenden unendlichen Dezimalbruch a = 0, a1 a2 a3 . . . mit  ai

=

1, falls xii = 6 1 , f¨ ur alle i ≥ 1 2, falls xii = 1

(18.3)

Diagonalisierung Die

i-te Ziffer von a ist also 1, falls die i-te Ziffer der Zahl xi in der obigen Abz¨ahlung ungleich 1 ist. Ist diese gleich 1, dann ist die i-te Ziffer von a gleich 2. a besteht also aus einer Folge von Einsen und Zweien, die durch die Diagonale“ xii , i ≥ 1, der Abz¨ahlung (18.2) bestimmt ist. Damit ist die Zahl ” a so konstruiert, dass sie sich von allen Zahlen xi mindestens in der i-ten Dezimalziffer unterscheidet, was die Grundlage f¨ ur den Widerspruch ist, den wir im Folgenden noch formal herleiten werden. Man nennt diese Art der Konstruktion Diagonalisierung.2

Da a ∈ I ist, muss a in der obigen Abz¨ahlung (18.2) von I vorkommen, d.h. es muss ein k geben mit a = xk . Betrachten wir die k-te Ziffer ak dieser Zahl. Nach Definition (18.3) von a gibt es zwei F¨ alle: ak = 1 oder ak = 2. (1) Sei ak = 1, dann ist wegen der Definition von a: xkk 6= 1. Damit ist aber a 6= xk . 1 Die Periode, d.h. die sich unendlich oft wiederholenden endlich vielen Dezimalstellen werden durch einen Uber¨ strich gekennzeichnet. 2 Das Konzept der Diagonalisierung geht auf Georg Cantor zur¨ uck. Dieses Konzept haben wir bereits im Beispiel 11.3 b) verwendet um zu zeigen, dass die Potenzmenge von N u ahlbar ist. Cantor hat im Vergleich zu Satz ¨berabz¨ 18.1 eine umfassendere Behauptung gezeigt: Zu jeder unendlichen Folge von unendlichen Dezimalzahlen existiert mindestens eine weitere unendliche Dezimalzahl, die in dieser Folge nicht vorkommt.

18.2. KOMPLEXE ZAHLEN

173

(2) Sei ak = 2, dann ist wegen der Definition von a: xkk = 1, also ungleich 2. Damit ist auch hier a 6= xk . Wir erhalten also in beiden F¨ allen einen Widerspruch: F¨ ur jedes k gilt, dass ak 6= xkk und damit a 6= xk ist. Unsere Annahme, dass I abz¨ ahlbar ist, ist also falsch. 2 W¨ ahrend die Menge der ganzen Zahlen und, wie wir gesehen haben, sogar die Menge der rationalen Zahlen gleichm¨ achtig zur Menge der nat¨ urlichen Zahlen sind, stellt die Menge der reellen Zahlen eine neue Qualit¨ at in Bezug auf ihre M¨achtigkeit im Vergleich zu den anderen Zahlenmen¨ gen dar. Man kann im Ubrigen zeigen, dass die Menge der reellen Zahlen und die Potenzmenge der Menge der nat¨ urlichen Zahlen gleichm¨ achtig sind. ¨ ¨ Ubung 18.1. Uberlegen Sie, wie man eine Bijektion zwischen diesen beiden Mengen definieren k¨ onnte! 2 Die Menge der reellen Zahlen erf¨ ullt alle bisher aufgelisteten Regeln A1 - 4, M1 - 4, D1 - 2, ABS1 - 5 sowie O1, O2+ und O2−.

18.2

Komplexe Zahlen

√ In R k¨ onnen wir nun Gleichungen der Art x2 = a mit a ≥ 0 l¨osen: Die L¨osungen x = ± a sind reelle Zahlen. Die Gleichungen x2 = −a mit a > 0 besitzen allerdings keine L¨osungen in der Menge R, denn es gibt keine reelle Zahl b mit der Eigenschaft b2 = −a. Um Gleichungen dieser Art zu l¨osen, f¨ uhrt man die sogenannte imagin¨ are Zahl i ein, und zwar durch die sie definierende Eigenschaft Imagin¨are i2 = −1. Mit dieser Zahl und der Menge der reellen Zahlen definieren wir die Menge der komplexen Zahl Zahlen als C = { a + bi | a, b ∈ R } Anstelle von a+bi notiert man auch a+ib. Re(z) = a heißt Realteil und Im(z) = b heißt Imagin¨ arteil Realteil Imagin¨ arteil der komplexen Zahl z = a + bi. z = a − bi heißt die zu z konjugierte komplexe Zahl. Konjugierte √ Die obige Gleichung x2 = √ −a mit a ∈ R und a > 0 besitzt in C die L¨osung c = i a. Es gilt Re(c) = 0 und Im(c) = a. Allgemein gilt der sogenannte Fundamentalsatz der Algebra, den wir ohne Beweis angeben, da dieser mathematische Kenntnisse verlangt, die nicht innerhalb dieses Kurses behandelt werden. Fundamentalsatz der Algebra Jede Gleichung an xn + an−1 xn−1 + . . . a1 x + a0 = 0 mit ai ∈ C, 0 ≤ i ≤ n, besitzt eine L¨ osung in C.

2

Wir k¨ onnen komplexe Zahlen a + ib als Paare (a, b) reeller Zahlen betrachten, dabei sei (a, b) = (a, −b) die Konjugierte zu (a, b). Die Paare (a, 0) entsprechen genau den reellen Zahlen. Auf Paaren definieren wir eine Addition und eine Multiplikation wie folgt: (a, b) + (c, d) = (a + c, b + d) (a, b) · (c, d) = (ac − bd, bc + ad)

(18.4) (18.5)

Rechenoperationen f¨ ur komplexe Zahlen

174

KAPITEL 18. REELLE UND KOMPLEXE ZAHLEN

Das Rechnen in der neuen Menge C wird also mit den Elementen der bekannten Menge R und den dort bekannten Rechenoperationen eingef¨ uhrt. Wir gehen hier also genauso wie in den vorherigen Kapiteln vor, in denen wir mit bekannten Zahlen und darauf definierten Rechenoperationen neue Zahlen und neue Rechenoperationen eingef¨ uhrt haben. Verifizieren Sie, dass die beiden Definitionen (18.4) und (18.5) auf den Paaren (a, 0) genau der Addition bzw. der Multiplikation reeller Zahlen entspricht. Die Rechenstruktur der reellen Zahlen ist also ein Teil der Rechenstruktur der komplexen Zahlen. Insofern kann C als Erweiterung von R aufgefasst werden. Die Addition zweier komplexer Zahlen ist also durch die Addition der beiden Real- sowie der beiden Imagin¨ arteile festgelegt. Wir wollen die Definition der Multiplikation verifizieren: Es gilt (a + bi) · (c + di) = ac + adi + cbi + bdi2 = (ac − bd) + (bc + ad)i womit Real- und Imagin¨ arteil des Produktes gleich dem Ergebnispaar der Definition (18.5) sind. Rechenregeln f¨ ur C

Rechnen Sie nun nach, dass die Addition und die Multiplikation komplexer Zahlen die Rechenregeln A1 - 2, M1 - 2 und D1 - 2 erf¨ ullen! Rechnen Sie auch nach, dass (0, 1) · (0, 1) = (−1, 0) gilt, was der definierenden Eigenschaft i2 = −1 der imagin¨ aren Zahl entspricht. Rechnen Sie des Weiteren nach, dass (a, b) · (a, b) = (a2 + b2 , 0)

(18.6)

gilt sowie dass f¨ ur z, z1 , z2 ∈ C die folgenden Beziehungen gelten: z=z

(18.7)

z1 + z2 = z1 + z2

(18.8)

z1 · z2 = z1 · z2   z1 z1 = z2 z2

(18.9) (18.10)

¨ ¨ Ubung 18.2. Uberlegen Sie sich, welche komplexen Zahlen das neutrale Element der Addition bzw. das neutrale Element der Multiplikation sind, und bestimmen Sie das additive Inverse sowie das multiplikative Inverse zu einer komplexen Zahl z! 2 Neutrale Elemente

Nun, das neutrale Element der Addition (x, y) muss die Bedingung (a, b) + (x, y) = (a, b) erf¨ ullen. Aus der Definition (18.4) folgt unmittelbar, dass nur (x, y) = (0, 0)3 diese Bedingung erf¨ ullt. Das neutrale Element (x, y) der Multiplikation muss die Bedingung (a, b) · (x, y) = (a, b) 3 (0, 0)

entspricht der 0 in R.

18.2. KOMPLEXE ZAHLEN

175

erf¨ ullen. Ausrechnen gem¨ aß (18.5) ergibt das Gleichungssystem ax − by = b bx − ay = a F¨ ur (a, b) 6= (0, 0) ergeben sich die L¨ osungen x = 1 und y = 0. (1, 0)4 ist also das neutrale Element der Multiplikation in C. F¨ ur das additive Inverse (x, y) zur Zahl (a, b) muss gelten: (a, b) + (x, y) = (0, 0). Aus (18.4) Additives Inverses folgt unmittelbar, dass x = −a und y = −b sein muss. Es gilt also: −(a, b) = (−a, −b). Nun wollen wir noch das multiplikative Inverse (x, y) zur Zahl (a, b) 6= (0, 0) bestimmen. Es Multiplikatives Inverse muss gelten: (a, b) · (x, y) = (1, 0). Wir erhalten das Gleichungssystem ax − by = 1 bx − ay = 0 Multiplikation der ersten Gleichung mit a und der zweiten Gleichung mit b und anschließende Addition der beiden Gleichungen liefert die Gleichung (a2 + b2 )x = a woraus x=

a2

a + b2

folgt. Durch Einsetzen dieses Wertes in die zweite Gleichung erhalten wir y=

a2

−b + b2

Wir haben also berechnet, dass (a, b)−1 =



−b a , a2 + b2 a2 + b2



das multiplikative Inverse von (a, b) 6= (0, 0) ist. ¨ Ubung 18.3. Rechnen Sie zur Probe nach, dass (a, b) · (a, b)−1 = (1, 0) gilt!

2

Wir wollen jetzt noch den komplexen Zahlen einen reellen Wert zuweisen. Dabei gehen wir von einer geometrischen Vorstellung aus: Wir betrachten die komplexen Zahlen (x, y) als Punkte im zweidimensionalen kartesischen Koordinatensystem. Wir ordnen der Zahl z = (x, y) als Betrag |z| den (euklidischen) Abstand des Punktes (x, y) vom Ursprung (0, 0) zu. Nach Pythagoras“ ergibt ” sich Betrag |z| einer p |z| = x2 + y 2 (18.11) komplexen Zahl

¨ Ubung 18.4. Rechnen Sie nach, dass f¨ ur z, z1 , z2 ∈ C folgende Beziehungen gelten: |z1 + z2 | ≤ |z1 | + |z2 | |z1 · z2 | ≤ |z1 | · |z2 | |z|2 = z · z

176

KAPITEL 18. REELLE UND KOMPLEXE ZAHLEN

2 Man kann Punkte (x, y) und damit komplexe Zahlen z = x + iy im zweidimensionalen Raum auch durch Polarkoordinaten darstellen, n¨amlich durch den Abstand r = |z| dieses Punktes vom Polarkoordinate Ursprung (0, 0) und durch den Winkel α zwischen der x-Achse und der Strecke vom Ursprung zum Punkt (x, y). Die Polarkoordinaten der komplexen Zahl z = x + iy sind also gegeben durch das Argument Paar (r, α). r heißt – wie schon bekannt – der Betrag, und der Winkel α heißt Argument von z. einer Da f¨ ur jeden Winkel α f¨ ur k ≥ 0 die Punkte (r, α + 2kπ) identisch sind, schr¨ankt man den Winkel komplexen α ein auf das Intervall −π < α ≤ π. Damit ist die Darstellung (r, α) der Zahl z eindeutig. Dieses Zahl HauptargumentArgument α einer komplexen Zahl z heißt dann ihr Hauptargument. einer komplexen Zahl

Mithilfe des Hauptargumentes α und der Winkelfunktionen cos und sin k¨onnen wir Real- und Imagin¨ arteil einer komplexen Zahl z = x + iy ausdr¨ ucken, denn es gilt cos α =

y x und sin α = r r

und damit Re(z) = x = r · cos α bzw. Im(z) = y = r · sin α Damit erhalten wir als weitere Darstellung der komplexen Zahl z = x + iy: z = r(cos α + i sin α) mit r=

p x2 + y 2

und ( α=

+ arccos xr , − arccos xr ,

y≥0 y
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF