Skript - Mathematik-Vorkurs für Informatiker

Werbung
Creative Commons
Namensnennung - Nicht kommerziell -Keine Bearbeitungen
4.0 International Lizenz
Mathematik-Vorkurs für Informatiker
Christian Eisentraut und Julia Krämer
www.vorkurs-mathematik-informatik.de
13. September 2015
Das Werk “Mathematik-Vorkurs für Informatiker” erstellt von Christian Eisentraut und Julia Krämer (www.vorkurs-mathematik-informatik.de) ist inklusive aller
darin vorkommenden Texte und Bilder lizenziert unter einer Creative Commons Namensnennung - Nicht kommerziell - Keine Bearbeitungen 4.0 International Lizenz. Weitere
Informationen erhalten Sie unter: http://creativecommons.org/licenses/by-nc-nd/
4.0/
Die aktuelle Version des Skripts, verschiedene zum Skript passende Übungsblätter (größtenteils mit Lösungen), Hinweise zum Skript selbst sowie weitergehende Literatur finden Sie unter unter www.vorkurs-mathematik-informatik.de. Außerdem finden Sie dort einen Überblick über alle wichtigen Begriffe und Fähigkeiten,
die Sie mithilfe dieses Skriptes und vor allem der Übungen lernen sollen. Für Fragen und Anmerkungen zum Skript, verwenden Sie das Kontaktformular auf der
Homepage
Inhaltsverzeichnis
Vorwort
i
Ziele des Vorkurses
v
1 Sprachen
1.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Semantik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2
15
2 Logik
2.1 Aussagenlogik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Aussagen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.3 Semantik . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.4 Gesetze der Aussagenlogik . . . . . . . . . . . . . . . . . .
2.2 Prädikatenlogik . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 All- und Existenzquantoren – intuitiv . . . . . . . . . . . .
2.2.3 Semantik . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.4 Logische Gleichheit von prädikatenlogischen Ausdrücken
.
.
.
.
.
.
.
.
.
.
19
20
20
22
25
38
41
43
44
48
58
3 Schließen und Beweisen
3.1 Schlussregeln . . . . . . . . . . . . . . . . . .
3.2 “Definition, Satz, Beweis” – Begrifflichkeiten
3.3 Schließen und Beweisen . . . . . . . . . . . .
3.4 Schlussregeln des Beweisens . . . . . . . . .
3.5 Beispiele für einfache Beweise . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
63
64
68
70
71
90
4 Mengen
4.1 Schreibweisen von Mengen . . . . . . . . .
4.2 Wichtige Prädikate über Mengen . . . . . .
4.3 Kardinalität oder Mächtigkeit von Mengen
4.4 Potenzmenge . . . . . . . . . . . . . . . . .
4.5 Produktmenge . . . . . . . . . . . . . . . . .
4.6 Mengenoperationen . . . . . . . . . . . . .
4.7 Probleme der Mengenlehre . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
93
95
96
102
103
107
108
111
5 Relationen
5.1 Darstellung von Relationen . . . . . . . .
5.2 Eigenschaften von binären Relationen R
5.3 Relationskomposition . . . . . . . . . . .
5.4 Alternative Definitionen . . . . . . . . . .
5.5 Kardinalität unendlicher Mengen . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
115
117
118
126
127
128
.
.
.
.
.
6 Induktion
131
6.1 Die Idee der wohlfundierten Induktion . . . . . . . . . . . . . . . . 131
3
Inhaltsverzeichnis
4
6.2 Wohlfundierte Induktion . . . . . . . . . . . . . . . . . . . . . . . . 133
6.3 Induktive Definitionen . . . . . . . . . . . . . . . . . . . . . . . . . . 138
6.4 Natürliche Induktion . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Stichwortverzeichnis
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
145
Vorwort
Endlich ist es soweit: Sie studieren Informatik! Endlich werden Sie alles erfahren,
was sie jemals über Smartphones, Android, Google und Facebook wissen wollten.
Aber leider scheint das nicht so ganz zu stimmen: Sie sitzen hier, im Mathematischen Vorkurs. “Na toll”, werden Sie sich vielleicht fragen, “warum um alles in der
Welt brauche ich jetzt einen mathematischen Vorkurs, wo ich doch mindestens 12
Jahre lang Mathematik in der Schule hatte?”
Warum also dieser mathematische Vorkurs? Zu aller erst deshalb, weil Informatik
und Mathematik nicht getrennt werden können. Informatik benutzt nicht nur die
Mathematik intensiv, so wie es z.B. auch die Physik und die Chemie tun, sondern
die Informatik ist selbst nichts anderes als Mathematik. Ja, tatsächlich, Smartphones, Android, Google und Facebook, das alles ist nichts anderes als Mathematik.
Bevor wir anfangen, Mathematik zu betreiben, haben wir jedoch oft eine falsche
Vorstellung davon, was man in der Mathematik eigentlich tut. Als Mathematiker
beschäftigt man sich mit Objekten, die es in der echten Welt eigentlich nicht gibt,
aber irgendwie doch in der Welt vorzukommen scheinen. Nehmen wir zum Beispiel Zahlen. Haben Sie schon jemals eine Zahl getroffen? Haben Sie sie angefasst,
geschmeckt, oder gehört? Sagen Sie jetzt nicht, “10” ist eine Zahl, und ich kenne sie
sehr gut. Schon Millionen mal gesehen. “10” ist keine Zahl. Es ist ein Symbol, ein
Wort, das für eine Zahl steht. Genau wie “Liebe” ein Wort für etwas ist, das sicherlich komplizierter und anders ist, als fünf Buchstaben in Folge. Sie halten “10” vielleicht für eine Zahl, weil wir in der Umgangssprache das gerne so machen. Aber
“10” ist nur ein Symbol, nicht die Sache selbst. Schauen Sie jetzt einmal auf ihre beide Hände. Dort sehen Sie Finger. Und zwar zehn! Machen Sie unter der Dusche das
Selbe mit Ihren Zehen. Wieder zehn. Zehn gibt es in unserer Welt ganz oft. Zehn
Menschen, die sie zufällig treffen, zehn Stifte, die auf ihrem Schreibtisch liegen,
und so weiter. Aber weder die Stifte, die Menschen, noch ihre Zehen und Finger
sind die Zahl “10”. Vielmehr ist “10” ein Konzept, das wir uns von der Welt machen,
und es besagt, “10” ist das, was ist, wenn zehn Dinge in irgendeinem Sinne zusammen sind. Wenn das jetzt seltsam diffus klingt, dann liegt das daran, dass wir hier
gerade versuchen, ein Konzept unseres Geistes abstrakt zu beschreiben. Und wie
wir noch sehen werden, ist dies im Allgemeinen sehr schwer. Es ist auch der selbe Grund, weshalb Philosophen oft so scheinbar seltsame Gespräche führen, und
man als Laie oft das Gefühl hat, alles was dort gesagt wird, ist sehr wolkig und unklar. In der Philosophie geht es um Konzepte des Geistes und Objekte, die in unserem Geist entstehen, und die keine offensichtliche Widerspiegelung in der Realität finden, eben solche Konzepte wie “10” und “Liebe”. Wenn wir das Konzept in
unserem Geist haben, dann scheint uns ganz klar zu sein, was es bedeutet. Wenn
wir jedoch genauer darüber nachdenken, und versuchen diese Konzepte anderen
Menschen zu erklären, und sie damit exakt zu erfassen, wird es sehr schwierig.
Was wir Ihnen zuvor darüber erzählt haben, was die Zahl “10” (nicht das Symbol!) eigentlich ist, ist auch wiederum nicht die ganze Wahrheit. Es ist nur der sogenannte kardinale Aspekt von Zahlen. Das meint nichts anderes, als dass Zahlen
Vielfachheiten (zum Beispiel Vielfachheiten von Zehen: zehn Zehen sind etwas anderes als drei Zehen oder wie zwanzig Zehen) beschreiben. Zahlen können aber
i
Konzept
Inhaltsverzeichnis
ii
auch noch mehr sein. Zahlen haben auch einen ordinalen Aspekt. Dabei geht es
darum, das bei Zahlen die “1” vor der “2” kommt, und die “2” vor der “3” und so
weiter. Es kommt uns dann nur auf die Ordnung der Zahlen an, und nicht auf ihre
Eigenschaft die Anzahl anzugeben. Aber das werden Sie im Studium noch genauer
erfahren.
“Baum”
Im Folgenden noch zwei weitere, weniger mathematische Beispiele, die verdeutlichen, wie häufig wir glauben, geistige Konzepte seien real, und für niemanden
könnte es anders sein. Wissen Sie, was ein “Baum” ist? Ja, wir meinen diese grünen
Dinge im Wald und im Park. Vermutlich wissen Sie es. Irgendwo im Dschungel, wo
es verdammt viele Bäume gibt, lebt ein Eingeborenenstamm, der nicht weiß, was
Bäume sind. Das Konzept “Baum” existiert dort nicht. Jede Pflanze wird unterschieden, und hat auch einen Namen, aber diese Menschen kamen nie auf die Idee, all
diese höchst unterschiedlichen Lebewesen im Konzept “Baum” zusammenzufassen.
Ähnlich interessant ist es, dass manche Stämme nicht die Konzepte “Links” und
“Rechts” kennen. Wenn Sie mit Ihrem Freund, oder Ihrer Freundin, bei einem romantischen Candle Light Dinner sich gegenübersitzen, dann wird die Kerze von
Ihnen aus gesehen vielleicht links stehen, von Ihrem Partner aus gesehen rechts.
Würden Sie beide aus den eingangs erwähnten Stämmen stammen, würden dann
beide einfach sagen, die Kerze steht im Norden. Dabei wird die Lage immer nur nach
Himmelsrichtungen bestimmt.
Versuch es selbst! – Aufgabe 1: Konzepte, Konzepte
Versuchen Sie den Menschen unserer Eingeborenenstämme die Konzepte
“Baum” und “Links” und “Rechts” möglichst präzise und allumfassend zu erklären.
Überlegen Sie sich, ob Ihr Erklärungsversuch sich für die Eingeborenen eventuell ähnlich diffus und seltsam anfühlen mag, wie unser Erklärungsversuch
der Zahl “10” zuvor. Wie fühlt sich Ihr Erklärungsversuch für Ihren Kommilitonen an, der ja eigentlich genau weiß, was “Baum” und “Links” und “Rechts”
bedeutet?
Es ist wichtig, alle Aufgaben in blauen Boxen an Ort und Stelle zu bearbeiten, ohne
weiterzulesen! Das haben Sie aber sicherlich sowieso schon gemacht.
In der Praxis …
Alle Aufgaben innerhalb der Texte sind wichtig, um die neuen Inhalte zu verstehen, das Gelernte zu hinterfragen und sich eigene Gedanken zum Inhalt
zu machen. Tatsächlich ist es unglaublich wichtig, sich eigene Gedanken zu machen, um Informatik und Mathematik zu verstehen. Wir wollen Ihnen mit
diesen Aufgaben auch beibringen, wie man mit neuen informatischen Inhalten umgeht.
Bei der Bearbeitung der Aufgaben lassen wir Sie natürlich nicht alleine:
Tipps und Tricks um die Aufgaben selbstständig bearbeiten zu können, finden Sie immer in diesen Boxen hier! Außerdem gibt es Lösungsskizzen zu
den Aufgaben am Ende des Buches.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
iii
Mathematik ist also eine Lehre von Dingen, die nur im Geiste existieren, und die
meist auch keinen, oder nur sehr undurchsichtige direkte Entsprechungen mit
Dingen aus der realen Welt haben. Genau das ist auch das Geheimnis ihrer Mächtigkeit. Als Mathematiker beschäftigen wir uns mit phantastischen Gebilden, die
nicht den Gesetzen der realen Welt gehorchen müssen, ja in dieser noch nicht einmal existieren müssen. Mathematik ist Freiheit. Gleichzeitig ist die Mathematik
aber weit davon entfernt, abstrus zu sein, unklar und beliebig. Mathematik zu betreiben bedeutet ja gerade, diszipliniertes, klares und deutliches Denken zu lernen.
Diese Art zu denken nennt sich logisches Denken. Es ist ein Denken, das klaren Gesetzmäßigkeiten folgt, und uns dadurch erlaubt, auf die Wahrheit und Richtigkeit
dessen zu vertrauen, was wir mit logischem Denken erschlossen haben. Zugleich
können alle anderen Menschen, die die Gesetzmäßigkeiten des logischen Denkens
kennen, unseren Gedanken folgen und erkennen, dass sie richtig sind (sofern wir
selbst keinen Fehler dabei gemacht haben). Als guter Mathematiker müssen wir
also zwei Dinge erlernen: Einerseits ein sehr kreatives Denken, bei dem wir Spaß daran haben, neue Dinge in unserem Geist zu konstruieren, und mit diesen Dingen
offen herumzujonglieren. Andererseits aber auch die Fähigkeit, diese tollen Wunderdinge, die wir uns erdacht haben, so präzise auszudrücken, und zugleich mit
logischem Denken zu erkunden, dass ein jeder (mathematisch gebildete) Mensch
diese Gedanken nachvollziehen kann.
In diesem Vorkurs wollen wir genau diese beiden Dinge, die ein Mathematiker
braucht, erlernen. Dies kann nicht in vier Wochen gelingen, jedoch können wir in
dieser Zeit eine solide und stabile Basis schaffen, die uns hilft, diese Fähigkeiten
während des Studiums immer weiter auszubilden. Beides sind übrigens Dinge, die
Ihnen letzten Endes niemand beibringen kann und für die es auch kein Schema
gibt. Nur Sie selbst können dies trainieren, durch beständiges Arbeiten mit mathematischen Ideen, und dem Versuch, diese korrekt aufzuschreiben. Genau das
wollen wir hier gemeinsam beginnen.
Versuch es selbst! – Aufgabe 2: “Ding an sich”
Ist es prinzipiell möglich, mit anderen Menschen über ein beliebiges mathematisches “Ding an sich”, z.B. Zahlen, zu sprechen, ohne sich auf Symbole
zurückzuziehen?
Zum Schluss: Sie fragen sich immer noch, weshalb Informatik eigentlich Mathematik sein soll? Smartphones, Android, Google und Facebook sind Erfindungen
unseres Geistes. Anders als elektrischer Strom und Atome in der Physik, waren
CPUs und Softwareprogramme nicht da, bevor wir Menschen anfingen, sie zu erdenken. Funktionale Programmierung erlaubt es mit Funktionen – ein typisches
Konstrukt der Mathematik – zu arbeiten. Man kann die Mathematik mit Hilfe
funktionaler Programmierung ausprobieren. Innerhalb Ihres Informatikstudiums
werden Sie schnell sehen, das funktionale Programmierung nichts anderes ist als
das Arbeiten mit einer mehr oder weniger materiellen Form von Mathematik.
Auch Hardware ist nichts anderes als Mathematik. Schaltkreise modelliert man
mithilfe von Logik und setzt sie schließlich mithilfe von Gattern um, und Gatter sind wiederum nur Umsetzungen von logischen Operatoren in der wirklichen
Welt.
Ein letztes Beispiel: Navigation ist zu einem wichtigen Hilfsmittel im Alltag geworden. In einem Straßennetz eine richtige und schnelle Route zwischen zwei
Städten zu finden, erfordert es, dass man das Straßennetz dem Computer begreif-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
logisches Denken
Inhaltsverzeichnis
iv
bar macht – dies geschieht mithilfe eines mathematischen Modells des Straßennetzes – und dem Computer dann beibringt, wie er diesen Weg findet – das ist ein
Teil der Algorithmik und des Programmierens. Die Grundlagen für beide Gebiete werden Sie hier lernen! Übrigens: Programmierung ist nur ein Teil des Informatikstudiums. Je nach Universität und Studiengang kann es sogar sein, dass sie
vielleicht nur den kleinsten Teil Ihres Studiums mit Programmierung verbringen.
Intuition
Mathematik mochten Sie noch nie? Das ist (fast) überhaupt kein Problem.
Die Mathematik, die wir im Folgenden betrachten, unterscheidet sich sehr
stark von der, die Sie vielleicht bereits aus der Schule kennen. Wir gehen
hier den Sachen auf den Grund, wir wollen herausfinden, wie die Dinge funktionieren, warum sie funktionieren und uns Gedanken darüber machen, wie
man zweifelsfrei belegen kann, dass Dinge korrekt sind. Auf den ersten Blick
mag das sehr abstrakt klingen, aber Sie profitieren davon vermutlich jeden
Tag: Wir wollen die Grundlagen legen, um zu beweisen, dass 3 + 1 auf jedem
Computer immer 4 liefert, dass Navigationsgeräte nicht plötzlich das Auto
gegen eine Wand oder von einer Brücke navigieren, dass Handys die Nummern wählen, die wir eingeben, und nicht spontan einen beliebigen Kontakt
aus dem Adressbuch. Die Frage, wie man solche Strukturen in Mathematik
gießt, können wir hier nicht vollständig beantworten, aber die grundlegenden Schritte, die Sie hier lernen werden, werden Sie im Informatikerleben
immer wieder brauchen.
Um Ihnen den Einstieg in unsere Welt der Mathematik zu erleichtern, wollen wir Ihnen immer wieder die Intuition bzw. die anschauliche Bedeutung
der Definitionen und Sätze geben. Eine Definition scheint unklar? Ein Satz
unverständlich? Dann halten Sie nach diesen Boxen Ausschau.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Ziele des Vorkurses
Unser Ziel ist es, Sie mit den folgenden Kapiteln so gut wie möglich auf Ihr
Informatik-Studium vorzubereiten. Dies gilt auch für verwandte Studiengänge wie Bio-, Wirtschafts-, Medien- oder Rechtsinformatik, Computerlinguistik,
Computer- und Kommunikationstechnik und Cybersecurity. Auch als angehender Mathematikstudent können Sie von diesem Vorkurs profitieren! Hier lernen
Sie keine konkrete Programmiersprache oder Inhalte wie Turing-Maschinen, sondern Strategien und Grundlagen, die Sie in vielen Bereichen der Informatik immer
wieder brauchen werden. Wir möchten Ihnen einen Einblick in die Denkweise von
Informatikern und Mathematikern geben und Ihnen helfen, sich diese Denkweise selbst anzueignen. Dabei unterscheidet sich die Arbeitweise meistens sehr von
der, die Sie in der Schule kennengelernt haben. Machen wir ein Beispiel, was Sie
vermutlich in einer der ersten Vorlesungswochen sehen werden:
Definition.
Eine binäre Relation R über M is eine Teilmenge von M × M .
(a) Eine binäre Relation über M heißt reflexiv genau dann, wenn gilt:
∀x ∈ M : (x, x) ∈ R.
(b) Eine binäre Relation über M heißt transitiv genau dann, wenn gilt:
∀x, y, z ∈ M : (x, y) ∈ R ∧ (y, z) ∈ R → (x, z) ∈ R.
(c) Eine binäre Relation über M heißt antisymmetrisch genau dann,
wenn gilt: ∀x, y ∈ M : (x, y) ∈ R ∧ (y, x) ∈ R → x = y
(d) Eine partielle Ordnungsrelation über M ist eine reflexive, transitive
und antisymmetrische binäre Relation über M .
(e) Eine partielle Ordnungsrelation über M heißt total genau dann,
wenn gilt: ∀x, y ∈ M : (x, y) ∈ M ∨ (y, x) ∈ M
Satz. Mengeninklusion ist eine partielle, aber keine totale Ordnungsrelation.
Beweis. Sei A eine Menge und P(A) := {B|B ⊆ A}. Dann ist zu zeigen,
dass ⊆ eine partielle Ordnungsrelation über P(A) ist, d.h. dass gilt ⊆ über
P(A) ist reflexiv, transitiv und antisymmetrisch.
reflexiv: Sei B in P(A). Sei x ∈ B. Es ist zu zeigen, dass x ∈ B ist. Dies
gilt nach Voraussetzung, also gilt B ⊆ B.
(a) ...
Wenn Sie Definitionen und den Anfang des Beweises nicht verstehen: Kein Problem! Wir werden Ihnen im Verlaufe des Skriptes beibringen, wie Sie diesen Text
lesen, bearbeiten, verstehen und selbst solche Texte produzieren können.
In Kapitel 2 werden wir lernen, wie man Ausdrücke der Form ∀x ∈ M : (x, x) ∈ R
behandelt. Man nennt diese Ausdrücke prädikatenlogische Ausdrücke. Beginnen werden wir mit einer etwas einfacheren Kategorie - den aussagenlogischen Ausdrücken.
v
Strategien und Grundlagen
Inhaltsverzeichnis
vi
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
Abbildung 1: Übersicht über die im Vorkurs behandelten Themen
Um beide Arten formal fassen zu können, werden wir Sie als eine formale Sprache
fassen. Sprachen finden sich in Kapitel 1. Wann ein Beweis ein gültiger Beweis ist,
wird den größten Teil einnehmen (Kapitel 3) und folgende. Die Definitionen über
Mengen und Relationen, die wir hier definieren bzw. einfach verwenden, lernen Sie
in den Kapiteln 4 und 5. Abschließend lernen Sie noch eine andere typische Beweistechnik der Informatik kennen - die wohlfundierte Induktion.
Wie Sie in Abbildung 1 sehen können, lassen sich die Themen Sprachen, Logik
und Mengen kaum voneinander trennen. Da Sie aber aus der Schule den Begriff
Mengen aus den Wörten Lösungsmenge, Definitionsmenge oder Menge von Punkten (z.B.
Kreis, Gerade, Graph oder Ebene) zumindest schon einmal gehört haben und wir
in den Kapiteln Logik und Sprachen nichts anderes als das benötigen werden, setzen wir im Folgenden diese Vorstellung voraus. Aber keine Sorge! Dies ist neben den elementaren Rechenoperationen (Addition, Multiplikation, …) und dem
Funktionsbegriff das einzige, was wir voraussetzen. Selbst wenn Sie keinen Leistungskurs Mathematik oder Mathematik gar nach Klassenstufe 10 abgewählt haben, sollten Sie alle in diesem Skript verwendeten Begriffe kennen, die wir nicht
definieren.
Die Themen Induktion und Beweisen stehen außerhalb unserer Ordnung, da sie
keine inhaltlichen Grundlagen vermitteln, sondern grundlegende Fertigkeiten.
Ähnlich wie Sie Lesen und Schreiben lernen mussten, um überhaupt Geschichte,
Chemie oder Biologie lernen zu können, müssen Sie hier das Beweisen lernen, um
Informatik und Mathematik wirklich verstehen zu können.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
vii
Bevor es richtig losgeht...
Wir wollen Sie in diesem Buch dazu anregen, sich selbstständig Gedanken zu den
vermittelten Themen machen und sich immer wieder zu fragen, ob Sie sich schon
ausreichend Gedanken dazu gemacht haben. Ein Geheimnis des Lernens in der Informatik und Mathematik ist das Spielen mit dem Stoff. In Vorlesungen wird häufig
nur das grundlegende Wissen vermittelt, den Stoff werden Sie häufig erst richtig
verstehen, wenn Sie sich darüber Gedanken machen und Übungsaufgaben bearbeiten. Wie man sich Gedanken richtig macht, wollen wir Ihnen auch vermitteln.
Den Anfang bilden die folgenden beiden Aufgaben:
Aufgabe 1.
Bearbeiten Sie die folgende Aufgabe auf einem Din A4 Blatt selbstständig, ohne
fremde Hilfe. Versuchen Sie die Aufgabe in maximal fünf Minuten zu lösen.
Zeigen Sie, dass das Quadrat einer geraden natürlichen Zahl wiederum eine gerade Zahl ist.
Bewahren Sie den Zettel gut auf! Wir werden später darauf zurückkommen.
Aufgabe 2.
Beantworten Sie folgende Fragen auf einem DIN A4 Zettel. Antworten Sie pro Frage mit genau einem wohl überlegtem Satz!
(a) Was ist Ihr Erfolgsrezept beim Lernen?
(b) Weshalb glauben Sie, ist dieses Studium richtig für Sie?
(c) Wie stellen Sie sich eine typische Vorlesung Ihres Studienfaches vor?
Hinweise Das Skript befindet sich immer noch in Arbeit. Wir verbessern kontinuierlich Fehler und ergänzen Inhalte. Die aktuelle Version des Skripts finden Sie
unter unter www.vorkurs-mathematik-informatik.de. Wir empfehlen Ihnen dringend
immer mit der neusten Version des Skriptes zu arbeiten.
Auf der Homepage finden Sie außerdem
• auf das Skript abgestimmte Übungsaufgaben mit Lösungen
• “Abgabezettel”, die Ihnen einen Eindruck davon vermitteln sollen, welche
Arten von Aufgaben Sie typischerweise als Abgaben in Vorlesungen erwarten können
• eine Liste von Fähigkeiten und Begriffen mit Überprüfungsaufgaben, die Sie
in den einzelnen Kapiteln lernen sollen – diese Liste soll Ihnen helfen Ihren
aktuellen Wissensstand einzuschätzen.
Für Fragen und Anmerkungen zum Skript, verwenden Sie das Kontaktformular
auf unserer Homepage.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
1 Sprachen
Sie werden sich jetzt vielleicht wundern: Ein Mathematischer Vorkurs und das erste
Kapitel behandelt Sprachen. Wenn Sie auch zu denjenigen gehören, die in der Schulzeit am liebsten Französisch, Englisch, Latein, Griechisch und Spanisch gleichzeitig und für immer abgewählt hätten, dann können wir Sie beruhigen.
Betrachten wir trotzdem genau diesen Absatz Text, den wir eben geschrieben haben, nochmals und führen uns vor Augen, wie er aufgebaut ist:
Sie werden sich jetzt vielleicht wundern: Ein Mathematischer Vorkurs und
das erste Kapitel behandelt Sprachen. Wenn Sie auch zu denjenigen gehören, die in der Schulzeit am liebsten Französisch, Englisch, Latein, Griechisch und Spanisch gleichzeitig und für immer abgewählt hätten, dann
können wir Sie beruhigen.
Der Text, den wir eben geschrieben haben, besteht aus Sätzen, zum Beispiel aus
einem Satz, wie dem, den wir blau markiert haben. Der Satz selbst ist wieder aus
kleineren Einheiten aufgebaut, nämlich aus Wörtern wie “liebsten”. Dieses Wort besteht wieder aus Zeichen wie “b” und das Zeichen selbst besteht wieder aus Punkten. Auch informatische Sprachen kennen diese Einteilung in Sätze, Wörter und
Zeichen. Betrachen Sie zum Beispiel folgende Methode (geschrieben in der Programmiersprache Java):
public static void main(String[] args){
System.out.println("Hello World!");
}
Auch in diesem Beispiel können wir Wörter wie public oder println erkennen. Die
Methode als solche verhält sich ähnlich wie ein Satz oder ein Abschnitt.
Wie Sätze und Wörter aufgebaut sind, ist in natürlichen Sprachen durch Rechtschreibung und Grammatik festgelegt. All das, was wir jetzt beschrieben haben,
gehört zur Syntax der Sprache. Sie legt nur das Erscheinungsbild fest. Die Bedeutung ist die Semantik des Textes. Und obwohl wir im Folgenden auch Grammatiken,
Syntax und Semantik für informatische Sprachen kennenlernen werden, gibt es einen großen Unterschied zwischen natürlichen und informatischen Sprachen.
Mathematische, oder fast besser informatische Sprachen sind anders als natürlichen Sprachen. Ihre Grammatik ist sehr einfach und klar, und ihre Bedeutung
ist so exakt festgelegt, wie es nur irgendwie geht. Seltsamerweise scheint dies ein
Grund zu sein, weshalb Sprachenliebhaber mathematische Sprachen nicht lieben,
Informatiker aber um so mehr. Jede Programmiersprache ist übrigens eine mathematische Sprache. Hoffentlich geht es Ihnen jetzt wieder besser!
Sprachen sind eine Möglichkeit die Dinge des realen Lebens in Mathematik zu
formulieren. Mit der Sprache der Aussagenlogik werden wir z.B. in Kapitel 2 jede
logisch korrekte Aussage der Wirklichkeit mathematisch fassen und behandeln
können, d.h. ihre Bedeutung bestimmen. Außerdem können wir sie dann mit den
Gesetzen der Aussagenlogik, die wir ebenfalls später noch behandeln werden, sogar
vereinfachen.
1
Sprachen
1 Sprachen
2
Eine informatische Sprache besteht immer aus den zwei grundlegenden Aspekten – Syntax und Semantik. Die Syntax einer Sprache beschreibt, wie die Wörter einer Sprache geformt sein dürfen, also wie sich komplexere Wörter aus einfacheren
Wörtern bilden lassen. Die Semantik einer informatischen Sprache ist ihre Bedeutung. Jedes Wort einer Sprache muss eine eindeutig festgelegte Bedeutung haben,
d.h. für jedes Wort gibt es genau eine Bedeutung. Wir werden im Folgenden mithilfe von Grammatiken Wörter erzeugen. In anderen Teilgebieten der Informatik,
zum Beispiel in dem Bereich, der sich mit der Entwicklung von Programmiersprachen, Interpretern und Compilern beschäftigt, werden auch Sätze und Zeichen
wichtig. Doch diese beiden Ebenen wollen wir hier nicht betrachten.
Versuch es selbst! – Aufgabe 3: Natürliche Sprachen
Wir haben für informatische Sprachen behauptet, dass jedes Wort einer Sprache genau eine festgelegte Bedeutung hat. Gilt dies auch für Wörter und Sätze natürlicher Sprachen wie Deutsch, Englisch, Französisch, Chinesich, Japanisch, Englisch, …
1.1 Syntax
Ausdruck
Wörter
Backus-Naur-Form
Die grundlegenden Bestandteile der Syntax einer Sprache sind bei uns Wörter. Ein
typisches Wort in einer Programmiersprache ist das Wort if. Wenn wir mehrere Wörter sinnvoll – das heißt nach den Regeln einer Grammatik – aneinander
reihen, dann erhalten wir einen Ausdruck, oder auch Satz. So ist z.B. in der Programmiersprache Pascal folgende Folge von Wörtern ein Ausdruck if x > 0 then
x := 5 else x := 3;. Er setzt sich aus vielen verschiedenen Wörtern zusammen, nämlich if, x, >, 0, then, x, :=, 5, else, x, :=, 3, ;. Genau genommen sind manche dieser Wörter nochmals aus kleineren Objekten, den Zeichen, zusammengesetzt. So besteht das if aus dem Zeichen i, und dem Zeichen f.
Wichtiger Hinweis: Wenn wir über formale Sprachen reden, dann reden wir jedoch
nicht über Zeichen, sondern nur über Wörter. Nur wenn wir uns auch damit beschäftigen wollen, wie ein Computer Sätze solcher Sprachen lesen kann (engl. parse), dann müssen wir uns auch Gedanken über die einzelnen Zeichen machen.
Gleichzeitig nennen wir im Folgenden alle Elemente einer Sprache Wörter, egal ob
wir damit die kleinsten, nicht weiter zerlegbaren Wörter wie if meinen oder aber
das zusammengesetzte Wort if x > 0 then x := 5 else x := 3;. In der (theoretischen) Informatik dienen Sprachen meist dazu, um bestimmte mathematische
Objekte und Zusammenhänge zu beschreiben. In diesem Fall ist es viel dienlicher,
uns auf Worte als elementare Bestandteile zu beschränken.
Wie wir bald sehen werden, kann so ein Wort sehr oft sogar ein mathematisches
Objekt, wie z.B. eine Zahl sein. Es können aber auch Dinge sein, die gar nicht wie
Buchstaben oder Zahlen aussehen, zum Beispiel kann auch
ein Wort einer informatischen Sprache sein. Zunächst lernen wir eine Möglichkeit kennen, die (in der Regel) unendlichen Menge von Ausdrücken einer Sprache
prägnant aufzuschreiben. Dazu verwenden wir Grammatiken in Backus-Naur-Form.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3
Grammatiken geben an, wie wir Wörter einer Sprache aus kürzeren zusammensetzen können. Die Backus-Naur-Form ist dabei nur eine bestimmte Art Grammatiken zu formulieren.*
Bemerkung 1. Wir steigen direkt mit einer Grammatik ein, und erklären erst danach, was sie genau bedeutet, und vor allem, wie die Wörter der Sprache, die sie
beschreibt, nun aussehen.
Einige der Zeichen kommen Ihnen vielleicht aus der Schule bekannt vor. Wenn
ja, notieren Sie sich die Bedeutung der Zeichen. Wenn Sie aus der Bedeutung eine
Bedeutungsidee für die Semantik entwickeln, dann notieren Sie auch diese und
vergleichen Sie sie mit der Bedeutung, die wir Ihnen danach zeigen.
Wichtiger Hinweis: Wenn Sie diese Definition nicht auf Anhieb verstehen, dann ist
das ganz normal. Wir wollen Ihnen hier noch die Möglichkeit geben, an vielleicht
vorhandenes Vorwissen anzuknüpfen.
Definition 1 (Grammatik in Backus-Naur-Form) Wir definieren die Menge T
wie folgt
T ∋ φ, ψ ::=
φ
ψ
Wir wollen jetzt erklären, was diese ominöse Zeile uns alles erzählt. Wir definieren mit dieser einen Zeile eine Menge† T von Objekten, die wir binäre Bäume nennen wollen.
Grammatiken definieren im Allgemeinen zweidimensionale Objekte, obwohl die
Grammatik selbst sich eindimensional aufschreiben lässen. Diese zweidimensionalen Objekte helfen uns zu erkennen, wie die einzelnen Regeln der Grammatik
angewendet wurden. Wir werden diesen Punkt nochmals vertiefen, wenn wir Ihnen gezeigt haben, wie binäre Bäume aussehen.
Normalerweise stellen wir uns unter Bäumen grüne Pflanzen mit grau-braunem
Stamm vor, die im Wald und auf Wiesen wachsen und – im vermutlich für uns besten Fall – mit den Wurzeln in der Erde verankert sind, im Frühjahr wohlduftend
blühen und im Spätsommer Früchte tragen.
Stellen Sie sich nun vor, Sie finden einen Baum, der von einer Reihe von Blättern
am Boden zu der Wurzel hoch oben wächst, keinen Stamm hat, nicht blüht und
den Sie normalerweise nicht anfassen können. Dann sehen Sie den typischen Informatikerbaum. In Abbildung 2 sehen wir so einen binären Baum. Wir haben dabei die blauen runden Blätter (Knoten ohne ausgehende Pfeile; diese “Pfeile” nennen wir im Folgenden auch Kanten) von inneren Knoten (Knoten mit ausgehenden
Kanten) farblich getrennt und beschriftet. Ein weiterer spezieller Knoten ist die
Wurzel – zu ihm führt keine Kante.
Wie ergibt sich nun zum Beispiel der binäre Baum aus Abbildung 2? Die erste Regel, die wir anwenden, ist die rechte Regel (mit dem weißen Kasten). Der Kasten
aus dieser Regel wird unsere Wurzel. Der binäre Baum unter dem linken Pfeil entspricht dem Baum, den wir für φ eingesetzt haben. Der Baum unter dem rechten
*Im Laufe Ihres Studiums werden Sie verschiedene Arten Grammatiken aufzuschreiben kennenlernen.
†Es reicht die Intuition, das Mengen Sammlungen von beliebigen Objekten sind. Genaueres erfahren
Sie in Kapitel 4.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
binäre Bäume
Blätter
inneren Knoten
Wurzel
1 Sprachen
4
Pfeil entspricht dem, den wir für ψ eingesetzt haben. Auf den rechten Baum wurde die linke Regel angwendet (die Regel, die nur aus einem blauen Kreis besteht).
während im linken Baum erneut die rechte Regel angewendet wurde.
Die zweidimensionale Struktur dient zur Verdeutlichung, wann welche Regel
angwendet wurde und welche Ausdrücke jeweils für φ und ψ eingesetzt wurden.
An der Wurzel beginnt dabei immer die Regelanwendung und sofern die Wurzel ausgehende Kanten hat, so ist der binäre Baum unter dem linken Knoten der
Baum, der für φ eingesetzt wurde, und der rechte entsprechend der, der für ψ eingesetzt wurde.
Versuch es selbst! – Aufgabe 4: Üben Sie mit binären Bäumen!
Versuchen Sie anhand der folgenden Beispiele weitere Binärbäume zu bilden
und zu beschriften, bis Sie sich sicher sind, dass Sie einen binären Baum erkennen und die speziellen Knoten wie Wurzel, innerer Knoten und Blatt beschriften können.
Wie wir Bäume in der graphischen Anordnung darstellen, ist egal. Überlegen
Sie sich daher zum Beispiel auch, wie ein Baum aussieht, der von der Wurzel
unten zu den Blättern nach oben wächst (im Prinzip also Kopf steht).
Wurzel, innerer Knoten
innerer Knoten
Blatt
Blatt
Blatt
(a) Informatikerbaum mit ein paar Blättern
Wurzel, Blatt
(b) Ein Baum mit nur einem Blatt!
Abbildung 2: Beispielbäume
Während wir mit unseren zwei Beispielen nur eine grobe Idee vermitteln können,
was nun ein binärer Baum ist und was nicht, definieren wir mit Hilfe unserer
Grammatik auf einen Schlag alle binären Bäume. Und das sind immerhin unendlich viele!
Betrachten wir nun noch einmal den Aufbau der Backus-Naur-Form genauer: Zunächst fällt auf, dass griechische Buchstaben scheinbar bei Grammatiken eine
wichtige Rolle spielen. Obwohl diese selbst, wie wir aus den Beispielen erahnen
können, in den Ausdrücken der Sprache gar nicht vorkommen.
Die Buchstaben φ (gelesen etwa phi) und ψ (gelesen etwa psi) dienen uns als Platzhalter für ein beliebiges Element aus der Menge T , die wir gerade definieren wol-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
5
len. Sie selbst sollen jedoch nicht Teil von T werden. Man nennt φ und ψ auch Metavariablen: Sie sind variable Bezeichner für ein Wort aus T , sie sind jedoch selbst
keine Wörter aus T . Die Vorsilbe “Meta-” bedeutet im Allgemeinen, dass etwas auf
einer höheren Ebene steht. Prinzipiell haben wir die Möglichkeit (dies sehen wir
auch in Kapitel 2), eine Sprache zu definieren, die Variablen enthält. Diese Variablen sind Teil der Sprache, wie bei arithmetischen Ausdrücken, Termen oder Gleichungen, die Sie aus der Schule kennen. Diese Variablen sind dann Teil der Sprache. Metavariablen hingehen gehören nicht zur Sprache, werden jedoch zur Definition der Sprache verwendet. Damit findet man sie eine Ebene über der Sprache
selbst und den dort vorkommenden Variablen.
Wir drücken mit dem gespiegelten ∈, also ∋ aus, dass φ und ψ aus der Menge T
stammen sollen* – also für beliebige Elemente von T stehen. Wir definieren damit
einfach nur, dass das, wofür die Metavariablen stehen, aus der Sprache kommt, die
wir gerade definieren.
Die Art, mit der wir hier Wörter bilden, nennt sich induktiv. Wir werden in Kapitel 6 noch genauer betrachten, was induktiv heißt. Für uns reicht es in diesem Kapitel erst einmal, intuitiv anzunehmen, dass induktiv hier bedeutet, dass wir komplizierte Ausdrücke aus einfacheren zusammensetzen.
Die Backus-Naur-Form, kurz BNF, ist eine induktive Definition einer unendlichen
Menge von Wörtern. In unserem Fall ist dies die unendliche Menge von binären
Bäumen.
Eine mögliche Sichtweise auf BNFs ist es, dass wir uns zwei binäre Bäume – je
einen für jede Metavariable – aussuchen und dann entweder einen Baum erhalten, der nur aus einem Blatt besteht, wenn wir uns für Regel 1 (links) entscheiden,
oder einen Baum erhalten, der die Bäume, die wir uns ausgesucht haben, links und
rechts unter einen Kasten schreibt.
Dabei ist es wichtig, dass wir definieren, was die einfachsten Wörter sind, die selbst
nicht zusammengesetzt sind. In unserem Fall ist dies
. Im Folgenden wollen
wir diese einfachsten, nicht aus mehreren Bestandteilen der Sprache zusammengesetzten Bestandteile atomar nennen. Atomar meint hier – im wahrsten Sinne des
Wortes – nicht teilbar, d.h. in der Sprache gibt es keine Wörter und Verbindungsmöglichkeiten, so dass man so ein atomares Wort bilden kann.
Wir wollen zur Verdeutlichung einmal ausformulieren, was die BNF knapp ausdrückt:
(a)
ist ein binärer Baum und somit ein Element von T .
(b) Wenn φ und ψ binäre Bäume sind, dann ist auch die Verknüpfung
φ
ψ
ein binärer Baum.
Induktive Definitionen sind in der Informatik allgegenwärtig. Jede Programmiersprache ist (syntaktisch betrachtet) induktiv definiert. Übrigens üblicherweise sogar mit Hilfe der Backus-Naur-Form.
Die letzte wichtige Konvention, die wir zu Grammatiken in BNF kennen müssen,
ist, dass Grammatiken in BNF immer alle Ausdrücke einer Sprache beschreiben.
*Man liest trotzdem meistens “φ und ψ in T ”.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Metavariablen
induktiv
atomar
1 Sprachen
6
Im Beispiel heißt das, dass T alles enthält, was von der Grammatik beschrieben
wird, und auch nur das! Der letzte Halbsatz ist dabei sehr wichtig. Er sagt, das nichts
sonst ein binärer Baum ist.
Intuition
Eine Grammatik gibt an, welche Objekte wir betrachten dürfen. Im Falle der
binären Bäume heißt das, welche Objekte wir eigentlich als gültig ansehen
dürfen. Es gibt zum Beispiel keinen Sinn, den Baum links in der Abbildung
als vollständigen binären Baum anzusehen.
Es fehlt einfach der zweite Knoten links unten, um den Baum abzuschließen.
Wir können keine der beiden Regeln auf das Beispiel anwenden, da für die
eine Regel der Baum nur aus genau einem Kreis bestehen dürfte, und bei der
anderen Regel, sowohl für φ als auch für ψ ein Baum stehen muss. Während
dies für ψ der Fall ist (nämlich wieder einfach ein Kreis), ist der Platz, an dem
φ steht, leer. Ein leeres Feld ist jedoch kein Wort der Sprache!
Auch auf dem Baum rechts in der Abbildung können wir keine der Regeln
anwenden. Wir können nämlich nur Bäume mit keiner oder genau zwei ausgehenden Kanten bilden, aber keinen Baum – wie im Beispiel – mit drei ausgehenden Kanten.
vollständig
Wenn wir in der Mathematik nicht explizit sagen, dass etwas in einer Menge enthalten ist, dann dürfen wir nicht annehmen, dass es dort nicht vielleicht doch drinnen ist; auch, oder gerade dann, wenn wir eigentlich denken zu wissen, was in einer bestimmten Menge drinnen sein soll. Wenn wir eine BNF aufschreiben, so ist
dieser Ausschluss ungewollter anderer Elemente in der Sprache jedoch implizit
klar, und wir müssen nichts explizit mehr dazu sagen. Halten wir also fest, dass
die Backus-Naur Form einer Sprache die Menge aller Wörter (die in unserem Fall
binäre Bäume heißen) in dieser Sprache vollständig definiert.
In der Praxis …
Aufstellen von Grammatiken in BNF:
Es ist schwierig ein allgemeines Rezept anzugeben, wie wir jede nur denkbare Sprache mit Hilfe der BNF aufschreibt, aber es gibt es paar Tipps zur Herangehensweise. Wir beginnen damit, die allgemeine Form einer BNF vorzustellen:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
7
umgedrehtes Elementzeichen
definiert
Name
∋ φ, ψ, χ, . . . ::=
Fall 1
Fall 2
...
Fall n
Metavariablen
hier dürfen die Metavariablen verwendet werden
Wir definieren zuerst den Namen der Sprache, die wir definieren wollen. Im
Allgemeinen ist der Name egal, jedoch ist es meistens hilfreich sprechende
Namen zu wählen, wie zum Beispiel der Anfangsbuchstabe der Bezeichnung
der Wörter.
Dann definieren wir eine Reihe von Metavariablen, die wir zur Definition in
der Sprache in den Fällen 1 bis n verwenden dürfen. Schließlich folgt nach
::= (gelesen: ist definiert als) die eigentliche Definition der Sprache. Wichtig
ist, dass wir zwar beliebig, aber nur endlich viele Fälle verwenden dürfen,
um unsere Sprache zu definieren Merke: Wenn wir die Grammatik in endlicher Zeit vollständig aufschreiben können, ist meistens alles gut!. Für das
Aufstellen der Fälle hilft es, sich die folgenden Fragen zu stellen:
(a) Was sind atomare Wörter meiner Sprache? – Jedes atomare Wort wird
eine eigene Regel in der Grammatik. In diesen Fällen werden keine Metavariablen gebraucht.
(b) Wie setzen sich komplexe Wörter zusammen? Welche Zeichen werden in welchen Kontext eingefügt? – In unserem Beispiel der binären
Bäume haben wir nur eine Möglichkeit, nämlich einem eckigen weißen Knoten des Baums zwei Unterbäume hinzuzufügen. Dabei werden
zwei Pfeile eingeführt, die dazu dienen zu kennzeichnen, dass die hinzugefügten Bäume unter dem weißen Knoten liegen.
Wir haben nun ein einfaches Beispiel einer Grammatik in Backus-Naur-Form gesehen. Grammatiken können jedoch noch viel komplexere Objekte beschreiben.
Versuch es selbst! – Aufgabe 5: Binäre Bäume – intuitiv
Können Sie anhand der Grammatik anschaulich erklären, was ein binärer
Baum im Allgemeinen nun ist?
Beispiel: Grammatik arithmetischer Ausdrücke
Nun sehen wir uns eine weitere Grammatik an, deren erzeugte Sprache Ihnen vertraut sein sollte – arithmetische Ausdrücke. Wir werden hier statt Wort zu Elementen der Sprache auch Ausdruck sagen, da dies die “gebräuchlichere Bezeichung für
arithmetische Ausdrücke ist.
Zur Definition arithmetischer Ausdrücke legen wir zunächst fest, welche Variablen in arithmetischen Ausdrücken vorkommen (damit sind diese Variablen keine
Metavariablen).
Definition 2 (Variablen) Wir bezeichnen mit V die Menge aller Variablen. Sie enthält die Variablen x, y, z, x1 , x2 . . . , y1 . . . , z1 . . . ∈ V
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
1 Sprachen
8
In der Mathematik und Informatik werden häufig solche Konventionen eingeführt. Natürlich können Variablen prinzipiell beliebig benannt werden. Jedoch
sparen wir uns mit Hilfe der Definition der Menge der Variablen bei vielen Definitionen, Lemmas und Sätzen den Halbsatz “Sei x eine Variable”.
In der Praxis …
Versuchen Sie, sich Konventionen zu merken. Tauchen in Definitionen, Sätzen oder Lemmas Zeichen auf – auch später im Studium –, die nicht mit einer
Bedeutung belegt werden, so wurden sie entweder bereits vorher fest definiert oder ein bestimmter Buchstabe wird aus Gewohnheit wie zum Beispiel
π für die Kreiszahl und α für Winkel mit der gleichen Bedeutung verwendet.
Falls Sie das Gefühl haben, Sie können sich nicht alle Konventionen merken,
kann es helfen sich für Vorlesungen und Übungen einen Übersichtszettel zu
schreiben, auf dem alle wichtigen Notationen und Definitionen zum schnellen Nachschlagen festgehalten sind. Auch zum Lesen des Skriptes kann dies
Ihnen eine Hilfe sein!
Mit Hilfe von Variablen können wir nun die Sprache der arithmetischen Ausdrücke definieren. Wir werden dazu die aus der Schule bekannten Operatoren Plus,
Minus, Mal und Geteilt sowie das unäre Minus verwenden.
arithmetische Ausdrücke
Definition 3 (Arithmetische Ausdrücke) Wir definieren die Menge der arithmetischen Ausdrücke A mit Hilfe einer Backus-Naur-Form induktiv wie folgt:
A ∋ φ, ψ ::= φ + ψ | φ − ψ | φ · ψ | φ ÷ ψ | −φ | n | v
wobei n ∈ N, also n eine natürliche Zahl, und v ∈ V ist.
In unserer Definition der Sprache der arithemtischen Ausdrücke kommen erneut
zwei Metavariablen vor: φ und ψ stehen wieder für beliebige Elemente der Sprache, ohne selbst Teil der Sprache zu sein. n und v sind Variablen für Elemente anderer Mengen, nämlich der Menge der natürlichen Zahlen bzw. der Menge der
Variablen, die wir eben definiert haben. Das bedeutet, dass jede natürliche Zahl
und jede Variable ein Wort der Sprache der arithmetischen Ausdrücke ist.
Versuch es selbst! – Aufgabe 6: Grammatiken mit eigenen Worten beschreiben
Beschreiben Sie die Grammatik ausführlich mit eigenen Worten. (wie wir das
oben auch gemacht haben). Als Hilfestellung zeigen wir Ihnen hier die Regel
der Variablen vor:
Ist v eine Variable, so ist v auch ein Element der Sprache A, also ein arithmetischer Ausdruck.
Die Objekte, die in A enthalten sind, enthalten keine Klammern. Eigentlich sollte
Sie dieser Umstand irritieren, denn in der Schule haben Sie arithmetische Ausdrücke immer mit Klammern notiert (und notieren müssen)!
Aber: So wie wir hier arithmetische Ausdrücke definieren, brauchen wir keine
Klammern! Wir haben bereits gesehen, dass wenn wir Grammatiken mit Hilfe einer Backus-Naur-Form bilden, so erhalten wir immer zweidimensionale Objekte,
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
9
von der Struktur her ähnlich wie binäre Bäume, als Wörter unserer Sprache. Diese zweidimensionalen Ausdrücke liefern uns alle Informationen, die wir auch aus
der geklammerten, Ihnen vermutlich aus der Schule bekannten Darstellung erhalten. Dazu jedoch gleich mehr!
In Abbildung 3 sehen Sie zunächst einige Beispiele für Elemente der Sprache A.
Wir nennen diese Darstellung der Elemente im Folgenden auch Syntaxbaum oder
Strukturbaum.
Strukturbaum
·
5
3
3
÷
+
·
8
2
−
y
+
x
y
x
Abbildung 3: Beispiele für arithmetische Ausdrücke unserer Sprache A
Wenn wir nun aber eigentlich Strukturbäume in der Menge der arithmetischen
Ausdrücke haben, müssen wir uns die folgende Frage stellen: Wie kommen wir
nun zu linearen arithmetischen Ausdrücken, d.h. arithmetischen Ausdrücken, die
nicht wie Bäume, sondern wie die gewohnten Terme aus der Schule aussehen?
Zunächst einmal stellen wir fest: Wir sparen uns mit Hilfe von Syntaxbäumen
Klammern. Klammern dienen in der Mathematik dazu, Zugehörigkeiten zwischen Ausdrücken darzustellen, d.h. haben wir einen Ausdruck des Schemas
(. . . ) · (. . . ),
so müssen wir um den Wert des Ausdrucks zu bestimmen, erst die Klammern
ausrechnen und dann die beiden Ergebnisse mutliplizieren. Schreiben wir diesen
Ausdruck als Baum, so entsteht der Baum in Abbildung 4
·
...
...
Abbildung 4: Ein schematischer Syntaxbaum
Achtung: Spoiler auf Semantik Im Folgenden wollen wir Ihnen den Zusammenhang zwischen Klammern und Syntaxbäumen erklären, indem wir Ihnen zeigen, wie man den Wert zu einem Ausdruck berechnet. Zum Beispiel repräsentiert
der arithmetische Ausdruck (4 + 7) + 3 den Wert 14, da wir 14 erhalten, wenn wir
den Ausdruck ausrechnen (wie in der Schule). Klammern und Syntaxbäume legen
dabei fest, in welcher Reihenfolge Teilausdrücke berechnet werden.
Zum Beispiel repräsentiert der arithmetische Ausdruck 3 − (8 ÷ 2) den Wert −1,
da zuerst die Teilausdrücke 8 ÷ 2 und 3 ausgerechnet werden und dann erst die
Subtraktion. Auf der anderen Seite repräsentiert (3 − 8) ÷ 2 den Wert −2, 5 weil
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
linearen
1 Sprachen
10
zuerst die Teilausdrücke 3 − 8 und 2 ausgerechnet werden und dann erst die Division. Wie Sie an diesem Beispiel sehen können ist die mathematische Operation,
die wir zuletzt ausführen, eine andere (Subtraktion vs. Division).
Zurück zu Syntaxbäumen: Was Klammern in arithmetischen Ausdrücken sind,
entspricht Ebenen im Syntaxbaum: Wollen wir arithmetische Ausdrücke in Gestalt
eines Syntaxbaums ausrechnen so müssen wir zuerst alle Knoten in der darunter liegenden Ebene ausrechnen, d.h. die darunter liegenden Knoten sind Teilausdrücke
der aktuellen Operation, die zuerst ausgerechnet werden müssen.
Wir können mathematisch präziser sagen: Jede Teilmenge von Knoten eines
Baumes, die einen nach der Grammatik korrekten arithmetischen Ausdruck beschreibt, könnte in der aus der Schule gewohnten Darstellung geklammert werden. In Abbildung 5 haben wir mögliche solcher Knotenmengen* markiert.
Intuition
(a) Was heißt “jede Teilmenge von Knoten eines Baumes”? Der Baum aus
Abbildung 5 hat neun Knoten, die mit 5, y, x, +, ÷, ·, −, 3, 4 markiert
sind. Die Markierung ist dabei das, was innerhalb des Knotens steht.
Davon können wir nun verschiedene Teilmengen bilden, also Mengen,
die eine beliebige Auswahl an Knoten des Baumes enthält. Diese Teilmengen sind alle möglichen Teilmengen von Knoten unseres Beispielbaums.
(b) Was heißt “die einen nach der Grammatik korrekten arithmetischen
Ausdruck” beschreiben? Nehmen Sie zum Beispiel an, wir bilden die
Teilmenge, die nur die mit 5, 3 und 4 markierten Knoten enthält. Dann
können wir den Ausdruck 5 3 4, der entsteht, wenn wir alle anderen
Knoten aus dem Baum streichen, nicht mehr mithilfe unserer Grammatik für binäre Bäume ableiten. Also beschreibt die Teilmengen keinen nach der Grammatik korrekten arithmetischen Ausdruck.
Zusammenfassend: Im einfachsten Fall klammern wir zunächst einmal alle Teilbäume eines Baumes und schreiben die im Syntaxbaum vorkommenden Zeichen
ansonsten linear in eine Zeile†.
·
÷
x
+
5
−
3
4
y
Abbildung 5: Mögliche Teilbäume eines Syntaxbaums
Im Folgenden betrachten wir nun genauer das Vorgehen, wie wir Syntaxbäume in
arithmetische Ausdrücke übersetzen und umgekehrt. Die entscheidende Frage ist
in diesem Abschnitt: Wie überführen wir einen Ausdruck der Form (4 + 6) · (3 − x)
*speziell bei Bäumen auch Teilbäume genannt
†vom linkesten Zeichen zum rechtesten Zeichen in der grafischen Darstellung
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
11
bzw. 8 ÷ (−x) in einen Strukturbaum? Und wie umgekehrt? Wir beginnen mit
einem Beispiel, nämlich der Darstellung der beiden arithmetischen Ausdrücke als
Strukturbaum (Abbildung 6).
·
÷
−
+
4
6
3
8
x
−
x
Abbildung 6: Die Darstellung der arithmetischen Ausdrücke als Syntaxbaum
In Strukturbäumen gehört all das zusammen, was unterhalb des gleichen Operators steht. Im linken Baum gehören zum Beispiel 4 und 6 zum +, da beides unterhalb von + steht und eine Verbindung dazu hat (4 und 6 sind direkte Nachfolger
von +). Folglich gehören im linken Baum zum Operator · zwei Ausdrücke - nämlich eine Addition und eine Subtraktion. Zusammengehörigkeit von Teilen (wie 4,
+ und 6) wird im Strukturbaum durch eine Hierarchie dargestellt, die immer vom
Operator angeführt wird (die Summanden 4 und 6 gehören zum Operator +). Falls
in der Wurzel eines Strukturbaums ein Operator steht, so gehört alles was darunter steht, dazu. In unserem Beispiel gehören zum Operator · zwei arithmetische
Ausdrücke, die wieder einen Operator enthalten.
Versuch es selbst! – Aufgabe 7: Spielen mit arithmetischen Ausdrücken
Übersetzen Sie solange arithmetische Ausdrücke aus der gewohnten Darstellung in Syntaxbäume, bis Sie sich sicher sind, dass Sie diese Richtung ohne
Probleme hinbekommen.
Formulieren Sie dann eine allgemeine Vorgehensweise, die es ermöglicht jeden geklammerten arithmetischen Ausdruck in einen Strukturbaum ohne
Klammern zu überführen.
Vielleicht fragen Sie sich jetzt, warum wir überhaupt Strukturbäume brauchen, da
Computer ja keine zweidimensionalen Objekte einlesen können und Strukturbäume auch noch schwerer für uns Menschen zu lesen ist. Dafür gibt es zwei Gründe:
Zum einen folgt der Strukturbaum der Grammatik. Alle Operatoren mit zwei Operanden haben auch zwei Nachfolger im Strukturbaum. Wir können so überprüfen, ob etwas zu einer Sprache gehört oder nicht. Müssen wir beim Aufstellen des
Strukturbaums bei anderen Elementen der Sprache als natürlichen Zahlen und
Variablen aufhören – also allgemein bei einem Wort/Ausdruck, welcher nicht atomar ist –, so genügt der Ausdruck nicht der Grammatik und ist damit kein Element
der Sprache. Strukturbäume geben uns also eine Möglichkeit zu zeigen, dass Ausdrücke gemäß einer Grammatik gebildet wurden.
Zum anderen ist die Darstellung als Strukturbaum klammerfrei. Da sie auch etwas
über die Hierarchie innerhalb eines Ausdrucks aussagt, eignet sie sich als Repräsentation von Ausdrücken im Computer. Viele Übersetzer für Programmiersprachen übersetzen die Zeichenfolge (eine lineare Sequenz), die sie als Eingabe erhalten, erst einmal intern in einen solchen zweidimensionalen Baum, um darauf zu
arbeiten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
1 Sprachen
12
In der Praxis …
Wie erstelle ich einen Strukturbaum aus einem Ausdruck?
(a) Setze Klammern überall dort im Ausdruck, wo es sinnvoll möglich ist
(z.B. (4 + 7), aber nicht (4+)7, bei arithmetischen Ausdrücken zum Beispiel auch “Punkt vor Strich” etc.).
(b) Betrachte die äußerste Klammer: Der Operator, der in ihr enthalten ist,
aber in keiner weiteren Klammer, wird zur Wurzel des Strukturbaums.
Warum kann es nur einen solchen Operator geben? Überlegen Sie!
(c) Betrachte nun alle Operanden des letzten Operators rekursiv und beende das Aufbauen des Strukturbaumes sobald die innerste Klammer
erreicht wurde.
Beispiel
Wir betrachten den Ausdruck x ÷ y − z + x1
Schritt 1 (((x ÷ y) − z) + x1 )
Schritt 2 + ist die Wurzel unseres Baumes.
Schritt 3 Der bisherige Strukturbaum sieht so aus.
+
?
?
An die Stelle der beiden Fragezeichen tritt nun, indem wir die
Schritte 2 und 3 rekursiv auf ((x ÷ y) − z) und x1 anwenden, der
Rest des Strukturbaums:
+
−
÷
x
x1
z
y
Die zweidimensionale Darstellung von Ausdrücken als Baum hat einen entscheidenden Nachteil: Wollen wir mit Ausdrücken von Hand arbeiten, so haben wir
sehr viel Schreib- und Platzaufwand, um die Ausdrücke zu notieren. In dieser
Form können wir sie Computern außerdem kaum verständlich machen, daher
sind wir an einer äquivalenten eindimensionalen Darstellung interessiert.
In der Praxis …
Wie erstelle ich aus einem Strukturbaum einen Ausdruck?
(a) Schreibe das Zeichen der Wurzel auf. Ist es eine natürliche Zahl oder
eine Variable, so sind wir fertig.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
13
(b) Falls die Wurzel ein Operator war: Streiche die Wurzel und ihre ausgehenden Kanten weg, beginne mit den neuen Bäumen von vorne und
schreibe die geklammerten Ergebnis in der richtigen Reihenfolge in
den Ausdruck.
Beispiel
Betrachten wir einmal den folgenden Strukturbaum:
+
·
−
y
x
4
42
Unser Ausdruck besteht zunächst aus (?) + (?). Nun setzen wir unsere
Betrachtung rekursiv auf den Bäumen mit Wurzel − bzw. · fort.
·
−
y
x
linker Teilbaum
4
42
rechter Teilbaum
Wir erhalten damit den Ausdruck ((?) − (?)) + ((?) · (?)). Im nächsten und letzten Schritt müssen wir nur noch die Fragezeichen durch
die vorkommenden Variablen bzw. natürliche Zahlen ersetzen: ((x) −
(y)) + ((4) · (42)).
Nun enthalten die Ausdrücke, die wir mit Hilfe des obigen Verfahrens erhalten
noch sehr viele Klammern. Nun müssen wir uns also die Frage stellen: Wie können
wir die Klammern in den Ausdrücken wieder loswerden?
Die Idee ist eine Reihe von Klammersparregeln einzuführen. Diese Klammersparregeln sagen aus, welche Klammern überflüssig sind, weil sie eigentlich implizit
sowieso im Ausdruck stehen.
Bemerkung 2. Die äußersten Klammern eines Ausdrucks können stets weggelassen werden. Ansonsten können Klammern weggelassen werden, wenn wir sie
anhand folgender Prioritätsregeln über Operatorenbindungen wieder rekonstruieren können . In folgender Liste bindet unäres + und unäres − am stärksten, binäres − und binäres + am schwächsten.
(a) unäres Minus −, unäres + (kommen in unseren arithmetischen Ausdrücken
selten vor)
(b) Multiplikation ·, Division ÷
(c) Addition +, Subtraktion −
Alle binären Operatoren (also Addition, Subtraktion, Division, Multiplikation)
sind linksassoziativ. Das bedeutet, dass wenn wir x + y + z schreiben, wir (x + y) + z
meinen. Entsprechendes gilt für die anderen drei Operatoren.
Ein einfaches Beispiel und eine Übersicht finden Sie in Abbildung 7. Auf der linken Seite finden Sie nochmals eine Hierarchie der Klammersparregeln. Ganz oben
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Klammersparregeln
1 Sprachen
14
steht der Operator, der am stärksten klammert – das unäre Minus – ganz unten die
Operatoren, die am schwächsten Klammern – nämlich Plus und Minus. Wir lassen
Schritt für Schritt im Ausdruck (((−4) + (5)) − ((7) · (8))) von oben nach unten alle
überflüssigen Klammern weg. Zunächst die äußerste Klammer (die den gesamten
Ausdruck einklammert) und die Klammern, die um einzelne Zeichen stehen (wie
die Klammern (4)). Danach verwenden wir, dass das unäre Minus stärker Klammer als Plus, dann dass Mal stärker als Minus klammert und schließlich nutzen
wir noch aus, dass Plus und Minus gleich stark klammern und linksassoziativ sind.
((((−(4)) + (5)) − ((7) · (8)))
äußere/innere Klammern
((−4) + 5) − (7 · 8))
unäres − klammert stärker als +
unäres Minus
bindet schwächer als
·, ÷
bindet schwächer als
(−4 + 5) − (7 · 8)
· klammert stärker als −
(−4 + 7) − 7 · 8
+ und − klammern gleich stark, linksassoziativ
+, −
−4 + 7 − 7 · 8
Abbildung 7: Klammersparregeln für arithmetische Ausdrücke und ein Beispiel
Bemerkung 3. Achtung: x + y + z = (x + y) + z ist nicht das selbe wie x + (y + z)!
Wie wir noch sehen werden, sind beide Ausdrücke zwar semantisch gleich, syntaktisch sind sie jedoch verschieden, da ihre syntaktische Struktur anders aufgebaut
ist (siehe Lösung 7).
Mit Hilfe dieser Regeln können wir Ausdrücke vereinfachen:
• Wir können einige Ausdrücke sogar ganz ohne Klammern darstellen: −x −
42 + 13 = ((−x) − 42) + 13
• Manche Klammern brauchen wir trotzdem. Intuitiv brauchen wir immer
dann Klammern, wenn Operatoren nicht das tun, was die Klammersparregeln vorgeben, also z.B. wenn das unäre − einen zusammengesetzen Ausdruck umfassen soll und kein Atom: x−y·−(z+x·y) = x−(y·(−(z+(x·y))))
Bei komplizierteren (d.h. vor allem größeren) Ausdrücken müssen wir aber dennoch aufpassen, ob wir nach Konvention – also nach menschlichem Ermessen,
nicht nach Definition erlaubt – wirklich alle Klammern entfernen sollten.
Beispiel
Die Formel (4 + 5) − ((7 · 2) ÷ x) lässt sich zum Beispiel schreiben als (4 +
5) − 7 · 2 ÷ x und damit besser lessen. Auf der anderen Seite ist die Formel
4 + 5 − 6 · 8 ÷ 6 einfach zu lesen in der Form (4 + 5) − ((6 · 8) ÷ 6).
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
15
Trotzdem gibt es immer noch genug Ausdrücke, die wir nicht ableiten können. Wie
Sie gleich sehen werden, ist es bei linear geschriebenen Ausdrücken etwas schwerer zu entscheiden, ob sie der Grammatik genügen oder nicht.
Beispiel
Keine Ausdrücke sind z.B.
• 42 13. Es gibt keine Regel, bei der zwei atomare Aussagen direkt nebeneinander stehen dürften. Jede Regel bei der mehr als eine atomare
Aussage entstehen kann, enthält auch einen Operator.
• 42 + φ. Dies ist keine Aussage, weil φ weder eine natürliche Zahl noch
eine Variable ist. φ ist nur eine Metavariable, die jeden beliebigen Ausdruck repräsentieren kann. Syntaktisch ist das Symbol φ jedoch niemals Teil einer Aussage. Andersherum, wenn wir sagen: “Sei φ ∈ L”,
dann ist auch 42 + φ ∈ L. Allerdings ist dann 42 + φ immer noch keine
Aussage, sondern es steht nur für eine Aussage, die einer bestimmten
Form genügt – hier: Der am weitesten links vorkommende Operator
ist ein +, dessen linker Operand 42 ist, während der rechte beliebig ist.
Eine solche Aussage wäre z.B. 42+13 oder 42+(x+y), aber nicht 13+13
oder 42 − 13.
1.2 Semantik
Die Semantik einer Sprache ist ihre Bedeutung. Dabei weisen wir syntaktischen
Ausdrücken ein mathematisches Objekt zu, um zu sagen, dass dieser Ausdruck für
jenes Objekt steht. Wir schreiben diese Zuweisung als eine mathematische Funktion,
die wir mit zwei eckigen Klammern J K bezeichnen. Tatsächlich sagt man zu diesen
Klammern gerne Semantikklammern. Vermutlich sind Sie gewohnt, das Funktionen
immer f oder g oder so ähnlich heißen. Jedoch können Funktionen ganz beliebige
Symbole als Namen haben. Im Fall der Semantikklammer ist es sogar noch etwas
seltsamer: wenn wir eine Funktion f normalerweise anwenden, dann schreiben
z.B. f (x) (sprich: f von x). Bei der Semantikklammer setzen wir x einfach in die
Klammer ein, also JxK, anstelle von etwas wie JK(x), was zwar analog zu unserer gewohnten Schreibweise aus der Schule wäre, aber tatsächlich doch etwas komisch
aussehen würde, und vor allem unpraktisch wäre. Wenn man die Semantikklammer (oder andere komische Funktionsamen) ohne Argument verwendet, schreibt
man oft auch J·K anstelle von JK, um anzudeuten, dass dort, wo der Punkt ist, das
Argument stehen soll, wenn wir die Funktion anwenden. Er hat jedoch keine tiefere Bedeutung.
Um die Semantik arithmetischer Ausdrücke zu definieren, müssten wir uns eigentlich überlegen, welche Semantik wir Ausdrücken zuweisen, in denen durch Null
geteilt wird*. Daher lassen wir in diesem Kapitel die Division erst einmal weg. In
Kapitel 5 werden Sie aber eine Möglichkeit kennenlernen, auch für diesen Fall die
Semantik sinnvoll zu definieren. Um die Semantik zu vereinfachen, lassen wir an
dieser Stelle auch die Variablen aus unserer Sprache heraus. In Kapitel 2 werden
wir zeigen, wie man Variablen umgehen kann. Ihre Aufgabe wird es dann später
*Wie Sie aus der Schule vermutlich wissen, ist Division durch Null undefiniert.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
1 Sprachen
16
(nach Kapitel 2) sein, die Semantik arithmetischer Ausdrücke um Ausdrücke mit
Variablen zu erweitern.
Definition 4 (Semantik arithmetischer Ausdrücke) Sei A die Menge der aritmetischen Ausdrücke ohne Variablen und Division. Seien φ und ψ Elemente von
A. Dann ist J·K definiert als:
(a) JnK = n für n ∈ N.
(b) Jφ + ψK = JφK + JψK
(c) Jφ − ψK = JφK − JψK
(d) Jφ · ψK = JφK · JψK
(e) J−φK = −JφK
Es fällt dabei zunächst auf, dass wir scheinbar nicht viel tun, außer Klammern zu
verschieben. Zumindest definieren wir die Zahlen als sie selbst, und die Operationen, wie +, ebenfalls. Man darf sich hier jedoch nicht täuschen lassen! Tatsächlich
sieht das hier nur so aus. Und das liegt daran, dass wir die selben Symbole, wie z.B.
+ zweimal verschieden benutzen. Einmal als syntaktisches Symbol (links), und
einmal als mathematische Operation (rechts). Das machen wir deshalb, weil wir
gewohnt sind, Addition eben mit dem Symbol + zu schreiben. Und so kommt es,
dass in diesem Beispiel das selbe Symbol links und rechts auftaucht.
Wir wollen uns nun nochmals klar machen, dass Syntax und Semantik nicht starr
gekoppelt sind. Welche Symbole man nutzt, um bestimmte Dinge zu bezeichnen
folgt keiner festen mathematischen Regel, sondern folgt meist nur Konventionen unter Menschen. Man nutzt die Symbole, die den meisten Leuten (oder auch nur einem
selbst) eingängig erscheinen. So hätten wir auch arithmetische Ausdrücke syntaktisch z.B. mit den Worten ◦ anstelle +, oder ⊕ anstelle von · definieren können,
um so klarer zu machen, dass die Operation die dahinter steckt nicht dasselbe ist,
wie das syntakstische Symbol, das in der Sprache dafür stehen soll. Das Problem
daran wäre jedoch gewesen, dass Sie vermutlich von Anfang an gezweifelt hätten,
was für komische Dinge wir hier arithmetische Ausdrücke nennen, und warum
wir behaupten, Sie würden sie aus der Schule kennen.
Andersherum können wir die selbe Syntax nehmen, und sie mit einer anderen Semantik versehen; das sieht dann eben aus wie die bekannten arithmetischen Ausdrücke, ist jedoch (in der Bedeutung), was ganz anderes.
Definition 5 (Arithmetische Syntax, aber seltsame Semantik) Sei A die
Menge der aritmetischen Ausdrücke ohne Variablen und Division. Seien φ und ψ
Elemente von A. Dann ist J·K′ definiert als:
(a) JnK′ = n
(b) Jφ + ψK′ = JφK′ − JψK′
(c) Jφ − ψK′ = JφK′ · JψK′
(d) J−φK′ = JφK′
{
42
′
(e) Jφ · ψK = JφK′
JψK′
falls JψK′ = 0
sonst
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
17
Intuition
Sowohl die Syntax einer Sprache als auch die Semantik einer Sprache sind
frei wählbar. Dies ist wichtig, damit wir sinnvoll auch Aspekte der realen
Welt modellieren können und dabei die Symbole verwenden können, die wir
normalerweise dafür verwenden – und keine, die extern vorher festgelegt
wurden.
Die freie Wahl der Semantikabbildung erlaubt es uns, auf genau den Aspekt
zu fokussieren, der uns gerade wichtig ist. Vielleicht ist uns bei arithmetischen Ausdrücken erst einmal nicht der Wert, den sie annehmen, wichtig,
sondern, wie oft der Operator + vorkommt.
Eine berechtige Frage, die Sie sich jetzt vielleicht stellen, ist, wie man die Semantikabbildung verwendet. Beginnen wir mit der intuitiven Semantik von arithmetischen Ausdrücken (Sie können ihr Ergebnis gut überprüfen). Dann schreiben wir
z.B.:
(a) J4 + 4K = 8
(b) J4 − 7 · 8K = −52
In der Praxis …
Wie sind wir auf die Ergebnisse im Beispiel gekommen? Betrachten wir zunächst einen einfachen Ausdruck: J42 + 13K. Um + auszuwerten, sagt uns die
Definition der Semantik, dass wir beide Teilausdrücke, also 42 und 13, auswerten müssen. Es gilt:
• J42K = 42
• J13K = 13
Damit wissen wir dann, dass als Ergebnis 55 herauskommt.
Betrachten wir nun einen etwas komplizierten Ausdruck, z.B. 7 · (4 − 18). In
der obersten Ebene des Ausdrucks, d.h. in der, die nicht mehr geklammert ist,
müssen wir als Operator · auswerten. Dazu betrachten wir die Teilausdrücke
φ := 7 und ψ := 4 − 18. Wir können direkt sehen, dass φ den Wert 7 hat. Nun
betrachten wir ψ und sehen, dass wir die Semantik eines Ausdrucks mit −
bestimmen müssen. Dazu müssen wir erneut zwei Teilausdrücke auswerten,
nämlich 4 und 18. Auch hier bleibt nichts zu tun. Schließlich erhalten wir
also für JφK = 7 und JψK = −14 und wissen damit nach der Definition der
Semantik von ·, dass 7 · (−14) zu −98 auswertet.
Wir können uns diese Rekursion anhand des Strukturbaumes verdeutlichen
(eigentlich folgt die Rekursion sogar der Struktur exakt des Baumes, der die
Formel repräsentiert). Achtung: Die folgende Darstellung dient nur der Verdeutlichung der Intuition, ist jedoch formal nicht korrekt!
(a) Wir beginnen bei ÷ und wenden die entsprechende Regel der Semantik an:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
1 Sprachen
18
·
−
7
4
18
(b) Dann geht es sowohl bei 7 also auch bei − weiter
(c) Für 7 wenden wir die Regel für natürliche Zahlen an und sind auf dieser
Seite des Baumes fertig, die Regel für − verlangt nochmals Rekursion
über die beiden Unterbäume
·
−
7
4
18
(d) Nun können wir die anderen Operatoren auch bestimmen:
·
7
−14
(e) Schließlich erhalten wir als Ergebnis: −98
Sie wissen prinzipiell nun alles, was wir in den folgenden Kapiteln über Sprachen
brauchen. Im Laufe Ihres Studiums werden noch einige Dinge über formale Sprachen und Grammatiken dazukommen. Damit Sie sicher mit Sprachen und Grammatiken umgehen können, finden Sie im nächsten Kapitel einige Übungsaufgaben, die Sie möglichst selbstständig bearbeiten sollten, sowie im Anschluss daran
Lösungen zur Selbstkontrolle.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Sprachen, die
Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen.
Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Sprachen
zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige im Kapitel gelernt und verstanden haben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
2 Logik
Logik ist die Lehre des vernünftigen Schließens, Argumentierens und Beweisens.
Es ist eben dieses vernünftige klare Denken, das für die Mathematik so wichtig
ist. Alle Erkenntnis der Mathematik baut auf zwei Bausteinen auf: Exakte Definition von grundlegenden Objekten und Erschließen neuer Zusammenhänge oder
Eigenschaften durch die Anwendung logischen Denkens. Logisches Denken ist an
sich nichts Ungewöhnliches. Es ist die Art, wie Menschen darüber nachdenken,
wie Dinge zusammenhängen und auseinander hervorgehen. Alle von uns machen
das jeden Tag.
Die Sonne scheint, daher ist es warm.
Wir schaffen eine logische Verbindung zwischen der Tatsache, dass die Sonne
scheint, und es warm ist. Im Grunde macht mathematische Logik nun nichts anderes, als diese logischen Gedankengänge zu präzisieren. Dabei stellt man schnell
fest, dass nicht alles, was wir im Alltag als gültigen logischen Schluss ansehen,
auch wirklich zwingend richtig ist.
Alle Kriminellen in meiner Stadt sind Ausländer. Mein Nachbar ist
Türke. Deshalb schließe ich nachts die Türen lieber zweimal zu.
Dieser Schluss ist eindeutig nicht korrekt. Bei näherer Betrachtung stellt sich sogar unser harmloser logischer Schluss mit der Sonne als nicht richtig heraus. Der
Satz erweckt den Eindruck, dass wenn die Sonne scheint, es auch warm ist. Wenn
dies jedoch korrekt wäre, dann dürfte es niemals passieren, dass es draußen hell
ist, und trotzdem kalt – wie es zum Beispiel an einem schönen Wintertag der Fall
ist.
Genau diese Denkfehler eliminiert die mathematische Logik, indem sie uns nur
solche Schlüsse zu ziehen erlaubt* , die wirklich richtig sind†. Um dies zu erreichen, müssen wir die Sprache, in der wir mathematische Tatsachen beschreiben
können, sehr einfach halten, und ihren Bestandteilen eine möglichst genaue Bedeutung geben.
In der Praxis …
Wir trennen in diesem Abschnitt zwei Konzepte: Den logischen Schluss, den
wir in der Mathematik ziehen dürfen, und den Schluss, den wir zwar im Alltag ziehen und für logisch und nachvollziehbar halten, den wir aber mit der
Logik nicht begründen können. Logisch inkorrekte Schlüsse haben wir bereits gesehen, ein mathematisch korrekter Schluss wäre z.B. “Saarbrücken
*Dies hindert uns natürlich weder daran, die Regeln der Logik unabsichtlich zu umgehen oder zu
missbrauchen. Computerprogramme, sogenannte Beweissysteme, die diese Regeln beherrschen,
und uns aufhalten, wenn wir nicht nach den Regeln denken, sind eine große Hilfe dabei, die Regeln
der Logik korrekt zu verwenden.
†Was dabei richtig und falsch ist, ist letzten Endes Auslegungssache, und es gibt da keine endgültige Wahrheit. Jedoch gibt es Regeln, auf die sich fast alle der schlausten Menschen dieser Erde seit
vielen Jahrtausenden geeinigt haben.
19
2 Logik
20
ist weit entfernt von Berlin, daher brauche ich zu Fuß sehr lange von Saarbrücken nach Berlin.”
Wir werden im Kapitel 3 noch genauer auf das Thema Schluss eingehen und wann
wir Schlüsse ziehen dürfen und eine besondere Art von Schluss – den Beweis – kennenlernen.
2.1 Aussagenlogik
Die Aussagenlogik ist eine Sprache, zusammen mit einer Sammlung von Regeln des
gültigen Schließens (erst dadurch wird sie zur Logik!), bei der sich alles um Aussagen dreht.
2.1.1 Aussagen
Aussage
Definition 6 (Aussage) Eine Aussage ist ein Satz, der zweifelsfrei entweder wahr
oder falsch ist.
Es ist dabei nicht wichtig, ob wir, oder jemand anderes diesen Satz jetzt oder irgendwann später beantworten kann. Es muss nur sichergestellt sein, dass es nicht
möglich ist, dass dieser Satz irgendetwas zwischen wahr und falsch ist, oder gar
beides zugleich. Es geht auch nicht darum, ob dieser Satz phantastisch oder realistisch ist.
Das Konzept der Aussage- und Fragesätze
Aussage- und Fragesätze kennen Sie vielleicht noch aus dem Deutschunterricht. Unser Konzept hat damit aber sehr wenig zu tun. Zwar kann kein Fragesatz eine Aussage sein, aber nicht jeder Aussagesatz ist auch eine Aussage,
wie die folgenden Beispiele zeigen.
Beispiel
• Blau ist eine Farbe.“ Dies ist eine Aussage, und sie ist wahr.
”
• Alle Drachen können fliegen.“ Dies ist eine Aussage, warum dies eine
”
Aussage ist, werden im zweiten Abschnitt dieses Kapitels näher betrachten.
• 1 > 0 ist eine wahre Aussage, und zugleich eine ganz klassische mathematische Aussage!
• Wenn ich dich nur umarmen dürfte!“ ist keine Aussage, sondern ein
”
Wunsch.
• Ich darf Markus immer umarmen.“ ist wiederum eine Aussage. Entweder
”
ich darf Markus immer umarmen, oder nicht.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
21
• Stimmt es, dass Blau eine Farbe ist?“ Dieser Satz ist keine Aussage, es ist
”
eine Frage. Fragen können niemals Aussagen sein.
Intuition
Nicht alles, was bisher jedoch wie eine Aussage aussah, ist auch wirklich eine
Aussage. Erinnern wir uns daran, dass Aussagen immer prinzipiell eindeutig wahr oder falsch sein müssen. Schauen wir uns nochmals den Satz Ich
darf Markus immer umarmen genauer an. Wer ist eigentlich Markus, und wer
ist ich? Solange wir nicht wissen, auf welche Personen sich dieser Satz bezieht, können wir auch nicht sagen, ob er stimmt, oder nicht. Also ist dies
eigentlich keine Aussage, außer wir wissen genau, wer gemeint ist. Auch unter den mathematischen Ausdrücken haben wir so ein ähnliches Phänomen.
Betrachten wir den Satz
x + 3 > 5.
Er sieht ja fast so aus wie die Aussage 1 > 0 aus unseren Beispielen vorher.
1 > 0 ist eine Aussage, daran ist nichts zu rütteln. Aber obiger Satz ist keine Aussage, denn wir wissen ja nicht, was genau x sein soll. Erst wenn wir
eine Zahl für x festhalten, kann man überhaupt über Wahrheit oder Falschheit dieses Satzes reden. Ebenso wie vorher Markus für uns nur ein unbestimmter Platzhalter für eine Person war, so ist x ein Platzhalter für eine
unbestimmte Zahl.
Manchmal treffen wir auch Sätze, bei denen scheint alles eindeutig bestimmt zu sein, und sie sehen aus wie Aussagen, dennoch sind sie keine Aussagen.
Beispiel
Erde > 0. Die Erde ist eindeutig ein bestimmter Planet, also kein Platzhalter. Ebenso ist die 0 eine ganz konkrete Zahl. Und dieser Satz sieht
ansonsten fast so aus wie der Satz 1 > 0. Dennoch ist es keine Aussage. Er macht schlicht und ergreifend keinen Sinn. Man kann deswegen
weder sagen, er ist wahr, noch kann man sagen, er ist falsch.
Alle Aussagen, die wir bisher betrachtet haben, hatten eine sehr einfache Struktur, und bestanden aus einer einzigen Aussage. Man kann jedoch auch Aussagen
bilden, die selbst aus mehreren Aussagen zusammengesetzt sind. Ein solches Beispiel ist
Die Sonne scheint und es ist warm.
Diese Aussage hat zwei Teilaussagen, Die Sonne scheint.“, und Es ist warm.“.
”
”
Diese beiden Aussagen verknüpfen wir durch das Wort und, und bilden somit eine
neue Aussage. Diese neue Aussage ist wahr, wenn beide Teilaussagen wahr sind,
und falsch, sobald eine von beiden falsch ist.
Es gibt noch einige weitere Wörter, die Aussagen sinnvoll verknüpfen, so dass
durch die Verknüpfung erneut eine Aussage entsteht, das heißt, ein Satz, den man
eindeutig entweder mit wahr oder mit falsch beantworten kann.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
22
Versuch es selbst! – Aufgabe 8: Natürlichsprachliche Verknüpfungen
Betrachten Sie die Konjunktionen (wie “und”, “aber”, “oder”, “deshalb”, “sobald”, “obwohl” …) der deutschen Sprache. Erhält man für jede Anwendung
auf Teilaussagen tatsächlich wieder Aussagen (im mathematischen Sinne)?
Wann genau sind die so gebildeten Aussagen jeweils wahr, und wann falsch?
Liefert jede Konjunktion wirklich eine neue Verbindung zweier Aussagen (im
logischen Sinne)?
Operatoren
Durch die Einführung solcher Bindewörter, die wir in der Logik Operatoren* nennen, können wir aus Aussagen neue Aussagen bilden, so dass diese beliebig komplex werden können. Im folgenden Abschnitt werden wir mathematisch genau
versuchen zu erfassen, was wir alles als eine Aussage verstehen wollen, und wie
genau komplexe Aussagen aus einfacheren Aussagen entstehen. Gleichzeitig werden wir jeder Aussage eine eindeutige Bedeutung zuweisen, sodass jeder Logiker
dieser Welt genau dasselbe versteht wie wir, wenn wir eine Aussage aufschreiben.
Wir wollen im Folgenden also die Logik, die eine mathematische Sprache ist, exakt
definieren.
2.1.2 Syntax
Kommen wir nun zu der Syntax der Aussagenlogik. Die Syntax setzt sich zusammen aus atomaren Aussagen, die nicht mehr weiter in kleinere Bestandteile zerlegt werden können. Eine solche Aussage wäre z.B. “Es ist warm.”, oder “Die Sonne
scheint.”, aber eben nicht “Es ist warm und die Sonne scheint”. Die wichtigsten atomaren Aussagen sind übrigens “Wahr.” und “Falsch.” selbst†.
Die Menge der atomaren Aussagen wäre damit so etwas wie
{Wahr, Falsch, Die Sonne scheint, Blau ist eine Farbe, . . . }.
In dieser Menge finden sich dann alle erdenklichen Aussagen, die nicht aus anderen Aussagen zusammengesetzt sind. Da wir als Mathematiker und Informatiker
immer bestrebt sind, unnötigen Ballast beim Denken abzuwerfen und uns auf die
Essenz der Dinge zu konzentrieren, wollen wir diese etwas unhandliche Menge
der atomaren Aussagen so vereinfachen, dass wir sie erstens leichter aufschreiben
können, und zweitens wir uns keine Gedanken über die genaue natürlichsprachliche Bedeutung der einzelnen atomaren Aussagen machen müssen‡.
atomare Aussage
Definition 7 (Menge der atomaren Aussagen) Sei V eine Menge von Variablen§. Die Menge der atomaren Aussagen Atom besteht aus den elementaren Aussagen ⊤(gelesen “top”, steht für wahr) und ⊥(gelesen “bottom”, steht für falsch), sowie aus Aussagevariablen p, q, r, p1 ,2 . . . , q1 . . . , r1 . . . ∈ V.
*historisch bedingt findet man in Schriften über die Aussagenlogik auch den Begriff Junktor anstelle
von Operator.
†Dies sind natürlich keine korrekten deutschen Sätze. Aber sowas ist uns Informatikern natürlich
egal, solange jeder weiß, was gemeint ist.
‡Diese Abstraktion von genauen natürlichsprachlichen Formulierungen bzw. von genauen “realen”
Umständen mögen Informatiker sehr gerne und nutzen sie in vielen verschiedenen Situationen.
§Wir betrachten im Allgemeinen Variablen als Platzhalter für beliebige andere Objekte, hier jedoch
nur für Aussagen. In der Menge V notieren wir Namen von Variablen um wiederum diese zu repräsentieren.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
23
Beachten Sie, dass jede atomare Aussage ein Wort der Sprache Aussagenlogik ist.
Aussagevariablen betrachten wir im Folgenden als Platzhalter für beliebige Aussagen. Sie können also stehen für ⊤ und ⊥, aber auch für komplizierte Aussagen, die
wir im Folgenden kennenlernen werden. In unserer Vorstellung dürfen wir für die
Variablen auch beliebige Aussagen der Art “Die Sonne scheint” einsetzen, und wir
können damit herumspielen. Einzig in unserem formalen System, der mathematischen Sprache Aussagenlogik, gibt es solche Sätze wie “Die Sonne scheint” nicht,
denn wir brauchen sie nicht, um zu verstehen, wie logisches Denken funktioniert,
und kümmern uns nicht um sie.
Jetzt wollen wir die Operatoren der Aussagenlogik näher kennenlernen. Auch diese werden wir als einfache mathematische Symbole aufschreiben, und uns nicht
mit natürlichsprachlichen Wörtern herumschlagen, auch wenn es für alle diese
Operatoren eine (zumindest ungefähre) Entsprechung in der natürlichen Sprache
gibt. Zugleich mit der Einführung der Operatoren wollen wir auch beschreiben,
wie genau wir sie verwenden dürfen, um kompliziertere Sätze in unserer Sprache
Aussagenlogik zu bilden.
Definition 8 (Sprache “Aussagenlogik”) Die Menge aller Aussagen L ist gegeben
durch folgende Grammatik, wobei x ∈ Atom,
Menge aller Aussagen
L ∋ φ, ψ ::= x | ¬φ | φ ∧ ψ | φ ∨ ψ | φ ⊕ ψ | φ → ψ | ψ ↔ φ
Die Operatoren, die wir oben eingeführt haben, heißen Negation (¬), Konjunktion
(∧), Disjunktion (∨), Ausschließendes Oder (⊕), Implikation (→) und Äquivalenz (↔). Negation, Konjunktion und Disjunktion nennt man auch einfach Nicht, Und und Oder.
Wir fassen nun noch einmal natürlichsprachlich zusammen, welche Elemente in
der Menge der Aussagen L enthalten sind.
(a) Jede Aussagenvariable und die Konstanten ⊤ und ⊥ sind Aussagen (atomare
Aussagen).
(b) Sind φ und ψ Aussagen, dann sind auch ¬φ, φ ∧ ψ, φ ∨ ψ, φ → ψ, φ ↔ ψ,
φ ⊕ ψ Aussagen.
(c) Die Sprache der logischen Ausrücke, also die Menge L, ist genau (also nicht
mehr und nicht weniger als) die Menge mit den Eigenschaften (a) und (b).
Wir stellen auch aussagenlogische Ausdrücke als Strukturbäume dar – prinzipiell
nach dem gleichen Schema wie unsere arithmetischen Ausdrücke aus Kapitel 1.
Versuch es selbst! – Aufgabe 9: Mit der Aussagenlogik arbeiten
Versuchen Sie mit Hilfe der Grammatik korrekte aussagenlogische Ausdrücke aufzustellen. Denken Sie daran, dass Grammatiken Strukturbäume liefern, wenn Sie aussagenlogische Ausdrücke aufstellen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
¬, ∧, ∨, ⊕, →, ↔
2 Logik
24
Beispiel
Wir nehmen in diesem Beispiel an, dass alle im Strukturbaum auftretenden
Buchstaben Aussagenvariablen sind. Zwei Beispiele für Strukturbäume finden sich in Abbilung 8.
↔
¬
→
∧
∨
p
⊤
p
q
¬
q
⊕
r
s
Abbildung 8: Zwei Strukturbäume für aussagenlogische Ausdrücke
Auch von aussagenlogischen Ausdrücken hätten wir gerne eine eindimensionale
Variante, die sich für Menschen besser lesen und verwenden lässt. Das Vorgehen,
was wir zum Übersetzen von Strukturbäumen der arithmetischen Ausdrücke zu
einer eindimensionalen Darstellungen vorgestellt haben, lässt sich auf aussagenlogische Ausdrücke eins zu eins übertragen.
Beispiel
Die beiden Strukturbäume aus Abbildung 8 lassen sich in eindimensionaler
Form so schreiben:
• (¬((p) ∧ ((⊤) ∨ (q)))) (linker Ausdruck)
• (((p) → (q)) ↔ (¬((r) ⊕ (s)))) (rechter Ausdruck)
Wir haben aber auch bereits bei arithmetischen Ausdrücken gesehen, dass es eine Reihe von Klammersparregeln gibt, die uns das Arbeiten mit der eindimensionalen, sogenannten linearisierten Form erleichtern. Deshalb gibt es auch Klammersparregeln auf aussagenlogischen Ausdrücken.
Bemerkung 4. Die äußersten Klammern eines Ausdrucks, sowie die Klammern
um atomare Ausdrücke können stets weggelassen werden. Ansonsten können
Klammern weggelassen werden, wenn man sie anhand folgender Prioritätsregeln
über Operatorenbindungen wieder rekonstruieren kann. In folgender Liste (Abbildung 9 rechts) bindet ¬ am stärksten, ↔ am schwächsten.
(a) Negation ¬
(b) Konjunktion ∧
(c) Disjunktion ∨
(d) Exklusives Oder ⊕
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
25
(e) Implikation →
(f) Äquivalenz ↔
(¬((p) ∧ ((⊤) ∨ (q))))
äußere/innere Klammer
¬(p ∧ (⊤ ∨ q))
(((p) → (q)) ↔ (¬((r) ⊕ (s))))
äußere/innere Klammer
(p → q) ↔ (¬(r ⊕ x)))
¬ bindet stärker als ↔
¬
(r → s) ↔ ¬(r ⊕ s)
bindet schwächer als
∧
bindet schwächer als
∨
nicht anwendbar
→ bindet stärker als ↔
bindet schwächer als
⊕
bindet schwächer als
→
bindet schwächer als
↔
r → s ↔ ¬(r ⊕ s)
¬(p ∧ (⊤ ∨ q))
Abbildung 9: Klammersparregeln für aussagenlogische Ausdrücke
Konjunktion ∧ klammert linksassoziativ. Das bedeutet, dass wenn wir schreiben
p∧q∧r wir (p∧q)∧r meinen. Entsprechend für Disjunktion. Die Implikation klammert rechtsassoziativ. Hier gilt, dass p → q → r für die Aussage p → (q → r) steht.
Äquivalenzen und exklusives Oder müssen immer entsprechend ihrer Bedeutung
geklammert werden.
In Abbildung 9 finden sich die minimal geklammerten eindimensionalen Varianten der Ausdrücke aus Abbildung 8, d.h. die linearen Formen, die möglichst wenig
Klammern enthalten.
2.1.3 Semantik
Wir haben Aussagen im vergangenen Abschnitt als Objekte definiert, die eindeutig wahr oder falsch sind, d.h. wir haben Aussagen als Bedeutung nur den Wert
wahr oder den Wert falsch zugewiesen. Daher nutzen wir auch als formale Semantik für unsere Ausdrücke die beiden Wahrheitswerte w und f, die wir ab sofort als
die “Mathematik gewordenen” Formen von wahr ⊤ und falsch ⊥ betrachten. Damit ist J·K eine Abbildung von L, der Menge aller syntaktischen Aussagen, nach
{w, f}, der Menge der Wahrheitswerte. Wir notieren dies prägnant mathematisch
als J·K : L → {w, f}*.
Wir definieren J·K induktiv, d.h. dem syntaktischen Aufbau von Aussagen folgend†. Wir wollen nun – nachdem Sie etwas mehr Erfahrung im Umgang mit
Grammatiken und induktiv aufgebauten Definitionen gesammelt haben – die genaue Bedeutung davon vertiefen.
*Wir werden im Laufe des Vorkurs noch genaueres über Mengen und Abbildungen erfahren
†Wenn Sie das Vorgehen mit der Definition der Semantik arithmetischer Ausdrücke vergleichen, so
werden Sie eine sehr starke Ähnlichkeit feststellen können.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
26
Versuch es selbst! – Aufgabe 10: Mathematische Formulierungen
Überlegen Sie sich, was “induktiv, dem syntaktischen Aufbau von Aussagen
folgend” bedeutet. Denken Sie dabei auch an Strukturbäume.
Die induktive Definition der Semantik erlaubt es uns sehr einfach jedem Element
aus L einen Wert aus {w, f} zuzuweisen, da wir so sicherstellen, dass wirklich jeder
Ausdruck auch eine Semantik erhält. Mit anderen Worten: Es gibt keinen aussagenlogischen Ausdruck in L, der mit der folgenden Semantik nicht eindeutig wahr
oder falsch ist.
Umgang mit Aussagenvariablen
Bevor wir jetzt jedoch zu jedem beliebigen Ausdruck entscheiden können, ob er
wahr oder falsch ist, müssen wir zuerst klären, wie wir dabei mit Aussagenvariablen umgehen wollen. Denn diese haben ja gerade die Eigenschaft, dass sie für
beliebige Aussagen stehen können, und damit alles andere als eindeutig wahr oder
falsch sind. Streng genommen sind sie damit eigentlich gar keine Aussagen, so wie
wir sie in Definition 6 eingeführt haben.
Um zu klären, welche Bedeutung eine Aussage nun hat, müssen wir zuerst für jede
Variable festlegen, ob diese wahr oder falsch ist, bevor wir entscheiden können, ob
eine Aussage wahr oder falsch ist. Eine solche Festlegung nennen wir Belegung.
Belegung
Definition 9 (Belegung) Eine Belegung von Aussagenvariablen ist eine Abbildung b : V → {w, f}. Wir nennen die Menge aller Belegungen B.
Beispiel
Für folgende Ausdrücke haben wir bereits in Abbildung 8 festgestellt, dass
sie in L enthalten und damit Aussagen sind. Nun geben wir Belegungen für
ihre Variablen an:
• ¬(p ∧ (⊤ ∨ q))
–
Belegung b1 : {p, q} → {w, f},
– q 7→ w
– p 7→ f
• (p → q) ↔ (¬(r ⊕ s))
–
Belegung b2 : {p, q, r, s} → {w, f},
– p 7→ f
– r 7→ w
– q 7→ f
– s 7→ w
Im Allgemeinen geben wir nur Belegungen für Variablen an, die auch wirklich im aussagenlogischen Ausdruck vorkommen, dessen Semantik wir bestimmten wollen. Eigentlich müssten wir für jede Aussagenvariable eine Belegung angeben. Da aber die Belegung für nicht vorkommende Variablen kei-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
27
nen Einfluss auf die Semantik eines Ausdrucks hat, lassen wir sie bei der Angabe von Belegungen einfach weg.
Für jede Variable gibt es genau zwei Möglichkeiten, sie zu belegen, nämlich mit
wahr oder falsch, sprich w oder f. Für einen Ausdruck, der n Variablen enthält, gibt
es damit 2n verschiedene Belegungen. Trotzdem hält uns nichts davon ab, für jeden aussagenlogischen Ausdruck eine andere Belegung zu wählen.
In der Praxis …
Wir dürfen für jeden Ausdruck eine eigene Belegung wählen. Ein Beispiel
dafür haben wir bereits gesehen: Eben haben wir q für den ersten Ausdruck
mit w belegt und für den zweiten Ausdruck dann mit f.
Während es also nicht möglich ist, für einen Ausdruck mit Variablen eine Semantik anzugeben, weil wir dazu wissen müssen, ob die Variablen wahr oder falsch
sind, so können wir dies jedoch dann tun, wenn wir eine Belegung gegeben haben.
Natürlich heißt das nicht, dass sich alle diese Semantiken komplett unterscheiden,
wenn wir die Belegung ändern! Die Unterschiede liegen nur an der Stelle, wo die
Belegung zum Tragen kommt, also da wo Variablen auftauchen.
Definition 10 (Semantik von Aussagen) Seien im Folgenden φ und ψ ∈ L Aussagen, und b ∈ B eine Belegung. Dann ist die semantische Abbildung J·Kb : L →
{w, f} wie folgt induktiv definiert:
(a) J⊤Kb = w
(b) J⊥Kb = f
(c) JpKb = b(p)
{
w wenn JφKb = f
(d) J¬φKb =
f wenn JφKb = w
{
w wenn JφKb = w und JψKb = w
(e) Jφ ∧ ψKb =
f ansonsten
{
f wenn JφKb = f und JψKb = f
(f) Jφ ∨ ψKb =
w ansonsten


w wenn JφKb = w und JψKb = f
(g) Jφ ⊕ ψKb = w wenn JφKb = f und JψKb = w


f ansonsten
{
f wenn JφKb = w und JψKb = f
(h) Jφ → ψKb =
w ansonsten


f wenn JφKb = w und JψKb = f
(i) Jφ ↔ ψKb = f wenn JφKb = f und JψKb = w


w ansonsten
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
28
Funktionen wie unsere semantischen Abbildung für aussagenlogische Ausdrücke
heißen im Allgemeinen höherstufig. Genauer gesagt nennt man alle die Funktionen
höherstufig, die mindestens eine Funktion als Argument übergeben bekommen.
Die Funktion J·K bekommt als Argumente eine Belegung b (b ist selbst wieder eine
Funktion von V nach {w, f}) und einen aussagenlogischen Ausdruck φ. Wenn Sie
später mit funktionalen Programmiersprachen wie Standard ML oder Haskell arbeiten, wird Ihnen das Konzept höherstufiger Funktionen erneut begegnen.
Intuition
Wir haben hier wieder ein Beispiel für eine induktive, dem Aufbau der Grammatik folgende Definition. Die Bedeutung von ⊤ und ⊥ können wir direkt,
d.h. ohne Betrachtung weiterer Ausdrücke angeben. Die Auswertung der
Operatoren bezüglich unserer Semantik hängt wieder von ihren Teilausdrücken (ihren Nachfolgern im Strukturbaum) ab.
Beispiel
Betrachten wir folgende Ausdrücke aus der Aussagenmenge. So können wir
nun ihre Semantik angeben:
• J⊤ ∧ ⊥K∅ = f
• J(¬⊥) ∨ ⊤K∅ = w.
• J(⊤ ∨ ⊥) ∧ (⊤ → (⊥ ⊕ ⊥))K∅ = f
∅ bezeichnet hierbei die leere Belegung – in den Ausdrücken kommen keine
Variablen vor, daher müssen wir auch keiner Variablen etwas zuweisen. Warum dabei das Symbol ∅, welches normalerweise die leere Menge bezeichnet,
sinnvoll ist, werden Sie in Kapitel 5 erfahren.
Versuch es selbst! – Aufgabe 11: Unterschiede und Gemeinsamkeiten
Reisen Sie eine Woche in die Vergangenheit zurück, bevor Sie dieses Skript
gelesen haben und erklären Sie sich dort selbst den Unterschied zwischen ⊥
und f bzw. ⊤ und w.
Eigentlich haben wir bereits alles zu aussagenlogischen Ausdrücken gesagt, was
wir in den folgenden Kapiteln brauchen. Aber Achtung! Wir haben bisher noch
keine natürlichsprachliche bzw. intuitive Bedeutung der Operatoren, sowie vielleicht alternative, einfachere Darstellungen geklärt. Dies folgt nun. Obwohl Ihnen
vielleicht vieles klar oder bekannt vorkommt, sollten Sie die folgenden Seiten aufmerksam lesen! Zur Erinnerung an die Semantik der Operatoren präsentieren wir
sie hier nochmals in ein wenig informellerer Schreibweise als sogenannte Wahrheitstafel.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
29
Intuitive Bedeutung der Operatoren
Im Folgenden wollen wir Ihnen einen Überblick über die intuitive Bedeutung der
aussagenlogischen Operatoren geben und eine mögliche Erklärung, warum diese so definiert worden sind, wie wir sie Ihnen vorgestellt haben. Darüber hinaus
werden wir einige wichtige alternative Notationen und Sprechweisen für die Operatoren einführen.
Die Negation (Symbol ¬ )
Wir beginnen mit dem einzigen unären Operator, der Negation.
φ
w
f
¬φ
f
w
Der Negationsoperator ist ein mächtiger Operator. Tatsächlich ist er, zusammen
mit nur einem der Operatoren ∧ oder ∨ ausreichend, um alle anderen Operatoren
nachzubilden. So können wir z.B. ∨ aus ¬ und ∧ wie folgt bauen: φ ∨ ψ kann man
darstellen als ¬(¬φ ∧ ¬ψ). Das heisst, egal welche Belegungen wir für φ und ψ
wählen, die beiden Ausdrücke haben immer den selben Wahrheitswert.
In der Praxis …
Lesen einer Wahrheitstafel:
Um Wahrheitstafeln für Operatoren möglich allgemein zu halten, verwenden wir Aussagen der Form ¬φ oder φ∨ψ und bezeichnen mit φ und ψ wieder
beliebige Ausdrücke der Aussagenlogik. Also sind φ und ψ auch hier Metavariablen.
Metavariable 1
Metavariable 2
…
Metavariable n
Ausdruck mit n Metavariablen
Auf der linken Seite beginnen wir damit, die verwendeten Metavariablen
und darunter alle möglichen Belegungen dieser Metavariablen zu notieren.
Zur Erinnerung: Haben wir n Variablen, so haben wir 2n mögliche Belegungen.
Zählen Sie am besten immer nach, ob Sie wirklich jede Belegung der Variablen notiert haben. Die Belegungen werden wie oben als Zeilen geschrieben.
Auf der rechten Seite oben steht in unserem Fall dann ein Ausdruck der Form
¬φ bzw. φ∨ψ und wir notieren darunter den Wahrheitswert, den dieser Ausdruck für die Belegung in der entsprechenden Zeile annimmt. Zum Beispiel
wird ¬φ falsch, wenn wie in der ersten Zeile der Tabelle die Belegung von φ
der Wert w ist.
Später werden Wahrheitstafeln auch verwenden, um die Semantik konkreter aussagenlogischer Ausdrücke anzugeben, also von Ausdrücken, die tatsächlich auch in unserer Sprache enthalten sind! Statt der Belegung der Metavariablen notieren wir dann links alle möglichen Belegungen der Aussagenvariablen (p, q, …).
Aufstellen von Wahrheitstafeln
(a) Notiere alle vorkommenden Aussagen- bzw. Metavariablen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
30
(b) Schreibe jede Variable in eine eigene Spalte und notiere nun alle möglichen Belegungen dieser Variablen.
(c) Falls der Ausdruck komplexer ist: Zerlege den Ausdruck in einfache
Teilausdrücke und bestimme für jeden Wahrheitswert den Wert des
Teilausdrucks. Zum Beispiel kann man (p ∨ q) ∧ (r → t) in die beiden
Teilausdrücke p ∨ q und r → t zerlegen, von denen man sehr einfach
die Semantik für eine konkrete Belegung angegeben kann.
(d) Bestimme nun die Semantik des gesamten Ausdrucks für jede Belegung.
Die Implikation (Wenn-Dann-Verknüpfung; Symbol: →)
Die Implikation ist einer der Operatoren, die uns am meisten beschäftigen werden, da wir die grundlegende Idee der Implikation auch in den folgenden Kapiteln
immer wieder brauchen werden. Es ist sehr wichtig, dass Sie die Implikation verstehen und verwenden können.
φ
w
w
f
f
ψ
w
f
w
f
φ→ψ
w
f
w
w
Dieser Operator repräsentiert die Grundidee jeglichen logischen Schließens: Eine
Aussage folgt aus einer anderen!, oder mit Aussagenvariablen: ψ folgt aus φ. Hierbei
bezeichnen wir φ als Prämisse oder Voraussetzung bzw. Hypothese und ψ als Folgerung
bzw. Konklusion. Beachten Sie, dass also die Aussage, die gefolgert wird, rechts vom
Operator steht.
Für den mathematisch Ungeübten gibt es hier jedoch die verwirrende Tatsache,
dass obwohl dieser Operator intuitiv so etwas bedeutet wie, wenn φ wahr ist, dann ist
auch ψ wahr, muss zwischen den Aussagen, für die φ und ψ jeweils stehen, keinerlei
sinnvoller Zusammenhang bestehen.
Beispiel
Wenn rot eine Farbe ist, dann ist ein Kreis rund. Diese Aussage ist wahr. Und zwar
nicht deshalb, weil rote Farbe und runde Kreise irgendeinen sinnvollen Zusammenhang hätten, sondern nur deshalb, weil beide Aussagen für sich genommen wahr sind, und deshalb nach unserer Semantik beide Aussagen,
verknüpft mit → wiederum eine wahre Aussage ergeben.
Weshalb um alles in der Welt haben dann die vielen schlauen Logiker der letzten
Jahrhunderte die Bedeutung von → so gewählt? Wir können uns versuchen, dies
wie folgt zu erklären. Normalerweise verwendet man Implikationen als Teil eines
Beweises, und sie repräsentieren sinnvolles Wissen, dass wir über die Welt haben.
Betrachten wir die Tatsache, dass alle Männer kurze Haare haben.*. Diese Tatsache
können wir als eine Implikation verstehen: Wenn ein Mensch ein Mann ist, dann
*Falls Sie daran zweifeln, ist das kein Problem. Tun Sie die nächsten Minuten einfach so als ob.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
31
hat dieser Mensch kurze Haare. Dies ist eine Implikation über zwei Aussageformen (wir können hier für x verschiedene Werte einsetzen und dann erst bestimmen, ob der Satz wahr oder falsch wird, genaueres dazu im folgenden Abschnitt)):
(Mensch x ist Mann) → (Mensch x hat lange Haare). Erinnern Sie sich daran: wir glauben fest an diese Aussage†. Nun nehmen wir einen Mann, nennen wir ihn Christian, und wir wollen beweisen, dass Christian kurze Haare hat.
Wenn wir Christian in die Aussageform einsetzen, erhalten wir die Implikation
Christian
ist
hat
|
{z ein Mann} → Christian
|
{zkurze Haare} .
p
q
Zur leichteren Verständigung nennen wir die beiden Teilaussagen der Implikation
nun p bzw. q. Da wir wissen, dass Christian ein Mann ist, ist p wahr. Da wir auch
an die Implikation glauben, muss also folgen, dass q auch gilt, also hat Christian
kurze Haare. Aber halt! Wir waren hier wieder nur intuitiv, und wir haben über
Implikation gesprochen, als wüssten wir, was sie genau bedeutet. Wir wollen daher nun versuchen zu verstehen, inwiefern dieser logische Schluss, den wir gerade
gezogen haben, in der Semantik von → versteckt ist.
Zuerst wollen wir uns fragen, was es nun eigentlich semantisch bedeutet, dass wir
fest daran glauben, dass die Implikation wahr ist. Nichts anderes als dass gilt
Jp → qK = w!
Wir wissen nun also, dass p wahr ist. Und wir wissen, dass p → q wahr ist. Damit
muss nach unserer Semantik von p → q also auch folgen, dass q wahr ist, denn
andernfalls, wenn JqK = f gelten würde, dann wäre auch Jp → qK = f, was ja ein
Widerspruch wäre zu unserem festen Glauben in diese Implikation!
Wunderbar! Wir haben soeben erklärt, weshalb die ersten beiden Zeilen in der
Wahrheitstafel, die zum Operator → gehört, Sinn ergeben.
Wir versuchen nun, die dritte und vierte Zeile der Wahrheitstafel für uns zu erklären. Dort ist jeweils die Prämisse falsch. In unserem Beispiel bedeutet das, dass
wir nun keinen Mann betrachten, sondern eine Frau. Nennen wir Sie Julia. Wir
glauben immer noch an unsere anfängliche Implikation über männliche Menschen, die kurze Haare haben. Können wir nun irgendetwas über Julias Haare
aussagen? Können wir also ebenfalls schließen, dass sie kurze Haare hat? Oder
können wir vielleicht schließen, dass sie lange Haare hat?
Tatsächlich sagt unsere Implikation aber nichts über Julia aus, da sie kein Mann ist.
Also sollte unsere Semantik der Implikation ebenfalls keine Aussage über Julias
Haare zulassen. Und tatsächlich ist das so! Nehmen wir an, Julia hat tatsächlich
kurze Haare. Dann wird die Konklusion unserer Implikation wahr. Wir befinden
uns damit in Zeile drei der Wahrheitstafel, und wie wir sehen, ist die Semantik
der Implikation dann w. Das bedeutet für uns, dass dies absolut konform ist mit
unserem Glauben in unsere Implikation. Genau das selbe passiert in Zeile vier, im
Falle, das Julia lange Haare hat. Dann ist die Semantik ebenfalls w, und ist damit
konform zu unserem Glauben an unsere Implikation.
Dies bedeutet also insbesondere, dass wir keinerlei Informationen aus einer Implikation ziehen können, wenn ihre Prämisse falsch ist (Julia ist kein Mann!).
†Sie haben Recht, eigentlich ist das keine Aussage, da x ein Platzhalter ist, und wir daher nicht wissen,
ob der Satz wahr oder falsch ist. Ignorieren Sie das bitte einmal kurzzeitig. Ohne Platzhalter werden
die Beispiele fast immer sinnlos klingen. Zur Beruhigung: in Kapitel 2.2 werden wir sehen, wie wir
sowas dann doch zu einer korrekten Aussage hinbiegen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
32
Bemerkung 5. Ein wichtiger Merksatz der Logik ist: Aus Falschem kann man alles Beliebige folgern!
Beispiel
Nehmen wir eine Implikation, deren Prämisse offensichtlich falsch ist, ebenso wie ihre Konklusion: Wenn 1 = 5, dann ist 2 = 10. Wenn wir jedoch mit der
falschen Prämisse anfangen zu arbeiten, dann können wir sogar zeigen, dass
2 = 10 gilt, und zwar wie folgt: 2 = 1 · 2 dies ist nach der Prämisse 5 · 2 und
dies ist bekanntlich 10.
Auch auf diese Art können wir uns erklären, weshalb es sinnvoll ist, Zeile vier der
Wahrheitstafel von → so zu definieren, wie sie definiert ist.
Natürlichsprachlich hat eine Wenn - Dann“ Konstruktion oftmals einen kausa”
len Zusammenhang. Beim mathematischen Wenn - Dann“ ist das nicht zwin”
gend der Fall.
Beispiel
Wenn es regnet, werde ich nass. Natürlichsprachlich verstehen wir den Regen als
Ursache dafür, das wir nass werden. In der Aussagenlogik bedeutet das nicht
weiter als eine der drei Dinge:
• es regnet gerade und ich werde gerade nass (vielleicht weil ich keinen
Schirm habe, vielleicht aber auch, weil mich gerade ein Hund anpinkelt)
• es regnet gerade nicht, und ich werde trotzdem nass (vermutlich weil
mich ein Hund anpinkelt)
• es regnet gerade nicht, und ich werde auch nicht nass (der Hund hat
rechtzeitig eine Laterne gefunden).
Wichtige alternative Sprechweisen für φ → ψ sind
• φ impliziert ψ
• φ ist hinreichend für ψ
• φ ist hinreichende Bedingung für ψ.
• ψ ist notwendig für φ.
• ψ ist notwendige Bedingung für φ.
• wenn φ dann ψ
notwendige
hinreichende
Sie sollten sich unbedingt merken, und auch genau verstehen, in welche Richtung
die Implikation jeweils dabei geht. Eine Übersicht finden Sie in Abbildung 10.
Verwechselungsgefahr besteht dabei oft bei den Ausdrücken notwendige und hinreichende Bedingung. Eine Bedingung φ ist hinreichend für ψ, wenn das Erfülltsein
von φ stets garantiert, dass auch ψ erfüllt ist. Dabei ist φ alleine dafür vollständig
ausreichend, und nichts anderes ist mehr nötig.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
33
φ
impliziert
ψ
nur dann wenn
notwendig
hinreichend
wenn
hinreichende Bedingung
dann
notwendige Bedingung
Abbildung 10: Übersicht über mögliche Bezeichnungen für Implikationen
Beispiel
Ein Streichholz in eine Kerzenflamme zu halten ist hinreichend dafür, dass
das Streichholz sich entflammt.
Für ein und die selbe Bedingung ψ kann es jedoch mehrere hinreichende Bedingungen φ geben.
Beispiel
(a) Ein Streichholz in einen brennenden Hochofen zu werfen ist ebenfalls
hinreichend dafür, dass das Streichholz sich entzündet.
(b) Ein Streichholz an der Reibefläche der Streichholzschachtel zu reiben,
ist nicht hinreichend dafür, dass das Streichholz sich entzündet, denn
oft genug brechen dabei Streichölzer einfach ab, ohne anzugehen. Daher kann dies nicht hinreichend sein.
Notwendige Bedingungen sind solche Bedingungen, die gegeben sein müssen, damit eine andere Bedingung überhaupt eintreten kann. Mit Variablen gesprochen:
wenn q für p notwendig ist, dann muss q gelten, damit p gilt, aber alleine genügt q
nicht. Im Allgemeinen genügen notwendige Bedingungen alleine nicht*.
Beispiel
(a) Um am Herd Wasser zum Kochen zu bringen, ist es notwendig, den Topf
mit Wasser auf den Herd zu stellen, da das Wasser neben dem Herd
garantiert nicht kochen wird. Allerdings genügt es nicht, den Topf auf
den Herd zu stellen, man muss ihn auch einschalten. Den Herd einzuschalten ist ebenfalls notwendig, aber nicht genug. Also ist sowohl
Herd einschalten (ein) als auch den Topf auf den Herd zu stellen (topf )
eine notwendige Bedingung um das Wasser zum Kochen zu bringen
(kochen). Formal können wir das schreiben als
kochen → ein
und
kochen → topf
Beachten Sie, dass die notwendigen Bedingungen auf der rechten Seite
von → stehen!
*Eine Bedingung kann auch gleichzeitig notwendig und hinreichend sein. Dann genügt sie natürlich.
Diesen Sachverhalt schreibt man logisch als Äquivalenz p ↔ q.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
34
Wenn wir den Topf mit dem Wasser sowohl auf den Herd stellen, als
auch den Herd einschalten, dann wird das Wasser sicher zu kochen beginnen (in einer einfachen Welt). Beide Bedingungen zusammen sind
dann auch hinreichend. Wir können dann schreiben
kochen ↔ topf ∧ ein
Das heisst, topf und ein zusammen sind hinreichend und notwendig
für kochen. Ebenso ist kochen hinreichend und notwendig dafür, dass
der Topf auf dem Herd steht und gleichzeitig der Herd eingeschaltet ist.
(b) Das Streichholz an der Reibefläche der Schachtel zu reiben ist übrigens
weder hinreichend noch notwendig. Das Streichholz muss nicht immer angehen, wenn man es dort reibt, daher ist diese Tätigkeit nicht
hinreichend. Sie ist auch nicht notwendig, da man Streichhölzer auch
anzünden kann, ohne sie jemals an der Reibefläche gerieben zu haben,
nämlich z.B. an Kerzenflammen oder Hochöfen.
Für Implikationen haben sich im Laufe der Jahrzehnte weitere wichtige damit zusammenhänge Aussagen ergeben.
Bemerkung 6. Wir bezeichnen die Aussage ψ → φ als die Umkehrung der Aussage φ → ψ, ¬φ → ¬ψ als ihr Inverses und ¬ψ → ¬φ als ihre Kontraposition.
Die Kontraposition hat immer den gleichen Wahrheitswert wie die ursprüngliche
Implikation, in Beweisen kann es hilfreich sein, statt einer Implikation ihre Kontraposition zu beweisen, zum Beispiel wenn man darüber weitere Annahmen zur
Verfügung hat. Dieses Thema werden wir noch weiter in Kapitel 3 vertiefen.
Die Äquivalenz ( Genau - Dann - Wenn“ - Verknüpfung; Symbol: ↔)
”
Die Äquivalenz ist der Implikation sehr ähnlich. Wie wir am Ende des Kapitels
sehen werden ist die Äquivalenz sogar nichts anderes als eine Implikation von φ
nach ψ und eine Implikation von ψ nach φ.
φ
w
w
f
f
ψ
w
f
w
f
φ↔ψ
w
f
f
w
Andere Bezeichnungen für φ ↔ ψ:
• φ gilt dann und nur dann wenn ψ gilt
• φ ist hinreichend und notwendig für ψ
• φ gdw ψ (genau dann wenn)
• φ iff ψ (if and only if)
Beispiel
Sei p: 1 < 0 “ und q: Das Saarland liegt am Meer.“ Die Aussage p ↔ q ,
”
”
sprich 1 < 0 gilt genau dann, wenn das Saarland am Meer liegt. Sie ist also
”
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
35
logisch richtig, da das Saarland nicht am Meer liegt, und auch 1 < 0 nicht
gilt.
Bemerkung 7. (a) Wir sehen hier sehr schön, dass es nicht immer hilfreich ist,
nach dem Sinn solcher Aussagen zu fragen. Schon gleich nicht, wenn wir diese Aussage aussprechen und etwas sagen wie, “Dass das Saarland am Meer
liegt ist notwendig und hinreichend dafür, dass 1 < 0”.
Dass 1 < 0 gilt oder nicht gilt, hat in der echten Welt rein gar nichts damit zu tun, wo das Saarland liegt. Umgekehrt genauso wenig. Dennoch sind
beide Aussagen logisch äquivalent, da beide den selben Wahrheitswert haben. Als Nicht-Mathematiker hat man mit solchen logischen Verknüpfungen (häufig) das Problem, dass man annimmt, die logisch äquivalenten Aussagen müssten irgendeinen inhaltlichen oder kausalen Zusammenhang haben. Dass aus 1 < 0 logisch folgt, dass das Saarland am Meer liegt, scheint
keinen Sinn zu ergeben. Einfach deshalb, weil wir dann versuchen in 1 < 0
einen Grund dafür zu sehen, das vielleicht halb Europa überflutet wurde,
und daher Frankreich plötzlich zu Meer wurde. Aber offensichtlich gibt es
keinen Zusammenhang zwischen 1 < 0 und dem Anstieg des Meeresspiegels*
(b) Wenn Aussagenlogik so sinnlos ist, warum betreiben wir sie dann? Zum einen, weil die Aussagen ja durchaus Sinn ergeben können. Wir müssen die
Aussagen nur passend wählen. Zum anderen liegt in der Tatsache, dass die
Aussagenlogik auch dann funktioniert, wenn die Aussagen, mit denen wir
hantieren, scheinbar keinen Sinn ergeben, ihre große Stärke. Oft wissen wir
gar nicht von vorne herein, ob irgendwelche Aussagen in einem aussagenlogischen Ausdruck zusammen Sinn ergeben. Und doch können wir mit Ihnen
arbeiten, sie umformen. Solange bis wir sie auf eine Form gebracht haben, so
dass wir plötzlich wieder einen neuen Zusammenhang, einen neuen Sinn, in
ihnen entdecken. Genau das ist es, was wir in der Mathematik immer wieder tun!
Wir haben nun die Semantik aller aussagenlogischen Ausdrücke formal definiert.
Jeder Ausdruck, sprich jede Aussage, steht semantisch gesehen dabei entweder für
wahr w oder für falsch f. Da wir nun wissen, was Aussagen bedeuten, ist es relativ
einfach sich zu überlegen, dass zwei Aussagen semantisch, also von ihrer Bedeutung her, gleich sind, wenn sie beide wahr oder beide falsch sind.
Definition 11 (Logische Gleichheit ≡) Zwei Aussagen φ und ψ aus L sind genau dann logisch gleich, geschrieben, φ ≡ ψ, wenn für alle Belegungen b ∈ B gilt,
dass JφKb = JψKb .
logisch gleich
Mit Hilfe der logischen Gleichheit, die wir gleich noch näher betrachten wollen,
können wir drei besondere Arten von aussagenlogischen Ausdrücken definieren.
Definition 12 (Erfüllbar, Tautologie und Kontradiktion)
(a)
(b) Eine Aussage heißt erfüllbar, wenn es eine Belegung b ∈ B gibt, so dass JφKb =
w.
*Zumindest schien bisher die globale Erwärmung die plausibelste Ursache. Vielleicht werden wir
aber irgendwann entdecken, dass dies alles tatsächlich nur an 1 < 0 liegt.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
erfüllbar
2 Logik
allgemeingültig
unerfüllbar
36
(c) Eine Aussage φ heißt allgemeingültig, tautologisch bzw. Tautologie, genau dann,
wenn φ ≡ ⊤, das heisst, φ für alle Belegungen wahr ist.
(d) Ein Aussage heißt unerfüllbar, kontradiktorisch bzw. Kontradiktion, wenn φ ≡ ⊥.
In Abbildung 11 finden Sie eine Übersicht über den Zusammenhang zwischen Tautologien, Kontradiktionen und erfüllbaren Aussagen.
erfüllbare Aussagen
Negation
⊤
p ∧ ¬p
Tautologien
Kontradiktionen
p ∨ ¬p
Negation
⊥
p∨q
Abbildung 11: Zusammenhang zwischen erfüllbaren, unerfüllbaren Aussagen
und Tautologien
Sie sollten sich die folgenden drei Dinge merken:
(a) Jede Tautologie ist auch eine erfüllbare Aussage, da wenn die Formel unter
jeder Belegung zu wahr auswertet, dann gibt es auch eine Belegung unter der
sie zu wahr auswertet. Wir können einfach eine mögliche aussuchen!
(b) Die Negation einer Kontradiktion ist eine Tautologie da wenn die Formel unter keiner Belegung zu wahr auswertet, so gibt die Definition der Semantikabbildung vor, dass die negierte Abbildung unter jeder Belegung wahr wird.
(c) Die Negation einer Tautologie ist eine Kontradiktion. Die Argumentation
hierfür ist analog, also sehr ähnlich zu der Argumentation, dass die Negation einer Kontradiktion eine Tautologie ist. Versuchen Sie es selbst!
Versuch es selbst! – Aufgabe 12: Spezielle aussagenlogischen Ausdrücke
Bevor Sie das Beispiel betrachten: Versuchen Sie einmal selbst Aussagen aufzustellen, die erfüllbar, allgemeingültig oder unerfüllbar sind.
Geben Sie auch mehrere Ausdrücke an, die zueinander logisch äquivalent
sind.
Beispiel
Hier ein paar Beispiele für erfüllbare, tautologische und kontradiktorische
Ausdrücke:
(a) ¬(¬p) ist erfüllbar.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
37
p
f
w
¬p
w
f
¬(¬p)
f
w
Wir sehen, dass p und ¬(¬p) logisch äquivalent sind.
(b) p ∧ (q ∧ r) ist erfüllbar, und zwar nur falls die p, q und r jeweils mit w
belegt werden. Hier ist das Aufstellen einer Wahrheitstabelle sehr aufwendig, deshalb haben wir folgende Überlegung gemacht: ∧ wird nur
dann wahr, wenn beide Teilaussagen – hier p und q ∧ r – wahr werden.
Damit wissen wir schon, dass p wahr werden muss. Für q ∧ r gehen
wir genauso vor und erhalten somit, dass q und r auch wahr werden
müssen.
Dieser Ausdruck ist zum Beispiel auch logisch äquivalent zu (p ∧ q) ∧ r
mit einer sehr ähnlichen Argumentation!
(c) ⊥ ist die einfachste Kontradiktion, und ⊤ die einfachste Tautologie.
(d) p ∧ ¬p ist eine Kontradiktion, da p wahr werden muss, damit ∧ wahr
wird, dann aber gleichzeitig ¬p falsch wird.
(e) p ∨ ¬p ist eine Tautologie.
p
f
w
¬p
w
f
p ∨ (¬p)
w
w
(f) p ∧ q → p ist eine Tautologie. Wir begründen wieder informell: Wenn p
falsch ist, ist die Prämisse der Implikation (p ∧ q) falsch, also die Implikation wahr. Ist p wahr, so sind wir auch fertig, weil eine Implikation
mit wahrer Konklusion immer wahr ist.
In der Praxis …
Wie bestimmt man, ob ein Ausdruck eine Tautologie, erfüllbar oder eine Kontradiktion ist? Bei noch wenigen Aussagenvariablen kann man alle möglichen Belegungen ausprobieren. Bei einer Aussagenvariable muss man zwei,
bei zwei schon vier, im Allgemeinen bei n schon 2n Belegungen betrachten.
Wie kann man nun bei größeren Ausdrücken vorgehen? Man betrachtet zum
Beispiel, ob es Aussagen gibt, die immer falsch werden, man geht also wieder
rekursiv in die Teilausdrücke.
Mit der Zeit (und Übung) entwickelt man ein Gefühl dafür, ob Ausdrücke erfüllbar (und auch für welche Belegung) oder unerfüllbar sind. Diese Intuition für (meistens) kurze Ausdrücke hilft dann, immer größere Ausdrücke zu
betrachten.
Es gibt einige sehr bekannte Äquivalenzen von aussagenlogischen Ausdrücken, die wir im folgenden Abschnitt betrachten werden. Auch diese können
uns helfen, da sie uns häufig erlauben, kompliziertere Ausdrücke zu vereinfachen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
38
2.1.4 Gesetze der Aussagenlogik
Für die Aussagenlogik hat sich eine Menge von wichtigen logischen Äquivalenzen
entwickelt, die immer wieder in mathematischen Beweisen und Schlussfolgerungen verwendet werden. Um sie eindeutig bezeichnen zu können, haben sich feste
Namen für die einzelnen Äquivalenzen herausgebildet. Diese wollen wir Ihnen in
diesem Abschnitt angeben.
Satz 1 (Gesetze der Aussagenlogik) Seien φ, ψ und χ (gelesen “chi”) Ausdrücke
im Aussagenkalkül. Dann gelten folgende Regeln bzw. Gesetze:
Tertium non datur
• φ ∨ ¬φ ≡ ⊤
• φ ∧ ¬φ ≡ ⊥
Identität:
• φ∧⊤≡φ
• φ∨⊥≡φ
Dominanz:
• φ∨⊤≡⊤
• φ∧⊥≡⊥
Idempotenz:
• φ∧φ≡φ
• φ∨φ≡φ
Assoziativität:
• φ ∧ (ψ ∧ χ) ≡ (φ ∧ ψ) ∧ χ
• φ ∨ (ψ ∨ χ) ≡ (φ ∨ ψ) ∨ χ
Damit auch:(φ ∧ ψ) ∧ χ ≡ φ ∧ ψ ∧ χ bzw. (φ ∨ ψ) ∨ χ ≡ φ ∨ ψ ∨ χ *.
Kommutativität:
• φ∨ψ ≡ψ∨φ
• φ∧ψ ≡ψ∧φ
• φ↔ψ≡ψ↔φ
Distributivität:
• φ ∧ (ψ ∨ χ) ≡ (φ ∧ ψ) ∨ (φ ∧ χ)
• φ ∨ (ψ ∧ χ) ≡ (φ ∨ ψ) ∧ (φ ∨ χ)
• φ → (ψ ∧ χ) ≡ (φ → ψ) ∧ (φ → χ)
• φ → (ψ ∨ χ) ≡ (φ → ψ) ∨ (φ → χ)
*∧ und ∨ Klammern implizit links. So kommen wir auf die Äquivalenz (φ ∨ ψ) ∨ χ ≡ φ ∨ ψ ∨ χ und
analog für ∧.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
39
Negation:
• ¬(φ ∧ ψ) ≡ ¬φ ∨ ¬ψ (Gesetz von de Morgan)
• ¬(φ ∨ ψ) ≡ ¬φ ∧ ¬ψ (Gesetz von de Morgan)
• ¬(¬φ) ≡ φ (Doppelte Negation)
Definierbarkeit:
• ¬φ ≡ φ → ⊥
• φ ∧ ψ ≡ ¬(¬φ ∨ ¬ψ)
• φ ∨ ψ ≡ ¬(¬φ ∧ ¬ψ)
• φ ⊕ ψ ≡ (φ ∨ ψ) ∧ ¬(φ ∧ ψ)
• φ → ψ ≡ ¬φ ∨ ψ ≡ ¬ψ → ¬φ
• φ ↔ ψ ≡ (φ → ψ) ∧ (ψ → φ)
Alle diese Regeln lassen sich Beweisen, zum einen durch Wahrheitstabellen oder,
teils schneller und kürzer, durch Herleiten aus bereits bekannten (d.h. bewiesenen
Regeln) beweisen. Wir können nun leicht neue Regeln herleiten.
Die Gesetze der Aussagenlogik können dazu angewendet werden, komplexe aussagenlogische Ausdrücke zu vereinfachen bzw. aus bekannten Formeln (und damit bekanntem Wissen) neue Formeln (und damit neues Wissen) zu generieren.
Im folgenden Beispiel zeigen wir Ihnen, wie man typischerweise Veinfachungen
von Formeln mithilfe aussagenlogischer Gesetze notiert.
Beispiel
a: Es gilt: ¬(φ → ψ) ≡ φ ∧ ¬ψ
Beweis.
¬(φ → ψ)
Def inierbarkeit
¬(¬φ ∨ ψ)
DeM organ
¬(¬φ) ∧ ¬ψ
N egation
φ ∧ ¬ψ
≡
≡
≡
b: Es gilt auch: ¬(φ ↔ ψ) ≡ (φ ∧ ¬ψ) ∨ (¬φ ∧ ψ)
Beweis.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
40
¬(φ ↔ ψ)
Def inierbarkeit
¬((φ → ψ) ∧ (ψ → φ))
DeM organ
¬(φ → ψ) ∨ ¬(ψ → φ)
Def inierbarkeit
¬(¬φ ∨ ψ) ∨ (¬ψ ∨ φ)
DeM organ
(φ ∧ ¬ψ) ∨ (ψ ∧ ¬φ)
Kommutativitt
(φ ∧ ¬ψ) ∨ (¬φ ∧ ψ)
≡
≡
≡
≡
≡
In der Praxis …
Wenn wir Beweise schreiben (vor allem, wenn sie von anderen Menschen
gelesen werden sollen, wie z.B. in Klausuren), dann müssen wir jeden Umformungsschritt durch Angabe des verwendeten Gesetz begründen. Gleichzeitig hilft es uns, die Korrektheit der Beweise zu überprüfen.
Allgemein gilt: Seien Sie in Beweisen so ausführlich und mathematisch präzise
wie möglich.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Aussagenlogik,
die Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen. Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Aussagenlogik zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige
im Kapitel gelernt und verstanden haben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
41
2.2 Prädikatenlogik
Im letzten Abschnitt haben wir Aussagen als Sätze kennengelernt, bei denen wir
eindeutig entscheiden konnten, ob sie wahr oder falsch sind. Diese konnten wir
durch Operatoren zu neuen komplexeren Aussagen verknüpfen. Obwohl wir damit bereits interessante Zusammenhänge zwischen Aussagen kennengelernt haben, wie z.B. was es bedeutet, wenn eine Aussage logisch aus einer anderen folgt,
waren die Aussagen selbst immer komplett unabhängig voneinander. Wir konnten z.B. sagen “Um die Uni herum stehen viele Bäume und Christian ist ein Mann.”,
oder auch “Dass um die Uni herum viele Bäume stehen impliziert, dass Christian
ein Mann ist.” Diese Aussagen sind beide wahr, jedoch kommt ihre Sinnhaftigkeit
sehr nahe an manche Schlagzeilen einer großen Zeitung mit vielen bunten Bildern
heran. Das Problem, dass die Aussagen sinnlos erscheinen, liegt darin begründet,
dass die beiden Teilaussagen inhaltlich keinerlei Zusammenhang besitzen, und
jede der beiden durch eine beliebige andere wahre Aussage ersetzt werden kann,
ohne am Wahrheitsgehalt der Aussagen etwas zu ändern.
Dabei ist es in unserem täglichen Sprachgebraucht und auch in der Mathematik
wichtig, Dinge mit ihren Eigenschaften in Beziehung zu setzen. Zum Beispiel wollen
wir die Aussage “Alle Studierenden, die in Saarbrücken Informatik studieren, hören Programmierung 1” auch prädikatenlogisch ausdrücken können. “Dinge” sind
hier die Studierenden und wir wollen sie mit der Eigenschaft “studiert Informatik
in Saarbrücken” und “hört Programmierung 1” in Verbindung setzen. Ein anderes, mathematisches Beispiel, was Sie vielleicht noch aus der Schule kennen, ist
der Satz “Alle Funktionen mit ungeradem Grad haben mindestens eine Nullstelle”. Hier sind Funktionen Dinge und sie werden mit den Eigenschaften “hat eine
Nullstelle” und “hat ungeraden Grad” in Verbindung gesetzt.
Diese beiden Sätze weisen noch einen weiteren Unterschied zu unseren bisherigen
Aussagen auf: Wir machen in beiden Fällen keine Aussage über ein einziges, ganz
konkretes “Ding”, sondern über alle diese Dinge. Auch dies ist typisch für die Mathematik – oft sind wir nicht daran interessiert, zum Beispiel welche Eigenschaften die Funktion f (x) = 2 · x3 − 4 · x hat, sondern was generelle Eigenschaften
Funktionen dritten Grades sind.
Das zweite Beispiel enthält noch eine dritte Besonderheit, die wir mit der Aussagenlogik nicht wiedergeben können: Wir machen eine Aussage über die Existenz
von Dingen – es soll mindestens eine Nullstelle geben. Auch die Tatsache, dass es bestimmte Dinge gibt, ist in der Mathematik immer wieder wichtig; aus der Schule
werden Ihnen vielleicht noch Kurvendiskussionen in Erinnerung sein, die sich in
großen Teilen mit der Existenz von Nullstellen, Hochpunkten, Tiefpunkten und
Wendepunkten beschäftigt.
Das heißt, eine sinnvolle Erweiterung der Aussagenlogik soll drei Anforderungen
erfüllen: Es soll möglich sein, …
(a) …Dinge und Eigenschaften miteinander zu verbinden, insbesondere soll es
möglich sein, Dinge mit ihren Eigenschaften in Beziehung zu setzen.
(b) …Aussagen über alle Dinge einer bestimmten Menge von Dingen zu treffen.
(c) …Aussagen über die Existenz eines speziellen Dings in einer bestimmten
Menge von Dingen zu treffen.
Mit der Prädikatenlogik lernen wir eine Erweiterung der Aussagenlogik kennen, die
genau diese drei Anforderungen erfüllt. Tatsächlich ist die Prädikatenlogik eine
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
42
sehr mächtige Logik. Alles, was wir jemals innerhalb der Mathematik aussagen
wollen, können wir in ihr aufschreiben. Diese Mächtigkeit hat aber auch ernsthafte Konsequenzen. Konnten wir z.B. bei der Aussagenlogik noch ein automatisches
Verfahren suchen, dass uns erlaubt, festzustellen, ob eine Formel prinzipiell erfüllbar ist, oder nicht – nämlich durch Ausprobieren aller möglichen Belegungen
–, ist dies jetzt im Allgemeinen nicht mehr möglich.
Dies liegt unter anderem daran, dass ihre elementaren Bestandteile nun keine
Aussagen mehr sind, sondern etwas viel Allgemeineres, so genannte Aussageformen. Aussageformen kann man sich vorstellen als Sätze mit Loch. Bevor die Aussageformen formal definieren, werden wir ein kleines Beispiel betrachten.
Beispiel
Betrachten wir zunächst einmal den Satz x > 0“. Solange wir über x nichts
”
Genaueres wissen bzw. x näher spezifiziert haben, können wir nicht entscheiden, ob der Satz wahr oder falsch ist. Somit ist der Satz nach unserer
Definition auch keine Aussage. Ersetzen wir x jedoch durch eine Zahl, wird
der Satz zu einer Aussage und wir können ihm einen Wahrheitswert zuweisen. Setzen wir für x zum Beispiel den Wert 1 ein, so erhalten wir eine wahre
Aussage 1 > 0 “, die wir bereits im letzten Abschnitt kennengelernt haben.
”
−3
Für x = −3
2 erhalten wir aber die falsche Aussage ” 2 > 0“.
Universum
Sätze, wie wir sie im letzten Beispiel gesehen haben, werden in der Mathematik
sehr häufig verwendet. Sie stellen die Eigenschaften, die wir oben diskutiert haben,
syntaktisch dar. Um klarzustellen, für welche Dinge Aussageformen Eigenschaften
darstellen, ist jede Aussageform über einer Menge von Dingen – genannt Universum – definiert, welche angibt, was für Dinge man einsetzen darf. Achtung: Das Universum enthält immer mindestes ein Ding, was man einsetzen kann, es ist also nie
leer.
Definition 13 (Aussageform) Sei U eine Menge. Eine Aussageform über dem Universum U ist ein Satz, der durch Einsetzen eines Elements aus dem Universum zur
Aussage wird.
In unserem Beispiel kann man als Universum alle Menge von Zahlen wählen, auf
denen die Ordnung mit < bzw. > sinnvoll definiert ist, also z.B. die Menge der
natürlichen, ganzen, rationalen oder rellen Zahlen. Man beachte dabei, dass wir
keine Aussage erhalten, wenn wir statt dessen die Menge aller Menschen als Universum wählen, da dann der Satz Christian > 0 überhaupt keinen Sinn ergibt,
und wir ihm damit nicht eindeutig einen Wahrheitswert zuordnen können.
Achtung: Die Formulierung “eines Elements” in obiger Definition ist nicht ganz wörtlich zu verstehen*. Eine Aussageform kann mehrere Löcher haben und in jedes
Loch kann ein Ding aus einer anderen Menge eingesetzt werden.
Beispiel
(a) Nun betrachten wir den Satz “x wohnt in y”. Dieser Satz ist eine Aussageform mit zwei Löchern. Für x können wir Personen und für y Orte
*Den Grund dafür erfahren Sie in Kapitel 4.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
43
einsetzen. Das Universum für diese Aussagemenge ist die Menge aller
geordneten Paare (x, y), so dass x eine Person und y ein Ort ist. Wenn
Personen die Menge aller Personen und Orte die Menge aller Orte ist, so
schreibt man für das Universum U auch Personen × Orte. Genaueres dazu in Kapitel 4!
(b) Möchten wir von einer beliebigen Menge an Städten wissen, ob
sie im Saarland liegen oder nicht, so können wir dies mit Hilfe einer Aussageform tun. Sei so zum Beispiel unser Universum
U = {Saarbücken, Hanoi} und die dazugehörige Aussageform
L(s) := Die Stadt s liegt im Saarland.
2.2.1 Syntax
In diesem Abschnitt betrachten wir die Syntax der Prädikatenlogik. Das Vorgehen
ist dabei genau das gleiche wie im Abschnitt über Aussagenlogik: Wir definieren
zunächst mithilfe der Backus-Naur-Form eine formale Sprache, die alle gültigen
prädikatenlogischen Ausdrücke definiert. Danach werden wir die Semantik prädikatenlogischer Ausdrücke zunächst intuitiv, dann formal betrachten.
Definition 14 (Menge aller prädikatenlogischen Ausdrücke) Die Menge aller prädikatenlogischen Ausdrücke P ist gegeben durch folgende Grammatik:
P ∋ φ, ψ ::=⊤ | ⊥ | P (x1 , . . . , xn ) | ∀x : φ | ∃x : φ |
¬φ | φ ∧ ψ | φ ∨ ψ | φ ⊕ ψ | φ → ψ | ψ ↔ φ
Dabei gilt: x1 , . . . , xn ∈ IVar. IVar ist die Menge der Individuenvariablen, sie dienen uns als Platzhalter für Löcher in Aussageformen.
Wenn Sie die Definition der prädikatenlogischen und der aussagenlogischen Ausdrücke vergleichen, wird Ihnen auffallen, dass die Aussagenvariablen p der Aussagenlogik nun verschwunden sind. Stattdessen finden wir unter anderem die neue
Phrase P (x1 , . . . , xn ) vor. Dies ist die sogenannte Aussagenform. Sie besteht aus
zwei Teilen, der Aussageform P , und den Individuenvariablen x1 bis xn . Individuenvariablen repräsentieren die Werte, die für die Löcher in Aussageformen eingesetzt
werden sollen. Da eine Aussageform beliebig viele Löcher besitzen kann, deuten
wir durch die Punktschreibweise an, dass prinzipiell auch beliebig viele Werte in
eine Aussageform eingesetzt werden können.
Die anderen beiden neuen Phrasen, die in der Definition prädikatenlogischer Ausdrücke vorkommen, sind ∀x : φ und ∃x : φ. Diese erlauben uns intuitiv, Dinge aus
einem Universum herauszunehmen und zu sagen, dass diese Eigenschaften ausgedrückt durch Aussageformen erfüllen sollen.
(a) Eine bestimmte Eigenschaft wird von allen Objekten des Universums erfüllt.
(∀)
(b) Eine bestimmte Eigenschaft wird von mindestens einem Objekten des Universums erfüllt. (∃)
Was das formal genau bedeutet, betrachten wir im Abschnitt Semantik.
Im Folgenden werden wir zunächst intuitiv mit All- und Existenzquantoren und
ihrer natürlichsprachlichen Bedeutung bzw. Übersetzung arbeiten, bevor wir die
Semantik prädikatenlogischer Ausdrücke erneut formal definieren.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
44
2.2.2 All- und Existenzquantoren – intuitiv
Im Folgenden werden wir einige Beispiele in ansteigendem Schwierigkeitsgrad geben. Schwierigkeiten im Umgang mit Existenz- und Allquantifizierung ergeben
sich häufig im Kontext mehrerer verschieden quantifizierter Variablen, wie wir
im Laufe dieses Abschnitts sehen werden.
Beispiel
Sagen wir zum Beispiel, alle Hunde sind vierbeinig, so muss jeder Hund auf
der ganzen Welt vier Beine haben, damit unsere Aussage wahr wird, behaupten wir jedoch lediglich, dass es Hunde gibt, die vierbeinig sind, so müssen
wir nur einen einzigen finden, damit unsere Aussage wahr wird.
Allquantor,Existenzquantor
In der Prädiktenlogik stellt sich dieser Sachverhalt nun wie folgt dar: Sei P (x)
ein Prädikat über dem Universum U, dann bezeichnet ∀x ∈ U : P (x) die Aussage, dass für alle Objekte v ∈ U die Aussage P (v) wahr wird. Weiter bezeichnet
∃x ∈ U : P (x) die Aussage, dass mindestens ein Objekt v ∈ U existiert, so dass
P (v) eine wahre Aussage ist. Das Symbol ∀ nennt man Allquantor und ∃ nennt man
Existenzquantor*.
Wir bezeichnen beliebige Aussageform häufig mit P , Q und R. Dabei sind dies Variablen für eine konkrete Aussageform, welches wir im Moment nicht kennen (siehe Abbildung 12).
P(s)
s ∈ {1, 2, 3}
s > 10
s ≥ 42
s ist ein Mann.
s ist volljährig.
s ≤ 10
s · 7 = 12
s ist eine Frau.
s=7
Abbildung 12: Aussageformen, die sich hinter einer Variable verbergen können
Beispiel
Betrachten wir einmal Abbildung 13. Wir sehen dort vier verschiedene Mengen von Strichmännchen. Strichmännchen unterscheiden sich hier nur in
einem Merkmal: ihrer Farbe, sie können entweder rot oder blau sein.
(a) Die Strichmännchen in der linken, oberen Ecke erfüllen zum Beispiel
die Aussagen “Alle Strichmännchen sind rot.” und “Es gibt einen rotes
Strichmännchen.”
*Zudem bezeichnet ∃!x ∈ U : P (x) die Aussage, dass genau ein x im Universum U gibt, so dass P (x)
wahr ist. Diese Aussage ist falsch, wenn kein oder mehr als ein Element in U gibt, so dass P (x) wahr
wird.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
45
(b) Die Strichmänchen in der rechten oberen Ecke sind nicht mehr alle
rot (es gibt auch blaue!). Trotzdem ist die Aussage “Es gibt einen rotes Strichmännchen.” wahr. Genauso wahr ist die Aussage “Nicht alle
Strichmännchen sind rot.” Außerdem gilt die Aussage “Es gibt genau
ein rotes Strichmännchen.”
(c) Auch in der linken unteren Ecke gelten die beiden Aussagen “Es gibt ein
rotes Strichmännchen.” und “Nicht alle Strichmännchen sind rot.” Es
gibt also verschiedene Möglichkeiten, wie unser Universum aufgebaut
ist, so dass All- bzw. Existensquantoraussagen wahr werden. Analog
zu oben gilt auch die Aussage “Es gibt genau ein blaues Strichmännchen.”
(d) In der unteren Ecke haben wir nur noch blaue Strichmännchen, d.h. die
Aussagen “Alle Strichmännchen sind blau.” bzw. “Alle Strichmännchen
sind nicht rot.” sind wahr.
Wir haben in den Beispielen die Aussageform “x ist blau” bzw. “x ist rot” verwendet. Das Universum für die Beispiele ist jeweils die Menge von Strichmännchen, die gezeichnet wurden.
Abbildung 13: Mengen von Strichmännchen
Versuch es selbst! – Aufgabe 13: Prädikatenlogik im Vorkurs
Versuchen Sie sinnvolle Sätze über die Vorkursteilnehmer mit Hilfe der Prädikatenlogik zu bilden.
Oft wollen wir aber eine Aussageform nicht nur in Abhängigkeit einer einzigen
Variable betrachten, da die Wahrheit einer Aussage, wie das nächste Beispiel zeigt,
von mehr als einem Faktor abhängt. In diesem Fall definieren wir mehrstellige Aussageform.
Beispiel
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
mehrstellige Aussageform
2 Logik
46
Betrachten wir die Aussageform Q(x, y) := x liebt y, wobei x und y aus der
Menge der Menschen stammt. Dann haben wir als Universum eine Menge
von geordneten Paaren (x, y) mit den eben genannten Mengen zur Belegung.
Wenn wir mehrstellige Prädikate haben, dann ist es sehr wichtig genau darauf
zu achten, in welcher Reihenfolge über die Parameter des Prädikats quantifiziert
wird. Vertauscht man nämlich die Reihenfolge von Existenz- und Allquantoren,
ergibt sich meist eine komplett andere Aussage!
Beispiel
Sei erneut Q(x, y) := x liebt y.
(a) ∀x∀y : Q(x, y). Diese Aussage ist noch sehr einfach zu verstehen. Alle
Menschen lieben alle anderen Menschen (übrigens einschließlich sich
selbst). Daran ändert sich auch nichts, wenn wir die Quantoren, oder
die Variablen vertauschen. Die Aussage bleibt genau die gleiche, wenn
wir schreiben ∀y∀x : Q(x, y) (siehe Abbildung 14).
(b) ∃x∃y : Q(x, y). Auch hier ändert die Vertauschung von Variablen oder
Quantoren nichts. Diese Aussage bedeutet, dass es auf der Welt einen
Menschen gibt, der jemanden liebt. Damit diese Aussage wahr wird,
genügt es auch jemanden zu finden, der sich selbst liebt (siehe Abbildung 17).
(c) ∀x∃y : Q(x, y). Diese Aussage bedeutet, dass jeder Mensch (mindestens) einen Menschen kennt, den er liebt. Es kann also sein, dass ich
mich selbst liebe, mein Nachbar seine Frau, die Frau meines Nachbarn
wiederum mich. Dann wäre diese Aussage auf dem Universum der
Menschen {ich, Nachbar, Frau des Nachbarn} wahr, wenn auch nicht
unbedingt zwischenmenschlich ganz problemlos.
(d) ∃x∀y : Q(x, y). Sobald wir die Quantoren tauschen, ändert sich die
Aussage komplett. Sie besagt nun, dass wir einen Menschen auf der
Welt finden können, der alle Menschen auf der Welt liebt! Wir sehen,
wie drastisch sich so ein Quantorentausch auswirkt: Von trivialen Erkenntnissen klassischer Liebeslieder à la “Everybody loves somebody”
(∀x∃y), die durch das liebevolle Zusammenleben aller Menschen ebenso zur wahren Aussage wird, wie durch komplizierte Dreieckbeziehungen und jeden Menschen befallenden Narzissmus, gelangen wir zu
Aussagen, die die Existenz ganz besonderer Menschen fordert, die alle
Menschen lieben, so wie wir sie vielleicht in Persönlichkeiten wie Jesus
kennen (∃x∀y) (siehe Abbildung 16).
(e) ∀y∃x : Q(x, y). Im Verhältnis zu Beispiel 3 haben wir nun nicht die
Quantorenreihenfolge getauscht, sondern die Reihenfolge der Variablen, die die Quantoren binden. Diese Aussage sagt nun, dass jeder
Mensch von einem (nicht notwendigerweise anderen) Menschen geliebt wird. Das ist eine komplett neue Aussage, die wir bisher noch
nicht hatten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
47
(f) ∃y∀x : Q(x, y). Nun haben wir die Variablen aus Beispiel 4 getauscht,
und erhalten wiederum eine Aussage, die zu allen anderen Aussagen
verschieden ist. Sie sagt, dass es einen Menschen gibt, den alle anderen Menschen klasse finden. Wenn wir das Universum für x aus der
Menge der kleinen Teenie-Mädchen wählen, und y weiterhin beliebig
lassen, dann könnte diese Person vielleicht Justin Biber sein (siehe Abbildung 15).
Versuch es selbst! – Aufgabe 14: Pfeilbilder
Zeichnen Sie die beiden fehlenden Pfeilbilder auf!
x
y
liebt
A
A
B
B
C
C
D
D
E
E
F
F
Universum
Universum
Abbildung 14: Alle lieben alle!
x
liebt
y
A
A
B
B
C
C
D
D
E
E
F
F
Universum
Universum
Abbildung 15: Alle lieben einen!
Wir sehen also, dass wir ganz genau hinschauen müssen, was solche Aussagen bedeuten. Jede Vertauschung von Quantoren oder Variablen führt zu neuen Bedeutungen der Aussage. Die Situation wird natürlich nicht leichter, wenn wir Aussageformen mit drei, vier oder noch mehr Individuenvariablen betrachten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
48
x
liebt
y
A
A
B
B
C
C
D
D
E
E
F
F
Universum
Universum
Abbildung 16: Einer liebt alle!
x
liebt
y
A
A
B
B
C
C
D
D
E
E
F
F
Universum
Universum
Abbildung 17: Einer liebt einen!
Versuch es selbst! – Aufgabe 15: Dreistellige Aussageformen
Betrachten Sie die folgende Aussageform:
P (x, y, z) :=”x fährt mit y nach z”,
wobei x ein Mensch, y ein Transportmittel und z ein Ort ist. Wir werden im
Beispiel x immer als Variable für einen Menschen, y als Variable für ein Transportmittel und z als Variable für einen Ort benutzen.
(a) Wie viele syntaktisch verschiedene Möglichkeiten gibt es, prädikatenlogische Ausdrücke zu bilden, die über alle Variablen quantifizieren
(wie zum Beispiel ∀x : ∀y : ∀z : P (x, y, z) oder ∀y : ∃z : ∀x : P (x, y, z)?
Notieren Sie mindestens fünf Stück!
(b) Bilden Sie möglichst natürlichsprachliche Sätze aus Ihren Beispielen
(z.B. “Alle fahren mit allen Transportmitteln überall hin.”).
(c) Wie viele Ausdrücke, die semantisch verschieden sind, haben Sie gebildet?
2.2.3 Semantik
Die Semantik der Prädikatenlogik bleibt bei den uns bereits aus der Aussagenlogik bekannten Operatoren (∧, ∨, . . . ) und Konstanten (⊤, ⊥) gleich. Wir werden im
Folgenden sehen, dass eine vollständig formale Definition der Semantik prädika-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
49
tenlogischer Formeln nicht so einfach ist, wie bei der Aussagenlogik. Dennoch ist
es möglich, eine formale Semantik zu definieren.
Bisher haben wir noch nicht darüber diskutiert, wie wir den Wahrheitswert von
Aussageformen fassen, wenn konkrete Werte eingesetzt worden sind – also wenn
aus der Aussageform durch Einsetzen von Werten aus dem Universum eine Aussage geworden ist. Wir verwenden dazu Prädikate.
Definition 15 (Prädikat) Ein Prädikat P (zu der Aussageform P ) ist eine Funktion der Form U × · · · × U → {w, f} von der Grundmenge U in die Menge der
Wahrheitswerte {w, f}.
Zu jeder Aussageform definieren wir ein gleichnamiges Prädikat, welches angibt, ob
die Aussage, die durch Einsetzen eines Wertes aus dem Universum in die Aussageform entsteht, wahr oder falsch wird. Im Folgenden bezeichnen wir die Menge aller Prädikate mit P. Intuitiv ist ein Prädikat also eine Funktion, die es uns erlaubt
für eine Aussageform “nachzuschlagen”, ob ein gegebener Wert die Aussageform
in eine wahre oder in eine falsche Aussage überführt.
Wie wir im vorhergehenden Beispiel gesehen haben, kann es in unserer Grundmenge Elemente geben, mit denen eine Aussageform in eine wahre bzw. in eine
falsche Aussage verwandelt wird. Daher zerlegt ein Prädikat P unser Universum
U in zwei Teilmengen Uw und Uf , nämlich Uw die Menge der Elemente von U, die
eine wahre Aussage liefern, wenn wir sie in das Prädikat P einsetzen, und Uf , für
die eine falsche Aussage entsteht. Die Mengen Uw und Uf haben kein gemeinsames
Element.
Rückblick Bei der Definition von Aussageform haben wir als Beispiel “x wohnt
in y” betrachtet und gesagt, dass das Universum für diese Aussagemenge die Menge aller geordneten Paare (x, y) ist, so dass x eine Person und y ein Ort ist. Wenn
wir für solche Aussageformen bzw. die dazugehörigen Prädikate Uf bzw. Uw bilden, so enthalten diese beiden Mengen jeweils die geordneten Paare, für die das
Prädikat wahr bzw. falsch wird.
Beispiel
(a) Für das zuvor in Beispiel 2.2 definierte Prädikat L ist Uf = {Hanoi} und
Uw = {Saarbrücken}.
(b) Betrachten wir als Universum U die Menge an Teilnehmern des Vorkurses. Dann können wir als Prädikat P zum Beispiel definieren
P (x) : Teilnehmer x stammt aus dem Saarland.
Nun ist x unsere Aussagenvariable, die wir mit Teilnehmern des Vorkurses belegen können. Mit Hilfe des Prädikats lässt sich die Gruppe
der Vorkursteilnehmer, also unser Universum, in zwei Mengen einteilen: die Menge aller Teilnehmer, die laut Saarländern nicht das Glück
haben, aus dem Saarland zu stammen, und die Menge aller Saarländer. Die erste Menge ist dabei Uf , da das Prädikat durch Einsetzen eines
Teilnehmers aus dieser Menge falsch wird. Somit ist die andere Men-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
50
ge Uw , da die Aussageform durch Belegen von x mit einem Teilnehmer
aus dem Saarland wahr wird.
Unsere Semantik muss also jedem Symbol P , das Teil einer Aussageform
P (x1 , . . . , xn ) ist, eine Funktion zuordnen. So wie unsere Semantik der Aussagenform mit den Belegungen der Aussagenvariablen parametrisiert wurde, so kann
man sagen, dass die Semantik der Prädikatenlogik damit parametrisiert ist, welche Funktion von U × · · · U → {w, f} wir einem Aussageformsymbol zuweisen sollen. Anders als Aussagenvariablen bei der Aussagenlogik sind Prädikate in prädikatenlogischen Formeln nicht als Variablen gedacht, sondern als Konstanten, die
für eine ganz bestimmte Funktion stehen sollen. Daher schreiben wir Aussageformen meistens nicht als P (x), sondern viel konkreter, z.B. direkt als x > 0, wenn
wir mit P die Funktion
{
w für x > 0
P (x) =
f sonst
meinen.
Aussageformen selbst sind noch keine Aussagen. Erst wenn wir alle in einer Aussageform vorkommenden Individuenvariablen durch einen Quantor bedacht haben,
wird daraus eine Aussage.
Bemerkung 8. Betrachten wir den Ausdruck ∀y : P (x). Da die im Prädikat vorkommende Variable x eine ganz andere ist, als die Variable y, die im Quantor vorkommt, wird über x selbst gar nicht quantifiziert. Es handelt sich hierbei also um
keine Aussage, sondern wiederum nur um eine Aussageform. Semantisch wäre
diese Aussageform übrigens äquivalent zu P (x) selbst.
Sowohl ∀x : P (x) als auch ∃x : P (x) sind wiederum Aussagen.
Wir wollen nun definieren, wann genau ein Ausdruck eine Aussage ist.
Zuerst müssen wir noch einige Begrifflichkeiten klären. Wir unterscheiden zwischen
• einer Variablen
• ihrem Namen
• ihrem definierenden Auftreten (es gibt maximal eines davon!) und
• ihren benutzenden Auftreten (davon kann es mehrere geben).
definierende
benutzend
Was eine Variable genau ist, das ist nicht so einfach zu definieren, und wie so oft,
muss dieses Objekt des Geistes unbeschrieben bleiben. Jedoch haben wir bisher
alle unsere eigene Vorstellung davon entwickelt, was eine Variable ist. Wir wollen
diese Vorstellung einfach weiterhin benutzen, und dabei vorsichtig sein, dass unsere Vorstellung sich nicht zu sehr von den Vorstellungen anderer Mathematiker
entfernt.
Was wir jedoch genauer beschreiben können, ist der Name einer Variablen. So ist
z.B. x der Name einer Variablen. Wenn wir z.B. schreiben ∃x : P (x), dann sehen
wir den Namen x zwei Mal. Dieser Name steht jedes Mal für ein und die selbe Variable. Wir nennen das Auftreten eines Variablennamens direkt hinter einem Quantor das definierende Auftreten der Variable. Die Teilausdrücke ∀x : bzw. ∃x : führen
also Variablen ein. Innerhalb eines Prädikates nennen wir die Auftreten einer Variablen (genauer: ihres Namens) dann benutzend.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
51
Eine Variable kann nur einmal definiert werden, jedoch häufiger benutzt, z.B. im
Ausdruck ∀x : Q(x, x), gibt es ein definierendes Auftreten, jedoch zwei benutzende.
Weshalb wir zwischen Variablen und ihren Namen unterscheiden wird klarer,
wenn wir uns vergegenwärtigen, dass die Aussage ∀x : P (x) und die Aussage
∀y : P (y) genau die selbe Aussage ist. Wir haben dabei nur den Namen der Variable vertauscht, jedoch nicht die Variable selbst.
In Abbildung 18 sehen Sie eine Übersicht über die verschiedenen Begriffe für Variablen. Wir haben hier die abstrakte Variable in der gedanklichen Ebene als rotes
Fünfeck dargestellt. Aufschreiben können wir den Ausdruck, wenn wir die Variable bezeichnen. Die Variable “Fünfeck” wird mithilfe des Allquantors an den Namen “x” bzw. “y” gebunden (daher verwendet man neben “definierendes Auftreten” auch den Begriff “bindendes Auftreten”), innerhalb der Aussageform P wird
die Variable x stellvertretend für die Variable “Fünfeck” verwendet (daher benutzendes Auftreten).
∀
Gedankliche Ebene
:
P
(
)
Variable wird bezeichnet
∀
x
:
P
(
x
)
∀
y
:
P
(
y
)
Aufschreibbare Ebene
gebunden an
definierendes Auftreten
benutzendes Auftreten
Abbildung 18: Übersicht über verschiedene Begriffe für Variablen
Beispiel
(a) Die Aussagen ∀x∃y : Q(x, y) und ∀y∃x : Q(y, x) sind äquivalent.
Nur die Variablennamen wurden getauscht, jedoch nicht die Variablen
selbst. Die Aussagen ∀x∃y : Q(x, y) und ∀x∃y : Q(y, x) sind jedoch
nicht äquivalent. Hier haben wir die Variablen (mit Hilfe ihrer Namen)
innerhalb des Prädikats vertauscht!
(b) Betrachten wir den Ausdruck (∀x : P (x)) ∧ (∀x : Q(x)). In diesem
Ausdruck treten zwei verschiedene Variablen auf, die jedoch denselben
Namen besitzen. Da dies manchmal verwirrend ist, taufen wir Variablen dann auch gerne konsistent um, ohne die Bedeutung der Aussage zu verändern. Eine Möglichkeit dies hier zu tun wäre der Ausdruck
(∀x : P (x))∧(∀y : Q(y)). Man nennt dies auch den bereinigten Ausdruck
zu unserem ursprünglichen Ausdruck.
Benutzende Variablenauftreten, zu denen es ein definierendes Auftreten gibt,
nennt man gebundene Auftreten. Ein benutzendes Auftreten ist immer an maximal
einen Quantor gebunden. Ist ein benutzendes Auftreten nicht gebunden, so nennt
man es ungebunden.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
52
Definition 16 (Bindungen) Wir definieren nun rekursiv, wann ein benutzendes
Auftreten einer Variable an welchen Quantor gebunden ist.
ungebunden
• Die benutzenden Auftreten aller Individuenvariablen in einer Aussagenform P (x1 , . . . , xn ) sind ungebunden.
• Im Ausdruck ∀x : φ werden alle ungebundenen benutzenden Auftreten der
Variable x im Ausdruck φ an ∀x : gebunden.
• Im Ausdruck ∃x : φ werden alle ungebundenen benutzenden Auftreten der
Variable x im Ausdruck φ an ∃x : gebunden.
• Im Ausdruck ¬φ sind genau die benutzenden Auftreten von Variablen gebunden bzw. ungebunden, die auch in φ gebunden bzw. ungebunden sind.
• Im Ausdruck φ ∧ ψ sind genau die benutzenden Auftreten von Variablen gebunden bzw. ungebunden, die auch in φ und ψ gebunden bzw. ungebunden
sind.
• Entsprechend für alle weiteren Operatoren.
Wir sagen eine Variable x ist gebunden, wenn alle ihre benutzenden Auftreten gebunden sind*.
Beispiel
Seien P (x) und Q(x, y) zwei beliebige Aussageformen. Betrachten wir P (x)∧
∀y : Q(x, y). Die Variable y ist an den Quantor ∀y gebunden. Die benutzenden Auftreten von x sind beide ungebunden. Im Ausdruck ∀x : (P (x) ∧ ∀y :
Q(x, y)) sind beide Auftreten von x an den Quantor ∀x gebunden.
Man beachte, dass im Ausdruck (∀x : P (x)) ∧ (∀x∀y : Q(x, y)) der Variablenname x für zwei verschiedene Variablen steht. Beide Variablen sind jedoch
gebunden. An dieser Stelle wäre es jedoch klug, den Ausdruck zu bereinigen,
und z.B. (∀x : P (x)) ∧ (∀z∀y : Q(z, y)) zu schreiben. Dann ist klar was gemeint ist, wenn wir z.B. sagen, die Variablen x und y und z sind alle gebunden.
In der vorhergehenden Bemerkung haben wir gesehen, dass eine Aussageform
nicht quantifiziert sein kann, obwohl ein Quantor davor steht. Aber nicht nur,
wenn die Variablen sich unterscheiden, kann eine Aussageform nicht vollständig
quantifiziert sein. Betrachten wir hierzu doch einmal das folgende Beispiel:
Beispiel
Im Satz (∀x : P (x)) ∧ (∀y : Q(x, y)) ist x im zweiten Teil des Ausdrucks
nicht quantifiziert, und daher nicht gebunden. Auch hier müssen wir vorsichtig sein. Das ungebundene x bezeichnet nicht die selbe Variable wie das
x im ersten Teil des Ausdrucks. Bereinigt sieht der Ausdruck z.B. so aus:
(∀z : P (z)) ∧ (∀y : Q(x, y))
*man mache sich klar, dass diese alle an ein und den selben Quantor gebunden sein müssen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
53
Definition 17 (Gültigkeitsbereich oder Skopus (engl. Scope)) Den Teil eines
prädikatenlogischen Ausdrucks, auf den sich ein Quantor bezieht, nennt man seinen Gültigkeitsbereich (engl. Scope). Es ist der längst mögliche sinnvolle Ausdruck
nach dem Doppelpunkt.
Machen wir einen kurzen Rückblick zur Syntax: Wie schon in der Aussagenlogik,
liefert auch hier die Grammatik eigentlich Strukturbäume. Auch hier dienen Sie
dazu, die teilweise sehr komplizierten Strukturen von Ausdrücken graphisch zu
veranschaulichen.
Beispiel
Seien P und Q beliebige Aussageformen. Betrachten wir zunächst ein paar
prädikatenlogische Ausdrücke und ihre Strukturbäume:
(a) ∀x : P (x):
∀x
P (x)
(b) ∀x : P (x) ∧ ∃y : Q(x, y):
∀x
∧
P (x)
∃y
Q(x, y)
Wie man am zweiten Beispiel erkennen kann, spielt hier der Skopus der Quantoren eine wichtige Rolle. Vor dem Zeichnen von Strukturbäumen ist es daher
sinnvoll zunächst vollständig zu klammern, dazu aber später mehr.
Es ist wichtig, dass alles, was unter einem Quantor im Baum steht, auf jeden Fall
zusammengehört. Wir wollen dies in eindimensionalen Ausdrücken wieder durch
Klammern darstellen.
Die Strukturbäume prädikatenlogischer Ausdrücke werden uns nun eine große
Hilfe sein, die Bindungen korrekt zu bestimmen.
In der Praxis …
Nun haben wir alles “Handwerkszeug” zusammen, um zu erklären, wie man
vorgehen kann, um die Bindungen zu bestimmen. Wir betrachten dies an
dem Beispiel
∃x : P (x) → ∀y : P (y) ∧ Q(x, y) ∨ Q(y, y)
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Gültigkeitsbereich
2 Logik
54
(a) Zuächst bestimmen wir den jeweiligen Gültigkeitsbereich der verschiedenen Quantoren und setzen entsprechende Klammern:
(∃x : P (x) → (∀y : P (y) ∧ Q(x, y) ∨ Q(y, y)))
(b) Dann klammern wir den Ausdruck nach den aussagenlogischen Klammersparregeln vollständig:
(∃x : P (x) → (∀y : (P (y) ∧ Q(x, y)) ∨ Q(y, y)))
(c) Nun können wir den Strukturbaum aufstellen:
∃x
→
∀y
P (x)
∨
∧
Q(y, y)
P (y)
Q(x, y)
(d) Um nun das definierende Auftreten zu einem benutzenden zu bestimmen, betrachten wir das benutzende Auftreten im Baum und laufen
von dort aus soweit an den Kanten entlang hoch bis wir auf ein definierendes Auftreten mit dem gleichen Namen stoßen. Dazu ein Beispiel:
Wir wollen nun das definierende Auftreten von x in Q(x, y) herausfinden. Die einzelnen Schritte stellen wir dabei im Folgenden markiert
dar.
∃x
∃x
→
→
∀y
P (x)
∀y
P (x)
∨
∧
P (y)
∨
∧
Q(y, y)
Q(x, y)
Wir gehen dann eine
Kante hoch und befinden uns am ∧.
P (y)
Q(y, y)
Q(x, y)
und so weiter…
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
55
∃x
∃x
∃x
∃x
→
→
→
→
∀y
P (x)
∀y
P (x)
∨
∧
P (y)
∀y
P (x)
∨
∧
Q(y, y)
Q(x, y)
P (y)
∀y
P (x)
∨
Q(y, y)
Q(x, y)
P (y)
∧
∨
∧
Q(y, y)
Q(x, y)
P (y)
Q(y, y)
Q(x, y)
Nun haben wir das passende definierende Auftreten gefunden!
Beispiel
(a) Im Satz ∀x ∈ N : ∃y ∈ N : x + y = 10, ist der Gültigkeitsbereich des
Allquantors das Prädikat ∃y ∈ N : x + y = 10, der Gültigkeitsbereich
des Existenzquantors das Prädikat x + y = 10.
(b) Im Satz (∀x ∈ N : x > 0)∧(x < 10) ist der Gültigkeitsbereich von ∀ das
Prädikat x > 0. Wir erkennen dies daran, dass der Ausdruck x > 0) ∧
(x < 10) kein gültiger Ausdruck mehr ist (falsche Klammerstruktur).
Der längste gültige Ausdruck nach dem Doppelpunkt ist also x > 0.
Der gesamte Ausdruck ist damit nur eine Aussageform, da die Variable
x in x < 10 ungebunden ist.
(c) Im Satz ∀x ∈ N : x ≤ 0 ∧ ∃y ∈ N : y < 10 ist der Gültigkeitsbereich des
Allquantors der gesamte Teilausdruck x ≤ 0 ∧ ∃y ∈ N : y < 10 nach
dem Doppelpunkt.
(d) Im Satz ∀x ∈ N : x ≤ 0 ∧ (∃x ∈ N : x < 10) ∧ x = 0 tritt die Variable
x, die durch den ∀-Quantor definiert wird, zweimal auf. Da der Skopus
dieses Quantors wiederum den gesamten Ausdruck nach dem Doppelpunkt umfasst, bindet dieser auch beide Auftreten. Der Skopus des ∃Quantors ist lediglich x < 10. Bereinigt sieht der Ausdruck wie folgt
aus ∀x ∈ N : x ≤ 0 ∧ (∃y ∈ N : y < 10) ∧ x = 0.
Bevor wir die formale Semantik für prädikatenlogische Ausdrücke definieren
können, gilt es noch eine Hürde zu nehmen. Wir müssen uns überlegen, was es
formal bedeutet, eine Aussagenvariable durch einen konkreten Wert aus dem Universum U zu ersetzen. Denn erst dann können wir sagen, was es bedeutet, das eine
Aussage für alle Werte aus dem Universum wahr ist, oder es einen Wert aus dem
Universum gibt, sodass eine Aussage wahr wird.
Das Ersetzen einer Variable durch einen Wert stellen wir als eine Funktion dar.
Das besondere an dieser Funktion ist, dass wir sie post-fix notieren. Das bedeutet,
wir schreiben die Funktion hinter den Ausdruck, auf den wir sie anwenden wollen!
An stelle wie in der Schule f (x) für eine Funktion f zu schreiben, sagen wir nun
x f . Das ist für Funktionsnamen wie f ungewöhnlich, und auch nicht besonders
hübsch. Für unsere Funktion ist dies jedoch sehr üblich und gar nicht so häßlich,
wie wir gleich sehen werden.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
post-fix
2 Logik
56
Definition 18 (Ersetzung) Sei v ∈ U beliebig. Wollen wir in in einem Ausdruck
φ ∈ P eine Individuenvariable x durch v ersetzen, so schreiben wir (φ)[x := v].
Sei P eine beliebige Aussageform und x1 bis xn für ein n ∈ N Individuenvariablen
oder Werte aus dem Universum U. Wir gehen dabei wie folgt vor:
(a) (P (x1 , . . . , xi , x, xi+1 , . . . , xn ))[x := v] = P (x1 , . . . , xi , v, xi+1 , . . . , xn ), wobei 1 ≥ i ≥ n.
(b) (P (x1 , . . . , xn ))[x := v] = P (x1 , . . . , xn ), wobei 1 ≥ i ≥ n und xi ̸= x für
alle i.
(c) (⊤)[x := v] = ⊤
(d) (⊥)[x := v] = ⊥
(e) (φ ∧ ψ)[x := v] = (φ)[x := v] ∧ (ψ)[x := v]
(f) (φ ∨ ψ)[x := v] = (φ)[x := v] ∨ (ψ)[x := v]
(g) (φ ⊕ ψ)[x := v] = (φ)[x := v] ⊕ (ψ)[x := v]
(h) (φ → ψ)[x := v] = (φ)[x := v] → (ψ)[x := v]
(i) (φ ↔ ψ)[x := v] = (φ)[x := v] ↔ (ψ)[x := v]
(j) (∀x : φ)[x := v] = ∀x : φ
(k) (∀z : φ)[x := v] = ∀z : (φ)[x := v], wobei z eine Individuenvariable ist.
(l) (∃x : φ)[x := v] = ∃x : φ
(m) (∃z : φ)[x := v] = ∃z : (φ)[x := v], wobei z eine Individuenvariable ist.
Das besondere an der Ersetzungsfunktion ist, dass wir nur Variablen ersetzten,
die noch nicht durch einen Quantor gebunden sind; selbst, wenn die Variable den
selben Namen hat! Falls ein Quantor eine Variable bindet, die den selben Namen
hat, wie die Variable, die wir ersetzen wollen, so ersetzen wir einfach nichts (Zeilen (j) und (l)). Ansonsten arbeiten wir einfach rekursiv weiter.
Noch ein wichtiger Hinweis: Im Fall (a) wird jedes Auftreten der Variable ersetzt,
also gilt zum Beispiel
(P (x, x))[x := 6] = P (6, 6).
Dazu nun ein Beispiel:
Beispiel
Wir betrachten die folgenden Ausdrücke. Wir wollen jeweils die Individuenvariable x durch einen beliebigen Wert v aus dem Universum ersetzen. Seien
P und Q dazu beliebige Prädikate.
• (∀x : P (x))[x := v] = ∀x : P (x)
• (∀y : P (x, y))[x := v] = ∀y : P (v, y)
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
57
• Ein etwas kompliziertes Beispiel:
((∃x : P (x, y)) ∧ (∀y : Q(x, y)))[x := v]
= ((∃x : P (x, y))[x := v]) ∧ ((∀y : Q(x, y))[x := v])
= (∃x : P (x, y)) ∧ (∀y : (Q(x, y))[x := v])
= (∃x : P (x, y)) ∧ (∀y : Q(v, y))
Hier nochmal zwei wichtige Beobachtungen:
(a) Wir dürfen keine Individuenvariablen ersetzen, die durch einen Quantor gebunden sind.
(b) Versuchen wir mehrfach die gleiche Individuenvariable zu ersetzen, so
wirkt nur die erste Ersetzung, da danach die Individuenvariable nicht mehr
frei im Ausdruck auftritt. Es gilt also ((φ)[x := v])[x := v ′ ] = (φ)[x := v].
Um eine sinnvolle Semantik prädikatenlogischer Ausdrücke anzugeben, müssen
wir mehr Ausdrücke zulassen als bisher. Mithilfe der bisherigen Syntax können
wir keine Werte aus dem Universum in Aussageformen bzw. ihre semantische Entsprechung Prädikate einsetzen. Damit könnten wir keine Semantik für Aussageformen angeben. Da wir dies aber wollen, müssen die Syntax neu definieren.
Definition 19 (Erweiterte Syntax) Die Menge aller prädikatenlogischen Aussagen P ′ ist gegeben durch folgende Grammatik:
P ′ ∋ φ, ψ ::=⊤ | ⊥ | P (x1 , . . . , xn ) | ∀x : φ | ∃x : φ |
¬φ | φ ∧ ψ | φ ∨ ψ | φ ⊕ ψ | φ → ψ | ψ ↔ φ
Dabei gilt: x1 , . . . , xn ∈ U ∪ IVar
Im Gegensatz zur Semantik von aussagenlogischen Ausdrücken, ist die Semantik
prädikatenlogischer Ausdrücke eine partielle Funktion, d.h. es gibt Ausdrücke, die
keine Semantik haben.
Seien im Folgenden φ und ψ ∈ P ′ und P ein Prädikat. Dann ist die semantische
Funktion J·K : P ′ → {f, w} wie folgt induktiv definiert:
(a) J⊤K = w
(b) J⊥K = f
(c) JP (x1 , . . . , xn )K = P (x1 , . . . , xn ) wenn x1 , . . . , xn ∈ U für ein n ∈ N
{
w wenn JφK = f
(d) J¬φK =
f wenn JφK = w
{
w wenn JφK = w und JψK = w
(e) Jφ ∧ ψK =
f ansonsten
{
f wenn JφK = f und JψK = f
(f) Jφ ∨ ψK =
w ansonsten


w wenn JφK = w und JψK = f
(g) Jφ ⊕ ψK = w wenn JφK = f und JψK = w


f ansonsten
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
58
{
(h) Jφ → ψK =
f wenn JφK = w und JψK = f
w ansonsten


f wenn JφK = w und JψK = f
(i) Jφ ↔ ψK = f wenn JφK = f und JψK = w


w ansonsten
{
w
(j) J∀x : φK =
f
wenn für alle v ∈ U gilt: J(φ)[x := v]K = w
ansonsten
{
w
(k) J∃x : φK =
f
wenn es ein v ∈ U gibt so dass: J(φ)[x := v]K = w
ansonsten
2.2.4 Logische Gleichheit von prädikatenlogischen
Ausdrücken
Wir haben gelernt, dass zwei aussagenlogischen Ausdrücke äquivalent sind, wenn
sie für alle Belegungen der Aussagenvariablen innerhalb des Ausdruckes die gleichen Wahrheitswerte annehmen. So ähnlich können wir auch die Gleichheit von
Prädikaten definieren:
Definition 20 (Logische Gleichheit von Prädikaten) Die beiden Prädikate
P (x) und Q(x) über dem Universum U sind logisch äquivalent, wenn die Mengen
Uw für beide Prädikate übereinstimmen bzw. wenn der Satz ∀x ∈ U : P (x) ↔ Q(x)
eine Tautologie ist.
Versuch es selbst! – Aufgabe 16: Logische Gleichheit mehrstelliger Prädikate
Definieren Sie logische Gleichheit für mehrstellige Prädikate.
Zwei logisch gleiche Prädikate sind zum Beispiel P (x) := x ist Primzahl und
Q(x) := x hat genau zwei Teiler über der Menge der natürlichen Zahlen.
Wir können die Definition logischer Gleichheit auf zwei prädikatenlogische Ausdrücke φ und ψ erweitern, indem wir fordern, dass φ und ψ den gleichen Wahrheitswert haben, wenn …
• …Prädikate, die sowohl in φ als auch in ψ vorkommen, über dem gleichen
Universum definiert sind.
• …Prädikate, die nur in φ oder in ψ definiert sind, über irgendeinem Universum definiert sind.
Sind zwei prädikatenlogische Ausdrücke logisch gleich, so schreiben wir φ ≡ ψ.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
59
Notation
(a) ∀x1 : ∀x2 : · · · ∀xn : . . . schreibt man oft als ∀x1 , x2 , . . . , xn : . . . . Entsprechend für Folgen von ∃.
Achtung: Bei ∀x∃y darf man natürlich nicht ∀x, y schreiben.
(b) Der Doppelpunkt nach definierenden Variablenauftreten kann weggelassen
werden.
(c) Wir haben bei vielen Beispielen das Universum einer Variable weiter eingeschränkt, indem wir z.B. ∀x ∈ N : x > 0 geschrieben haben. Diese
Schreibweise ist semantisch ableitbar, und kann wie folgt geschrieben werden ∀x : x ∈ N → x > 0. Der Ausdruck x ∈ N ist nicht weiter als ein Prädikat
über x. Die Schreibweise mit x ∈ N vor dem Doppelpunkt macht jedoch viele
Aussagen leichter lesbar.
Man beachte folgende Regel:
• ∀Q(x) : P (x) ≡ ∀x : Q(x) → P (x)
• ∃Q(x) : P (x) ≡ ∃x : Q(x) ∧ P (x)
In der Tat schreibt man manchmal auch komplexere Prädikate noch vor den
Doppelpunkt. So schreibt man z.B.
∀x ∈ N, x > 1 : ∃y ∈ N, y ̸= x : y|x,
um zu sagen, dass alle natürlichen Zahlen x, die echt größer als 1 sind, durch
ein natürliche Zahl geteilt werden, die ungleich sie selbst ist. Dabei trennt
man die Prädikate, die x und y genauer bestimmen und vor dem Doppelpunkt stehen, oft durch Kommas. Wir können diesen Ausdruck formal umschreiben zu
∀x : x ∈ N → (x > 1 → (∃y : y ∈ N ∧ y ̸= x ∧ y|x)).
Wir sehen, dass die erste, weniger formale Schreibweise hier deutlich einfacher zu lesen ist. Dennoch müssen wir in der Lage sein, beide Schreibweisen
zu verstehen, und ohne Nachdenken ineinander umschreiben zu können.
Wichtige Gesetze
Quantoren über endlichen Universen Haben wir ein Prädikat P über dem
Universum U, das mit einem Allquantor quantifiziert wird, also ∀x ∈ U : P (x),
so können wir die Aussage auch mit Hilfe von ∧-Aussagen schreiben, indem wir
für jedes Element v ∈ U direkt P (v) bilden und die so entstehenden Aussagen
verunden. Ist z.B. U = {1, 2, 3}, dann gilt:
(∀x ∈ U : P (x)) ≡ (P (1) ∧ P (2) ∧ P (3))
Wir schreiben für solchen schematischen Verundungen auch abkürzend
∧
P (x) := (P (1) ∧ P (2) ∧ P (3))
x∈U
Für beliebige endliche Mengen U gilt also ∀x ∈ U : P (x) ≡
∧
P (x).
x∈U
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
60
Entsprechend gilt
∃x ∈ U : P (x) ≡
∨
P (x).
x∈U
Ist U eine Menge mit unendlich vielen Mengen, dann ist diese Äquivalenz nicht
mehr gültig, da wir mit unserer Logik nur endliche Verundungen aufschreiben
können. Wir können uns aber die Quantoren ∀ und ∃ selbst als eine Möglichkeit
vorstellen, unendliche Verundungen und Veroderungen aufzuschreiben.
Negation
Es gilt
¬∀x : P (x) ≡ ∃x : ¬P (x)
und
¬∃x : P (x) ≡ ∀x : ¬P (x)
Um diese Äquivalenzen besser zu verstehen, rufen wir uns nochmals die aussagenlogischen Gesetze von De Morgan in Erinnerung:
Seien dazu p und q Wahrheitswerte:
• ¬(p ∧ q) ≡ ¬p ∨ ¬q
• ¬(p ∨ q) ≡ ¬p ∧ ¬q
Verwenden wir die eben eingeführte alternative Schreibweise für die Quantoren,
so können wir mit Hilfe der Gesetze von De Morgan beispielsweise sehen, dass
sich bei der Negierung eines Allquantors alle ∧-Zeichen
∧ zu ∨-Zeichen verkehren
und
die
einzelnen
Aussagen
negiert
werden,
aus
¬
x ∈ U : P (x) wird also
∨
:
¬P
(x),
und
damit
gilt
¬(p
∧
q)
≡
¬p
∨
¬q.
Man
beachte, dass dies nur
x∈U
bei endlichen Universen vollkommen richtig ist, bei unendlichen Universen aber
immerhin noch eine wunderbare und richtige Intuition.
Haben wir Aussagen, die mehr als einen Quantor enthalten und negiert werden,
so verkehren sich alle Quantoren und die Negation wird bis zum eigentlichen Prädikat durchgeschleußt.
Beispiel
Betrachten wir doch einmal die folgende Aussageform (“x” ist nicht an einen
Quantor gebunden):
(∀ϵ > 0 : ∃N ∈ N : ∀n ≤ N : |x − xn | < ϵ)
Wir können sie in mehreren Schritten wie folgt negieren:
¬ (∀ϵ > 0 : ∃N ∈ N : ∀n ≤ N :
|x − xn |
< ϵ)
≡ ∃ϵ > 0 : ¬(∃N ∈ N : ∀n ≤ N : |x − xn |
< ϵ)
≡ ∃ϵ > 0 : ∀N ∈ N : ¬(∀n ≤ N : |x − xn |
< ϵ)
≡ ∃ϵ > 0 : ∀N ∈ N : ∃n ≤ N :
¬(|x − xn | < ϵ)
≡ ∃ϵ > 0 : ∀N ∈ N : ∃n ≤ N :
|x − xn |
≥ϵ
Sie fragen sich nun vielleicht, warum es im obigen Beispiel sowohl ∀ϵ > 0 vor
der Negation als auch ∃ϵ > 0 nach der Negation und NICHT ∃ϵ ≤ 0 heißt. Leider
müssen wir Sie an dieser Stelle auf Kapitel 4 vertrösten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
61
Wichtige Implikationsgesetze
Für ein Universum U und die Prädikate A(x), B(x), P (x, y) gelten folgende logischen Implikationen:
(a) (∀x ∈ U : A(x)) → (∃x ∈ U : A(x))
(b) (∃x ∈ U : A(x) ∧ B(x)) → (∃x ∈ U : A(x)) ∧ (∃x ∈ U : B(x))
(c) (∀x ∈ U : A(x)) ∨ (∀x ∈ U : B(x)) → ∀x ∈ U : A(x) ∨ B(x)
(d) (∀x ∈ U : A(x) → B(x)) → (∀x ∈ U : A(x)) → (∀x ∈ U : B(x))
(e) (∃x ∈ U : ∀y ∈ U : P (x, y)) → ∀y ∈ U : ∃x ∈ U : P (x, y)
Bei diesen Implikationen lohnt es sich klar zu machen, weshalb die Implikation in
die andere Richtung im Allgemeinen nicht richtig ist.
Beispiel
Nehmen wir an, es gelte, analog zur ersten Implikation auch: (∃x ∈ U :
A(x)) → ∀x ∈ U : A(x). Dann würde zum Beispiel aus der Tatsache, dass
es einen Saarländer im Universum gibt, folgen, dass alle Menschen Saarländer sind. Saarländer mögen hier jetzt einwenden, dass das doch das Beste
wäre, was demnach passieren könnte, doch wir möchten festhalten, dass die
Aussage falsch ist.
Versuch es selbst! – Aufgabe 17: Implikationsgesetze
Finden Sie für jede der obigen Implikation ein Beispiel, das zeigt, das die Umkehrung der Implikation nicht allgemeingültig ist.
Suchen Sie nun Spezialfälle, also konkrete Beispiele, bei denen doch beide
Richtungen der Implikation gelten.
Wichtige Gleichheiten
Nachdem wir nun einige Implikationen gesehen haben, die wir nicht umkehren
dürfen, kommen wir zum Abschluss der Prädikatenlogik noch zu einigen Gleichheiten.
(a) ∃x ∈ U : ∃y ∈ U : P (x, y) ≡ ∃y ∈ U : ∃x ∈ U : P (x, y)
(b) ∀x ∈ U : ∀y ∈ N : y ∈ U : P (x, y) ≡ ∀y ∈ U : ∀x ∈ U : P (x, y)
(c) ∃x ∈ U : (A(x) ∨ B(x)) ≡ (∃x ∈ U : A(x)) ∨ ∃x ∈ U : B(x))
(d) ∀x ∈ U : (A(x) ∧ B(x)) ≡ (∀x ∈ U : A(x)) ∧ (∀x ∈ U : B(x))
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
2 Logik
62
Versuch es selbst! – Aufgabe 18: Logische Gleichheit
Warum gelten die Gleichheiten 3 und 4? Überlegen Sie sich mit Hilfe der Gesetze der Aussagenlogik und der Möglichkeit Quantoren über endlichen Universen umzuschreiben, einen Beweis für die Äquivalenzen 3 und 4 über endlichen Universen.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Prädikatenlogik, die Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die
Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort
angegebenen. Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum
Kapitel Prädikatenlogik zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie
alles Wichtige im Kapitel gelernt und verstanden haben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
3 Schließen und Beweisen
Aussagen zu beweisen ist das tägliche Brot des Mathematikers, aber auch vieler
(theoretischer) Informatiker. Beweisen ist eine Kunst. Um Behauptungen zu beweisen, braucht es einer gehörigen Portion Kreativität und einer guten Intuition über
mathematische Dinge. Beweisen heißt gleichzeitig auch, Dinge verstehen, denn nur
wer einen Satz selbst beweisen kann, hat ihn wirklich verstanden. Wenn wir also erfolgreiche Informatiker werden wollen, dann sollten wir so früh wie möglich
anfangen, Beweise für uns zu entdecken, als einen Begleiter durch die Welt der Informatik und Mathematik, der uns hilft, auf dem richtigen Pfad zu bleiben, und
die Dinge richtig zu verstehen, und nicht nur vage Vorstellungen davon zu entwickeln, die leider viel zu oft auch falsch sind.
Doch Beweisen ist nicht nur Kreativität. Es ist vor allem auch ein Handwerk. So
wie ein Schmied in früherer Zeit nur dann ein mächtiges Schwert schaffen konnte, wenn er den sicheren Umgang mit Feuer, Hammer und Amboss beherrschte, so
kann auch nur derjenige einen korrekten, und damit vertrauenswürdigen, Beweis
finden, der die grundlegenden Regeln des Beweisens versteht. Beweisen beinhaltet also immer zwei Teile: Ideen finden und zeigen, dass die Ideen logisch zum gewünschten Ergebnis führen. Dieser zweite Aspekt wird auch häufig mit Schließen
bezeichnet.
Beweisen hat stets zwei Aspekte: Geniale Einfälle, die einen Beweis erst ermöglichen. Und feste Beweis-Regeln, die – richtig angewandt – ebendiese Einfälle erst zu einem Beweis machen.
Die Fähigkeit, eine Idee für den Beweis zu finden, also eine Vorstellung zu entwickeln, weshalb eine mathematische Behauptung wahr ist, ist etwas, was nur wir
Menschen können. Es braucht dafür stets (mehr oder weniger) Genialität. Für einen Computer ist es im Allgemeinen nicht möglich*, Beweise zu entdecken. Was
der Computer hingegen wiederum sehr gut kann, ist überprüfen, ob ein vorliegender Beweis für eine Behauptung tatsächlich korrekt ist! Computer sind begnadete
Beweis-Prüfer! Dies liegt daran, dass Beweise zu prüfen eine von vornherein komplett festgelegte Tätigkeit ist, die stets festen Regeln folgt.
Man muss beide Fähigkeiten lernen: Beweise finden und Beweise überprüfen. Ersteres entsteht mit der Zeit, und wird besser, je mehr wir die Dinge verstehen und
vor allem je mehr Beweise wir führen.
Beweise auf ihre logische Korrektheit prüfen ist absolut erlernbar. Es folgt einem
striktem Schema, im Prinzip einem Algorithmus†. Die Schwierigkeit, die wir dabei oft haben, ist uns so zu trainieren, dass wir lernen zu erkennen, wann etwas ein
gültiger Beweisschritt ist, und wann nicht. Wollen wir einen Beweis für eine Behauptung finden, so müssen wir beide Fähigkeiten zugleich besitzen und anwenden. Beim Beweisen wechseln wir ständig zwischem kreativem Beweis-Finden
und Beweis-Prüfen hin und her.
*dies kann man übrigens beweisen
†deshalb kann ein Computer dies auch so gut
63
Beweisen
Schließen
3 Schließen und Beweisen
64
Im folgenden Kapitel wollen wir vor allem das Führen formal korrekter Beweise
einführen und üben. Wir haben in diesem Kapitel bewusst einfache Beispiele ausgewählt, um den Anteil an Genialität möglichst gering zu halten. Trotzdem werden wir kennzeichnen, was die Beweisidee ist und welcher Anteil formal korrektes
Arbeiten ist.
3.1 Schlussregeln
Schlussregeln
Schließen ist in der Informatik immer ein Prozess, der bestimmen Regeln – sogenannten Schlussregeln – folgt.
Schlussregel
Eine Schlussregel ist ein gedankliches Kostrukt, das aus (mehreren) Prämissen
und einer Konklusion besteht. Wir schreiben Schlussregeln als eine Linie, bei
der alle Prämissen oberhalb und die Konklusion unterhalb stehen.
φ1
φ2
...
φn
ψ
Eine Schlussregel hat dabei die folgende Bedeutung: Wenn φ1 gültig ist und φ2
gültig ist und so weiter bis φn , dann ist auch ψ gültig. Alternativ schreiben wir
auch φ1 , . . . , φn =⇒ ψ, wenn wir eine Schlussregel (bzw. ihre Anwendung) innerhalb einer Zeile schreiben wollen. Wir trennen dabei die Prämissen durch
Kommas und ersetzen den langen Strich durch das Zeichen =⇒.
Auf den ersten Blick erscheinen Schlussregeln wie eine logische Implikation:
Wenn die Prämissen wahr sind, dann ist auch die Konklusion wahr. Tatsächlich
sind Schlussregeln nichts anderes als Implikationen – aber nicht auf der Ebene
unserer Logik, sondern auf einer Metaebene, also einer Denkebene, die über der
Logik liegt. Wenn wir oben also z.B. sagen, φ sei gültig, dann meinen wir damit,
dass φ gedanklich richtig ist. Es ist eine gedankliche Feststellung, deren Gültigkeit zweifelsfrei feststeht. Wir meinen damit jedoch nicht unbedingt, dass φ eine
logische Formel ist! φ kann in der Tat eine logische Formel sein, es muss jedoch
nicht notwendigerweise eine sein.
Intuition
Bisher haben wir versucht, alles formal zu fixieren. Also weshalb brauchen
wir erneut diese Unschärfe? Warum können wir nicht auf die formale Sprache der Logik zurückgreifen, die wir zuvor definiert haben? Erinnern wir
uns daran, dass wir bei der Definition der Logik auf natürliche Sprache zurückgreifen mussten. Um z.B. zu definieren, was φ∧ψ bedeutet, mussten wir
auf das deutsche Wort “und” zurückgreifen. Uns bleibt keine andere Wahl,
denn wir haben keine grundlegendere Sprache als die Logik. Und diese muss
dann letzten Endes eben doch mit unserer normalen Sprache fixiert werden.
Genauso verhält es sich mit den Schlussregeln. Um zu definieren, was ein logisch korrekter Schluss ist, müssen wir an manchen Stellen einfach auf diese
Dinge zurückgreifen, die wir nur mit Sprache ausdrücken können.
Wir hatten ja bereits angedeutet, dass Schlussregeln nicht unbedingt einen Zusammenhang zwischen logischen Formeln beschreiben müssen. Die Prämissen und
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
65
die Konklusion müssen nicht unbedingt einmal logische Formeln sein. Dies zeigt
uns auch das nächste Beispiel. Wir haben in Abbildung 19 einen Kalkül – also eine
Sammlung von Schlussregeln – zum Mischen von Farben angegeben.
Gelb Rot
(Orange2)
Orange
Blau
(AxiomB)
Blau Gelb
(Gruen1)
Grün
Rot Gelb
(Orange1)
Orange
Gelb
Blau Rot
(Lila2)
Lila
(AxiomG)
Rot Blau
(Lila1)
Lila
Kalkül
Rot
(AxiomR)
Gelb Blau
(Gruen2)
Grün
Abbildung 19: Kalkül zum Mischen von Farben
Versuch es selbst! – Aufgabe 19: Bedeutung von Schlussregeln
Versuchen Sie selbst einmal herauszufinden, was die Schlussregeln zum Mischen von Farben bedeuten.
Die Verwendung von Schlussregeln ist ein Konzept, das für jede Art von Schlussregeln gleich abläuft. Alle Schlussregeln, die Ihnen im Studium begegnen werden
– und das werden viele sein – werden genauso angewendet, wie wir das Ihnen hier
zeigen.
Wir möchten zum Beispiel die Farbe Blau begründen, d.h. zeigen, dass Blau entwender eine Grundfarbe ist oder sich aus den Grundfarben mischen lässt. Dazu
müssen wir zeigen, dass sich Blau so mithilfe der Schlussregeln ableiten lässt, dass
schließlich alle Enden bewiesen sind. In diesem Satz kommen zwei neue Begriffe
vor – ableiten und bewiesen. Den Prozess des Anwendens von Schlussregeln, den
wir gleich vorführen, nennt man im Allgemeinen ableiten. Man sagt, dass eine Ableitung bewiesen ist, wenn jede Ableitung mit einer Regel ohne Prämisse endet.
Blau
AxiomB
Die Farbe Blau lässt sich sehr einfach begründen. da es eine Regel gibt, die Blau
begründet und keine Prämisse hat, nämlich die Regel AxiomB. Also haben wir Blau
nun mithilfe unseres Kalküls abgeleitet und bewiesen.
Versuch es selbst! – Aufgabe 20: Bevor Sie weiterlesen …
…Überlegen Sie sich, wie man mit Hilfe der Ableitungsregeln die Farbe Grün
ableiten kann.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
ableiten
3 Schließen und Beweisen
66
Wir müssen uns zunächst überlegen, in welchen Regeln die Farbe Grün als Konklusion zu finden ist- denn wir können nur Dinge beweisen, die sich als Konklusion
einer bewiesenen Ableitung ergeben.
Intuition
Eine bewiesene Ableitung ist eine Folge von angewendeten Ableitungsregeln, so dass die Prämisse der einen Regel die Konklusion der anderen ist.
Dies führen wir solange fort, bis keine Regel mit dieser Konklusion mehr
existiert oder bis wir eine Regel ohne Prämisse angewendet haben. Abstrakt
sieht eine bewiesene Ableitung so aus:
D
B
E
C
A
In einem passenden Kalkül hätten wir nun die Aussage A bewiesen. Wenn
wir jedoch einen Baum erhalten, auf den wir keine Regel mehr anwenden
können, der jedoch abstrakt folgende Gestalt hat:
D
B
E
C
A
Dann haben wir A nicht bewiesen. Achtung: Dies heißt jedoch nicht, dass man
A nicht beweisen kann! Erst wenn wir alle möglichen Ableitungsbäume, die
ganz unten A stehen haben, durchprobiert haben und alle enden mit unbewiesenen Blättern, dann lässt sich A im gegeben Kalkül nicht beweisen.
Betrachten Sie den folgenden Ableitungsbaum:
Blau Gelb
(Gruen1)
Grün
Damit haben wir Grün zwar einmal abgeleitet (also eine Regel von Grün aus angewendet), aber noch nicht bewiesen, da noch weder Blau noch Gelb bewiesen sind.
Dabei helfen uns jedoch die Regeln AxiomB und AxiomG. Die beiden Regeln erlauben es uns Blau und Gelb abzuleiten und zu beweisen, was wir wie folgt notieren:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
67
(AxiomB)
(AxiomG)
Blau
Gelb
(Gruen1)
Grün
Ein weiterer korrekter Ableitungsbaum – so nennen wir eine Folge von korrekt angewendenten Schlussregeln (in obiger Form notiert) –, um Grün abzuleiten, ist der
folgende:
(AxiomG)
(AxiomB)
Gelb
Blau
(Gruen2)
Grün
Es gibt aber auch Farben, die wir mit unserem Kalkül nicht ableiten können, z.B.
Braun, da es keine Regel gibt, die Braun als Konklusion hat.
Versuch es selbst! – Aufgabe 21: Auf den Kalkül kommt es an!
Geben Sie einen Kalkül zum Mischen von Farben an, in dem man die Farbe
Braun, nicht aber die Farbe Lila ableiten kann.
Eine essentielle Fähigkeit, um Ableitungsregeln anzuwenden, ist der syntaktische
Abgleich von Mustern. Wir müssen erkennen können, ob zwei Dinge syntaktisch
gleich sind. In unserem speziellen Fall der Farben heißt das: “Entscheiden können,
ob zwei Farben gleich sind”; im Fall von logischen Formeln “Entscheiden können,
ob zwei Formeln syntaktisch gleich sind”. Wir brauchen diese Fähigkeit, um zu entscheiden, ob die Prämissen wirklich in unserer Situation zutreffen (ob Gelb wirklich Gelb ist) bzw. auch in der umgekehrten Form, nämlich ob es wirklich eine Regel
gibt, die Grün als Konklusion hat. Was sich hier noch sehr leicht anhört, wird sich
später bei unseren Beweisregeln komplizierter gestalten.
Wir haben die ganze Zeit schon zwei verschiedene Anwendungsarten von Inferenzregeln angedeutet: Wir können Beweisregeln von den Prämissen zur Konklusion anwenden oder von der Konklusion zur Prämisse.
unten nach oben: Bei dieser Variante versuchen wir einen gegeben Ausdruck
mit Hilfe unserer Schlussregeln zu beweisen. Wir haben mit Hilfe unseres
Kalküls für Farben so gezeigt, dass wir Grün tatsächlich aus den Grundfarben mischen können.
oben nach unten: Diese Variante hat zwei verschiedene Anwendungen: Haben
wir bereits einen fertigen Ableitungsbaum, so können wir von oben nach unten sehr leicht prüfen, ob alle Schritte korrekt sind. Sind wir noch in der Findungsphase, so können wir in diese Richtung ausprobieren, was aus den gegebenen Fakten ableitbar ist – und finden so vielleicht eine gute Möglichkeit
weiterzumachen.
Da Computer sehr schnell alle Möglichkeiten ausprobieren können und wir mithilfe der Beweisregeln einfach auch ausprobieren können, welche zum Ziel führen, können Computer wirklich gut ableiten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Ableitungsbaum
3 Schließen und Beweisen
68
Versuch es selbst! – Aufgabe 22: Ein Algorithmus zum Anwenden von
Schlussregeln
Achtung: Diese Aufgabe ist schwer! Um sie vollständig richtig zu lösen, ist Vorwissen über Algorithmen notwendig. Falls Sie diese nicht haben, versuchen
Sie die Aufgabe trotzdem und gleichen Sie Ihre Lösung genau mit der Beispiellösung ab. Geben Sie einen Algorithmus an, der
(a) beschreibt, wie man entscheidet ob eine Regel anwendbar ist.
(b) eine vollständige Ableitung konstruiert, falls diese existiert.
Berechnen Sie exemplarisch an Farben eine Ableitung mithilfe Ihres Algorithmus.
Nachdem wir nun geklärt haben, was Inferenzregeln und Ableitungen sind, werden wir im folgenden Abschnitt einige wichtige Begrifflichkeiten erklären, die Sie
durch Ihr Leben als Informatiker und Mathematiker begleiten werden.
3.2 “Definition, Satz, Beweis” – Begrifflichkeiten
Definition
Wir beginnen mit dem grundlegenden Begriff der Definition. Sie ist der
Schöpfungsakt, der neue Dinge in die Welt der Mathematik und Informatik
einführt.
Definition
Eine Definition ist die Einführung eines neuen mathematischen Objekts.
Sehr oft ist dies ein sehr einfacher Vorgang, bei dem wir nur ein neues Symbol
einführen, dass uns erlaubt, kompliziertere Sachverhalte kurz auszudrücken.
Wenn solche Definitionen sehr kurz sind, dann schreiben wir oft einfach <
Symbol >:=< Bedeutung >. Im Prinzip ist := ein normales Gleichheitszeichen;
der Doppelpunkt davor soll klarmachen, dass wir diese Gleichheit neu einführen
und dass dies keine Gleichheit ist, die man beweisen muss oder kann.
Beispiel
(a) Eine Definition einer bestimmten Menge können wir schreiben als:
Sei M := {1, 2, 3}.
Wir geben der Menge {1, 2, 3} den Namen M , und definieren dabei,
was ab sofort das Symbol M bedeuten soll. Wann immer nun das Symbol M auftaucht, können wir es ersetzen durch {1, 2, 3}, ohne irgendetwas zu verändern. Ebenso andersherum.
(b) Sei p ↔ q := p → q ∧ q → p. Hier definieren wir den Operator ↔ mit
Hilfe von ∧ und →. Das dürfen wir nur tun, falls wir ↔ nicht als Teil
der Aussagenlogik oder der Prädikatenlogik bereits definiert haben, da
wir Dinge nicht zweimal definieren können. Innerhalb dieses Skripts
dürften wir dies also nicht schreiben, da ↔ bereits definiert ist.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
69
Satz und Theorem
Ein Satz, auch Theorem genannt, ist eine Aussage φ, die bewiesenermaßen wahr
ist.
Solange wir eine Aussage nicht bewiesen haben, ist sie nur eine Behauptung, die
falsch sein kann, und damit nutzlos. Eine Behauptung zusammen mit einem Beweis für die Behauptung nennen wir also Satz.
Satz
Behauptung
Beispiel
Das Quadrat einer geraden natürlichen Zahl ist wiederum gerade. Dies ist ein typischer Satz der Zahlentheorie. Wir verwenden –wie hier– oftmals keine
prädikatenlogischen Ausdrücke, um Sätze besser lesbar zu machen. Dies
dürfen wir jedoch nur, wenn es jedem gelingt, einfach und direkt den Satz in
eine prädikatenlogischen Aussage umzuformena. In Prädikatenlogik würde
der Satz dann wie folgt aussehen:
∀n ∈ N : (∃k ∈ N : n = 2k) → (∃k ′ ∈ N : n2 = 2k ′ ).
awir meinen: es jedem halbwegs geübten Mathematiker gelingt. Wir müssen das noch üben!
Es gibt noch andere bewiesene Behauptungen, die wir (mehr aus didaktischen
Gründen) in der Mathematik nicht Satz oder Theorem nennen, sondern Lemma
oder Korollar. Als Satz oder Theorem bezeichnen wir nur das, was innerhalb eines
bestimmten Gebiets, oder eines Themas, richtig wichtig ist.
Lemma
Eine Lemma ist eine bewiesene Behauptung, die wir benötigen, um einen Satz
zu beweisen.
Lemma
Oft sind Lemmas viel schwieriger zu beweisen, als der Satz selbst (wenn wir dann
die Lemmas haben). Meist haben es die armen missbrauchten Lemmas jedoch nie
zu Weltruhm geschafft, während die aus ihnen abgeleiteten Sätze jedem bekannt
sind. Einige Lemmas, wie z.B. das Lemma von Zorn*, sind jedoch sehr bekannt und
wichtig in der Mathematik geworden.
Korollar
Ein Korollar ist eine Behauptung, die sehr einfach aus einem Satz folgt. Oft ist
es ein Spezialfall eines Satzes.
Häufig sind Korollare wichtige Anwendungsfälle und geben uns darüber Aufschluss, wie ein Satz verwendet werden kann.
Beispiel
*hier geht es nicht um Aggressionstherapie, der gute Mann der’s gefunden hat, hieß so.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Korollar
3 Schließen und Beweisen
70
Das Quadrat der Zahl 4 ist gerade. Dies wäre ein (extrem langweiliges) Korollar zum Satz aus Bsp. 3.2. Der Beweis folgt geradezu offensichtlich aus dem
Satz.a
aStopp! Für uns als Jungmathematiker sollte nichts offensichtlich sein! Also Vorsicht! Bald
werden wir sehen, wie wir in diesem Fall korrekt beweisen würden. Für erfahrene Mathematiker ist dieser Fall jedoch einfach nur trivial.
Wir haben nun Begrifflichkeiten geklärt, die uns in der Mathematik und Informatik ständig begegnen werden. Nun wenden wir uns den beiden Tätigkeiten zu, die
wir in der Einleitung schon beschrieben haben – dem Schließen und Beweisen.
3.3 Schließen und Beweisen
Wir beschränken uns im Folgenden auf das Beweisen von Aussagen der Mathematik. Damit können wir annehmen, dass wir nur noch mit prädikatenlogischen
Ausdrücken arbeiten.
Die Begriffe Schließen und Beweisen sind eng miteinander verknüpft. Wenn wir
sie so erklären wollen, dass sie uns in der Praxis hilfreich sind, so können wir das
eigentlich nur tun, indem wir sie gemeinsam erklären. Als ersten Schritt wollen
wir uns erst einmal langsam an diese Begriffe annähern.
Beweis
Ein Beweis für eine Aussage φ ist eine Folge von logisch korrekten Schlüssen,
die zeigen, dass die Aussage φ eines Satzes gilt, mit anderen Worten, dass
φ ≡ ⊤.
Im einfachsten Fall genügt es, die Aussage solange mit Hilfe der uns bekannten Gesetze der Aussagenlogik umzuformen, bis wir von φ aus zu ⊤ gelangen. Oft ist dies
jedoch nicht direkt möglich, da die dafür in den Zwischenschritten notwendigen
Aussagen so kompliziert werden würden, dass keiner den Beweis nachvollziehen
bzw. aufschreiben kann. Wie wir einen Beweis logisch korrekt, und dennoch lesbar schreiben, wollen wir im Folgenden lernen.
Intuition
Woraus besteht nun ein Beweis? Für einen Beweis brauchen wir als Ausgangspunkt zunächst eine Aussage φ, die wir in der Sprache der Logik formulieren können. Und am Ende des Beweises muss herauskommen, dass φ
logisch wahr ist, also φ ≡ ⊤ gilt. Und zwischen diesen beiden Punkten liegt
dann die Anwendungen von logischen Schlüssen, die wir bald kennen lernen
werden. Um es ganz einfach zu machen, schauen wir uns ersteinmal ein paar
Beweise an, wo wir auf diese Schlüsse noch (fast) ganz verzichten können.
Beispiel
Wir betrachten die Formel ⊤. Wir können direkt aus unserem Grundwissen
über Logik folgern, dass ⊤ ≡ ⊤. Damit haben wir die Aussage ⊤ bewiesen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
71
Nun, diese Aussage ist nicht sehr hilfreich, und ihr Beweis in der Tat trivial. Dennoch haben wir hier unseren ersten formalen Beweis geführt!
Beispiel
Sei φ die Formel (π > 5) ∨ ¬(π > 5). Wie können wir die Formel φ beweisen?
Wir erinnern uns an Kapitel 2, und sehen sofort das dies eine Tautologie ist!
Wenn p die Aussage π > 5 ist, so ist φ = p ∨ ¬p ≡ ⊤ nach den grundlegenden
Gesetzen der Aussagenlogik.
Für jede Formel φ, von der wir direkt mit den Hilfsmitteln aus Kapitel 2 zeigen
können, dass φ ≡ ⊤ gilt, haben wir somit direkt einen gültigen Beweis gefunden!
Im Allgemeinen kommen wir jedoch so nicht zum Ziel. Schauen wir uns mal das
folgende sehr einfache Beispiel einer Behauptung an, die wir gerne zeigen möchten.
Beispiel
Behauptung: Es gibt eine natürliche Zahl x, so dass x > 10.
Wie könnten wir diese Behauptung beweisen? Als Formel geschrieben heißt
diese Behauptung: ∃x : x ∈ N ∧ x > 10. Wie wir wissen, ist diese mit ∃ quantifizierte Aussage wahr, wenn wir ein konkretes Objekt v finden können, so
dass v ∈ N ∧ v > 10 wahr ist. Als konkretes Element können wir z.B. 11
wählen! Damit schließen wir, dass ∃x : x ∈ N ∧ x > 10 ≡ ⊤ gilt.
Wir haben hier also unser Wissen über Prädikatenlogik genutzt, um zu schließen, dass aus den Tatsachen, dass 11 ∈ N und 11 > 10 gilt, auch die Aussage
∃x : x ∈ N ∧ x > 10 folgt. Wir haben jetzt anders als in den Beispielen zuvor nicht
mehr nur bekannte Äquivalenzumformungen unter ≡ angewandt, sondern einen
Schluß gezogen, der auf unserem Wissen über die Semantik der Formel basierte.
Tatsächlich haben wir hier das erste Beispiel für eine logische Schlussregel: wenn
für ein Prädikat P und ein konkretes mathematisches Objekt aus U die Aussage
P (v) wahr ist, so können wir logisch schließen, dass auch ∃x : P (x) gilt.
Wir haben also unseren ersten logisch gültigen Schluss kennengelernt. Nicht beeindruckt? — Gut! Tatsächlich sind logische Schlüsse auch nichts geheimnisvolles. Ein logischer Schluss ist eigentlich sowas wie ein sinnvolles Argument, an das
wir (und alle vernünftigen Mathematiker) glauben. Und normalerweise wird es
nicht anders formuliert als die Schlussregeln, die wir bisher gesehen haben (nur
das wir über prädikatenlogische Ausdrücke statt über Farben Aussagen treffen).
Im nächsten Abschnitt werden wir nun die Schlussregeln des Beweisens sowie ihre typischen Anwendungen vorstellen.
3.4 Schlussregeln des Beweisens
Wir gehen beim Lernen des Beweisens in zwei Schritten vor:
(a) Wir werden Beweise als Ableitungsbäume (auch: Beweisbäume) aufschreiben,
um uns so zu trainieren, formal korrekte Beweise zu schreiben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
72
(b) Sobald die Beweise länger werden, werden wir anfangen, Beweise als Texte
zu schreiben und unsere Beweisbäume in Texte zu übersetzen.
Unser Ziel ist es Ihnen beizubringen, wie Sie solche Beweise schreiben, wie wir
Sie Ihnen im Abschnitt “Ziele des Vorkurses” gezeigt haben. In solchen Beweisen
passiert die Konstruktion der Beweisbäume nur noch im Kopf.
Am Anfang mag Ihnen dieses Ziel zu hoch gesteckt vorkommen. Doch keine Sorge:
Man entwickelt sehr schnell eine Routine, wenn man übt und in diesem Fall gilt
auch: Übung macht den Meister!
Erklärung der folgenden Boxen: Jede Schlussregel findet sich im Folgenden in einer eigenen Box. Oberhalb der Box steht der ausführliche Name der Schlussregel, links
Prämisse
oben die Schlussregeln in der Schreibweise Konklusion
. Darunter findet sich die möglichst einfach formulierte typische Anwedungsweise in Beweisen. Auf der rechten
Seite oben findet sich der abgekürzte Name der Regel und darunter, wie wir die Regel schließlich in Textbeweisen aufschreiben.
Trivial Wahr
(W)
⊤
Verwendung
Die Regel im Textbeweis…
Es ist immer gültig, ⊤ anzunehmen. Deshalb
betrachten wir ⊤ stets als bereits ohne Weiteres
(trivial) bewiesen. Sehr oft benutzen wir die Regel
zusammen mit (Subst), um zu sagen, dass eine
Unterscheidung, die wir gleich treffen, logisch
immer wahr ist.
Kombiniert mit (Subst) schreiben
wir z.B.
• Es
√ gilt (logisch)
√stets, dass
2 ∈ Q oder 2 ∈
/ Q.
• Ohne Annahmen können
√
wir schließen,
dass 2 ∈ Q
√
/ Q.
oder 2 ∈
√
• Trivialerweise
gilt 2 ∈ Q
√
oder 2 ∈
/ Q.
√
⊤
(W)
2∈Q∨
√
2∈
/Q
(Subst)
.
..
Mit Hilfe der Regel Trivial Wahr alleine können wir nur beweisen, dass ⊤ immer
gilt. Gleichzeitig ist ⊤ immer eine legale Annahme. Ob wir etwas Wahres annehmen, spielt keine Rolle, denn wir haben ja bereits gezeigt, dass es beweisbar wahr
ist.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
73
Implikation-Beweis
φ→ψ
(→:Bew)
falls φ =⇒ ψ gilt
Verwendung
Die Regel im Textbeweis…
Diese Regel dient zum Beweisen einer Implikation.
Die Nebenbedingung der Regel sagt, dass wir
sie anwenden dürfen, sofern wir einen Beweis
für ψ finden können, unter der Prämisse φ. Dies
ist sozusagen ein Nebenbeweis, den wir führen
müssen, um die Regel anwenden zu dürfen. Die
Regel selbst hat keine Prämissen, da alles alleine
aus dem Nebenbeweis folgt. Sie ist daher stets ein
Blatt eines Beweisbaumes.
√
√
• Annahme: 2 ∈ Q.
Dann/Damit
ist …
√
• A: 2
√∈ Qa.
• Gelte 2 ∈ Q. Dann …
aMathematiker lieben möglichst
kurze Abkürzungen. A ist
Mathematiker-Deutsch
für
Annahme
2∈Q→1=0
..
.
Die Schlussregel Implikation-Beweis ist eine der häufigsten verwendeten Schlussregeln in Beweisen überhaupt. Viele der wichtigen Sätze der Mathematik und Informatik sind als Implikationen formuliert. Hier ein Beispiel aus der Analysis 1 bzw.
MFI 1.
Beispiel
Satz von Bolzano-Weierstraß: Jede beschränkte, reelle Zahlenfolge enthält mindestens eine konvergente Teilfolge.
Dabei sind hier die Implikationen in den Anforderungen versteckt, zum Beispiel
ist “jede beschränkte, reelle Zahlenfolge” eigentlich die Implikation “für jede Zahlenfolge F gilt: wenn F reell ist und F beschränkt ist, dann gilt”*.
Wir können mit Hilfe der Regel Implikation-Beweis beweisen, dass zum Beispiel 4 ∈
Z → 4 ∈ Z gilt:
4∈Z→4∈Z
(→:Bew)
Der dazugehörige Nebenschluss 4 ∈ Z =⇒ 4 ∈ Z ist eindeutig gegeben, da wenn
die Prämisse gilt, auch die Konklusion gilt. Also haben wir 4 ∈ Z → 4 ∈ Z.
Die nachfolgende Regel tritt, wie einige weitere Regeln auch, in zwei Varianten
auf: eine, die einen Ausdruck durch einen anderen ersetzt, und eine, bei der wir
den äquivalenten Ausdruck mit einer Konjunktion hinzufügen. Dabei ist die folgende Regel essentiell, um logisches Gleiches innerhalb eines Beweises ersetzen
zu dürfen. Wir haben bereits erwähnt, dass wir sie meistens in Kombination mit
der Regel Trivial Wahr verwenden, um beliebige bereits bewiesene Aussagen in Beweisen verwenden zu dürfen.
*Wenn Sie das Beispiel nicht direkt verstehen, ist dies nicht schlimm. Hier trotzdem eine kurze Erklärung: Folgen sind definiert wie in der Schule auch. Eine folge heißt reell, wenn alle Folgenglieder
reelle Zahlen sind. Außerdem heißt eine Folge beschränkt, wenn es eine reelle Zahl x gibt, so dass
alle Folgenglieder kleiner oder gleich x sind
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
74
Substitution
φ
ψ
(Subst)
φ
φ∧ψ
falls [φ≡ψ] gilt
Verwendung
Die Regel im Textbeweis…
Diese Regel erlaubt uns, logisch gleiche Ausdrücke
zu ersetzen. Wir können hier also alle Gesetze
der Logik anwenden, die wir in Kapitel 2 kennen
gelernt haben.
5∈
/ N∨5∈Q
5∈N→5∈Q
• 5∈
/ N ∨ 5 ∈ Q ist logisch
äquivalent zu
5 ∈ N → 5 ∈ Q nach der
Regel “Definierbarkeit”
zu →.
• Nach den Gesetzen der
Logik können wir
5∈
/ N ∨ 5 ∈ Q äquivalent
umschreiben zu
5 ∈ N → 5 ∈ Q nach der
Regel “Definierbarkeit”
zu →.
(Subst)wegen (Def. →)
Bei Regeln, die eine Nebenbedingung besitzen,
sollten wir auch immer kurz begründen, weshalb
die Nebenbedingung erfüllt ist.
Nun können wir unseren Satz 4 ∈ Z → 4 ∈ Z auch auf eine andere Art beweisen:
(W)
⊤
(Subst)wegen Tertium non dator
¬(4 ∈ Z) ∨ 4 ∈ Z
(Subst)wegen Def. →
4∈Z→4∈Z
Logisch-folgt
φ φ1
···
ψ
φn
φ
φ1 · · ·
φ∧ψ
φn
(Impl)
falls [φ∧φ1 ∧···∧φn →ψ≡⊤] gilt
Verwendung
Die Regel im Textbeweis…
Diese Regel findet selten Anwendung. Sie wird
hauptsächlich benutzt, um die Gültigkeit anderer
Diese Regel findet sich eigentlich
nie im Textbeweis.
(kürzerer) Schlussregeln zu begründen.
Die soeben betrachtete Regel ist eine sehr mächtige Regel, da sie erlaubt, quasi alles, was ein logisch gültiger Schluss ist, auch als Schlussregel zu verwenden. Die
meisten der nachfolgenden Regeln sind in der Tat eigentlich nur Anwendungen
dieser Regel. Es ist jedoch eine gute Idee, diese Regel selbst nur sehr sparsam zu
verwenden, da es für den Leser nicht sehr hilfreich ist, wenn man etablierte Wege
beim Beweisen verlässt, ohne dies sinnvoll zu müssen, da dies den Beweis oft sehr
schwer nachvollziehbar macht.
Fazit: die vorangegangenen Regeln sowie die nachfolgenden genügen für vermutlich alle Beweise, die uns in den ersten Semestern begegnen werden. Manchmal
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
75
jedoch ist es notwenig, alle Register der Logik zu ziehen und mit der obigen Regel
zu arbeiten.
Wir wenden uns nun einigen Regeln zu, die wir nicht mit der Regel (Impl) (und
auch mit sonst keiner anderen) beweisen können. Die folgenden Regeln dienen
dazu den Bezug zwischen konkreten und quantifizierten Aussagen herzustellen
und müssen daher viel unserer Intuition überlassen bleiben.
All-Instanziierung
∀x : φ
(φ)[x := v]
(∀:Anw)
[v ∈ U ]
Verwendung
Die Regel im Textbeweis…
Häufig in Kombination mit der Regel (→:Anw):
∀x : P (x) → Q(x)
∀x : P (x)
P (8) → Q(8)
P (8)
Q(8)
• Da die Aussage für alle
natürliche Zahlen gilt, gilt
sie auch für 7.
• Aus Satz 42 folgt, dass 6
eine natürliche Zahl ist.
All-Beweis
(φ)[x := v̇] gilt für ein unbestimmtes v̇ ∈ U
(∀:Bew)
∀x : φ
Verwendung
Die Regel im Textbeweis…
Wir wollen zeigen, dass alle natürlichen Zahlen
größer als 0 sind. Wir arbeiten mit einem komplett
unbestimmten Objekt v̇ ∈ U , und zeigen, dass
die Aussage wahr ist. Danach folgern wir als letzten
Schritt
.
..
Dort folgt die Regel immer als
erster Schritt, um zu zeigen, dass
eine Aussage für alle Objekte aus
U gilt. Wir ernennen v̇ zu unserer
unbestimmten Variable, mit der
wir fortan stellvertretend für alle
Elemente aus U arbeiten werden.
v̇ ∈ N → v̇ ≥ 0
∀x : x ∈ N → x ≥ 0
Wir schreiben:
• Sei v̇ ∈ U beliebig (aber
fest).
• Betrachte ein beliebiges
v̇ ∈ U .
Wir haben nun die beiden Regeln kennengelert, die die Einführung und Elimination von Allquantoren erlauben. Mit der Einführung eines Allquantors meint man
den Allquantor-Beweis während die Elimination die Verwendung eines Allquantors bezeichnet. Dies entspricht nur leider meistens nicht (!!) der Anwedungsweise der Regeln. Wir verwenden die Regel All-Beweis meisten von unten nach oben,
wir führen die Konklusion auf die Prämissen zurück und arbeiten mit den Prämissen weiter. Während wir die Regel All-Instanziierung meistens umgekehrt nutzen.
Wir kennen ein konkretes Objekt, welches wir einsetzen wollen, und nutzen den
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
76
bereits bewiesenen all-quantifizierten Satz als Prämisse und leiten daraus eine
konkrete Konklusion her, die einen Allquantor weniger enthält.
Mit unseren neuen Regeln können wir zum Beispiel für ein beliebiges einstelliges
Prädikat P folgendes zeigen:
(W)
⊤
(Subst)
P (ẋ) ∨ ¬P (ẋ)
(∀:Bew)
∀x : P (x) ∨ ¬P (x)
Wir nehmen nun an, dass ∀x : P (x) → Q(x) und ∀y : P (y) gilt und wir wollen
∀z : Q(z) zeigen. Dies funktioniert wie folgt:
∀x : P (x) → Q(x)
∀y : P (y)
P (ż) → Q(ż)
P (ż)
(∀:Anw)
(∀:Anw)
(→:Anw)
Q(ż)
(∀:Bew)
∀z : Q(z)
Existenz-Instanziierung
∃x : φ
(∃:Anw)
(φ)[x := v̇] gilt für
ein nicht näher bestimmtes v̇ ∈ U
Verwendung
Wir verwenden die Regel häufig im Kontext
von Aussagen z.B. über gerade bzw. ungerade
Zahlen. Wollen wir zum Beispiel zeigen, dass wenn
eine natürliche Zahl x gerade ist ihr Nachfolger
ungerade ist, so verwenden wir die Regel, um eine
mathematische Gleichheit zwischen ẋ und 2 · k̇
zu beweisen. Da es sich bei der Aussage um eine
Implikation handelt, dürfen wir annehmen, dass ẋ
gerade ist.
Die Regel im Textbeweis…
• Sei k̇ ∈ M passend.
• Wir wissen, dass ẋ gerade
ist, also gibt es eine
natürliche Zahl k̇, so dass
ẋ = 2 · k̇.
∃k ∈ N : ẋ = 2 · k
ẋ = 2 · k̇
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
77
Existenz-Beweis
(φ)[x := v] gilt für ein konkretes v ∈ U, das wir persönlich
genau kennen
(∃:Bew)
∃x : φ
Verwendung
Die Regel im Textbeweis…
Wir müssen zeigen, dass es ein
v gibt, welches die Behauptung
erfüllt. …Damit haben wir ein
konkretes Element gefunden,
welches die Behauptung gefüllt und
damit ist die Aussage bewiesen.
Die vier Operatorregeln müssen in Kombination sehr behutsam verwendet werden, vor allem, wenn wir nicht konkrete Zahlen wie 7 verwenden, sondern nur
Variablen, die für konkrete Zahlen stehen, wie ẋ. Daher müssen wir uns genau
überlegen, was bei den Regeln passiert.
Die Regeln All-Instantiierung erlaubt es uns, auszusuchen welchen Wert wir einsetzen. Wir dürfen uns aussuchen, mit welchem Wert wir in der Konklusion weiterarbeiten möchten.
Sehr ähnlich dazu verhält sich die Regel Existenz-Beweis: Wir dürfen das Objekt auswählen mit dem wir die Konklusion beweisen wollen.
Dahingegen sind die beiden anderen Regeln schwieriger zu handhaben. Nutzen
wir die Regel Existenz-Instanziierung, so wissen wir nicht, welches Objekt die Regel
erfüllt, sondern nur, dass es solch ein Objekt gibt. Daher bezeichnet ẋ in diesem
Fall ein konkretes Objekt, welches wir nicht kennen.
Bei der Regel All-Beweis verhält es sich ähnlich. Möchten wir eine allquantifizierte Aussage beweisen, müssen wir die Aussage für alle möglichen Belegungen der
quantifizierten Variable gleichzeitig. Also steht hier ẋ zwar für einen konkreten
Wert, aber gleichzeitig für alle möglichen konkreten Werte. Wir können einen Ausdruck, der so eine Variable enthält, nur dann umformen, wenn der Schritt für alle
Belegungen der Variablen, die möglich sind, gilt.
Intuition
Wir haben zwei intuitive Bilder für die Quantorenregeln hier vorbereitet:
(a) Wir können die Quantorenregeln mithilfe eines Weltenmodells besser
verstehen. Stellen Sie sich vor, Sie betrachten eine Welt, in der nur der
Ausdruck ∀x : ∃y : P (x, y) existiert. Um das Beispiel etwas konkreter zu machen, nehmen wir an, dass P (x, y) := x < y. Diese Aussage
bedeutet dann, dass es für jede Zahl eine Zahl gibt, die größer ist.
Wir bearbeiten unsere Welt nun mit der Regel (∀:Bew), um den Allquantor zu beweisen. Dazu kopieren wir unsere Welt so oft, wie es Zahlen im Unversum zum Allquantor gibt. Dies sehen Sie in Abbildung 20
in der zweiten Zeile. Wir haben nun für jede Zahl, die im Universum
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
78
zur Variable x vorkommt, eine Welt konstruiert, in der nur der Ausdruck ∃y : P (unsere Zahl, y) vorkommt.
In jeder dieser Welten wenden wir nun parallel die Regel (∃:Bew) an,
um den Existenzquantor zu beweisen. Da wir jedoch in verschiedenen
Welten arbeiten, darf die Zahl verschieden sein. Wie man in Abbildung 20 in der dritten Zeile sehen kann. Somit können wir die Aussage
beweisen, da für jede Zahl n, die Zahl n + 1 größer ist.
Betrachten wir nun die Aussage ∃y : ∀x : P (x, y). Diese bedeutet intuitiv, dass es eine größte Zahl im Universum gibt. Achtung: Diese Aussage ist über den Mengen N, Z, Q und R eindeutig falsch!
Wenn wir versuchen, diese Aussage zu beweisen, stoßen wir auf das
folgende Problem. Zunächst müssen wir dieses Mal die Regel (∃:Bew)
anwenden. Wir ersetzen in unserer einen existierenden Welt die Variable y durch eine konkrete Zahl, mit der wir versuchen wollen, unsere Aussage zu beweisen (da es mit keiner Zahl funktioniert, haben wir
hier exemlarisch die 100 genommen).
Nun wollen wir den Allquantor beweisen. Dazu kopieren wir erneut
unsere Welt so oft, wie es Zahlen im Universum zur Variable x gibt und
setzen in jeder Welt eine andere Zahl ein. So kommen wir zum Beispiel
zu den Welten 1 < 100, 13 < 100 bzw. 1023 < 100, wie in Abbildung 21.
Wir sehen hier also, dass die Variable y im Gegensatz zum obigen Beispiel in jeder Welt den gleichen Wert hat.
Zusammenfassung: Wenn wir die Regel (∀:Bew) anwenden, dann müssen wir – wenn wir von unten nach oben arbeiten – für jedes Objekt
aus dem Universum eine neue Welt erschaffen und in jeder Welt ein
anderes Objekt einsetzen. Wollen wir die Regel stattdessen von oben
nach unten anwenden, so muss es nicht nur für jedes Objekt aus dem
Universum so eine Welt geben, sondern die Welten dürfen sich auch
nur an der Stelle der Variable, die wir allquantifizieren wollen unterscheiden.
Bei der Regel (∃:Bew) hingegen, verändern wir die Anzahl der existierenden Welten nicht. Wir ersetzen nur in jeder bestehenden Welt die
existenz-quantifizierte Variable durch einen Wert, den wir in dieser
Welt brauchen, um den Beweis zu führen (wie zum Beispiel oben für
jede Zahl n durch n + 1).
(b) Wir können uns Beweisen auch vorstellen wie ein Spiel gegen einen
allwissenden Gegner. Wenden wir die Regel (∀:Bew) an, so darf unser Gegner uns zu jeder Zeit das Objekt aus dem Universum für die allquantifizierte Variable einsetzen, welches für uns am schlechtesten ist.
Er muss sich hier vorher nicht festlegen (da es ja jedes Objekt aus dem
Universum in unseren Beweis erfüllen muss).
Bei der Regel (∃:Bew) haben wir die Entscheidungsfreiheit was wir
tun, genau so auch bei der Regel (∀:Anw) – wir dürfen ganz allein entscheiden, welches Objekt aus dem Universum wir einsetzen. Wir sollten hier natürlich die besten Objekte für uns auswählen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
79
Schließlich bei der Regel (∃:Anw) darf wieder unser Gegner entscheiden, welches Objekt er uns gibt. Wir wissen nur, dass das Objekt unsere
Behauptung erfüllt, mehr dürfen wir darüber nicht annehmen.
Beweisen heißt in diesem Kontext dann, dass wir den Beweis führen
können, egal was unser Gegner tut.
∀x : ∃y : P (x, y)
P (x, y) := x < y
(∀:Bew)
…
1<
…
n<
13 <
(∃:Bew)
(∃:Bew)
2
(∃:Bew)
n+1
14
Abbildung 20: Veranschaulichung der Quantorenregeln für ∀x : ∃y
∃y : ∀x : P (x, y)
P (x, y) := x < y
(∃:Bew)
eine konkrete Zahl!
< 100
(∀:Bew)
1
13
1023
Abbildung 21: Veranschaulichung der Quantorenregeln für ∃y : ∀x
Versuch es selbst! – Aufgabe 23: Auf die Reihenfolge kommt es an!
Sei P ein beliebiges, zweistelliges Prädikat. Welche der beiden Aussagen ∀x :
∃y : P (x, y) → ∃y : ∀x : P (x, y) bzw. ∃y : ∀x : P (x, y) → ∀x : ∃y : P (x, y)
kann man beweisen? Versuchen Sie Ihre Antwort so genau wie möglich zu
begründen.
Wir kommen nun zu ein paar einfacheren, aber wichtigen Regeln. Die Regeln erklären, wie wir die anderen Verknüpfungsarten von Aussagen in Beweisen auflösen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
80
und-Einführung/und-Beweis
(∧:Bew)
φ ψ
φ∧ψ
Verwendung
Die Regel im Textbeweis…
Wann immer wir ψ annehmen (oder gezeigt
Im Textbeweis wird diese Regel
haben), so dürfen wir diese Formel immer verwenden.
nicht sehr oft angewandt, da wir
dort oft nicht zwischen φ ∧ ψ und φ
und ψ unterscheiden. Falls doch, so
sagen wir einfach: da φ und ψ gilt,
gilt auch φ ∧ ψ.
und-Beseitigung/und-Benutzung
φ∧ψ
ψ
(∧:Anw)
Verwendung
Die Regel im Textbeweis…
Diese Regel brauchen wir oft, wenn wir einen
Satz benutzen, der uns mehr Eigenschaften eines
bestimmten Objekts liefert, als wir brauchen.
Nehmen wir an, wir wollten zeigen, dass 26 durch
2 teilbar ist, verwenden dabei jedoch einen Satz,
der uns sagt, dass man 26 durch 2 teilen kann, und
das Ergebnis größer als 5 ist.
Hier beschreiben wir einfach, was
die Regel aussagt in Worten, und
sagen sowas wie: da es ein k gibt, so
dass k ≥ 5 und 6 = 2k, so gibt es
ebenfalls ein k, so dass k ≥ 5.a
∃k : 6 = 2 · k ∧ k ≥ 5
6 = 2 · k̇ ∧ k̇ ≥ 5
6 = 2 · k̇
(∃:Anw)
(∧:Anw)
aWir erwähnen diese Regel in
Textbeweisen selten explizit, da
sie so offensichtlich erscheint.
Dennoch verwenden wir sie,
auch wenn das oft unerwähnt
bleibt.
Wir können den ungebrauchten Anteil “∧ k ≥ 5”
nach der Regel einfach wegwerfen.
Wir haben soeben gesehen, dass wir für das logische Und zwei Regeln haben. Eine,
um es einzuführen, und eine, um es zu beseitigen. Für das logische Oder werden
wir im Folgenden nur eine Regel kennenlernen, um es einzuführen. Es gibt keine
entsprechende Beseitigungsregel!
Versuch es selbst! – Aufgabe 24: Kurze Fragen zu Schlussregeln
Folgende “Regel” gilt nicht! Weshalb?
φ∨ψ
φ
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
81
Wir brauchen die Regeln und-Einführung bzw. und-Beseitigung/und-Benutzung zum
Beispiel um die Aussagen folgender Sätze zu beweisen (die Konklusion ist ein
“und”) oder um die Prämissen der folgenden Sätze zu zerlegen.*
• Banach’scher Abbildungssatz: Zu Funktionen f : A → B und g : B → A existiert
eine disjunkte Zerlegung A1 , A2 und B1 , B2 von A bzw. B, so dass f (A1 ) =
B1 und g(B2 ) = A2 . (Analysis 1)
• Satz von Cantor-Bernstein-Schröder: Ist eine Menge A höchstens gleichmächtig zu einer Menge B, und gleichzeitig B höchstens so gleichmächtig wie A,
dann sind die beiden Mengen sogar gleichmächtig. (Lineare Algebra 2)
• Wenn p und q eine Quadratzahl ist, dann ist auch p · q eine Quadratzahl.
• Die Summe zweier rationalen Zahlen ist wieder rational.
• Die Summer zweier ungeraden Zahlen ist gerade.
• Die Summe einer geraden und einer ungeraden Zahl ist wieder ungerade.
Die beiden Regeln sind erfahrungsgemäß in ihrer Anwedung einfacher als die Regeln für die Quantoren. Trotzdem: Immer angeben, wenn diese Regel verwendet
wird!
oder-Einführung/oder-Beweis
(∨:Bew)
φ
φ∨ψ
Verwendung
Die Regel im Textbeweis…
Die Verwendung der Regel ist eher spärlich. Wir
Da die Aussage φ gilt, gilt auch die
brauchen die Regel meistens dann, wenn wir eine
Aussage auf eine bestimme Form bringen wollen.
Aussage φ ∨ ψ.
Zum Beispiel wissen wir, dass ∀x : P (x) und dass
∀x : P (x) ∨ ∃y : Q(y) → ∀z : R(z) gilt. Wollen
wir nun auf ∀z : R(z) schließen, so können wir
mit der Regel in den Ausdruck ∀x : P (x) ein ∨
einfügen, so dass die Prämisse der Implikation
passt.
*Am Ende des Vorkurses werden Sie in der Lage sein, die folgenden beiden Sätze zu verstehen. Die
Beweise beider Sätze sind deutlich schwieriger und nicht ohne Weiteres zu führen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
82
modus ponens
φ
φ→ψ
ψ
φ φ→ψ
φ∧ψ
(→:Anw)
Verwendung
Die Regel im Textbeweis…
Diese Regel erlaubt uns Implikationen so zu
gebrauchen, dass wir aus ihrer Prämisse auf ihre
Konklusion schließen.
Häufig liegt die Implikation in
Form eines mathematischen Satzes
vor. Nehmen wir an, Satz 42 aus
einer Vorlesung besagt: Wenn x
gerade ist, so ist x eine natürliche
Zahl. Ein Ausschnitt aus einem
Beweis, in dem wir diese Schlussregel anwenden, könnte dann so
aussehen:
∀x : g(x) → x ∈ N
g(6)
g(6) → 6 ∈ N
6∈N
(∀:Anw)
(→:Anw)
“…also muss 366 eine gerade Zahl
sein. Zusammen mit Satz 42 folgt
damit, dass 366 eine natürliche
Zahl ist.…”
Wir sehen, dass diese Schlussregel
nur implizit erwähnt wird. Dadurch, dass man weiß, dass Satz
42 die Form einer Implikation hat,
ist klar, dass (→:Anw) angewandt
werden muss. Man hält also nur
fest, dass φ gilt (“…also muss k eine
gerade Zahl sein.”) und dass der
Satz (in Form einer Implikation)
auf φ angewandt wird.
Modus Ponens ist nicht anderes als die Implikations-Anwendung. Ihr Name ist
historisch bedingt. Auch die Implikationsanwendung erscheint uns relativ natürlich aufgrund der Logik: Gilt die Prämisse einer Implikation, so können wir daraus
die Konklusion folgern.
Intuition
Betrachten wir nochmals die Wahrheitstabelle für die Implikation:
φ ψ φ→ψ
w w w
w f
f
f
w w
f
f
w
Da die Implikation äquivalent zu ⊤ und die Prämisse wahr ist, ist die einzige
Zeile, die übrig bleibt, die folgende:
w w w
Wie wir sehen, muss also die Konklusion wahr sein.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
83
Wir lernen nun noch Schlussregeln kennen, die bekannte Beweisverfahren widerspiegeln. In vielen Vorlesungen werden Sie diese Beweisverfahren wieder hören
(meistens jedoch ohne formale Regel und ohne Erklärung, warum die Regel korrekt ist). Die folgenden Schlussregeln braucht man im Allgemeinen nicht. Sie erlauben uns jedoch, effizienter und natürlicher mit den unseren Beweisen umzugehen.
Fallunterscheidung
φ1 ∨ · · · ∨ φn
φ1 → ψ
ψ
···
φn → ψ
(FU)
Verwendung
Die Regel im Textbeweis…
Fallunterscheidungen verwendet man dann gerne,
wenn man dadurch neue Informationen gewinnen
Fallunterscheidung:
Fall 1:
Fall 2:
...
Fall n:
kann. Es soll zum Beispiel gezeigt werden, dass
der Betrag einer ganzen Zahl z immer positiv ist.
Nun macht man eine Fallunterscheidung nach
z = 0, z > 0 und z < 0, weil wir in diesen Fällen
direkt eine Aussage mithilfe der Definition des
Betrags treffen können. Um einen gültigen Beweis
zu führen, ist es wichtig, dass die Veroderung aller
Fälle äquivalent zu ⊤ ist.
hypothetische Fallunterscheidung
φ1 → ψ · · · φn → ψ
φ1 ∨ · · · ∨ φn → ψ
(H-FU)
Verwendung
Die Regel im Textbeweis…
Die Anwendung der Regel ist sehr ähnlich zu der
Wie bei der Regel (FU) auch.
Regel (FU). Sie wird hauptsächlich genutzt, um
Implikationen zu beweisen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
84
hypothetischer Syllogismus /Transitivität
φ→ψ ψ→ξ
φ→ξ
((→:Bew)-2)
Verwendung
Die Regel im Textbeweis…
Wir wissen zum Beispiel, dass (∀x : P (x)) → (∀y :
Q(y)) und (∀y : Q(y)) → (∀z : R(z)) gilt. Die
Wir wissen, dass φ → ψ und dass
ψ → ξ gilt. Damit wissen wir auch,
Regel erlaubt es uns nun, auf (∀x : P (x)) → (∀z :
R(z)) zu schließen.
dass φ → ξ gilt.
Widerspruch
φ→ξ
falls [ξ≡⊥]
¬φ
(Widersp.)
Verwendung
Die Regel im Textbeweis…
Wir wollen zeigen, dass 0 ∈ R eindeutig ist. Dazu
nehmen wir an, dass 0 nicht eindeutig ist:
Sei ¬φ zu zeigen. Annahme: φ gilt.
(Nun führen wir einige Beweis-
ẋ + ẏ = ẋ ∧ ẏ ̸= 0 → ⊥
(Widersp.)
(Subst)
(∀:Bew)
¬(ẋ + ẏ = ẋ ∧ ẏ ̸= 0)
ẋ + ẏ = ẋ → ẏ = 0
(∀x ∈ R : ∀y ∈ R :
x + y = x → y = 0)
schritte, bis wir zu einer widersprüchlichen Aussage ξ kommen,
d.h. zu einer Aussage ξ ≡ ⊥.) Das
ist ein Widerspruch! (Hier zeichnen
viele Mathematiker einen kleinen
Blitz.) Damit ist die Behauptung
¬φ gezeigt.
Kontraposition
φ→ψ
¬ψ → ¬φ
(KontraP.)
Verwendung
Die Regel im Textbeweis…
Man verwendet die Aussage dann, wenn man
Beweis durch Kontraposition. Wir
die Intuition hat, dass die andere Richtung einfacher ist. Häufig verwendet man Kontraposition
zeigen, dass aus ¬ψ die Aussage ¬φ
folgt.
in Kombination mit Implikationsbeweis und Widerspruchsbeweis: Wir beweisen φ → ψ mit
Kontraposition. Wir können annehmen, dass ¬ψ
gilt. Wir führen die Annahme, dass φ gilt nun zum
Widerspruch.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
85
Wir haben bisher noch keine Umformungen in Gleichungen etc. berücksichtigt,
dies werden wir nun im Folgenden nachholen.
Wie gehe ich mit Umformungen von nicht logischen Ausdrücken um, z.B.
mit arithmetischen Gesetzen? Sehr oft müssen wir in Beweisen Gleiches durch
Gleiches ersetzen. So schreiben wir in der Arithmetik ganz natürlich Dinge wie
3 + (3 + 3) = 3 + 6 = 9.
Hierbei haben wir 3 + 3 durch 6 ersetzt, und dann 3 + 6 durch 9. Denken wir
zurück, was wir in Kapitel 2 gelernt haben: es gibt viele verschiedene Arten von
Gleichheiten, die wir alle Unterscheiden. So haben wir z.B. semantisch (oder logisch) Gleich (als Zeichen ≡) deutlich unterschieden von absolut gleich (als Zeichen =). Auch beim Rechnen müssten wir dies strenggenommen tun, da obige Ausdrücke natürlich syntaktisch höchst verschieden sind, also eigentlich nicht absollut gleich sind. Sie sind jedoch semantisch gleich, da sie die selbe Zahl repräsentieren (nämlich die 9). Da es sehr mühsam ist, stets zwischen all den vielen verschiedenen Gleichheitszeichen zu unterscheiden, und jedesmal ein neues Symbol
einzuführen, benutzen wir für so ziemlich alles, was wir als “gleich” empfinden*,
das selbe Zeichen, nämlich =. Wichtig ist dabei jedoch, stets im Kopf zu behalten,
dass wir nicht immer genau die selbe Gleichheit vor uns haben, sondern nur das
selbe Symbol (“Gleicher Name, aber andere Person”). Alle diese Gleichheiten haben jedoch eine wichtige Eigenschaft gemeinsam: Wenn wir in der Mathematik
schreiben, dass a = b ist (mit dem Zeichen =), so kann ich a in jedem beliebigen
größeren Ausdruck gegen b austauschen und umgekehrt, ohne die Bedeutung des
gesamten Ausdrucks zu verändern.
Aber Achtung: Nicht jede Äquivalenzrelation hat diese Eigenschaft! Von Zeit zu Zeit
werden ihnen Theorien begegnen, wo Dinge zwar als “gleich” betrachtet werden,
man diese aber nicht ohne weiteres gegeneinander austauschen darf. Wir schreiben dann dort aber auch nicht das Symbol = um die Gleichheit zu bezeichnen!
Äquivalenzrelationen, die die Austauscheigenschaft besitzen, nennt man auch
Kongruenzrelationen.
Wann immer wir in der Mathematik das Symbol = für eine Gleichheit benutzen, dann gilt, dass = eine Äquivalenzrelation und eine Kongruenzrelation
ist.
Wie gehen wir damit nun in Beweisen um? Welche Regel wenden wir an? An sich
können wir keine der Regeln, die wir kennengelernt haben, sinnvoll anwenden,
um in einer Aussage z.B. 3 + 3 durch 6 zu ersetzen. Das liegt daran, dass 3 + 3 und
6 selbst keine logischen Aussagen sind, sondern nur als Teil einer logischen Aussage in einem Prädikat vorkommen. Unsere Regeln sprechen jedoch ansich nur
über Aussagen. Dennoch können wir mathematische Gleichheiten in unseren Beweisen verwenden, und müssen dies sogar sehr oft. Wir ziehen dabei eigentlich
jedoch keine logischen Schlüsse, sondern schreiben Ausdrücke einfach nur um, indem wir Gleiches durch Gleiches ersetzen.
*besser: was der erfahrene Mathematiker als gleich empfindet
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
86
Beispiel
Wir haben die logische Aussage ṅ = 6k̇ + 2 für ṅ und k̇ ∈ N. Wir wollen
daraus schließen, dass es ein l˙ ∈ N gibt, so dass ṅ eine gerade Zahl ist, also
dass gilt ṅ = 2 · l.˙
Man beachte zunächst, dass der Ausdruck ṅ = 6k̇ + 2 tatsächlich eine logische Aussage ist, da wir eine Gleichheit wie eine Prädikatanwendung =
(ṅ, 6k̇ + 2) betrachten können, die uns (für konkrete ṅ und k̇) eindeutig wahr
(w) oder falsch (f) liefert. Jetzt wollen wir mathematisch wie folgt umformen:
6k̇ +2 = 2·3k̇ +2 = 2·3k̇ +2·1 = 2·(3k̇ +1). Da wir wissen, dass wir Gleiches
durch Gleiches ersetzen dürfen, schreiben wir die Aussage ṅ = 6k̇ + 2 um zu
der Aussage ṅ = 2 · (3k̇ + 1), und wir folgern dass ∃l : k̇ = 2l gilt!
Als wir soeben die Aussage ṅ = 6 · k̇ + 2 zu der Aussage ṅ = 2 · (3 · k̇ + 1) umgeschrieben haben, haben wir Gleiches durch Gleiches ersetzt. Jedoch mit
welcher Beweisregel? Die einzige Regel die noch irgendwie in Frage kommen könnte, ist die Regel (Subst). Diese passt jedoch nicht, da wir dort nur
Aussagen durch gleiche Aussagen ersetzen dürfen, wobei gleich hier auch heißt:
gleich bezüglich ≡. Wir haben jetzt jedoch arithmetische Ausdrücke durch
arithmetische Ausdrücke ersetzt. Das ist etwas ganz anderes.
Wie wir gesehen haben, besitzen wir leider keine passende Regel für solche Ersetzungen. Unsere Logik kann uns diese auch nicht liefern, da wir ja keine logischen Aussagen betrachten, sondern Ausdrücke der Arithmetik (oder einer anderen spannenden Theorie der Mathematik, je nachdem, worüber wir Beweise
führen). Diese Regel formal komplett richtig aufzuschreiben ist etwas hässlich.
Wir verlassen uns dabei auf unse gute Intuition, und halten einfach fest:
In jeder Aussage darf Gleiches durch Gleiches ersetzt werden, ohne die Aussage in ihrem Wahrheitsgehalt zu verändern!
Um solche Umformungen auch in unsere Textbeweise und Beweisbäume gut einbauen zu können, formulieren wir folgende (etwas intuitiv gehaltene Regel):
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
87
Gleiches-durch-Gleiches
(=-Subst)
φ
falls [A=B]
(φ)[A := B]
d.h., falls sich die Konklusion aus der Prämisse φ ergibt, indem man in φ einen
Ausdruck A durch einen Ausdruck B ersetzt, und wir wissen, dass mathematisch
A = B gilt.
Verwendung
Die Regel im Textbeweis…
Um die Regel anwenden zu können, müssen
wir also stets zeigen, dass die Gleichheit gilt.
Dies müssen wir sehr oft in einem Nebenbeweis
zeigen. Dabei ist, wie immer, jeder Schritt gut zu
begründen.
Im Textbeweis schreiben wir
ganz analog zum Beweisbaum
im Beispiel: Aus ṅ = 6k̇ + 2
folgt ṅ = 2 · (3k̇ + 1) da 6k̇ + 2 =
2·3k̇+2 = 2·3k̇+2·1 = 2·(3k̇+1)a.
ṅ = 6k̇ + 2
ṅ = 2 · (3k̇ + 1)
aauch hier müssten alle Umformungen begründet werden. Wir
lassen sie hier nur aus Platzgründen weg.
(=-Subst) wegen ⋆1
wobei ⋆1 folgende mathematische Gleichheit
bedeutet
6k̇ + 2
(2 · 3 = 6 wg. elementaren Rechenregeln)
=2 · 3k̇ + 2
(da 1 neutrales Element bzlg. Multiplikation))
=2 · 3k̇ + 2 · 1
(Distributivgesetz)
=2 · (3k̇ + 1)
In den Beweisbäumen markieren wir Wahrheiten, die aus diesen Definitionen
stammen durch die Regel (Def). Diese Regel erlaubt es uns, Beweisbäume an ihren
Blättern abzuschließen, so wie wir es bisher z.B. mit den Regeln (W) getan haben.
In Beweisen dürfen wir Aussagen aus Definitionen stets als wahr annehmen, da
eine Definition ja eben sagt: “ich beschließe, dass dies so und so ist!” Definitionen
sind also Wahrheiten per Befehl, und damit nicht anzweifelbar.
Wenn A eine Aussage der Definition ist, so schreiben wir in einem Baum z.B.
(Def)
A
…
..
.
Wir haben die Regel (Def) bisher noch nicht aufgeschrieben, weil sie strengenommen eigentlich nichts anderes ist wie die Regel (Subst) und (W) anzuwenden. Die
Regel (Def) ist also streng genommen nicht notwendig, und wir können ihre Verwendung in einem Baum der Form
(Def)
A
…
..
.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
88
immer ersetzen durch Regelanwendungen der Form
(W)
⊤
(Subst)
A
…
..
.
Umformungen von Definitionen
Wollen wir in einem Beweisbaum zum Beispiel “x gerade” zu ∃k ∈ Z : 2 ·
k = x umformen, so markieren wir diesen Umformungsschritt nicht mit der
Regel (Def), sondern mit der Regel (Subst), da wir logisches Gleiches durch
logisch Gleiches ersetzen.
Wollen wir aber sagen, dass “x ∈ M ” gilt, weil wir die Menge M gerade
als {x} definiert haben, so könnten wir x ∈ M im Beweisbaum mit der Regel (Def)abschließen.
Um auch Beweise abschließen zu können, bei denen auf beiden Seiten einer arithmetischen Gleichung das Gleiche steht, führen wir zuletzt die folgende Regel ein:
Gleiches-ist-Gleich
right=(=-Refl)
(=-Refl)
A=A
Verwendung
Die Regel im Textbeweis…
Im Textbeweis schreiben wir zum
Beispiel: “Da auf beiden Seiten der
Gleichung das Gleiche steht, ist die
Behauptung bewiesen.”
Nun da wir alle Regeln zum Beweisen zusammen haben, wird es Zeit für einen
Überlick. Wir beginnen mit etwas Intuition und einem möglichen Vorgehen fürs
Beweisen.
Intuition
Wir fassen hier nochmals einige wichtige Punkte zusammen, die Sie beim
Arbeiten mit Beweisregeln im Hinterkopf behalten sollten!
(a) Natürlichsprachliche Definitionen (in Deutsch) sind unumgänglich,
wenn wir die Grundgesetze der Mathematik festlegen wollen. Sie beschreiben stets die abstrakten gedanklichen Objekte, die wir nicht
präziser fassen können, als sie mit unserer normalen Sprache zu beschreiben.
(b) Wir führen Logiken als eine formale Sprache ein, die es uns erlaubt,
diese natürlichsprachlichen Beschreibungen ab sofort durch forma-
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
89
le Symbole darzustellen. Die natürlichsprachlichen Definitionen verschwinden damit nicht, wir ersetzen sie nur durch eine neue Schreibweise (also z.B. ∧ anstelle von “und”).
(c) Schlussregeln sind Regeln, die uns erlauben, gedanklich stattfindende
Denkprozesse formal aufzuschreiben. Dazu ist es notwendig, Übersetzungen zwischen Gedankenwelt und formaler Formelwelt zu haben
(die Regeln ((∀:Anw)),((∀:Bew)), ((∧:Anw)),((∧:Bew)) etc.).
(d) Der natürlichsprachliche Anteil in den Schlussregeln ist daher notwendig und unumgänglich. Wir können jedoch, wo es uns sinnvoll erscheint, natürlichsprachliche Zusammenhänge als Formel umschreiben, um so zu zeigen, dass eine Schlussregel tatsächlich sinnvoll ist.
Wir verbinden dabei stets die Prämissen durch Konjunktionen (∧), und
schreiben den Strich der Schlussregel um zu einer Implikation (→).
Da es manchmal sehr umständlich ist, Schlussregeln mit einem Strich zu schreiben, und wir sie manchmal gerne auch innerhalb einer normalen Textzeile schreiben wollen, erlauben wir statt des Striches auch die Notation =⇒. Wir schreiben
dann die Regel ((∧:Bew)) beispielsweise als “φ und ψ (gilt) =⇒ φ ∧ ψ (gilt)”.
Wir wollen hier noch einige Tipps im Umgang mit Beweisen geben, die gerade am
Anfang sehr hilfreich sein können.
In der Praxis …
Umgang mit Beweisen
• Regel 1: Nimm nichts als offensichtlich oder selbstverständlich an!
• Regel 2: Jeder Beweisschritt ist die Anwendung einer Schlussregel!
• Regel 3: Wahr ist nur, was nach Definition gilt und was bereits bewiesen wurde (vorausgegangene Beweisschritte und Sätze etc.). Sonst
nichts!
• Wahr nach Annahme ist jede Behauptung, auch falsche! Wenn wir solche
Dinge benutzen, dann jedoch nur in folgenden Fällen: Wir wollen eine
Implikation beweisen, und nehmen dafür die Prämisse an! ODER: Wir
wollen zeigen, dass die Annahme in Wirklichkeit gar nicht gilt, und
nehmen an, dass sie es tut, um zu einem Widerspruch zu gelangen.
Daher ist es wichtig, nichts für offensichtlich zu halten! (Offensichtlich
ist oft nur: wahr nach meiner Annahme, aber leider doch falsch)
• Im strengen Sinne ist eine Aussage nur dann trivial, wenn sie direkt
nach ihrer Definition wahr ist, ohne dass irgendein logischer Schluss
benötigt wird. Im weiteren Sinne wird dieses Wort benutzt, um auszudrücken, dass der Beweis extrem kurz und einfach ist, und man ihn
deswegen nicht aufschreibt. Wir sollten dies absolut vermeiden! Streichen Sie das Wort “trivial” aus Ihrem aktiven Wortschatz, wenn Sie mit
Beweisen zu tun haben. Gilt etwas nach Definition, dann schreiben sie
einfach “gilt nach Definition”, statt von “trivial” zu reden.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
90
• Ein Beweis ist eine Folge von Implikationen die von w ausgehen, und
zur Aussage selbst führen.
3.5 Beispiele für einfache Beweise
Wir geben Ihnen hier eine Übersicht über einfache Aussagen und ihre Beweise.
In den Übungsaufgaben finden Sie ähnlich schwierige Beweise. Sowohl hier also
auch in den Übungsaufgaben sind die Beweise nach Schwierigkeit sortiert.
Jede natürliche Zahl ist auch rational. Prädikatenlogisch formuliert heißt
n
die Aussage: ∀x ∈ N : x ∈ Q ≡ ∀x ∈ N : ∃n ∈ Z : ∃m ∈ N∗ : x = m
.
Textbeweis: Sei ẋ eine beliebige natürliche Zahl. Es gilt: ẋ = ẋ1 . Nach Definition ist 1 ∈ N und ẋ ∈ N und damit auch in Z. Nach der Definition
von “rational” ist somit die Aussage bewiesen.
Ableitungsbaum: Der Ableitungsbaum sieht wie folgt aus:
(W)
⊤
(Subst)
ẋ = ẋ
(=-Subst)
ẋ =
(∃:Bew)
ẋ
1
∃m ∈ N∗ : ẋ =
(∃:Bew)
ẋ
m
∃n ∈ Z : ∃m ∈ N∗ : ẋ =
(∀:Bew)
n
m
∀x ∈ N : ∃n ∈ Z : ∃m ∈ N∗ : x =
n
m
Wenn p und q Quadratzahlen sind, dann ist auch p · q eine Quadratzahl.
Wir gehen für diesen Beweis in mehreren Schritten vor:
Prädikat: Wir definieren uns ein Prädikat Quadratzahl: P (x) := “∃n ∈ N :
x = n2 ”
Aufstellen der Aussage: Nun stellen wir die Aussage: ∀p ∈ N : ∀q ∈ N :
P (p) ∧ P (q) → P (p · q) auf.
Textbeweis: Seien ṗ und q̇ beliebige natürliche Zahlen. Wir können annehmen, dass ṗ und q̇ Quadratzahlen sind, d.h. dass es natürliche Zahlen k̇
˙ k̇· l).
˙
und l˙ gibt, so dass ṗ = k̇ 2 und q̇ = l˙2 . Dann gilt ṗ· q̇ = k̇ 2 · l˙2 = (k̇· l)·(
˙
Damit ist der Existenzquantor (mit k̇ · l) und damit die Aussage bewiesen.
Beweisbaum: Der “Hauptbeweisbaum” sieht wie folgt aus:
(→:Bew)
(∃n ∈ N : ṗ = n2 ) ∧ (∃n ∈ N : q̇ = n2 ) → (∃n ∈ N : ṗ · q̇ = n2 )
(∀:Bew)
∀q ∈ N : (∃n ∈ N : ṗ = n2 ) ∧ (∃n ∈ N : q = n2 ) → (∃n ∈ N : ṗ · q = n2 )
(∀:Bew)
∀p ∈ N : ∀q ∈ N : (∃n ∈ N : p = n2 ) ∧ (∃n ∈ N : q = n2 ) → (∃n ∈ N : p · q = n2 )
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
91
Der Beweis der Implikation sieht wie folgt aus:
(W)
⊤
(Subst)
ṗ · q̇ = ṗ · q̇
(=-Subst)
ṗ · q̇ = k̇ 2 · l˙2
(=-Subst)
˙ · (k̇ · l)
˙
ṗ · q̇ = (k̇ ′ · l)
(∃:Bew)
∃n ∈ N : ṗ · q̇ = n2
Schließlich müssen wir noch die beiden Anwendungen von (=-Subst)
begründen. Die erste Umformung von unten begründet sich mit der
Assoziativität und Kommutativität der Multiplikation, für den zweiten
Schritt brauchen wir noch zwei Beweisbäume, die mit den Annahmen,
die wir aus dem Implikationsbeweis erhalten, enden:
∃k ∈ N : ṗ = k 2 ∧ ∃k ∈ N : q̇ = k 2
(Subst)
∃k ∈ N : q̇ = k 2 ∧ ∃k ∈ N : ṗ = k 2
(∧:Anw)
∃k ∈ N : ṗ = k 2
(∃:Anw)
ṗ = k̇ 2
∃k ∈ N : ṗ = k 2 ∧ ∃k ∈ N : q̇ = k 2
(∧:Anw)
∃k ∈ N : q̇ = k 2
(∃:Anw)
q̇ = l˙2
a teilt b genau dann, wenn b kongruent 0 modulo a ist. Wir gehen auch in
diesem Beweis in mehreren Schritten vor.
Prädikate: “a teilt b” ist ein zweistelliges Prädikat, welches wir mit T bezeichnen und wie folgt definieren: T (a, b) :=“∃k ∈ Z : a · k = b”. “b kongruent 0 modulo a” ist ebenfalls ein zweistelliges Prädikat. Im Folgenden nennen wir es M und nutzen die folgende Definition: M (a, b) :=
“∃k ∈ Z : 0 = k · a + b”.
Aufstellen der Aussage: ∀a ∈ Z : ∀b ∈ Z : T (a, b) ↔ M (a, b)
Textbeweis: Seien ȧ,ḃ beliebige ganze Zahlen.
“⇒”: Wir nehmen an, dass ȧ die Zahl ḃ teilt, d.h. es gibt ein k̇ in Z, so
dass ȧ · k̇ = ḃ. Wir können in dieser Gleichung ḃ auf beiden Seiten
subtrahieren und erhalten so 0 = ȧ · k̇ − ḃ. Multiplikation der Gleichung mit −1 liefert 0 = −(ȧ · k̇) + ḃ. Umformungen liefern dann
0 = ȧ · (−k̇) + ḃ. Damit haben wir ein k in Z gefunden (nämlich −k̇),
welches den Existenzquantor von M (ȧ, ḃ) erfüllt.
“⇐”: Wir nehmen an, dass M (ȧ, ḃ) gilt, also dass 0 = ȧ · k̇ + ḃ für ein k̇
aus Z. Subtraktion von ȧ· k̇ liefert −(ȧ· k̇) = ḃ. Wir können die Gleichung umformen zu ȧ · (−k̇) = ḃ. Damit haben wir ein k gefunden
(nämlich −k̇), welches den Existenzquantor von T (ȧ, ḃ) beweist.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
3 Schließen und Beweisen
92
Da wir beide Implikationen bewiesen haben, folgt die Behauptung.
Beweisbaum: Der
Hauptbeweisbaum
sieht
(→:Bew)
wie
folgt
aus:
(→:Bew)
T (ȧ, ḃ) → M (ȧ, ḃ)
M (ȧ, ḃ) → T (ȧ, ḃ)
(∧:Bew)
(T (ȧ, ḃ) → M (ȧ, ḃ)) ∧ (M (ȧ, ḃ) → T (ȧ, ḃ))
(Subst)
T (ȧ, ḃ) ↔ M (ȧ, ḃ)
(∀:Bew)
∀b ∈ Z : T (ȧ, b) ↔ M (ȧ, b)
(∀:Bew)
∀a ∈ Z : ∀b ∈ Z : T (a, b) ↔ M (a, b)
Da die Beweisbäume für die beiden Implikationsbeweise sehr ähnlich
sind, werden wir nur der ersten von beiden hier angeben:
ḃ = ȧ · k̇
(=-Subst)
0 = ȧ · k̇ − ḃ
(=-Subst)
0 = −(ȧ · k̇) + ḃ
(=-Subst)
0 = ȧ · (−k̇) + ḃ
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Beweisen, die
Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen.
Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Beweisen
zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige im Kapitel gelernt und verstanden haben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
4 Mengen
Menge! Dieser Begriff kommt Ihnen wahrscheinlich schon aus der Schule bekannt
vor. Da gab es Lösungsmengen, Definitionsmengen, Mengen von Zahlen, Punkten, und anderen Objekten, Wertemengen und noch viele andere Arten von Mengen. Obwohl Sie also das Konzept der “Menge” schon kennen, betrachten wir in
diesem Kapitel erneut Mengen. Dies liegt daran, dass wir zum einen die Verbindung von Logik und Mengen herausarbeiten wollen, und damit einen Schritt über
die Schulmathematik hinausgehen, auf der anderen die Informatik und die Mathematik ohne Mengen nicht existieren könnten. Ein fundiertes Grundwissen
und eine gute Intuition über Mengen ist für jeden Informatiker und Mathematiker (fast) unerlässlich.
Wir wollen nun aber das Kapitel beginnen mit einer Definition des Konzept der
Menge.
Menge
Eine Menge ist eine Zusammenfassung bestimmter, wohl unterschiedener
Objekte unserer Anschauung oder unseres Denkens, welche die Elemente der
Menge genannt werden, zu einem Ganzen. Die Objekte können beliebige Dinge sein, z.B. Zahlen, Punkte, Gegenstände, Körper, sogar wiederum Mengen
selbst.
Die Tatsache, dass wir Mengen scheinbar nur durch deutsche Worte beschreiben
können, sollte uns hier zurecht stutzig machen. Mengen sind, ähnlich wie Zahlen
oder Liebe (siehe Vorwort) ein abstraktes Konzept des Geistes, welches schwer ist,
mit Worten konkret zu fassen.
Wie wir noch sehen werden, hat genau diese Art Mengen zu definieren, aber ein
gemeines Problem, auf das wir noch am Ende des Kapitels eingehen werden. Da
das Problem aber für viele praktische Anwendungen keine Rolle spielt, genügt uns
diese Definition erst einmal und wir werden sie im Folgenden genauer betrachten.
Wir schlüsseln nun auf, was die Definition von Menge uns sagt. Bestimmte, wohl unterschiedene Objekte unserer Anschauung oder unseres Denkens heißt salopp formuliert
nur, dass in eine Menge nur das reingehört, was wir sehen oder uns vorstellen
und eindeutig von allen anderen Dingen unterscheiden können. Niemand verbietet uns, nur Zahlen in eine Menge zu legen, wie die folgenden beiden Beispiele zeigen. Ein grundlegendes Konzept von Mengen ist auch, dass eine Menge ein Objekt
nur maximal einmal enthalten kann. Egal wie häufig ich etwas in eine Menge reinstecke, es wird immer nur einmal enthalten sein. Dies korrespondiert mit der Idee,
dass jedes Objekt des Denkens nur ein einziges Mal existiert. Die Zahl 10 (nicht ihr
Symbol!) gibt es nur einmal. Es gibt keine zwei verschiedenen Dinge, die 10 sind.
Höchstens verschiedene Darstellungen, wie 10, 1 + 9 oder 3 + 7. Daher gibt es auch
keinen Sinn, ein solches Objekt mehrmals in eine Menge tun zu wollen.
93
Menge
Elemente der Menge
4 Mengen
94
Beispiel
(a) {1, a, 2, ∅} ist eine Menge mit den Elementen 1, 2, a und ∅, welches
selbst eine Menge ist (die leere Menge).
(b) In Abbildung 22 wollen wir das Konzept der Menge nochmals auf andere Art veranschaulichen. Wir betrachten für dieses Beispiel zwei geometrische Objekte als unterscheidbar, wenn sie nicht übereinander liegen. Dann gilt für unsere Darstellung: Die Ansammlung von geometrischen Objekten ganz links ist keine Menge, da das rot-braune Dreieck
und das blaue Rechteck übereinander liegen. Die Ansammlung in der
Mitte und auf der rechten Seite bezeichnen beide Mengen. Wir können
alle Objekte voneinander unterscheiden, wir können diese Elemente
alle sehen. Darüber hinaus ist es sogar die gleiche Menge: Die Dopplung des blauen Rechtecks in der rechten Menge spielt keine Rolle, da
eine Menge jedes Element nur einmal enthält.
Abbildung 22: Visualisierung einer Menge
Im Folgenden wollen wir verschiedene Arten kennenlernen, wie man Mengen aufschreiben kann. Aber egal wie wir eine Menge aufschreiben, die Definition von
Mengen müssen wir im Hinterkopf behalten. Sie sollten sich vorher noch eigenständig ein paar Gedanken über die Definition des Konzepts “Menge” machen. Dabei kann Ihnen Aufgabe 25 helfen.
Versuch es selbst! – Aufgabe 25: Diskussion über die Definition von
Mengen
Stellen Sie sich vor, es gibt eine Sprache, die Sie nicht verstehen. Sie bekommen nun die Schriftzeichen und sollen diese in eine Menge packen. Kann es
Fälle geben, in denen ein und das selbe Schriftzeichen mehrfach in einer Menge auftreten kann? Wenn ja, konstruieren Sie so einen Fall. Ansonsten erklären Sie, warum es keinen solchen Fall geben kann.
Für die Physiker unter Ihnen: Diskutieren Sie inwieweit man Quanten in Mengen
zusammenfassen kann? Oder “Schrödinger’s Katze”?
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
95
4.1 Schreibweisen von Mengen
Im Wesentlichen unterscheidet man zwei verschiedene Aufschreibweisen für
Mengen. Die Schreibweise, die Sie vermutlich aus der Schule kennen, ist die Aufzählung. Wir listen alle Elemente auf, und drücken die Tatsache, dass wir sie zu einer Menge zusammenfassen, durch geschweifte Klammern um alle Elemente herum aus. Im folgenden Beispiel schreiben wir zwei verschiedene Mengen aufzählend auf.
Beispiel
(a) Die Zeichenfolge {1, 2, 3, 4} bezeichnet die Menge mit den Elementen 1, 2, 3 und 4. Ebenso bezeichnet der Ausdruck {1, 4, 2, 3} diese
Menge. Die Reihenfolge, in der wir die Elemente aufschreiben, spielt
für die Menge selbst keine Rolle. Ebenso wenig wie häufig wir ein
Element aufschreiben, wenn wir es mindestens einmal aufschreiben.
Auch {1, 1, 1, 1, 2, 3, 4, 4, 4} ist die selbe Menge.
(b) Die Menge von geometrischen Objekten aus Abbildung 22 würden wir
dann wie in Abbildung 23 notieren.
Aus der Schule kennen Sie diese Schreibweise vermutlich vor allem zur Notation
von Lösungsmengen. Haben Sie zum Beispiel die Gleichung x + 7 = 9 gelöst, so
haben sie wahrscheinlich die Lösungsmenge notiert als L = {2} notiert.
{
,
,
,
,
,
}
Abbildung 23: Aufzählende Notation einer Menge
Auch wir haben diese Schreibweise schon verwendet, zum Beispiel wenn wir die
Menge der geraden bzw. ungeraden Zahlen ({0, 2, 4, 6, 8, . . . } bzw. {1, 3, 5, 7, . . . })
angeben wollten *.
Die Beispiele offenbaren jedoch zwei Probleme beim aufzählenden Aufschreiben
von Mengen. Zum einen handelt es sich um eine Art “Intelligenztest”, da vom Leser
erwartet wird, dass er genau weiß, wie die Reihe von Zahlen fortzusetzen ist.
Versuch es selbst! – Aufgabe 26: Ein Anfang mit vielen Enden
Stellen Sie sich vor, es ist nur die Menge {1, 2, . . . } gegeben. Wie viele verschiedene Möglichkeiten finden Sie die Menge fortzusetzen?. Finden Sie
auch verschiedene Möglichkeiten die Menge {1, 2, 4, . . . } und {1, 2, 4, 8, . . . }
fortzusetzen?
Zum anderen eignet sich die Darstellung nicht, um formale Beweise über Mengen
zu führen, da wir die “Punkte (…)” nicht formal fassen können. Dies macht es uns
zum Beispiel schwer, Argumente über die Menge der geraden Zahlen zu führen.
Daher führen wir im Folgenden Mengen auf Logik (genauer gesagt auf Prädikate)
zurück, da sich, wie wir im vorangegangenen Kapitel gesehen haben, Logik sehr
gut in Beweisen verwenden lässt.
*Achtung: Ihre Intuition über Zahlen hat Ihnen hier geholfen die restlichen Elemente der Menge zu
erraten!
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Aufzählung
4 Mengen
Prädiktenschreibweise
96
Für Mengen mit vielen Elementen, insbesondere mit unendlich vielen Elementen, benutzt man daher die sogenannte Prädiktenschreibweise. Ist U unser Universum und P ein Prädikate über U, so ist {x | P (x)} eine prädikate Schreibweise für
eine Menge. {x | P (x)} ist zu lesen als x (aus dem Universum U) ist in der Menge
enthalten, wenn P (x) gilt, also P (x) zu wahr auswertet.
Versuch es selbst! – Aufgabe 27: Aufzählend vs. Prädikativ
Wir können übrigens jede aufzählende Schreibweise auch in Prädiktenschreibweise aufschreiben. Wie?
Im Vorkurs und auch später im Studium werden die meisten Mengen in prädikativer Schreibweise angegeben. Daher werden wir einige Zeit darauf verwenden, die
prädikative Schreibweise und alles, was darauf aufbaut, genauer zu beleuchten.
Beispiel
Im folgenden Beispiel sei das Universum U = R
• {1, 2, 3, 4} = {x | x = 1 ∨ x = 2 ∨ x = 3 ∨ x = 4} (in ähnlicher Art
und Weise kann jede endliche Menge in eine prädikate Schreibweise
gebracht werden).
• Die Menge der Quadratzahlen Q ist definiert als Q := {n2 | n ∈ N}.
Zum Beweisen ist es natürlich von Vorteil, das Prädikat (genauer, die Aussageform) innerhalb der Menge möglichst formal aufzuschreiben, d.h. als logische Formel. Später werden, vor allem wenn die daraus resultierende logisch Formel eindeutig herzuleiten ist, das Prädikat mit natürlicher Sprache beschrieben.
4.2 Wichtige Prädikate über Mengen
Wenn wir Beweise über Mengen führen, dann müssen wir häufig über die Elemente der Menge reden. Die folgende Definition zeigt, dass wir über Elemente einer
Menge nur annehmen dürfen, dass sie das Prädikat der Menge erfüllen. Die Prädikatenschreibweise hilft uns nun dabei, die “ist-Element-von”-Beziehung exakt
aufschreiben.
Definition 21 (“ist-Element-von” - Beziehung) Sei M = {x | P (x)}. Dann
v ∈ M := P (v).
Die “ist-Element-von”-Beziehung ist ein zweistelliges Prädikat, welches ein Element aus dem Universum U und eine Menge nimmt und einen Wahrheitswert zurückgibt.*
*Wir können als Universum nicht U × Menge aller Mengen nehmen, warum, sehen wir am Ende dieses
Kapitels.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
97
Beispiel
Betrachten wir zum Beispiel die Menge der geraden Zahlen G := {x |
x ist eine gerade Zahl} = {x ∈ Z | ∃k ∈ N : x = 2 · k}. Das Prädikat der
Menge kann man definieren als P (x) := ∃k ∈ N : x = 2 · k. Dann wertet zum Beispiel P (1) zu f aus, da 21 keine natürliche Zahl ist. P (2) hingegen
wertet zu w aus, da 2 · 1 = 2 gilt und damit der Existenzquantor bewiesen ist.
Versuch es selbst! – Aufgabe 28: Bevor Sie weiterlesen...
…versuchen Sie formal zu beweisen, was wir im Beispiel eben skizziert haben.
Wir werden nun einmal vorführen wie man zeigen kann, dass zum Beispiel 1 nicht
in der Menge der geraden Zahlen enthalten ist. Die Hauptbeweisidee ist, dass es
die Aussage ∃k ∈ Z : 2 · k = 1 logisch äquivalent zu falsch ist. Wir führen einen
Beweis durch Widerspruch.
Beweis.
Behauptung: 1 ist nicht in G enthalten
Ableitungsbaum:
(→:Bew)
1∈G→⊥
(Widersp.)
1 ̸∈ G
1∈G
(Subst)
∃k ∈ Z : 2 · k = 1
(Subst)
⊥
Textbeweis: Um einen Widerspruch zu erreichen, nehmen wir an, dass 1 ∈ G
gilt. Nach Definition gilt dann: ∃k ∈ Z : 2 · k = 1. Dies ist aber nicht möglich, also
logisch äquivalent zu ⊥. Also haben wir einen Widerspruch.
Wenn wir über Mengen und ihre Elemente reden, dann nehmen wir stets (implizit) an, dass alle Elemente aus einer Grundmenge U, dem Universum, stammen.
Diese Menge U kann beliebig kompliziert sein, und selbst wiederum beliebig verschachtelte Mengen enthalten. Selbst wenn wir ein Element v nicht genauer mit
Hilfe des ∈ Operators einschränken, dann nehmen wir immer an, dass v ∈ U gilt.
Versuch es selbst! – Aufgabe 29: Mengenprädikate
Ist ein Mengenprädikat, also ein Prädikat, welches eine Menge wie oben definiert, immer einstellig?
Eine besondere Menge, die uns sehr häufig begegnen wird, ist die leere Menge ∅.
Sie enthält kein Element. Wenn wir sie mit Hilfe der Prädikatenschreibweise definieren wollen, dann ist das Prädikat P , genauer die Aussageform, die sie spezifiziert, P (x) := ⊥. Denn damit gilt für alle v ∈ U, dass P (v) ≡ ⊥, und damit v ̸∈ ∅.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
4 Mengen
98
Definition 22 (Leere Menge) ∅ := {x | ⊥}
Um die leere Menge zu definieren funktionieren auch alle Prädikate, die logisch
äquivalent zu ⊥ sind, z.B. beschreiben die Mengen {x | 1 = 2} bzw. {x | ⊤ ≡ ⊥}
ebenso die leere Menge.
Intuition
Im Folgenden wollen wir Mengen mit Töpfen vergleichen. Stellen wir uns
einen Topf mit Essen darin vor, so haben wir eine Menge mit Elementen,
die selbst keine Mengen sind. Wir gehen davon aus, dass wir keinen TopfEintopf essen möchten. Wir können das Essen aus verschiedenen Töpfen zusammenbringen oder das Essen aus einem Topf trennen (z.B. das Suppenfleisch aus der Suppe herausnehmen).
Versuchen wir aber nun Töpfe platzsparend im Schrank unterbringen, so stapeln wir sie oft ineinander. Das können wir mit Mengen von Mengen vergleichen. Beim Spülen haben wir sogar Töpfe, die wiederum Töpfe und Essen
gleichzeitig enthalten. Auch dies hat eine Entsprechung in der Mengenlehre: Wir können Mengen haben, die sowohl Nicht-Mengen als auch Mengen
enthalten.
Wir wollen nun nochmals die verschiedenen Mengenkonzepte, die wir mit
Töpfen dargestellt haben, an einem konkreten mathematischen Beispiel verdeutlichen: {1, 2, 3, 4} ist eine Menge, die Elemente enthält (Topf mit Essen),
{∅, {∅}} ist eine Menge von Mengen, die sogar wieder eine Menge mit einer Menge enthält (Töpfe im Schrank stapeln) und {1, 2, 3, 4, ∅, {∅}} ist eine
Menge, die beides enthält – sowohl Elemente als auch Mengen (die Situation
beim Spülen).
Versuch es selbst! – Aufgabe 30: Darstellungen von Mengen
Überlegen Sie sich den Unterschied zwischen 2, {2}und{{2}}.
Teilmengenbeziehung
Im Folgenden definieren wir Prädikate zwischen Mengen. Wir beginnen mit der
sogenannten Teilmengenbeziehung. Wir nennen A eine Teilmenge von B, falls jedes
Element von A auch in B enthalten ist. Um diesen Umstand symbolisch und formal festzuhalten, definieren wir einen Vergleichsoperator ⊆, der zwei Mengen
nimmt, und w oder f. Anders gesagt ist ⊆ ein zweistelliges Prädikat über Mengen.
Definition 23 (Teilmengenbeziehung (Inklusion)) A ⊆ B := ∀x : x ∈ A →
x∈B
Oft begegnet uns eine andere prädikatenlogische Charakterisierung der Teilmengenbeziehung. Deshalb wollen wir sie auch hier festhalten:
Satz 2 (Äquivalente Charakterisierung der Teilmengenbeziehung)
A ⊆ B ≡ ∀x ∈ A : x ∈ B*
*machen Sie sich klar, dass dies eine einfache prädikatenlogische Umformung der Aussage ist. OffTopic: Wie müssten Sie die Aussage ∃x ∈ A : P (x) umformen, wenn Sie sie in die Form ∃x : x ∈
A . . . bringen wollen?
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
99
Intuition
Intuitiv dürfte die Teilmengenbeziehung für Sie nichts Neues zu sein. Bereits
in der Schule lernen Sie die folgende Inklusionshierarchie kennen:
N⊆Z⊆Q⊆R
Achtung: Die Inklusion, die wir hier angeben, ist eine abkürzende Schreibweise für N ⊆ Z ∧ Z ⊆ Q ∧ Q ⊆ R. Das bedeutet, dass jede natürliche Zahl auch
eine ganze, rationale bzw. reelle Zahl ist. Die Umkehrung
gilt übrigens nicht:
√
Nicht jede reelle Zahl ist auch rational (siehe 2 ̸∈ Q).
Eine weitere wichtige Beziehung zwischen Mengen, ist die Gleichheit. Über die Teilmengenbeziehung kann man auch Gleichheit von Mengen definieren. Allgemein
sieht man zwei Mengen als gleich an, wenn sie die gleichen Elemente behalten.
Definition 24 (Mengengleichheit) A = B ↔ A ⊆ B ∧ B ⊆ A.
Intuitiv sind zwei Mengen A und B also gleich, wenn jedes Element der Menge A
auch in der Menge B und jedes Element der Menge B auch in der Menge A enthalten ist.
Bisher haben wir als Inklusion nur die Teilmengenbeziehung gesehen, bei der
zwei Mengen auch gleich sein dürfen, d.h. A = B für zwei Mengen A und B impliziert, dass A ⊆ B. In vielen Kontexten wollen wir aber auch die echte Inklusionen
ausdrücken können, d.h. eine Teilmengenbeziehungen, bei denen die beiden Mengen nicht gleich sind. Dafür verwendet man die folgende Definition.
Definition 25 (Echte Teilmengenbeziehung (echte Inklusion)) A ⊊ B :=
A ⊆ B ∧ ¬(A = B)
Eine alternative Schreibweise ist auch A ⊂ B. Allerdings verwenden manche Autoren diese Schreibweise auch für A ⊆ B. Man muss hier also bei späteren Vorlesungen und in anderen Büchern aufpassen, was genau gemeint ist. In diesem
Skript werden wir diese Schreibweise daher (zumindest absichtlich) nicht verwenden.
Beispiel
Die Inklusion, die wir eben schon einmal angegeben haben, ist eine echte, es
gilt also:
N⊊Z⊊Q⊊R
Die Inklusion ist echt, weil z.B. −1 ̸∈ N,
1
2
̸∈ Z und
√
2 ̸∈ Q.
Wir wollen im Folgenden zwei Aussagen beweisen, die zentrale Eigenschaften der
Mengenprädikate charakterisieren.
Satz 3 (Wichtige Teilmengenbeziehungen)
• ∀M : M ⊆ M
• ∀M : ∅ ⊆ M
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Gleichheit
4 Mengen
100
Beweis von Satz 3.
• ∀M : M ⊆ M :
(→:Bew)
ẋ ∈ Ṁ → ẋ ∈ Ṁ
(∀:Bew)
∀x : x ∈ Ṁ → x ∈ Ṁ
(Subst)
Ṁ ⊆ Ṁ
(∀:Bew)
∀M : M ⊆ M
Nun müssen wir noch die Implikation ẋ ∈ Ṁ → ẋ ∈ Ṁ beweisen. Da die
Prämisse und Konklusion übereinstimmen, ist dies sehr einfach. Prinzipiell
reicht es hier auch aus, nichts zu beweisen, sondern den Implikationsbeweis
als abgeschlossen zu betrachten.
ẋ ∈ Ṁ
(Subst)
ẋ ∈ Ṁ
Sei Ṁ eine beliebige Menge (∀:Bew). Wir müssen zeigen, dass ∀x : x ∈ M →
x ∈ M gilt ((Subst) mit der Definition von “⊆”). Sei ẋ ∈ M beliebig ((∀:Bew),
(→:Bew)). Nun müssen wir zeigen, dass dann auch x ∈ M gilt. Da das gerade
unsere Annahme ist, folgt die Behauptung*.
• ∀M : ∅ ⊆ M :
(→:Bew)
ẋ ∈ ∅ → ẋ ∈ Ṁ
(∀:Bew)
∀x : x ∈ ∅ → x ∈ Ṁ
(Subst)
∅ ⊆ Ṁ
(∀:Bew)
∀M : ∅ ⊆ M
Nun müssen wir die Implikation beweisen:
ẋ ∈ ∅
(Subst)
⊥
(Impl)
ẋ ∈ Ṁ
Und so können wir den Beweis als Text notieren:
Sei Ṁ eine beliebige Menge (∀:Bew). Wir müssen hier nun zeigen, dass ∀x :
x ∈ ∅ → x ∈ M gilt (Subst). Sei ẋ ∈ ∅ beliebig (∀:Bew) (→:Bew). Dies ist
*Der entsprechende Beweisbaum für den Schluss von x ∈ M auf x ∈ M ist minimal, da die Prämisse
schon gleich der Konklusion ist.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
101
aber für alle ẋ ∈ U nach Definition der leeren Menge falsch ((=-Subst) mit
der Definition von “∈”). Damit wird die Implikation in der Definition für alle
ẋ wahr und die Aussage gilt.
Bemerkung 9. Beachten Sie, dass ∅ ⊆ M für jede beliebige Menge M gilt, die leere Menge also Teilmenge jeder Menge ist. Insbesondere gilt also auch ∅ ⊆ ∅.
Achtung: Das ist nicht das selbe wie zu sagen: ∅ ∈ M . Diese Aussage gilt im Allgemeinen nicht. So ist z.B. ∅ ∈
/ ∅, da die leere Menge nichts enthält, und damit auch
nicht die leere Menge. Verwechseln Sie also nicht die Begrifflichkeiten “Teilmenge
sein”, und “Teil einer Menge sein (= Element einer Menge sein)”.
Intuition
Wir wollen nochmals die wichtigen Konzepte dieses Kapitels mithilfe von
Töpfen visualisieren: Ein Topf A ist Teiltopf von einem Topf B, falls alles,
was in A drin ist, auch in B ist. D.h. um Topf A aus Topf B zu enthalten, darf
höchstens weniger als B, aber nichts anderes darin sein. Ein Topf ohne Inhalt entspricht der leeren Menge.
Bemerkung 10. Ganz oft spielt die leere Menge in mathematischen Aussagen
und Beweisen eine ganz besondere, aber auch sehr seltsame Rolle.
Betrachten wir einmal alle Mengen, die ausschließlich gerade Zahlen enthalten.
Eine solche Menge wäre z.B. {2, 4, 10, 84}, oder aber auch {x ∈ N | ∃k ∈ N : x =
2 · k}.
Ebenso ist aber auch ∅ eine solche Menge! Überlegen wir uns einmal genau, weshalb: Wenn eine Menge M ausschließlich gerade Zahlen enthalten soll, dann muss
jedes ihrer Elemente x gerade sein (also das Prädikat gerade(x) muss w liefern).
Formal, mithilfe des Prädikats gerade, können wir das dann so schreiben: ∀x ∈
M : gerade(x). Mit Hilfe unserer Umformungsregeln erhalten wir nun ∀x ∈ M :
gerade(x) ≡ ∀x : x ∈ M → gerade(x) ≡ ∀x : x ∈
/ M ∨ gerade(x). Wenn nun
M = ∅ gilt, dann wissen wir, dass x ∈
/ ∅ ≡ ⊤ gilt, daher können wir in diesem
Fall schreiben ∀x : ⊤ ∨ gerade(x), was wiederum äquivalent ist zu ∀x : ⊤ ≡ ⊤.
Also erfüllt jedes beliebige Element der leeren Menge (von denen es ja gar keine
gibt) die Eigenschaft gerade. Dies geht mit jeder beliebigen Eigenschaft, nicht nur
mit geraden Zahlen.
Merke: Die leere Menge erfüllt jede Eigenschaft, die nur von den Eigenschaften
ihrer Elemente abhängt!
Anders ist dies jedoch, wenn die gewünschte Eigenschaft nicht alleine von den Eigenschaften der Elemente abhängt. So ist die leere Menge keine Menge, die alle geraden Zahlen enthält. Dazu müsste sie ja auch wirklich Elemente enthalten, da
wir wissen, dass es gerade Zahlen gibt. Alle geraden Zahlen zu enthalten ist eine
Eigenschaft einer Menge, die nicht alleine von den Eigenschaften der einzelnen
Elemente abhängt. Noch etwas genauer gesagt: Wann immer in der Menge etwas
existieren muss (also explizit oder implizit mit einem Existenzquantor quantifiziert wird), dann erfüllt die leere Menge diese Eigenschaft nicht. Ganz trivial gilt
dies zum Beispiel für die Eigenschaft ∃x ∈ N : x ∈ ∅, die für die leere Menge nicht
gilt.
Im folgenden Abschnitt werden wir ein weiteres Merkmal von Mengen kennenlernen, nämlich die Anzahl ihrer Elemente.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
4 Mengen
102
4.3 Kardinalität oder Mächtigkeit von Mengen
Wenn wir praktische Anwendungen mit Hilfe von Mengen notieren wollen, wie
zum Beispiel die Nutzer einer Internet-Platform (hier soll ja kein Nutzer zweimal
vorkommen), ist vor allem auch die Anzahl der Elemente einer Menge sehr wichtig.
Kardinalität
Kardinalität
Die Anzahl der unterschiedlichen Elemente einer endlichen Menge M bezeichnet man als deren Kardinalität oder Mächtigkeit. Wir schreiben |M |, um
die Kardinalität einer Menge aufzuschreiben.
Für endliche Mengen ist die Kardinalität einer Menge sehr einfach zu bestimmen,
wie die folgenden Beispiele zeigen.
Beispiel
(a) |{1, 2, 3, a}| = 4.
(b) |∅| = 0.
(c) |{∅}| = 1
(d) |{{{{∅}}}}| = 1
(e) |{{{{∅}, ∅}}}| = 1
(f) |{{{{∅}, ∅}}, ∅}| = 2
Aber auch bei unendlichen Mengen gibt es Unterschiede der Anzahl der Elemente.
Ja, das heißt, dass es verschiedene “unendlich” gibt. Dies wollen wir im Folgenden
genauer fassen.
Die Menge N aller natürlichen Zahlen z.B. enthält unendlich viele Elemente. Den
Begriff der Kardinalität für unendliche Mengen zu definieren ist nicht so einfach.
Wir beginnen daher mit einigen verblüffenden Beispielen. So gilt z.B. N ⊊ N ∪
{∅}, da ∅ ∈
/ N. Jedoch ist die Kardinalität beider Mengen gleich! Ebenso ist die
Kardinalität von N, Z und Q gleich! Die Kardinalität von R ist jedoch echt größer
als die dieser Mengen.
Versuch es selbst! – Aufgabe 31: Kardinalität
Welches Vorwissen haben Sie schon zur Kardinalität unendlicher Mengen?
Können Sie sie noch definieren? Falls nicht, wie würden Sie sie definieren?
Die Definition der Kardinalität baut auf dem Konzept der “Funktion” auf. Wir wollen hier kurz die Intuition dieser Idee vorwegnehmen, jedoch im folgenden Kapitel nochmals darauf zurückgehen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
103
Intuition
Aus der Schule kennen sie vielleicht noch bijektive Funktionen. Hier eine kurze
Beschreibung: Bijektive Funktionen sind Mengen, bei denen jedes Element
der einen Menge auf exakt ein Element der anderen Menge abgebildet werden. Bijektive Funktionen sind zum Beispiel die Identität f : N → N, x 7→ x
oder f : N → {n2 | n ∈ N}, x 7→ x2 .
Zwei unendliche Mengen A und B haben nun die gleiche Kardinaliät, wenn
es eine Bijektion von A nach B gibt.
Wie wir im nächsten Kapitel zeigen werden, kann man sehr einfach Bijektion von N nach Z und von N nach Q finden, aber keine Bijektion von N, Z oder
Q nach R.
4.4 Potenzmenge
Zu einer Menge M bezeichnet P(M ) die Potenzmenge von M . Die Potenzmenge einer Menge ist die Menge aller Teilmengen.
Definition 26 (Potenzmenge) P(M ) := {Y | Y ⊆ M }
Die Potenzmenge zu konstruieren, ist schon für kleine Mengen relativ aufwendig.
Das folgende Beispiel für eine drei-elementige Menge verdeutlicht dies schon sehr
gut.
Beispiel
Für M = {1, 2, a} gilt:
P(M ) = {∅, {1}, {2}, {a}, {1, 2}, {1, a}, {2, a}, {1, 2, a}}
Die “Aufwendigkeit”, die wir eben schon erwähnt haben, lässt sich formal auch
sehr gut fassen.
Versuch es selbst! – Aufgabe 32: Mächtigkeit der Potenzmenge
Versuchen Sie selbst, bevor Sie weiterlesen, eine Hypothese darüber aufzustellen, was die Mächtigkeit der Potenzmenge einer endlichen Menge ist.
Zur Verdeutlichung, wie man solche Behauptungen aufstellt, verdeutlichen wir
hier das Vorgehen: Die Idee ist, anhand einiger einfacher Beispiele, eine Vermutung aufzustellen, die man schließlich beweisen kann.
Wir beginnen mit der Menge mit der kleinsten Kardinalität und machen dann die
Kardinalität Schritt für Schritt größer.
• Die Kardinalität 0 hat nur die leere Menge, die Potenzmenge der leeren Menge, ist {∅} (Kardinalität 1)
• Die Kardinalität 1 haben alle Mengen mit genau einem Element, zum Beispiel {1}. Die Potenzmenge dieser Menge ist {∅, {1}} (Kardinalität 2).
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Potenzmenge
4 Mengen
104
• Die Kardinalität 2 haben alle Mengen mit genau zwei Elementen, zum Beispiel {1, 2}. Die Potenzmenge dieser Menge ist {∅, {1}, {2}, {1, 2}} (Kardinalität 4)
Solche einfachen Beispiele kann man nun aufstellen, bis man eine Idee hat, was
der allgemeine Zusammenhang sein könnte (sofern es einen gibt). Die Beispiele
legen die folgende Vermutung, die wir in Kapitel 6 beweisen.
Satz 4 (Kardinalität der Potenzmenge) Sei M endlich. Dann ist |P(M )| =
2|M | .
Durch diesem Zusammenhang der Kardinalität einer Menge und der ihrer Potenzmenge lässt sich eine alternative Notation für P(M ) erklären. In der Literatur findet man daher häufig für die Potenzmenge von M auch die Schreibweise 2M finden.
Wie schon bei der Teilmengenbeziehung werden wir hier einige wichtige Sätze zeigen und beweisen.
Satz 5 (Wichtige Eigenschaften der Potenzmenge)
(a) ∅ ∈ P(M ), M ∈ P(M )
(b) M ⊆ M ′ impliziert |P(M )| ≤ |P(M ′ )|
(c) |P(M )| ≥ 1
Bemerkung 11. Bevor wir diesen Satz nun gleich beweisen wollen, eine kurze
Anmerkung zur Notation von Sätzen. Bisher haben wir alle Sätze als prädikatenlogische Ausdrücke geschrieben. Wir hätten hier also über M und M ′ mit einem
∀-Quantor quantifizieren t müssen. Da dies die Lesbarkeit erschwert, lässt man ∀Quantoren, die auf der äußersten Ebene eines Satzes gelten, meist komplett weg.
Mit anderen Worten heißt dies, dass nicht explizit quantifizierte Objekte stets implizit ∀-quantifiziert sind. Ebenso schreibt man gerne deutsche Phrasen wie “impliziert”, oder “genau dann wenn” anstelle der logischen Wörter → oder ↔, wenn
genau klar ist, welcher Operator gemeint ist. Man sollte sich diese Wörter zu Beginn immer in ihre logische Pendants übersetzen, und sich dabei stets bewusst machen, dass jeder mathematische Satz ein prädikatenlogischer Ausdruck ist, egal ob
dieser mit Operatoren, oder mit deutschen Worten beschrieben ist.
Beweis von Satz 5.
(a) ∅ ∈ P(M )
bereits bewiesen
∀M : ∅ ⊆ M
(∀:Anw)
∅ ⊆ Ṁ
(Subst)
∅ ∈ P(Ṁ )
(∀:Bew)
∀M : ∅ ∈ P(M )
Textbeweis
Sei Ṁ eine beliebige Menge.
Zu zeigen: ∅ ∈ P(Ṁ )
Erklärungen
Schlussregel
(∀:Bew)
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
105
Textbeweis
Erklärungen
Schlussregel
Wir haben bereits bewiesen,
dass ∅ eine Teilmenge jeder
Menge und damit insbesondere auch von Ṁ ist.
(∀:Anw)
Mit der Definition der Potenzmenge folgt dann, dass ∅
enthalten sein muss. □
(Subst)
(b) M ⊆ M ′ impliziert |P(M )| ≤ |P(M ′ )|
(→:Bew)
Ṁ ⊆ Ṁ ′ → P(Ṁ ) ⊆ P(Ṁ ′ )
2-mal(∀:Bew)
∀M : ∀M ′ : M ⊆ M ′ → P(M ) ⊆ P(M ′ )
Nun müssen wir die Implikation noch beweisen:
(→:Bew)
Ẋ ∈ P(Ṁ ) → Ẋ ∈ P(Ṁ ′ )
(∀:Bew)
∀X : X ∈ P(Ṁ ) → X ∈ P(Ṁ ′ )
(Subst)
P(Ṁ ) ⊆ P(Ṁ ′ )
Nun müssen wir erneut eine Implikation beweisen:
(→:Bew)
ẏ ∈ Ẋ → ẏ ∈ Ṁ ′
(∀:Bew)
∀y : y ∈ Ẋ → y ∈ Ṁ ′
(Subst)
Ẋ ⊆ Ṁ ′
(Subst)
Ẋ ∈ P(Ṁ ′ )
Wir müssen schließlich noch einen letzten Implikationsbeweis führen, der
mit Annahmen endet, die wir bisher aus den Implikationsbeweisen erhalten
haben:
Ẋ ∈ P(Ṁ )
Ṁ ⊆ Ṁ ′
(Subst)
∀y : y ∈ Ṁ → y ∈ Ṁ ′
∀y : y ∈ Ẋ → y ∈ Ṁ
ẏ ∈ Ẋ
(∀:Anw)
(→:Anw)
ẏ ∈ Ẋ → ẏ ∈ Ṁ
(∀:Anw)
ẏ ∈ Ṁ
(→:Anw)
(Subst)
ẏ ∈ Ṁ → ẏ ∈ Ṁ ′
ẏ ∈ Ṁ → ẏ ∈ Ṁ ′
ẏ ∈ Ṁ ′
Textbeweis: Seien Ṁ und Ṁ ′ beliebige Mengen und es gelte Ṁ ⊆ Ṁ ′ . Dann
ist jedes ẋ aus Ṁ auch in Ṁ ′ . Wir müssen zeigen, dass jede Teilmenge von
Ṁ auch eine Teilmenge von Ṁ ′ ist. Da aber jedes Element von Ṁ auch ein
Element von Ṁ ′ ist, ist insbesondere jedes Element jeder Teilmenge von Ṁ
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
4 Mengen
106
auch Element von Ṁ ′ , womit jede Teilmenge von Ṁ auch Teilmenge von Ṁ ′
ist. Die Aussage ist somit bewiesen.
(c) |P(M )| ≥ 1
(W)
⊤
(=-Subst)
Ṁ = ∅ ∨ Ṁ ̸= ∅
(→:Bew)
Ṁ = ∅ → P(Ṁ ) ≥ 1
(FU)
(→:Bew)
Ṁ ̸= ∅ → P(Ṁ ) ≥ 1
|P(Ṁ )| ≥ 1
(∀:Bew)
∀M : |P(M )| ≥ 1
Für die beiden Implikationsbeweise geben wir nur noch einen Textbeweis,
da sie sehr ähnlich zu einigen der bereits geübten Beweise sind:
Sei Ṁ eine beliebige Menge. Wir machen eine Fallunterscheidung:
Ṁ = ∅: Wir haben gesehen, dass jede Menge die leere Menge als Teilmenge
hat, damit auch insbesondere die leere Menge. Also hat die Potenzmenge von Ṁ = ∅ die leere Menge als Teilmenge und damit Kardinalität 1.
Ṁ ̸= ∅: Wir haben gesehen, dass jede Menge die leere Menge und sich selbst
als Teilmenge hat, was hier mindestens zwei verschiedene Mengen
sind. Also hat P(Ṁ ) mindestens Kardinalität 2.
Damit ist die Aussage bewiesen.□
Versuch es selbst! – Aufgabe 33: Zusammenhang zwischen Textbeweis und Ableitungsbaum
Da dieser Beweis sehr ähnlich zu den bereits geführten ist„ überlassen
wir Ihnen das Eintragen der verwendeten Schlussregel in die Tabelle.
Textbeweis
Erklärungen
Schlussregel
Sei Ṁ eine beliebige Menge.
Fallunterscheidung: Sei Ṁ =
∅.
Dann hat ∅ sich selbst als
Teilmenge (bereits bewiesen).
Damit ist die Kardinalität von
P(∅) mindestens 1.
Sei Ṁ ̸= ∅, dann hat M mindestens sich selbst und ∅ als
Teilmengen (bereits bewiesen). Damit hat die Potenzmenge von Ṁ mindestens
Kardinalität 2. □
Versuch es selbst! – Aufgabe 34: Kardinalität der Potenzmenge
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
107
Gilt |P(M )| > |M | für alle endlichen Mengen M ? Beweisen Sie diese Aussage
oder widerlegen Sie sie durch ein Gegenbeispiel.
Hinweis: Sie dürfen alle bisherigen Sätze über Mengen verwenden.
Im folgenden Abschnitt lernen wir noch eine andere spezielle Menge kennen, die
vor allem im Kapitel 5 eine wichtige Rolle spielt.
4.5 Produktmenge
Eine Anordnung (a, b) zweier Elemente a ∈ A und b ∈ B nennen wir geordnetes
Paar, oder einfach nur Paar. Eine Anordnung von n Elementen aus eventuell verschiedenen Mengen, nennt man n-Tupel. Für n = 3 nennen wir das Tupel Tripel,
für n = 4 Quadrupel. Allgemein nennt man eine solche Anordnung von Elementen
Tupel, Die Menge aller Paare (a, b) für a ∈ A und b ∈ B nennt man das Produkt von
A und B, bzw. das kartesische Produkt oder das Kreuzprodukt. Wir schreiben A×B für
das Kreuzprodukt. Die prädikative Schreibweise des Kreuzproduktes findet sich
in der folgenden Definition.
Definition 27 (Kreuzprodukt) A×B := {(a, b) | a ∈ A ∧ b ∈ B}. Wir schreiben
n-mal
z
}|
{
2
auch A × A = A (bzw. A × A × · · · × A = An ).
Beispiel
Auch das Kreuzprodukt ist sehr aufwendig zu notieren. Dies sieht man schon
am folgenden Beispiel: Sei A = {1, 2} und B = {a, b, c}. Dann ist:
A × B = {(1, a), (1, b), (1, c), (2, a), (2, b), (2, c)}
und
B × A = {(a, 1), (a, 2), (b, 1), (b, 2), (c, 1), (c, 2)}a.
aDamit ist das Kreuzprodukt nicht kommutativ
Versuch es selbst! – Aufgabe 35: Kreuzprodukt mit der leeren Menge
Überlegen Sie sich für eine beliebige Menge A, was A × ∅ und was ∅ × A ist.
Letzteres Produkt heißt auch n-stelliges Produkt und ist definiert als A1 × A2 × · · · ×
An : {(a1 , a2 , a3 , . . . , an ) | a1 ∈ A1 ∧ a2 ∈ A2 ∧ . . . , an ∈ An } = {(a1 , a2 , . . . , an ) |
∀i ∈ {1, 2, . . . , n} : ai ∈ Ai }.
Definition 28 (Gleichheit auf Tupeln) Zwei Tupel (a1 , . . . , an ) und (b1 , . . . , bm )
(für n und m natürliche Zahlen) sind genau dann gleich, wenn n = m und sie an
allen Stellen übereinstimmen, d.h. ai = bi für alle 0 < i ≤ n.
Zum Beispiel ist (1, 2, 3, 4) ̸= (1, 2) und (1, 2, 3) ̸= (3, 2, 1). Deshalb ist ein Tupel
nicht mit einer Menge zu verwechseln, denn es gilt: {1, 2, 3} = {1, 3, 2}.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
geordnetes Paar
Tupel
Kreuzprodukt
4 Mengen
108
Wir wollen im Folgenden wichtige Eigenschaften des Kreuzproduktes nennen, die
wir später noch brauchen werden. Da die Beweise aber einige kombinatorische Argumente benötgen, wollen wir sie hier nicht aufführen.
Satz 6 (Eigenschaften des Kreuzprodukts)
(a) Es gilt: A × B ̸= B × A für A ̸= B und A ̸= ∅ und B ̸= ∅.
(b) ∅ × A = ∅
(c) |A × B| = |A| · |B|
(d) |A1 × A2 × ... × An | = |A1 | · |A2 |... · |An |
Versuch es selbst! – Aufgabe 36: Intuition
Überlegen Sie sich intuitive Argumente für die Behauptungen aus dem Satz 6.
Ein Beispiel: Wenn A ̸= B, dann gibt es in einer der beiden Mengen ein Element v, welches nicht in der anderen vorkommt. Ohne Einschränkung der
Allgemeinheit gelte v ∈ A (ansonsten tausche im Folgenden A und B). Dann
gibt es in A × B ein Paar, welches an erster Stelle v stehen hat, dies ist jedoch
in B × A nicht möglich.
Bisher können wir nur sehr eingeschränkt mit Mengen arbeiten. Daher definieren
wir im folgenden Kapitel weitere Operationen auf Mengen.
4.6 Mengenoperationen
Die Potenzmenge und das Kreuzprodukt verändern die Struktur der Mengen sehr
stark. Zum Beispiel wird aus einer Menge M , die nur Nicht-Mengen enthält unter
Anwendung der Potenzmenge eine Menge von Mengen. Das Kreuzprodukt macht
aus einer Menge, die vielleicht auch nur Nicht-Paare enthält, eine Menge von Paaren. Dies ist bei den folgenden Operationen anders: Diese Operationen lassen die
Art von Elementen prinzipiell gleich. Gab es vorher nur Elemente, die keine Mengen sind, so ist dies auch nach der Anwendung der folgenden Operationen so.
Definition 29 (Mengenoperationen) Sei die Grundmenge U und seien A, B ⊆
U
Vereinigung: A ∪ B := {x ∈ U | x ∈ A ∨ x ∈ B}
Durchschnitt: A ∩ B := {x ∈ U | x ∈ A ∧ x ∈ B}
Differenz: A \ B := {x ∈ U | x ∈ A ∧ x̸∈B} (Wir schreiben auch A − B)
Symmetrische Differenz: A⊕B := {x ∈ U | (x ∈ A∧x̸∈B)∨(x ∈ B ∧x̸∈A)} =
{x ∈ U | x ∈ A ⊕ x ∈ B}
Komplement: A := {x ∈ U | x ∈
/ A}
Venn-Diagrammen
Die Operationen auf Mengen lassen sich graphisch mit sogenannten VennDiagrammen darstellen (siehe Abbildung 24). Dabei werden zwei Mengen als sich
überlappende Kreise dargestellt und die durch die Operation beschriebene resultierende Menge farbig markiert. Achtung: Venn-Diagramme dienen nur zur Intuition und sind kein Beweis!
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
109
B
B
A
A
B
A
Abbildung 24: A ∩ B, A \ B und A ∪ B
Versuch es selbst! – Aufgabe 37: Intuition – Mengenoperationen
(a) Ergänzen Sie die Venn-Diagramme für die symmetrische Differenz
und das Komplement.
(b) Finden Sie eine intuitive Beschreibung für jede Mengenoperation, zum
Beispiel für die Vereinigung: Jedes Element von A ∪ B ist in mindestens
einer der beiden Mengen A und B enthalten.
Mithilfe der vorgestellten Mengenoperationen kann man noch eine weitere wichtige Beziehung zwischen Mengen definieren. Diese sagt aus, dass zwei Mengen
kein einziges gemeinsames Element haben. Diese Eigenschaft wird in der Mathematik und Informatik immer wieder gebraucht (z.B. bei σ-Additivität und Partitionen).
Definition 30 (Disjunkt) Zwei Mengen A und B heißen disjunkt, wenn sie elementfremd sind, also
A ∩ B = ∅.
Satz 7 (Gleichheit von Mengen) Zwei Mengen A = {x ∈ U | φ} und B = {x ∈
U | ψ} heißen genau dann gleich, wenn φ ≡ ψ.
Intuitiv ist auch Disjunktheit zweier Mengen sehr einfach zu überprüfen, wie das
folgende Beispiel zeigt.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
disjunkt
gleich
4 Mengen
110
Beispiel
Sei die Grundmenge U = {a, b, c, d, e, f, π} und Teilmengen A =
{a, b, c, d}, B = {b, c, e, π} und C = {e, f, π} gegeben.
So ist A ∩ B = {b, c}, A ∩ C = ∅, B \ A = {e, π}, B ⊕ C = {b, c, f }, A ∪ C =
{a, b, c, d, e, f, π} = U und B ∪ C = {b, c, e, f, π}. A und C sind disjunkt.
Um die Arbeit mit Mengenoperationen in Beweisen (z.B. auch mit disjunkten Mengen) und im praktischen Arbeiten leichter zu machen, formulieren wir ähnlich wie
für logische Operatoren eine Reihe von Gesetzen. Diese lassen sich, wie wir noch
sehen werden, ähnlich wie die logischen Gesetze beweisen.
Satz 8 (Eigenschaften der Mengenlehre) Für eine Grundmenge U und A, B,
C ∈ P (U) gelten folgende Gesetze
• A∪B =B∪A
Kommutativität
• A∩B =B∩A
• (A ∪ B) ∪ C = A ∪ (B ∪ C) = A ∪ B ∪ C
Assoziativität
• (A ∩ B) ∩ C = A ∩ (B ∩ C) = A ∩ B ∩ C
Identität
• A∪∅=A
• A∩U =A
Dominanz
• A∩∅=∅
• A∪U =U
Idempotenz
• A∪A=A
• A∩A=A
Komplement
• A=A
• A∪A=U
Distributivität
• A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
• A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
Absorption
• A ∪ (A ∩ B) = A
• A ∩ (A ∪ B) = A
Gesetze von de Morgan
• A ∩ B = (A ∪ B)
• A ∪ B = (A ∩ B)
Wir beweisen im Folgenden einige ausgewählte Gesetze:
Beweis (A ∪ B = B ∪ A). Wir beweisen mit Hilfe von Satz 7, dass A ∪ B = B ∪ A
für beliebige Mengen A und B. Seien also Ȧ und Ḃ beliebig ((∀:Bew), (∀:Bew)). Mit
Hilfe unseres Satzes ist zu zeigen, dass die Prädikate der Mengen gleich sind ((=Subst) mit der Definition der Prädikate von Vereinigungsmenge): Sei ẋ beliebig in
Ȧ ∪ Ḃ: ẋ ∈ Ȧ ∪ Ḃ ≡ ẋ ∈ Ȧ ∨ ẋ ∈ Ḃ ≡ ẋ ∈ Ḃ ∨ ẋ ∈ Ȧ ≡ ẋ ∈ Ḃ ∪ Ȧ
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
111
Beweis (A ∪ B = A ∩ B). Nun wollen wir mit Hilfe von Satz 7 beweisen, dass
(A ∪ B) = A ∩ B für beliebige Mengen A und B. Dazu formen wir dieses Mal die
Prädikate direkt in der Menge um, dann müssen wir den Allquantor nicht auflösen.
Dazu wenden wir (Subst) und (=-Subst) mit der Definition von der Mengenoperation an: ({x ∈ U | x ∈ A ∨ x ∈ B}) = {x ∈ U | ¬(x ∈ A ∨ x ∈ B)} = {x ∈ U |
¬(x ∈ A) ∧ ¬(x ∈ B)} = {x ∈ U | x̸∈A ∧ x̸∈B} = {x ∈ U | x̸∈A} ∩ {x ∈ U |
x̸∈B} = A ∩ B
Beweis (A ∩ B = A ∪ B). Seien Ȧ und Ḃ beliebige Mengen ((∀:Bew),(∀:Bew)).
Wir zeigen (Ȧ ∩ Ḃ) = Ȧ ∪ Ḃ, indem wir beide Richtungen von ⊆ zeigen ((=-Subst)
mit der Definition von “=” auf Mengen). Im Folgenden wenden wir hauptsächlich
(=-Subst) an, um Definitionen aufzuösen, und (Subst), um Aussagen in logisch
äquivalente zu überführen. Seien Ȧ und Ḃ beliebig. Sei ẋ ∈ (Ȧ ∩ Ḃ) beliebig, so
ist also ẋ̸∈Ȧ ∩ Ḃ. Dann ist ẋ̸∈Ȧ oder ẋ̸∈Ḃ. Damit ist ẋ ∈ Ȧ oder ẋ ∈ Ḃ, also ist
ẋ ∈ Ȧ ∪ Ḃ.
Sei nun ẋ ∈ Ȧ ∪ Ḃ beliebig, ẋ ist also ẋ ∈ Ȧ oder ẋ ∈ Ḃ, d.h. es ist ẋ̸∈Ȧ oder ẋ̸∈Ḃ.
Damit ist insbesondere ẋ̸∈Ȧ ∩ Ḃ, d.h. es ist ẋ ∈ (Ȧ ∩ Ḃ).
Beweis (A ∪ (B ∩ C) = (C ∪ B) ∩ A). Wir schreiben jeweils an das Ende der Zeile das Gesetz, mit dem wir die Gleichheit zwischen dieser und der darauf folgenden Zeile begründen können.
(A ∪ (B ∩ C)) De Morgan
= A ∩ (B ∩ C)
De Morgan
= A ∩ (B ∪ C)
Kommutativität
= (C ∪ B) ∩ A
Damit haben wir die Behauptung gezeigt.
Versuch es selbst! – Aufgabe 38: Zusammenhang Logik und Mengen
Versuchen Sie den Zusammenhang zwischen der Mengenlehre und der Logik
darzustellen. Was war zuerst da - Mengenlehre oder Logik? Können Sie es
sich auch umgekehrt vorstellen, also die Logik über Mengen zu definieren?
Wir haben nun das grundlegende Handwerkszeug der Mengenlehre zusammen,
was für die meisten Anwendungen absolut ausreichend ist. Trotzdem widmen wir
uns nun noch kurz dem Problem der Mengenlehre, welches wir bereits angekündigt haben.
4.7 Probleme der Mengenlehre
Die Mengenlehre, so wir wie sie bisher kennengelernt haben, nennt man auch naive Mengenlehre. Dies liegt daran, dass der ihr zugrundeliegende Mengenbegriff
einfältig ist. Wir haben gesagt, dass eine Menge eine Gruppierung von Objekten
des Denkens ist. Wir können damit auch die folgenden Mengen erdenken.
• Sei X die Menge aller Mengen, die sich selbst nicht enthalten.
• Sei Y die Menge aller Mengen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
4 Mengen
112
Das Problem der Menge X ist, dass man nicht entscheiden kann, ob X in sich
selbst enthalten ist, also X ∈ X (nicht: X ⊆ X) gilt. Nehmen wir an, X ∈ X, dann
impliziert dies nach der Definition von X direkt X ∈
/ X, was ein logischer Widerspruch zu unserer Annahme ist. Andersherum, wenn wir annehmen, X ∈
/ X,
dann muss gelten X ∈ X, was wiederum ein Widerspruch ist. Wir haben also mit
X eine Menge geschaffen, die sich selbst weder enthält, noch nicht enthält, was
aber wiederum ebenfalls logisch nicht sein kann. Dies entspricht damit keiner uns
sinnvoll erscheinenden Vorstellung von Mengen.
Wir haben bereits gesehen, dass wir Mengen über Mengen bauen können. Eine
solche Menge ist z.B. {{{∅, {∅}}}, ∅}. Wenn wir eine Menge “aufmachen”, die in
ihr enthaltenen Mengen betrachten, und diese wiederum aufmachen, und dies
immer weiter so machen, dann erwarten wir intuitiv, dass wir letzten Endes immer an leeren Mengen ankommen, die nichts mehr enthalten. Das heißt, es kann
immer nur endliche Ketten der Form X1 ∋ X2 · · · ∋ Xn geben, wobei die Xi alles Mengen sind. Die Menge Y , die wir oben definiert haben, enthält sich jedoch
nach Definition selbst. Daher gilt Y ∋ Y ∋ Y ∋ · · · . Diese Menge Y ist mit einer
Matroschka-Puppe vergleichbar, die jedoch nicht irgendwann eine kleinste Puppe enthält, sondern die man unendlich oft öffnen kann, um wieder eine weitere
Puppe zu finden.
Die Widersprüchlichkeit um die Menge X wird Russel’s Parádoxon genannt, und ist
benannt nach seinem Entdecker Bertrand Russel. Er wollte damit beweisen, dass die
bis dahin in der Mathematik verwendete Mengenlehre* nicht widerspruchsfrei
war. Die Erkenntnis hatte die mathematische Welt sehr erschüttert. Diese scheinbar so elementare und gottgegeben erscheinende Theorie der Mengen hatte ihre
Wahrhaftigkeit verloren.
Bemerkung 12. Da solche Konstruktionen des Geistes, wie die Menge aller Mengen
dennoch denkbar sind, und damit mathematische Objekte sind, arbeiten Mathematiker auch damit. Man nennt sie Klassen. Wenn wir uns nicht sicher sind, dass
etwas eine Menge ist, dann nennen wir es einfach eine Klasse. Jede Menge ist damit auch eine Klasse, aber nicht jede Klasse eine Menge. Wir können mit Klassen
im Prinzip die selben Dinge tun, wie auch mit Mengen. Wir können sie also auch
vereinigen oder schneiden. Klassen werden Ihnen in Ihrem Studium doch kaum,
oder auch nie, begegnen, deshalb brauchen sie sich nur zu merken, dass man beim
naiven Bauen von Mengen aufpassen muss, dass dabei wirklich noch eine Menge
herauskommt.
Die daraufhin entstandene axiomatische Mengenlehre basiert auf einer Anzahl
von Axiomen, die sehr exakt festlegen, was Mengen sind, und welche Eigenschaften diese haben. Genau genommen gibt es nicht nur eine solche Mengenlehre, sondern eine Vielzahl verschiedener Mengenlehre. Diejenige, die der intuitiven, also der naiven Mengenlehre am nächsten kommt, ohne ihre Widersprüchlichkeit
zu enthalten, ist die Zermelo-Fraenkel-Mengenlehre, benannt nach ihren beiden
Entdeckern. Ihr Hauptmerkmal ist es, dass Mengen nur aus Mengen aufgebaut
sind, es also keine Urobjekte, so etwas wie z.B. Zahlen gibt, die von den Mengen
verschieden wären. Alle mathematischen Dinge sind damit Mengen. Tatsächlich
kann man die natürlichen Zahlen aus Mengen sehr einfach konstruieren, und aus
diesen Zahlen kann man alle anderen Zahlen konstruieren. Das zweite Merkmal,
dass Russel’s Parádoxon vermeidet, ist das Verbot von Mengen, die eine unendlich
*Eben diese, die wir hier eingeführt haben.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
113
lange Kette der Form X1 ∋ X2 · · · hervorbringen würden. Man nennt das Axiom,
das diese Ketten ausschließt, Fundiertheitsaxiom.
Somit ist Y , wie wir es oben naiv definiert haben, keine Menge. Insbesondere bedeutet dies für uns auch, dass die naive Vorstellung eines Universum U, das wir
anfangs eingeführt haben, nur bedingt gilt. Wenn wir beliebige Mengen über Mengen betrachten wollen, dann gibt es U nicht. Daher haben wir in diesem Skript bei
allgemeinen Aussagen auch öfter auf die explizite Nennung von U verzichtet.
Bemerkung 13. Es gibt heute auch mehrere axiomatische Mengenlehren, die
das Fundiertheitsaxiom nicht besitzen. Es darf dort also auch Mengen geben, bei
der wir unendlich viele Matroschka-Puppen ineinander gestapelt finden können.
Damit es hierbei zu keinen Paradoxien kommt, müssen natürlich weitere Axiome
zur Theorie von Zermelo-Fraenkel hinzugefügt werden, und bestehende variiert
werden†.
Mengen sind die Fundamente der Mathematik. Doch was eine Menge genau ist,
kann niemand sagen. Vielmehr gibt es eine Vielzahl von Möglichkeiten zu definieren, was eine Menge ist. Keine dieser Definitionen ist richtiger oder wahrer als
eine andere. Wir haben also hier wieder einmal entdecken müssen, dass die Mathematik keine absolut gültige Wahrheit verkündet, und alle Objekte der Mathematik immer nur von einer relativen Perspektive aus existieren, und ihre Aussagen ebenso nur eine relative Gütligkeit besitzen.
In der Mathematik, ebenso wie in der “realen” Welt, scheint uns Wahrheit und
Wirklichkeit also nichts festes und absolut existierendes zu sein, sondern nur das,
was der Mehrheit der Menschen zu einer bestimmten Zeit, an einem bestimmten
Ort, und in einer bestimmten Situation als sinnvoll und dienlich erscheint.
Intuition
Die Menge aller Menge müssten Sie mit dem Topf aller Töpfe vergleichen,
aber wir würden nie annehmen, dass es einen Topf gibt, der alle Töpfe, die
man sich nur denken kann, enthält.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Mengen, die
Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen.
Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Mengen
zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige im Kapitel gelernt und verstanden haben.
†Einige dieser Mengenlehren haben einen starken Bezug zur Theorie der Bisimulationen, die Sie im
vierten Semester in der Vorlesung Nebenläufige Programmierung kennenlernen werden.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
5 Relationen
Relationen sind mathematische Objekte, die ausdrücken, dass zwei Elemente zweier (verschiedener) Mengen miteinander in einer bestimmten Beziehung stehen. Eine allgemein bekannte Beziehung ist z.B. die Ordnungsbeziehung ≤ zweier Zahlen. So ist z.B. 4 ≤ 7.43. Wir sagen damit, dass 4 und 7.43 auf eine gewisse Weise
geordnet sind, und eben nicht andersherum. Eine andere Art von Beziehung zwischen Objekten, die uns inzwischen sehr bekannt sein sollte, ist die semantische
Gleichheit zweier logischer Ausdrücke. So ist z.B. ⊤ ≡ p ∨ ¬p. Die beiden syntaktischen Objekte ⊤ und p ∨ ¬p stehen in der Beziehung zueinander, dass beide –
semantisch gesehen – gleich sind. Syntaktisch sind sie jedoch höchst verschieden.
Auch in der echten Welt lassen sich viele Dinge mit Relationen modellieren, zum
Beispiel sind die “Freundesbeziehung” bei Facebook und die“Follower-Beziehung”
bei Twitter Beispiele für Relationen. Auch der Zusammenhang zwischen Studenten und Matrikelnummern an der Universität ist eine Relation.
Tatsächlich modelliert man genau diese Zusammenhänge gerne als Relationen,
um sie mathematisch darzustellen und so zu analysieren, zu verifizieren und zu
verbessern. In der Informatik selbst spielen Relationen in vielen Gebieten eine
wichtige Rolle, so zum Beispiel bei Datenbanken. Gerade relationale Datenbanken - hier steckt die Relation sogar schon im Namen - sind nichts anderes als große
Relationen, die meist einem Objekt mehrere Eigenschaften zuordnen. Auch Graphen, die als anschauliches Bild von Relationen dienen, betrachtet man häufig in
der Informatik. Man kann mit ihnen das Straßennetz für Navigationssysteme modellieren, Fahr- und Flugpläne optimieren und sogar die Zusammenhänge zwischen Proteinen in der Biologie modellieren. Um Algorithmen, die diese Probleme
lösen können anzuwenden und um über die Korrektheit zu argumentieren, brauchen wir häufig bestimmte Eigenschaften der Relation.
Relationen spielen aber in vielen Bereichen noch eine weitaus wichtigere Rolle:
Gleichheiten und Ordnungen, wie wir sie oben dargestellt haben, sind essentielle Bestandteile der Mathematik und Informatik – und Relationen. Deshalb spielt
dieses Kapitel eine sehr große Rolle für Ihr späteres Studium!
Im Folgenden werden wir nun daher formal definieren, was Relationen mathematisch genau sind, und welche besonderen Eigenschaften sie haben können.
Definition 31 (Relationen) Seien A und B beliebige Mengen. Eine Teilmenge
R ⊆ A×B heißt eine binäre Relation über A und B. Wir schreiben für (a, b) ∈ R auch
aRb*. Wir nennen A Quellmenge und B Zielmenge der Relation R. Wenn A = B gilt,
dann sagen wir auch, A ist die Grundmenge der Relation.
Wie wir anhand der Definition sehen, sind binäre Relationen über die Produktmenge zweier Mengen (das Kreuzprodukt) definiert. Daher sind also Relationen
Mengen von Paaren. Da diese Paare eine Ordnung haben, also für a ̸= b das Paar
(a, b) nicht gleich zu (b, a) ist, gibt man auch den Beziehungen, die die Relationen
ausdrücken eine Richtung. Ist zum Beispiel (a, b) ∈≤, so ist “a kleiner gleich b”
*Man nennt diese Art der Darstellung auch Infix-Notation.
115
Relationen
5 Relationen
116
(und insbesondere nicht “b kleiner gleich a”). Das nächste Beispiel zeigt eine weitere unendliche Relation.
Beispiel
(a) sei R ⊆ {2, 3} × N definiert als
R = {(a, b) | a teilt b} = {(2, 2), (2, 4), (2, 6), . . . , (3, 3), (3, 6), (3, 9), . . . }.
Diese Relation setzt die Zahlen 2 und 3 mit all denjenigen natürlichen
Zahlen in Verbindung, die sie jeweils teilen.
Wie Sie an diesem Beispiel sehen können, kann man die prädikative
Schreibweise von Mengen auch für Relationen verwenden, um anzugeben, welche Paare in der Relation enthalten sind.
(b) Relationen müssen nicht immer “sinnvoll” sein. Eine mögliche Relation ist z.B. R ⊆ {0, 1, 2} × {a, b, c}, die wir definieren als R =
{(0, a), (0, b), (1, b), (1, c), (2, b)} Es ist also z.B. 1 R b und 2 R a. Für
(a, b)∈R
/ schreiben wir auch a ̸R b.
Weder die komplette Quellmenge A, noch die komplette Zielmenge B muss in einer Relation vorkommen. So ist z.B. auch ∅ ⊆ A × B eine Relation, ebenso wie
{(1, 1)} ⊆ N×N eine Relation auf der Menge der natürlichen Zahlen ist. Wir unterscheiden im Folgenden deshalb zwischen der Quellmenge und der Teilmenge der
Quellmenge, die tatsächlich in der Relation verwendet wird. Ebenso unterscheiden wir zwischen der Zielmenge und ihre tatsächlich in der Relation verwendeten
Elementen.
Definitionsbereich DR
Wertebereich WR
Definition 32 (Definitions- und Wertebereich) Der Definitionsbereich DR einer
Relation R ist definiert als DR := {x ∈ A | ∃y ∈ B : (x, y) ∈ R} und der Wertebereich WR ist definiert als WR := {y ∈ B | ∃x ∈ A : (x, y) ∈ R}.
Die Definition von Quell- und Zielmenge, Definitions- und Wertebereich variiert
von Vorlesung zu Vorlesung und von Buch zu Buch. Häufig wird auch gar keine
Unterscheidung gemacht. Achten Sie deshalb genau auf die Verwendung dieser Begriffe.
Beispiel
(a) Die bekannte strikte Ordnungsrelation auf natürlichen Zahlen < ist
eine Relation auf N. Mit anderen Worten, < ⊆ N × N. Es ist also
< = {(0, 1), (0, 2), . . . , (1, 2), (1, 2), . . . }. Hier gilt DR = N und WR =
N \ {0}, da jede Zahl aus N mindestens einmal links in einem Paar aus
< vorkommt, und es aber keine natürliche Zahl gibt, die echt kleiner
als 0 ist.
(b) In der Relation R = {(1, 2), (2, 3), (2, 1)} auf den natürlichen Zahlen
haben wir DR = {1, 2} und WR = {1, 2, 3}.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
117
(c) Leere Relation: ∅ ⊆ A × B. Sie enthält kein einziges Paar aus der Quellbzw. Zielmenge. Es gilt damit W∅ = D∅ = ∅.
(d) Universelle Relation: (A × B) ⊆ A × B. Diese Relation enthält alle Paare
aus A × B. Offensichtlich gilt DA×B = A und WA×B = B.
(e) Inverse Relation: Zu einer Relation R ⊆ A × B heißt R−1 := {(b, a) |
(a, b) ∈ R} ⊆ B × A die inverse Relation bzw. die Umkehrrelation, z.B.
ist > die Umkehrrelation zu < auf N. Es gilt DR−1 = WR , WR−1 = DR .
Leere Relation
Universelle Relation
Inverse Relation
Schon in der Einleitung dieses Kapitels haben wir angedeutet, dass es für Relationen verschiedene Darstellungsarten gibt, von denen vor allem Graphen in der
Informatik sehr wichtig sind. In anderen Anwendungen können aber auch andere Darstellungen hilfreich sein. Deshalb werden wir im folgenden Abschnitt alle
gängigen Darstellungen von Relationen einführen.
5.1 Darstellung von Relationen
Da Relationen zunächst ja einfach Mengen von Tupeln sind, können wir endliche Relationen einfach durch Aufzählung ihrer Tupel darstellen, beispielsweise
als R = {(1, 2), (2, 3), (1, 3)}, aber auch die prädikative Schreibweise ist möglich,
da es sich im Grunde nur spezielle Mengen handelt. Es bietet sich jedoch an, zum
besseren Verständnis von Relationen, alternative Darstellungsformen zu nutzen,
die die Strukturen der Relationen graphisch veranschaulichen.
Eine Variante ist als Wertetabelle (Wertematrix) bekannt:
Wertetabelle
Beispiel
1
1 0
2 0
3 0
2
1
0
0
3
1
1
0
Wir tragen sowohl als Spalten als auch als Zeilen die Grundmenge ein (handelt es
sich um eine Relation über zwei verschiedenen Mengen A und B (A×B), so tragen
wir A in Zeilen und B ins Spalten ab). Haben wir das Paar (a, b) in der Relation, so
tragen wir a als Zeile und b als Spalte ab und schreiben in der entsprechenden Zelle
eine 1, gibt es dieses Paar nicht, tragen wir eine 0 ein.
Eine ähnliche Darstellung, die in der Informatik ein paar Vorteile hat ist die Darstellung als Werteliste. Sie nimmt bei Relationen mit großer Grundmenge aber wenigen Paaren sehr viel weniger Platz im Speicher ein als die Matrixdarstellung:
Beispiel
1: 2 3
2: 3
3:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Werteliste
5 Relationen
Pfeilbild
118
Wir listen einfach für jeden Wert a der Quellmenge auf, für welche Werte b der
Zielmenge das Paar (a, b) in der Relation vorkommt.
Wir werden häufig nur noch Relationen betrachten, die als Quell- und Zielmenge
die gleiche Menge nutzen, also Relationen R ⊆ A × B, wobei A und B Mengen
sind mit A = B. Für solche Mengen ist die intuitivste Darstellung jedoch die als
Pfeilbild bekannte. Ist die zu betrachtende Relation über einer Grundmenge M definiert, also Teilmenge von M × M , so stellen wir die Elemente von M als Knoten
(“Element im Kreis”) da, die wir durch Pfeile verbinden. Dabei geht ein Pfeil von
Knoten a zu Knoten b genau dann wenn (a, b) in der Relation liegt.
Beispiel
2
1
3
Knoten
Kanten
Graphen
Wir sprechen in diesem Zusammenhang von Knoten, den Werten der Grundmenge, und Kanten, die von einem Knoten a zu einem Knoten b verlaufen. Damit repräsentieren Kanten gerade die Paare (a, b) in der Relation. Solche “Gebilde” nennt
man in der Informatik auch Graphen*.
Auch für andere Relationen kann man diese Schreibweise in einer etwas anderen
Variante nutzen: Ist die Relation über zwei verschiedenen Mengen A und B definiert, also eine Teilmenge von A × B, so zeichnen wir Elemente der Menge A
untereinander auf der linken Seite, und die Elemente von B auf der rechte Seite.
Dann verbinden wir wie oben Elemente von links nach rechts mit Pfeilen, wenn
die entsprechenden Paare in der Relation liegen.
Wir haben in der Einleitung bereits als prominente Beispiele von Relationen ≤
und ≡ genannt. Diese Relationen sind sehr speziell. Zum Beispiel gilt für jedes
Paar (a, b) in ≤, dass (b, a) nur dann in ≤ vorkommt, wenn a = b. Oder für ≡ gilt,
dass wenn φ ≡ ψ, dann gilt auch ψ ≡ φ. Unter anderem diese Eigenschaften zeichnen diese Relationen aus und machen sie in der Mathematik und Informatik so
nützlich. Im folgenden Abschnitt wollen wir alle diese wichtigen Eigenschaften
formal fassen.
5.2 Eigenschaften von binären Relationen R
Mathematikern und Informatikern sind allgemeine Relationen normalerweise zu
allgemein. In vielen Fällen kann man ohne besondere Eigenschaften Relationen
nicht zur Modellierung von Zusammenhängen nutzen, da keine Aussagen möglich sind. Zum Beispiel wäre es schwierig Facebook mit einer Relation zu modellieren, wenn aus “Adam ist mit Eva befreundet” nicht auch folgen würde “Eva ist
mit Adam befreundet”.
Einige dieser wichtigen Eigenschaften wollen wir Ihnen im Folgenden vorstellen.
Definition 33 (Eigenschaften von Relationen) Sei R ⊆ A × B. R heißt
links-total
• links-total, wenn ∀a ∈ A : ∃b ∈ B : (a, b) ∈ R gilt. Mit anderen Worten
DR = A.
*Binäre Bäume, die wir in Kapitel 1 kennengelernt haben, sind spezielle Arten von Graphen. Daher
kommt auch die gleiche Bezeichnung mit Knoten und Kanten
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
119
• rechts-total (auch: surjektiv), wenn ∀b ∈ B : ∃a ∈ A : (a, b) ∈ R gilt. Mit
anderen Worten WR = B.
• links-eindeutig (auch: injektiv), wenn ∀a, c ∈ A : ∀b ∈ B : (a, b) ∈ R ∧ (c, b) ∈
R → a = c. Das bedeutet, jedes Element aus B hat maximal einen Partner
in A.
• rechts-eindeutig (auch: funktional), wenn ∀a ∈ A : ∀b, c ∈ B : (a, b) ∈ R ∧
(a, c) ∈ R → b = c. Das bedeutet, jedes Element aus A hat maximal einen
Partner in B.
• Relationen, die sowohl injektiv also auch surjektiv sind, heißen bijektiv.
Wir haben im bisherigen Kapitel schon einige Relationen, die diese Eigenschaften
erfüllen, gesehen und wollen diese im Folgenden nochmals zusammenfassen.
Versuch es selbst! – Aufgabe 39: Eigenschaften von Relationen
Bevor Sie weiterlesen: Überlegen Sie sich, welche der bisher vorgestellten Relationen welche der eben definierten Eigenschaften erfüllen.
Beispiel
• ∅ ist weder links-total noch rechts-total, falls ∅ nicht über ∅×∅ definiert
ist. (Überlegen Sie sich hier, wieso das der Fall ist.)
• ≤ und < sind sowohl links-total als auch rechts-total auf R × R, da es
für jedes Element in R ein Element ist, welches größer ist (zum Beispiel
für ein ẋ aus R ist x + 1 ein Element von R und echt größer und somit
auch größer gleich).
• {(1, 1), (1, 2), (1, 3)} ist links-total und rechts-total bezüglich der
Quellmenge {1} und der Zielmenge {1, 2, 3}. Sie ist jedoch weder linksnoch rechts-total wenn Quell- und Zielmenge N sind, da zum Beispiel
kein Paar in der Relation enthalten ist, welches in der ersten Komponente eine 2 hat und es auch kein Paar gibt, welches an der zweiten Stelle eine 4 hat.
Bemerkung 14. Die Eigenschaften “links-total” und “rechts-total” beziehen sich
auch immer auf Quell- und Zielmenge. Bestes Beispiel ist die Relation R =
{(1, 2), (2, 3), (1, 3)} aus dem letzten Beispiel - über der Menge {1} × {1, 2, 3} besitzt sie beide Eigenschaften, über N × N keine.
Wenn wir eine Relation R graphisch veranschaulichen, dann können wir – wie
bereits beschrieben – die Elemente von A untereinander auf eine Seite schreiben,
und die aus B auf die andere (auch wenn A = B gilt), und dann die Verbindungen,
die durch R gegeben sind, durch einen Pfeil darstellen. An diesen Bildern kann
man dann, wie man in Abbildung 25 sehen kann, gut die Eigenschaften Injektivität, Funktionalität, Rechts- und Linkstotalität ablesen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
rechts-total
links-eindeutig
rechts-eindeutig
bijektiv
5 Relationen
120
1
1
2
2
(a) nicht-injektiv, nicht rechts-total
1
1
2
2
(b) nicht-funktional, nicht links-total
Abbildung 25: Gegenbeispiele für Eigenschaften bei Relationen aus {1, 2} × {1, 2}
In der Praxis …
Wie erkennt man rechts-totale und links-totale Relationen anschaulich? Betrachten wir die graphische Darstellung von Relationen, so haben
wir eine rechts-totale Relation, wenn auf jeden Knoten der Zielmenge mindestens ein Pfeil zeigt, und eine links-totale Relation, wenn von jedem Knoten der Quellmenge mindestens ein Pfeil ausgeht.
Ein etwas anschaulicheres Beispiel: Es stehen sich Team A und Team B gegenüber. Team A wirft Wasserbomben mit roter Farbe auf Team B - dies soll
jetzt eine Relation über Team A × Team B sein und ein Paar (a, b) ist genau
dann enthalten, wenn a eine Wasserbombe mit Farbe auf b wirft. Die Relation ist nun links-total, wenn jedes Teammitglied aus Team A eine Wasserbombe wirft und rechts-total, wenn jedes Mitglied von Team B mit roter Farbe getroffen wurde.
Wie erkennt man rechts-eindeutige (funktionale) bzw. linkseindeutige(injektive) Relationen anschaulich? Wir haben bereits
ein Beispiel dafür gesehen wie Relationen aussehen, die nicht injektiv bzw.
nicht funktional sind. Pfeilbilder injektiver Relationen erkennt man daran,
dass maximal ein Pfeil pro Knoten eingeht, d.h. auf einen Knoten zeigt
maximal ein Pfeil. Funktionale Relationen erkennt man hingegen daran,
dass pro Knoten maximal ein Pfeil ausgeht.
Betrachten wir wieder die Teams: Die Relation ist funktional, wenn jeder aus
Team A maximal eine Wasserbombe mit Farbe wirft und rechts-total wenn
jedes Mitglied von Team B maximal einmal getroffen wird.
Der Begriff der Relation ist für Sie vielleicht nicht so neu, wie Sie gedacht haben,
denn aus der Schule kennen Sie bereits Funktionen. Funktionen sind nichts anderes
als funktionale Relationen! Im Folgenden wollen wir diesen Begriff daher näher betrachten und in unseren Kontext mit Relationen übertragen.
Bemerkung 15.
funktionale Relationen
(a) Funktionen sind nicht unbedingt (links-)total, Funktionen sind zunächst
nur funktionale Relationen. Im Folgenden werden wir Abbildung sagen, wenn
wir nur über (links-)totale Funktionen reden wollen.
(b) Funktionen, die Ihnen unter anderem aus der Schule bekannt sind, sind
mathematisch nichts anderes als spezielle Relationen. Es sind Relationen,
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
121
die funktional und links-total sind sind. Funktionen, die nicht links-total sind,
nennt man partielle Funktionen. Die Eigenschaften Surjektivität und Injektivität sind typische Eigenschaften von Funktionen, und werden auch meistens in diesem Kontext gebraucht. Funktionen werden normalerweise nicht
infix notiert, d.h. wenn (a, b) ein Element einer Funktion f ist, schreiben wir
nicht a f b, sondern wie gewohnt f (a) = b. Wir werden am Ende des Kapitels
nochmals auf Funktionen zurückkommen.
Versuch es selbst! – Aufgabe 40: Semantik arithmetischer Ausdrücke
mit Division
Vervollständigen Sie mithilfe Ihres Wissens über partielle Funktionen die Definition der Semantik arithmetischer Ausdrücke um Division.
Hinweise:
(a) Ist die Semantik eines Ausdrucks φ undefiniert, so gibt es kein Paar
(φ, ψ) in der funktionalen Relation J·K, die arithmetische Ausdrücke auf
ihre Semantik abbildet. Damit ist J·K partiell.
(b) Die Semantik eines Ausdrucks φ ist genau dann undefiniert, wenn in
dem Ausdruck irgendwann durch Null geteilt wird – auch wenn dies
nur in einem Teilausdruck passiert.
(c) Die Regel für Division kann so aussehen:
{
a
falls ∃a, b ∈ Q : JφK = a ∧ b ̸= 0 ∧ JψK = b
Jφ ÷ ψK = b
undefiniert sonst
Obwohl wir Funktionen erst am Ende des Kapitels betrachten, haben wir die Unterscheidung in Funktionen und Relationen jetzt eingeführt, da wir im Folgenden
Eigenschaften betrachten, die selten auf Funktionen, sondern meistens auf Relationen verwendet werden*. Wir werden die verwendeten Relationen sogar noch
weiter eingrenzen: Die meisten Relationen, die nicht funktional sind, und denen
wir in der Mathematik begegnen werden, haben die selbe Quell- und Zielmenge,
d.h. für eine beliebige Menge A ist eine solche Relation R Teilmenge von A × A.
Eigenschaften solcher Relationen werden wir mit der folgenden Definition einführen.
Definition 34 (Eigenschaften von Relationen (fortgesetzt))
Sei R ⊆ A × A. R heißt
• reflexiv, wenn ∀a ∈ A : (a, a) ∈ R. Dies bedeutet, dass jedes Element aus der
Grundmenge A zu sich selbst in Beziehung stehen muss. Die kleinste Menge,
die dies erfüllt, ist IdA := {(a, a) | a ∈ A}, die sogenannte Identitätsrelation†.
• irreflexiv, wenn ∀a ∈ A : (a, a) ∈
/ R. Hier verbieten wir alle Paare (a, a) in
unserer Relation. Beachten Sie, dass irreflexiv nicht das selbe ist wie nicht
reflexiv!
*Das heißt nicht, dass diese Eigenschaften dort keinen Sinn geben. Sie werden auf Funktionen einfach
nur sehr, sehr selten verwendet!
†Machen Sie sich klar, dass jede echte Teilmenge von IdA nicht reflexiv ist! Denken Sie dabei insbesondere auch über den Fall nach, wenn A = ∅ gilt.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
reflexiv
irreflexiv
5 Relationen
symmetrisch
antisymmetrisch
transitiv
122
• symmetrisch, wenn ∀a, b ∈ A : (a, b) ∈ R → (b, a) ∈ R.
• antisymmetrisch, wenn ∀a, b ∈ A : (a, b) ∈ R ∧ (b, a) ∈ R → a = b.
• transitiv, wenn ∀a, b, c ∈ A : (a, b) ∈ R ∧ (b, c) ∈ R → (a, c) ∈ R.
Auch hier können wir anhand der Pfeilbilddarstellung anschaulich die Bedeutung
der Begriffe erklären (siehe Abbildung 26
(a) transitiv
(b) reflexiv
b
(c) symmetrisch, nicht transitiv
(d) symmetrisch, transitiv
Abbildung 26: Eigenschaften für Relationen über einer Grundmenge A
In der Praxis …
Wie erkennen wir an der graphischen Darstellung die oben definierten Eigenschaften?
reflexiv: Jeder Knoten hat eine Kante zu sich selbst. (Graph (b))
irreflexiv : Es gibt keinen Knoten, der eine Kante zu sich selbst hat. (Graphen (a), (c) und (d))
transitiv : Alle Knoten a, von denen man zu einem Knoten c über zwei Kanten (a, b) und (b, c) gelangen kann, haben auch eine direkte Kante von
a nach c. (Graph (a))
symmetrisch : Existiert zwischen Knoten a und b eine Verbindung, so kann
man sowohl von a nach b als auch von b nach a kommen. (Graph (c), (d))
antisymmetrisch : Man kann entweder nur von a nach b oder von b nach a
kommen. (Graph (b))
Wir haben bereits erwähnt, dass diese Eigenschaften für Relationen, die sich wie
≤ und ≡ verhalten, sehr wichtig sind. Genauer gesagt sind diese Relation sogar
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
123
ganz bestimmte Kombinationen dieser Eigenschaften, die wir im Folgenden betrachten.
Definition 35 (Äquivalenzrelationen) Eine Relation R auf A heißt Äquivalenzrelation, wenn sie reflexiv, transitiv und symmetrisch ist.
Äquivalenzrelation
Wie der Name schon sagt, stehen bei einer Äquivalenzrelation zwei Dinge in Beziehung, die zueinander äquivalent - also gleich - sind. Wir haben schon einige
Äquivalenzrelationen gesehen:
(a) Logische Äquivalenz ≡
(b) Gleichheit = auf Zahlen
(c) Gleichheit = auf Mengen
Versuch es selbst! – Aufgabe 41: Beispiele für Äquivalenzen
Überlegen Sie sich, warum diese drei Relationen Äquivalenzrelationen sind.
Sie müssen dazu alle drei Eigenschaften der Definition - Reflexivität, Transitivität und Symmetrie - nachprüfen.
Warum sind diese drei Eigenschaften für eine Gleichheit sinnvoll?
Gleichheit
In der Informatik verwendet man Äquivalenzrelationen, um von bestimmen “Dingen” nur solche zu betrachten, die unter einem bestimmten Gesichtspunkt verschieden sind - seinen es Zahlen (z.B. betrachtet man 12 nur einmal, obwohl es verschiedene Darstellungen gibt), Mengen oder auch komplexe Systeme (wie Computer, Flugzeuge), die ein Verhalten zeigen. Um sinnvoll mit der Gleichheit umzugehen, betrachtet man nicht die “Dinge” selbst, sondern nur eine Klasse von äqivalenten Dingen (wie zum Beispiel 12 = 24 = 48 = . . . ) mit einem Repräsentanten
( 12 ).
Definition 36 (Äquivalenzklassen) Sei R eine Äquivalenzrelation auf A. Die
Menge [x] = {y|xRy} heißt Äquivalenzklasse mit Repräsentanten x.
Äquivalenzklasse
Die bekanntesten Äquivalenzklassen sind, wie wir schon skizziert haben, Brüche.
Wir lernen sehr schnell, dass sich zum Beispiel 12 und 24 unter allen Umständen
gleich verhalten. Wir wissen, dass es egal ist, welche der beiden Repräsenationen
wir zum Rechnen benutzen. Kürzen und Erweitern, was wir aus der Bruchrechnung kennen, sind Operationen auf Brüchen, die die Äquivalenzklasse erhalten,
da sie nur die Repräsentation ändern.
Wir haben auch schon Ordnungsrelationen, die wir gleich definieren werden, im
Verlauf des Vorkurses kennengelernt. Ordnungsrelationen dienen, wie der Name
schon sagt, dazu, Menge zu vergleichen und anzuordnen, wir ordnen zum Beispiel
reelle Zahlen mit ≤, ≥.
Definition 37 (Ordnungsrelation) Eine Relation R auf A heißt Ordnungsrelation,
wenn sie reflexiv, transitiv und antisymmetrisch ist.
Sie werden sich vielleicht wundern, warum wir < und > nicht als Beispiele für
Ordnungsrelationen genannt haben. Wenn Sie sich die Definition von Ordnungsrelations nochmals genau anschauen, sehen Sie, dass eine Ordnungsrelation unter
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Ordnungsrelation
5 Relationen
124
anderem auch reflexiv sein muss, was weder für < noch für > gilt. Häufig verwendet man für < und > den Begriff strikte Ordnung. Formal nennt man eine Relation
strikte Ordnung, wenn sie irreflexiv, transitiv und antisymmetrisch ist.
Versuch es selbst! – Aufgabe 42: Beispiele für Ordnungsrelationen
Überlegen Sie sich weitere Ordnungsrelationen, die Sie kennen.
Warum sind diese drei Eigenschaften für eine Ordnung sinnvoll?
Selbst Mengen sind mithilfe der Teilmengenrelation geordnet.
Versuch es selbst! – Aufgabe 43: ⊆ ist eine Ordnungsrelation
Beweisen Sie: ⊆ ist eine Ordnungsrelation auf Mengen.
Die ≤-Ordnung auf Zahlen hat noch eine besonders schöne Eigenschaft: Je zwei
Zahlen sind miteinander vergleichbar. Egal welche Zahlen wir haben, wir können
entscheiden welche von beiden größer bzw. kleiner ist.
total
Definition 38 (Total und Linear) Sei R eine Ordnungsrelation über der Menge
A. R heißt total oder linear genau dann, wenn für alle a, b ∈ A mit a̸=b entweder
(a, b) ∈ R oder (b, a) ∈ R.
Wir können uns eine totale Ordnung wie folgt vorstellen: Betrachten wir die beiden natürlichen Zahlen 4 und 100, dann gilt zum Beispiel: (4, 100) ∈≤, aber
(100, 4) ̸∈≤. Somit haben wir nur eines der
√ möglichen Paare in unserer Relation.
Auch für andere Zahlen wie −42.5 √
und 7 2 können
√wir entscheiden welche von
beiden kleiner ist. Hier gilt: (−42.5, 7 2) ∈≤, aber ( 7 2, −42.5) ̸∈≤
Versuch es selbst! – Aufgabe 44: Totalordnung
Ist ⊆ eine Totalordnung auf Mengen? Beweisen Sie Ihre Behauptung.
Intuition
Im sprachlichen Umgang erkennen wir relativ einfach, ob eine Relation eine
Ordnungsrelation oder eine Äquivalenzrelation ist, indem wir darauf achten, was wir mit der Relation erreichen möchten. Wollen wir eine hierarchische Ordnung auf den Elementen der Grundmenge etablieren, dann handelt
es sich mit großer Wahrscheinlichkeit um eine Ordnungsrelation. Möchten
wir hingegen aber die Elemente, nach Ähnlichkeit zusammenfassen, z.B. eine Menge von Tieren nach Merkmalen wie “hat Wirbersäule” und “hat keine Wirbelsäule” oder Pflanzen nach “fleischfressend” und“nicht fleischfressend” ordnen, dann haben wir es vermutlich mit einer Äquivalenzrelation
zu tun.
Wir können für Totalordnungen noch eine weitere Eigenschaft definieren. Dazu
betrachten wir das folgende Beispiel: Die 0 hat in der Relation ≤ eine besondere
Stellung. Sei dazu a ∈ N. Dann gilt - egal welche Zahl a ist - (0, a) ∈ R.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
125
Definition 39 (Minimales Element) Sei R eine Totalordnung auf einer Menge
A. Sei U ⊆ A eine nicht-leere Teilmenge. x ∈ U heißt minimales Element in U , wenn
∀x′ ∈ U : (x′ , x) ∈ R → x = x′ . y ∈ U ist Minimum von U , falls ∀x ∈ U : (y, x) ∈ R.
minimales Element in U
Minimum von U
Besonders schön finden die meisten Mathematiker und Informatiker sogenannte
wohlfundierte Relationen - wir werden in Kapitel 6 noch sehen wieso. Dieser Begriff
macht eine besondere Aussage über die Existenz von minimalen Element als “Fundament” von Teilmengen.
Definition 40 (Wohlfundiertheit) Sei R eine Ordnung auf der Menge A. R
heißt wohlfundiert, falls jede nicht-leere Teilmenge von R ein minimales Element
besitzt *. Eine wohlfundierte Totalordnung nennt man auch Wohlordnung
wohlfundiert
Wohlordnung
Der Begriff der Wohlordnung mag Ihnen erst einmal umständlich und einschränkend wirken, aber auf den natürlichen Zahlen haben wir bereits damit einer gearbeitet - nämlich der ≤-Relation. Warum es sich eine Totalordnung handelt, haben
wir bereits intuitiv begründet. Aber auch die Aussage über die Existenz minimaler
Elemente können wir uns intuitiv sehr einfach überlegen: Wann immer ich eine
Menge von natürlichen Zahlen habe (und nicht unbedingt die komplette Menge
der natürlichen Zahlen), kann man einscheiden, welches das kleinste Element ist.
Nach unten (zur 0 hin) können die Elemente nicht immer kleiner werden, da es
keine kleinere Zahl als die 0 gibt.
Versuch es selbst! – Aufgabe 45: Wohlordnungen auf unendlichen
Mengen
Ist ≤ eine Wohlordnung auf den ganzen Zahlen? Können Sie eine (andere)
Wohlordnung auf den ganzen Zahlen einführen?
Rund um die Wohlfundiertheit herum gibt es einige wichtige Theoreme und Axiome in der Mathematik: Genau auf diese Wohlordnungen bezieht sich das sogenannte Wohlordnungssaxiom. Es besagt, dass es für jede Menge M eine Relation
R ⊆ M × M gibt, die eine Wohlordnung ist. Wichtig ist, dass es sich um ein Axiom handelt, also um eine Aussage, die erst einmal nicht als solche beweisbar ist,
sondern je nach Kontext nur angenommen wird.
Intuition
Man kann wohlgeordnete Mengen daran erkennen, dass es von einem Startpunkt aus nicht möglich sein darf unendlich oft abzusteigen, d.h. wir dürfen
keine Kette der folgenden Form finden: Sei R eine Relation auf der Menge
M . Sei x ∈ R. Es darf keine unendliche Folge von verschiedenen Werten in
M geben, so dass von x ausgehend zunächst (y, x) ∈ R, dann (z, y) ∈ R für
y, z ∈ R und so weiter.
In der graphischen Repräsentation erkennen wir eine unendliche Kette daran, dass wir im Graphen unendlich weit laufen (und dabei kleiner werden)
können ohne einen Knoten wiederzusehen.
*Die nicht-leere Teilmenge ist die Menge U aus der vorangehenden Definition.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Wohlordnungssaxiom
Axiom
5 Relationen
126
Wir haben bisher nur über Eigenschaften von Relationen geredet, wollen nun aber
auch eine sehr nützliche Operation, die zwei Relationen zu einer verbindet, vorstellen. Diese Definition wird uns im letzten Abschnitt dieses Kapitels helfen, teilweise einfachere äquivalente Eigenschaften für die hier vorgestellten Eigenschaften zu finden.
5.3 Relationskomposition
Relationskomposition
Ein folgendes Szenario ist zum Beispiel typisch für Datenbanksysteme: Betrachten wir einmal die Studenten einer Universität. Jeder Student hat eine Matrikelnummer. Als Relation können wir das in etwa so modellieren: Sei R die StudentMatrikelnummern-Beziehung. Dann ist R ⊆ Studenten × Matrikelnummern.
Nun werden nach einer Vorlesung die Noten in Abhängigkeit von den Matrikelnummern herausgegeben, wir haben also eine Relation S ⊆ Matrikelnummern ×
Noten. Nun wollen wir wissen, welcher Student welche Note erhalten hat. Dazu
betrachten wir zunächst welcher Student, welche Matrikelnummer hat, merken
uns die Matrikelnummer und schauen dann, welche Note dieser Matrikelnummer
zugeordnet ist. Diesen Vorgang nennen wir Relationskomposition.
Definition 41 (Komposition) Seien M, N und P Mengen und R und S Relationen
mit R ⊆ M × N und S ⊆ N × P . Die Komposition der Relationen R ◦ S ist definiert
wie folgt:
(x, z) ∈ R ◦ S ↔ ∃y : (x, y) ∈ R ∧ (y, z) ∈ S
Die Relationskomposition ist also nichts weiter als zwei Relationen über gemeinsame Punkte zusammenzubringen, z.B. können zwei Paare der Form (a, b) und
(b, c) über den gemeinsamen Punkt b zu (a, c) zusammengefügt werden, die andere Richtung zu (b, b) ist aber nicht möglich.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
127
Beispiel
Seien die Relationen R
=
{(1, 4), (2, 3), (3, 1), (1, 2)} und S
=
{(4, 2), (1, 3), (3, 1), (2, 4)} gegeben. Die Komposition R ◦ S ist nun definiert als {(1, 2), (2, 1), (1, 4), (3, 3)}.
In der Praxis …
Betrachten wir erneut die Relationen R = {(1, 4), (2, 3), (3, 1), (1, 2)} und
S = {(4, 2), (1, 3), (3, 1), (2, 4)}. Im Pfeilbild schreiben wir drei Spalten mit
jeweils den Zahlen von 1 bis 4. Zwischen den ersten beiden Spalten tragen
wir R, zwischen den letzten beiden Spalten S ab. Die Paare in R ◦ S sind
genau die Zahlen, die über zwei Pfeile miteinander verbunden sind, so zum
Beispiel (1, 2). Wir können nämlich von 1 nach 4 und schließlich von 4 zu 2
laufen.
1
1
1
2
2
2
3
3
3
4
4
4
Die gesamte Komposition von R und S lautet: {(1, 2), (2, 1), (3, 3), (1, 4)}.
Funktionskomposition
Die Komposition auf Funktionen ist umgekehrt definiert: Seien M , N und P
Mengen und seien f : N → P und g : M → N Funktionen. Dann ist (f ◦
g)(x) := f (g(x)). Betrachten wir f und g als Relationen, so würde (x, z) ∈ f ◦g
genau dann gelten, wenn es ein y ∈ N gibt, so dass (x, y) ∈ f und (y, z) ∈ g.
Damit ist die Komposition genau umgekehrt definiert.
5.4 Alternative Definitionen
Nun wollen wir wie bereits angekündigt, einige alternative Definitionen von Transitivität usw. vorstellen.
Satz 9 (Alternative Charakterisierungen von Transitivität, Symmetrie und Antisymmetrie)
Sei R eine Relation auf einer Menge A. Sei außerdem Ref (A) := {(x, x) | x ∈ A}.
(a) R ist transitiv, wenn R ◦ R ⊆ R.
(b) R ist antisymmetrisch, wenn R ∩ R−1 ⊆ Ref (A).
(c) R ist symmetrisch, wenn R−1 ⊆ R.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
5 Relationen
128
In manchen Kontexten - vor allem in Beweisen und Algorithmen - kann es sinnvoll sein, diese Definition zu verwenden. Viele dieser Definitionen eignen sich
auch dazu, aus einer gegebenen Relation eine Obermenge zu konstruieren, die diese Eigenschaften erfüllt. Obwohl dieses Verfahren in der Informatik sehr häufig
anwendet wird, führen selbst einfache Beispiele hier zu weit.
Versuch es selbst! – Aufgabe 46: Beweis von Satz 9
Beweisen Sie die Äquivalenz der Definitionen und der alternativen Charakterisierungen.
Der nächste und letzte Abschnitt dieses Kapitels ist die Fortführung von Kapitel 4.
Wir haben dort bereits angekündigt, die Kardinalität unendlicher Mengen hier
formal korrekt zu definieren.
5.5 Kardinalität unendlicher Mengen
Wir haben im letzten Kapitel gesehen, dass die Kardinalität endlicher Mengen
sehr einfach zu definieren und zu bestimmten ist (als Anzahl der Elemente der
Menge). Diese Unterscheidung gibt jedoch auf unendlichen Mengen keinen Sinn.
Wir haben schon erwähnt, dass wir die Kardinalität von unendlichen Mengen mithilfe von bijektiven Funktionen definieren. Wie genau dies funktioniert, zeigt die
folgende Definition.
Definition 42 (Kardinalität unendlicher Mengen) Zwei Mengen M und N
sind genau dann gleichmächtig, wenn es eine bijektive Abbildung f : M → N gibt.
Zwei unendliche Mengen haben also genau dann die gleiche Kardinalität, wenn es
eine 1-zu-1-Beziehung zwischen ihren Elementen gibt, d.h. wenn wir für jedes Element genau einen eindeutigen Partner finden können. Der Beweis des folgenden
Satzes zeigt eine sehr bekannte Konstruktion solch einer 1 − zu − 1-Beziehung.
Satz 10 (N und Z sind gleichmächtig) Die Mengen N und Z sind gleichmächtig.
Beweis
von Satz 10. Wir definieren die folgende Abbildung: f : N → Z,
0
falls x = 0

f (x) = − x2 falls x gerade

 x+1
falls x ungerade
2
Die Abbildung sieht dann wie folgt aus:
x
f (x)
0
0
1
1
2
−1
3
2
4
−2
...
Wir geben nun noch ein intuitives Argument, warum diese Funktion von N nach Z
geht, injektiv und surjektiv ist: Wir haben für jede natürliche Zahl einen Fall, der
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
129
ihr einen Wert zuweist (da jede natürliche Zahl größer gleich 0 entweder gerade
oder ungerade ist). Die Zahlen, die wir konstruieren sind in Z, da wir gerade Zahlen halbieren (was in Z nach Definition von “gerade” liegt) bzw. den Nachfolger
einer ungeraden Zahl – der wieder gerade ist – halbieren, was ebenfalls wieder in
Z liegt Auch die Multiplikation mit −1 verlässt Z nicht*.
x
Die Abbildung ist injektiv, da für eine gerade Zahl x gilt: x2 ̸= x+2
2 = 2 + 1. Analog
x+1
x+3
x+1
gilt für eine ungerade Zahl x, dass 2 ̸= 2 = 2 + 1.
Die Abbildung ist surjektiv, da es für natürliche Zahl n eine Zahl gibt, so dass
x+1
2 = n (nämlich 2 · n − 1) bzw. für jede ganze Zahl z < 0 eine natürliche Zahl, so
dass z = − x2 (nämlich −2· (da z < 0, ist −z > 0 und somit auch −2 · z > 0).
Mit diesem Beweis wollen wir das Kapitel über Relationen beenden und uns dem
letzten Kapitel widmen, in dem wir eine der wichtigsten Beweistechniken der Informatik vorstellen.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Relationen,
die Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen. Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Relationen zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige
im Kapitel gelernt und verstanden haben.
*Wir sagen, dass Z unter Multiplikation mit −1 abgeschlossen ist.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
sind
Beweisen
Mengen
Sprachen
sind
Relationen
nutzen
ist eine Art von
sind
braucht
braucht
Induktion
Logik
Funktionen
6 Induktion
Schon in Kapitel 3 haben wir einige der wichtigsten Beweistechniken, die man in
der Mathematik und Informatik verwendet, kennengelernt. Gerade in der Informatik benutzt man aber auch häufig das Prinzip der wohlfundierten Induktion. Die
Induktion ist dabei ein Beweisprinzip auf wohlgeordneten Mengen. Was das genau heißt, wann wir es einsetzen und wie die Induktion funktioniert, wollen wir
in diesem Kapitel herausfinden.
6.1 Die Idee der wohlfundierten Induktion
Stellen Sie sich vor, dass Sie ein Biologe in einer Welt mit perfekter Zellteilung
sind, d.h. wenn sich eine Zelle in zwei teilt, haben sie exakt das gleiche Erbgut. In
einer Ihrer zahlreichen Studien haben Sie eine einzigartige Gattung von Einzellern erschaffen - sie sind eckig und blau. Wenn wirklich alle Einzeller eckig und
blau wären, wäre das eine absolute Sensation. Die Frage, die Sie sich also stellen,
ist: Wie beweise ich, dass alle Ihre Einzeller eckig und blau sind?
Und genau diese Frage können wir mit dem Prinzip der wohlfundierten Induktion
lösen. Betrachten Sie dazu einmal Abbildung 27. Sie sehen dort ganz unten, die
beiden Einzeller, die Sie initial erschaffen haben und darüber alle Einzeller, die
sich durch Zellteilung daraus ergeben haben. Ein Pfeil von einem Einzeller A zu
einem Einzeller B sagt dabei aus, dass B aus A durch Zellteilung entstanden ist.
…
Generation 2
Generation 1
Generation 0
Abbildung 27: Stammbaum eckiger, blauer Einzeller
Wenn Sie nun zeigen können, dass
• die Generation 0 eckig und blau ist,
• und sich diese beiden Eigenschaften vom Eltern-Einzeller zu den beiden
Kinder-Einzellern vererben (egal in welcher Generation),
dann haben Sie tatsächlich gezeigt, dass alle Einzeller eckig und blau sind.
131
wohlfundierten Induktion
6 Induktion
132
Versuch es selbst! – Aufgabe 47: Korrektheit des Induktionsprinzips
Überlegen Sie sich, bevor Sie weiterlesen, warum Sie so tatsächlich zeigen,
dass alle Einzeller eckig und blau sind.
Wir nehmen an, dass es einen Einzeller gibt, der mindestens eine von beiden Eigenschaften nicht erfüllt. Für das Auftreten dieses Einzellers gibt es zwei Möglichkeiten – in Generation 0 und nicht in Generation 0. Diese zunächst sehr sinnlos
wirkende Fallunterscheidung hat einen enormen Vorteil: Die Generation 0 unterscheidet sich von allen anderen, da sie keine Vorgänger-Generation hat. Und diesen Vorteil nutzen wir bei der folgenden Argumentation.
Von den Einzellern in Generation 0 haben Sie jedoch gezeigt, dass Sie eckig und
blau sind, d.h. dass diese Möglichkeit unter unseren beiden “bewiesenen” Aussagen von oben in einem Widerspruch endet. Nehmen wir also an, dass ein Einzeller
in Generation n für n > 0 nicht eckig und blau ist. Da sich die Eigenschaften “Form”
und “Farbe” vererben und wir keine spontanen Mutationen haben, muss auch der
Eltern-Einzeller aus der Generation n−1 nicht eckig und blau sein. Falls n−1 = 0,
sind wir wieder bei einem Widerspruch angelangt. Ansonsten wenden wir unser
Argument für Generation n für die Generation n − 1 an, d.h. wenn in Generation n − 1 ein Einzeller nicht eckig und blau ist, dann ist auch sein Eltern-Einzeller
in Generation n − 2 nicht eckig und blau.
Nach n Iterationen dieses Arguments gelangen wir so immer zu der Einsicht, dass
auch in Generation 0 ein nicht eckiger und blauer Einzeller existiert haben muss,
was im Widerspruch zu unseren bewiesenen Aussagen steht.
Damit haben wir nun also tatsächlich gezeigt, dass wenn
• die Generation 0 eckig und blau ist,
• und sich diese beiden Eigenschaften vom Eltern-Einzeller zu den beiden
Kinder-Einzellern vererben (egal in welcher Generation),
alle Einzeller eckig und blau sind. Im Folgenden wollen wir einmal kurz argumentieren, wie unsere Vererbungshierarchie zu einer wohlfundierten Ordnungsrelation wird.
Als kurze Erinnerung: Eine Ordnung heißt wohlfundiert, wenn es keine unendlich
lang absteigenden Ketten gibt. Achtung: Eine wohlfundierte Ordnung muss nicht
notwendigerweise total sein.
Man kann aus dem Stammbaum der Einzeller nun wie folgt eine Ordnungsrelation konstruieren: Zunächst soll unsere Relation dazu für jeden Einzeller x ein Paar
(x, x) enthalten. Dann fügen wir Paare (x, y) wann immer x ein Vorfahr von y ist.
Während der erste Schritt dazu dient, Reflexivität herzustellen, dient der zweite
Schritt dem Herstellen von Transitivität, ohne dabei Antisymmetrie zu verletzen.
Unsere Ordnung ist wohlfundiert, da jede Teilmenge ein kleinstes Element enthält
(wir kommen insbesondere von jedem Einzeller aus in endlich vielen Schritten zu
Generation 0).
Das heißt, dass unsere Einzeller-Vererbung nur ein Beispiel für eine beliebige,
wohlfundierte Ordnungsrelation ist und wir unser Vorgehen sehr einfach auf jede
beliebige, wohlfundierte Menge (d.h. auf eine Menge zusammen mit einer wohlfundierten Ordnungsrelation) übertragen können.
Gegeben eine wohlfundierte Ordnungsrelation R auf einer Menge M können wir
eine Aussage der Form ∀x : P (x) für ein beliebiges Prädikat P auf M zeigen, in
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
133
dem wir die Aussage P (x) für alle minimalen Elemente P (x) zeigen und folgende
Implikation beweisen: Wenn die Aussage für alle y gilt, die bezüglich der Relation
R echt kleiner als x sind, dann gilt die Aussage auch für x selbst.
Auf die Relation kommt es an!
Wie die wohlfundierte Induktion abläuft, hängt nicht nur von der Menge selbst ab, sondern insbesondere auch von der darauf definierten wohlfundierten Ordnung. Wie wir in den folgenden Kapiteln sehen werden, kann
es für eine Menge mehrere wohlfundierte Ordnungen geben.
Nachdem wir nun die intuitive Idee der wohlfundierten Induktion betrachtet haben, wollen wir im folgenden Abschnitt die wohlfundierte Induktion formal fassen.
6.2 Wohlfundierte Induktion
Das Prinzip der wohlfundierten Induktion haben wir eben schon intuitiv formuliert. Für eine Menge X und eine wohlfundierte Ordnungsrelation R lässt sich das
Prinzip als Schlussregel so fassen:
∀x ∈ X : (∀y ∈ X : (y, x) ∈ R \ {(x, x) | x ∈ X} → P (y)) → P (x)
∀x ∈ X : P (x)
Diese Schlussregel sagt aus, dass wir auf die Aussage ∀x ∈ X : P (x) schließen
können, wenn wir gezeigt haben, dass für alle x ∈ X gilt: Wenn für alle kleineren bezüglich der Relation R die Aussage P (y) gilt, dann gilt auch P (x). In der
Praxis geht man dann so vor, wie wir das eben gezeigt haben: Man zeigt die Behauptung für die minimalen Elemente. Da diese keinen Vorgänger haben, reduziert sich die Prämisse für diese Elemente nämlich darauf, dass P (x) gilt. Für alle
anderen Elemente z zeigt man dann, dass wir mit dem Wissen, dass das Prädikat
P wahr wird für alle kleineren Elemente y, auf das Richtigkeit von P (z) schließen
können. Wenn wir also den Beweis für ein Element führen, welches nicht minimal
ist, dürfen wir annehmen, dass die Aussage für alle kleineren Elemente schon gilt.
Was theoretisch sehr kompliziert klingen mag, ist in der Anwendung sehr einfach.
Als Beispiel werden wir einen Beweis über die Eigenschaften von aussagenlogischen Ausdrücken führen. Dazu betrachten wir ihre duale Form. Um den Beweis zu
vereinfachen, schränken wir zunächst die Menge aller logischen Ausdrücke auf L′
ein.
L′ ∋ φ, ψ := ⊤ | ⊥ | ¬φ | φ ∧ ψ | φ ∨ ψ
Wir erlauben also im Folgenden als aussagenlogische Operatoren nur Konjunktion und Disjunktion sowie die Negation. Außerdem werden wir keine Aussagenvariablen mehr zulassen, weshalb wir in der Semantik auch auf Belegungen verzichten.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
duale Form
6 Induktion
134
Versuch es selbst! – Aufgabe 48: Einschränkung
Können wir trotz obiger Einschränkung noch alle Aussagen darstellen, die
wir in Kapitel 2 gesehen haben?
Die duale Formel dual(φ) zu dem Ausdruck φ ∈ L′ erhält man mit Hilfe der folgenden, rekursiv definierten Regeln:
dual(⊤) := ⊥
dual(⊥) := ⊤
dual(¬φ) := ¬dual(φ)
dual(φ ∨ ψ) := dual(φ) ∧ dual(ψ)
dual(φ ∧ ψ) := dual(φ) ∨ dual(ψ)
Die duale Formel zu ⊤ bzw. ⊥ ist also gerade ⊥ bzw. ⊤. Negation bleibt einfach
erhalten, während die duale Formel Konjunktion und Disjunktion vertauscht (⊤∧
⊤) ∨ (⊥ ∧ ¬⊥) hat als duale Formel daher (⊥ ∨ ⊥) ∧ (⊤ ∨ ¬⊤).
Wie Sie an diesem Beispiel erkennen können, ist es wichtig die Klammerung explizit hinzuschreiben, da (⊥ ∨ ⊥) ∧ (⊤ ∨ ¬⊤) nicht der gleiche Ausdruck wie
⊥ ∨ ⊥ ∧ ⊤ ∨ ¬⊤ ist. Wir beschäftigen uns nun damit, wie wir eine wohlfundierte
Ordnungsrelation auf dualen Ausdrücken erhalten.
Intuition
induktiv kleiner
Die Ordnung, die auf dualen Ausdrücken definiert ist, hat als minimale, aber
untereinander unvergleichbare Elemente ⊤ und ⊥. Alle weiteren Objekte
vergleichen wir ähnlich wie Teilmengen. Wir sagen in der Teilausdrucksordnung R gilt (φ, ψ) ∈ R genau dann, wenn φ = ψ oder wir finden einen
Teilausdruck ρ, d.h. einen Ausdruck der im Strukturbaum vielleicht mehrere
Ebenen unterhalb der Wurzel liegt, so dass ρ = φ gilt.
Zum Beispiel hat ⊤ ∧ ⊥ ∧ ⊥ als Teilausdruck ⊤ ∧ ⊥, da ∧ links klammert.
Betrachten wir ein komplexeres Beispiel: ⊤ ∧ ⊥ ∨ ⊤ ∨ ¬⊥ ∧ ⊤. Auch hier gibt
es ⊤ ∧ ⊥ als Teilausdruck, wir können aber auch ⊥ ∧ ⊤ finden.
Alle Teilausdrücke, die wir in einem Ausdruck finden können und die nicht
der Ausdruck selbst sind, nennen wir im Folgenden induktiv kleiner.
Versuch es selbst! – Aufgabe 49: Wohlfundierte Ordnungsrelation
Beweisen Sie, dass die Ordnung auf Ausdrücken tatsächlich eine wohlfundierte Ordnungsrelation ist.
Wir wollen die folgenden beiden Aussagen über duale Formeln mithilfe wohlfundierter Induktion beweisen. Häufig stehen Induktionsbeweise für sich allein,
d.h. meistens wendet man initial die Schlussregel für Induktion an. Daher haben
Induktionsbeweise auch eine sehr strikte äußere Form, die wir im Folgenden markieren werden. Auch wenn ohne diese äußere Form Ihr Beweis vielleicht nicht
falsch wird, sollten Sie sich auf jeden Fall daran halten, da es das Nachvollziehen
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
135
Ihres Beweises nicht nur für Sie selbst sondern auch für alle anderen deutlich vereinfacht.
(1) ¬φ ≡ dual(φ)
(2) φ ↔ ψ ≡ dual(φ) ↔ dual(ψ)
Beweis zu Äquivalenz (1).
Beweis durch wohlfundierte Induktion über φ ∈ L′ :
Nach dem Prinzip der wohlfundierten Induktion können wir nun annehmen, dass
die Aussage für alle induktiv kleineren Objekte gilt.
Fallunterscheidung:
φ = ⊤:
dual(φ) = dual(⊤)
=⊥
≡ ¬⊤
Definition dual
Doppelte Negation
≡ ¬φ
φ = ⊥:
dual(φ) = dual(⊥)
=⊤
≡ ¬⊥
Definition dual
Doppelte Negation
≡ ¬φ
φ = ¬φ′ :
dual(φ) = dual(¬φ′ )
= ¬dual(φ′ )
≡ ¬(¬φ′ )
Definition dual
Induktion für φ′
≡ ¬φ
φ = φ′ ∧ ψ ′ :
dual(φ) = dual(φ′ ∧ ψ ′ )
= dual(φ′ ) ∨ dual(ψ ′ )
≡ ¬φ′ ∨ ¬ψ ′
≡ ¬(φ′ ∧ ψ ′ )
≡ ¬φ
Definition dual
Induktion für φ′ und ψ ′
De Morgan
φ = φ′ ∨ ψ ′ :
dual(φ) = dual(φ′ ∨ ψ ′ )
= dual(φ′ ) ∧ dual(ψ ′ )
≡ ¬φ′ ∧ ¬ψ ′
≡ ¬(φ′ ∨ ψ ′ )
≡ ¬φ
Definition dual
Induktion für φ′ und ψ ′
De Morgan
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
6 Induktion
136
Intuition
In diesem Beweis verwenden wir zwei verschiedene Gleichheiten. Wenn wir
über exakte syntaktische Gleichheiten argumentieren, um zum Beispiel die
Definition von dual(⊤) zu ⊥ aufzulösen, so verwenden wir =. Wir wollen damit ausdrücken, dass dual(⊤) und ⊥ auch syntaktisch exakt das selbe Objekt
bezeichnen.
Abstrahieren wir dann vom Ausdruck selbst und wollen nur noch über die semantische Gleichheit argumentieren, so verwenden wir ≡. Alle Umformungen, die wir aufgrund aussagenlogischer Gesetze tätigen, müssen mit ≡ notiert werden, da der Ausdruck syntaktisch nicht mehr der selbe ist und nur
seine Semantik erhalten bleibt.
Häufig werden Induktionsbeweise auch als Hilfsbeweise geführt, d.h. eine zentrale Aussage wird mit Induktion bewiesen und dann weiterverwendet. Hier ein Beispiel:
Beweis zu Äquivalenz (2).
dual(φ) ↔ dual(ψ) ≡ ¬φ ↔ ¬ψ
≡ (¬φ → ¬ψ) ∧ (¬ψ → ¬φ)
≡ (ψ → φ) ∧ (φ → ψ)
≡ (φ → ψ) ∧ (ψ → φ)
≡φ↔ψ
Satz (1)
Definition ↔
Kontraposition
Kommutativität
Definition ↔
Damit ist Behauptung (1) bewiesen.
strukturelle Induktion
In der Informatik nennt man diese Form der Induktion, da sie über induktiv definierten Strukturen geführt wird, gerne auch strukturelle Induktion. Bevor wir uns
noch einmal genauer induktive Definitionen und ihren Zusammenhang zur Induktion anschauen, wollen wir ein weiteres Beispiel für wohlfundierte Induktion
geben.
Die Teilbarkeitsrelation definiert auf den natürlichen Zahlen größer 1 eine wohlfundierte Ordnungsrelation. Die minimalen Elemente dieser Ordnung sind die
Primzahlen (da sie außer 1, welche wir nicht betrachten, und sich selbst keinen
Teiler besitzen), d.h. für jede Primzahl p ist in der Ordnung (p, p) enthalten und
ansonsten kein Paar, welches p an zweiter Stelle enthält. Für jede weitere Zahl x
gibt es ein paar (y, x) in der Relation, wenn y ein Teiler von x ist. In Abbildung 28
finden Sie die Teilbarkeitsrelation veranschaulicht für die Zahlen von 2 bis 10. Damit die Abbildung übersichtlicher bleibt, haben wir alle Paare, die die sich durch
den transitiven Abschluss ergeben würden, weggelassen (hier nur das Paar (2, 8),
da (2, 4) und (4, 8) schon enthalten sind).
Wir zeigen nun mithilfe wohlfundierter Induktion, dass jede natürliche Zahl eine
Primzahlzerlegung besitzt.
Beispiel
Die Primfaktorzerlegung ist die Zerlegung einer natürlichen Zahl in ein Produkt, welches nur aus aus Primfaktoren besteht:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
137
(a)
(b)
(c)
(d)
10 = 2 · 5
20 = 2 · 2 · 5
121 = 11 · 11
556 = 2 · 2 · 139
8
4
6
2
9
10
3
5
7
Abbildung 28: Teilbarkeitsrelation für die Zahlen von 1 bis 10
Beweis (Existenz der Primfaktorzerlegung).
Beweis durch wohlfundierte Induktion über n ∈ N \ {0, 1}:
Nach dem Prinzip der wohlfundierten Induktion können wir nun annehmen, dass
die Aussage für alle induktiv kleineren Objekte gilt.
Fallunterscheidung:
Fall 1: Sei p eine Primzahl.
p besitzt als Primfaktorzerlegung das einstellige Produkt p.
Fall 2: Sei n eine natürliche Zahl und keine Primzahl. Dann lässt sich n schreiben als k1 · k2 , wobei k1 , k2 ̸= 1, n. Mit Induktion wissen wir, dass k1 und k2 eine
Primfaktorzerlegung besitzen. Das Produkt der Primfaktorzerlegung von k1 mit
der Primfaktorzerlegung von k2 ist eine Primfakorzerlegung von n nach Definition.
Damit haben wir die Existenz der Primfaktorzerlegung für jede natürliche Zahl
gezeigt.
Versuch es selbst! – Aufgabe 50: Eindeutigkeit der Primfaktorzerlegung
Beweisen Sie mit wohlfundierter Induktion die Eindeutigkeit der Primfaktorzerlegung, d.h. zeigen Sie, dass es für jede Zahl eine bis auf Reihenfolge eindeutige Primfaktorzerlegung gibt.
Hinweis: Multiplikationen mit 1 kommen in der Primfaktorzerlegung nicht
vor.
In diesem Abschnitt haben wir gesehen, dass wohlfundierte Induktion ein sehr
allgemeines und vielseitiges Prinzip ist. Prinzipiell haben Sie damit nun alles gelernt, was man über Induktion wissen muss. Wir wollen in den folgenden Kapiteln
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
6 Induktion
138
trotzdem einige Spezialfälle vorstellen, da sie in der Mathematik und Informatik
sehr häufig verwendet werden. Beginnen werden wir dabei jedoch, wie wir schon
angekündigt haben, mit induktiven Definitionen.
6.3 Induktive Definitionen
Induktive Definitionen sind uns geläufiger als man denken würde. Schon als Kind
haben wir Objekte induktiv zusammengebaut, zum Beispiel wenn wir mit einem
Baukasten gespielt haben, und aus vielen kleinen Bausteinen Häuser und Türme
zusammengebaut haben. Um uns an das Prinzip der induktiven Definition anzunähern, wollen wir genau das Beispiel des Bauens mit einem Baukasten benutzen.
Zunächst wollen wir einen einfachen Turm bauen, der nur aus einer Sorte von Steinen besteht.
Stellen Sie sich also vor, Sie wollen einem kleinen Kind erklären, wie man so einen
Turm baut. Wie würden Sie vorgehen? Vielleicht so ähnlich: “Nimm einen großen
Bauklotz, und lege ihn hin. Danach nimm noch so einen Bauklotz, und lege ihn
vorsichtig auf den anderen. Nimm doch noch einen Bauklotz, und legen ihn wieder
auf den Turm! Jetzt hast du einen noch größeren Turm. Das kannst du jetzt immer
so weiter machen, um einen noch größeren Turm zu bekommen!”
..
.
Turm der
Turm der
Größe n + 1
Größe n
Abbildung 29: Turmbauen heißt induktiv Definieren
Beim Turmbauen können wir einige wichtige Beobachtungen machen, die sich allgemein auf induktive Definitionen übertragen lassen.
(a) Wenn man schon einen Turm hat, dann kann man einen Stein darauf legen,
und bekommt so einen neuen Turm (der genau einen Stein höher geworden
ist).
(b) Wir können somit beliebig(!) hohe Türme bauen, allerdings wird jeder Turm
immer nur endlich hoch sein.
(c) Den kleinsten und einfachsten Turm bekommt man, indem man einfach einen einzelnen Stein auf dem Boden platziert.
Nicht nur das Bauen von Türmen, sondern auch Zählen lässt sich induktiv definieren. Betrachten Sie dazu die folgende Sprache N .
terminales Element
z}|{
N ∋ φ ::= O | Sφ
Wir identifizieren hier O mit 0 und S als eine Funktion, die einen Wert nimmt
und eins dazu addiert (S steht hier für Successor). Wir würden also SO mit 1 und
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
139
S(S(S(S(S(S(S0)))))) mit 7 identifizieren. Damit haben wir eine Sprache N definiert, die sich wie die natürlichen Zahlen verhält.
Wir können die natürlichen Zahlen also durch die Addition von 1 induktiv konstruieren. Dies ist vor allem bei induktiven Definitionen in Abhängigkeit von natürlichen Zahlen sehr hilfreich - so zum Beispiel auch bei Folgen, einem Spezialfall von Funktionen.
Folgen sind Funktionen von den natürlichen Zahlen in eine beliebige Menge. Mit
Hilfe der induktiven Definition der natürlichen Zahlen können wir rekursive Folgen definieren, wie zum Beispiel
a0 := 1, an+1 := an + 1
Da wir wissen, dass wir durch Addition alle natürlichen Zahlen konstruieren können (im nächsten Abschnitt werden wir das noch formaler sehen), sehen wir, dass
unsere Folge als Funktion korrekt auf allen natürlichen Zahlen definiert ist.
Speziellere Folgen sind die Summe bzw. das Produkt von n Summanden bzw. Faktoren. Da wir in der Mathematik sehr häufig Summen und Produkte betrachten,
wollen wir Summen und Produkte einmal formal definieren:
Definition 43 (Summen und Produkte)
Sei (an )n∈N eine Folge von Zahlen und n und m ∈ N. Das Summenzeichen
duktiv wie folgt definiert:
n
∑
i=m
n
∑
i=m
n
∑
ai = 0
n<m
ai = an
n=m
ai = an +
i=m
n−1
∑
ai
i=m
n
∏
i=m
n
∏
i=m
ai = 1
n<m
ai = an
n=m
ai = an ·
n−1
∏
ai
ist in-
Summenzeichen
∑
n>m
i=m
Analog folgt die Definition des Multiplikationszeichens
n
∏
∑
∏
:
n>m
i=m
Die leere Summe und das leere Produkt, wenn m > n ist, hat genau diese Werte, da
wir durch eine Addition mit 0 bzw. durch eine Multiplikation mit 1 unsere Werte
nicht ändern.
Versuch es selbst! – Aufgabe 51: Addition und Multiplikation auf der
Sprache N
Überlegen Sie sich, wie Sie rekursiv nach unserer Sprache zwei natürliche
Zahlen addieren und multiplizieren können.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Multiplikationszeichens
∏
:
6 Induktion
140
All diese induktiven Definitionen liefern uns den Spezialfall der strukturellen Induktion. Ein Beispiel für eine strukturelle Induktion ist der Beweis über die duale Form, den wir im letzten Abschnitt geführt haben. Verwenden wir jedoch die
strukturelle Induktion, so müssen wir nicht mehr argumentieren, wie die zugehörige wohlfundierte Ordnungsrelation aussieht. Man verwendet dann immer die
Teilausdrucksordnung, die wir ebenfalls schon vorgestellt haben.
Was Sie aus diesem Kapitel mitnehmen sollten: Induktive Definitionen erlauben
uns, sehr einfach eine wohlfundierte Induktion zu führen, ohne explizit eine wohlfundierte Ordnungsrelation aufstellen zu müssen. Um zu kennzeichnen, dass man
eine wohlfundierte Induktion mit der kanonischen wohlfundierten Ordnungsrelation führen möchte, schreibt man zu Beginn des Beweises “Beweis durch strukturelle Induktion” anstatt “Beweis durch wohlfundierte Induktion”.
Das Vorgehen bei der strukturellen Induktion ändert sich im Vergleich zur wohlfundierten Induktion ansonsten nicht: Wir beweisen die Behauptung zunächst für
alle induktiv kleinsten Elemente (bei induktiven Definitionen, die wir mithilfe der
Backus-Naur-Form aufschreiben, sind das Elemente, die man mit Fällen ohne Metavariablen bildet). Dann beweisen wir, dass alle Möglichkeiten, wie wir kleinere
Ausdrücke zu größeren zusammensetzen können, die Behauptung erhalten.
Intuition
Wir haben dies bei dualen Formeln ebenfalls angewendet: ⊤ und ⊥ sind die
einzigen beiden Fälle in der Backus-Naur-Form, die keine Metavariablen
enthalten. Damit sind Sie die induktiv kleinsten Ausdrücke.
Aussagenlogische Ausdrücke lassen sich in unserer eingeschränkten Sprache nur durch Konjunktion, Disjunktion und Negation vergrößern. Daher
haben wir gezeigt, dass, wenn kleinere Ausdrücke die Behauptung erfüllen
und wir diese mit Konjunktionen, Disjunktionen und Negation vergrößern,
dass die neuen größeren Ausdrücke immer noch die Behauptung erfüllen.
Im letzten Abschnitt dieses Kapitels möchten wir den einfachsten, aber auch häufigsten Spezialfall der Induktion betrachten, die natürliche Induktion.
6.4 Natürliche Induktion
natürliche Induktion
Wir betrachten nun die Menge der natürlichen Zahlen mit der Wohlordnung ≤. Da
wir schon gesehen haben, wie wir die natürlichen Zahlen induktiv konstruieren,
ist das Wissen über die Wohlordnung nicht von großer Bedeutung, um die natürliche Induktion zu verstehen. Die Konstruktion und Ordnung der natürlichen Zahlen
ist uns einfach sehr vertraut. Deshalb müssen wir sie auch nicht mehr explizit erwähnen, wenn wir einen Beweis mithilfe natürlicher Induktion führen.
Wir beweisen mit Hilfe der natürlicher Induktion Aussagen, indem wir sie für das
minimale Element der Menge beweisen, die wir gerade betrachten * und dann zeigen, dass die Aussage, falls sie für n ∈ N gilt auch für n + 1 gilt. In den meisten
Fällen beweisen wir Aussagen über N oder N∗ und beweisen zunächst die Aussage
für n = 0 oder n = 1.
*≤ ist eine Wohlordnung, deshalb existiert das minimale Element auch tatsächlich
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
141
Auch die Induktion können wir als Inferenzregel auffassen. Sei dazu P ein Prädikat auf den natürlichen Zahlen und 0 das minimale Element der Menge, die wir
betrachten (sehr oft wird dies die 0 oder die 1 sein).
P (0) ∀n ∈ N : P (n) → P (n + 1)
∀n ∈ N : P (n)
Die Schlussregel gibt unser Vorgehen genau vor:
(a) Beweise die Aussage für 0.
(b) Beweise dann, dass unter der Annahme, dassP (n) gilt, auch P (n + 1) wahr
ist.
Die Idee der natürlichen Induktion ist viel älter als der Prinzip der wohlfundierten
Induktion. Die folgenden fünf Axiome – genannt Peano-Axiome – erlauben es uns,
die natürlichen Zahlen zu konstruieren.
(a) 0 ∈ N †
(b) n ∈ N → (n + 1) ∈ N
(c) n ∈ N → (n + 1) ̸= 0
(d) n, m ∈ N → ((n + 1) = (m + 1) → n = m
(e) Sei M eine Menge. 0 ∈ M ∧ (∀m ∈ M : (m ∈ M → (m + 1) ∈ M ) → N ⊆ M
Das fünfte Axiom ist auch bekannt als Induktionsaxiom. Wir zeigen bei der Induktion auf N eigentlich, dass die Menge X := {n | n ∈ N ∧ P (n)} eine Obermenge
der natürlichen Zahlen ist und so unser Prädikat für alle natürlichen Zahlen wahr
wird.
Versuch es selbst! – Aufgabe 52: Fehlschluss
Wo findet sich der Fehler in folgender Argumentation:
Um das Prinzip der natürlichen Induktion anzuwenden, müssen wir unter
anderem zeigen, dass wenn eine Aussage für n gilt, diese auch für n + 1 gilt.
Damit können wir im Allgemeinen keine Aussagen über die Menge der geraden
Zahlen beweisen, da für jede gerade Zahl n die Zahl n+1 nicht gerade ist, und
daher die Aussage für n = 1 im Allgemeinen eh nicht gilt.
Das beste und wohl bekannteste Beispiel für die natürliche Induktion ist der Ben
∑
n · (n + 1)
. Wir markieren nun in oranweis der Behauptung: ∀n ∈ N :
i=
2
i=0
ge alle Wörter und Formulierungen, die für einen formal korrekten Beweis vorhanden sein müssen. Auch bei Beweisen durch Induktion müssen wir alle unsere
Schritte wie auch bei anderen Beweisen begründen.
†Es macht keinen Unterschied, hier mit 1 zu beginnen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Induktionsaxiom
6 Induktion
142
Beweis.
Behauptung: ∀n ∈ N :
n
∑
i=
i=0
n · (n + 1)
2
Beweis durch natürliche Induktion über n ∈ N
Induktionsverankerung: n = 0
n
∑
i
i=0
=
0
∑
i
Annahme n = 0
i=0
Definition Summe
=0
=
0·(0+1)
2
Multiplikation mit 0
Induktionsannahme: Die Behauptung gilt für ein festes, aber beliebiges n ∈ N:
n
∑
i=
i=0
n · (n + 1)
2
Induktionsschritt: n → n + 1 *
n+1
∑
i
i=0
=
=
=
=
n
∑
i + (n + 1)
i=0
n·(n+1)
2
+n+1
(n + 1) · ( n2
(n+1)·(n+2)
2
Definition Summe
Induktionsannahme
+ 1) Ausklammern
Bruchrechnung
Rufen wir uns die Schlussregel für Induktion noch einmal in den Sinn und betrachten, wie der Beweis eben abgelaufen ist. Was die Induktion uns liefert, ist eine
zusätzliche Annahme im Induktionsschritt. Wir dürfen einfach annehmen, dass
die Aussage, die wir gerade beweisen, für alle kleineren Argumente schon gilt. Dabei heißt kleiner hier bezüglich unserer Relation. Auf den natürlichen Zahlen entspricht das eben gerade intuitiv der ≤-Relation.
Betrachten wir ein weiteres Beispiel für Induktion, um zu zeigen, dass das Schöne
an Induktion ist, dass wir mit ihr fast alle Aussagen, die von natürlichen Zahlen
abhängen, beweisen können. Betrachten wir dazu einmal eine rekursiv definierte
Folge der Fibonacci-Zahlen.
F0 := 0
F1 := 1
Fn := Fn−1 + Fn−2
für
n>1
Wir sehen, dass die Berechnung eines Folgenglieds auf den beiden Elementen vor
dem aktuellen beruht.
*Korrekterweise müsste hier eigentlich ∀n ∈ N :
∑n
i=0
i=
n·(n+1)
2
→
∑n+1
i=0
i=
n+1·(n+2)
2
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
143
Beispiel
Die ersten 10 Folgenglieder der Fibonacci-Folge ergeben sich wie folgt:
0
1
0+1=1
1+1=2
1+2=3
2+3=5
3+5=8
5 + 8 = 13
8 + 13 = 21
13 + 21 = 34
Beweis.
Behauptung: ∀n ∈ N>0 :
n
∑
Fi2 = Fn · Fn+1 .
i=1
Beweis durch natürliche Induktion über n ∈ N>0 .
Induktionsverankerung: n = 1.
F12
=1
Definition der Fibonacci-Zahlen
= F1 · F2
Multiplikation
Induktionsannahme: Die Behauptung gilt für ein festes n ∈ N:
n
∑
Fi2 = Fn · Fn+1
i=1
Induktionsschritt: n → n + 1
n+1
∑
Fi2
i=1
=
n
∑
2
Fi2 + Fn+1
Definition Produkt
i=1
2
= Fn · Fn+1 + Fn+1
Induktionsannahme
= Fn+1 · (Fn + Fn+1 ) Ausklammern
= Fn+1 · Fn+2
Definition der Fibonacci -Zahlen
Somit ist die Behauptung gezeigt.
Braucht man nicht nur das Element, das genau um 1 kleiner ist, sondern ein beliebiges kleineres Argument, so muss man (zum Glück) kein neues Beweisprinzip
erlernen. Es ändert sich lediglich die Formulierung in der Induktionsannahme:
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
6 Induktion
144
Induktionsannahme: Die Behauptung gilt für alle m ∈ N mit m ≤ n für ein festes
n ∈ N:
n
∑
i=
i=0
n · (n + 1)
2
Versuch es selbst! – Aufgabe 53: Natürliche und starke Induktion
Überlegen Sie sich zunächst, wie man das natürliche Induktionsprinzip aus
dem Prinzip der wohlfundierten Induktion herleiten kann und dann, warum
es nichts ändert, alle kleineren Elemente zu betrachten.
starke Induktion
Diese Form der Induktion nennen wir starke Induktion. Für die eingeführten
Fibonacci-Zahlen gibt es auch eine geschlossene, also nicht rekursive Definition.
Für diesen Beweis brauchen wir die Annahme, dass die Aussage für mehrere Vorgänger bereits gilt. Daher wenden wir nun die starke Induktion an. Als Faustregel
hierfür gilt: Wir müssen so viele Induktionsanfänge beweisen wie wir im Induktionsschritt Vorgänger zurück schauen wollen.
Beweis.
Behauptung: Fn =
√1
5
√
· [( 1+2 5 )n −
√
(1− 5 n
) ]
2
Beweis über starke Induktion über n ∈ N
Induktionsanfang: n = 0 und n = 1
√
√1 · [( 1+ 5 )0
2
5
√
= 1−1
5
−
√
(1− 5 0
) ]
2
P otenzgesetz
=0
Multiplikation
= F0
Definition Fibonacci-Zahlen und Annahme
√1
5
=
=
√
(1− 5 1
) ]
2
√
√
1+ 5−1+ 5
2
√
2· 5
2
*
√
· [( 1+2 5 )1 −
√1
5
√1
5
·
·
Bruchaddition
Zusammenfassen
=1
Bruchmultiplikation
= F1
Definition Fibonacci-Zahlen und Annahme
Induktionsannahme: Die Behauptung gilt für alle m ∈ N mit m ≤ n für ein festes
n ∈ N.
*Hier haben wir uns die Symmetrie und Transitivität der Gleichheit von Nutzen gemacht und umgekehrt angefangen. So ist die Aussage einfacher zu beweisen.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
145
Fn+1
= Fn−1 + Fn
=
=
=
=
√1
5
√1
5
√1
5
√1
5
·
·
·
·
√
[( 1+2 5 )n−1
√
[( 1+2 5 )n−1
√
[( 1+2 5 )n−1
√
[( 1+2 5 )n+1
√
√
√
− ( 1−2 5 )n−1 ] + √15 · [( 1+2 5 )n − ( 1−2 5 )n ]
√
√
√
· ( 1+2 5 + 1) − (1−2 5 )n−1 · ( 1−2 5 + 1)]
√
√
√
· ( 1+2 5 )2 − (1−2 5 )n−1 · ( 1−2 5 )2 ]
√
− (1−2 5 )n+1 ]
Definition Fibonacci-Zahlen
Induktionsannahme für n und (n-1)
Ausklammern
Eigenschaft goldener Schnitt
Potenzgesetz
†
Wir fordern hier eine etwas stärkere Aussage in der Prämisse der Schlussregel. Sei
dazu P wieder ein Prädikat auf natürlichen Zahlen. Die Schlussregel für starke Induktion lautet:
∀x ∈ N : (∀y ∈ N : y < x → P (y)) → P (x)
∀x ∈ N : P (x)
Intuition
Natürliche und starke Induktion finden nur Anwendung, wenn wir als Menge die natürlichen Zahlen gemeinsam mit den Wohlordnung ≤ verwenden.
Möchten wir zum Beispiel eine andere wohlfundierte Ordnungsrelation verwenden, so müssen wir wohlfundierte Induktion verwendeten und auch die
wohlfundierte Ordnungsrelation explizit angeben. Dies haben wir zum Beispiel bei der Existenz der Primfaktorzerlegung gemacht, um auf den natürlichen Zahlen die Teilbarkeitsrelation bei der Induktion zu verwenden.
Kapitelende Bearbeiten Sie nun die Übungsaufgaben zum Kapitel Induktion, die
Sie unter www.vorkurs-mathematik-informatik.de finden. Wenn Sie die Übungsaufgaben bearbeitet haben, vergleichen Sie Ihre Lösungen mit den dort angegebenen.
Versuchen Sie dann, die Liste von Begriffen und Fähigkeiten zum Kapitel Induktion zu bearbeiten, die Ihnen ein Gefühl vermitteln soll, ob Sie alles Wichtige im
Kapitel gelernt und verstanden haben.
†Es ist hier nicht so wichtig, dass Sie jeden einzelnen Schritt verstehen. Sie sollen einfach nur ein
Gefühl dafür bekommen, wann man Induktion sinnvoll anwenden kann.
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Index
Äquivalenzklasse, 123
Äquivalenzrelation, 123
Abbildung, 120
ableiten, 65
Albleitungsbaum, 67
antisymmetrisch, 122, 127
arithmetische Ausdrücke, 8
arithmetischer Ausdruck, 8
atomare Aussage, 22
aufzählend, 95
Ausdruck, 2
Aussage, 20
Aussageform, 43
Aussageformen, 42
Aussagenlogik, 1, 20, 23
Aussagenvariable, 22
Backus-Naur-Form, 2, 5
Belegung, 26
benutzend, 50
Beweisen, 63
bijektiv, 119
binäre Relation, 115
binärer Baum, 3
Blatt, 3
definierend, 50
Definition, 68
Definitionsbereich, 116
disjunkt, 109
duale Form, 133
Element, 93
erfüllbar, 35
falsch, 25
funktional, 119, 121
Gültigkeitsbereich, 53
Gesetzen der Aussagenlogik, 1
Grammatiken, 2
Graph, 118
Grundmenge, 115
höherstufig, 28
hinreichend, 32
Individuenvariablen, 43
Induktionsaxiom, 141
induktiv, 5, 25
induktiv kleiner, 134
injektiv, 119
innerer Knoten, 3
inverse Relation, 117
irreflexiv, 121
Kalkül, 65
Kante, 3
Kanten, 118
Kardinalität, 102
Klammersparregeln, 13
Knoten, 118
Konklusion, 64
Kontradiktion, 36
Konzept, i, 19
Korollar, 69
Kreuzprodukt , 107
leere Relation, 117
Lemma, 69
links-eindeutig, 119
links-total, 118, 121
linksassoziativ, 25
Logik, 19
logisch gleich, 35
Mächtigkeit, 102
Menge, 93
Mengengleichheit, 99
Metavariable, 5
minimales Element, 125
Minimum, 125
Multiplikationszeichen, 139
natürliche Induktion, 140
147
Index
notwendig, 32
Operator, 22
Ordnungsrelation, 123
Paar, 107
partielle, 121
Pfeilbild, 118
post-fix, 55
Potenzmenge, 103
Prädikat, 49
Prädikate, 49
prädikativ, 96
Prämisse, 64
Pradikatenlogik, 41
148
wahr, 25
Wahrheitstafel, 28
Wertebereich, 116
Werteliste, 117
Wertetabelle, 117
wohlfundiert, 125
wohlfundierte Induktion, 131
Wohlordnung, 125
Wurzel, 3
Zeichen, 2
Zielmenge, 115
Quellmenge, 115
rechts-total, 119
rechtsassoziativ, 25
reflexiv, 121
Relationskomposition, 126
Satz, 2, 69
Schließen, 63
Schluss, 19
Schlussregel, 64
Semantik, 2
Sprache, 1, 19
starke Induktion, 144
Strukturbaum, 9
strukturelle Induktion, 136
Summenzeichen, 139
surjektiv, 119
symmetrisch, 122, 127
Syntax, 2
Syntaxbaum, 9
Tautologie, 36
Teilbäume, 10
Teilmenge, 98
total, 124
transitiv, 122, 127
Tupel, 107
ungebunden, 52
universelle Relation, 117
Universum, 42
Variablen, 7
Venn-Diagramm, 109
Wörter, 2
Anmerkungen? → www.vorkurs-mathematik-informatik.de → Kontaktformular
Herunterladen