Theoretische Grundlagen

Werbung
Karlheinz Hug
Theoretische Grundlagen
Skript
Bachelor-Studiengang
Medien- und Kommunikationsinformatik
Fachbereich Informatik
Hochschule Reutlingen
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
ii
Warenzeichen
BlackBox und Component Pascal sind eingetragene Warenzeichen von Oberon microsystems.
Java ist ein eingetragenes Warenzeichen von Sun Microsystems.
Ada, BON, C, C++, C#, Eiffel, Modula, Oberon, OCL, Pascal, Prolog, UML sind möglicherweise eingetragene Warenzeichen.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in
diesem Skript berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme,
dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetze als frei zu
betrachten wären und daher von jedermann benutzt werden dürften.
Garantieverzichtserklärung
Alle in diesem Skript enthaltenen Informationen wie Text, Abbildungen, Programme
und Verfahren wurden nach bestem Wissen erstellt und mit größter Sorgfalt geprüft. Da
Fehler trotzdem nicht ganz auszuschließen sind, ist der Inhalt des Skripts mit keiner
Verpflichtung oder Garantie irgendeiner Art verbunden. Der Autor übernimmt für
eventuell verbliebene fehlerhafte Angaben und deren Folgen weder eine juristische
Verantwortung noch irgendeine Haftung für Schäden, die in Zusammenhang mit der
Verwendung dieses Skripts, der darin dargestellten Methoden und Programme, oder
Teilen davon entstehen.
Missbrauchsverbot
Die durch dieses Skript vermittelten Informationen wie Prinzipien, Konzepte, Methoden, Verfahren und Techniken dürfen nicht für militärische oder völkerrechtswidrige
Zwecke missbraucht werden.
Anschrift des Autors
Prof. Dr. Karlheinz Hug
Hochschule Reutlingen - Reutlingen University
Fachbereich Informatik
Studiengang Medien- und Kommunikationsinformatik
Alteburgstraße 150
72762 Reutlingen
Bundesrepublik Deutschland - Germany
Gebäude-Raum
4-211
Telefon
+49/7121/271-616
E-Mail
[email protected]
WWW
http://www-mki.fh-reutlingen.de
Online-Dienst
http://userserv.fh-reutlingen.de/~hug
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Inhaltsverzeichnis
Inhaltsverzeichnis ....................................................................................................... iii
Abbildungsverzeichnis ............................................................................................... ix
Aufgabenverzeichnis .................................................................................................. xi
Beispielverzeichnis .................................................................................................. xvii
Leitlinienverzeichnis ................................................................................................ xix
Verzeichnis mathematischer Aussagen .................................................................. xxi
Programmverzeichnis ............................................................................................ xxix
Tabellenverzeichnis ................................................................................................ xxxi
1
Mengen
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
1.11
1.12
1.13
2
Grundbegriffe .................................................................................................1
1.1.1 Beschreibungen von Mengen .............................................................2
1.1.2 Russellsche Antinomie .......................................................................3
Beispiele für Mengen ......................................................................................4
Beziehungen zwischen Mengen .....................................................................6
Operationen mit Mengen ................................................................................8
1.4.1 Rechenregeln ......................................................................................9
1.4.2 Mengen in Programmiersprachen ....................................................13
Mengensysteme ............................................................................................14
Produktmengen .............................................................................................16
Zweistellige Relationen ................................................................................18
Abbildungen .................................................................................................20
1.8.1 Besondere Abbildungen ...................................................................21
1.8.2 Indizierungen ....................................................................................26
Operationen mit indizierten Mengen ............................................................26
1.9.1 Rekursive Definition von Produktmengen .......................................28
1.9.2 Produktmengen und Datenstrukturen ...............................................30
Strukturen .....................................................................................................31
Darstellungen von Größen ............................................................................33
Literaturhinweise ..........................................................................................35
Übungen ........................................................................................................36
Logik
2.1
Aussagenlogik ................................................................................................1
2.1.1 Einführung ..........................................................................................1
2.1.2 Alphabet der Aussagenlogik ..............................................................3
2.1.3 Syntax der Aussagenlogik ..................................................................5
2.1.4 Semantik der Aussagenlogik ..............................................................7
2.1.4.1 Operationen ............................................................................7
2.1.4.2 Bindung ..................................................................................8
2.1.4.3 Belegungen und Interpretationen ...........................................8
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
iii
iv
Inhaltsverzeichnis
2.1.5
2.2
2.3
2.4
3
Methodik
3.1
3.2
3.3
3.4
3.5
4
Erläuterungen ...................................................................................10
2.1.5.1 Aussagenlogische und umgangssprachliche Operationen ....13
2.1.5.2 Klammerung und Vorrangregeln ..........................................17
2.1.6 Aussagefunktionen ...........................................................................17
2.1.7 Eigenschaften von Aussagen ............................................................19
2.1.8 Aussagenlogische Rechenregeln ......................................................22
2.1.9 Aussagen in Programmiersprachen ..................................................29
2.1.10 Aussagenlogische Basen ..................................................................31
2.1.11 Normalformen von Aussagen ...........................................................34
Prädikatenlogik .............................................................................................43
2.2.1 Einführung ........................................................................................43
2.2.2 Prädikate und Quantoren ..................................................................44
2.2.3 Alphabet der Prädikatenlogik ...........................................................47
2.2.4 Syntax der Prädikatenlogik ..............................................................48
2.2.4.1 Klammerung und Vorrangregeln ..........................................50
2.2.4.2 Syntaktische Eigenschaften von Variablen und Formeln .....50
2.2.5 Semantik der Prädikatenlogik ..........................................................52
2.2.5.1 Bindung ................................................................................52
2.2.5.2 Belegungen und Interpretationen .........................................52
2.2.5.3 Erläuterungen .......................................................................55
2.2.6 Prädikatenlogische Formeln in Programmiersprachen ....................55
2.2.7 Eigenschaften prädikatenlogischer Formeln ....................................56
2.2.8 Prädikatenlogische Rechenregeln ....................................................59
2.2.9 Prädikatenlogische Basen .................................................................61
2.2.10 Normalformen prädikatenlogischer Formeln ...................................61
Literaturhinweise ..........................................................................................63
Übungen ........................................................................................................63
Axiomatik und Deduktion ..............................................................................1
Definitionsmethoden ......................................................................................3
3.2.1 Mathematische Definition ..................................................................4
3.2.2 Rekursive und induktive Definition ...................................................4
Beweismethoden .............................................................................................5
3.3.1 Direkter Beweis ..................................................................................6
3.3.1.1 Gegenbeispiel .........................................................................7
3.3.1.2 Äquivalenzbeweis ..................................................................8
3.3.1.3 Ringschlussbeweis .................................................................8
3.3.2 Indirekter Beweis ...............................................................................8
3.3.2.1 Kontrapositionsbeweis ...........................................................8
3.3.2.2 Widerspruchsbeweis ...............................................................9
3.3.3 Induktiver Beweis ............................................................................12
Literaturhinweise ..........................................................................................12
Übungen ........................................................................................................12
Relationale Strukturen
4.1
Allgemeines über Relationen und Abbildungen .............................................1
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Inhaltsverzeichnis
v
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
5
Zahlen
5.1
9.8.04
4.1.1 Zugeordnete Relationen .....................................................................1
4.1.2 Bereiche von Relationen ....................................................................3
4.1.3 Eigenschaften von Relationen ............................................................4
4.1.4 Zugeordnete Abbildungen ..................................................................6
4.1.5 Bilder und Urbilder von Abbildungen ...............................................6
4.1.6 Eigenschaften von Abbildungen ........................................................9
4.1.7 Operationen mit Relationen .............................................................10
4.1.8 Komposition von Relationen ............................................................12
4.1.9 Komposition von Abbildungen ........................................................15
4.1.10 Kartesisches Produkt von Relationen und Abbildungen ..................19
Homogene zweistellige Relationen ..............................................................21
4.2.1 Intervalle ...........................................................................................26
4.2.2 Abbildungen zwischen relationalen Strukturen ...............................27
Äquivalenzrelationen ....................................................................................29
4.3.1 Faktorisierung von Abbildungen ......................................................35
4.3.2 Von Präordnungen zu Halbordnungen .............................................37
Gleichmächtigkeit und Mächtigkeit von Mengen ........................................39
4.4.1 Kardinalzahlen .................................................................................39
4.4.2 Ordinalzahlen ...................................................................................41
4.4.3 Algorithmen zu Mengen ...................................................................44
Ordnungsrelationen ......................................................................................44
4.5.1 Zugeordnete Relationen ...................................................................46
4.5.2 Nachbarrelationen ............................................................................48
4.5.3 Bereiche und Intervalle ....................................................................49
4.5.4 Ketten und Antiketten ......................................................................50
4.5.5 Kleinste und größte Elemente ..........................................................50
4.5.6 Minimale und maximale Elemente ..................................................52
4.5.7 Schranken und Grenzen ...................................................................58
4.5.8 Ordnungsmorphismen und sortierte Familien ..................................60
4.5.9 Wohlordnungen ................................................................................62
Ordnung der natürlichen Zahlen ...................................................................64
4.6.1 Ordnung der Ordinalzahlen ..............................................................64
4.6.2 Ordnung der Kardinalzahlen ............................................................65
Anwendungen von Ordnungen .....................................................................68
4.7.1 Sortierte Folgen ................................................................................68
4.7.2 Ordnungen auf Produktmengen .......................................................70
Hüllen von Relationen ..................................................................................70
Übungen ........................................................................................................75
Natürliche Zahlen ...........................................................................................1
5.1.1 Peanosche Axiome .............................................................................1
5.1.2 Arithmetische Operationen ................................................................1
5.1.3 Ordnungsrelationen ............................................................................1
5.1.4 Rekursionstheoreme ...........................................................................1
5.1.5 Archimedische Eigenschaft ................................................................1
© Karlheinz Hug, Hochschule Reutlingen
vi
Inhaltsverzeichnis
5.2
5.3
5.4
5.5
5.6
5.7
6
Ganze Zahlen ..................................................................................................1
5.2.1 Standardfunktionen ............................................................................1
5.2.2 Division mit Rest ................................................................................2
5.2.3 Teilbarkeit ...........................................................................................5
5.2.4 Kongruenzrechnung ...........................................................................8
5.2.5 Primzahlen ..........................................................................................8
Rationale Zahlen .............................................................................................9
Reelle Zahlen ..................................................................................................9
5.4.1 Konstruktion .......................................................................................9
5.4.2 Axiome .............................................................................................10
5.4.3 Unterstrukturen .................................................................................12
5.4.4 Mächtigkeit .......................................................................................12
5.4.5 Standardfunktionen ..........................................................................13
5.4.6 Operationen mit reellen Funktionen .................................................14
5.4.7 Größenordnung reeller Funktionen ..................................................15
Komplexe Zahlen .........................................................................................18
5.5.1 Konstruktion .....................................................................................18
5.5.2 Bemerkungen ...................................................................................19
Zahlendarstellungen ......................................................................................19
5.6.1 Stellenwertsysteme ...........................................................................19
5.6.2 Festpunktzahlen ................................................................................19
5.6.3 Gleitpunktzahlen ..............................................................................20
5.6.3.1 Darstellungen von Gleitpunktzahlen ....................................21
5.6.3.2 IEEE Standard 754 ...............................................................22
5.6.3.3 Maschinendarstellung reeller Zahlen ...................................23
5.6.3.4 Fehlerquellen beim Rechnen mit Gleitpunktzahlen .............24
5.6.3.5 Gleitpunktzahlenarithmetik ..................................................25
Übungen ........................................................................................................27
Algebraische Strukturen
6.1
6.2
Strukturen mit einer zweistelligen Operation .................................................1
6.1.1 Vom Gruppoid zum Monoid ..............................................................1
6.1.2 Kürzbarkeit und Lösbarkeit ................................................................3
6.1.3 Mit Invertierbarkeit zur Gruppe .........................................................6
6.1.4 Unterstrukturen und umfassende Strukturen ....................................10
6.1.5 Mengenoperationen und Hüllen .......................................................11
6.1.6 Homomorphismen ............................................................................13
6.1.7 Komplexprodukt und Komplexinverse ............................................14
6.1.8 Potenzen ...........................................................................................15
6.1.9 Verträgliche Relationen ....................................................................18
6.1.10 Produktstrukturen .............................................................................18
6.1.11 Faktorstrukturen ...............................................................................18
6.1.12 Worthalbgruppen und -monoide .......................................................19
6.1.12.1 Zeichen ...............................................................................19
6.1.12.2 Wörter .................................................................................20
Strukturen mit zwei zweistelligen Operationen ............................................23
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Inhaltsverzeichnis
vii
6.2.1
6.2.2
6.2.3
6.2.4
6.2.5
6.3
6.4
Ringe ................................................................................................23
Körper ...............................................................................................23
Boolesche Algebren .........................................................................23
Verbände ...........................................................................................23
Boolesche Verbände .........................................................................23
6.2.5.1 Boolesche Algebra der Logik ...............................................23
6.2.5.2 Mengenalgebra .....................................................................23
6.2.5.3 Schaltalgebra ........................................................................23
Vektorräume ..................................................................................................23
Übungen ........................................................................................................23
A ISO 8859-1 Zeichencode Latin1
B Literaturverzeichnis
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
viii
© Karlheinz Hug, Hochschule Reutlingen
Inhaltsverzeichnis
9.8.04
Abbildungsverzeichnis
1
Mengen
Bild 1.1 Mengenbeziehungen ..................................................................................6
Bild 1.2 Mengenoperationen ...................................................................................8
Bild 1.3 Komplement ...............................................................................................9
Bild 1.4 Disjunkt oder nicht? .................................................................................14
Bild 1.5 Kartesische Ebene ....................................................................................17
Bild 1.6 Relation auf einer kartesischen Ebene .....................................................19
Bild 1.7 Relation als gerichteter Graph .................................................................19
Bild 1.8 Graphen von Abschnitten der Sinusfunktion und einer Fourier-Reihe ...21
Bild 1.9 Konstante Abbildung ...............................................................................22
Bild 1.10 Identische Abbildung .............................................................................22
Bild 1.11 Funktion als technisches Bauelement ....................................................25
Bild 1.12 n-Tupel als Reihung ...............................................................................30
Bild 1.13 n-Tupel als Liste ....................................................................................30
Bild 1.14 Analog dargestellte stetige Größe ..........................................................33
Bild 1.15 Analoge Darstellungen ..........................................................................33
Bild 1.16 Diskretisierte analoge Darstellungen .....................................................34
Bild 1.17 Digitalisierte Darstellungen ...................................................................34
Bild 1.18 Funktionen als digitale Bauelemente .....................................................34
2
Logik
Bild 2.1 Wahrheitsfelder ........................................................................................13
Bild 2.2 Beziehungen zwischen Aussagefunktionen, Wahrheitstabellen und
Aussagen ................................................................................................................19
Bild 2.3 Klassifikation von Aussagen ...................................................................20
Bild 2.4 Transformation der Formen von Aussagen ..............................................43
Bild 2.5 Transformation der Formen prädikatenlogischer Formeln ......................62
3
Methodik
4
Relationale Strukturen
Bild 4.1 Einschränkung und Teilrelation .................................................................2
Bild 4.2 Komplementäre Relation ...........................................................................2
Bild 4.3 Umkehrrelation ..........................................................................................2
Bild 4.4 Nach- und Vorbereich ................................................................................3
Bild 4.5 Bild und Urbild ..........................................................................................7
Bild 4.6 Komposition von Relationen ...................................................................12
Bild 4.7 Assoziativität der Komposition ...............................................................13
Bild 4.8 Umkehrrelation der Komposition ............................................................13
Bild 4.9 Schaltbild oder Datenflussdiagramm .......................................................15
Bild 4.10 Mengendiagramm mit Abbildungen ......................................................16
Bild 4.11 Abbildungsdiagramm .............................................................................16
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
ix
x
Abbildungsverzeichnis
Bild 4.12 Kommutierendes Abbildungsdiagramm ................................................16
Bild 4.13 Eigenschaften von Relationen ...............................................................21
Bild 4.14 Intervall ..................................................................................................26
Bild 4.15 Äquivalenzklassen .................................................................................31
Bild 4.16 Äquivalenzrelationen in einer kartesischen Ebene ................................32
Bild 4.17 Faktorisierungsdiagramm ......................................................................35
Bild 4.18 Zerlegung eines Homomorphismus .......................................................36
Bild 4.19 Übertragung eines Homomorphismus ...................................................36
Bild 4.20 Klassifikation von Ordnungen ...............................................................45
Bild 4.21 Ordnungsdiagramme ..............................................................................48
Bild 4.22 Beziehungen zwischen ausgezeichneten Elementen .............................60
5
Zahlen
6
Algebraische Strukturen
Bild 6.1 Homomorphiediagramm ..........................................................................13
Bild 6.2 Endliche zyklische Halbgruppe ...............................................................18
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Aufgabenverzeichnis
1
2
Mengen
Aufgabe 1.1 Namen von Zeichenfolgen ...............................................................36
Aufgabe 1.2 .........................................................................................................36
Aufgabe 1.3 Mengen beschreiben .........................................................................37
Aufgabe 1.4 Semantische Antinomien ..................................................................37
Aufgabe 1.5 .........................................................................................................37
Aufgabe 1.6 Beziehungen zwischen Mengen .......................................................37
Aufgabe 1.7 .........................................................................................................37
Aufgabe 1.8 Potenzmenge .....................................................................................37
Aufgabe 1.9 .........................................................................................................37
Aufgabe 1.10 .......................................................................................................37
Aufgabe 1.11 .......................................................................................................37
Aufgabe 1.12 .......................................................................................................37
Aufgabe 1.13 .......................................................................................................37
Aufgabe 1.14 Dreiecke ..........................................................................................37
Aufgabe 1.15 Schaltjahre [8] ................................................................................37
Aufgabe 1.16 Mengenoperationen [16] ................................................................38
Aufgabe 1.17 Mengenausdrücke vereinfachen .....................................................38
Aufgabe 1.18 Wann sind zwei Mengen gleich? ....................................................38
Aufgabe 1.19 .......................................................................................................38
Aufgabe 1.20 Mengen bestimmen [16] .................................................................38
Aufgabe 1.21 .......................................................................................................38
Aufgabe 1.22 Zerlegungen ....................................................................................38
Aufgabe 1.23 Potenzmengen [16] .........................................................................39
Aufgabe 1.24 .......................................................................................................39
Aufgabe 1.25 Relationen .......................................................................................39
Aufgabe 1.26 Relationen und Funktionen .............................................................39
Aufgabe 1.27 .......................................................................................................39
Aufgabe 1.28 Rekursive Definition ......................................................................39
Logik
Aufgabe 2.1 Jüdischer Witz, frei nach S. Landmann ............................................63
Aufgabe 2.2 Wer kann’s? ......................................................................................63
Aufgabe 2.3 Lebensgeheimnis [21] ......................................................................63
Aufgabe 2.4 Aussagen zerlegen ............................................................................63
Aufgabe 2.5 Syntax von Mengentermen und Mengenformeln .............................64
Aufgabe 2.6 Dreiecke ............................................................................................64
Aufgabe 2.7 Interpretationen .................................................................................64
Aufgabe 2.8 Wahrheitstabellen .............................................................................64
Aufgabe 2.9 Bedeutung umgangssprachlicher Operationen .................................64
Aufgabe 2.10 Notwendig und hinreichend ...........................................................64
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xi
xii
Aufgabenverzeichnis
Aufgabe 2.11 Aussage finden [21] ........................................................................64
Aufgabe 2.12 Kriminalfall ....................................................................................65
Aufgabe 2.13 Lügengeschichte .............................................................................65
Aufgabe 2.14 .......................................................................................................65
Aufgabe 2.15 .......................................................................................................65
Aufgabe 2.16 .......................................................................................................65
Aufgabe 2.17 .......................................................................................................65
Aufgabe 2.18 .......................................................................................................65
Aufgabe 2.19 .......................................................................................................65
Aufgabe 2.20 .......................................................................................................65
Aufgabe 2.21 Aussagen negieren ..........................................................................65
Aufgabe 2.22 .......................................................................................................65
Aufgabe 2.23 Aussagen vereinfachen ...................................................................65
Aufgabe 2.24 .......................................................................................................65
Aufgabe 2.25 Erfüllbarkeit ....................................................................................65
Aufgabe 2.26 .......................................................................................................65
Aufgabe 2.27 Implikation .....................................................................................65
Aufgabe 2.28 .......................................................................................................66
Aufgabe 2.29 Schlussfolgerung ............................................................................66
Aufgabe 2.30 .......................................................................................................66
Aufgabe 2.31 .......................................................................................................66
Aufgabe 2.32 .......................................................................................................66
Aufgabe 2.33 Logik der sozialen Marktwirtschaft ................................................66
Aufgabe 2.34 Logik der Finanzwirtschaft [33] .....................................................66
Aufgabe 2.35 Eine Logelei von Zweistein [DIE ZEIT Nr. 12, 15. März 2001] ...67
Aufgabe 2.36 Noch eine Logelei von Zweistein
[DIE ZEIT Nr. 22, 22. Mai 2003] ..........................................................................67
Aufgabe 2.37 .......................................................................................................67
Aufgabe 2.38 .......................................................................................................67
Aufgabe 2.39 Nand und Nor .................................................................................67
Aufgabe 2.40 Aussagenlogische Basis ..................................................................67
Aufgabe 2.41 .......................................................................................................67
Aufgabe 2.42 Normalformen ................................................................................67
Aufgabe 2.43 Minimale DNF ................................................................................68
Aufgabe 2.44 Normalformen ................................................................................68
Aufgabe 2.45 Paritätsfunktion [6] .........................................................................68
Aufgabe 2.46 Abstimmungsfunktion [16] ............................................................68
Aufgabe 2.47 .......................................................................................................68
Aufgabe 2.48 Prädikate formulieren [33] .............................................................68
Aufgabe 2.49 Formeln verbalisieren .....................................................................68
Aufgabe 2.50 Formeln zerlegen ............................................................................68
Aufgabe 2.51 Freie und gebundene Variablen, quantorenfreie und geschlossene
Formeln ..................................................................................................................69
Aufgabe 2.52 Formel verbalisieren .......................................................................69
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Aufgabenverzeichnis
xiii
3
4
9.8.04
Aufgabe 2.53 Sprachgebilde formalisieren ...........................................................69
Aufgabe 2.54 Astronomie .....................................................................................69
Aufgabe 2.55 Formel quantifizieren .....................................................................70
Aufgabe 2.56 Formel interpretieren [21] ..............................................................70
Aufgabe 2.57 .......................................................................................................70
Aufgabe 2.58 .......................................................................................................70
Aufgabe 2.59 Negation .........................................................................................70
Aufgabe 2.60 .......................................................................................................70
Aufgabe 2.61 .......................................................................................................70
Aufgabe 2.62 .......................................................................................................70
Aufgabe 2.63 Eigenschaften von Formeln ............................................................70
Aufgabe 2.64 Formeln transformieren ..................................................................70
Aufgabe 2.65 Epimenides .....................................................................................71
Aufgabe 2.66 Ecos foucaltsches Pendel ................................................................71
Aufgabe 2.67 Unabhängige Formeln [21] .............................................................71
Methodik
Aufgabe 3.1 Definitionen ......................................................................................12
Aufgabe 3.2 Direkter Beweis ................................................................................13
Aufgabe 3.3 Descartes’ Methode ..........................................................................13
Relationale Strukturen
Aufgabe 4.1 .........................................................................................................75
Aufgabe 4.2 .........................................................................................................75
Aufgabe 4.3 Bijektion ...........................................................................................75
Aufgabe 4.4 .........................................................................................................75
Aufgabe 4.5 .........................................................................................................75
Aufgabe 4.6 .........................................................................................................75
Aufgabe 4.7 .........................................................................................................75
Aufgabe 4.8 .........................................................................................................75
Aufgabe 4.9 .........................................................................................................75
Aufgabe 4.10 .......................................................................................................75
Aufgabe 4.11 .......................................................................................................75
Aufgabe 4.12 Alternative Beweise ........................................................................75
Aufgabe 4.13 Reflexive, symmetrische und transitive Relationen [16] ...............75
Aufgabe 4.14 Falsches Argument [28] ..................................................................75
Aufgabe 4.15 Verlorene Eigenschaften .................................................................75
Aufgabe 4.16 Eigenschaften von Relationen ........................................................76
Aufgabe 4.17 Eigenschaften der Komposition von Relationen ............................76
Aufgabe 4.18 .......................................................................................................76
Aufgabe 4.19 Bilder von zugeordneten Relationen und Bereichen ......................76
Aufgabe 4.20 .......................................................................................................76
Aufgabe 4.21 .......................................................................................................76
Aufgabe 4.22 Eigenschaften des kartesischen Produkts von Relationen ..............76
Aufgabe 4.23 Gleicher Durchschnitt [16] .............................................................77
Aufgabe 4.24 .......................................................................................................77
© Karlheinz Hug, Hochschule Reutlingen
xiv
Aufgabenverzeichnis
5
Aufgabe 4.25 Durchschnitt von Äquivalenzrelationen [28] .................................77
Aufgabe 4.26 Gröbere Äquivalenzrelation [29] ....................................................77
Aufgabe 4.27 Urbild einer Äquivalenzrelation .....................................................77
Aufgabe 4.28 Überdeckung [28] ...........................................................................77
Aufgabe 4.29 .......................................................................................................77
Aufgabe 4.30 .......................................................................................................77
Aufgabe 4.31 Kleinste und größte Elemente ........................................................78
Aufgabe 4.32 Ordnungsdiagramme ......................................................................78
Aufgabe 4.33 Ordnungsdiagramme zu Zerlegungen ............................................78
Aufgabe 4.34 Endliche Ketten ..............................................................................78
Aufgabe 4.35 Satz von Dilworth ...........................................................................78
Aufgabe 4.36 Lexikografische Ordnung ...............................................................78
Aufgabe 4.37 Hüllenoperatoren ............................................................................78
Aufgabe 4.38 .......................................................................................................78
Aufgabe 4.39 .......................................................................................................78
Aufgabe 4.40 .......................................................................................................78
Aufgabe 4.41 Hüllen einer Relation [16] ..............................................................78
Aufgabe 4.42 Eigenschaften von Hüllen ...............................................................78
Aufgabe 4.43 Eigenschaften von Hüllenoperatoren .............................................78
Aufgabe 4.44 .......................................................................................................78
Aufgabe 4.45 Gröbste antisymmetrische Relation [29] ........................................79
Zahlen
Aufgabe 5.1 Konvertierung ...................................................................................19
Aufgabe 5.2 Einer- und Zweierkomplement .........................................................19
Aufgabe 5.3 Rundungsfehler .................................................................................20
Aufgabe 5.4 IEEE Standard 754 ...........................................................................23
Aufgabe 5.5 Mächtigkeiten endlicher Mengen .....................................................27
Aufgabe 5.6 .........................................................................................................27
Aufgabe 5.7 .........................................................................................................27
Aufgabe 5.8 Vollständige Induktion ......................................................................27
Aufgabe 5.9 Vollständige Induktion bei Summenformeln ....................................27
Aufgabe 5.10 Vollständige Induktion in der Kombinatorik ..................................28
Aufgabe 5.11 Binomialkoeffizienten ....................................................................29
Aufgabe 5.12 Geburtstag von Studierenden ..........................................................30
Aufgabe 5.13 Von neumannsche natürliche Zahlen ..............................................30
Aufgabe 5.14 Rekursionstheorem .........................................................................31
Aufgabe 5.15 Anzahlen von Relationen ...............................................................31
Aufgabe 5.16 Russische Bauernmultiplikation .....................................................31
Aufgabe 5.17 „Russische Bauernpotenzierung“ ...................................................32
Aufgabe 5.18 Ackermannfunktion ........................................................................32
Aufgabe 5.19 Division mit Rest in Programmiersprachen ...................................32
Aufgabe 5.20 Division mit Rest ............................................................................32
Aufgabe 5.21 Induktive Definition .......................................................................32
Aufgabe 5.22 .......................................................................................................32
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Aufgabenverzeichnis
xv
6
9.8.04
Aufgabe 5.23 Teiltrelation .....................................................................................32
Aufgabe 5.24 Teilbarkeit und vollständige Induktion ...........................................32
Aufgabe 5.25 .......................................................................................................32
Aufgabe 5.26 ggT und kgV ...................................................................................32
Aufgabe 5.27 .......................................................................................................33
Aufgabe 5.28 Restklassen .....................................................................................33
Aufgabe 5.29 Zählmengen ....................................................................................33
Aufgabe 5.30 Reelle und rationale Zahlen ............................................................33
Aufgabe 5.31 Verallgemeinerte Dreiecksungleichung ..........................................33
Aufgabe 5.32 Zahlendarstellungen .......................................................................33
Aufgabe 5.33 Gleitpunktzahlen .............................................................................33
Algebraische Strukturen
Aufgabe 6.1 Gruppoide .........................................................................................23
Aufgabe 6.2 Untermonoid und Unterhalbgruppe ..................................................23
© Karlheinz Hug, Hochschule Reutlingen
xvi
© Karlheinz Hug, Hochschule Reutlingen
Aufgabenverzeichnis
9.8.04
Beispielverzeichnis
1
2
3
4
5
6
Mengen
Logik
Beispiel 2.1 Interpretationen einer Aussage mit der Wahrheits-tabellenmethode .10
Beispiel 2.2 Interpretationen einer Aussage mit der Wahrheitsfeldermethode .....13
Beispiel 2.3 Konstruktion von Normalformen mit algebraischen Umformungen 37
Beispiel 2.4 Konstruktion einer KNF mittels einer DNF ......................................39
Beispiel 2.5 Konstruktion kanonischer Normalformen mit der
Belegungsmethode .................................................................................................42
Beispiel 2.6 Belegung und Interpretation ..............................................................53
Methodik
Beispiel 3.1 Pythagoreische Zahlentripel ................................................................7
Beispiel 3.2 Prim und teilerfremd ............................................................................7
Beispiel 3.3 Gerade und ungerade Zahlen und Quadrate ........................................8
Beispiel 3.4 Unendlichkeit der Primzahlmenge ....................................................10
Beispiel 3.5 Irrationalität von Wurzel aus 2 ..........................................................11
Relationale Strukturen
Beispiel 4.1 Diskretisierung ...................................................................................34
Beispiel 4.2 Studierende Aufgaben Punkte ...........................................................37
Beispiel 4.3 Zerlegungen .......................................................................................51
Beispiel 4.4 Teilmengen und charakteristische Funktionen ..................................60
Zahlen
Beispiel 5.1 Binäres Suchen in sortierter Reihung ................................................16
Beispiel 5.2 Sortieren einer Liste durch Auswählen .............................................17
Algebraische Strukturen
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xvii
xviii
© Karlheinz Hug, Hochschule Reutlingen
Beispielverzeichnis
9.8.04
Leitlinienverzeichnis
1
2
3
4
5
6
Mengen
Leitlinie 1.1 Mengenbildung ...................................................................................3
Logik
Leitlinie 2.1 Binäre Logik .....................................................................................22
Methodik
Leitlinie 3.1 Prinzip der Dekomposition und Komposition ....................................6
Leitlinie 3.2 Keine unechten Widerspruchsbeweise .............................................12
Relationale Strukturen
Zahlen
Algebraische Strukturen
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xix
xx
© Karlheinz Hug, Hochschule Reutlingen
Leitlinienverzeichnis
9.8.04
Verzeichnis mathematischer Aussagen
1
2
Mengen
Definition 1.1 Menge Element Elementrelation .....................................................1
Definition 1.2 Gleichheit von Mengen ....................................................................1
Korollar 1.3 ...........................................................................................................2
Definition 1.4 Endliche Menge ...............................................................................2
Definition 1.5 Gleichheit von Elementen ................................................................3
Definition 1.6 Teilmenge .........................................................................................6
Korollar 1.7 ...........................................................................................................7
Definition 1.8 Potenzmenge ....................................................................................7
Korollar 1.9 ...........................................................................................................7
Definition 1.10 Durchschnitt Vereinigung Differenz symmetrische Differenz ......8
Definition 1.11 Komplement ...................................................................................8
Definition 1.12 Disjunktheit ....................................................................................9
Satz 1.13 Inklusion Durchschnitt Vereinigung ........................................................9
Satz 1.14 Durchschnitt Vereinigung ........................................................................9
Satz 1.15 Differenz ................................................................................................10
Satz 1.16 Komplement ..........................................................................................11
Satz 1.17 Symmetrische Differenz ........................................................................12
Definition 1.18 Durchschnitt Vereinigung ............................................................14
Satz 1.19 Rechenregeln für Mengensysteme .........................................................15
Definition 1.20 Zerlegung Überdeckung ..............................................................16
Korollar 1.21 .......................................................................................................16
Definition 1.22 Kartesisches Produkt ....................................................................16
Satz 1.23 Rechenregeln für zweistellige Produktmengen .....................................18
Definition 1.24 Relation ........................................................................................18
Definition 1.25 Umkehrrelation ............................................................................19
Definition 1.26 Abbildung ....................................................................................20
Definition 1.27 Bijektion Umkehrabbildung ........................................................21
Definition 1.28 Indizierung ...................................................................................26
Definition 1.29 Produktmenge ..............................................................................27
Satz 1.30 Rechenregeln für Produktmengen .........................................................28
Definition 1.31 n-stelliges kartesisches Produkt ...................................................29
Definition 1.32 Relation ........................................................................................31
Definition 1.33 Operation .....................................................................................31
Definition 1.34 Struktur ........................................................................................32
Theorem 1.35 Digitalisierung ...............................................................................35
Logik
Definition 2.1 Alphabet der Aussagenlogik ............................................................5
Definition 2.2 Aussagenkalkül, Aussagenlogischer Ausdruck ...............................6
Satz 2.3 Eindeutigkeit der Syntaxdefinition ............................................................7
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xxi
xxii
Verzeichnis mathematischer Aussagen
Definition 2.4 Belegung ..........................................................................................8
Definition 2.5 Interpretation ....................................................................................9
Definition 2.6 Allgemeingültigkeit Erfüllbarkeit ..................................................20
Korollar 2.7 .........................................................................................................20
Satz 2.8 Substitution einer Variablen in einer Tautologie durch einen Ausdruck .21
Definition 2.9 Logische Äquivalenz .....................................................................21
Korollar 2.10 .......................................................................................................21
Satz 2.11 Substitution einer Variablen in äquivalenten Aussagen durch einen
Ausdruck ................................................................................................................21
Satz 2.12 Substitution eines Teilausdrucks durch einen äquivalenten Ausdruck ..22
Satz 2.13 Negation .................................................................................................22
Satz 2.14 Negation, Konjunktion und Disjunktion ...............................................22
Definition 2.15 Duale Aussage .............................................................................23
Theorem 2.16 Dualitätstheorem der Aussagenlogik .............................................23
Satz 2.17 Konjunktion und Disjunktion ................................................................24
Satz 2.18 Verallgemeinerte Rechenregeln .............................................................25
Satz 2.19 Implikation Grundregeln .......................................................................25
Satz 2.20 Implikation Schlussregeln .....................................................................26
Satz 2.21 Äquivalenz .............................................................................................27
Korollar 2.22 .......................................................................................................27
Satz 2.23 Antivalenz ..............................................................................................28
Satz 2.24 Shannonsche Erweiterung .....................................................................28
Satz 2.25 Nand und Nor ........................................................................................33
Satz 2.26 Anzahl der Aussagefunktionen ..............................................................33
Definition 2.27 Aussagenlogische Basis ...............................................................33
Satz 2.28 Basen .....................................................................................................34
Definition 2.29 Faktor Term Normalform .............................................................35
Satz 2.30 Normalformen zu Aussagen ..................................................................36
Korollar 2.31 .......................................................................................................36
Satz 2.32 Dualität der Normalformen ...................................................................39
Satz 2.33 Eindeutige Belegung zu Min- und Maxterm .........................................40
Satz 2.34 Min- und Maxterme zu Belegung ..........................................................40
Satz 2.35 Anzahl der Min- und Maxterme ............................................................41
Satz 2.36 Eindeutige Belegungen zu KDNFen und KKNFen ...............................41
Satz 2.37 KDNFen und KKNFen zu Belegungen .................................................41
Satz 2.38 Anzahl der KDNFen und KKNFen .......................................................42
Theorem 2.39 Normalformen zu Aussagefunktionen ...........................................42
Korollar 2.40 .......................................................................................................43
Satz 2.41 Allgemeingültige und widersprüchliche Normalformen .......................43
Definition 2.42 Prädikat ........................................................................................44
Definition 2.43 Alphabet der Prädikatenlogik ......................................................47
Definition 2.44 Termkalkül, Prädikatenlogischer Term ........................................48
Definition 2.45 Formelkalkül, Prädikatenlogische Formel ...................................49
Satz 2.46 Eindeutigkeit der Syntaxdefinition ........................................................50
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Verzeichnis mathematischer Aussagen
3
4
9.8.04
xxiii
Satz 2.47 Binden freier Variablen ..........................................................................51
Definition 2.48 Belegung ......................................................................................52
Definition 2.49 Interpretation ................................................................................54
Definition 2.50 Modell Allgemeingültigkeit Erfüllbarkeit ...................................57
Satz 2.51 Abschlüsse Allgemeingültigkeit Erfüllbarkeit ......................................58
Definition 2.52 Logische Äquivalenz ...................................................................58
Satz 2.53 Substitutionslemma ...............................................................................58
Satz 2.54 Gebundene Umbenennung ....................................................................58
Satz 2.55 Bereinigte Form .....................................................................................59
Satz 2.56 Negation .................................................................................................59
Definition 2.57 Duale Formel ...............................................................................59
Theorem 2.58 Dualitätstheorem der Prädikatenlogik ...........................................60
Satz 2.59 Quantoren tauschen, entfernen, einführen .............................................60
Satz 2.60 Quantoren vereinen, trennen ..................................................................61
Satz 2.61 Quantoren verschieben ..........................................................................61
Definition 2.62 Prädikatenlogische Basis .............................................................61
Satz 2.63 Basen .....................................................................................................61
Satz 2.64 Normalformen quantorfreier Formeln ...................................................61
Definition 2.65 Pränexform ...................................................................................62
Satz 2.66 Pränexe Normalform zu Formeln ..........................................................62
Methodik
Relationale Strukturen
Satz 4.1 Umkehrrelation ..........................................................................................3
Definition 4.2 Nach- und Vorbereich ......................................................................3
Satz 4.3 Bereiche und Mengenoperationen .............................................................4
Definition 4.4 Eigenschaften zweistelliger Relationen ...........................................4
Satz 4.5 Eigenschaften und Bereiche ......................................................................6
Definition 4.6 Bild und Urbild ................................................................................7
Satz 4.7 Bilder und Mengenoperationen .................................................................8
Satz 4.8 Urbilder und Mengenoperationen ..............................................................8
Definition 4.9 Eigenschaften von Abbildungen ......................................................9
Satz 4.10 Eigenschaften, Bilder und Urbilder .........................................................9
Satz 4.11 Mengenoperationen und Umkehrrelation ..............................................11
Satz 4.12 Mengenoperationen und Bereiche .........................................................11
Satz 4.13 Mengenoperationen und Eigenschaften .................................................12
Satz 4.14 Zusammensetzen von Abbildungen .......................................................12
Definition 4.15 Komposition zweistelliger Relationen .........................................12
Satz 4.16 Eigenschaften der Komposition .............................................................13
Satz 4.17 Eigenschaften und Kompositionen ........................................................15
Korollar 4.18 .......................................................................................................15
Definition 4.19 Komposition von Abbildungen ....................................................16
Satz 4.20 Eigenschaften der Komposition .............................................................17
Satz 4.21 Eigenschaften von Inversen ...................................................................17
Satz 4.22 Kriterium für Inverse .............................................................................18
© Karlheinz Hug, Hochschule Reutlingen
xxiv
Verzeichnis mathematischer Aussagen
Satz 4.23 Eigenschaften und Kompositionen ........................................................18
Korollar 4.24 .......................................................................................................18
Definition 4.25 Links- und Rechtsinverse .............................................................18
Korollar 4.26 .......................................................................................................19
Definition 4.27 Kartesisches Produkt von Relationen und Abbildungen .............19
Definition 4.28 Eigenschaften zweistelliger homogener Relationen ....................21
Korollar 4.29 Eigenschaften zugeordneter Relationen .........................................23
Satz 4.30 Beziehungen zwischen Eigenschaften ...................................................23
Satz 4.31 Eigenschaften und Bereiche ..................................................................24
Definition 4.32 Kompositionsprodukt homogener zweistelliger Relationen ........25
Satz 4.33 Eigenschaften und Operationen .............................................................25
Satz 4.34 Operationen und Eigenschaften .............................................................26
Definition 4.35 Intervall ........................................................................................26
Satz 4.36 Eigenschaften und Intervalle .................................................................27
Definition 4.37 Bild und Urbild von Relationen ...................................................27
Satz 4.38 Bilder von Relationen ............................................................................27
Satz 4.39 Urbilder von Relationen ........................................................................28
Definition 4.40 Relationale Morphismen Isomorphie ...........................................28
Korollar 4.41 Bilder, Urbilder und Morphismen ..................................................29
Definition 4.42 Äquivalenzklasse Quotientenmenge ............................................30
Satz 4.43 Eigenschaften von Äquivalenzrelationen ..............................................32
Theorem 4.44 Äquivalenzrelationen und Zerlegungen ........................................33
Definition 4.45 Repräsentantensystem ..................................................................34
Satz 4.46 Charakterisierung von Äquivalenzrelationen ........................................34
Satz 4.47 Faktorisierung einer Abbildung .............................................................35
Satz 4.48 Zerlegung eines Homomorphismus .......................................................36
Satz 4.49 Übertragung eines Homomorphismus ...................................................36
Satz 4.50 Homomorphismen von Äquivalenzrelationen .......................................36
Satz 4.51 Äquivalenzrelation und Halbordnung zu einer Präordnung ..................39
Definition 4.52 Cantorsche Gleichmächtigkeits-definition ..................................39
Definition 4.53 Dedekindsche Endlichkeitsdefinition ..........................................40
Satz 4.54 Gleichmächtigkeit als Äquivalenzrelation .............................................40
Satz 4.55 Isomorphie als Äquivalenzrelation ........................................................40
Definition 4.56 Mächtigkeit ..................................................................................41
Definition 4.57 Natürliche Ordinalzahl .................................................................42
Definition 4.58 Natürliche Kardinalzahl ...............................................................42
Satz 4.59 Endlichkeit ist Natürlichkeit ..................................................................42
Korollar 4.60 .......................................................................................................43
Definition 4.61 Abzählbare und überabzählbare Menge ......................................43
Theorem 4.62 Dualitätsprinzip der Ordnungstheorie ...........................................46
Satz 4.63 Rechenregeln für Ordnungen .................................................................47
Definition 4.64 Nachbarrelation ............................................................................48
Korollar 4.65 .......................................................................................................48
Satz 4.66 Ordnungen und Bereiche .......................................................................49
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Verzeichnis mathematischer Aussagen
5
9.8.04
xxv
Definition 4.67 Abgeschlossenes und offenes Intervall ........................................49
Definition 4.68 Kette und Antikette ......................................................................50
Definition 4.69 Kleinstes und größtes Element ....................................................50
Satz 4.70 Eindeutigkeit des kleinsten und größten Elements ................................51
Korollar 4.71 .......................................................................................................51
Definition 4.72 Extrema ........................................................................................52
Satz 4.73 Extrema ..................................................................................................53
Satz 4.74 Extrema von Vereinigung ......................................................................54
Definition 4.75 Schranken Grenzen Infimum Supremum ....................................58
Satz 4.76 Beziehungen zwischen ausgezeichneten Elementen .............................59
Definition 4.77 Isotone und antitone Morphismen Isomorphie ............................60
Satz 4.78 Ordnung und Ordnungsdiagramm .........................................................61
Satz 4.79 Ordnungsisomorphie primitiver Vor- und Nachbereiche ......................61
Definition 4.80 Sortierte Familie ..........................................................................62
Satz 4.81 Vollordnung, kleinste und minimale Elemente ......................................62
Definition 4.82 Wohlordnung ................................................................................63
Satz 4.83 Nachfolgerfunktion einer Wohlordnung ................................................63
Theorem 4.84 Wohlordnungssatz Zermelosches Auswahlaxiom
Zornsches Lemma Kettenaxiom ............................................................................63
Definition 4.85 Ordnung der Ordinalzahlen .........................................................64
Satz 4.86 Wohlordnung der Ordinalzahlen ............................................................64
Definition 4.87 Mächtigerrelation .........................................................................65
Satz 4.88 Mächtigerrelation als Präordnung .........................................................65
Satz 4.89 Bernsteinscher Äquivalenzsatz ..............................................................66
Theorem 4.90 Wohlordnung der Kardinalzahlen ..................................................66
Korollar 4.91 .......................................................................................................66
Satz 4.92 Ordnungsregeln für Kardinalzahlen ......................................................67
Korollar 4.93 Sortierte Folge ................................................................................68
Definition 4.94 M-Hülle .......................................................................................71
Definition 4.95 Durchschnittsstabilität .................................................................71
Korollar 4.96 Durchschnittsstabilität und M-Hülle ..............................................72
Definition 4.97 Hüllenoperator .............................................................................72
Satz 4.98 M-Hülle und Hüllenoperator .................................................................72
Korollar 4.99 Durchschnittsstabilität und Hüllenoperator ....................................72
Satz 4.100 Hüllenoperator und Durchschnittsstabilität .........................................73
Korollar 4.101 M-Hülle und Durchschnittsstabilität ............................................73
Definition 4.102 Hüllen von Relationen ...............................................................73
Satz 4.103 Hüllen von Relationen .........................................................................74
Satz 4.104 Hüllen azyklischer Relationen .............................................................74
Korollar 4.105 .....................................................................................................75
Zahlen
Satz 5.23 Keine maximale natürliche Zahl ..............................................................1
Korollar 5.24 Archimedisches Axiom ....................................................................1
Satz 5.25 Abzählbarkeit der ganzen Zahlen ............................................................1
© Karlheinz Hug, Hochschule Reutlingen
xxvi
Verzeichnis mathematischer Aussagen
6
Satz 5.26 Division mit Rest .....................................................................................2
Definition 5.27 Teiler Vielfaches Teiltrelation ........................................................5
Satz 5.28 Rechenregeln zur Teiltrelation .................................................................5
Satz 5.29 Ordnungseigenschaften ...........................................................................5
Satz 5.30 Teilt und Kleinergleich ............................................................................5
Satz 5.31 Existenz und Eindeutigkeit von ggT und kgV .........................................7
Definition 5.32 Größter gemeinsamer Teiler Kleinstes gemeinsames Vielfaches ..7
Satz 5.33 Rechenregeln zum ggT ............................................................................7
Satz 5.34 Kongruenz modulo n ...............................................................................8
Definition 5.35 Primzahl .........................................................................................8
Lemma 5.36 Existenz eines Primteilers ..................................................................8
Satz 5.37 Satz von Euklid ........................................................................................8
Satz 5.38 Abzählbarkeit der rationalen Zahlen .......................................................9
Axiom 5.39 Reelle Zahlen .....................................................................................11
Satz 5.40 Eindeutigkeit der reellen Zahlen ............................................................12
Satz 5.41 Überabzählbarkeit der reellen Zahlen ....................................................13
Definition 5.42 Operationen mit reellen Funktionen ............................................14
Definition 5.43 Größenordnung Groß-O-Notation ...............................................15
Satz 5.44 Rechenregeln zu Größenordnungen ......................................................16
Satz 5.45 Markante Größenordnungen ..................................................................16
Algebraische Strukturen
Definition 6.1 Gruppoid ..........................................................................................1
Definition 6.2 Assoziativität Kommutativität Halbgruppe .....................................1
Definition 6.3 Verknüpfung mehrerer Elemente .....................................................2
Satz 6.4 Klammerverzicht bei Assoziativität ..........................................................2
Satz 6.5 Umordnung bei Kommutativität ................................................................2
Definition 6.6 Neutrales Element Eins Monoid ......................................................2
Definition 6.7 Null ..................................................................................................3
Definition 6.8 Idempotentes Element ......................................................................3
Definition 6.9 Gleichung Lösung ............................................................................3
Definition 6.10 Teiler Teilbarkeit ............................................................................3
Definition 6.11 Kürzbarkeit .....................................................................................4
Korollar 6.12 Kürzbarkeit .......................................................................................4
Lemma 6.13 Kürzbarkeit ........................................................................................4
Definition 6.14 Lösbarkeit Quasigruppe .................................................................5
Korollar 6.15 Lösbarkeit .........................................................................................5
Korollar 6.16 Endlichkeit, Kürzbarkeit und Lösbarkei ..........................................5
Satz 6.17 Endlichkeit und Lösbarkeit ......................................................................5
Satz 6.18 Kürzbarkeit und Lösbarkeit .....................................................................6
Satz 6.19 Lösbarkeit und Eins .................................................................................6
Definition 6.20 Inverses Element Invertierbarkeit Gruppe .....................................6
Satz 6.21 Inverse Elemente .....................................................................................7
Satz 6.22 Charakterisierung von Gruppen ...............................................................9
Satz 6.23 Charakterisierung endlicher Gruppen ....................................................10
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
Verzeichnis mathematischer Aussagen
xxvii
Definition 6.24 Abgeschlossenheit Unterstruktur .................................................10
Satz 6.25 Durchschnittsstrukturen .........................................................................11
Definition 6.26 Erzeugte Struktur Erzeugendensystem ........................................12
Definition 6.27 Verbindung ...................................................................................12
Definition 6.28 Morphismen Isomorphie ..............................................................13
Satz 6.29 Bijektive Homomorphismen ..................................................................13
Satz 6.30 Injektion eines Untergruppoids ..............................................................14
Definition 6.31 Komplexprodukt ..........................................................................14
Definition 6.32 Komplexinverse ...........................................................................14
Satz 6.33 Rechenregeln für Komplexprodukt und Komplexinverse .....................15
Satz 6.34 Charakterisierung von Untergruppen ....................................................15
Definition 6.35 Potenz eines Elements .................................................................15
Satz 6.36 Rechenregeln für Potenzen eines Elements ...........................................16
Definition 6.37 Potenz einer Menge .....................................................................16
Korollar 6.38 Charakterisierung von Untergruppoiden ........................................16
Satz 6.39 Rechenregeln für Potenzen einer Menge ...............................................17
Satz 6.40 Hüllen und Potenzen ..............................................................................17
Definition 6.41 Verträgliche Relation Kongruenz Geordnete Struktur .................18
Satz 6.42 Verträglichkeit .......................................................................................18
Satz 6.43 Produktgruppoid ....................................................................................18
Lemma 6.44 Induzierte Kongruenz ......................................................................19
Satz 6.45 Faktorgruppoid ......................................................................................19
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
xxviii
© Karlheinz Hug, Hochschule Reutlingen
Verzeichnis mathematischer Aussagen
9.8.04
Programmverzeichnis
1
2
3
4
5
6
Mengen
Logik
Methodik
Relationale Strukturen
Programm 4.1 Gleichmächtigkeit von Mengen ...................................................39
Programm 4.2 Mächtigkeit einer Menge ..............................................................44
Programm 4.3 Element mit Eigenschaft ..............................................................44
Programm 4.4 Struktogramm: Minimum von zwei Elementen ...........................54
Programm 4.5 Minimum von zwei Elementen ....................................................55
Programm 4.6 Struktogramm: Minimum von drei Elementen ............................55
Programm 4.7 Struktogramm: Minimum einer Kette ..........................................56
Programm 4.8 Minimum einer Kette ...................................................................56
Programm 4.9 Minimum einer Kette, verbesserte Variante .................................56
Programm 4.10 Minima einer halbgeordneten Menge .........................................57
Programm 4.11 Struktogramm: Sortiertsein einer Folge .....................................69
Programm 4.12 Sortiertsein einer Folge ..............................................................69
Programm 4.13 Sortiertsein einer Folge verbesserte Version ..............................69
Zahlen
Programm 5.1 Binäres Suchen .............................................................................16
Programm 5.2 Sortieren durch Auswählen ..........................................................17
Algebraische Strukturen
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xxix
xxx
© Karlheinz Hug, Hochschule Reutlingen
Programmverzeichnis
9.8.04
Tabellenverzeichnis
1
2
3
4
5
6
Mengen
Tabelle 1.1 Mengen und Datentypen .......................................................................5
Tabelle 1.2 Variablen Vereinbarungen Vergleiche ...................................................5
Tabelle 1.3 Menge und Datentyp SET ..................................................................13
Tabelle 1.4 Relation als Tabellen ...........................................................................19
Tabelle 1.5 Wertetabelle der Zweierpotenzfunktion .............................................21
Tabelle 1.6 Verknüpfungstabelle kleines Einmaleins ............................................23
Tabelle 1.7 Mathematische und programmiersprachliche Funktionen .................25
Tabelle 1.8 Kartesisches Produkt und strukturierte Datentypen ...........................31
Tabelle 1.9 Strukturen ...........................................................................................32
Logik
Tabelle 2.1 Aussagen und Befehle ..........................................................................2
Tabelle 2.2 Wahrheitswerte und boolesche Datentypen ..........................................4
Tabelle 2.3 Variablen Vereinbarungen .....................................................................4
Tabelle 2.4 Logische Operationen ...........................................................................5
Tabelle 2.5 Wahrheitstabellen der logischen Operationen ......................................7
Tabelle 2.6 Zusammengefasste Wahrheitstabelle ..................................................10
Tabelle 2.7 Wahrheitstabelle zu einer Aussage .....................................................11
Tabelle 2.8 Kompakte Wahrheitstabelle zu einer Aussage ...................................11
Tabelle 2.9 Allgemeine Wahrheitstabelle ..............................................................12
Tabelle 2.10 Wahrheitstabelle - Beispiel ...............................................................16
Tabelle 2.11 Wahrheitstabelle einer dreistelligen Aussagefunktion ......................19
Tabelle 2.12 Aussagen in Programmiersprachen ..................................................29
Tabelle 2.13 Wahrheitstabelle für lange Auswertung ............................................30
Tabelle 2.14 Wahrheitstabelle für kurze Auswertung ...........................................30
Tabelle 2.15 Einstellige aussagenlogische Operationen ........................................32
Tabelle 2.16 Zweistellige aussagenlogische Operationen .....................................32
Tabelle 2.17 Kanonische Normalformen zweistelliger Aussagefunktionen .........37
Tabelle 2.18 Kompakte Wahrheitstabelle ..............................................................37
Methodik
Relationale Strukturen
Tabelle 4.1 Spezielle kartesische Produkte von Relationen und Abbildungen .....20
Zahlen
Tabelle 5.1 Beispiel für nichtnegativen Rest ...........................................................4
Tabelle 5.2 Beispiel für vorzeichenbehafteten Rest ................................................4
Tabelle 5.3 Exemplarische Näherungswerte markanter Wachstumsfunktionen ...16
Tabelle 5.4 Realtypen in Component Pascal .........................................................20
Tabelle 5.5 Reelle Zahlen und Gleitpunktzahlen ..................................................20
Algebraische Strukturen
Tabelle 6.1 Verknüpfungstabelle eines Gruppoids ..................................................1
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
xxxi
xxxii
Tabellenverzeichnis
Tabelle 6.2 Verknüpfungstabelle der Linksnullhalbgruppe mit drei Elementen .....7
A ISO 8859-1 Zeichencode Latin1
Tabelle A.1 Spaltenform ..........................................................................................1
Tabelle A.2 Matrixform ...........................................................................................3
B Literaturverzeichnis
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1
Mengen
AufgabeBeispiel
1
Bild
1 1 (1)
MathAussagen
Leitlinie Programm
1
1 1
Tabelle 1
Wir starten mit der Mengenlehre (set theory), die zusammen mit der Logik die Grundlage der Mathematik und der theoretischen Informatik bildet. Mengen kennt jeder: eine
Menge FreundInnen, eine Menge Glück, eine Menge Äpfel, Mengen von Ameisen,
Autos, Büroklammern, Notizzetteln und Handynummern.
1.1
Grundbegriffe
Unter einer „Menge“ verstehen wir jede Zusammenfassung M von bestimmten,
wohlunterschiedenen Objecten unserer Anschauung oder unseres Denkens (welche
die „Elemente“ von M genannt werden) zu einem Ganzen.
Georg Cantor1
Es gibt also Objekte, die in einer Teil-Ganzes-Beziehung zueinander stehen können.
Definition 1.1
Menge
Element
Elementrelation
Wir schreiben
x∈M
und nennen das Objekt M eine Menge (set), das Objekt x ein Element von M, und
„∈“ die Elementrelation. „x ∈ M“ lesen wir als x ist Element der Menge M, x
gehört zu M, x ist in M enthalten oder M enthält x. „x ∈ M“ ist eine Aussage (streng
genommen eine Aussageform), die wahr oder falsch sein kann. Das Gegenteil davon
ist:
x∉M
x ist nicht in M enthalten.
Die umgekehrten Relationen lauten:
M∋x
M enthält x.
M /∋ x
M enthält x nicht.a
a
Der Schrägstrich „/“ sollte „∋“ durchstreichen, doch leider fehlt dieses Zeichen im Zeichensatz unseres Textsystems.
Beispielsweise ist die LeserIn dieses Satzes ein Element der Menge der Studierenden
der Hochschule Reutlingen - oder nicht? Eigentlich wäre zunächst zu klären, was Aussagen sind, bevor wir uns mit Beziehungen zwischen und Aussagen über Mengen
befassen. Aussagen sind Gegenstand der Aussagenlogik, die wir in Kapitel 2 behandeln
- doch nutzen wir dort den Begriff Menge zum Definieren des Begriffs Aussage. In diesem Kapitel verwenden wir die Logik intuitiv.
Definition 1.2
Gleichheit von Mengen
Die Mengen M und N heißen
gleich (identisch, equal), M = N, wenn sie dieselben Elemente enthalten, d.h. wenn
für jedes x gilt:
x∈M
genau dann, wenn
x ∈ N;
ungleich (unequal), M ≠ N, wenn sie nicht gleich sind, also sich in mindestens einem
Element unterscheiden.
1
Georg Cantor (1845 - 1918), deutscher Mathematiker, begründete die Mengenlehre, Zitat aus
[30] zitiert nach [6].
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Kapitel 1 - Seite 1 von 40
1-2
Korollar 1.3
1 Mengen
Für beliebige Mengen L, M, N gilt:
(1)
(2)
(3)
(4)
Definition 1.4
Endliche Menge
1.1.1
M = M.
M = N genau dann, wenn N = M.
M ≠ N genau dann, wenn N ≠ M.
Aus L = M und M = N folgt L = N.
Reflexivität
Symmetrie
Symmetrie
Transitivität
Eine Menge heißt endlich (finite), wenn sie nur endlich viele Elemente hat, sonst
unendlich (infinite). Eine exakte Definition folgt in Kapitel 4.
Beschreibungen von Mengen
Wie beschreiben wir eine Menge? Auf zwei Arten:
l
l
extensional, wenn die Menge endlich ist, indem wir ihre Elemente aufzählen; z.B.
beschreibt
M = {1, 2, 3}
die Menge der ersten drei natürlichen Zahlen;
intensional, indem wir die Elemente der Menge charakterisieren, also eine definierende Eigenschaft, Aussage oder Bedingung angeben; z.B. beschreibt
M = {x | x ist eine Primzahl}
die Menge der Primzahlen, gelesen als „M ist die Menge aller x mit der Eigenschaft:
x ist Primzahl.“. Das Beispiel zeigt, dass man auch unendliche Mengen intensional
beschreiben kann.
Welche Zeichen benutzen wir dazu und was bedeuten sie? Zwei Arten:
Namen
l
Kombinationszeichen
l
Namen, wobei wir zwei Arten unterscheiden:
■ In {1, 2} sind 1 und 2 Namen für Elemente; hier handelt es sich um literale
Konstanten, d.h. feste Namen für bestimmte Werte. Literal, d.h. buchstäblich
bedeutet: 1 bezeichnet den Zahlenwert 1, gesprochen „eins“.
■ In M = N sind M und N Namen für Mengen; hier handelt es sich um Variablen,
d.h. frei wählbare Namen für unbestimmte Mengen. In {x | x ist gerade} ist x ein
frei wählbarer Name für die Elemente, ein Platzhalter für die Werte 2, 4, 6,.., die
zur Menge gehören. Meist verwenden wir für Mengen kursive Großbuchstaben
L, M, N,.., für Elemente kursive Kleinbuchstaben x, y, z,... als Variablennamen.
Kombinationszeichen wie die geschweiften Klammern „{“ und „}“, die die Elemente einer Menge umfassen, das Komma „ , “, das die Elemente trennt, der senkrechte Strich „|“, den wir als „mit der Eigenschaft“ lesen, das „∈“, das ein Element
und eine Menge zu einer Aussage kombiniert, und das Gleichheitszeichen „=“, das
zwei Mengen zu einer Aussage kombiniert.
Nach Definition 1.2 kann ein Element nur einmal in einer Menge vorkommen (auch
wenn es mehrfach hingeschrieben ist). Die Anordnung der Elemente ist belanglos:
Abkürzungen
1 ∈ {1, 3, 5} = {1, 3, 1, 3, 5, 3} = {5, 3, 5, 1, 5, 3, 5} ≠ {4, 5, 6} /∋ 1.
Beziehungsketten wie diese nutzen eine abkürzende Schreibweise, z.B. ist
x∈M=N
x ∈ M, y ∈ N
x, y ∈ M
zu lesen als
zu lesen als
zu lesen als
x ∈ M und M = N,
x ∈ M und y ∈ N,
x ∈ M, y ∈ M.
Einelementige Mengen sind von ihrem Element zu unterscheiden:
x ≠ {x} ≠ {{x}},
© Karlheinz Hug, Hochschule Reutlingen
aber
x ∈ {x} ∈ {{x}}.
9.8.04
1.1 Grundbegriffe
1-3
Nur endliche Mengen lassen sich extensional exakt beschreiben. Aufzählungen mit
Punkten sind ungenau, aber hoffentlich intuitiv zu erfassen:
{0, 1, 2,.., 9}, {0, 2, 4, 6,...}, {2, 3, 5, 7,...}.
Eine abkürzende Schreibweise bei intensional beschriebenen Mengen ist
Definierende Gleichheit
{x ∈ M | E(x)} := {x | x ∈ M und E(x)},
wobei E(x) für eine informal oder formal angegebene Eigenschaft von x steht. Das
Symbol „:=“ liest sich „ist definitionsgemäß gleich“, es bedeutet definierende Gleichheit: Die rechte, bekannte Seite definiert die linke, neue Seite.
Die Gleichheit von Elementen lässt sich analog zur Gleichheit von Mengen definieren.
Definition 1.5
Gleichheit von
Elementen
Die Elemente x und y heißen
gleich, x = y, wenn sie zu denselben Mengen gehören, d.h. wenn für jede Menge M
gilt:
x∈M
genau dann, wenn
y ∈ M;
ungleich, x ≠ y, wenn sie nicht gleich sind.
Mit intensionaler Mengenbeschreibung ergibt sich:
x = y genau dann, wenn x und y jede Eigenschaft gemeinsam haben.
Diese auf Leibniz1 zurückgehende Definition der Gleichheit setzt freilich voraus, dass
der Begriff „Eigenschaft eines Objekts“ geklärt ist.
1.1.2
M
M
Russellsche Antinomie
Auf Cantors Definition von Mengen basiert die naive Mengenlehre, die durchaus Tükken birgt. Betrachten wir z.B. die Menge aller Mengen, die sich nicht selbst enthalten:
R = {M | M ∉ M}.
Aus R ∈ R folgt R ∉ R. Aus R ∉ R folgt R ∈ R. Also gilt R ∈ R genau dann, wenn
R ∉ R. Das ist offenbar ein Widerspruch! Die Überlegung ist als russellsche Antinomie
bekannt.2 Sprachliche Antinomien wie
„Dieser Satz ist falsch.“,
die schon der Kreter Epimenides um 600 v.u.Z. kannte, treten auf, wenn man Aussagen
über Dinge und Aussagen über Aussagen vermischt. Ähnliche Probleme entstehen in
der Informatik, wenn sich Datenobjekte auf sich selbst beziehen. Um mengentheoretische Antinomien auszuschließen, entwickelten Mathematiker Anfang des 20. Jahrhunderts die axiomatische Mengenlehre. Wir gehen nicht darauf ein, sondern begnügen uns
mit einer Leitlinie.
Leitlinie 1.1
Mengenbildung
Sei vorsichtig bei Mengenbildungen der Art „Die Menge aller Mengen mit der Eigenschaft...“!
1
Gottfried Wilhelm Leibniz (1646 - 1716), deutscher Philosoph, Mathematiker, Universalgelehrter, begründete die mathematische Logik und die Infinitesimalrechnung, entwickelte eine
funktionsfähige Rechenmaschine für die vier Grundrechenarten, entdeckte das Dualsystem.
2
Bertrand (Earl of) Russell (1872 - 1970), britischer Mathematiker, Philosoph, Schriftsteller,
Pazifist, Nobelpreisträger.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1-4
1 Mengen
1.2
Beispiele für Mengen
Leere Menge
Nach Definition 1.2 kann es nur eine Menge geben, die kein Element enthält; sie heißt
leere Menge (empty set) und wird mit ∅ oder {} bezeichnet.
Alphabete
In der Informatik sind Zeichenmengen besonders wichtig. Ein Zeichen (character) ist
ein zur Darstellung von Information vereinbartes Objekt. Ein Alphabet oder Zeichensatz (Zeichenvorrat, character set) ist eine endliche Menge von Zeichen. Ein Zeichen,
dem wir eine Bedeutung beimessen, nennen wir Symbol.
Menge = Alphabet
{a, b, c,.., z, A, B, C,.., Z}
{α, β, χ,.., ζ, Α, Β, Χ,.., Ζ}
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
{0,.., 9, A, B, C, D, E, F}
{0, 1}
{∈, ∉, ∋, /∋, =, ≠, ⊆, ⊂, /⊆, ⊄, ⊇, ⊃}
{+, −, ∗, /}
Elemente = Zeichen
lateinische Buchstaben
griechische Buchstaben
Dezimalziffern
Hexadezimalziffern
Binärzeichen, Dualziffern, Wahrheitswerte
Relationen der Mengenlehre
arithmetische Operationen
Ein numerisches (numeric) Zeichen gehört zu einem Alphabet von Ziffern und Sonderzeichen zur Darstellung von Zahlen. Ein alphanumerisches (alphanumeric) Zeichen gehört zu einem Alphabet, das mindestens die Buchstaben und Dezimalziffern
enthält. Ein Binärzeichen (binary element) oder Bit (binary digit) ist ein Zeichen aus
einem beliebigen Alphabet von zwei Zeichen, Binäralphabet genannt.
Zahlenmengen
Gängige Zahlenmengen bezeichnen wir in diesem Skript wie üblich mit doppelt gestrichenen Großbuchstaben so:
Menge = Zahlenmenge
lB
= {0, 1}
lP
= {2, 3, 5, 7, 11, 13, 17, 19,...}
lN
= {1, 2, 3,...}
lN
= {0, 1, 2, 3,...}
0
'
3
!
Namen
Elemente = Zahlen
boolesche Werte, Wahrheitswerte
Primzahlen
natürliche Zahlen
lN mit 0, nichtnegative ganze Zahlen
= {..., −2, −1, 0, 1, 2,...}
= {p / q | p ∈ , q ∈ lN}
ganze Zahlen
rationale Zahlen
reelle Zahlen
= {x + i ∗ y | x, y ∈ }
komplexe Zahlen, i := √−1
Betrachten wir noch einmal die Frage der Namen:
'
!
x ∈ {a,.., z}
bedeutet: x ist eine literale Konstante, nämlich der Wert x aus der Menge der Kleinbuchstaben. Als Name für eine Buchstabenvariable (d.h. eine Variable, die Werte aus
einer Menge von Buchstaben annehmen kann) können wir keinen Buchstaben, sondern
müssen ein anderes Zeichen wählen, z.B. einen griechischen Buchstaben:
α ∈ {a,.., z}.
Allgemein gilt: Der Name einer Variablen, die ein Element einer Menge bezeichnet,
darf nicht mit einem Namen eines Werts dieser Menge übereinstimmen. Zudem müssen
sich Wertenamen und Variablennamen von Kombinationszeichen unterscheiden.
x∈
!
bedeutet: x ist eine reelle (Zahlen-)variable, ihr Wert ist eine beliebige, unbestimmte
reelle Zahl.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.2 Beispiele für Mengen
1-5
Kapitel 5 befasst sich ausführlich mit Zahlen. Hier genüge der Hinweis, dass den Zahlenmengen der Mathematik in vielen Programmiersprachen Zahlen-Datentypen entsprechen, die jedoch stets nur endliche Wertebereiche haben. Programmiersprachen
bieten auch Datentypen, deren Wertebereiche die Zeichen eines bestimmten Zeichensatzes sind. Meist lösen sie das Problem, literale Zeichenkonstanten von Variablennamen zu unterscheiden, indem sie Zeichenkonstanten mit Hochkommas klammern.
Tabelle 1.1
Mengen und
Datentypen
Mathematik
Menge
Elemente
Operationen
Datentyp
Werte
Operationen
Zeichensatz
a,.., z,
0,.., 9,...
=≠<>≤≥
CHAR,
unsigned char
’a’,.., ’z’,
’0’,.., ’9’,...
= # < > <= >=
0, 1, 2,...
+ − ∗ / modulo
=≠<>≤≥
NATURAL,
unsigned int
0, 1, 2,...
INTEGER, int
..., -1, 0, 1,...
lN
0
'
3
!
Pascal* und C*
Programmiersprachen
0, ±1, ±2,...
1/2, −3/4,...
+−∗/
=≠<>≤≥
9
5,678∗10
0.5, -0.75,...
REAL, float
5.678E9
+ - * DIV MOD
= # < > <= >=
+-*/
= # < > <= >=
Wir weisen gelegentlich auf weitere Entsprechungen zwischen mathematischen und
programmiersprachlichen Begriffen hin. Dabei beschränken wir uns auf zwei Familien
imperativer, d.h. anweisungsorientierter Programmiersprachen: Pascal* steht für Sprachen im Entwicklungsbaum von Pascal1 wie Modula, Oberon2, Component Pascal,
Ada3, Eiffel4; C* für Sprachen im Entwicklungsbaum von C wie C++, Java, C#.
Sowohl in der Mathematik als auch in Programmen sind alle Objekte zu vereinbaren,
bevor man über sie Aussagen treffen oder sie in Ausdrücken oder Anweisungen benutzen darf. Die folgende Tabelle zeigt Entsprechungen; auf die Unterschiede zwischen
dem mathematischen und dem programmiersprachlichen Variablenbegriff gehen wir
hier nicht ein.
Tabelle 1.2
Variablen
Vereinbarungen
Vergleiche
Begriff
Variable
Programmiersprachen
Mathematik
n, x
Pascal*
C*
n, x
!
Vereinbarung Sei n ∈ lN0, x ∈ . VAR n : NATURAL; x : REAL; unsigned int n; float x;
Gleichheit
x=y
x=y
x == y
Ungleichheit
x≠y
x # y, x /= y, x <> y
x != y
1
Blaise Pascal (1623 - 1662), französischer Philosoph, Mathematiker, entwickelte als einer der
Ersten eine Rechenmaschine für Addition und Subtraktion, begründete die Wahrscheinlichkeitsrechnung.
2
Oberon, Herrscher der Geister, Gatte der Feenkönigin Titania in William Shakespeares „Ein
Sommernachtstraum“; ein Mond des Uranus, in den 80er Jahren von einer Voyager-Sonde passiert.
3
Augusta Ada (Countess of) Lovelace, geb. Byron (1815 - 1852), britische Mathematikerin,
Mitarbeiterin des Rechnerpioniers Charles Babbage, erste Programmiererin.
4
Gustave Eiffel (1832 - 1923), französischer Ingenieur, konstruierte Bahnhöfe, Brücken und
den Eiffelturm.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1-6
1.3
1 Mengen
Beziehungen zwischen Mengen
Definition 1.6
Teilmenge
Wir definieren Teilmengenrelationen für Mengen M, N. „⊆“ heißt Inklusion, „⊂“
strikte Inklusion.a M heißt eine Teilmenge (Untermenge, subset) von N, N heißt eine
Obermenge (superset) von M, N umfasst (includes) M,
M⊆N
genau dann, wenn
jedes Element von M auch Element von N ist,
d.h. genau dann, wenn für jedes x gilt: aus x ∈ M folgt x ∈ N.
M heißt eine echte Teilmenge (proper subset) von N, N heißt eine echte Obermenge
(proper superset) von M,
M⊂N
M ⊆ N und M ≠ N.
genau dann, wenn
Die negierten Relationen lauten:
M /⊆ N
M⊄N
nicht M ⊆ N.b
nicht M ⊂ N.
genau dann, wenn
genau dann, wenn
Die umgekehrten Relationen lauten:
M⊇N
M⊃N
N ⊆ M.
N ⊂ M.
genau dann, wenn
genau dann, wenn
a
In der Literatur dient „⊂“ auch als Symbol für die nicht strikte Inklusion; für die strikte Inklusion ist dann eine Kombination aus „⊂“ und „≠“ zu verwenden, die es im Zeichensatz unseres
Textsystems nicht gibt.
b
Beispiele
Der Schrägstrich „/“ sollte „⊆“ durchstreichen, leider fehlt dieses Zeichen im Zeichensatz.
Beispielsweise gilt {1, 2} ⊆ {1, 2}, {1, 2} ⊂ {1, 2, 3}, {1, 2} /⊆ {1, 3}, {1, 2} ⊄ {3},
{1, 2, 3} ⊇ {1, 2}, {1, 2, 3} ⊃ {2}.
∈, ⊆ und ⊂ sind scharf zu unterscheiden. Es ist zwar 1 ∈ {1, 2}, aber weder 1 ⊆ {1, 2}
noch 1 ⊂ {1, 2}, wohl aber {1} ⊆ {1, 2} und {1} ⊂ {1, 2}.
Euler-Venn-Diagramm
Um Mengen zu veranschaulichen, kann man sie grafisch durch Mengen-, Euler- oder
Venn-Diagramme1 darstellen: als geschlossene Kurven, die die ggf. durch Punkte dargestellten Elemente umschließen. Man nennt deshalb Elemente auch gern Punkte.
Mengen können verschieden zueinander liegen:
Bild 1.1
Mengenbeziehungen
N
M
M
M
M
N
N
N
1
Leonhard Euler (1707 - 1783), schweizer Mathematiker, Physiker, begründete die Graphentheorie und die Variationsrechnung.
John Venn (1834 - 1923), britischer Logiker, Philosoph.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.3 Beziehungen zwischen Mengen
Korollar 1.7
1-7
Für beliebige Mengen L, M, N gilt:
M ⊆ N genau dann, wenn M ⊂ N oder M = N.
∅ ⊆ M.
Aus M ≠ ∅ folgt ∅ ⊂ M.
M ⊆ M.
M ⊄ M.
Aus M ⊆ N und N ⊆ M folgt M = N.
M ⊆ N und N ⊆ M genau dann, wenn M = N.
Aus M ⊂ N folgt N ⊄ M.
Aus L ⊆ M und M ⊆ N folgt L ⊆ N.
Aus L ⊂ M und M ⊂ N folgt L ⊂ N.
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
Reflexivität
Irreflexivität
Antisymmetrie, Identitivität
Asymmetrie
Transitivität
Die Antisymmetrie verwendet man oft, um die Gleichheit von Mengen zu zeigen - man
zeigt, dass beide Inklusionen gelten. Aufgrund von (7) könnte man die Gleichheit mittels der Inklusion definieren.
Beachte, dass aus M /⊆ N nicht folgt N ⊆ M!
Für die Zahlenmengen gilt die Inklusionskette:
lN
⊂ lN 0 ⊂
' ⊂ 3 ⊂ ! ⊂ .
Auch Mengen lassen sich zu Mengen zusammenfassen, man erhält so Mengensysteme.
Definition 1.8
Potenzmenge
Die Potenzmenge (power set) einer Menge M ist die Menge aller Teilmengen von M:
P(M) := {N | N ⊆ M}.
Warnt nicht Leitlinie 1.1 vor der Potenzmengenbildung? Nein, sie ist ungefährlich:
Wenn eine Menge widerspruchsfrei ist, so ist es auch die Menge ihrer Teilmengen.
Beispiele
Korollar 1.9
P(∅)
P({1})
P({1, 2})
P({1, 2, 3})
= {∅}.
= {∅, {1}}.
= {∅, {1}, {2}, {1, 2}}.
= {∅, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}}.
Für Mengen M, N gilt:
Aus N ⊆ M folgt P(N) ⊆ P(M).
Aus N ⊂ M folgt P(N) ⊂ P(M).
Abkürzungen
Monotonie
Wir schreiben auch
P{1, 2, 3}
statt
P({1, 2, 3}).
Allgemein lassen wir äußere runde Klammern dann weg, wenn das durch sie Geklammerte selbst geklammert ist und dadurch keine Mehrdeutigkeiten entstehen:
f(...)
f[...]
f{...}
9.8.04
statt
statt
statt
f((...)),
f([...]),
f({...}).
© Karlheinz Hug, Hochschule Reutlingen
1-8
1.4
1 Mengen
Operationen mit Mengen
Definition 1.10
Durchschnitt
Vereinigung
Differenz
symmetrische
Differenz
Seien M, N Mengen. Der Durchschnitt (intersection) von M und N ist die Menge der
Elemente, die sowohl in M als auch in N enthalten sind:
M ∩ N := {x | x ∈ M und x ∈ N},
M geschnitten N.
Die Vereinigung (union) von M und N ist die Menge der Elemente, die in M oder in
N (einschließlich in beiden Mengen) enthalten sind:
M ∪ N := {x | x ∈ M oder x ∈ N},
M vereinigt N.
Die Differenz (difference) von M und N ist die Menge der Elemente, die in M, aber
nicht in N enthalten sind:
M \ N := {x | x ∈ M und x ∉ N},
M ohne N.
Die symmetrische Differenz (symmetric difference) von M und N ist die Menge der
Elemente, die in genau einer der beiden Mengen enthalten sind:
M ∆ N := (M \ N) ∪ (N \ M),
M Delta N.
Die runden Klammern „(“ und „)“ steuern die Reihenfolge der Operationen: von innen
nach außen.
{1, 2, 3} ∩ {3, 4}
{1, 2, 3} ∪ {3, 4}
{1, 2, 3} \ {3, 4}
{3, 4} \ {1, 2, 3}
{1, 2, 3} ∆ {3, 4}
Beispiele
Bild 1.2
Mengenoperationen
= {3}.
= {1, 2, 3, 4}.
= {1, 2}.
= {4}.
= {1, 2, 4}.
M
M
M∪N
M∩N
N
N
M\N
M
M
N
Definition 1.11
Komplement
M∆N
N
Sind M, G Mengen mit M ⊆ G, so heißt
MG := G \ M
das Komplement (complement) von M in G. Ist G als Grundmenge (universal set,
universe) festgelegt, so heißt
M := M c := MG
einfach das Komplement von M.a
a
Die Notation Mc benötigen wir bei doppeltem Komplement, da das Textsystem nicht doppelt
überstreichen kann.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.4 Operationen mit Mengen
Bild 1.3
Komplement
1-9
G
MG
M
Definition 1.12
Disjunktheit
Die Mengen M und N heißen disjunkt (elementfremd, disjoint), wenn sie keine
gemeinsamen Elemente enthalten, also wenn ihr Durchschnitt leer ist:
M ∩ N = ∅.
Nicht disjunkte Mengen schneiden (überlappen) sich, sie enthalten gemeinsame Elemente:
M ∩ N ≠ ∅.
1.4.1
Rechenregeln
Der Teil der Mengenlehre, der sich mit den Mengenoperationen befasst, heißt Mengenalgebra. Dass die folgenden Rechenregeln gelten, überlegt man sich leicht anhand
von Mengendiagrammen oder schon bewiesener Regeln.
Satz 1.13
Inklusion
Durchschnitt
Vereinigung
Für beliebige Mengen L, M, N gilt:
(1)
(2)
(3)
(4)
(5)
M ∩ N ⊆ M.
M ⊆ M ∪ N.
M ∩ N = M genau dann, wenn M ⊆ N.
M ∪ N = N genau dann, wenn M ⊆ N.
M ∪ N ⊆ M ∩ N genau dann, wenn M = N.
Aus L ⊆ M folgt L ∩ N ⊆ M ∩ N.
Aus L ⊆ M folgt L ∪ N ⊆ M ∪ N.
L ⊆ M und L ⊆ N genau dann, wenn L ⊆ M ∩ N.
L ⊆ N und M ⊆ N genau dann, wenn L ∪ M ⊆ N.
Simplifikation
Monotonie
Infimum
Supremum
Aufgrund von (2) könnte man die Inklusion mittels der Gleichheit und des Durchschnitts oder der Vereinigung definieren.
Satz 1.14
Durchschnitt
Vereinigung
Für beliebige Mengen L, M, N gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
9.8.04
M ∩ M = M.
Idempotenz
M ∪ M = M.
M ∩ ∅ = ∅.
Operation mit leerer Menge
M ∪ ∅ = M.
M ∩ N = N ∩ M.
Kommutativität
M ∪ N = N ∪ M.
(L ∩ M) ∩ N = L ∩ (M ∩ N).
Assoziativität
(L ∪ M) ∪ N = L ∪ (M ∪ N).
L ∩ (M ∪ N) = (L ∩ M) ∪ (L ∩ N).
Distributivität
L ∪ (M ∩ N) = (L ∪ M) ∩ (L ∪ N).
M ∩ (M ∪ N) = M.
Absorption, Adjunktivität,
M ∪ (M ∩ N) = M.
Verschmelzung
M ⊆ N und M ∩ N = ∅ genau dann, wenn M = ∅.
© Karlheinz Hug, Hochschule Reutlingen
1 - 10
1 Mengen
Beweis. Exemplarisch beweisen wir die erste Regel von (5). Für jedes x gilt:
x ∈ L ∩ (M ∪ N)
x ∈ L und x ∈ M ∪ N
x ∈ L und (x ∈ M oder x ∈ N)
(x ∈ L und x ∈ M) oder (x ∈ L und x ∈ N)
x ∈ L ∩ M oder x ∈ L ∩ N
x ∈ (L ∩ M) ∪ (L ∩ N).
genau dann, wenn
genau dann, wenn
genau dann, wenn
genau dann, wenn
genau dann, wenn
Die Distributivregel für Mengen basiert auf der Distributivregel der Aussagenlogik, die
p
wir in Kapitel 2 kennen lernen.
Aufgrund der Assoziativität können wir Klammern sparen und definieren:
L ∩ M ∩ N := (L ∩ M) ∩ N.
L ∪ M ∪ N := (L ∪ M) ∪ N.
Aus der Kommutativität und der linksseitigen Distributivität (5) folgt die rechtsseitige,
also beidseitige Distributivität.
Satz 1.15
Differenz
Für beliebige Mengen L, M, N gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
M \ N ⊆ M.
M \ N = M genau dann, wenn M ∩ N = ∅.
M \ N = ∅ genau dann, wenn M ⊆ N.
M \ M = ∅.
Operation mit sich selbst
M \ ∅ = M.
Operation mit leerer Menge
∅ \ M = ∅.
M = (M ∩ N) ∪ (M \ N).
disjunkte Vereinigung
M ∪ N = (M \ N) ∪ N = (M \ N) ∪ (M ∩ N) ∪ (N \ M).
Aus L ⊆ M folgt L \ N ⊆ M \ N.
Monotonie
Aus L ⊆ M folgt N \ M ⊆ N \ L.
Antitonie
(L ∩ M) \ N = (L \ N) ∩ (M \ N) = (L \ N) ∩ M.
rechtsseitige Distributivität
(L ∪ M) \ N = (L \ N) ∪ (M \ N).
(10) L \ (M ∩ N) = (L \ M) ∪ (L \ N).
L \ (M ∪ N) = (L \ M) ∩ (L \ N).
(11) (L \ M) \ N = L \ (M ∪ N).
L \ (M \ N) = (L \ M) ∪ (L ∩ N).
(12) (L \ M) ∪ N = (L ∪ N) \ (M \ N).
(13) M \ (M \ N) = M ∩ N.
Regeln von de Morgana
Sind M, N Teilmengen der Grundmenge G, so gilt:
(14) M \ N = M ∩ N.
a
Augustus de Morgan (1806 - 1871), britischer Logiker, Mathematiker.
Aufgrund von (13) lässt sich der Durchschnitt mittels Differenz ausdrücken. Aufgrund
von (14) lässt sich die Differenz mittels Durchschnitt und Komplement ausdrücken.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.4 Operationen mit Mengen
Satz 1.16
Komplement
Sind L, M, N Teilmengen der Grundmenge G, so gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
Dualität
1 - 11
M ∩ G = M.
M ∪ G = G.
M ∩ M = ∅.
M ∪ M = G.
M = (M ∩ N) ∪ (M ∩ N).
Operation mit Grundmenge
Operation mit Komplement
disjunkte Vereinigung
= M.
doppeltes Komplement, Involution
G = ∅.
∅ = G.
Regeln von de Morgan
M ∩ N = M ∪ N.
M ∪ N = M ∩ N.
Antitonie
M ⊆ N genau dann, wenn N ⊆ M.
M ⊂ N genau dann, wenn N ⊂ M.
M ⊆ N genau dann, wenn M ∩ N = ∅.
M ⊆ N genau dann, wenn M ∪ N = G.
L ∩ M ⊆ N genau dann, wenn L ⊆ M ∪ N.
L ⊆ M ∪ N genau dann, wenn L ∩ M ⊆ N.
(Mc)c
Aufgrund der Regeln von de Morgan lässt sich der Durchschnitt mittels Komplement
und Vereinigung, die Vereinigung mittels Komplement und Durchschnitt ausdrücken.
Aufmerksames Studieren der Sätze 1.14, 1.15 und 1.16 offenbart, dass die Regeln dual
sind, d.h. die Vertauschungen
⊆
∩
∅
↔
↔
↔
⊇,
∪,
G
überführen eine gültige mengentheoretische Regel in eine weitere gültige mengentheoretische Regel.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 12
1 Mengen
Satz 1.17
Symmetrische
Differenz
Für beliebige Mengen L, M, N gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
M ∆ N = (M ∪ N) \ (M ∩ N).
M ∆ N = N ∆ M.
Kommutativität
M ∆ M = ∅.
Operation mit sich selbst
M ∆ ∅ = ∅ ∆ M = M.
Operation mit leerer Menge
M ∪ N = (M ∩ N) ∪ (M ∆ N).
disjunkte Vereinigung
M ∪ N = M ∆ N genau dann, wenn M ∩ N = ∅.
M = N genau dann, wenn M ∆ N = ∅.
M ≠ N genau dann, wenn M ∆ N ≠ ∅.
Aus M ⊆ N folgt M ∆ N = N \ M.
(L ∆ M) ∆ N = L ∆ (M ∆ N) =
Assoziativität
(L ∩ M ∩ N) ∪ (L \ (M ∪ N)) ∪ (M \ (L ∪ N)) ∪ (N \ (L ∪ M)).
(M ∆ N) ∆ N = M.
Es gibt eine Menge O mit M = O ∆ N.
L ∆ M = N genau dann, wenn L = M ∆ N.
(L ∆ M) ∩ N = (L ∩ N) ∆ (M ∩ N).
Distributivität
Sind L, M, N Teilmengen der Grundmenge G, so gilt:
(14)
(15)
(16)
(17)
(18)
Operation mit Grundmenge
M ∆ G = M.
Operation mit Komplement
M ∆ M = G.
L ∆ M ∆ N = (L ∩ M ∩ N) ∪ (L ∩ M ∩ N) ∪ (L ∩ M ∩ N) ∪ (L ∩ M ∩ N).
M ∆ N = M ∆ N.
M ∆ N = (M ∪ N) ∩ (M ∪ N) = (M ∩ N) ∪ (M ∩ N).
Aufgrund der Assoziativität (9) können wir Klammern sparen und definieren:
L ∆ M ∆ N := (L ∆ M) ∆ N.
Auf Regel (10) basieren einfache symmetrische Verfahren zur Datenverschlüsselung,
wobei M die Rolle des Klartexts, N die des Schlüssels und M ∆ N die des verschlüsselten Texts spielt. Bei zufälligem Schlüssel N heißt das Verfahren Vernam-Chiffrierung
(Schlüsselblock, one-time pad). Erfunden haben es Gilbert S. Vernam1 und Major
Joseph O. Mauborgne 1917 bei AT&T, wo sie ein erstes dieses Verfahren nutzendes
Gerät für telegrafische Zwecke bauten.
1
Gilbert S. Vernam (1890 - 1960), amerikanischer Ingenieur.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.4 Operationen mit Mengen
1.4.2
1 - 13
Mengen in Programmiersprachen
Manche Programmiersprachen bieten einen einfachen Datentyp für spezielle Potenzmengen; die Grundmenge ist oft eine Teilmenge von , z.B. {0,.., 2k−1} mit k = 5 oder
k = 8. Tabelle 1.3 zeigt die Entsprechung mathematischer und programmiersprachlicher
Begriffe an einem Beispiel.
'
Tabelle 1.3
Menge und
Datentyp SET
Begriff
Mathematik
Component Pascal
Grundmenge
G = {0,.., 31}
{0 .. 31}
leere Menge
∅
{}
P(G)
Sei M ∈ P(G).
SET
VAR M : SET;
Sei x ∈ G.
VAR x : INTEGER;
Elementrelation
x∈M
x IN M
Gleichheit
M=N
M=N
Ungleichheit
M≠N
M#N
Komplement
M
-M
Durchschnitt
M∩N
M*N
Vereinigung
M∪N
M+N
Differenz
M\N
M-N
symmetrische Differenz
M∆N
M/N
Inklusion
M⊆N
M=M*N
Element hinzufügen
Ersetze M durch M ∪ {x}.
INCL (M, x);
Element entfernen
Ersetze M durch M \ {x}.
EXCL (M, x);
Potenzmenge - Datentyp
Vereinbarung einer Menge
Vereinbarung eines Elements
Darüber hinaus kann man in so genannten objektorientierten Programmiersprachen
beliebige Mengen als Klassen definieren, wobei es drei Stufen gibt:
l
l
l
Eine einfache Klasse für Mengen mit Elementen eines festen Typs; siehe dazu als
Beispiele die Module ContainersSetsOfChar und ContainersSetsOfString in [11] S. 241
und S. 327 und [33].
Eine polymorphe Klasse für Mengen mit Elementen, deren Typen Erweiterungen
eines Basistyps sind; siehe dazu als Beispiel das Modul ContainersSetsOfComparable
in [11] S. 355 und [33].
Eine generische Klasse für Mengen mit Elementen, deren Typ bei der Vereinbarung
eines Mengenobjekts festgelegt ist; dies erlauben nicht alle Sprachen, aber z.B. C++
und Eiffel. Programmiersprachen mit Generizität können auch auf einfache Weise
Mengensysteme ausdrücken.
Freilich muss der Programmierer solcher Klassen beachten, dass sie alle Rechenregeln
der Mengenalgebra erfüllen (d.h. eines zugrunde liegenden Axiomensystems; dazu
mehr in folgenden Kapiteln).
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 14
1.5
1 Mengen
Mengensysteme
Mengen, deren Elemente selbst Mengen sind, nennen wir Mengensysteme und
bezeichnen sie i.A. mit Skriptbuchstaben M, N,... Durchschnitt und Vereinigung lassen
sich verallgemeinern.
Definition 1.18
Durchschnitt
Vereinigung
Sei M ein Mengensystem. Der Durchschnitt der Mengen von M ist die Menge der
Elemente, die zu allen Mengen von M gehören:
∩
M∈
M
M := {x | x ∈ M für alle M ∈ M}.
Die Vereinigung der Mengen von M ist die Menge der Elemente, die zu wenigstens
einer der Mengen von M gehören:
∪
M∈
M
M := {x | es gibt ein M ∈ M mit x ∈ M}.
Die Mengen von M heißen paarweise disjunkt (pairwise disjoint), wenn
aus M, N ∈ M und M ≠ N folgt M ∩ N = ∅.
Beispiel
Der Durchschnitt paarweise disjunkter Mengen ist leer. Die Umkehrung gilt nicht, wie
das Beispiel zeigt:
L = {1, 2, 4}, M = {1, 3, 5}, N = {2, 3, 6},
L ∩ M = {1}, L ∩ N = {2}, M ∩ N = {3}, L ∩ M ∩ N = ∅.
Bild 1.4
Disjunkt oder nicht?
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.5 Mengensysteme
Satz 1.19
Rechenregeln für
Mengensysteme
1 - 15
(1)
Sind alle vorkommenden Mengen Teilmengen einer Grundmenge G, so gilt
∩
M∈∅
∪
(2)
M∈∅
(3)
(4)
M = G.
M = ∅.
Ist M eine Menge und N ein Mengensystem, so gelten die Infimum- und Supremumregeln:
M ⊆ N für alle N ∈ N
genau dann, wenn
N ⊆ M für alle N ∈ N
genau dann, wenn
æ
∪
N÷ =
∩
N÷ =
èN ∈
æ
M∪ç
èN ∈
N
N
N,
N ⊆ M.
ö
N
ø
ö
N
ø
∪
( M ∩ N) ,
∩
( M ∪ N) .
N∈
N∈
N
N
Ist M ein System von Teilmengen einer Grundmenge G, so gelten die Regeln
von de Morgan:
∩
M÷
∪
M÷
æ
ç
èM ∈
æ
ç
èM ∈
(6)
∪
N∈
∩
N∈
Ist M eine Menge und N ein Mengensystem, so gelten die Distributivregeln:
M∩ç
(5)
M⊆
öc
M
ø
∪
M ,
∩
M .
M∈
öc
M
=
=
ø
M∈
M
M
c
c
Für Mengensysteme M, N mit M ⊆ N gilt
∩
N∈
N
N⊆
∩
M∈
M
M und
Falls M ≠ ∅ gilt zudem
∩
M∈
M
M⊆
∪
M∈
M
∪
M∈
M
M⊆
∪
N∈
N
N.
M.
Beachte die Voraussetzung M ≠ ∅ im zweiten Teil von (6). Wegen (1) und (2) liegt für
M = ∅ eine „Anomalie des leeren Mengensystems“ vor:
∩
M∈∅
9.8.04
M⊇
∪
M.
M∈∅
© Karlheinz Hug, Hochschule Reutlingen
1 - 16
1 Mengen
Definition 1.20
Zerlegung
Überdeckung
Seien M ein Mengensystem und N eine Menge. M heißt
eine Zerlegung (partition) von N, wenn die Mengen von M paarweise disjunkt sind
und
∪
M∈
M
M = N;
eine echte Zerlegung (Klasseneinteilung) von N, wenn M eine Zerlegung ist und alle
Mengen von M, die dann Klassen heißen, nicht leer sind:
∅ ∉ M;
eine Überdeckung von N, wenn
N⊆
∪
M∈
Beispiele
M
M.
Für M ⊆ G ist {M, M} eine Zerlegung von G.
Die echten Zerlegungen von {1, 2, 3} sind
{{1}, {2}, {3}}, {{1}, {2, 3}}, {{2}, {1, 3}}, {{3}, {1, 2}}, {{1, 2, 3}}.
Eine Überdeckung von {1, 2, 3} ist z.B. {{1, 2}, {2, 3, 4}}.
Z ist eine Zerlegung von M genau dann, wenn es zu jedem x ∈ M genau ein Z ∈ Z gibt
mit x ∈ Z.
Korollar 1.21
Ist Z eine Zerlegung der Menge G und M ⊆ G, so gilt
M =
∪ (Z ∩ M ) .
Z∈
1.6
Z
Produktmengen
Produktmengen kombinieren zwei oder mehr Mengen, indem sie die Elemente dieser
Mengen zu Paaren .h. Folgen anordnen. Beispielsweise kann man aus StudentInnen
und Lehrveranstaltungen Paare der Art (StudentIn, Lehrveranstaltung) bilden. Produktmengen sind Grundmengen für Relationen und Abbildungen, die zu den fundamentalen
Begriffen der Mathematik und der Informatik gehören. Relationen bilden die Basis des
Relationenmodells für die weit verbreiteten relationalen Datenbanksysteme. Hier stellen wir Grundlagen vor, die wir in Kapitel 2 brauchen. Kapitel 4 befasst sich ausführlicher mit Relationen und Abbildungen. Zunächst betrachten wir das Produkt von zwei
Mengen.
Definition 1.22
Kartesisches Produkt
Das (kartesischea) Produkt (Kreuzprodukt, Cartesian product, cross product) der
Mengen M und N ist die Menge der geordneten Paare (ordered pair)
(x, y)
mit x ∈ M und y ∈ N:
M × N := {(x, y) | x ∈ M und y ∈ N},
M Kreuz N.
M, N heißen erste bzw. zweite Komponentenmenge von M × N. x heißt erste, y
zweite Komponente (Koordinate) von (x, y).
a
René Descartes, lat. Cartesius (1596 - 1650), französischer Mathematiker, Philosoph, begründete die analytische Geometrie.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.6 Produktmengen
Gleichheit
1 - 17
Die Gleichheit von Paaren ist komponentenweise definiert:
(x, y) = (v, w)
x = v und y = w.
genau dann, wenn
Intuitiv ist klar, dass „geordnetes Paar (x, y)“ meint:
Für x ≠ y ist (x, y) ≠ (y, x)
aus (x, y) = (y, x) folgt x = y.
d.h.
Es ist also (x, y) ≠ {x, y}, d.h. die Anordnung ist wesentlich. Doch streng genommen
müssen wir alles Neue durch Bekanntes definieren, also hier die neue Klammerschreibweise mittels Mengen ausdrücken. Dieser Denkweise der MathematikerIn entspricht
die Denkweise der InformatikerIn, der neu spezifizierte Programme mittels bekannter
Programme implementieren muss, um sie auf einem Rechner ausführbar zu machen.
Dabei werden abstrakte Konzepte höherer Programmiersprachen in die konkrete
Maschinensprache des Rechners übersetzt. Die Maschinensprache wiederum ist durch
elektronische Schaltungen implementiert. Softwarearchitekturen basieren auf Rechnern, mathematische Gebäude auf der Mengenlehre. Definieren wir ein geordnetes
Paar geeignet durch eine Menge, z.B. durch
(x, y) := {x, {y}},
so gilt für x ≠ y:
(x, y) = {x, {y}} ≠ {y, {x}} = (y, x),
d.h. die Gleichheit von Paaren wird nicht definiert, sondern auf die Gleichheit von
Mengen zurückgeführt.
Beispiel
Ein Beispiel für ein kartesisches Produkt ist
M × N = {a, b, c} × {1, 2} = {(a, 1), (a, 2), (b, 1), (b, 2), (c, 1), (c, 2)}.
Um ein kartesisches Produkt zu veranschaulichen, kann man es grafisch in einer kartesischen Ebene (kartesisches Koordinatensystem) darstellen: Von zwei senkrecht aufeinander stehenden Linien nimmt die waagrechte die Elemente der ersten, die senkrechte die der zweiten Komponente auf. Die Elemente des Produkts erscheinen dann
als Gitterpunkte in der Ebene.
Bild 1.5
Kartesische Ebene
M×N
N
2l
l (a, 2)
l (b, 2)
l (c, 2)
1l
l (a, 1)
l (b, 1)
l (c, 1)
l
l
l
a
b
c
M
Beachte, dass die Produktoperation nicht assoziativ ist:
(L × M) × N ≠ L × (M × N),
da
(x, (y, z)) ≠ ((x, y), z).
Treten ×, ∩, ∪, \ und ∆ zusammen auf, so bindet × stärker als die anderen Operationen.
Es gelten folgende Rechenregeln.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 18
Satz 1.23
Rechenregeln für
zweistellige
Produktmengen
1 Mengen
Für beliebige Mengen L, M, N, O gilt:
(6)
(7)
(8)
M × N = ∅ genau dann, wenn M = ∅ oder N = ∅.
L ⊆ M, O ⊆ N genau dann, wenn L × O ⊆ M × N. Isotonie
(L ∩ M) × N = L × N ∩ M × N.
Distributivität
L × (M ∩ N) = L × M ∩ L × N.
(L ∪ M) × N = L × N ∪ M × N.
Distributivität
L × (M ∪ N) = L × M ∪ L × N.
(L \ M) × N = L × N \ M × N.
Distributivität
L × (M \ N) = L × M \ L × N.
(L ∩ M) × (N ∩ O) = L × N ∩ M × O = L × O ∩ M × N.
Aus L ⊆ M, O ⊆ N folgt L × N ∩ M × O = L × O.
L × M \ N × O = (L \ N) × M ∪ L × (M \ O).
(9)
Aus L ⊆ M, O ⊆ N folgt L × OM×N = LM × N ∪ M × ON.
(1)
(2)
(3)
(4)
(5)
(6) enthält (3) als Spezialfälle.
1.7
Zweistellige Relationen
Relationen stellen Beziehungen zwischen Elementen einer oder mehrerer Mengen dar.
Wir beschränken uns hier auf zwei Mengen. Beispielsweise kann man in der Produktmenge aus StudentInnen und Lehrveranstaltungen die Relation „besucht“ betrachten:
StudentIn besucht Lehrveranstaltung:
Lea besucht Englisch.
Die zwei Mengen können gleich sein. So gibt es etwa auf einer Menge von Modulen
die Relation „importiert“ oder „benutzt“:
Modul importiert Modul:
Definition 1.24
Relation
Würfelspiel benutzt Würfel.
Eine Relation ist eine Teilmenge einer Produktmenge. Genauer: Sind M, N Mengen
und R ⊆ M × N, so heißt R eine (zweistellige, binäre, binary, dyadic) Relation in
M × N (oder zwischen M und N). Ist M = N, so heißt R auch eine Relation auf M.
Statt (x, y) ∈ R benutzen wir auch die Infixschreibweise
x R y.
Gleichheit
Beispiele
Zur exakten Angabe einer Relation gehören die Komponentenmengen dazu. Zwei
Relationen R ⊆ M × N, R´ ⊆ M´ × N´ sind gleich, wenn alle ihre Bestandteile gleich
sind, d.h. wenn gilt
M = M´ und N = N´ und R = R´.
Wir kennen schon einige Relationen. Ist M eine Menge, so ist die (hier neu bezeichnete) Elementrelation ∈ eine Relation in M × P(M):
∈ ⊆ M × P(M).
Für x ∈ M und N ∈ P(M) bedeutet (x, N) ∈ ∈ so viel wie x ∈ N.
Ist M eine Menge, so sind =, ≠, ⊆, ⊂, /⊆, ⊄, ⊇, ⊃ Relationen in P(M) × P(M) oder kurz
auf P(M).
Grafisch veranschaulichen lässt sich eine Relation in einer kartesischen Ebene als Teilmenge der Gitterpunkte. Jede Schwarz-Weiß-Grafik entspricht einer Relation.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.7 Zweistellige Relationen
Bild 1.6
Relation auf einer
kartesischen Ebene
1 - 19
y
x
Eine Relation mit wenig Paaren kann man mit einem Mengendiagramm veranschaulichen, das mit Pfeilen zwischen Elementen angereichert ist, einem so genannten gerichteten Graph (Pfeildiagramm). Mit der Graphentheorie befasst sich Kapitel 11.
Bild 1.7
Relation als
gerichteter Graph
M :=
Menge der StudentInnen
R := besucht
N :=
Menge der Lehrveranstaltungen
Ali
TG1
Eva
I1
MT1
Ina
AK
Udo
E1
Üblich für übersichtliche Darstellungen von Relationen sind auch Tabellen.
Tabelle 1.4
Relation als Tabellen
besucht
StudentIn Lehrveranstaltung
Ali
I1
Eva
I1, MT1
Ina
I1, MT1, AK, E1
besucht
StudentIn
Udo
Lehrveranstaltung
TG1
I1
MT1
Ali
x
Eva
x
x
Ina
x
x
AK
E1
x
x
Udo
Die erste Tabelle sieht für jede StudentIn genau eine Zeile vor. Die Zellen in der Spalte
Lehrveranstaltung müssen dann Mengen oder Listen von Lehrveranstaltungen aufnehmen können.
Die zweite Tabelle - eine Matrix - sieht für jede StudentIn genau eine Zeile, für jede
Lehrveranstaltung genau eine Spalte vor. Die Zellen für die Paare müssen nur ein Bit
aufnehmen. Hier sind genau die zur Relation gehörenden Paare mit x markiert. Hat eine
Relation große Komponentenmengen, aber selbst nur wenige Paare, so ist ihre Matrix
dünn besetzt.
Definition 1.25
Umkehrrelation
Zu jeder Relation R ⊆ M × N heißt die durch
R−1 := {(y, x) | (x, y) ∈ R} ⊆ N × M
definierte Relation R−1 in N × M die Umkehrrelation (inverse Relation) zu R. Es gilt
also
y R−1 x
9.8.04
genau dann, wenn
x R y.
© Karlheinz Hug, Hochschule Reutlingen
1 - 20
Beispiele
1 Mengen
Im obigen Beispiel kehrt sich die Relation „besucht“ um zu „wird besucht von“. Im
Graph dreht sich die Pfeilrichtung um. In der ersten Tabelle werden die beiden Spalten
vertauscht, für jede Lehrveranstaltung wird eine Zeile vorgesehen. In der zweiten
Tabelle werden Zeilen und Spalten vertauscht.
∋, ⊇ und ⊃ sind die Umkehrrelationen zu ∈, ⊆ bzw. ⊂.
1.8
Abbildungen
Abbildungen sind spezielle, besonders wichtige Relationen. Ist beispielsweise M die
Menge der StudentInnen der Hochschule Reutlingen und N die Menge der höchstens
sechsstelligen Dezimalzahlen, so ist die Relation „x hat die Matrikelnummer y“ in
M × N eine Abbildung, da jede StudentIn genau eine Matrikelnummer hat. Die Relation „StudentIn besucht Lehrveranstaltung“ ist keine Abbildung, da eine StudentIn
mehrere Lehrveranstaltungen besuchen kann. Die Umkehrrelation „wird besucht von“
ist auch keine Abbildung, da eine Lehrveranstaltung von mehreren StudentInnen
besucht werden kann.
Definition 1.26
Abbildung
Sind M, N Mengen und f eine Relation in M × N mit der Eigenschaft
zu jedem x ∈ M gibt es genau ein y ∈ N mit (x, y) ∈ f,
so heißt f eine Abbildung (mapping) von M nach N. M heißt Definitionsbereich
(domain), N Wertebereich (range) von f. Statt Abbildung sagt man auch Funktion
(function), vor allem, wenn der Wertebereich eine Zahlenmenge ist. Statt (x, y) ∈ f
oder x f y benutzen wir hier die Funktionsschreibweise (Präfix mit Klammern)
f(x) = y.
Statt f ⊆ M × N, (x, y) ∈ f ist bei Abbildungen die prägnante Schreibweise
f : M → N, x → f(x) = y
|
üblich.
l
l
l
f ist der Name der Abbildung,
M → N drückt die gerichtete Beziehung zwischen den Mengen aus,
x → f(x) die Beziehung zwischen den Elementen:
|
Dem Urbild (Argument) x ∈ M wird das eindeutige Bild (Funktionswert) f(x) ∈ N
zugeordnet. Die Abbildungsvorschrift x → f(x) ist oft durch einen Ausdruck darstellbar, z.B.
|
f(x) = x2 + 2x − 3.
Die Funktionsschreibweise f(x) ist die am meisten verwendete, aber nicht die einzige.
Es gibt auch Schreibweisen ohne Klammern mit vor- (Präfix), nach- (Postfix), hochoder tiefgestelltem f oder spezielle Notationen wie Klammern, Überstriche usw.:
fx, xf, xf, xf, (fx), [x], |x|, x usw.
Beachte den Unterschied zwischen f und f(x): f bezeichnet die Abbildung als Ganzes,
f(x) das Bild des Arguments x unter der Abbildung f. Man sagt auch: f(x) ist der Wert
von f an der Stelle x.
Graph
Historisch bedingt heißt f als Relation auch Graph der Abbildung:
graph(f) = {(x, f(x)) | x ∈ M} ⊆ M × N.
Die Sicht einer Abbildung als
f = áM, N, graph(f)ñ mit graph(f) ⊆ M × N
vereinfachen wir meist zu
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.8 Abbildungen
1 - 21
áM,
N, fñ mit f ⊆ M × N
in der Schreibweise
Gleichheit
f : M → N.
Zur exakten Angabe einer Abbildung gehören der Definitionsbereich, der Wertebereich
und der Graph der Abbildung. Die Gleichheit von Abbildungen ist durch die Gleichheit
von Relationen definiert, d.h. zwei Abbildungen f : M → N, f´ : M´ → N´ sind gleich,
f = f´, wenn gilt
M = M´ und N = N´ und graph(f) = graph(f´), d.h. für alle x ∈ M ist f(x) = f´(x).
Eine Abbildung zwischen Zahlenmengen lässt sich grafisch in einem kartesischen
Koordinatensystem veranschaulichen. Die waagrechte x-Achse entspricht üblicherweise dem Definitionsbereich, die senkrechte y-Achse dem Wertebereich. Die Funktionseigenschaft bedeutet, dass jede Senkrechte genau einen Funktionswert enthält. Der
Graph einer stetigen Funktion ist eine durchgezogene Kurve.
Bild 1.8
Graphen von
Abschnitten der
Sinusfunktion
und einer
Fourier-Reihe 1
y
y
x
x
Eine Abbildung mit endlichem Definitionsbereich lässt sich auch durch eine Wertetabelle darstellen.
Tabelle 1.5
Wertetabelle der
Zweierpotenzfunktion
1.8.1
n
0
1
2
3
4
5
6
7
8
9
10
f(n) = 2 n
1
2
4
8
16
32
64
128
256
512
1024
Besondere Abbildungen
Die Umkehrrelation einer Abbildung ist i.A. keine Abbildung, wie man an f(x) = sin x
sieht.
Definition 1.27
Bijektion
Umkehrabbildung
Eine Abbildung f : M → N heißt bijektiv (Bijektion, umkehrbar eindeutig), wenn gilt
zu jedem y ∈ N gibt es genau ein x ∈ M mit f(x) = y.
Ist f : M → N bijektiv, so ist durch
f−1 : N → M, y → f−1(y) := x genau dann, wenn f(x) = y
|
eine Abbildung definiert; sie heißt die Umkehrabbildung (inverse Abbildung) zu f.
f−1 ist bijektiv. f, f−1 heißen invers zueinander. Ist f = f−1, so heißt f invers zu sich
selbst.
Für die Abbildung mit leerem Definitionsbereich f : ∅ → M gilt
graph(f) = {(x, f(x)) | x ∈ ∅} = ∅;
daher nennen wir sie leere Abbildung, f = ∅.
1
(Baron) Jean-Baptiste-Joseph de Fourier (1768 - 1830), französischer Mathematiker, Physiker, Präfekt.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 22
1 Mengen
f : M → N mit f(x) = f(y) für alle x, y ∈ M heißt konstante Abbildung. In einem kartesischen Koordinatensystem entsprechen den konstanten Abbildungen die Parallelen zur
x-Achse.
Bild 1.9
Konstante Abbildung
y
f = konstant
x
Die Abbildung
idM : M → M, x → idM(x) := x,
|
die jedes x ∈ M auf sich selbst abbildet, heißt identische Abbildung (Identität) auf M.
idM ist bijektiv und invers zu sich selbst. In einem kartesischen Koordinatensystem entspricht ihr die Winkelhalbierende zwischen den beiden gleich gerichteten Achsen; bei
beschränktem Definitionsbereich M die Diagonale im Quadrat M × M.
Bild 1.10
Identische Abbildung
y
id!
idM
M
x
M
Ist f : M → N und L ⊆ M, so heißt die durch
f|L : L → N, x → f(x),
f eingeschränkt auf L
|
definierte Abbildung die Einschränkung (Restriktion) von f auf L. Es gilt
graph(f|L) = graph(f) ∩ L × N.
g : L → N heißt Fortsetzung von f : M → N auf L, wenn M ⊆ L und g|M = f.
Operation
Verknüpfung
Operationen ordnen einem Element oder Elementepaar einer Menge M ein Element
derselben Menge zu. Eine Abbildung f : M → M (von M nach sich) heißt einstellige
(unary) Operation auf M. Eine Abbildung f : M × M → M heißt zweistellige Operation (Verknüpfung) auf M. Operationen bezeichnet man oft mit speziellen Operationssymbolen (Operator). Bei einstelligen Operationen ist Präfix- oder Postfixschreibweise oder Hochstellung
l : M → M, x → lx
oder
|
l : M → M, x → xl,
|
bei zweistelligen Operationen Infixschreibweise
l : M × M → M, (x, y) → x l y
|
üblich. Eine algebraische Struktur ist eine Menge M zusammen mit einer Operation
oder mehreren Operationen auf M: áM, l1, l2,...ñ. Mit algebraischen Strukturen befassen sich die Kapitel 6 und 10.
Beispiele
Beispiele für einstellige Operationen sind das einstellige Minus „−“ auf Zahlenmengen
und das Komplement auf Potenzmengen (G sei eine Grundmenge):
: P(G) → P(G), M → M,
|
beide Operationen sind bijektiv und invers zu sich selbst.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.8 Abbildungen
1 - 23
Beispiele für zweistellige Operationen sind +, −, ∗, / auf Zahlenmengen sowie modulo
auf lN und . Ist G eine Grundmenge, so sind Durchschnitt, Vereinigung, Differenz
und symmetrische Differenz zweistellige Operationen auf P(G), z.B.
'
∩ : P(G) × P(G) → P(G), (M, N) → M ∩ N.
|
Zweistellige Operationen verknüpfen also je zwei Elemente x, y so miteinander, dass
ein weiteres Element derselben Menge erreicht wird. Zweistellige Operationen mit
endlichem Definitionsbereich lassen sich mit Verknüpfungstabellen darstellen, wie
wir sie aus der Schule kennen.
Tabelle 1.6
Verknüpfungstabelle
kleines Einmaleins
Projektion
∗
1
2
...
9
10
1
1
2
...
9
10
2
2
4
...
18
20
...
...
...
...
...
...
9
9
18
...
81
90
10
10
20
...
90
100
Ist M × N eine Produktmenge, so heißen die Abbildungen
π1 : M × N → M, (x, y) → π1(x, y) := x,
|
π2 : M × N → N, (x, y) → π2(x, y) := y
|
die Projektionen auf die erste bzw. zweite Komponente.
Ausdruck
Durch ein- oder mehrfaches Anwenden einer oder mehrerer Operationen auf einer
Menge M entstehen Ausdrücke, z.B.
l1 (x l2 y) l3 z.
In einem Ausdruck (expression) können
l
l
l
konstante und variable Elemente aus M,
Operationssymbole, und
Klammern
vorkommen. Im obigen Beispiel sind x, y, z ∈ M Variablen. l1 ist eine einstellige, l2
und l3 sind zweistellige Operationen. Das Klammernpaar „(“, „)“ steuert die Reihenfolge der Berechnung des Ausdrucks von innen nach außen. Um Klammern zu sparen
können Vorrangregeln festgelegt sein, z.B. einstellige vor zweistelligen Operationen.
Die Argumente der Operationen heißen Operanden. Ein Operand ist zugleich Teilausdruck (subexpression) des Ausdrucks. Im obigen Beispiel gilt:
(1)
(2)
(3)
(4)
x und y sind Teilausdrücke und Operanden der Operation l2.
(x l2 y) ist Teilausdruck und Operand der Operation l1.
l1 (x l2 y) und z sind Teilausdrücke und Operanden der Operation l3.
l1 (x l2 y) l3 z ist Teilausdruck und Ausdruck zugleich.
Die Reihenfolge der Berechnung ist (1), (2), (3), (4).
In allgemeineren Ausdrücken können Elemente mehrerer Mengen und beliebige Abbildungen und Relationen mit beliebigen Schreibweisen vorkommen, z.B.
card(M ∩ N) ≤ | sin(2πx) + √3! |y.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 24
1 Mengen
Dabei sind diese Aspekte zu beachten:
(1)
(2)
(3)
Die Zeichen des Ausdrucks sind nach festgelegten Regeln angeordnet.
Die Anwendung jeder Abbildung ist wohldefiniert, indem ihre Argumente zu
ihrem Definitionsbereich gehören.
Setzt man für die im Ausdruck vorkommenden Variablen Werte ein, so kann
man den Wert des Ausdrucks berechnen.
Ausdrücke spielen in der Mathematik und der Informatik eine wichtige Rolle. In Programmiersprachen betrachtet man den Aspekt (1) unter dem Begriff Syntax, den
Aspekt (2) unter dem Begriff Typbindung als Teil der statischen Semantik, und den
Aspekt (3) unter dem Begriff Auswertung als Teil der dynamischen Semantik.
Bindung
Den auf S. 4 diskutierten Zusammenhang zwischen Variablennamen und Variablen
können wir mit einer Abbildung ausdrücken. Ist V eine Menge von Variablennamen,
z.B. V = {a, b,.., z, a0, a1,.., z0, z1,...}, und W ein System von Wertemengen, z.B.
W = P( ), so ist eine Bindung (binding) der Variablennamen an die Wertemengen eine
Abbildung
bind : V → W, α → bind(α),
|
die jedem Variablennamen α ∈ V eine Wertemenge bind(α) ∈ W zuordnet, sodass α
eine Variable mit Werten in bind(α) bezeichnet. Ordnet z.B. bind der literalen Konstante a ∈ V die Wertemenge bind(a) = ∈ W zu, so bezeichnet a ∈ eine reelle
Variable, d.h. a tauscht unter der Bindung seine Rollen von einer Konstante der
Namenmenge zu einer Variablen der Wertemenge.
!
Typbindung
!
In (typisierten) Programmiersprachen spricht man von Typbindung: Jede Variable ist
an einen Typ gebunden. Dieser Typ wird (bei statischer Typbindung) bei der Vereinbarung der Variablen angegeben. Die einfachen Zahlentypen entsprechen nicht nur wie in
Tabelle 1.1 dargestellt den Zahlenmengen, sondern den algebraischen Zahlenstrukturen: Zu einem Typ gehört stets ein Wertebereich zusammen mit den darauf definierten
Operationen. So ist festgelegt, welche Operationen mit welchen Variablen erlaubt sind.
Programmiersprachen bieten auch Konstrukte, die Abbildungen entsprechen; sie heißen meist Funktionen oder Funktionsprozeduren (function procedure). In so genannten funktionalen Programmiersprachen bilden Funktionen das Grundkonzept des
gesamten Aufbaus der Sprache, während in den in Tabelle 1.7 betrachteten imperativen
Programmiersprachen Funktionen neben anderen, imperativen Sprachkonstrukten stehen. Nicht nur in Implementationssprachen, auch in Spezifikationssprachen, die in
Tabelle 1.7 durch Cleo vertreten sind, spielen Funktionen eine wichtige Rolle.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.8 Abbildungen
Tabelle 1.7
Mathematische
und programmiersprachliche
Funktionen
1 - 25
Programmiersprachen
Begriff
Mathematik
Vereinbarung einer
Abbildung
f : M → N, x → f(x)
Pascal*
|
C*
PROCEDURE
f (x : M) : N;
N f (M x);
Beispiel: Reelle Funktion
Component Pascal:
PROCEDURE
f (x : REAL) : REAL;
BEGIN
RETURN x * x + 1
END f;
Definition einer
Funktion
Eiffel:
f:
! → !, x → x
|
2
+1
f (x : REAL) : REAL is
do
Result := x * x + 1
end
float f (float x);
{
return x * x + 1;
};
Cleo:
QUERIES
f (IN x : REAL) : REAL
POST
result = x * x + 1
END
Benutzung/Aufruf
der Funktion
Beispiel: Reeller Ausdruck
f(3x) − 4
f(3 * x) - 4
Funktionen sind auch technisch interpretierbar und realisierbar. Wir nennen den Definitionsbereich einer Funktion f Eingabebereich E, den Wertebereich Ausgabebereich A,
und sagen: f berechnet zu jeder Eingabe e ∈ E eine Ausgabe f(e) = a ∈ A. Die Funktion stellen wir als rechteckiges Bauelement dar, das links einen Eingang für die Eingabe und rechts einen Ausgang für die Ausgabe hat:
Bild 1.11
Funktion als
technisches
Bauelement
Eingabe
f:E→A
E
Ausgabe
A
Verarbeitung
Berechnung
EVA-Modell
Black-Box
9.8.04
Dies ist das so genannte EVA-Modell für Eingabe-Verarbeitung-Ausgabe. Die Funktion ist eine so genannte Black-Box: Sie ist durch ihr von außen beobachtbares Ein-/
Ausgabe-Verhalten charakterisiert, während die Art und Weise ihrer Berechnung in
ihrem Inneren verborgen ist.
© Karlheinz Hug, Hochschule Reutlingen
1 - 26
1.8.2
1 Mengen
Indizierungen
Indizierte Größen x1, x2,... sind Bilder unter einer Abbildung.
Definition 1.28
Indizierung
Sind I, M Mengen und
x : I → M, i → xi
|
eine Abbildung, bei der man für die Bilder statt der Klammerschreibweise x(i) die
Indexschreibweise xi benutzt und die man als
(xi)i∈I
oder (xi | i ∈ I)
oder kurz (xi), wenn I bekannt ist
darstellt, so heißt diese Abbildung Indizierung (indizierende Abbildung), I Indexmenge, i Index (Mehrzahl Indices), (xi)i∈I Familie von Elementen aus M, und xi
Familienmitglied oder kurz Glied zum Index i.
Verschiedene Glieder xi, xk sind solche mit verschiedenen Indices i, k; dabei können xi,
xk als Elemente von M gleich sein. Beachte, dass
(xi)i∈I
die Darstellung einer Abbildung von I nach M ist und nicht mit der Bildmenge
{xi | i ∈ I} ⊆ M
zu verwechseln ist, die Teilmenge von M ist. In (xi)i∈I kommt es auf die Anordnung
und Anzahl der Werte xi an, in {xi | i ∈ I} nicht. Beispielsweise ist
Gleichheit
{1, 2} = {1, 2, 2} ≠ (1, 2, 2) ≠ (2, 1, 1) ≠ {2, 1, 1} = {1, 2}.
Die Gleichheit von Familien ist durch die Gleichheit von Abbildungen definiert: Zwei
Familien sind gleich, wenn alle Glieder mit gleichem Index gleich sind, d.h.
(xi)i∈I = (yi)i∈I
genau dann, wenn
xi = yi für alle i ∈ I.
Ist I = lN, so schreibt man auch
(xi)i∈ = (xi)i=1, 2,... = (x1, x2,...) mit xi ∈ M für alle i = 1, 2,...
lN
und nennt dies eine unendliche Folge (infinite sequence).
Ist I = {1,.., n}, so schreibt man auch
(xi)i∈{1,.., n} = (xi)i=1,.., n = (x1,.., xn) mit xi ∈ M für alle i = 1,.., n
und nennt das eine endliche Folge (finite sequence) oder geordnetes n-Tupel (n-tuple,
Paar für n = 2, Tripel für n = 3, Quadrupel für n = 4, Quintupel für n = 5).
Analog indiziert man Mengen statt Elemente, indem der Wertebereich der Indizierung
ein Mengensystem M statt einer Menge M ist. (Mi)i∈I bezeichnet eine Mengenfamilie,
{Mi | i ∈ I} das Mengensystem der indizierten Mengen. Die geschweiften Klammern
lassen wir meist weg und schreiben einfach Mi, i ∈ I.
1.9
Operationen mit indizierten Mengen
Ist I eine beliebige Indexmenge, (Mi)i∈I eine Mengenfamilie und M := {Mi | i ∈ I} das
zugehörige Mengensystem, so schreiben wir Durchschnitt und Vereinigung auch so:
∩
M
M =
∪
M
M =
M∈
M∈
∩ M i = {x | x ∈ Mi für alle i ∈ I},
i∈I
© Karlheinz Hug, Hochschule Reutlingen
∪ M i = {x | x ∈ Mi für wenigstens ein i ∈ I}.
i∈I
9.8.04
1.9 Operationen mit indizierten Mengen
1 - 27
Ist I = lN, so schreiben wir auch
∩ Mi
=
∪ Mi
=
i∈I
∩
M i = {x | x ∈ Mi für alle i = 1, 2,...},
∪
M i = {x | x ∈ Mi für wenigstens ein i = 1, 2,...}.
i = 1, 2, …
i∈I
i = 1, 2, …
Ist I = {1,.., n}, so schreiben wir auch
∩ Mi
=
∪ Mi
=
i∈I
i∈I
Definition 1.29
Produktmenge
∩
M i = {x | x ∈ Mi für alle i = 1,.., n},
∪
M i = {x | x ∈ Mi für wenigstens ein i = 1,.., n}.
i = 1, …, n
i = 1, …, n
Seien I eine Indexmenge und Mi, i ∈ I Mengen. Das (kartesische) Produkt der Mi,
i ∈ I ist die Menge aller Indizierungen
I→
∪ M i , i → x i ∈ Mi ,
|
i∈I
∏i ∈ I M i := {(xi)i∈I | xi ∈ Mi für alle i ∈ I}.
Mi heißt die i-te Komponentenmenge (Koordinatenmenge) von
∏i ∈ I M i , xi i-te
Komponente (Koordinate) von (xi).
Projektion
Die für jedes k ∈ I definierte Abbildung
πk :
∏i ∈ I M i → Mk, (xi) → πk((xi)) := xk,
|
die jedem (xi) die k-te Komponente xk zuordnet, heißt die Projektion von
∏i ∈ I M i
auf Mk.
Ist I = lN, so schreiben wir auch
∏i ∈ I M i = ∏i = 1, 2, … M i = {(x1, x2,...) | xi ∈ Mi für alle i = 1, 2,...}.
Ist I = {1,.., n}, so schreiben wir auch
∏i ∈ I M i = ∏i = 1, …, n M i = {(x1,.., xn) | xi ∈ Mi für alle i = 1,.., n}.
∏i = 1, …, n M i heißt n-stelliges (kartesisches) Produkt.
Beim nullstelligen Produkt existiert als Indizierung nur die leere Abbildung:
∏i ∈ ∅ M i = {(xi)i∈∅ | xi ∈ Mi für alle i ∈ ∅} = {∅}.
Sind alle Mi gleich, Mi = M für alle i ∈ I, so schreiben wir
MI :=
∏i ∈ I M = {(xi)i∈I | xi ∈ M für alle i ∈ I},
d.h. MI ist die Menge aller Abbildungen von I nach M (die I-te Potenz von M).
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 28
1 Mengen
Ist I = {1,.., n}, so schreiben wir
Mn := M{1,.., n} =
∏i = 1, …, n M = {(x1,.., xn) | x1,.., xn ∈ M}.
Mn heißt n-faches (kartesisches) Produkt von M (n-te Potenz von M).
Für n = 0 definieren wir
M0 :=
∏i ∈ ∅ M = {∅} und () := {} = ∅, sodass gilt M0 = {()},
d.h. M0 enthält nur das leere Tupel ().
Beispiel
Sei G eine Grundmenge. Ist M ⊆ G, so heißt die durch
χM : G → {0, 1}, x → χM(x) :=
|
0
1
falls x ∉ M
falls x ∈ M
definierte Funktion charakteristische Funktion von M. Umgekehrt lässt sich zu einer
Funktion f : G → {0, 1} die Menge
Mf := {x ∈ G | f(x) = 1} ⊆ G
definieren. Die Abbildungen
P(G) → {0, 1}G, M → χM
|
und
{0, 1}G → P(G), f → M f
|
sind bijektiv und invers zueinander, d.h. für M ⊆ G ist M χ = M und für f : G → {0, 1}
M
ist χ M = f. Auf endliche Mengen beschränkt bedeutet das: Mengen mit n Elementen
f
lassen sich durch n-Tupel aus 0en und 1en darstellen. Darauf beruht die Implementation des einfachen Datentyps SET in manchen Programmiersprachen.
Manche von Satz 1.23 bekannte Rechenregeln für zweistellige Produktmengen lassen
sich auf beliebige Produktmengen verallgemeinern.
Satz 1.30
Rechenregeln für
Produktmengen
Für Mengen I und Mi, Ni für i ∈ I gilt:
(1)
∏i ∈ I M i = ∅ genau dann, wenn es ein k ∈ I gibt mit Mk = ∅.
(2)
Mi ⊆ Ni für alle i ∈ I genau dann, wenn
(3)
∏i ∈ I M i ∩ ∏i ∈ I N i = ∏i ∈ I ( M i ∩ N i ) .
(4)
∏i ∈ I M i ∪ ∏i ∈ I N i ⊆ ∏i ∈ I ( M i ∪ N i ) .
∏i ∈ I M i ⊆ ∏i ∈ I N i .
Isotonie
Distributivität
1.9.1
Rekursive Definition von Produktmengen
Rekursion
Das n-stellige Produkt von M1,.., Mn lässt sich auch rekursiv definieren, indem man es
auf das bekannte zweistellige Produkt einer Komponentenmenge mit einem (n−1)-stelligen Produkt zurückführt.1 Rekursion (recursion) ist eine wichtige Methode in der
Mathematik und der Informatik. Die Idee ist, ein Problem der Größe n zu lösen, indem
l
l
1
es auf ein Problem der Größe n − 1 reduziert und
zusätzlich das Problem der Größe 1 gelöst wird.
Lateinisch recurrare = zurücklaufen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.9 Operationen mit indizierten Mengen
1 - 29
Damit ist das Problem für beliebige n ∈ lN gelöst. Wir nutzen das kartesische Produkt,
um die Methode der rekursiven Definition kennen zu lernen; sie ist ein spezieller Fall
von intensionaler Mengenbeschreibung (siehe 1.1.1).
Definition 1.31
n-stelliges kartesisches
Produkt
Zu beliebigen, endlich vielen Mengen M1,.., Mn definieren wir das n-stellige (kartesische) Produkt rekursiv so:
Für n = 1 definieren wir
(x1) := {x1} für x1 ∈ M 1,
∏i = 1 M i := {(x1) | x1 ∈ M1}.
Für n > 1 definieren wir
(x1,.., xn) := {x1, (x2,.., xn)} für x1 ∈ M1, (x2,.., xn) ∈
∏i = 1, …, n M i
:= M1 ×
∏i = 2, …, n Mi ,
∏i = 2, …, n M i
:= {(x1,.., xn) | x1 ∈ M 1, (x2,.., xn) ∈
∏i = 1, …, 0 M i und Mn für n ∈
lN
0
∏i = 2, …, n M i }.
definieren wir wie in Definition 1.29.
Wir haben nun drei Definitionen des kartesischen Produkts:
l
l
l
×E für das Produkt von zwei Mengen,
×I mittels Indizierung für das Produkt beliebig vieler Mengen, was ×E voraussetzt,
×R für das Produkt endlich vieler Mengen.
In der Informatik gibt es oft zu einer Programmspezifikation PS mehrere Implementationen PI1, PI2,... Diese sind dann auf ihre Vor- und Nachteile bezüglich gewisser Kriterien zu untersuchen, um die für einen gewissen Zweck optimale Implementation zu
wählen. Ähnlich untersuchen wir im Folgenden die Gemeinsamkeiten und Unterschiede der Produktdefinitionen.
Zunächst ist das indizierte Produkt ×I allgemeiner als das rekursive Produkt ×R, denn ×I
gilt für beliebig viele Komponentenmengen. Die Indexmenge I kann auch unendlich
sein - allerdings müssen wir dann das mengentheoretische Auswahlaxiom voraussetzen,
worauf wir nicht eingehen. ×R gilt dagegen nur für endlich viele Komponentenmengen.
Betrachten wir den Fall endlich vieler Komponentenmengen M1,.., Mn mit n ∈ lN0.
Dann sind ×I und ×R zwar i.A. nicht identisch, leisten aber dasselbe, wie die Bijektion
I
R
∏i = 1, …, n M i → ∏i = 1, …, n M i , (x1,.., xn)I → (x1,.., xn)R
|
zeigt. Nun führen wir die n-Tupel (x1,.., xn)I und (x1,.., xn)R auf ihre Definition als Mengen zurück. Für n = 0 ist ×I = ×R per Definition. Für n = 1 ist
(x1)I = {(1, x1)E} = {{1, {x1}}} und
(x1)R = {x1}, also
(x1)I ≠ (x1)R.
Für n = 2 ist
(x1, x2)I = {(1, x1)E, (2, x2)E} = {{1, {x1}}, {2, {x2}}} und
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 30
1 Mengen
(x1, x2)R = {x1, (x2)R} = {x1, {x2}} = (x1, x2)E, also
(x1, x2)I ≠ (x1, x2)R.
×R ist mit ×E verträglich. Für n = 3 ist
(x1, x2, x3)I = {(1, x1)E, (2, x2)E, (3, x3)E} = {{1, {x1}}, {2, {x2}}, {3, {x3}}} und
(x1, x2, x3)R = {x1, (x2, x3)R} = {x1, {x2, (x3)R}} = {x1, {x2, {x3}}}, also
(x1, x2, x3)I ≠ (x1, x2, x3)R.
Wir erkennen, dass für n > 3 erst recht
(x1,.., xn)I ≠ (x1,.., xn)R
ist. Aus den Überlegungen lernen wir Mehreres. Erstens erleichtert uns die Tupelschreibweise, mit der Abstraktion „geordnetes n-Tupel“, „Folge“ oder „Familie“ umzugehen. Dagegen sind die Mengenschreibweise und die konkreten Mengen, auf die sich
die Tupelschreibweise bezieht, zu elementar, um die Abstraktion angemessen auszudrücken - schon bei Tripeln wird es komplex. Dies zeigt, wie wichtig es ist, für
Abstraktionen geeignete Schreibweisen zu finden.
Zweitens entsprechen den beiden Definitionen ×I und ×R unterschiedliche Datenstrukturen in der Informatik.
1.9.2
Produktmengen und Datenstrukturen
Die auf Indizierung basierenden Tupel entsprechen programmiersprachlichen Verbunden und Reihungen, mit denen sich Indizierungen und kartesische Produkte gut ausdrücken lassen. Eine Reihung lässt sich ähnlich wie eine Wertetabelle veranschaulichen.
Bild 1.12
n-Tupel als Reihung
Mathematik
Programmiersprachen
n-Tupel x = (x1,.., xn)I
n-elementige Reihung x
Index
1
2
...
n
Index
0
1
...
n-1
Glied
x1
x2
...
xn
Element
x[0]
x[1]
...
x[n-1]
Beide Darstellungen entsprechen (x1,.., xn)I = {{1, {x1}},.., {n, {xn}}}; sie unterscheiden sich unwesentlich:
l
l
In der Mathematik wird meist mit 1, in der Informatik oft mit 0 beginnend indiziert.
Bei gleicher Anzahl n ist der Indexbereich 1,.., n oder 0,.., n − 1.
Programmiersprachen kennen keine Tiefstellung, weshalb sie statt der Index- eine
Klammerschreibweise verwenden, oft mit eckigen Klammern „[“, „]“.
Die auf Rekursion basierenden Tupel entsprechen programmiersprachlichen Listen, das
sind rekursive Datenstrukturen, die sich grafisch so veranschaulichen lassen:
Bild 1.13
n-Tupel als Liste
...
x1
x2
xn
Die Kästchen stehen für Datenobjekte, die Pfeile für Bezüge auf Datenobjekte. In
(x1,.., xn)R = {x1, {x2, {...{xn}...}}} enthält jede vorkommende Menge zwei Elemente,
von denen das zweite Element wieder eine Menge ist; nur die innerste Menge hat nur
das Element xn. Den Mengen in (x1,.., xn)R entsprechen die Datenobjekte, auf die waag© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.10 Strukturen
1 - 31
rechte Pfeile zeigen, den Elementen x1,.., xn die Datenobjekte, auf die senkrechte Pfeile
zeigen. Das erste Datenobjekt ist der Anker der Liste, es bezieht sich auf die Liste,
indem es sich auf ihr erstes Element bezieht. Das letzte Datenobjekt enthält neben dem
Bezug auf xn einen leeren Bezug. Das Studium mathematischer Strukturen kann also
durchaus nützlich für das Studium informatischer Strukturen sein.
Viele Programmiersprachen bieten strukturierte Datentypen für kartesische Produkte.
In objektorientierten Programmiersprachen umfasst das mächtigere Konstrukt Klasse
diese Datentypen.
Tabelle 1.8
Kartesisches Produkt
und strukturierte
Datentypen
Programmiersprachen
Mathematik
Pascal*
Produkt verschiedener Mengen Mi
Verbund (record, struct)
xi ∈ Mi für alle i = 1,.., n.
TYPE P =
RECORD
x1 : M1;
...
xn : Mn;
END;
typedef
struct {
M1 x1;
...
Mn xn;
} P;
Vereinbarung: Sei x ∈ P.
VAR x : P;
P x;
Benutzung:
erste, letzte Komponente x1, xn
x.x1 ... x.xn
x.x1 ... x.xn
Definition:
P :=
∏i = 1, …, n M i ,
Produkt gleicher Mengen M
1.10
C, C++
Reihung (array)
Definition: P := Mn.
TYPE P = ARRAY n OF M;
typedef M P [n];
Vereinbarung: Sei x ∈ P.
VAR x : P;
P x;
Benutzung:
erste, i-te, letzte Komponente xi
x[0] ... x[i] ... x[n-1]
x[0] ... x[i] ... x[n-1]
Strukturen
Mit Produkten beliebig vieler Mengen können wir die Begriffe Relation und Operation
verallgemeinern. Damit bereiten wir eine Basis der in Kapitel 2 behandelten Prädikatenlogik vor. Wie in Definition 1.24 ist eine Relation eine Teilmenge einer Produktmenge.
Definition 1.32
Relation
Sind Mi, i = 1,.., n (n ∈ lN0) Mengen und
R⊆
∏i = 1, …, n M i ,
so heißt R eine n-stellige Relation in
∏i = 1, …, n M i . Statt (x1,.., xn) ∈ R schreiben
wir auch
R(x1,.., xn).
Sind alle Mi gleich, d.h. M = M i für alle i = 1,.., n, so heißt R ⊆ Mn auch eine n-stellige Relation auf M.
Für n = 0 gibt es wegen M0 = {∅} nur die Relationen ∅ und {∅}.
Definition 1.33
Operation
9.8.04
Ist M eine Menge und n ∈
Operation auf M.
lN
0,
so heißt eine Abbildung f : Mn → M eine n-stellige
© Karlheinz Hug, Hochschule Reutlingen
1 - 32
1 Mengen
Für n = 0 reduziert sich f wegen M0 = {∅} auf die Zuordnung ∅ → f(∅) ∈ M, d.h. f
bildet das einzige Argument auf einen einzigen Wert ab. Daher identifizieren wir die
Begriffe nullstellige Operation und Konstante.
|
Definition 1.34
Struktur
Eine (mathematische) Struktur M, f1,.., fm, R1,.., Rn ist gegeben durch
l
l
l
eine Menge M,
Operationen f1,.., fm auf M, m ∈ lN0,
Relationen R1,.., Rn auf M, n ∈ lN0.
M heißt Trägermenge (Individuenmenge), die Elemente x ∈ M heißen Individuen
der Struktur. Ist m = 0, d.h. die Menge der Operationen leer, so handelt es sich um
eine (rein) relationale Struktur. Ist n = 0, d.h. die Menge der Relationen leer, so handelt es sich um eine (rein) algebraische Struktur.
In einer algebraischen Struktur lassen sich oft mittels der Operationen Relationen definieren, sodass auch eine relationale Struktur entsteht.
Beispiele
Ist M eine Menge, so ist
P(M), M, ∅, , ∩, ∪, =, ⊆
eine Struktur mit der Trägermenge P(M), den nullstelligen Operationen M, ∅, der einstelligen Operation , den zweistelligen Operationen ∩, ∪, und den zweistelligen Relationen =, ⊆. Es genügt, mit der Struktur P(M), M, ∅, , ∩, = zu starten, da sich ∪ mit
und ∩ definieren lässt (→ Satz 1.16 (6)), ⊆ mit ∩ und = (→ Satz 1.13 (2)).
Auf den natürlichen Zahlen ist
lN 0,
0, 1, +, ∗, div, mod, Prim, =, ≤
eine Struktur mit der Trägermenge lN0, den nullstelligen Operationen 0, 1, den zweistelligen Operationen +, ∗, div, mod, der einstelligen Relation Prim ⊆ lN0, die die Teilmenge der Primzahlen darstellt, und den zweistelligen Relationen =, ≤.
Mit mathematischen Strukturen lassen sich informatische Strukturen theoretisch fundieren. Betrachten wir etwa abstrakte Datenstrukturen, die in modularen Programmiersprachen im Konstrukt Modul, oder abstrakte Datentypen, die in objektorientierten
Programmiersprachen im Konstrukt Klasse erscheinen, und gliedern ihre Schnittstelle die Menge ihrer Dienste - wie in Eiffel oder Cleo in Abfragen und Aktionen, so können
wir grob folgende Entsprechungen identifizieren.
Tabelle 1.9
Strukturen
Mathematische Struktur
Abstrakte Datenstruktur / Datentyp
Trägermenge
Wertebereich
Operationen
Abfragen
Relationen
Aktionen
Ähnlich wie eine Operation ihre Argumente auf ein Bild abbildet, liefert ein Abfragenaufruf ein von den Parameterwerten abhängiges Ergebnis. Dagegen bewirkt eine
Aktion eine Änderung des Zustands der Datenstruktur, die sich durch den Zustand vor
und den Zustand nach einem Aktionsaufruf beschreiben lässt. Solche Zustandspaare
entsprechen Relationen mathematischer Strukturen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.11 Darstellungen von Größen
1.11
1 - 33
Darstellungen von Größen
Zum Schluss des Kapitels blicken wir kurz in die Realität, die Disziplinen wie Physik,
Chemie, Ökonomie usw. zu erfassen versuchen. Wir haben es dort mit physikalischen,
chemischen, ökonomischen usw. Größen zu tun. Die Unterscheidung zwischen
l
l
zählen und
messen
lässt sich bis in die Urgeschichte des Rechnens zurückverfolgen. Offenbar gibt es in der
Realität Größen, die sich aus Einheiten zusammensetzen, die man zählen kann: 1, 2,
3,... Bei anderen Größen lässt sich jede mögliche Zerlegungseinheit weiter zerlegen,
sodass es keine augenscheinliche Einheit für das Zählen gibt - man muss eine künstliche Einheit schaffen und die Größe daran messen. Freilich gibt es auch viele Dinge, die
weder zählbar noch messbar sind.
Diskret oder stetig?
Eine diskrete (discrete) Größe kann nur endlich viele unterscheidbare Werte annehmen. Eine stetige (continuous) Größe kann unendlich viele Werte annehmen, die sich
beliebig wenig unterscheiden können.
Analog oder digital?
Diskrete und stetige Größen lassen sich auf zwei Arten darstellen:
l
Bild 1.14
Analog dargestellte
stetige Größe
Eine Darstellung einer Größe heißt analog (analogous), wenn die Größe direkt auf
eine andere (geometrische oder physikalische) Größe abgebildet wird, z.B. auf
Länge, Winkel, Stromstärke, Spannung, Druck.
Eingabe E
Ausgabe A
E
Waage
Gewicht
l
A
Winkel
Eine Darstellung einer Größe heißt digital, wenn die Größe durch endlich viele Zeichen oder Zahlen dargestellt wird.1 Eine digitale Darstellung ist eine symbolische
Beschreibung der dargestellten Größe.
Diskrete Größen lassen sich leicht digital darstellen, z.B.
{Januar, Februar,.., Dezember} → {1, 2,.., 12}.
Bei stetigen Größen liegt oft eine analoge Darstellung nahe.
Bild 1.15
Analoge
Darstellungen2
y
x
Unter Diskretisierung oder Rasterung verstehen wir eine Abbildung eines unendlichen Wertebereichs in einen endlichen Wertebereich. Durch Diskretisierung erhält man
1
2
Digital = ziffernhaft; lateinisch digitus = Finger; englisch digit = Ziffer.
Quelle des Bärenbilds: http://www.bear.org vom 10. 5. 2003.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 34
1 Mengen
aus einer analogen Darstellung einer (stetigen) Größe eine diskretisierte analoge Darstellung.
Diskretisierung bewirkt theoretisch immer einen Informationsverlust, der umso größer
ist, je gröber die Rasterung ist. Andererseits kann man das Raster so verfeinern, dass
das menschliche Auge oder Ohr praktisch keine Informationslücken wahrnimmt. (Die
Darstellungen in Bild 1.15 sind tatsächlich auch diskretisiert.)
Bild 1.16
Diskretisierte analoge
Darstellungen
y
x
Unter Digitalisierung verstehen wir eine Abbildung von einem endlichen Wertebereich nach einem endlichen Zahlenbereich. Durch Digitalisierung erhält man aus einer
diskretisierten analogen Darstellung einer (stetigen) Größe eine digitale Darstellung.
Je feiner das Raster ist, desto mehr Zahlenwerte benötigt die Darstellung. Praktisch
bedeutet das: Je besser die Qualität einer dargestellten Größe (Funktion, Bild, gesprochene Sprache, Musik), desto mehr Speicher-, Übertragungs- und Verarbeitungskapazität benötigt ihre Darstellung und desto teurer ist sie. Qualität hat ihren Preis. Daher ist
ein wichtiges Problem informatischer Anwendungen, Größen mit möglichst geringem
Informationsverlust und möglichst wenig Werten zu diskretisieren und digitalisieren.
Bild 1.17
Digitalisierte
Darstellungen
x
y = f(x)
0 -0.2453740275806637
1 -0.3855877576267575
2 -0.5959083526958984
3 -0.7361220827419918
4 -0.8062289477650386
5 -0.8763358127880855
6 -0.9464426778111323
7 -0.8763358127880855
8 -0.8062289477650386
9 -0.7361220827419918
...
FF FF
FF FF
FF FF
00 00
00 00
FF FF
00 00
FF FF
FF FF
FF FF
00 00
...
FF
FF
FF
00
00
FF
FF
FF
FF
FF
00
FF
FF
00
00
00
FF
FF
FF
FF
FF
FF
FF
FF
00
00
00
00
FF
FF
FF
FF
FF
FF
FF
00
00
00
00
FF
FF
FF
00
FF
FF
FF
00
00
00
00
FF
FF
FF
00
FF
FF
FF
00
00
FF
00
FF
FF
FF
00
FF
FF FF
20 40
40 40
40 40
40 00
40 40
80 A0
A0 40
A0 80
40 20
00 40
...
FF
20
40
40
00
40
80
A0
40
20
20
FF
20
80
40
00
40
40
80
60
00
20
FF
40
60
60
40
40
A0
40
40
00
40
00
40
80
60
20
40
80
A0
00
00
20
40
40
80
40
20
40
40
80
00
00
20
20
40
60
40
40
40
C0
40
00
00
40
Die Konstruktion von Rechnern basiert auf der Digitaltechnik. Sie realisiert Funktionen
mit elektronischen Schaltkreisen, die mit binären Signalen arbeiten. An jedem Ein- und
Ausgang liegt eines der Signale 0 oder 1 an. Ein einfacher Schaltkreis entspricht damit
einer Funktion f : {0, 1} → {0, 1}. Komplexere Funktionen realisiert man mittels mehrerer Ein- und Ausgänge. Ein Bauelement für eine Funktion f : {0, 1}m → {0, 1} n hat m
Eingänge und n Ausgänge.
Bild 1.18
Funktionen als digitale
Bauelemente
Eingabe
Ausgabe
f
E
A
Eingabe E
e1
e2
...
em−1
em
© Karlheinz Hug, Hochschule Reutlingen
Ausgabe A
f
a1
a2
...
an−1
an
9.8.04
1.12 Literaturhinweise
1 - 35
Auf diesen Prinzipien beruht die folgende Aussage, deren Bedeutung wir täglich erfahren, wenn wir telefonieren, CDs hören, DVDs anschauen, im Web surfen oder E-Mails
versenden.
Theorem 1.35
Digitalisierung
Jede zählbare oder messbare Größe lässt sich
l
l
l
diskretisieren,
digitalisieren und
binär codiert darstellen
und damit
l
maschinell verarbeiten.
1.12
Literaturhinweise
Mengen
Die Grundzüge der Mengenlehre präsentiert fast jedes einführende Mathematik-Lehrbuch, da heute alle Gebiete der Mathematik einheitlich mit den Begriffen der Mengenlehre arbeiten: Moderne Mathematik ist Mengenlehre. Dieses Kapitel nimmt Anregungen aus [6], [8], [13], [16], [19], [23] und [27] auf.
Georg Cantor (1845 - 1918) ist der Begründer der Mengenlehre, doch reichen einzelne
Ideen weiter zurück. Schon der französische Mathematiker und Astronom Joseph Diaz
Gergonne (1771 - 1859) untersuchte Beziehungen zwischen geometrischen Punktmengen. Grundlagen der Mengenalgebra schuf - eng verknüpft mit Grundlagen der algebraischen Logik - der irische Mathematiker und Logiker George Boole (1815 - 1864).
Cantor legte ab 1874 die intuitive Basis für erste Theorien der Mengenlehre. Er analysierte Begriffe wie Gleichmächtigkeit, Kardinalzahl, Unendlichkeit, Ordnung, die wir
in Kapitel 4 behandeln. Cantor fand selbst um 1895 Widersprüche in gewissen Mengenbildungen. Bertrand Russell (1872 - 1970) beschrieb die nach ihm benannte Antinomie 1902 in einem Brief an den Logiker Gottlob Frege (1848 - 1925), von dem die
intensionale Beschreibung von Mengen stammt. Paradoxien und Antinomien der Mengenlehre wurden um 1900 bekannt und diskutiert; sie gaben Anlass, eine solide Basis
für die Mengenlehre zu suchen, die Antinomien ausschloss.
Cantors Schüler Ernst Zermelo (1871 - 1953) legte 1908 ein erstes brauchbares Axiomensystem für die Mengenlehre vor, auf dem die heute üblichen Axiomensysteme der
Mengenlehre basieren. Dabei wird nicht definiert, was eine Menge ist, sondern die
Eigenschaften der durch ∈ dargestellten Relation werden durch einige (bei Zermelo
sieben) Axiome festgelegt. Der Mathematiker Adolf Fraenkel (1891 - 1965), der sich
auch mit dem Problem des Auswahlaxioms befasste, lieferte ein weiteres Axiomensystem. Zu offenen Problemen gehörten die Widerspruchsfreiheit der Axiomensysteme
und die Kontinuumshypothese. Der Logiker Kurt Gödel (1906 - 1978) zeigte, dass die
entwickelten Standardtheorien der Mengenlehre relativ konsistent sind.
Die Unterschiede zwischen den heutigen Axiomensystemen beziehen sich auf unendliche Mengen und sind für praktische Anwendungen kaum relevant. Es gibt z.B. Mengenlehren mit und ohne Auswahlaxiom, mit und ohne Kontinuumshypothese. Einen
guten Überblick über die Geschichte der Mengenlehre bietet Meschkowski [15].
Variable
9.8.04
Schon einzelne Mathematiker und Logiker der griechischen Antike benutzten gelegentlich Variablen. Systematisch begann man im 17. Jahrhundert - vor allem durch den
französischen Mathematiker François Viète, lat. Vieta (1540 - 1603) beeinflusst Variablen in mathematischen Überlegungen zu verwenden. Seit René Descartes (1596 1650) bezeichnet man unbekannte Größen in Gleichungen mit x, y und z, bekannte mit
a, b und c. Auch die Standardnotation xn für die n-te Potenz von x ist Descartes zu verdanken. Die moderne Mathematik ist ohne Variablen undenkbar.
© Karlheinz Hug, Hochschule Reutlingen
1 - 36
1 Mengen
Relation
Erste Theorien der Relationen entwickelten Augustus de Morgan (1806 - 1871) und der
amerikanische Logiker Charles Sanders Peirce (1839 - 1914). Der Mathematiker und
Logiker Ernst Schröder (1841 - 1902) erweiterte ihr Werk systematisch.
Funktion
Der Fachbegriff Funktion stammt von Gottfried Wilhelm Leibniz (1646 - 1716); er
klärte im Briefwechsel mit dem schweizer Mathematiker Johann I Bernoulli (1667 1748) Begriffe wie Funktion, Konstante, Variable, Koordinate, Parameter, und führte
die Indexschreibweise ein. Bernoulli benutzte die Präfixschreibweise fx, sein Schüler
Leonhard Euler (1707 - 1783) die Funktionsschreibweise f(x). Vertrat Bernoulli noch
die enge Auffassung einer Funktion als einer „Größe, die auf irgendeine Weise aus
einer veränderlichen Größe und Konstanten zusammengesetzt ist“, so fand schon Euler
zum Verständnis einer Funktion als Zuordnung zweier Zahlenmengen.
Die klare Unterscheidung zwischen stetig und analog sowie zwischen diskret und digital empfiehlt Rechenberg [17].
1.13
Übungen
Aufgabe 1.1
Namen von
Zeichenfolgen
Zeichenfolgen, über die wir etwas aussagen, müssen benannt sein. Eine Möglichkeit sie
zu benennen besteht darin, sie in Anführungszeichen zu setzen. Dies gilt auch für Zeichenfolgen, die selbst Namen sind. Geben Sie an, welche der folgenden Zeichenfolgen
durch korrektes Verwenden von Anführungszeichen korrekte Sätze sind!
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
Alice ist glücklich.
Bob besteht aus drei Buchstaben.
„Cleo“ ist ein Name.
Cleo ist eine Spezifikationssprache.
0 ist eine Zahl.
0 gleicht einem großen O.
„0“ ist eine Zahl.
„0“ gleicht „O“.
0∈ .
„0“ ∈ .
„∈“ ist das Symbol der Elementrelation.
x ∈ M ist eine Aussage.
1 + 1 = 2.
„1 + 1“ = „2“.
„1“ + „1“ = „11“.
x + y = y + x.
„x + y“ = „y + x“.
„He said: \„Don’t worry!\““ ist eine Zeichenfolge, die mit dem Symbol „\“ markierte Anführungszeichen enthält, um diese von den die Zeichenfolge benennenden Anführungszeichen zu unterscheiden.
!
!
Suchen Sie Sätze in diesem Skript, in denen die Anführungszeichenregel nicht korrekt
angewendet ist! Welche andere Regel wird oft verwendet?
Aufgabe 1.2
Beweisen Sie Korollar 1.3 S. 2!
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.13 Übungen
Aufgabe 1.3
Mengen beschreiben
1 - 37
Geben Sie möglichst einfache Beschreibungen folgender Mengen an!
{(−1)3n | n ∈ lN0}
(1)
! | x2 + 3x + 2 = 0}
{x ∈ ! | x2 − 2x + 3 = 0}
{2m + 3n | m, n ∈ '}
{x ∈
(2)
(3)
(4)
Aufgabe 1.4
Semantische
Antinomien
Untersuchen Sie folgende Situationen!
(1)
L sei das Literaturverzeichnis, das alle Werke verzeichnet, die sich nicht selbst
verzeichnen. Verzeichnet L sich selbst?
Proklos (um 450 v.u.Z.) [19]: Protagoras lehrt einen Schüler die Rechte und
stundet ihm die Studienkosten, bis der Schüler seinen ersten Prozess gewonnen
hat. Da der Schüler nach Abschluss des Studiums keine Prozesse übernimmt,
verklagt ihn Protagoras schließlich auf Zahlung der Studienkosten. Muss der
Schüler zahlen?
Grelling (1908) [19]: Man zerlegt die Menge der deutschen Adjektive in zwei
Klassen. Ein Adjektiv ist autologisch, wenn es das ist, was es bedeutet, z.B. das
kurze Adjektiv „kurz“, das deutsche Adjektiv „deutsch“, das dreisilbige Adjektiv
„dreisilbig“; sonst ist es heterologisch, z.B. das kurze Adjektiv „lang“, das deutsche Adjektiv „englisch“, das dreisilbige Adjektiv „zweisilbig“. Zu welcher
Klasse gehört heterologisch?
(2)
(3)
Aufgabe 1.5
Beweisen Sie Korollar 1.7 S. 7!
Aufgabe 1.6
Beziehungen zwischen
Mengen
Geben Sie möglichst viele Beziehungen zwischen folgenden Mengen an!
G = {2n | n ∈ lN0},
U = {2n + 1 | n ∈ lN0},
GpG = {g + h | g, h ∈ G},
UpU = {u + v | u, v ∈ U},
GmU = {g ∗ u | g ∈ G, u ∈ U},
GpU = {g + u | g ∈ G, u ∈ U},
GmG = {g ∗ h | g, h ∈ G},
UmU = {u ∗ v | u, v ∈ U},
Gq = {g2 | g ∈ G},
qG = {n ∈ lN0 | n2 ∈ G}.
Aufgabe 1.7
Beweisen Sie Korollar 1.9 S. 7!
Aufgabe 1.8
Potenzmenge
Geben Sie die Potenzmenge von {1, 2, 3, 4} an! Wieviele Elemente hat sie?
Aufgabe 1.9
Beweisen Sie Satz 1.13 S. 9!
Aufgabe 1.10
Beweisen Sie Satz 1.14 S. 9!
Aufgabe 1.11
Beweisen Sie Satz 1.15 S. 10!
Aufgabe 1.12
Beweisen Sie Satz 1.16 S. 11!
Aufgabe 1.13
Beweisen Sie Satz 1.17 S. 12!
Aufgabe 1.14
Dreiecke
Es seien D die Menge aller Dreiecke, K die Menge aller gleichschenkligen Dreiecke, S
die Menge aller gleichseitigen Dreiecke, W die Menge aller gleichwinkligen Dreiecke,
R die Menge aller rechtwinkligen Dreiecke, P die Menge aller spitzwinkligen Dreiecke
und T die Menge aller stumpfwinkligen Dreiecke. Zeichnen Sie ein Mengendiagramm
und geben Sie alle Beziehungen zwischen diesen Mengen an!
Aufgabe 1.15
Schaltjahre [8]
Ein Schaltjahr ist ein Jahr, das durch 4, aber nicht durch 100, wohl aber durch 400 teilbar ist. (2000 war ein Schaltjahr, 1900 keins.) Stellen Sie die Menge S der Schaltjahre
mit den Mengen
L = {n ∈ lN | 4 teilt n}, M = {n ∈ lN | 100 teilt n}, N = {n ∈ lN | 400 teilt n}
dar!
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 38
Aufgabe 1.16
Mengenoperationen
[16]
1 Mengen
Stellen Sie mit den Teilmengen L, M, N der Grundmenge G die Menge der Elemente
von G dar, die
(1)
(2)
(3)
(4)
(5)
(6)
(7)
zu mindestens einer der drei Mengen L, M, N,
zu genau einer der drei Mengen,
zu mindestens zwei der drei Mengen,
zu genau zwei der drei Mengen,
zu allen drei Mengen,
zu keiner der drei Mengen,
nur zu L
gehören!
Aufgabe 1.17
Mengenausdrücke
vereinfachen
Aufgabe 1.18
Wann sind zwei
Mengen gleich?
Vereinfachen Sie folgende Mengenausdrücke! Die Grundmenge sei G.
(1)
(2)
(3)
(4)
(M ∩ M) ∪ (M ∩ ∅)
(∅ ∪ M) ∩ (M ∪ (M ∩ N) ∪ N)
(L ∩ M) ∪ (M ∩ O) ∪ (N ∩ L) ∪ (O ∩ N)
((L \ M) ∩ (M \ N) ∩ (M \ ∅)) ∪ ((L \ M) ∩ (L \ N))
(5)
(6)
((L ∩ Mc) ∪ N)c ∩ (Lc ∪ (M ∩ Nc)c)
(L ∪ N) ∆ ((M \ (N \ M)) ∪ ((L \ M) \ L)) ∆ (L \ N)
Zeigen Sie durch Gegenbeispiele, dass
(1)
(2)
aus L ∩ M = L ∩ N nicht M = N folgt;
aus L ∪ M = L ∪ N nicht M = N folgt!
Beweisen Sie, dass
(3)
(4)
aus L ∩ M = L ∩ N und L ∪ M = L ∪ N folgt M = N;
aus L ∪ M = L ∪ N und L ∪ M = L ∪ N folgt M = N!
Aufgabe 1.19
Beweisen Sie Satz 1.19 S. 15!
Aufgabe 1.20
Mengen bestimmen
[16]
Für n ∈ lN0 sind die Mengen
Mn := {i ∈ lN | i ≤ n},
Nn := {i ∈ lN | i ≥ n}
gegeben. Bestimmen Sie für m, n ∈ lN0 die folgenden Mengen!
(1)
Mm ∆ M n
(2)
Nm ∆ Nn
(3)
∩
Mi
∪
Mi
∩
Ni
∪
Ni
i = 1, …, n
(4)
i = 1, …, n
(5)
i = 1, …, n
(6)
i = 1, …, n
Aufgabe 1.21
Beweisen Sie Korollar 1.21 S. 16!
Aufgabe 1.22
Zerlegungen
Geben Sie alle echten Zerlegungen von {1, 2, 3, 4} an! Wieviele gibt es?
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
1.13 Übungen
Aufgabe 1.23
Potenzmengen [16]
1 - 39
Beweisen Sie, dass für beliebige Mengen M, N die Inklusionskette
P(M ∩ N) = P(M) ∩ P(N) ⊆ P(M) ∪ P(N) ⊆ P(M ∪ N)
gilt!
Aufgabe 1.24
Beweisen Sie Satz 1.23 S. 18!
Aufgabe 1.25
Relationen
Gegeben sind folgende Relationen:
!2 | x ≥ 0},
M2 = {(x, y) ∈ !2 | y ≥ 0},
M3 = {(x, y) ∈ !2 | x ≤ 0},
M4 = {(x, y) ∈ !2 | y ≤ 0},
M1 = {(x, y) ∈
(1)
(2)
(3)
(4)
Skizzieren Sie die Relationen in einer kartesischen Ebene!
Stellen Sie die Komplemente der Mengen in intensionaler Form dar!
Zeichnen Sie folgende Mengen in eine kartesische Ebene und beschreiben Sie
sie verbal!
M1 ∩ M3 ,
M1 ∩ M2,
M2 \ M3 ,
N1 ∩ N3,
M1 ∩ N1 ∩ N2,
M3 ∪ M4 ∪ N3,
N1 ∩ N2 ∩ N3 ∩ N4,
M 3 ∩ N 1 ∩ N 4.
Welche der folgenden Aussagen sind wahr, welche falsch?
M2 \ M1 ⊆ M2 ∩ M3 ,
M4 ⊆ N1 ∆ N4,
N1 ∩ N3 = ∅,
Aufgabe 1.26
Relationen und
Funktionen
!2 | x + y ≤ 1},
N2 = {(x, y) ∈ !2 | y − x ≤ 1},
N3 = {(x, y) ∈ !2 | −x − y ≤ 1},
N4 = {(x, y) ∈ !2 | x − y ≤ 1}.
N1 = {(x, y) ∈
N1 \ M1 ⊆ N3 ∩ M4.
Die folgenden Formeln definieren Relationen
R := {(x, y) | x und y erfüllen die Formel} und R−1.
Welche dieser Relationen stellen Funktionen mit geeigneten Definitions- und Wertebereichen dar?
(1)
(2)
2x + 3y = 4.
x − 5 < y + 5.
(3)
(4)
(5)
(6)
6x − 7y = 8x2 + 9y2.
x ist Mutter von y.
x ist Tochter von y.
x sendet E-Mails an y.
Aufgabe 1.27
Beweisen Sie Satz 1.30 S. 28!
Aufgabe 1.28
Rekursive Definition
Geben Sie eine rekursive Definition des Durchschnitts endlich vieler Mengen an!
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
1 - 40
© Karlheinz Hug, Hochschule Reutlingen
1 Mengen
9.8.04
2
Logik
AufgabeBeispiel
2
Bild
2 2 (2)
MathAussagen
Leitlinie Programm
2
2 2
Tabelle 2
In Kapitel 1 haben wir schon einige mathematische Aussagen (streng genommen Aussageformen) kennen gelernt:
x ∈ M, M ≠ N, M ⊆ N.
Wir haben die Aussagen miteinander logisch verknüpft - mit „und“, „oder“, „aus ...
folgt“ und „genau dann, wenn“, wobei wir Anordnung und Bedeutung dieser Verknüpfungen informal eingeführt haben. Fast unbemerkt haben wir auch Formulierungen wie
„für alle x“ und „es gibt ein x“ verwendet. Nun stellen wir die intuitiv benutzte Logik
auf eine solidere Basis, indem wir sie formalisieren.
2.1
Aussagenlogik
Logik ist die Wissenschaft des schlüssigen, folgerichtigen Denkens. Da unser Denken
eng mit unserer Sprache zusammenhängt, betrachten wir zunächst sprachliche Aspekte.
2.1.1
Einführung
Satzart
Unsere Umgangssprache kennt verschiedene Arten von Sätzen. Dazu gehören:
(1)
(2)
(3)
Aussagesätze wie „Informatik macht Spaß.“.
Fragesätze wie „Macht Informatik Spaß?“.
Befehlssätze wie „Lerne Informatik!“.
Man erkennt die Satzart oft am Schlusszeichen: „.“, „?“ oder „!“. Diese Unterscheidung
ist auch für die Mathematik und die Informatik wichtig - wir müssen nur bewusst damit
umgehen.
Aussage und Frage
Aussagen beschreiben Sachverhalte. Fragen unterscheiden sich davon nicht so stark
wie es scheinen mag, denn jede Aussage lässt sich in eine entsprechende Frage umformulieren. (Umgekehrt gibt es nicht zu jeder Frage eine eindeutige Aussage - nämlich
nicht zu Fragen, die mit Fragewörtern wie Wer, Was, Wo, Warum beginnen.) Es ist ein
rhetorischer Trick, eine Frage zu stellen, wenn man der Gefahr ausweichen will, Falsches zu behaupten. Sagen wir z.B.
„Der Präsident ist ein Dummkopf, ein Verbrecher oder ein Psychopath.“,
so droht eine Anzeige wegen Beleidigung eines Staatsoberhaupts. Fragen wir dagegen
„Ist der Präsident ein Dummkopf, ein Verbrecher oder ein Psychopath?“,
so kann nichts passieren, denn schließlich darf man wohl noch fragen, oder?
Bewertung und
Antwort
Entscheidend an Aussagen ist, dass man sie bewerten, an Fragen, dass man sie beantworten kann. Eine Bewertung von Aussage (1) kann sein: „Das ist wahr.“, eine Antwort
auf Frage (2): „Ja“. Freilich sind diese Kommentare subjektiv. Ein Anderer kann „Das
ist falsch.“ bzw. „Nein“ äußern. Mögliche Bewertungen beschränken sich aber nicht
auf „wahr“ oder „falsch“, Antworten nicht auf „ja“ oder „nein“. Wir können differenziert kommentieren: „Naja, mir macht Informatik meist Spaß, aber für manche ist es
manchmal hartes Brot.“ Oder: „Spaß? Nee! Vielleicht früher mal ein bisschen Freude.“
Alltagslogik
Die Umgangssprache bietet viele Möglichkeiten, Aussagen differenziert zu bewerten,
Fragen differenziert zu beantworten. Subjektive Empfindung („für mich“), intersubjektive Einschätzung („für wenige“, „für viele“), Wissensstand („vielleicht“), Intensität
(„wenig“, „viel“), Häufigkeit („selten“, „oft“) und Zeitpunkt des Auftretens („heute“,
„am 9.8.04“) usw. sind Teil der vielwertigen Alltagslogik.
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Kapitel 2 - Seite 1 von 72
2-2
2 Logik
Aussagenlogik
Dagegen befassen sich Mathematik und Informatik vor allem mit Aussagen, die nur
mit „wahr“ oder „falsch“ zu bewerten sind, d.h. sie verwenden eine zweiwertige, binäre
Logik. Die Aussagenlogik (propositional logic) ist der Zweig der mathematischen, formalen Logik, der diese zweiwertige Logik begründet. Sie geht aus von einer Menge
von Aussagen (proposition), die sich mit Operationen zu weiteren Aussagen verknüpfen lassen, der Menge der Wahrheitswerte (truth value) {falsch, wahr} und Bewertungsfunktionen (evaluation function) oder Interpretationen I, die den Aussagen A
Wahrheitswerte I(A) ∈ {falsch, wahr} zuordnen. Dabei kann I(A) unbekannt oder nicht
berechenbar sein. Durch diese Einschränkung (gegenüber der Alltagslogik) auf die
binäre Logik gewinnen wir ein mächtiges Werkzeug, das wir in der Informatik an vielen Stellen brauchen, z.B. in der Softwareentwicklung beim Analysieren von Anforderungen, Spezifizieren von Schnittstellen, Implementieren von Algorithmen und Suchen
von Fehlern.
Andere Logiken
Weitere Zweige der formalen Logik formalisieren andere Aspekte der Alltagslogik.
Beispielsweise liegen der unscharfen Logik (fuzzy logic) Bewertungsfunktionen in das
reelle Intervall [0, 1] zugrunde. Die temporale Logik befasst sich mit dem Aspekt des
zeitlichen Auftretens. Diese Logiken bauen auf der Aussagenlogik auf und setzen deren
Kenntnis voraus.
Befehl
Zurück zum Start, Satzart (3): Welche Rolle spielen Befehlssätze? Die Mathematik
befasst sich nur mit Problemen (Fragen) und ihren Lösungen (Aussagen), sie kennt
keine Befehle. Dagegen spielen Befehle, Kommandos, Anweisungen, Instruktionen in
der Informatik eine wesentliche Rolle: Man setzt Rechner und Programme ein, um Probleme zu lösen. Dazu erteilt man Rechnern Befehle, d.h. schreibt sie in Programme.
Effekt
Was charakterisiert Befehle? Befehle kann man nicht wie Aussagen bewerten oder wie
Fragen beantworten. Jeder Befehl richtet sich an einen Akteur (ein Lebewesen oder
eine Maschine). Jeder Akteur ist zu Aktionen fähig, die Situationen verändern. Ein
Befehl ist eine Aufforderung an den Akteur, aus einer Situation heraus eine andere
Situation zu schaffen. Der Akteur kann einen erhaltenen Befehl akzeptieren und ausführen oder ablehnen und nichts tun. Ein Befehl soll einen Effekt bewirken.
Vor- und
Nachbedingung
Wie verhalten sich Aussagen und Befehle zueinander? Situationen lassen sich durch
Aussagen beschreiben. Der Effekt eines Befehls lässt sich durch ein Paar von Aussagen
beschreiben: Die Vorbedingung beschreibt die Situation vor der Befehlsausführung, die
Nachbedingung die Situation danach.
Tabelle 2.1
Aussagen und Befehle
Zeitgeschichte
CP-Programm
Vorbedingung
Aussage, beschreibt Situation
Es ist Krieg.
Befehl
gerichtet an Akteur,
beschreibt Aktion
Herr Präsident,
beenden Sie den Krieg! INCL (M, 1);
Nachbedingung
Aussage, beschreibt Situation
Der Krieg ist beendet.
M = {}
M = {1}
Um ein gutes Verständnis von Befehlen und ihren Effekten zu erhalten ist es also sinnvoll, sich zuerst intensiv mit der Logik von Aussagen zu befassen.
Formale Sprache
Dazu abstrahieren wir völlig vom Inhalt möglicher Aussagen und konstruieren die
Aussagenlogik als eine formale Sprache. Mit formalen Sprachen befassen wir uns in
folgenden Kapiteln - die Aussagenlogik dient hier dazu, an dieses Gebiet heran zu führen. Eine formale Sprache (formal language) wird beschrieben durch
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2-3
(1)
(2)
Zahlenrechnen
ein Alphabet, aus dessen Zeichen Wörter, d.h. Zeichenfolgen gebildet werden;
die Syntax, die festlegt, welche mit den Zeichen des Alphabets gebildeten Wörter zur Sprache gehören;
(3) die Semantik, die den Wörtern der Sprache eine Bedeutung zuordnet.
Wir gehen ähnlich vor wie beim Lernen des Zahlenrechnens - nur formaler. Bei Zahlen
starten wir mit literalen Konstanten
1, 2, 3,..,
verknüpfen sie zu einfachen konstanten Ausdrücken
1 + 2, 3 ∗ 4,..,
lernen diese zu berechnen
2 + 2 = 4, 5 ∗ 6 = 30,..,
führen Variablen
x, y, z,...
ein, bilden damit komplexere Ausdrücke
(x + 7) ∗ y, ((a − 1) ∗ (2b + 3)) / ((4c − 5) ∗ (6d + 7)),..,
aber nicht etwa
) ) a + ∗ j d d 22 111 v ( − ( / / x v 345 g r ∗ m n + ∗ 987,
üben das „Buchstabenrechnen“
8x − 16y = 8 ∗ (x − 2y),..,
setzen für Variablen Werte ein
x = 12 und y = 10
und berechnen damit Ausdrücke
5x / y = (5 ∗ 12) / 10 = 60 / 10 = 6.
Beim Zahlenrechnen ist es egal, in welchem Kontext der Ausdruck 7 + 8 ∗ 9 steht und
ob 7 und 9 Äpfel oder Autos zählen, das Ergebnis ist unabhängig davon stets 79. Für
das Aussagenrechnen, die Aussagenlogik ergeben sich die Unterschiede:
Aussagenrechnen
l
l
l
Statt unendlich vieler Zahlen kommen nur zwei Wahrheitswerte vor.
Dadurch ist das logische kleine Einmaleins viel kleiner als das arithmetische.
An die Stelle der arithmetischen Operationen +, −, ∗, / treten logische Operationen.
2.1.2
Alphabet der Aussagenlogik
Konstante
Die zwei Wahrheitswerte sind die logischen Konstanten der Aussagenlogik. Je nach
Anwendungsbereich sind verschiedene Symbole üblich. Die Literatur zur Logik bietet
eine Vielfalt an Symbolen, wobei die in der Algebra verbreiteten Symbole 0 und 1 für
neutrale Elemente beliebt sind, ohne dass hier Verwechslungen mit den natürlichen
Zahlen 0 und 1 zu befürchten sind. In der Digitaltechnik, in Maschinensprachen und
maschinennahen Programmiersprachen herrschen 0 und 1 vor. Höhere Programmiersprachen, die Wert auf Typsicherheit legen, bevorzugen false und true, um Konflikte mit
Zahlen zu vermeiden.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2-4
2 Logik
Tabelle 2.2
Wahrheitswerte und
boolesche1 Datentypen
Wahrheitswerte
Datentyp
falsum, verum
⊥ (bottom), T (top)
Aussagenlogik
falsch, wahr
f/F, w/W
f/F, t/T
O, L
Aussagenlogik, boolesche Algebra,
Schaltalgebra
0, 1
C
0, 1
Pascal*
Programmiersprachen
char
FALSE, TRUE
BOOLEAN
Eiffel
false, true
C*
bool
Unsere Menge der Konstanten ist
lB
:= {0, 1}
mit 0 für falsch und 1 für wahr. Analog zu den Variablen auf S. 1-2ff führen wir logische Variablen ein:
Variable
a ∈ lB
bedeutet: a ist eine logische Variable, deren Wert 0 oder 1 sein kann. In der Digitaltechnik und in Programmiersprachen spricht man auch von booleschen Konstanten und
booleschen Variablen.
Tabelle 2.3
Variablen
Vereinbarungen
Begriff
Logik
Variable
Vereinbarung
Programmiersprachen
Pascal*
a
Sei a ∈ lB.
C*
a
VAR a : BOOLEAN;
bool a;
Unsere Menge der Variablennamen ist die Menge der kursiven Kleinbuchstaben, die
auch indiziert sein können, damit die Anzahl der Variablen nicht beschränkt bleibt:
Va := {a, b, c,.., z, a0, a1, a2,.., z0, z1, z2,...}.
Die Bindung (→ S. 1-24)
bind : Va → { lB}, α → bind(α) := lB
|
der Variablennamen α ∈ Va an lB, sodass sie logische Variablen α ∈ lB bezeichnen, ist
Teil der Semantik (→ 2.1.4.2). Gelegentlich sprechen wir einfach von Variablen α ∈ Va
statt von Variablennamen.
Konkrete Aussage
Man darf sich vorstellen, dass Variablen konkrete Aussagen bezeichnen, die mehr oder
weniger formalisiert sind, z.B.
a := „Heute ist Vollmond.“
b := „Einmal ist keinmal.“
c := „1 + 1 = 3.“
d := „3 ist eine Primzahl.“
e := „5 ∈ {x | x ist Primzahl}.“
1
George Boole (1815 - 1864), irischer Mathematiker, Logiker, begründete die algebraische Logik.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2-5
Im Folgenden abstrahieren wir jedoch vom Inhalt der Aussagen und betrachten nur ihre
Bezeichnungen.
Tabelle 2.4
Logische
Operationen
Auch für die logischen oder booleschen Operationen (Verknüpfung, Operator, Funktor, Junktor) sind verschiedene Symbole üblich. Wir nutzen die Gelegenheit, um die
Namen der Operationen einzuführen. A, B stehen für logische Ausdrücke, die wir unten
definieren.
Logik
Schaltalgebra
¬A
∼A
Konjunktion A und B
Disjunktion
Adjunktion
Begriff
Gesprochen
Pascal*
Eiffel
C*
A
NOT A
~A
not A
!A
A∧B
A∗B
AB
A AND B
A&B
A and B
A && B
A oder B
A∨B
A+B
A OR B
A or B
A || B
Implikation
Subjunktion
aus A folgt B
wenn A dann B
A impliziert B
AB
A→B
Äquivalenz
Bijunktion
A genau dann, wenn B
A äquivalent zu B
A⇔B
A↔B
Antivalenz
entweder A oder B
A antivalent zu B
A <≠> B
Negation
nicht A
exklusives Oder
a
Programmiersprachen
a
NOT A OR B
A implies B
~A OR B
A XOR B
!A || B
A=B
A=B
A == B
A#B
A /= B
A != B
Das korrekte Symbol, der durchgestrichene Äquivalenzdoppelpfeil, fehlt im Zeichensatz.
Unsere Menge der Operationssymbole oder kurz Operationen ist
Klammer
Op := {¬, ∧, ∨, , ⇔, <≠>}.
Außerdem brauchen wir ein Paar Klammern (parenthesis):
Kl := {(, )}.
Definition 2.1
Alphabet der
Aussagenlogik
Das Alphabet der Aussagenlogik ist die Vereinigung der vier paarweise disjunkten
Mengen:
Al := lB ∪ Va ∪ Op ∪ Kl.
2.1.3
Syntax der Aussagenlogik
Die Sprache A der Aussagenlogik ist eine Menge von Wörtern aus Zeichen des
Alphabets Al. Die Wörter bezeichnen wir mit kursiven Großbuchstaben: A, B,... Wir
müssen nun die Syntax dieser Sprache, d.h. die Anordnung der Zeichen in den Wörtern, definieren - und zwar so genau, dass wir bei jedem Wort A aus Zeichen von Al entscheiden können, ob
Induktion
oder
A∉A
A∈A
gilt. Dazu wenden wir die Methode der induktiven Definition an, die mit Rekursion
(→ 1.9.1) verwandt und genauso wichtig ist, aber umgekehrt vorgeht. Die Idee bei der
Induktion ist, ein Problem zu lösen, indem man
l
l
9.8.04
einfache, nicht weiter zerlegbare Teilprobleme löst;
die Lösungen von aus Teilproblemen zusammengesetzten Problemen konstruiert,
indem man sie aus Lösungen der schon gelösten Teilprobleme zusammensetzt.
© Karlheinz Hug, Hochschule Reutlingen
2-6
Syntaxregel
Definition 2.2
Aussagenkalkül,
Aussagenlogischer
Ausdruck
2 Logik
Eine induktive Definition der Syntax einer Sprache ist eine Anleitung zum Konstruieren der Wörter der Sprache, ein so genannter Kalkül, der aus einer Reihe von Syntaxregeln besteht. Viele Konstrukte von Programmiersprachen wie Ausdrücke, Anweisungen, Datentypen und Klassen sind induktiv definiert.
Die Syntax von A ist durch folgende induktive Regeln bestimmt, d.h. genau die Wörter gehören zu A, die durch endlichmaliges Anwenden der Regeln (1) bis (3) bildbar
sind:
(1)
(2)
(3)
Die Konstanten sind Wörter von A:
lB ⊆ A.
Die Variablen sind Wörter von A:
Va ⊆ A.
Aus schon in A enthaltenen Wörtern A, B werden mit den Operationen und
Klammern neue Wörter von A gebildet: Sind A, B ∈ A, dann sind auch
¬A, (A ∧ B), (A ∨ B), (A B), (A ⇔ B), (A <≠> B) ∈ A.
A, B heißen Operanden.
Ein Wort A ∈ A heißt Aussage oder aussagenlogischer Ausdruck (aussagenlogische Formel, boolescher Ausdruck, propositional expression, formula). Konstanten
und Variablen heißen auch atomare Aussagen (Atom), die nach Regel (3) gebildeten
Aussagen heißen zusammengesetzt. Die Operanden zusammengesetzter Aussagen
heißen auch Teilausdrücke (subexpression).
Regel (3) entnehmen wir, dass die Negation eine einstellige Operation ist, die anderen
Operationen sind zweistellig.
A, B,... sind Variablen der Menge A, daher ist {A, B,...} /⊆ A. „A“, „B“,... sind Namen für Aussagen. a, b,... sind Konstanten von A, die Variablen(namen) heißen, d.h. {a, b,...} ⊆ A.
„a“, „b“,... sind Namen für so genannte Aussagevariablen.
Beispiele
Nach den Syntaxregeln können wir Aussagen konstruieren - man sagt: aus dem Aussagenkalkül ableiten -, z.B.:
0, 1, a, b, c,.., ¬a, ¬b, ¬c,..,
(a ∧ b), (a ∨ b), (a b), (a ⇔ b), (a <≠> b), (¬a ∧ b), (a ∨ ¬b), (¬a ¬b),..,
(a ⇔ 0), (b <≠> ¬c),..,
(¬a ⇔ (b ¬c)),..,
((a b) ∧ (a ⇔ b)),
((a ∧ b) (a ∨ b)),
((a ∨ ¬b) ⇔ (¬c ¬1)),
((a ¬b) ∨ (¬c ∧ d)),
((a ⇔ c) <≠> (b <≠> ¬¬1)),
¬(¬(a <≠> 0) ¬(¬a ∧ b)).
Jede Aussage kann Teilausdruck anderer, zusammengesetzter Aussagen sein. Das ist
eine bemerkenswerte Eigenschaft, deren Analogon uns von arithmetischen und Mengenausdrücken bekannt ist: Ersetzt man in einem Ausdruck einen Teilausdruck durch
einen anderen Ausdruck, so erhält man wieder einen Ausdruck. Die Großbuchstaben A,
B,... sind Namen für so gebildete Ausdrücke, z.B.
A = 0,
B = (a ∧ b),
C = ((a ¬b) ∨ (¬c ∧ d)),
D = ((A ∨ B) ∧ C) = ((0 ∨ (a ∧ b)) ∧ ((a ¬b) ∨ (¬c ∧ d))).
Diese Aussagen sind freilich inhaltsleer. Wir können sie mit Inhalt füllen, indem wir
die Variablen wie auf S. 4 skizziert durch mathematische, z.B. mengentheoretische
Aussagen (streng genommen Aussageformen) wie x ∈ M, M ≠ N, M ⊆ N oder arithmetische Aussagen wie y ≤ x2 + 1 ersetzen. So erhalten wir Aussagen wie
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2-7
(((x ∈ M ∧ M ≠ N) ∨ (M ⊆ N)) y ≤ x2 + 1).
Legen wir nun noch die Bedeutung der logischen Operationen fest, sind wir am Ziel.
Zuvor müssen wir sicherstellen, dass wir Aussagen eindeutig in die Operanden und
Operationen zerlegen können, aus denen sie gebildet wurden. Das ist weniger trivial als
es scheint! Beispielsweise lässt sich aus dem Alphabet {|, ||} das Wort ||| bilden und auf
die drei Arten | + | + |, | + ||, || + | zerlegen.
Satz 2.3
Eindeutigkeit der
Syntaxdefinition
Jede Aussage ist entweder eine Konstante oder eine Variable oder von genau einer
der Formen
¬A, (A ∧ B), (A ∨ B), (A B), (A ⇔ B), (A <≠> B) ∈ A.
Der Satz beruht darauf, dass sich kein Zeichen von Al aus anderen Zeichen von Al
zusammensetzt und zusammengesetzte Aussagen ordentlich geklammert sind. Ohne
Klammern wäre z.B. die Aussage ¬a ∧ b nicht eindeutig zerlegbar: sie könnte sowohl
von der Form ¬A als auch von der Form A ∧ B sein.
2.1.4
Semantik der Aussagenlogik
Die Semantik der Aussagenlogik ordnet den Wörtern der Sprache, also den Aussagen
A ∈ A, eine Bedeutung zu. Hier kommen
l
l
l
die Bedeutungen der Operationen l ∈ Op,
die Bindungen der Variablen α ∈ Va, und
die möglichen Interpretationen I : A → lB, A → I(A) der Aussagen
|
ins Spiel. Eine Bedeutung oder Interpretation einer Aussage ist ihr Wahrheitswert. Wie
aber sollen wir für jede der unendlich vielen Aussagen A ∈ A einen Wahrheitswert festlegen? Satz 2.3 erlaubt uns, die Operationen und die Interpretationen jeweils induktiv
über den Aufbau der Aussagen - also entlang der Syntaxregeln - zu definieren. Wir
üben also induktives Definieren.
2.1.4.1
Operationen
Wir definieren zunächst die logischen Operationen auf der Menge der Konstanten.
Dann erweitern wir die Definition auf Variablen und zusammengesetzte Aussagen.
(1)
Tabelle 2.5
Wahrheitstabellen der
logischen Operationen
Konstanten
lB = {0, 1} wird zu einer algebraischen Struktur lB, ¬, ∧, ∨, , ⇔, <≠>, indem
wir die einstellige Operation ¬ und die zweistelligen Operationen ∧, ∨, , ⇔,
<≠> durch Verknüpfungstabellen, hier Wahrheitstabellen genannt, definieren.
A
0
1
¬A
1
0
A
B
A
J
9.8.04
B
∧
0
1
0
1
1
1
0
1
0
1
0
0
0
1
0
1
A
A
B
⇔
0
1
0
1
0
1
0
1
B
∨
0
1
0
0
1
1
1
1
B
<≠>
A
0
1
0
0
1
1
1
0
Mit den Wahrheitstabellen ist das Wesentliche geleistet - sie sind das kleine Einmaleins
der Aussagenlogik, der Rest ist Formalisieren der folgenden Idee.
© Karlheinz Hug, Hochschule Reutlingen
2-8
2 Logik
(2) und (3) Variablen und zusammengesetzte Aussagen
Die Wahrheitstabellen zeigen nicht nur, wie die Operationen auf die Konstanten
0 und 1, sondern auch auf Variablen A = α, B = β ∈ Va und andere Aussagen
A, B ∈ A anzuwenden sind. Wegen Va ⊆ A ist jede Variable auch eine Aussage,
sodass es genügt, beliebige Aussagen zu betrachten. Jede Aussage kann einen
der Werte 0, 1 annehmen. Bei einer Aussage gibt es 2 mögliche Werte, bei zwei
Aussagen 2 ∗ 2 = 4 mögliche Wertepaare (so genannte Belegungen oder Interpretationen). Die Anwendung einer Operation auf Operanden ist durch ihre
Anwendung auf alle möglichen Belegungen der Operanden definiert. Das Ergebnis einer Operation ist wieder einer der Werte 0, 1. Abstrahieren wir von den
Werten, so erscheinen Aussagen als Gebilde mit möglichen, unbestimmten Werten in lB.
Die eilige, an Formalismen weniger interessierte LeserIn überspringt die folgenden Ausführungen bis 2.1.5.
2.1.4.2
Bindung
Auf S. 1-24 und S. 4 haben wir Bindungen von Variablennamen an Wertebereiche
erklärt. Hier definieren wir die Bindung von Aussagen:
bind(A) := lB für jedes A ∈ A.
Unter der Bindung tauscht eine Aussage ihre Rollen. Während A ∈ A ein Wort aus Zeichen von Al ist, ist A ∈ lB ein Gebilde, das einen Wert aus lB annimmt. Für die Konstanten 0 und 1 ist das trivial, für Variablen a, b, c,... stimmt es mit dem auf S. 4 Gesagten überein.
Typbindung
In (typisierten) Programmiersprachen spricht man von der Typbindung von Ausdrükken: Jeder Ausdruck ist an einen Typ gebunden, der bestimmt ist durch die Typen der
Variablen und die Operationen, die in dem Ausdruck vorkommen. Aussagenlogische
Ausdrücke bilden einen Spezialfall, in dem nur der Typ lB vorkommt. Den allgemeinen
Fall erhalten wir, wenn wir die logischen Variablen durch mathematische Aussagen
ersetzen, d.h. durch Ausdrücke, in denen z.B. Zahlenvariablen vorkommen.
2.1.4.3
Belegungen und Interpretationen
Definition 2.4
Belegung
Eine Belegung zu einer Variablenmenge V ⊆ Va ist eine Abbildung
beleg : V → lB,
die jedem Variablennamen α ∈ V einen Wahrheitswert beleg(α) ∈ lB zuordnet.
Nun interessieren nicht die Werte beliebiger Variablen, sondern nur derjenigen, die in
der gerade vorliegenden Aussage vorkommen. Die Abbildung
Variablen einer
Aussage
A → P(Va), A → VA,
|
die jeder Aussage A ∈ A die Menge VA der in A vorkommenden Variablen zuordnet,
ist induktiv so definiert:
(1)
Konstanten
V0 := V1 := ∅.
(2)
Variablen
Für α ∈ Va ist Vα := {α}.
(3)
zusammengesetzte Aussagen
Für A, B ∈ A und l ∈ {∧, ∨, , ⇔, <≠>} ist
und
VAlB := VA ∪ VB.
V¬A := VA
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2-9
Wegen der induktiven Konstruktion von A ist VA stets endlich.
Sei B ⊆ A eine Teilmenge von Aussagen. Die Menge der in allen A ∈ B vorkommenden Variablen ist
VB :=
∪ VA .
A∈B
Eine Belegung
belegB : VB → lB
heißt passend zu B. Für B = {A} heißt belegA := beleg B passend zu A.
Für A ∈ A ordnet beleg A jeder in A vorkommenden Variablen einen Wahrheitswert zu.
Untersuchen wir belegA:
(1)
Konstanten
Ist A = 0 oder A = 1, so ist VA = ∅ und es gibt nur die leere Belegung
beleg0 := beleg1 := ∅.
(2)
Variablen
Ist A = α ∈ Va, so gibt es zwei Belegungen
und
belegα1(α) := 1.
belegα0(α) := 0
(3)
zusammengesetzte Aussagen
Mit n in A vorkommenden Variablen gibt es 2n verschiedene Belegungen zu A.
Für B ⊆ A sei
AB := {B ∈ A | VB ⊆ VB}
die Menge aller Aussagen, die mit den Variablen, die in wenigstens einem A ∈
kommen, konstruierbar sind.
Definition 2.5
Interpretation
B vor-
Ist beleg = beleg B eine zu B ⊆ A passende Belegung, so ist die Interpretation
(Bewertungsfunktion) I = Ibeleg von B zu beleg die Abbildung
I : AB → lB,
die induktiv so definiert ist:
(1)
Konstanten
I|lB := id ,
lB
(2)
d.h. I(0) := 0 und I(1) := 1.
Variablen
I|VB := beleg,
d.h. für α ∈ VB ist I(α) := beleg(α).
(3)
zusammengesetzte Aussagen
Für A, B ∈ AB und l ∈ {∧, ∨,
I(¬A) := ¬I(A)
Klammern
9.8.04
und
, ⇔, <≠>} ist
I((A l B)) := (I(A) l I(B)).
Untersuchen wir die Rolle der Klammern in dieser Definition: Wie aus der Arithmetik
gewohnt steuern die Klammern die Reihenfolge der Interpretation. Die Aussagen werden von innen nach außen interpretiert. Außerdem gilt die Vorrangregel einstellige
Operationen vor zweistelligen, d.h. z.B. in (¬A ∧ B) wird erst A interpretiert, dann
negiert und B interpretiert, dann ¬A und B konjunktiv verknüpft.
© Karlheinz Hug, Hochschule Reutlingen
2 - 10
2 Logik
Eine Interpretation ordnet also Aussagen Wahrheitswerte zu. Eine Konstante wird
durch sich selbst interpretiert, eine Variable durch ihre Belegung. Eine zusammengesetzte Aussage wird interpretiert, indem alle in ihr vorkommenden Variablen belegt
werden und der Ausdruck der Klammerung folgend von innen nach außen mittels der
Wahrheitstabellen berechnet wird.
Auswertung
In Programmiersprachen spricht man von der Auswertung (evaluation) von Ausdrükken: Jeder Ausdruck hat (zur Laufzeit des Programms) einen Wert aus dem Wertebereich seines Typs (der durch die Typbindung bestimmt ist). Dieser Wert wird durch die
Ausführung des Programms ermittelt, indem die vorkommenden Operationen auf die
Werte der Operanden (Konstanten, Variablen, Teilausdrücke) angewendet werden.
2.1.5
Erläuterungen
Das Interpretieren von Aussagen lässt sich so auffassen: Die Interpretation atomarer
Aussagen in A ist klar. Für schon in A enthaltene Aussagen A, B sei die Interpretation
schon festgelegt, d.h. I(A) und I(B) sind definiert. Nun ist die Interpretation der neuen,
mit den Operationen und Klammern gebildeten Aussagen von A zu definieren, also
I(¬A), I((A ∧ B)), I((A ∨ B)), I((A
B)), I((A ⇔ B)), I((A <≠> B)).
Alle Interpretationen stehen in der zusammengefassten Wahrheitstabelle. In der Kopfzeile stehen die Argumente eines I, in den Zeilen darunter die möglichen Belegungsund Interpretationswerte. Links stehen die Operanden (Eingangsgrößen) A, B mit ihren
Belegungen, rechts davon die zusammengesetzten Aussagen (Ausgangsgrößen) mit
ihren Interpretationen.
Tabelle 2.6
Zusammengefasste
Wahrheitstabelle
B)
(A ⇔ B)
(A <≠> B)
1
1
0
1
1
0
1
0
1
0
0
1
1
1
1
1
0
A
¬A
A
B
(A ∧ B)
(A ∨ B)
0
1
0
0
0
0
1
0
0
1
0
1
0
1
1
(A
Die Definitionen der logischen Operationen sind so wichtig, dass wir sie auch verbal
beschreiben:
l
l
l
l
l
l
Beispiel 2.1
Interpretationen einer
Aussage mit der
Wahrheitstabellenmethode
Negation: ¬A (nicht A) ist genau dann wahr, wenn A falsch ist.
Konjunktion: (A ∧ B) (A und B) ist genau dann wahr, wenn sowohl A als auch B
wahr sind.
Disjunktion: (A ∨ B) (A oder B) ist genau dann falsch, wenn sowohl A als auch B
falsch sind.
Implikation: (A
B) (aus A folgt B, wenn A dann B, A impliziert B) ist genau dann
falsch, wenn A wahr und B falsch ist.
Äquivalenz: (A ⇔ B) (A genau dann, wenn B; A äquivalent B) ist genau dann wahr,
wenn A und B denselben Wahrheitswert haben.
Antivalenz: (A <≠> B) (entweder A oder B, A antivalent B) ist genau dann wahr,
wenn A und B verschiedene Wahrheitswerte haben.
Wir zeigen eine allgemeine Vorgehensweise anhand eines Beispiels. Um die Aussage
(((a ∧ b)
(¬b ∨ c)) ⇔ 0)
zu interpretieren,
(1)
(2)
zerlegen wir sie in ihre Variablen und Operanden,
stellen eine Tabelle auf, in der jeder Variablen und jedem Operanden sowie der
Aussage selbst eine Spalte entspricht,
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 11
(3)
belegen darin die Variablen mit allen möglichen Wertekombinationen, wobei
jeder Belegung eine Zeile entspricht und wir systematisch vorgehen, um keine
Kombination zu vergessen (z.B. von rechts nach links erst 0, dann 1 ergibt die
Belegungen in lexikografischer Ordnung oder als Dualzahlen aufsteigend geordnet), und
berechnen mittels Tabelle 2.5 oder Tabelle 2.6 sukzessive die Interpretationen
der Operanden und tragen sie ein -
(4)
fertig ist die Wahrheitstabelle, in deren letzter Spalte die Interpretationswerte der Aussage stehen. Kommen in der Aussage n Variablen vor, so hat die Wahrheitstabelle 2n
Zeilen (unter der Kopfzeile).
Tabelle 2.7 Wahrheitstabelle zu einer Aussage
a b c ¬b
(a ∧ b)
(¬b ∨ c)
((a ∧ b)
(¬b ∨ c))
(((a ∧ b)
(¬b ∨ c)) ⇔ 0)
0 0 0
1
0
1
1
0
0 0 1
1
0
1
1
0
0 1 0
0
0
0
1
0
0 1 1
0
0
1
1
0
1 0 0
1
0
1
1
0
1 0 1
1
0
1
1
0
1 1 0
0
1
0
0
1
1 1 1
0
1
1
1
0
Für umfangreiche Aussagen empfiehlt sich eine platzsparende Tabellenvariante, bei der
man auf die Zerlegung der Aussage verzichtet und die Werte direkt unter die Operanden und Operationen der Aussage schreibt.
Tabelle 2.8
Kompakte
Wahrheitstabelle zu
einer Aussage
(((a
∧
b)
(¬b
∨
c))
⇔
0)
0
0
0
1
1
1
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
1
1
0
0
1
0
0
1
1
1
0
0
0
1
0
0
1
1
1
1
0
0
1
1
1
0
0
0
0
1
0
1
1
1
1
0
1
1
0
0
1
2
1
4
2
3
1
5
1
Die Fußzeile nummeriert die Schritte, in denen die Spalten nacheinander auszufüllen
sind. Die Spalten mit den Eingangsvariablen erhalten die Schrittnummer 1; sie sind
zuerst so zu füllen, dass die Zeilen alle Belegungen erfassen. Bei Spalten mit gleicher
Nummer ist die Reihenfolge des Ausfüllens beliebig. Die größte Schrittnummer kommt
nur einmal vor, und zwar in der Spalte der zuletzt auszuführenden Operation. Diese
Spalte enthält die Werte der Ausgangsgröße, der Aussage.
p
Verallgemeinern wir das Beispiel: Ist A ∈ A eine Aussage, in der die Variablen a1,.., an
vorkommen, so hat ihre Wahrheitstabelle folgende Gestalt.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 12
2 Logik
Tabelle 2.9
Allgemeine
Wahrheitstabelle
a1
a2
...
an−1
an
A
beleg1
0
0
...
0
0
I1(A)
beleg2
0
0
...
0
1
...
...
...
...
...
...
1
1
...
1
0
1
1
...
1
1
beleg
n
2 –1
beleg
2
n
Spalten für
Teilausdrücke von
A
I2(A)
...
I
n
2 –1
I
2
(A)
n (A)
Im linken Teil stehen die Belegungen der Variablen, ganz rechts die Interpretationswerte der Aussage. Dazwischen können Spalten für Teilausdrücke stehen.
Wahrheitstabellenmethode
Die Wahrheitstabellenmethode lässt sich zu einem Algorithmus verfeinern, der Interpretationswerte von Aussagen berechnet. Da die Funktion n → 2n aber sehr schnell exponentiell - wächst, wächst der Rechenaufwand mit n so extrem, dass er Höchstleistungsrechner überfordert.
|
Wahrheitsfeldermethode
Eine grafische Methode zum Bestimmen der Interpretationswerte von Aussagen ist die
Wahrheitsfeldermethode. Jeder Aussage A lässt sich nämlich die Menge
MA := {x | x ist eine Situation, in der A zutrifft}
zuordnen und durch ein Mengendiagramm darstellen, das Wahrheitsfeld heißt. Wir
ordnen den Variablen a1,.., an Wahrheitsfelder M a ,.., M a zu, die sich nach allen
1
n
Möglichkeiten schneiden. Für n = 3 gibt es 8, für n = 4 16 Möglichkeiten; daher ist die
Methode nur für n ≤ 3 handhabbar. Die Mengen MA sind induktiv über den Aufbau von
Aussagen definiert:
M0
:= ∅,
M1
:= G (Grundmenge),
M¬A
:= M A,
M(A∧B)
:= M A ∩ MB,
M(A∨B)
:= M A ∪ MB,
M(AÞB) := M A ∪ MB,
M(A⇔B) := (MA ∩ MB) ∪ (MA ∩ MB),
M(A<≠>B) := M A ∆ MB.
Wir markieren sie im Wahrheitsfeld durch einen Punkt l. Hat die Aussage mehr als
drei Variablen oder ist sie komplex, so gibt es zwei Wege:
(1)
(2)
Falls möglich, zerlegen wir die Aussage in Teilausdrücke, die konjunktiv verknüpft die Aussage ergeben. Jedem Teilausdruck sowie der Aussage ordnen wir
ein Wahrheitsfeld zu. Wir markieren die Wahrheitsfelder der Teilausdrücke. Im
Wahrheitsfeld der Aussage markieren wir diejenigen Mengen, die in allen Wahrheitsfeldern der Teilausdrücke markiert sind.
Wir ordnen der Aussage einen Mengenausdruck zu, den wir nach seiner induktiven Definition und den Regeln der Mengenalgebra vereinfachen, bis Weg (1)
gangbar ist oder die Lösung vorliegt.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
Beispiel 2.2
Interpretationen einer
Aussage mit der
Wahrheitsfeldermethode
2 - 13
Wir zeigen die Wahrheitsfeldermethode an der Aussage
(((a ∧ b)
(¬b ∨ c)) ⇔ 0)
von Beispiel 2.1. Da die Aussage komplex ist, wählen wir Weg (2), ordnen ihr den
Mengenausdruck
M(((a ∧ b) Þ (¬b ∨ c)) ⇔ 0)
zu und formen diesen um:
M(((a ∧ b) Þ (¬b ∨ c)) ⇔ 0) =
(M((a ∧ b) Þ (¬b ∨ c)) ∩ M0) ∪ (M((a ∧ b) Þ (¬b ∨ c)) ∩ M0) =
(M((a ∧ b) Þ (¬b ∨ c)) ∩ ∅) ∪ (M((a ∧ b) Þ (¬b ∨ c)) ∩ ∅) =
∅ ∪ (M((a ∧ b) Þ (¬b ∨ c)) ∩ G) =
M((a ∧ b) Þ (¬b ∨ c)) =
(M(a ∧ b) ∪ M(¬b ∨ c))c =
M(a ∧ b) ∩ M(¬b ∨ c),
bis ein Durchschnitt von Mengen einfacher Teilausdrücke vorliegt. Nun konstruieren
wir die Wahrheitsfelder:
Bild 2.1
Wahrheitsfelder
M(a ∧ b)
M(¬b ∨ c)
l
a
l l
b
c
b
l
lll
l c
M(¬b ∨ c)
M (((a ∧ b) Þ (¬b ∨ c)) ⇔ 0)
a
a
a
l
b
l
l
c
b
c
Dem Wahrheitsfeld der Aussage entnehmen wir, dass das markierte Feld der Menge
M(a ∧ b ∧ ¬c) entspricht, also der Aussage (a ∧ b ∧ ¬c). Der kontrollierende Blick in die
Wahrheits-Tabelle 2.7 zeigt, dass die Aussage (((a ∧ b)
(¬b ∨ c)) ⇔ 0) nur für die
Belegung a = b = 1, c = 0 als wahr interpretiert wird.
p
2.1.5.1
Aussagenlogische und umgangssprachliche Operationen
Extensionalitätsprinzip
In der Aussagenlogik gilt das Prinzip, dass der Wahrheitswert einer zusammengesetzten Aussage durch die Wahrheitswerte ihrer Bestandteile und die Operationen festgelegt ist. Das entspricht der Arithmetik, wo der Wert eines Ausdrucks durch seine
Zusammensetzung aus Operationen und Operanden und deren Werte bestimmt ist unabhängig davon, wo der Ausdruck steht (z.B. links oder rechts in einer Gleichung),
wie man die Operationen interpretiert (z.B. Addition als horizontale oder vertikale Verschiebung), und was die Operanden bedeuten (z.B. €, $ oder km/h). Der Wert von arithmetischen und aussagenlogischen Ausdrücken ist neutral gegenüber Inhalten und
Anwendungen.
Operationen, für die der Wahrheitswert zusammengesetzter Aussagen nur von den
Wahrheitswerten der Teilaussagen abhängt, nennt man extensional. Die aussagenlogischen Operationen sind also extensional definiert. Dagegen werden umgangssprachliche Operationen - vor allem „und“ und „oder“, aber auch „wenn ... dann ...“ - oft nicht
extensional benutzt. Zu welchen Missverständnissen das führen kann, zeigen folgende
Beispiele.
Und
9.8.04
Der König stirbt und es ist Krieg.
Es ist Krieg und der König stirbt.
© Karlheinz Hug, Hochschule Reutlingen
2 - 14
2 Logik
In der Aussagenlogik bedeuten beide Aussagen dasselbe, sie haben denselben Wahrheitswert, da man bei der Konjunktion die Operanden vertauschen darf. In der Alltagslogik könnte man die erste Aussage so verstehen: Der König hat zu seinen Lebzeiten
Frieden bewahrt, doch nach seinem Tod brechen gewaltsame Konflikte auf. Dagegen
könnte man aus der zweiten Aussage herauslesen: Der König hat in einer Schlacht heldenhaft gekämpft und fällt. Die Bedeutung solcher umgangssprachlicher Aussagen
hängt von der Reihenfolge und der Bedeutung der Teilaussagen ab. Das umgangssprachliche Und wird inhaltsbezogen - intensional - benutzt, um einen Ursache-Wirkungs-Zusammenhang zu suggerieren.
Oder
Gold brennt gut oder Reutlingen liegt im Schwabenland.
Diese aussagenlogisch wahre Aussage erscheint im Alltag kaum sinnvoll, da die erste
Teilaussage sicher falsch ist und kein inhaltlicher Bezug zur zweiten Teilaussage
erkennbar ist. Das umgangssprachliche Oder verknüpft oft nur inhaltlich zusammenhängende Aussagen, die zudem sicher nicht falsch sind. Psychologische Aspekte wie
der Grad des Wissens können mitspielen:
Ich weiß nicht, ob ich ins Kino gehe oder im Bett bleibe.
Sagt er
„Ich muss arbeiten oder gehe mit dir aus.“
wohl wissend, dass er nicht arbeiten muss, so schwindelt er sogar, um einer verbindlichen Verabredung auszuweichen. Im Gegensatz dazu sind aussagenlogische Operationen frei von subjektiven Einschätzungen und psychologischen Momenten.
Ich gehe ins Kino oder ich bleibe im Bett.
Hier wird das umgangssprachliche Oder als exklusives Oder für zukünftige Alternativen verwendet: Ich kann ja nicht gleichzeitig ins Kino gehen und im Bett bleiben, beide
Fälle schließen sich physisch gegenseitig aus. Genauso gut könnte ich sagen:
Ich gehe genau dann nicht ins Kino, wenn ich im Bett bleibe.
Dagegen ist das aussagenlogische Oder nicht exklusiv, es schließt stets den Fall, dass
beide Operanden logisch wahr sind, ein:
x ≥ 0 oder x ≤ 0, d.h.
(x ≥ 0 ∨ x ≤ 0)
bedeutet so viel wie
x ist beliebig,
während
nicht x ≥ 0 genau dann, wenn x ≤ 0, d.h.
(¬x ≥ 0 ⇔ x ≤ 0)
so viel wie
x≠0
bedeutet, also etwas Anderes!
Exklusives Oder
Für das ausschließende Entweder-Oder hat die Aussagenlogik als eigene Operation die
Antivalenz oder das exklusive Oder. Die umgangssprachliche Aussage
entweder x ≥ 0 oder x < 0
schreibt sich aussagenlogisch als
(x ≥ 0 <≠> x < 0);
sie bedeutet in beiden Logiken, dass x beliebig ist.
Und oder Oder?
Weitere Missverständnisse ergeben sich daraus, dass das umgangssprachliche Und
auch im Sinne der Addition (1 und 1 ist 2), im Sinne des logischen Oder (Rauchen, Lärmen und Schwarzfahren verboten), oder im Sinne der Vereinigung benutzt wird. Wir
sagen z.B.
StudentInnen sind Studenten und Studentinnen,
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 15
da wir bei
StudentInnen sind Studenten oder Studentinnen
das exklusive Oder unterstellen; ohne jedoch
Jede StudentIn ist ein Student und eine Studentin
zu meinen, wohl aber
Jede StudentIn ist ein Student oder eine Studentin.
Drücken wir die Aussagen als Mengen aus:
Studenten ⊆ StudentInnen
Studentinnen ⊆ StudentInnen
und
oder
StudentInnen
= Studenten ∪ Studentinnen
= {x | x ∈ Studenten oder x ∈ Studentinnen},
so erkennen wir darin das logische Oder.
Um das umgangssprachliche Und vom logischen Und und vom exklusiven Oder zu
unterscheiden, verwendet man gelegentlich „und/oder“:
Wenn... dann...
Sie sollten in Mathe, Deutsch und/oder Englisch eine gute Note haben.
Das umgangssprachliche „Wenn... dann...“ meint oft eine zeitliche Reihenfolge:
Wenn sie kommt, dann gehen wir ins Kino.
Dagegen kennen aussagenlogische Ausdrücke keine Zeit, kein vorher oder nachher; sie
beschreiben zeitlose Situationen, in denen zeitlose Beziehungen gelten. Dies gilt insbesondere für die Implikation, die mancher StudentIn Kopfzerbrechen bereitet.
Implikation
Wenn heute Montag ist, dann ist morgen Sonntag.
In der Alltagslogik mögen wir diese Aussage mit falsch bewerten, wenn wir nur an die
Reihenfolge der Wochentage denken, das „heute“ dabei vergessen und herauslesen:
Auf Montag folgt Sonntag.
Diese Aussage ist sicher falsch - aber nicht gleich der vorigen Aussage! Zur aussagenlogischen Analyse der Aussage digitalisieren wir die konstanten Wochentage:
{Montag, Dienstag,.., Sonntag} → {1, 2,.., 7},
wodurch wir die Reihenfolge der Wochentage festlegen, binden die Variablen heute
und morgen an die Wochentage:
heute, morgen ∈ {1, 2,.., 7},
definieren
morgen := heute modulo 7 + 1
(7 modulo 7 = 0, also folgt auf Sonntag Montag), ersetzen „wenn... dann...“ durch den
Implikationspfeil und erhalten
heute = 1
heute = 1
heute = 1
9.8.04
morgen = 7
heute + 1 = 7
heute = 6.
d.h.
d.h.
© Karlheinz Hug, Hochschule Reutlingen
2 - 16
Tabelle 2.10
Wahrheitstabelle Beispiel
2 Logik
heute heute = 1 heute = 6 heute = 1
heute = 6
1
1
0
0
2
0
0
1
3
0
0
1
4
0
0
1
5
0
0
1
6
0
1
1
7
0
0
1
Die Wahrheitstabelle zeigt, dass die Aussage meistens wahr ist, nur wenn heute Montag ist, ist sie falsch! Die Implikation erlaubt, dass aus Falschem Falsches folgt - nur
aus Wahrem darf nicht Falsches folgen. Betrachten wir die wundersame Brotvermehrung: Wenn 0 = 1 ist, mache ich aus einem Brot tausend Brote:
0=1
1 = 1000.
Beweis. Aus 0 = 1 folgt 0 + 1 = 1 + 1, also 1 = 2 = 2 + 0 = 2 + 1 = 3 = 3 + 0 = 3 + 1 = ...
p
= 1000 = ... = 1000000 = ..., d.h. alle Zahlen sind gleich, es gibt nur eine Zahl.
Voraussetzung und
Schlussfolgerung
Bei der Implikation A
B heißt A Voraussetzung (Prämisse), B Schlussfolgerung
(Konklusion). Aus einer falschen Voraussetzung lässt sich Beliebiges schlussfolgern.
Hinreichend und
notwendig
In A
B heißt A auch eine hinreichende Bedingung oder kurz hinreichend für B und
B eine notwendige Bedingung oder kurz notwendig für A. Eine durch 4 teilbare Zahl
ist notwendigerweise auch durch 2 teilbar:
Für beliebige n ∈ lN gilt:
2 teilt n.
4 teilt n
Die Teilbarkeit durch 2 ist aber nicht hinreichend für die Teilbarkeit durch 4, sie reicht
nicht aus:
Nicht für beliebige n ∈ lN, sondern nur für manche gilt:
4 teilt n.
2 teilt n
L
Fehlende Klammerung
B nicht auch die umgekehrte (konverse) Aussage B
Dass mit A
unterschlägt mancher Demagoge:
A gelten muss,
Wer gesund ist, ist auch arbeitsfähig. Deshalb sollen zwecks Verbesserung der
Volksgesundheit alle arbeiten.
Mehrere Verknüpfungen führen besonders leicht zu Mehrdeutigkeiten:
Es ist nicht groß und stark.
Bedeutet das
(Es ist nicht groß) und (es ist stark),
oder
Es gilt nicht: (es ist groß und es ist stark)?
Also
Es ist nicht groß, aber stark,
oder
Es ist nicht sowohl groß als auch stark,
oder vielleicht sogar
Es ist weder groß noch stark?
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 17
In exakten Wissenschaften wie Mathematik und Informatik sind solche Mehrdeutigkeiten fehl am Platz. Hier hilft die Aussagenlogik mit ihren eindeutigen logischen Operationen.
2.1.5.2
Klammerung und Vorrangregeln
Nach der in 2.1.3 gegebenen Syntaxdefinition sind Aussagen fast vollständig geklammert. Das vereinfacht die Syntaxdefinition, erschwert aber das Lesen von Aussagen,
wie Beispiel 2.1 zeigt. Um Aussagen lesbarer zu machen, liberalisieren wir im Folgenden die formal definierte Schreibweise von Aussagen etwas hinsichtlich der Klammern.
l
Vorrangregel
Außenklammern lassen wir weg (wie oben schon geschehen), da sie für uns nicht
wesentlich sind (wohl aber bei maschineller Verarbeitung, da sie Anfang und Ende
einer zusammengesetzten Aussage eindeutig markieren).
l Wie wir bald sehen sind die Konjunktion und die Disjunktion assoziativ, sodass wir
z.B. für (A ∧ B) ∧ C kurz A ∧ B ∧ C schreiben können.
Um weitere Klammern zu sparen kann man Vorrangregeln für die zweistelligen Operationen vereinbaren (wie Punkt-vor-Strich in der Arithmetik), z.B. die Reihenfolge ¬, ∧,
∨, , ⇔, <≠> von starker zu schwacher Bindung. Andererseits - wer kann sich sechs
Prioritätsstufen merken? Falls es sie gibt, sollte man im Zweifel lieber zu viel als zu
wenig klammern. Wir beschränken uns deshalb auf die drei Stufen
¬,
Priorität
{∧, ∨,
},
{⇔, <≠>}.
Damit hat ¬ die höchste Priorität (Bindungsstärke) und wird zuerst angewendet. ∧, ∨,
haben gleiche Priorität und wir müssen klammern, wenn sie gemischt vorkommen.
⇔, <≠> haben die niedrigste Priorität und werden zuletzt angewendet. Falls - was meist
zutrifft - nur eine Operation davon einmal vorkommt, brauchen wir ihre Operanden
nicht zu klammern. Beispielsweise schreiben wir für die Aussage von Beispiel 2.1 statt
(((a ∧ b)
(¬b ∨ c)) ⇔ 0)
kurz
(a ∧ b)
(¬b ∨ c) ⇔ 0.
Diese Regeln sind pragmatisch und mit vielen Programmiersprachen verträglich,
obwohl diese sehr verschiedene Vorrangregeln von vier bis über 15 Stufen kennen. Wir
könnten die Vorrangregeln in die induktive Syntaxdefinition einbauen, doch würden
die Syntaxregeln dadurch komplizierter, was wir hier vermeiden wollen. Mit solchen
Syntaxfragen befassen wir uns ausführlich in Kapitel 7.
2.1.6
Aussagefunktionen
In 2.1.3 haben wir Aussagen A ∈ A syntaktisch als Ausdrücke aus Konstanten, Variablen, Operationen und Klammern eingeführt. Von einem anderen Standpunkt, der den
semantischen Aspekt einschließt, betrachten wir die Operationen als Abbildungen
¬
: lB → lB, a → ¬a,
∧
: lB → lB, (a, b) → a ∧ b,
∨
: lB → lB, (a, b) → a ∨ b,
|
2
|
2
|
: lB2 → lB, (a, b) → a
⇔
: lB2 → lB, (a, b) → a ⇔ b,
|
b,
|
<≠> : lB → lB, (a, b) → a <≠> b,
2
|
also als Operationen auf lB im Sinne der Definition auf S. 1-22 und Definition 1.33 S.
1-31. Mehrfaches Anwenden von Operationen führt zu zusammengesetzten Ausdrükken, z.B.
(a ∧ ¬b)
9.8.04
c.
© Karlheinz Hug, Hochschule Reutlingen
2 - 18
2 Logik
Schreiben wir dafür
A := A(a, b, c) := (a ∧ ¬b)
c,
so erscheint die Aussage A als Aussagefunktion
A : lB3 → lB, (a, b, c) → A(a, b, c) := (a ∧ ¬b)
|
c
mit den Argumenten a, b, c ∈ lB. Dies auf n ∈ lN0 Argumente verallgemeinernd erhalten wir n-stellige Aussagefunktionen oder boolesche Funktionen
A : lBn → lB, (a1,.., an) → A(a1,.., an).
Aussagefunktion
|
A = A(a1,.., an) beschreibt eine Aussage als Aussagefunktion der an lB gebundenen
Variablen a1,.., an. {a1,.., an} enthält alle in A = A(a1,.., an) vorkommenden Variablen,
doch müssen nicht alle a1,.., an in A vorkommen. Erlaubt ist z.B.
Belegung
Interpretation
(¬a ∨ e).
A(a, b, c, d, e) := (a ∧ c)
Setzt man für a1,.., an Werte aus lB = {0, 1} ein (d.h. belegt man die Variablen), so
erhält man den Wert A(beleg(a1),.., beleg(an)) von A für die Argumente beleg(a1),..,
beleg(an) (d.h. eine Interpretation I(A) von A). Mit obigem Beispiel ist etwa
A(1, 1, 0, 1, 0) = (1 ∧ 0)
(¬1 ∨ 0) = 0 (0 ∨ 0) = 0 0 = 1.
Unter einer Belegung der Variablen a1,.., an ∈
lB
verstehen wir also einen Wert
(x1,.., xn) ∈ lBn und unter der Interpretation der n-stelligen Aussagefunktion
A = A(a1,.., an) zur Belegung (x1,.., xn) den Funktionswert A(x1,.., xn). Damit sind die
Begriffe Belegung und Interpretation konsistent zu ihrer Bedeutung bei Aussagen
A ∈ A definiert.
Jede Aussage A ∈ A lässt sich als n-stellige Aussagefunktion auffassen. Es bezeichne
n
AFn := B ( B ) mit n ∈
lN
0
die Menge der n-stelligen Aussagefunktionen,
AF := ∪ AF n
n ∈ N0
=
∪
n
B
(B )
n ∈ N0
die Menge aller Aussagefunktionen. Die Relation
ρ := {(A, F) ∈ A × AF | A lässt sich als F auffassen}
ist in keiner Richtung eindeutig, da es
l
l
l
zu einer Aussage A ∈ A mit m Variablen beliebig viele „passende“ Aussagefunktionen F ∈ AF mit n ≥ m Variablen gibt (bei denen es auf n − m zusätzliche Variablen
„nicht ankommt“);
zu einer Aussagefunktion F ∈ AF beliebig viele „passende“, nämlich „logisch äquivalente“ Aussagen gibt, wie wir in 2.1.8 und 2.1.11 sehen;
bei den Aussagefunktionen F ∈ AF nicht auf die Namen der Variablen ankommt,
z.B. F(a, b, c) und F(x, y, z) nicht unterscheidbar sind.
Der Vorbereich von AF zu ρ ist - wie wir gesehen haben - gleich A:
ρAF := {A ∈ A | es gibt ein F ∈ AF mit A ρ F} = A.
Der Nachbereich von A zu ρ ist zunächst eine Teilmenge von AF:
Aρ := {F ∈ AF | es gibt ein A ∈ A mit A ρ F} ⊆ AF.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 19
Dass auch die umgekehrte Inklusion und damit Gleichheit gilt, also beide Auffassungen von Aussagen „im Wesentlichen“ übereinstimmen, zeigt sich in Korollar 2.40.
Schaltfunktion
Tabelle 2.11
Wahrheitstabelle einer
dreistelligen
Aussagefunktion
Spezifikation und
Implementation
Bild 2.2
Beziehungen zwischen
Aussagefunktionen,
Wahrheitstabellen und
Aussagen
Aussagefunktionen sind diskrete Funktionen, d.h. sie haben einen endlichen Definitionsbereich (mit 2n Elementen) und einen endlichen Wertebereich (mit 2 Elementen).
Daher lässt sich jede Aussagefunktion durch eine Wertetabelle, d.h. Wahrheitstabelle
darstellen oder definieren (→ Tabelle 1.5 S. 1-21) und als digitales Schaltnetz realisieren (→ Bild 1.11 S. 1-25, Bild 1.18 S. 1-34). In der Digitaltechnik heißen Aussagefunktionen daher auch Schaltfunktionen.
a
b
c
A = A(a, b, c)
0
0
0
1
0
0
1
0
0
1
0
0
0
1
1
1
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
0
Die Darstellung einer Aussagefunktion durch eine Wahrheitstabelle liegt eine Abstraktionsebene höher als die Darstellung durch einen aussagenlogischen Ausdruck, da die
Wahrheitstabelle nur festlegt, was die Funktion berechnet, während der Ausdruck auch
festlegt, wie das Was zu berechnen ist. Die Wahrheitstabelle entspricht einer Spezifikation oder einer Black-Box, die das Ein-/Ausgabe-Verhalten bestimmt. Der Ausdruck
entspricht einer Implementation oder einem digitalen Schaltnetz, das sich in der BlackBox verbirgt.
Aussagefunktion
definiert
Wahrheitstabelle
Spezifikation
spezifiziert/interpretiert
implementiert
Aussage
Implementation
Prinzip der
funktionalen
Abstraktion
Man kann Aussagefunktionen abstrakt betrachten, ohne über konkrete Details von Ausdrücken oder Schaltnetzen nachdenken zu müssen. Durch funktionale Abstraktion
lösen sich wesentliche semantische Ideen von syntaktischen oder technischen Formen.
2.1.7
Eigenschaften von Aussagen
Wir definieren jetzt Eigenschaften von Aussagen. Indem wir Aussagen über Aussagen
formulieren, betreten wir eine Metaebene. Da gilt es aufzupassen, um die Ebene der
Aussagen nicht mit der Metaebene der Aussagen über Aussagen zu verwechseln.
Die folgenden Eigenschaften lassen sich nicht nur für Aussagen A ∈ A, sondern gleichermaßen
für Aussagefunktionen F ∈ AF formulieren. Der Einfachheit halber verzichten wir darauf.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 20
Definition 2.6
Allgemeingültigkeit
Erfüllbarkeit
2 Logik
Eine Aussage A ∈ A heißt
allgemeingültig oder Tautologie (gültig, tautologisch), wenn sie für jede Interpretation (d.h. im Fall einer nicht konstanten Aussage: für jede Belegung ihrer Variablen)
wahr ist;
erfüllbar, wenn sie für mindestens eine Interpretation wahr ist;
widersprüchlich oder Widerspruch (widerspruchsvoll, unerfüllbar, kontradiktorisch, Kontradiktion), wenn sie für keine Interpretation wahr ist.
Eine Aussage ist genau dann allgemeingültig, wenn in ihrer Spalte in der Wahrheitstabelle nur 1en vorkommen. Eine Aussage ist genau dann erfüllbar, wenn in ihrer Spalte
in der Wahrheitstabelle wenigstens eine 1 vorkommt. Jede allgemeingültige Aussage
ist erfüllbar. Eine Aussage ist genau dann widersprüchlich, wenn in ihrer Spalte in der
Wahrheitstabelle nur 0en vorkommen.
Bild 2.3
Klassifikation von
Aussagen
Aussage
widersprüchlich
erfüllbar
allgemeingültig
Mengendiagramm
erfüllbare
Aussage
widersprüchliche
Aussage
allgemeingültige
Aussage
Klassendiagramm
Jede der drei Eigenschaften lässt sich mittels jeder anderen ausdrücken.
Korollar 2.7
Für Aussagen A ∈ A gilt:
(1)
(2)
(3)
(4)
(5)
(6)
A ist allgemeingültig genau dann, wenn ¬A widersprüchlich ist.
A ist allgemeingültig genau dann, wenn ¬A nicht erfüllbar ist.
A ist erfüllbar genau dann, wenn ¬A nicht allgemeingültig ist.
A ist erfüllbar genau dann, wenn A nicht widersprüchlich ist.
A ist widersprüchlich genau dann, wenn A nicht erfüllbar ist.
A ist widersprüchlich genau dann, wenn ¬A allgemeingültig ist.
Allgemeingültige Aussagen heißen auch Sätze. Mathematische Sätze sind allgemeingültig. Die Erfüllbarkeit von Aussagen findet ein Analogon in der Lösbarkeit arithmetischer Gleichungen. Beispielsweise ist die Gleichung 2x + 3 = 0 lösbar, da sie für die
Lösung x = −3/2 wahr ist. Unlösbare Gleichungen entsprechen widersprüchlichen Aussagen. Freilich sind diese nicht allgemein interessant.
Ersetzungsregel
Durch Anwenden von Ersetzungsregeln lassen sich Aussagen umformen, ohne dass sie
ihre Eigenschaften verlieren. Aus einer allgemeingültigen Aussage A erhält man eine
weitere allgemeingültige Aussage As, indem man jedes Vorkommen der Variablen a in
A durch eine beliebige Aussage B ersetzt. Um diese und weitere wichtige Ersetzungsregeln zu formalisieren, schreiben wir Aussagen als Aussagefunktionen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
Satz 2.8
Substitution einer
Variablen in einer
Tautologie durch einen
Ausdruck
2 - 21
Ist
A = A(a1,.., an) mit n ∈ lN
eine allgemeingültige, B eine beliebige Aussage, und i ∈ {1,.., n}, so ist
As = A(a1,.., ai−1, B, ai+1,.., an)
eine allgemeingültige Aussage.
Beispiel
Definition 2.9
Logische Äquivalenz
c) ∨ ¬(b c) . Nach Satz
Mit A = a ∨ ¬a, B = b
c ergibt sich As = B ∨ ¬B = (b
2.14 (1) ist A allgemeingültig, also nach Satz 2.8 auch As.
Zwei Aussagen A, B ∈ A heißen logisch (semantisch) äquivalent, wenn die Äquivalenz A ⇔ B allgemeingültig ist:
A≡B
:⇔
A ⇔ B ist allgemeingültig.
„≡“ ist ein Symbol der Metaebene. A ≡ B gilt genau dann, wenn A ⇔ B für jede Interpretation wahr ist, also genau dann, wenn A und B für jede Interpretation denselben
Wert haben. Mit anderen Worten: A und B sind genau dann logisch äquivalent, wenn
ihre Spalten in der Wahrheitstabelle übereinstimmen, sie also dieselbe Aussagefunktion
definieren. Dagegen können A und B in A ⇔ B auch verschiedene Werte haben, d.h.
A ⇔ B kann falsch sein. Wenn in mathematischen Sätzen trotzdem oft „⇔“ anstelle
von „≡“ steht, dann ist damit gemeint, dass diese Äquivalenz allgemeingültig ist. So
schreiben wir z.B. (→ Korollar 1.3 S. 1-2):
Definierende
Äquivalenz
Für beliebige Mengen M, N gilt: M = N ⇔ N = M.
Das Symbol „:⇔“ liest sich „gilt definitionsgemäß genau dann wenn“, es bedeutet definierende Äquivalenz: In
A :⇔ B
definiert die rechte, bekannte Seite B die linke, neue Seite A. „:⇔“ ist auch ein Symbol
der Metaebene, und da hier A, B stets beide wahr oder beide falsch sind, könnte
(sollte?) man im Einklang mit Definition 2.9
A :≡ B
schreiben.
Korollar 2.10
Für Aussagen A, B ∈ A gilt:
(1)
(2)
(3)
A ist allgemeingültig genau dann, wenn A ≡ 1.
A ist widersprüchlich genau dann, wenn A ≡ 0.
A ≡ B genau dann, wenn ¬A ≡ ¬B.
Die zweite Ersetzungsregel dient dazu, aus logisch äquivalenten Aussagen weitere
logisch äquivalente Aussagen zu gewinnen.
Satz 2.11
Substitution einer
Variablen in
äquivalenten Aussagen
durch einen Ausdruck
Beispiel
9.8.04
Sind A = A(a1,.., an) und B = B(a1,.., an) mit n ∈ lN logisch äquivalente Aussagen, C
eine beliebige Aussage, und i ∈ {1,.., n}, so sind A(a1,.., ai−1, C, ai+1,.., an) und
B(a1,.., ai−1, C, ai+1,.., an) logisch äquivalent, d.h.
aus A ≡ B folgt A(a1,.., ai−1, C, ai+1,.., an) ≡ B(a1,.., ai−1, C, ai+1,.., an).
Aus A = a ∧ b ≡ b ∧ a = B (→ Satz 2.17 (5)) und C = c ∨ d folgt
a ∧ (c ∨ d) ≡ (c ∨ d) ∧ a.
© Karlheinz Hug, Hochschule Reutlingen
2 - 22
2 Logik
Die dritte Ersetzungsregel ermöglicht es, aus einer Aussage durch Ersetzen von Teilausdrücken durch äquivalente Ausdrücke äquivalente Aussagen zu erhalten. Dabei
bedeute A = A(.., B,..), dass B ein in A (möglicherweise mehrfach) vorkommender Teilausdruck ist und A(.., B → C,..) die Aussage, die aus A durch Ersetzen von beliebig vielen Vorkommen von B durch C entsteht.
|
Satz 2.12
Substitution eines
Teilausdrucks durch
einen äquivalenten
Ausdruck
Sind A, B, C Aussagen, B ein Teilausdruck von A, B logisch äquivalent zu C, und As
die Aussage, die aus A durch Ersetzen von beliebig vielen Vorkommen von B durch C
entsteht, so ist A logisch äquivalent zu As, d.h.
aus B ≡ C folgt A(.., B,..) ≡ A(.., B → C,..).
|
Beispiel
Aus A = (a ∧ (b ∨ c))
((b ∨ c) ∧ d) und B = b ∨ c ≡ c ∨ b = C (→ Satz 2.17 (5)) folgt
A ≡ (a ∧ (c ∨ b))
((c ∨ b) ∧ d).
Die drei Ersetzungsregeln sowie die in Korollar 2.22 (1), (2), (3) gezeigte Reflexivität,
Symmetrie und Transitivität der logischen Äquivalenz sind beim Beweisen der folgenden Rechenregeln nützlich.
2.1.8
Aussagenlogische Rechenregeln
Die Algebra der Aussagenlogik befasst sich mit Rechenregeln aussagenlogischer Operationen. Die folgenden Rechenregeln sind allgemeingültig und enthalten logisch äquivalente Aussagen. Logische Äquivalenzen A ≡ B sind wichtig, da A nach Satz 2.12
überall, wo es vorkommt, durch B ersetzbar ist.
Die Darstellung vereinfachen wir verglichen mit einem streng formalen Aufbau der Aussagenlogik: Während man dort z.B. zwischen Subjunktion, Implikation, syntaktischer und semantischer Folgerungsbeziehung und Konklusion unterscheidet, fassen wir all dies in der Implikation
zusammen.
Man kann die Regeln auf zwei Arten beweisen:
l
l
Satz 2.13
Negation
Satz 2.14
Negation, Konjunktion
und Disjunktion
direkt durch Aufstellen von Wahrheitstabellen, was immer funktioniert, aber in
Fleißarbeit ausarten kann;
algebraisch durch Anwenden schon bewiesener Regeln, was von recht einfach bis
ziemlich schwierig sein kann.
Für eine beliebige Aussage A gilt:
¬¬A ≡ A.
doppelte Negation, Involution
Für beliebige Aussagen A, B gilt:
(1)
(2)
(3)
A ∨ ¬A.
¬(A ∧ ¬A).
¬(A ∧ B) ≡ ¬A ∨ ¬B.
¬(A ∨ B) ≡ ¬A ∧ ¬B.
ausgeschlossenes Drittes, tertium non datur
ausgeschlossener Widerspruch
Regeln von de Morgan
Exkurs. Der Satz vom ausgeschlossenen Dritten ist wesentlich für die zweiwertige Logik, die
in Mathematik, Informatik, Naturwissenschaft und Technik sehr nützlich ist. Dennoch ist ihr
Anwendungsbereich begrenzt, etwa in Alltag, Psychologie, Politik ist sie unangemessen. Es ist
z.B. unvernünftig, die Menschheit in „Gute“ und „Böse“, „Willige“ und „Unwillige“, „Gottesfürchtige“ und „Schurken“ einzuteilen.
Leitlinie 2.1
Binäre Logik
Verwende die binäre Logik nur in angemessenen Situationen sinnvoll zu humanen
Zwecken!
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 23
Aufgrund der Sätze von de Morgan lässt sich die Konjunktion mittels Negation und
Disjunktion, die Disjunktion mittels Negation und Konjunktion ausdrücken.
Definition 2.15
Duale Aussage
Ist A eine Aussage, in der nur die Operationen ¬, ∧ und ∨ vorkommen, dann entsteht
die zu A strikt duale Aussage A durch Negieren aller Atome und gegenseitiges Austauschen von ∧ und ∨;
die zu A duale Aussage A∗ durch gegenseitiges Austauschen von 0 und 1 und von ∧
und ∨.
A∗ entsteht aus A durch Negieren jeder Variablen, und umgekehrt.
Beispiel
Beispielsweise sind
(A ∧ ¬B) ∨ (C ∧ 0),
(¬A ∨ B) ∧ (¬C ∨ 1)
strikt dual zueinander,
(A ∧ ¬B) ∨ (C ∧ 0),
(A ∨ ¬B) ∧ (C ∨ 1)
sind dual zueinander.
Aus Satz 2.19 (1) bzw. (7), Satz 2.21 (7) bzw. (8) und Satz 2.23 (8) bzw. (9) folgt, dass
es zu jeder Aussage eine logisch äquivalente Aussage gibt, in der nur ¬, ∧ und ∨ vorkommen. Die Voraussetzung von Definition 2.15 und des folgenden Dualitätstheorems
schränkt daher nicht echt ein.
Theorem 2.16
Dualitätstheorem der
Aussagenlogik
Für Aussagen A, B, in denen nur die Operationen ¬, ∧ und ∨ vorkommen, gilt
(2)
A ≡ ¬A.
¬A ≡ A.
A≡B
genau dann, wenn
A ≡ B.
(3)
A≡B
A ∗ ≡ B ∗.
(1)
genau dann, wenn
Beweis. (1) Sei A wie vorausgesetzt. Mit Satz 2.13 und der Symmetrie von ≡ gilt
A 𠪪A. Durch wiederholtes Anwenden der Regeln von de Morgan Satz 2.14 (3) und
der Ersetzungsregel Satz 2.12 wandert ¬ nach innen vor die Atome und ∧ und ∨ tauschen sich aus. (Ein ausführlicher Beweis verfährt induktiv über die Syntaxregeln von
A.) Damit gilt ¬¬A ≡ ¬A. Mit der Transitivität von ≡ folgt die Behauptung.
(2) Seien A, B wie vorausgesetzt mit A ≡ B. Nach Korollar 2.10 (3) gilt ¬A ≡ ¬B. Nach
(1) gilt ¬A ≡ A und ¬B ≡ B. Zweimaliges Ersetzen nach Satz 2.12 liefert A ≡ ¬B und
A ≡ B. Die Umkehrung folgt aus (A) ≡ A, (B) ≡ B.1
(3) Seien A, B wie vorausgesetzt mit A ≡ B. Nach (2) gilt A ≡ B. Negieren jeder Variablen in A und B bedeutet wiederholtes Anwenden von Satz 2.11. Daher gilt A∗ ≡ B∗.
p
Die Umkehrung folgt aus (A∗)∗ ≡ A, (B∗)∗ ≡ B.
(1) bedeutet, dass striktes Dualisieren einer Aussage dasselbe bewirkt wie Negieren.
1
Gemeint ist zweimaliges striktes Dualisieren. Das Textsystem kann nicht doppelt überstreichen.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 24
Beispiel
2 Logik
Wir schreiben den Satz vom ausgeschlossenen Dritten als logische Äquivalenz:
A ∨ ¬A ≡ 1.
Dualisieren ergibt
A ∧ ¬A ≡ 0,
woraus mit Korollar 2.10 (3)
¬(A ∧ ¬A) ≡ 1,
also der Satz vom ausgeschlossenen Widerspruch folgt.
Das Dualitätstheorem reduziert den Aufwand zum Beweisen der folgenden Sätze auf
die Hälfte, da es genügt, von jedem Paar dualer Aussagen nur eine zu beweisen.
Satz 2.17
Konjunktion und
Disjunktion
Für beliebige Aussagen A, B, C gilt:
A ∧ 0 ≡ 0.
A ∨ 0 ≡ A.
A ∧ 1 ≡ A.
A ∨ 1 ≡ 1.
A ∧ A ≡ A.
A ∨ A ≡ A.
(A ∧ B) ∧ C ≡ A ∧ (B ∧ C).
(A ∨ B) ∨ C ≡ A ∨ (B ∨ C).
A ∧ B ≡ B ∧ A.
A ∨ B ≡ B ∨ A.
A ∧ (B ∨ C) ≡ (A ∧ B) ∨ (A ∧ C).
A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C).
A ∧ (A ∨ B) ≡ A.
A ∨ (A ∧ B) ≡ A.
A ≡ (A ∧ B) ∨ (A ∧ ¬B) ≡ (A ∨ B) ∧ (A ∨ ¬B).
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
Operation mit 0,
Widerspruchsregeln
Operation mit 1,
Tautologieregeln
Idempotenz
Assoziativität
Kommutativität
Distributivität
Absorption, Adjunktivität
Aufgrund der Assoziativität können wir weitere Klammern sparen und definieren:
A ∧ B ∧ C :⇔ (A ∧ B) ∧ C.
A ∨ B ∨ C :⇔ (A ∨ B) ∨ C.
Werden n ∈ lN0 Aussagen konjunktiv oder disjunktiv verknüpft, so schreiben wir
n
∧ A ≡ A1 ∧ ... ∧ An
i=1 i
n
∧ Ai ≡
n
∨ A i ≡ A1
für n = 1,
∨ Ai ≡ 0
für n = 0.
i=1
n
i=1
n
i=1
i=1
∧ A i ≡ 1,
bzw.
n
∨ A ≡ A1 ∨ ... ∨ An,
i=1 i
Die leere Konjunktion ist allgemeingültig. Die leere Disjunktion ist widersprüchlich.
Aus der Kommutativität und der linksseitigen Distributivität (6) folgt die rechtsseitige,
also beidseitige Distributivität.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
Satz 2.18
Verallgemeinerte
Rechenregeln
2 - 25
Für m, n ∈ lN0 und Aussagen A1,.., Am, B1,.., Bn gilt:
m
¬( ∧ Ai) ≡
(1)
m
∨ ¬Ai.
i=1
m
i=1
m
i=1
i=1
¬( ∨ Ai) ≡
∧ ¬Ai.
m
n
i=1
m
k=1
n
i=1 k=1
m
n
i=1
k=1
i=1 k=1
( ∧ Ai) ∨ ( ∧ Bk) ≡
(2)
Regeln von de Morgan
( ∨ A i ) ∧ ( ∨ B k) ≡
m
n
∧
∧ (Ai ∨ Bk).
∨
∨ (Ai ∧ Bk).
Distributivität
Aus Regeln mit der Implikation erhält man Schlussregeln, mit denen man von wahren
Aussagen auf andere wahre Aussagen schließen kann. Logische Kalküle bestehen aus
Schlussregeln. Der Aussagenkalkül ist wichtig, da man mit ihm mathematische Sätze
beweisen kann.
Satz 2.19
Implikation
Grundregeln
Für beliebige Aussagen A, B, C gilt:
B ≡ ¬A ∨ B.
A
A.
Entfernen des Falsum
0
Aus Falschem lässt sich Beliebiges folgern (ex falso sequitur quodlibet).
1.
Einführen des Verum
(3) A
Wahres folgt aus Beliebigem (verum sequitur ex quodlibet).
A.
Reflexivität
(4) A
B) ∧ (B
C))
(A
C).
Transitivität, Kettenschluss,
(5) ((A
Syllogismus, modus barbara
B) ∧ (B
A) ≡ A ⇔ B.
Antisymmetrie
(6) (A
B ≡ ¬(A ∧ ¬B).
indirekter Schluss
(7) A
B ≡ ¬B
¬A.
Kontraposition
(8) A
A
¬B ≡ B
¬A.
¬B) ≡ ¬(B
¬A).
(9) A ∧ B ≡ ¬(A
B ≡ ¬B
A ≡ (A
B)
B ≡ (B
A)
A.
(10) A ∨ B ≡ ¬A
(B ∧ C) ≡ (A
B) ∧ (A
C).
linksseitige Distributivität
(11) A
(B ∨ C) ≡ (A
B) ∨ (A
C).
A
A
(B
C) ≡ (A
B)
(A
C).
A
(B ⇔ C) ≡ (A
B) ⇔ (A
C).
(1)
(2)
Beweis. Exemplarisch beweisen wir die Transitivität (5).
((A
B) ∧ (B
C)) (A
C) ≡
¬((¬A ∨ B) ∧ (¬B ∨ C)) ∨ (¬A ∨ C) ≡
¬(¬A ∨ B) ∨ ¬(¬B ∨ C) ∨ ¬A ∨ C ≡
(¬¬A ∧ ¬B) ∨ (¬¬B ∧ ¬C) ∨ ¬A ∨ C ≡
(A ∧ ¬B) ∨ (B ∧ ¬C) ∨ ¬A ∨ C ≡
(A ∧ ¬B) ∨ ¬A ∨ (B ∧ ¬C) ∨ C ≡
((A ∨ ¬A) ∧ (¬B ∨ ¬A)) ∨ ((B ∨ C) ∧ (¬C ∨ C)) ≡
(1 ∧ (¬B ∨ ¬A)) ∨ ((B ∨ C) ∧ 1) ≡
(¬B ∨ ¬A) ∨ (B ∨ C) ≡
B ∨ ¬B ∨ ¬A ∨ C ≡
1 ∨ ¬A ∨ C ≡
1.
(1)
Satz 2.14 (3), Satz 2.17 (4)
Satz 2.14 (3)
Satz 2.13
Satz 2.17 (5)
Satz 2.17 (4), Satz 2.17 (6)
Satz 2.14 (1), Satz 2.17 (5)
Satz 2.17 (2), Satz 2.17 (5)
Satz 2.17 (4), Satz 2.17 (5)
Satz 2.14 (1)
Satz 2.17 (2)
p
Aufgrund von (1) könnte man die Implikation mittels der Negation und der Disjunktion
definieren. Die Antisymmetrie (6) verwendet man oft, um die Äquivalenz von Aussa9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 26
2 Logik
gen zu zeigen - man zeigt, dass beide Implikationen gelten. Aufgrund von (6) könnte
man die Äquivalenz mittels der Implikation und der Konjunktion definieren; aufgrund
von (9) und (10) die Konjunktion und die Disjunktion mittels der Negation und der
Implikation. Zu (11): Die linksseitige Distributivität von
bzgl. <≠> gilt nicht. Die
rechtsseitigen Distributivitäten von
bzgl. ∧, ∨, , ⇔, <≠> gelten nicht.
Satz 2.20
Implikation
Schlussregeln
Für beliebige Aussagen A, B, C gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
B) ∧ (¬A
¬B).
A ≡ (¬A
A ≡ (B
A) ∧ (¬B
A).
Alternativschluss, Dilemma
A.
Entfernen der Konjunktion
(A ∧ B)
(A ∨ B).
Einführen der Disjunktion
A
B))
B.
Entfernen der Implikation, Abtrennung, modus ponens
(A ∧ (A
B) ∧ ¬B)
¬A.
Widerlegung, modus tollens
((A
0.
Entfernen der Negation
(A ∧ ¬A)
0)
¬A.
Einführen der Negation: Die Negation einer Aussage ist
(A
gerechtfertigt, wenn ihre Annahme zu einem Widerspruch führt.
0)
A.
Widerspruchsbeweis, reductio ad absurdum
(¬A
¬A)
¬A.
(A
A)
A.
claviussches Gesetza
(¬A
A
(B
A).
Wahres folgt aus Beliebigem.
(A
B).
Aus Falschem folgt Beliebiges.
¬A
B) ∨ (B
C).
(A
¬(A
B) (B
C).
B) ∨ (B
A).
Mindestens eine von zwei
(A
¬(A
B) (B
A).
Aussagen impliziert die andere.
B)
((A ∧ C)
(B ∧ C)).
Monotonie
(A
(A
B)
((A ∨ C)
(B ∨ C)).
C≡A
(¬B ∨ C) ≡ (A ∧ ¬C)
¬B. Kontraposition
(A ∧ B)
(B ∨ C) ≡ (A ∧ ¬B)
C.
A
(B
C) ≡ (A ∧ B)
C.
Prämissenverbindung, Im-/Exportation
A
(B
C) ≡ B
(A
C).
Prämissenvertauschung
A
(A
B) ≡ A
B.
Prämissenverschmelzung
A
C ≡ (A
C) ∨ (B
C).
Prämissenaufspaltung
(A ∧ B)
(A ∨ B)
C ≡ (A
C) ∧ (B
C).
C) ∧ (B
C))
C.
Fallunterscheidung
((A ∨ B) ∧ (A
((A B) A) A.
(A (A B)) (A B).
(A B) ((B C) (A C)).
(A B) ((B A) (A ⇔ B)).
A ((A B) ((A B) B)).
A ((A B) B).
Wahrheitskriterium von Peirceb
a
Christoph Clavius (1537 - 1612), fand einen dieser Regel entsprechenden Schluss in Euklids
Elementen.
b
Charles Sanders Peirce (sprich „pöhrß“, nicht „pierß“!) (1839 - 1914), amerikanischer Logiker,
Mathematiker, Philosoph.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 27
Logikkalkül
Satz 2.19 und Satz 2.20 enthalten u.a. Regeln für natürliches Schließen. Gebräuchliche
Schlussregeln des Aussagenkalküls sind z.B. Satz 2.19 (5) bis (8), Satz 2.20 (1) bis (5)
und (21). Um Logikkalküle axiomatisch zu fundieren, wählt man die Syntaxregeln der
Aussagen als Axiome, gewisse Schlussregeln formuliert man als Ableitungsregeln. Aus
einer Aussage A eine Aussage B ableiten heißt dann, in A durch endlichmaliges
Anwenden von Ableitungsregeln Teilaussagen so zu ersetzen, dass sich schließlich B
ergibt. Ableiten ist also rein syntaktisches Umformen, ohne Bezug auf die Semantik der
Aussagen, Wahrheitstabellen oder Interpretationen. Daher eignen sich Logikkalküle für
logische Programmierung; logische Programmiersprachen wie Prolog basieren auf
Logikkalkülen, die sie algorithmisch implementieren.
Klassische und
intuitionistische Logik
Die Regeln Satz 2.19 (2), (3), Satz 2.20 (2), (3), (4), (6), (7), (10) und (21) sind so
genannte intuitionistische Schlussregeln. Sie bleiben oft korrekt, wenn man Interpretationen mit mehr als zwei Wahrheitswerten, also eine mehrwertige Logik, zugrunde legt.
Sind nur diese Regeln zugelassen, so spricht man von intuitionistischer Logik. Sind
neben den intuitionistischen Schlussregeln auch Satz 2.13, Satz 2.14 (1) und Satz 2.20
(8) zugelassen, so spricht man von zweiwertiger oder klassischer Logik. Das Wahrheitskriterium von Peirce Satz 2.20 (22) spielt in Axiomatisierungen der Aussagenlogik
eine Rolle. Die Schlussregeln Satz 2.20 (23), (24) und (25) verwendete Frege1 in einem
Axiomensystem der Aussagenlogik.
Satz 2.21
Äquivalenz
Für beliebige Aussagen A, B, C gilt:
A ⇔ 0 ≡ ¬A.
Operation mit 0 und 1
A ⇔ 1 ≡ A.
(2) A ⇔ A.
Reflexivität
(3) A ⇔ B ≡ B ⇔ A.
Symmetrie
(A ⇔ C).
Transitivität
(4) ((A ⇔ B) ∧ (B ⇔ C))
(5) (A ⇔ B) ⇔ C ≡ A ⇔ (B ⇔ C).
Assoziativität
(6) A ⇔ B ≡ ¬A ⇔ ¬B.
B) ∧ (¬A
¬B).
(7) A ⇔ B ≡ (A ∨ ¬B) ∧ (¬A ∨ B) ≡ (A
(8) A ⇔ B ≡ (A ∧ B) ∨ (¬A ∧ ¬B) ≡ (A ∨ B) (A ∧ B).
B⇔A≡B
A ⇔ B ≡ (A ⇔ B) ∧ A ≡ (A ⇔ B) ∧ B.
(9) A ∧ B ≡ A
B⇔B≡B
A ⇔ A.
(10) A ∨ B ≡ A
B ≡ A ∧ B ⇔ A ≡ A ∨ B ⇔ B ≡ (A ⇔ B) ∨ B.
(11) A
(1)
Aufgrund von (11) könnte man die Implikation mittels der Äquivalenz und der Konjunktion oder der Disjunktion definieren.
Korollar 2.22
Für beliebige Aussagen A, B, C gilt:
(1)
(2)
(3)
A ≡ A.
A ≡ B genau dann, wenn B ≡ A.
Aus A ≡ B und B ≡ C folgt A ≡ C.
Beweis folgt aus Satz 2.21 (2), (3), (4).
Reflexivität
Symmetrie
Transitivität
p
1
Gottlob Frege (1848 - 1925), deutscher Mathematiker, Logiker, Philosoph, lieferte das erste
Axiomensystem der formalen Logik.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 28
2 Logik
Satz 2.23
Antivalenz
Für beliebige Aussagen A, B, C gilt:
A <≠> B ≡ ¬(A ⇔ B).
A <≠> 0 ≡ A.
Operation mit 0 und 1
A <≠> 1 ≡ ¬A.
(3) A <≠> ¬A.
(4) ¬(A <≠> A).
Irreflexivität
(5) A <≠> B ≡ B <≠> A.
Symmetrie
(6) (A <≠> B) <≠> C ≡ A <≠> (B <≠> C).
Assoziativität
(7) A <≠> B ≡ ¬A <≠> ¬B.
(8) A <≠> B ≡ (A ∧ ¬B) ∨ (¬A ∧ B) ≡ ¬A ⇔ B ≡ A ⇔ ¬B.
(9) A <≠> B ≡ (A ∨ B) ∧ (¬A ∨ ¬B).
(10) (A <≠> B) <≠> B ≡ A.
(11) (A <≠> B) ∧ C ≡ (A ∧ C) <≠> (B ∧ C).
Distributivität
(1)
(2)
Aussagenlogische Ausdrücke sollen nicht unnötig kompliziert, sondern möglichst
kompakt formuliert sein. Zum Vereinfachen einer Aussage kann man sie mittels obiger
Rechenregeln wiederholt solange äquivalent umformen, bis keine Regel mehr anwendbar ist. Die wichtigsten Regeln seien hier noch einmal zusammengestellt:
Regeln zum
Vereinfachen von
Aussagen
l
Berechnen eines einfach zusammengesetzten Ausdrucks mit wenigstens einem konstanten Operanden mittels Tabelle 2.6 oder nach Satz 2.17 (1), (2), Satz 2.19 (2),
(3), Satz 2.21 (1), Satz 2.23 (2). Dadurch verschwindet die Konstante oder das
Ergebnis ist eine Konstante:
¬0 ≡ 1.
¬1 ≡ 0.
A ∧ 0 ≡ 0.
A ∧ 1 ≡ A.
A ∨ 0 ≡ A.
A ∨ 1 ≡ 1.
0 ≡ ¬A.
A
1 ≡ 1.
A
A ≡ 1.
1
A ≡ A.
0
A ⇔ 0 ≡ ¬A.
A ⇔ 1 ≡ A.
A <≠> 0 ≡ A.
A <≠> 1 ≡ ¬A.
l Entfernen doppelter Negationen nach Satz 2.13.
l Einführen von Konstanten nach Satz 2.14 (1), (2):
A ∨ ¬A ≡ 1.
A ∧ ¬A ≡ 0.
l Anwenden der de morganschen, Idempotenz-, Assoziativ-, Kommutativ-, Distributiv- und Absorptions-Regeln nach Satz 2.14 und Satz 2.17.
Die genannten Rechenregeln lassen sich auf beliebige Aussagefunktionen verallgemeinern. Als Beispiel geben wir eine Verallgemeinerung von Satz 2.17 (8) an, die nach
Shannon1 benannt ist, obwohl schon Boole sie kannte.
Regeln zum
Vereinfachen von
Aussagefunktionen
Satz 2.24
Shannonsche
Erweiterung
Ist A = A(a1,.., an) mit n ∈ lN eine Aussagefunktion und i ∈ {1,.., n}, so gilt:
A(a1,.., an) ≡ (A(a1,.., ai−1, 1, ai+1,.., an) ∧ ai) ∨ (A(a1,.., ai−1, 0, ai+1,.., an) ∧ ¬ai).
Durch Abspalten einer Variablen verringert sich die Anzahl der Variablen der Aussagefunktion, sodass sie leichter zu berechnen ist.
1
Claude Elwood Shannon (1916 - 2001), amerikanischer Mathematiker, begründete die Informationstheorie.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2.1.9
2 - 29
Aussagen in Programmiersprachen
In Programmiersprachen heißen Aussagen oder aussagenlogische Ausdrücke oft boolesche Ausdrücke (boolean expression). Sie kommen in mehreren Konstrukten vor; beispielsweise dienen sie der Spezifikation von Klassen, Diensten und Algorithmen, der
strukturierten Implementation von Algorithmen sowie der Formulierung von Synchronisationsbedingungen.
Tabelle 2.12
Aussagen in
Programmiersprachen
Aussage als...
allgemeine Zusicherung A
Component Pascal
ASSERT (A)
Eiffel
check A end
Vorbedingung A
require A
Nachbedingung A
ensure A
Klasseninvariante A
invariant A
Auswahlbedingungen A, B
in ein-, zwei- und
mehrseitigen
Auswahlanweisungen
Schleifeninvariante I,
Fortsetzungsbedingung A
oder Abbruchbedingung B in
Wiederholungsanweisungen
Warte- und
Fortsetzungsbedingungen in
Synchronisationskonstrukten
C*
assert(A);
if A then ...
if (A) { ... }
elseif B then ...
else if (B) { ... }
else ...
else { ... }
end
IF A THEN ...
ELSIF B THEN ...
ELSE ...
END
WHILE A DO ... END
REPEAT ... UNTIL B
-
from ...
invariant I
until B
loop ...
end
-
while (A) { ... }
do { ... } while (A)
for (..., A,...) { ... }
-
Dreiwertige Logik
Allerdings mutiert das theoretische Ideal der zweiwertigen Logik in der programmierpraktischen Realität zu einer dreiwertigen Logik: Als dritter Wahrheitswert ergänzt
„undefiniert“ die Wahrheitswerte „falsch“ und „wahr“.
Mathematik
Wo kommt der Wert „undefiniert“ vor? Beispielsweise ist der arithmetische Ausdruck
1/0 wegen der Division durch 0 undefiniert. Steht 1/0 in einem mathematischen Text,
so ist dem Autor ein schwerer Fehler unterlaufen. Die LeserIn kann entweder den Text
als unbrauchbar verwerfen oder den Fehler korrigieren; in beiden Fällen verschwindet
das „undefiniert“. Kommt die Funktion f(x) = 1/x in einem mathematischen Text vor, so
ist sie - auch ohne dass ihr Definitionsbereich explizit angegeben ist - für x = 0 undefiniert, d.h. gemeint ist die Funktion ! \ {0} → !, x → 1/x. Auch hier verschwindet das
„undefiniert“. Allgemein erscheint „undefiniert“ in mathematischen Texten nur als
Fehler, nicht als Gegenstand des Texts.
|
Programme
Wie verhält es sich damit in Quellprogrammtexten? Den Ausdruck 1/0 kann ein Übersetzer als undefiniert, also fehlerhaft erkennen; damit enthält das Quellprogramm einen
Übersetzungszeitfehler, ist nicht übersetzbar und daher nicht ausführbar. Für den Ausdruck 1/x gilt das nicht: Ob die Variable x stets einen von 0 verschiedenen Wert hat, ist
durch keinen Übersetzer, sondern erst zur Laufzeit feststellbar, da x erst dann Werte
zugewiesen werden. Es kann also vorkommen, dass x = 0 und 1/x auszuwerten ist. Vernünftigerweise stellt der Programmablauf dann einen Laufzeitfehler fest und bricht entwder mit der Fehlermeldung „Division durch 0 bei 1/x“ ab, oder übergibt die Kontrolle an
eine Ausnahmebehandlung, denn ein Weiterrechnen mit falschen Zahlenwerten würde
das Problem sinnlos vergrößern.
Programmiersprachen liefern weitere Beispiele für undefinierte Ausdrücke. Neben
arithmetischen Fehlern kommen Fehler bei indizierten Variablen und Zeigervariablen
vor. Undefinierte Ausdrücke können Teilausdrücke von Aussagen sein, die dann auch
undefiniert sind. Programmiersprachen müssen daher die Semantik von Aussagen für
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 30
2 Logik
die drei Wahrheitswerte falsch (0), wahr (1) und undefiniert (M) festlegen. Prinzipiell
gibt es zwei Ansätze, Aussagen zu interpretieren: die lange und die kurze Auswertung.
(1)
Tabelle 2.13
Wahrheitstabelle für
lange Auswertung
Die lange Auswertung übernimmt von der Aussagenlogik die Semantik der
Operatoren von Tabelle 2.6. Als zusätzliche Regel ist ein Ausdruck undefiniert,
wenn wenigstens ein Teilausdruck undefiniert ist.
A
¬A
A
B
(A ∧ B)
(A ∨ B)
0
1
0
0
0
0
1
0
0
1
0
M M
0
M
1
(A <≠> B)
1
1
0
1
1
0
1
M
M
M
M
M
0
0
1
0
0
1
1
1
1
1
1
1
0
1
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M 0
M 1
M M
(2)
Tabelle 2.14
Wahrheitstabelle für
kurze Auswertung
B)
(A ⇔ B)
(A
Lange oder vollständige Auswertung bedeutet, jeden Operanden bei einer Operation vollständig auszuwerten und dann (falls kein Operand undefiniert ist) das
Ergebnis gemäß Tabelle 2.13 zu bestimmen. Nach diesem Ansatz sind Konjunktion, Disjunktion, Äquivalenz und Antivalenz wie gewohnt kommutativ, d.h. die
Operanden sind vertauschbar, ohne dass sich der Wert der Aussage ändert.
Die Reihenfolge der Auswertung der Operanden einer Operation ist nicht durch
die Programmiersprache festgelegt, sondern bleibt der Implementation des Übersetzers überlassen.
Die kurze Auswertung definiert für die Konjunktion, die Disjunktion und die
Implikation eine andere Semantik:
A
¬A
A
B
(A ∧ B)
(A ∨ B)
0
1
0
0
0
0
1
0
0
1
0
M M
0
M
1
B)
(A ⇔ B)
(A <≠> B)
1
1
0
1
1
0
1
0
M
1
M
M
0
0
1
0
0
1
1
1
1
1
1
1
0
1
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M 0
M 1
M M
1
M
M
M
(A
Bei kurzer oder bedingter Auswertung werden die Operanden von links nach
rechts ausgewertet, wobei die Auswertung abgebrochen wird, sobald das Ergebnis nach Tabelle 2.14 feststeht, d.h. der rechte Operand wird ggf. nicht ausgewertet. Der rechte Operand muss also nicht unbedingt definiert sein: Der Ausdruck
kann definiert sein, obwohl sein rechter Operand undefiniert ist. Mit diesem
Ansatz sind die Konjunktion und die Disjunktion nicht kommutativ, bei der
Implikation ist Kontrapositionsregel verletzt, d.h. die textuelle Reihenfolge der
Operanden spielt eine Rolle.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
Interaktive Lernhilfen
Kurze Auswertung in
Cleo und
Component Pascal
2 - 31
Nur die Reihenfolge der Auswertung der Operanden bei der Konjunktion, der
Disjunktion und der Implikation ist durch die Sprache festgelegt; über die Auswertungsreihenfolge bei anderen Operatoren entscheidet trotzdem der Übersetzerbauer!
Die unter [33] bereit gestellten interaktiven Lernhilfen zeigen, wie unterschiedlich sich
lange und kurze Auswertung auf die Rechenregeln der dreiwertigen Aussagenlogik
auswirken.
Die in der begleitenden Lehrveranstaltung Informatik 1 vorgestellte Spezifikationssprache Cleo und die Implementationssprache Component Pascal werten Aussagen generell kurz aus. Kurze Auswertung nützt nicht nur dabei, Vor- und Nachbedingungen und
Invarianten kompakt zu formulieren, sondern auch bei Prüfungen, die sonst mit
geschachtelten IF-Anweisungen zu lösen wären:
IF x > 0 THEN
IF y / x < 1 THEN
z := x + y
END
END
Beispiel
ist reduzierbar auf
IF (x > 0) & (y / x < 1) THEN
z := x + y
END
Im Fall x = 0 ist y/x undefiniert und führt zu einem Laufzeitfehler. Die zweite Formulierung der Anweisung ist also bei langer Auswertung fehlerhaft und kann zum Abbruch
des Programmablaufs führen, während sie bei kurzer Auswertung immer korrekt funktioniert. Die erste Formulierung ist in beiden Fällen korrekt, aber aufwändiger.
Sicherheit und Effizienz
Kurze Auswertung führt zu kürzeren und trotzdem sicheren Programmen. Bei Programmiersprachen, die die Art der Auswertung nicht festlegen, hängt die Semantik
eines Programms hingegen vom Übersetzer ab und die ProgrammiererIn muss zwischen Sicherheit mit Aufwand und Effizienz mit Portierbarkeitsproblemen wählen.
2.1.10
Aussagenlogische Basen
Nachdem wir Beziehungen zwischen den Operationen ¬, ∧, ∨,
betrachtet haben, stellen sich die Fragen:
l
l
l
l
, ⇔, <≠> genauer
Welche weiteren aussagenlogischen Operationen und Aussagefunktionen gibt es?
Wieviele sind es?
Welche Operationen sind für welche Zwecke besonders geeignet?
Gibt es kleine Mengen von Operationen, mit denen sich alle Aussagefunktionen
darstellen lassen?
Nullstellige Operationen A : {∅} → lB, ∅ → A(∅) gibt es zwei, nämlich die Konstanten 0, 1 ∈ lB.
|
Einstellige Operationen A : lB → lB, a → A(a) gibt es vier, denn zu den zwei möglichen
Belegungen von a gibt es je zwei mögliche Ergebnisse. Von diesen ist die Negation am
interessantesten.
|
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 32
2 Logik
Tabelle 2.15
Einstellige
aussagenlogische
Operationen
a
0
1
Schreibweisen
Bezeichnung
A1(a)
0
0
0(a) = 0
Konstante, Widerspruch
A2(a)
0
1
id (a) = a
Identität
A3(a)
1
0
¬a
Negation, NOT
A4(a)
1
1
1(a) = 1
Konstante, Tautologie
lB
Zweistellige Operationen A : lB2 → lB, (a, b) → A(a, b) gibt es 16, denn zu den 2 ∗ 2 =
4 möglichen Belegungen von a und b gibt es je zwei, also insgesamt 24 = 16 mögliche
Ergebnisse.
|
Tabelle 2.16
Zweistellige
aussagenlogische
Operationen
a
0
0
1
1
b
0
1
0
1
A1(a, b)
0
0
0
0 0(a) = 0
Konstante, Widerspruch
A2(a, b)
0
0
0
1 a∧b
Konjunktion, AND
A3(a, b)
0
0
1
0 ¬(a
Negation der Implikation, Inhibition
A4(a, b)
0
0
1
1 π1(a, b) = a
Projektion auf 1. Komponente
A5(a, b)
0
1
0
0 ¬(b
Negation der Implikation
A6(a, b)
0
1
0
1 π2(a, b) = b
A7(a, b)
0
1
1
0
A8(a, b)
0
1
1
1 a∨b
Disjunktion, OR
A9(a, b)
1
0
0
0 a ↓ b := ¬(a ∨ b)
Nicht-Oder, NOR, Weder-Noch
A10(a, b) 1
0
0
1
A11(a, b) 1
0
1
0 ¬b
Negation der 2. Komponente
A12(a, b) 1
0
1
1 b
Implikation, Konversion
A13(a, b) 1
1
0
0 ¬a
Negation der 1. Komponente
A14(a, b) 1
1
0
1 a
Implikation
A15(a, b) 1
1
1
0
A16(a, b) 1
1
1
1 1(a) = 1
Schreibweisen
b) ≡ a ∧ ¬b
a) ≡ ¬a ∧ b
Bezeichnung
Projektion auf 2. Komponente
a <≠> b ≡
Antivalenz, XOR
(a ∧ ¬b) ∨ (¬a ∧ b)
a⇔b≡
Äquivalenz
(a ∨ ¬b) ∧ (¬a ∨ b)
a ≡ a ∨ ¬b
b ≡ ¬a ∨ b
a ↑ b := ¬(a ∧ b)
Nicht-Und, NAND
Konstante, Tautologie
Den Tabellen entnehmen wir mit Satz 2.19 (1), Satz 2.21 (7) und Satz 2.23 (8), dass
sich alle ein- und zweistelligen Operationen mittels Negation, Konjunktion und Disjunktion darstellen lassen. Mit ¬, ∧, ∨, , ⇔, <≠> haben wir die für die Mathematik
und die Softwaretechnik interessanten Operationen kennen gelernt. Zwei weitere Operationen sind:
l
1
Nand-Operation, Antikonjunktion, Sheffer-Funktion 1: A ↑ B (A nicht-und B, weder
A noch B) ist genau dann falsch, wenn sowohl A als auch B wahr sind. Als Operationssymbole dienen auch der Sheffer-Strich | und das überstrichene Und-Symbol ∧.
Henry Maurice Sheffer (1883 - 1972), amerikanischer Mathematiker, Logiker.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 33
l
Satz 2.25
Nand und Nor
Nor-Operation, Antidisjunktion, Peirce-Funktion, Nicod-Funktion1: A ↓ B
(A nicht-oder B) ist genau dann wahr, wenn sowohl A als auch B falsch sind. Als
Operationssymbol dient neben dem Peirce-Pfeil ↓ auch das überstrichene OderSymbol ∨.
Für beliebige Aussagen A, B gilt:
(1)
(2)
(3)
(4)
(5)
(6)
¬A
A∧B
A∨B
B
A
A⇔B
A <≠> B
≡A↑A
≡ (A ↑ B) ↑ (A ↑ B)
≡ (A ↑ A) ↑ (B ↑ B)
≡ A ↑ (A ↑ B)
≡ (A ↑ B) ↑ ((A ↑ A) ↑ (B ↑ B))
≡ (A ↑ (B ↑ B)) ↑ ((A ↑ A) ↑ B)
≡ A ↓ A.
≡ (A ↓ A) ↓ (B ↓ B).
≡ (A ↓ B) ↓ (A ↓ B).
≡ (B ↓ (A ↓ B)) ↓ (B ↓ (A ↓ B)).
≡ (A ↓ (B ↓ B)) ↓ ((A ↓ A) ↓ B).
≡ (A ↓ B) ↓ ((A ↓ A) ↓ (B ↓ B)).
Der leicht mit Wahrheitstabellen zu beweisende Satz zeigt, dass sich die bekannten
Operationen nur mit Nand und nur mit Nor ausdrücken lassen. Allerdings werden
Nand- und Nor-Ausdrücke recht komplex und es ist schwer, mit ihnen zu rechnen. Die
Bedeutung von Nand und Nor liegt vor allem in der Digitaltechnik, da sich beliebige
Schaltfunktionen nur mit Nand- oder Nor-Gattern realisieren lassen und die Massenproduktion von nur einer Gatterart ökonomisch interessant ist.
Satz 2.26
Anzahl der
Aussagefunktionen
Zu n ∈ lN0 gibt es 2
n
(2 )
verschiedene n-stellige Aussagefunktionen
A : lBn → lB, (a1,.., an) → A(a1,.., an),
|
n
d.h. AFn =
lB
( lB )
n
hat 2
(2 )
Elemente.
Beweis. lBn hat 2n Elemente. Das entspricht der Anzahl der Zeilen in einer Wahrheitsn
(2 )
tabelle zu einer Aussage mit n Variablen. Dazu gibt es 2
verschiedene Möglichkeiten, die Spalte dieser Aussage mit 0en und 1en auszufüllen. Verschiedene Spalten entp
sprechen verschiedenen Aussagefunktionen.
Es gibt also 28 = 256 dreistellige und 216 = 65536 vierstellige Aussagefunktionen. Die
n
(2 )
wächst extrem. Wie lassen sich die vielen n-stelligen AussageFunktion n → 2
funktionen darstellen? Wir beantworten die Frage zunächst für Aussagen A ∈ A.
|
Definition 2.27
Aussagenlogische
Basis
Eine Menge OB logischer Operationen heißt (aussagenlogische) Basis (vollständig),
wenn es zu jeder Aussage A eine logisch äquivalente Aussage B gibt, die nur Operationen aus OB enthält. Eine Basis heißt minimal, wenn keine ihrer echten Teilmengen eine Basis ist.
1
9.8.04
Jean Nicod (1893 - 1924), französischer Philosoph, Mathematiker, Logiker.
© Karlheinz Hug, Hochschule Reutlingen
2 - 34
Satz 2.28
Basen
2 Logik
Die folgenden Mengen logischer Operationen bilden aussagenlogische Basen:
(1)
(2)
(3)
(4)
(5)
(6)
{¬, ∧, ∨}.
{¬, ∧}.
{¬, ∨}.
{¬, }.
{↑}.
{↓}.
Boole-Basis
de Morgan-Basis
de Morgan-Basis
Frege-Basis
Sheffer-Basis, Nand-Basis
Peirce-Basis, Nor-Basis
Die Basen (2) bis (6) sind minimal.
Beweis. (1) ergibt sich aus Tabelle 2.16. (2) und (3) folgen aus (1) und den de morganschen Regeln in der Form
A ∨ B ≡ ¬(¬A ∧ ¬B),
A ∧ B ≡ ¬(¬A ∨ ¬B).
(4) folgt aus (3) und Satz 2.19 (1). (5) und (6) ergeben sich aus (1) und Satz 2.25.
A
p
Damit wissen wir, dass sich alle Aussagen A ∈ mittels der Basen logisch äquivalent
darstellen lassen - aber noch nicht, ob sich auch alle Aussagefunktionen A : lBn → lB
mittels der Basen darstellen lassen.
2.1.11
Normalformen von Aussagen
Aus der Analysis ist bekannt, dass sich Polynome oder ganze rationale Funktionen als
Summe von Produkten und als Produkt von Summen darstellen lassen, z.B.
f(x) = x2 − x + 2 = (x + 1) ∗ (x − 2).
Ähnlich „normal“ lassen sich logische Funktionen als Disjunktion von Konjunktionen
und als Konjunktion von Disjunktionen darstellen. Solche Normalformen sind nützlich
zur Analyse und Synthese von Aussagen:
J
J
J
J
J
J
Eine einheitliche Darstellungsform für Aussagen dient der Lesbarkeit und Verständlichkeit.
Eine normal dargestellte Aussage lässt ihre Wahrheitswerte erkennen, ohne dass
man ihre Wahrheitstabelle aufstellen muss.
Normal dargestellte Aussagen werden in nur zwei Stufen berechnet. Dies ist ein
wichtiges Kriterium in der Digitaltechnik: Da die Signale höchstens zwei Gatter
durchlaufen, ergeben sich kurze Schaltzeiten.
Normal dargestellte Aussagen sind leichter vergleichbar.
Eigenschaften von Aussagen lassen sich oft leichter anhand ihrer Normaldarstellungen zeigen.
Zu einer durch eine Wahrheitstabelle gegebenen Aussagefunktion kann man leicht
normal dargestellte Aussagen konstruieren.
Zur Vorbereitung der Normalformen benötigen wir einige Definitionen, die wir wie die
folgenden Sätze in den dualen Formen angeben. Bei den Beweisen können wir uns aufgrund des Dualitätstheorems auf eine Form beschränken.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
Definition 2.29
Faktor
Term
Normalform
2 - 35
Eine Aussage A = A(a1,.., an) ∈
A mit n ∈
lN
0
heißt
ein Faktor (Literal), wenn A ein Atom oder negiertes Atom ist, also von einer der
Formen
0, 1, ai, ¬ai mit i = 1,.., n;
ein K-Term (Konjunktionsterm), wenn A eine Konjunktion von Faktoren ist, also von
der Form
A = F1 ∧ ... ∧ Fm mit Faktoren F1,.., Fm, m ∈ lN0;
ein D-Term (Disjunktionsterm), wenn A eine Disjunktion von Faktoren ist, also von
der Form
A = F1 ∨ ... ∨ Fm mit Faktoren F1,.., Fm, m ∈ lN0;
ein Term, wenn A ein K-Term oder D-Term ist;
ein Minterm (Elementarkonjunktion), wenn A ein K-Term ist, in dem keine Konstante und jede Variable a1,.., an genau einmal vorkommt;
ein Maxterm (Elementardisjunktion), wenn A ein D-Term ist, in dem keine Konstante und jede Variable a1,.., an genau einmal vorkommt;
eine disjunktive Normalform, DNF, wenn A eine Disjunktion von K-Termen ist,
also von der Form
A = K1 ∨ ... ∨ Kl mit K-Termen K1,.., Kl, l ∈ lN0;
eine konjunktive Normalform, KNF, wenn A eine Konjunktion von D-Termen ist,
also von der Form
A = D1 ∧ ... ∧ Dl mit D-Termen D1,.., Dl, l ∈ lN0;
eine Normalform, wenn A eine DNF oder KNF ist;
eine kanonische (vollständige) disjunktive Normalform, KDNF, wenn A eine Disjunktion von paarweise nicht logisch äquivalenten Mintermen ist;
eine kanonische (vollständige) konjunktive Normalform, KKNF, wenn A eine
Konjunktion von paarweise nicht logisch äquivalenten Maxtermen ist;
eine kanonische Normalform, wenn A eine KDNF oder KKNF ist.
Bemerkungen
Beispiele
In den folgenden Beispielen sei n = 3, die Variablen seien a, b, c. K- und D-Terme, die
keine Min- bzw. Maxterme sind, können 0en, 1en und Variablen mehrfach als Faktoren
enthalten:
a ∧ b ∧ ¬a ∧ 0
a ∨ ¬b ∨ ¬a ∨ 0 ∨ c ∨ a
K-Term, kein Minterm
D-Term, kein Maxterm
Gemäß den Vereinfachungsregeln von S. 28 gilt im Sinne logischer Äquivalenz: Ein KTerm mit einem Faktor 0 ist 0. Ein D-Term mit einem Faktor 1 ist 1. In K-Termen kann
man 1en, in D-Termen 0en als Faktoren weglassen (oder hinzufügen). In Termen kann
man jeden Faktor nur einmal vorkommen lassen; Faktoren kann man vertauschen,
umordnen. Damit vereinfachen sich obige Terme zu:
0
a ∨ ¬b ∨ ¬a ∨ c
K-Term, kein Minterm
D-Term, kein Maxterm
Der D-Term vereinfacht sich mit der Regel des ausgeschlossenen Dritten weiter zu 1.
Für m = 0 ist ein K-Term 1, ein D-Term 0. Für n = 0 ist ein Minterm 1, ein Maxterm 0.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 36
2 Logik
Eine DNF ist eine Disjunktion von Konjunktionen. Eine KNF ist eine Konjunktion von
Disjunktionen. DNFen und KNFen können 0en und 1en als Terme und logisch äquivalente Terme enthalten:
(a ∧ b) ∨ (b ∧ ¬c) ∨ (b ∧ a)
(a ∨ ¬b) ∧ (a ∨ ¬b ∨ c) ∧ 1
DNF, keine KDNF
KNF, keine KKNF
In DNFen kann man 0en, in KNFen 1en als Terme weglassen. Eine DNF mit einem
Term 1 ist 1. Eine KNF mit einem Term 0 ist 0. In Normalformen kann man von
logisch äquivalenten Termen nur einen vorkommen lassen; Terme kann man umordnen. Damit vereinfachen sich obige Normalformen zu:
(a ∧ b) ∨ (b ∧ ¬c)
(a ∨ ¬b) ∧ (a ∨ ¬b ∨ c)
DNF, keine KDNF
KNF, keine KKNF
Die KNF vereinfacht sich mit der Absorptionsregel weiter zu a ∨ ¬b.
Für l = 0 ist eine DNF 0, eine KNF 1.
Die Reihenfolge der Variablen in Min- und Maxtermen ist nicht festgelegt, daher gibt
es logisch äquivalente Min- bzw. Maxterme:
a ∧ b ∧ ¬c
¬c ∧ a ∧ b
¬c ∨ b ∨ a
Minterm
logisch äquivalenter Minterm
Maxterm
Die Reihenfolge der Min- und Maxterme in KDNFen bzw. KKNFen ist nicht festgelegt, auch deshalb gibt es logisch äquivalente KDNFen bzw. KKNFen:
(a ∧ b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ c)
(¬a ∧ c ∧ ¬b) ∨ (b ∧ ¬c ∧ a)
(¬c ∨ b ∨ a) ∧ (¬b ∨ c ∨ ¬a)
KDNF
logisch äquivalente KDNF
KKNF
Der Lesbarkeit halber empfiehlt sich, in allen Termen dieselbe Reihenfolge der Variablen einzuhalten.
Satz 2.30
Normalformen zu
Aussagen
Zu jeder Aussage A ∈
KKNFen.
A gibt es logisch äquivalente DNFen, KNFen, KDNFen und
A
A
Beweis. Nach Satz 2.28 gibt es zu A ∈ ein logisch äquivalentes B ∈ , in dem nur ¬,
∧ und ∨ vorkommen. Aus B erhält man die gewünschte Normalform durch geeignetes
Umformen, indem man die Regeln zum Vereinfachen von Aussagen, S. 28 ggf. wiederholt anwendet und dabei insbesondere Negationen vor Klammern mittels der de morganschen Regeln nach innen treibt. (Ein ausführlicher Beweis verfährt induktiv über
den Aufbau der Aussagen.)
p
Korollar 2.31
Zwei Aussagen sind genau dann logisch äquivalent, wenn sie dieselbe KDNF oder
KKNF (bis auf Umordnungen der Faktoren und Terme) besitzen.
Für Aussagen mit nur zwei Variablen, also zweistellige Aussagefunktionen, ist Satz
2.30 unmittelbar einzusehen. Wir stellen alle 16 zweistelligen KDNFen und KKNFen
zusammen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 37
Tabelle 2.17 Kanonische Normalformen zweistelliger Aussagefunktionen
a
0 0 1 1
b
0 1 0 1
Kurzform
KDNF
KKNF
A1(a, b)
0 0 0 0 0
0
(a ∨ b) ∧ (a ∨ ¬b) ∧ (¬a ∨ b) ∧
(¬a ∨ ¬b)
A2(a, b)
0 0 0 1 a∧b
a∧b
(a ∨ b) ∧ (a ∨ ¬b) ∧ (¬a ∨ b)
A3(a, b)
0 0 1 0 ¬(a
a ∧ ¬b
(a ∨ b) ∧ (a ∨ ¬b) ∧ (¬a ∨ ¬b)
A4(a, b)
0 0 1 1 a
(a ∧ b) ∨ (a ∧ ¬b)
(a ∨ b) ∧ (a ∨ ¬b)
A5(a, b)
0 1 0 0 ¬(b
¬a ∧ b
(a ∨ b) ∧ (¬a ∨ b) ∧ (¬a ∨ ¬b)
A6(a, b)
0 1 0 1 b
(a ∧ b) ∨ (¬a ∧ b)
(a ∨ b) ∧ (¬a ∨ b)
A7(a, b)
0 1 1 0 a <≠> b
(a ∧ ¬b) ∨ (¬a ∧ b)
(a ∨ b) ∧ (¬a ∨ ¬b)
A8(a, b)
0 1 1 1 a∨b
(a ∧ b) ∨ (a ∧ ¬b) ∨ (¬a ∧ b)
a∨b
A9(a, b)
1 0 0 0 a↓b
¬a ∧ ¬b
(a ∨ ¬b) ∧ (¬a ∨ b) ∧ (¬a ∨ ¬b)
A10(a, b) 1 0 0 1 a ⇔ b
(a ∧ b) ∨ (¬a ∧ ¬b)
(a ∨ ¬b) ∧ (¬a ∨ b)
A11(a, b) 1 0 1 0 ¬b
(a ∧ ¬b) ∨ (¬a ∧ ¬b)
(a ∨ ¬b) ∧ (¬a ∨ ¬b)
A12(a, b) 1 0 1 1 b
(a ∧ b) ∨ (a ∧ ¬b) ∨ (¬a ∧ ¬b)
a ∨ ¬b
A13(a, b) 1 1 0 0 ¬a
(¬a ∧ b) ∨ (¬a ∧ ¬b)
(¬a ∨ b) ∧ (¬a ∨ ¬b)
A14(a, b) 1 1 0 1 a
(a ∧ b) ∨ (¬a ∧ b) ∨ (¬a ∧ ¬b)
¬a ∨ b
A15(a, b) 1 1 1 0
b)
a)
a
b
a↑b
(a ∧ ¬b) ∨ (¬a ∧ b) ∨ (¬a ∧ ¬b) ¬a ∨ ¬b
(a ∧ b) ∨ (a ∧ ¬b) ∨ (¬a ∧ b) ∨
1
(¬a ∧ ¬b)
A16(a, b) 1 1 1 1 1
Beispiel 2.3
Konstruktion von
Normalformen mit
algebraischen
Umformungen
Konstantenfreie Form
Wir zeigen die im Beweis zu Satz 2.30 skizzierte Methode anhand der Aussage
(a ∧ b ∧ 1)
(¬b ∨ c) ⇔ b ∨ ¬c ∨ 0.
Gesucht ist zunächst eine logisch äquivalente Aussage auf Boole-Basis. Schon vor
Ersetzen der Implikation und der Äquivalenz vereinfachen wir möglichst weit gehend:
(¬b ∨ c) ⇔ b ∨ ¬c ∨ 0 ≡
(a ∧ b ∧ 1)
(a ∧ b)
(¬b ∨ c) ⇔ b ∨ ¬c.
Satz 2.17
Zur konstantenfreien Form stellen wir die Wahrheitstabelle auf (nicht um sie hier, sondern auf S. 42 zu benutzen):
Tabelle 2.18
Kompakte
Wahrheitstabelle
9.8.04
(a
∧
b)
(¬b
∨
c)
⇔
b
∨
¬c
0
0
0
1
1
1
0
1
0
1
1
0
0
0
1
1
1
1
0
0
0
0
0
0
1
1
0
0
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
1
1
1
0
0
0
0
0
1
1
1
1
1
1
1
0
1
1
1
1
1
0
© Karlheinz Hug, Hochschule Reutlingen
2 - 38
2 Logik
Nun ersetzen wir in der konstantenfreien Form
(¬b ∨ c) ⇔ b ∨ ¬c ≡
(a ∧ b)
¬(a ∧ b) ∨ (¬b ∨ c) ⇔ b ∨ ¬c ≡
(¬a ∨ ¬b) ∨ (¬b ∨ c) ⇔ b ∨ ¬c ≡
¬a ∨ ¬b ∨ c ⇔ b ∨ ¬c ≡
((¬a ∨ ¬b ∨ c)
(b ∨ ¬c)) ∧ ((b ∨ ¬c) (¬a ∨ ¬b ∨ c)) ≡
(¬(¬a ∨ ¬b ∨ c) ∨ (b ∨ ¬c)) ∧ (¬(b ∨ ¬c) ∨ (¬a ∨ ¬b ∨ c)).
Boole-basierte Form
und ⇔:
Satz 2.19
Satz 2.14
Satz 2.17
Satz 2.19
Satz 2.19
Gesucht ist nun eine logisch äquivalente DNF; dazu vereinfachen wir weiter:
KNF
(¬(¬a ∨ ¬b ∨ c) ∨ (b ∨ ¬c)) ∧ (¬(b ∨ ¬c) ∨ (¬a ∨ ¬b ∨ c)) ≡
((¬¬a ∧ ¬¬b ∧ ¬c) ∨ b ∨ ¬c) ∧ ((¬b ∧ ¬¬c) ∨ ¬a ∨ ¬b ∨ c) ≡
((a ∧ b ∧ ¬c) ∨ b ∨ ¬c) ∧ ((¬b ∧ c) ∨ ¬a ∨ ¬b ∨ c) ≡
(b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c).
Satz 2.14
Satz 2.13
Satz 2.17
Wir haben eine Konjunktion von zwei Disjunktionen, also eine KNF gefunden - das ist
zwar nicht das Gesuchte, aber auch nicht schlecht. Durch Anwenden einer Distributivregel („Ausmultiplizieren“) erhalten wir:
DNF
(b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c) ≡
(b ∧ ¬a) ∨ (b ∧ ¬b) ∨ (b ∧ c) ∨ (¬c ∧ ¬a) ∨ (¬c ∧ ¬b) ∨ (¬c ∧ c) ≡
(b ∧ ¬a) ∨ 0 ∨ (b ∧ c) ∨ (¬c ∧ ¬a) ∨ (¬c ∧ ¬b) ∨ 0 ≡
(b ∧ ¬a) ∨ (b ∧ c) ∨ (¬c ∧ ¬a) ∨ (¬c ∧ ¬b) ≡
(¬a ∧ b) ∨ (¬a ∧ ¬c) ∨ (b ∧ c) ∨ (¬b ∧ ¬c).
Satz 2.17
Satz 2.14
Satz 2.17
Satz 2.17
Dies ist eine gesuchte DNF aus vier K-Termen. Von dieser ausgehend konstruieren wir
eine KDNF:
KDNF
(¬a ∧ b) ∨ (¬a ∧ ¬c) ∨ (b ∧ c) ∨ (¬b ∧ ¬c) ≡
Satz 2.17
(¬a ∧ b ∧ 1) ∨ (¬a ∧ 1 ∧ ¬c) ∨ (1 ∧ b ∧ c) ∨ (1 ∧ ¬b ∧ ¬c) ≡
Satz 2.14
(¬a ∧ b ∧ (c ∨ ¬c)) ∨ (¬a ∧ (b ∨ ¬b) ∧ ¬c) ∨ ((a ∨ ¬a) ∧ b ∧ c) ∨
((a ∨ ¬a) ∧ ¬b ∧ ¬c) ≡
Satz 2.17
(¬a ∧ b ∧ c) ∨ (¬a ∧ b ∧ ¬c) ∨ (¬a ∧ b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ ¬c) ∨
(a ∧ b ∧ c) ∨ (¬a ∧ b ∧ c) ∨ (a ∧ ¬b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ ¬c) ≡
Satz 2.17
(¬a ∧ b ∧ c) ∨ (¬a ∧ b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ ¬c) ∨ (a ∧ b ∧ c) ∨ (a ∧ ¬b ∧ ¬c) ≡
(a ∧ b ∧ c) ∨ (a ∧ ¬b ∧ ¬c) ∨ (¬a ∧ b ∧ c) ∨ (¬a ∧ b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ ¬c).
Die KDNF hat fünf Minterme. Die jetzt noch gesuchte logisch äquivalente KKNF entwickeln wir entsprechend aus der KNF:
KKNF
(b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c) ≡
(0 ∨ b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c) ≡
((a ∧ ¬a) ∨ b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c) ≡
(a ∨ b ∨ ¬c) ∧ (¬a ∨ b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c).
Satz 2.17
Satz 2.14
Satz 2.17
Die KKNF hat drei Maxterme. Soll die Aussage mittels einer kanonischen Normalform
berechnet werden, so ist offenbar die KKNF, die fünf einstellige und acht zweistellige
Operationen benötigt, günstiger als die KDNF mit acht einstelligen und 14 zweistelligen. Auch bei den Normalformen ist die KNF günstiger als die obige DNF. Diese DNF
ist allerdings nicht die einfachste. Die DNFen
Minimale DNF
(¬a ∧ b) ∨ (b ∧ c) ∨ (¬b ∧ ¬c),
(¬a ∧ ¬c) ∨ (b ∧ c) ∨ (¬b ∧ ¬c)
sind äquivalent, aber einfacher, kürzer.
Minimale Aussage
p
Eine Aussage oder Normalform heißt minimal bzgl. einer Operationenmenge OM,
wenn es keine logisch äquivalente Aussage bzw. Normalform mit weniger Operationen
aus OM gibt. Minimale Aussagen und Normalformen bieten minimalen Aufwand zu
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 39
ihrer Implementation und Interpretation. Der Implementationsaufwand entspricht in
der Digitaltechnik der Anzahl der Gatter, also den Kosten der Bauelemente, in der Programmierung dem Umfang des Programmcodes, also dem Speicherplatzbedarf. Der
Aufwand zur Interpretation oder Berechnung entspricht in der Digitaltechnik der
Schaltzeit des Schaltkreises, in der Programmierung der Auswertungszeit des Ausdrucks.
Wie findet man minimale Aussagen? Es gibt theoretisch fundierte Minimierungsverfahren, mit denen man z.B. aus kanonischen Normalformen minimale Normalformen
gewinnt, siehe z.B. [6], [25]. Solche Verfahren sind in der Digitaltechnik wichtig, da
hier komplexe Schaltfunktionen möglichst effizient zu realisieren sind. Dagegen
braucht man sie beim Programmieren selten, da die hier vorkommenden booleschen
Ausdrücke meist überschaubar bleiben, sodass sie sich intuitiv minimieren lassen.
Für A ∈
A bezeichne
dnf(A)
knf(A)
Satz 2.32
Dualität der
Normalformen
eine zu A logisch äquivalente DNF,
eine zu A logisch äquivalente KNF.
Für jede Aussage A ∈
(1)
(2)
A gilt:
dnf(A) ≡ ¬knf(¬A) ≡ knf(¬A).
knf(A) ≡ ¬dnf(¬A) ≡ dnf(¬A).
Beweis folgt direkt aus Theorem 2.16, Dualitätstheorem der Aussagenlogik. Ausführlich: (1) Negiert man dnf(A) doppelt und wendet die de morganschen Regeln auf die
innere Negation an, so erhält man ¬knf(¬A). (2) ist eine Umformulierung von (1). p
Man kann also eine KNF konstruieren, indem man eine DNF der negierten Aussage
konstruiert und diese dann negiert, d.h. strikt dualisiert.
Beispiel 2.4
Konstruktion einer KNF
mittels einer DNF
Wir zeigen diese Methode anhand der in Beispiel 2.3 verwendeten Aussage
A := (¬a ∧ b) ∨ (b ∧ c) ∨ (¬b ∧ ¬c).
Die negierte Aussage ist
¬A = ¬((¬a ∧ b) ∨ (b ∧ c) ∨ (¬b ∧ ¬c)).
Gesucht ist zunächst eine dazu logisch äquivalente DNF:
knf(¬A)
dnf(¬A)
¬((¬a ∧ b) ∨ (b ∧ c) ∨ (¬b ∧ ¬c)) ≡
¬(¬a ∧ b) ∧ ¬(b ∧ c) ∧ ¬(¬b ∧ ¬c) ≡
(¬¬a ∨ ¬b) ∧ (¬b ∨ ¬c) ∧ (¬¬b ∨ ¬¬c) ≡
(a ∨ ¬b) ∧ (¬b ∨ ¬c) ∧ (b ∨ c) ≡
(a ∧ ¬b ∧ b) ∨ (a ∧ ¬b ∧ c) ∨ (a ∧ ¬c ∧ b) ∨ (a ∧ ¬c ∧ c) ∨
(¬b ∧ ¬b ∧ b) ∨ (¬b ∧ ¬b ∧ c) ∨ (¬b ∧ ¬c ∧ b) ∨ (¬b ∧ ¬c ∧ c) ≡
(a ∧ 0) ∨ (a ∧ ¬b ∧ c) ∨ (a ∧ ¬c ∧ b) ∨ (a ∧ 0) ∨
0 ∨ (¬b ∧ c) ∨ (¬b ∧ b ∧ ¬c) ∨ (¬b ∧ 0) ≡
0 ∨ (a ∧ ¬b ∧ c) ∨ (a ∧ ¬c ∧ b) ∨ 0 ∨ 0 ∨ (¬b ∧ c) ∨ (0 ∧ ¬c) ∨ 0 ≡
(a ∧ ¬b ∧ c) ∨ (a ∧ b ∧ ¬c) ∨ (¬b ∧ c) ≡
(a ∧ b ∧ ¬c) ∨ (¬b ∧ c).
Satz 2.14
Satz 2.14
Satz 2.13
Satz 2.17
Satz 2.17
Satz 2.17
Satz 2.17
Satz 2.14
Nochmal Negieren ergibt
¬dnf(¬A)
knf(A)
9.8.04
¬((a ∧ b ∧ ¬c) ∨ (¬b ∧ c)) ≡
¬(a ∧ b ∧ ¬c) ∧ ¬(¬b ∧ c) ≡
(¬a ∨ ¬b ∨ ¬¬c) ∧ (¬¬b ∨ ¬c) ≡
(¬a ∨ ¬b ∨ c) ∧ (b ∨ ¬c).
Satz 2.14
Satz 2.14
Satz 2.14
© Karlheinz Hug, Hochschule Reutlingen
2 - 40
2 Logik
Diese KNF ist logisch äquivalent zur KNF in Beispiel 2.3. Wir haben das Umformen
von ¬dnf(¬A) zu knf(A) ausführlich gezeigt. Offenbar erhält man knf(A) schneller
durch striktes Dualisieren von dnf(¬A).
p
Die im Beweis zu Satz 2.30 skizzierte Methode des algebraischen Umformens kann
mühsam sein (wie in Beispiel 2.3). Deshalb demonstrieren wir eine Methode, die auf
Belegungen und Wahrheitstabellen basiert. Sie ist sowohl einfacher als auch allgemeiner, da sie auf beliebige Aussagefunktionen anwendbar ist.
Die folgenden Beispiele verwenden wieder die Variablen a, b, c. Belegungen stellen
wir als Tripel (beleg(a), beleg(b), beleg(c)) dar, z.B. (1, 0, 1).
Satz 2.33
Eindeutige Belegung
zu Min- und Maxterm
Ist K = K(a1,.., an) = F1 ∧ ... ∧ Fn mit n ∈ lN ein Minterm, so gibt es genau eine Belegung belegK der Variablen a1,.., an, für die K wahr ist, nämlich
0
belegK(ai) := 1
falls F i = ¬a i
falls F i = a i
für i = 1,.., n.
Ist D = D(a1,.., an) = F1 ∨ ... ∨ Fn mit n ∈ lN ein Maxterm, so gibt es genau eine Belegung belegD der Variablen a1,.., an, für die D falsch ist, nämlich
0
belegD(ai) := 1
falls F i = a i
falls F i = ¬a i
für i = 1,.., n.
p
Beweis direkt durch Nachdenken.
Beispiele
Der Minterm a ∧ ¬b ∧ c ist genau für die Belegung (1, 0, 1) wahr.
Der Maxterm ¬a ∨ ¬b ∨ c ist genau für die Belegung (1, 1, 0) falsch.
Satz 2.34
Min- und Maxterme zu
Belegung
Ist die Aussagefunktion A = A(a1,.., an) mit n ∈ lN für genau eine Belegung beleg der
Variablen a1,.., an wahr, so ist A logisch äquivalent zu dem Minterm
ai
Kbeleg := F1 ∧ ... ∧ Fn mit Fi := ¬a i
falls beleg ( ai ) = 1
falls beleg ( ai ) = 0
für i = 1,.., n.
Ist A = A(a1,.., an) mit n ∈ lN für genau eine Belegung beleg der Variablen a1,.., an
falsch, so ist A logisch äquivalent zu dem Maxterm
ai
Dbeleg := F1 ∨ ... ∨ Fn mit Fi := ¬a i
falls beleg ( a i ) = 0
falls beleg ( a i ) = 1
für i = 1,.., n.
Beweis. Der Minterm Kbeleg ist offenbar für die Belegung beleg wahr. Nach Satz 2.33
p
ist er nur für beleg wahr. Daher ist er logisch äquivalent zu A.
Beispiele
Ist die Aussagefunktion A : lB3 → lB durch
1
A(a, b, c) := 0
falls a = b = 1, c = 0
sonst
gegeben, so ist A ≡ a ∧ b ∧ ¬c.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.1 Aussagenlogik
2 - 41
Ist die Aussagefunktion A : lB3 → lB durch
0
A(a, b, c) := 1
falls a = c = 1, b = 0
sonst
gegeben, so ist A ≡ ¬a ∨ b ∨ ¬c.
Nach Satz 2.33 und Satz 2.34 gibt es bijektive Beziehungen zwischen
l
l
Mintermen und so genannten Wahr-Belegungen und
Maxtermen und so genannten Falsch-Belegungen der Wahrheitstabellen.
Minterme entsprechen n-Tupeln aus 0en und 1en mit ai ↔ 1, ¬ai ↔ 0.
Maxterme entsprechen n-Tupeln aus 0en und 1en mit ai ↔ 0, ¬ai ↔ 1.
Satz 2.35
Anzahl der Min- und
Maxterme
Zu den Variablen a1,.., an mit n ∈ lN0 gibt es 2n paarweise nicht logisch äquivalente
Minterme und 2n paarweise nicht logisch äquivalente Maxterme.
Beweis. Kurz: Es gibt genau so viele Minterme wie n-Tupel aus 0en und 1en. Ausführlich: Jede der Variablen a1,.., an hat zwei Möglichkeiten, in einem Minterm vorzukommen: negiert oder nicht negiert. Damit ergeben sich 2n Möglichkeiten für Minterme,
ohne die Anordnung der Variablen zu berücksichtigen. Jeder Minterm ist für genau eine
Belegung wahr. Diese Belegungen sind paarweise verschieden. Also sind die Minterme
paarweise nicht logisch äquivalent.
p
Satz 2.36
Eindeutige Belegungen
zu KDNFen und
KKNFen
Ist A = A(a1,.., an) = K1 ∨ ... ∨ Kl mit n ∈ lN eine KDNF mit den Mintermen K1,.., Kl,
so gibt es genau l Belegungen der Variablen a1,.., an, für die A wahr ist, nämlich die
Belegungen belegKj zu den Mintermen Kj gemäß Satz 2.33.
Ist A = A(a1,.., an) = D1 ∧ ... ∧ Dl mit n ∈ lN eine KKNF mit den Maxtermen
D1,.., Dl, so gibt es genau l Belegungen der Variablen a1,.., an, für die A falsch ist,
nämlich die Belegungen belegDj zu den Maxtermen Dj gemäß Satz 2.33.
Beweis. Für j = 1,.., l gilt: Für belegKj ist Kj wahr, also auch A. Für alle anderen Belegungen sind alle K1,.., Kl falsch, also auch A.
p
Beispiele
Die KDNF aus Beispiel 2.3
(a ∧ b ∧ c) ∨ (a ∧ ¬b ∧ ¬c) ∨ (¬a ∧ b ∧ c)) ∨ (¬a ∧ b ∧ ¬c) ∨ (¬a ∧ ¬b ∧ ¬c)
ist genau für die Belegungen (1, 1, 1), (1, 0, 0), (0, 1, 1), (0, 1, 0), (0, 0, 0) wahr.
Die KKNF aus Beispiel 2.3
(a ∨ b ∨ ¬c) ∧ (¬a ∨ b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ c).
ist genau für die Belegungen (0, 0, 1), (1, 0, 1), (1, 1, 0) falsch.
Satz 2.37
KDNFen und KKNFen
zu Belegungen
Ist die Aussagefunktion A = A(a1,.., an) mit n ∈ lN für genau die Belegungen
beleg1,.., belegl der Variablen a1,.., an wahr und sind Kj := Kbelegj für j = 1,.., l die
Minterme zu diesen Belegungen gemäß Satz 2.34, so ist A logisch äquivalent zu der
KDNF K1 ∨ ... ∨ Kl.
Ist die Aussagefunktion A = A(a1,.., an) mit n ∈ lN für genau die Belegungen
beleg1,.., belegl der Variablen a1,.., an falsch und sind Dj := Dbelegj für j = 1,.., l die
Maxterme zu diesen Belegungen gemäß Satz 2.34, so ist A logisch äquivalent zu der
KKNF D1 ∧ ... ∧ Dl.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 42
2 Logik
Beweis. A und K1 ∨ ... ∨ Kl sind für genau dieselben Belegungen belegKj, j = 1,.., l,
p
wahr.
Beispiel 2.5
Konstruktion
kanonischer
Normalformen mit der
Belegungsmethode
Ist die Aussagefunktion A : lB3 → lB durch
1
A(a, b, c) := 0
falls a = b = 1, c beliebig
sonst
gegeben, so ist A ≡ (a ∧ b ∧ c) ∨ (a ∧ b ∧ ¬c).
Ist die Aussagefunktion A : lB3 → lB durch
falls a = c = 1, b beliebig
0
A(a, b, c) := 1
sonst
p
gegeben, so ist A ≡ (¬a ∨ b ∨ ¬c) ∧ (¬a ∨ ¬b ∨ ¬c).
KDNF oder KKNF?
Ist eine Aussagefunktion für höchstens die Hälfte aller Belegungen wahr, so ist ihre
Darstellung als KDNF günstiger: Bilde zu allen Wahr-Belegungen die Minterme und
verknüpfe diese disjunktiv.
Ist eine Aussagefunktion für höchstens die Hälfte aller Belegungen falsch, so ist ihre
Darstellung als KKNF günstiger: Bilde zu allen Falsch-Belegungen die Maxterme und
verknüpfe diese konjunktiv.
Wenden wir diese Methode auf die Wahrheits-Tabelle 2.18 der in Beispiel 2.3 gegebenen Aussage an, so erhalten wir dieselbe KDNF und dieselbe KKNF wie mit der algebraischen Methode - aber schneller. Daher ist die Belegungsmethode in der Digitaltechnik für die Logiksynthese wichtig, um zu einer Schaltfunktion schnell ein
implementierendes Schaltnetz zu konstruieren.
Satz 2.38
Anzahl der KDNFen
und KKNFen
Zu den Variablen a1,.., an mit n ∈
n
0 gibt es 2
lN
(2 )
paarweise nicht logisch äquiva-
n
lente KDNFen und 2
(2 )
paarweise nicht logisch äquivalente KKNFen.
n
Beweis. Da es nach Satz 2.26 2
(2 )
verschiedene Aussagefunktionen gibt und nach
n
Satz 2.37 zu jeder Aussagefunktion eine logisch äquivalente KDNF, muss es 2
paarweise nicht logisch äquivalente KDNFen geben.
(2 )
p
Die Ergebnisse fassen wir in einem Theorem zusammen.
Theorem 2.39
Normalformen zu
Aussagefunktionen
Zu jeder Aussagefunktion A : lBn → lB mit n ∈ lN0 gibt es eine logisch äquivalente
(1)
(2)
(3)
(4)
DNF;
KNF;
KDNF, die bis auf die Reihenfolge der Minterme und der Faktoren in den Mintermen eindeutig bestimmt ist;
KKNF, die bis auf die Reihenfolge der Maxterme und der Faktoren in den
Maxtermen eindeutig bestimmt ist.
Damit ist gezeigt - wie in 2.1.6 angedacht -, dass sich jede Aussagefunktion durch
einen induktiv definierten aussagenlogischen Ausdruck darstellen und durch ein digitales Schaltnetz implementieren lässt.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
2 - 43
Korollar 2.40
Zu jeder Aussagefunktion A :
Aussage B ∈ .
A
lB
n
→
lB
mit n ∈
lN
0
gibt es eine logisch äquivalente
Der folgende Satz stellt Spezialfälle zusammen.
Satz 2.41
Allgemeingültige und
widersprüchliche
Normalformen
(1)
(2)
(3)
(4)
(5)
(6)
Eine DNF ist widersprüchlich genau dann, wenn in jedem K-Term wenigstens
eine Variable negiert und unnegiert, oder 0 vorkommt.
Eine KNF ist allgemeingültig genau dann, wenn in jedem D-Term wenigstens
eine Variable negiert und unnegiert, oder 1 vorkommt.
Eine KDNF ist allgemeingültig genau dann, wenn alle 2n Minterme in ihr vorkommen.
Eine KDNF ist widersprüchlich genau dann, wenn sie eine leere Disjunktion
von Mintermen ist.
Eine KKNF ist allgemeingültig genau dann, wenn sie eine leere Konjunktion
von Maxtermen ist.
Eine KKNF ist widersprüchlich genau dann, wenn alle 2n Maxterme in ihr vorkommen.
Nutzt man Normalformen zur Analyse von Aussagen, so gilt: Wegen Satz 2.41 (1) und
(4) eignen sich DNFen gut, um Widersprüche zu erkennen. Wegen Satz 2.41 (2) und (5)
eignen sich KNFen gut, um Tautologien zu erkennen.
Zum Abschluss des Abschnitts über die Aussagenlogik stellen wir die diskutierten
Beziehungen und Methoden der Transformation zwischen den verschiedenen Formen
von Aussagen zusammen.
Bild 2.4
Transformation der
Formen von Aussagen
Min-/Maxterme bilden
Wahrheitstabelle
kanonische Normalform
Belegungsmethode
W-/F-Belegungen bilden
interpretieren
Aussage mit
beliebigen Operationen
2.2
interpretieren
algebraisch
erweitern umformen vereinfachen
algebraisch umformen
Normalform
Prädikatenlogik
Die Prädikatenlogik ist eine Erweiterung der Aussagenlogik. Während die Aussagenlogik Aussagen als Ganzes betrachtet, zerlegt die Prädikatenlogik Aussagen in Bestandteile: Subjekte, Prädikate und quantifizierende Teile. Dadurch ist die Prädikatenlogik
beschreibungsmächtiger als die Aussagenlogik. In der Mathematik und der Informatik
ist die Prädikatenlogik unentbehrlich.
2.2.1
Einführung
Den Begriff „Aussage“ haben wir bisher lasch an Stellen benutzt, wo korrekterweise
„Aussageform“ stehen müsste. Worin unterscheiden sich Aussagen und Aussageformen?
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 44
2 Logik
1 ∈ {1, 2}
Aussage
ist eine Aussage, der wir eindeutig den Wahrheitswert wahr zuordnen können, da darin
als Operanden nur ein konstantes Element und eine konstante Menge vorkommen.
Dagegen ist
x∈Μ
Aussageform
keine Aussage, da wir weder über den Wert der Elementvariablen x noch die Elemente
der Mengenvariablen M etwas wissen. Es handelt sich um eine Aussageform; die darin
vorkommenden Variablen heißen freie Variablen. Dem Gebilde
Für x = 1 und M = {1, 2} gilt: x ∈ Μ
können wir den Wahrheitswert wahr zuordnen. Es handelt sich um eine Aussage; die
darin vorkommenden Variablen sind durch die Gleichungen x = 1 und M = {1, 2}
gebunden. Fortan unterscheiden wir freie und gebundene Variablen. Wir stellen fest:
l
l
l
Eine Aussageform entspricht einer Eigenschaft gewisser Objekte.
Eine Aussageform enthält mindestens eine freie Variable.
Aus einer Aussageform erhält man eine Aussage, indem man z.B. alle frei in ihr
vorkommenden Variablen mit einem Wert belegt.
Damit entspricht die Unterscheidung zwischen Aussageform und Aussage der zwischen einer Relation R und einem Element x ∈ R oder auch der zwischen einer Abbildung f und einem Bild f(x). Als Beispiel formalisieren wir die Aussageform
x ist eine Primzahl,
indem wir
prim(x) oder prim(.)
schreiben. Bezeichnen wir die Menge der Primzahlen mit Prim, so gilt
Prim = {x | x ist Primzahl} = {x | prim(x)}
sowie
Für alle x gilt: (x ∈ Prim ⇔ prim(x)).
Das Beispiel zeigt, dass sich Aussageformen mit genau einer freien Variablen und einstellige Relationen, also Teilmengen, bijektiv einander zuordnen lassen. Ähnlich gehen
wir bei Aussageformen mit mehreren freien Variablen vor, z.B.
Teilt := {(x, y) | teilt(x, y)} := {(x, y) | x teilt y};
Für alle x, y gilt: ((x, y) ∈ Teilt ⇔ teilt(x, y)).
Wir nutzen hier Groß-/Kleinschreibung, um zwischen der Relation und der Aussageform zu unterscheiden. Die Relation ist eine Menge, die Aussageform entspricht der
charakteristischen Funktion dieser Menge (→ Beispiel S. 1-28). Zur Vereinfachung
verzichten wir auf diese Unterscheidung: Wir identifizieren Relationen mit den ihnen
zugeordneten Aussageformen, also den charakteristischen Funktionen der Relationen,
und nennen sie Prädikate.
2.2.2
Definition 2.42
Prädikat
Belegung
Prädikate und Quantoren
Ein Prädikat (Aussageform, predicate) P ist eine n-stellige Relation auf einer Individuenmenge M. Statt (x1,.., xn) ∈ P schreiben wir bevorzugt P(x1,.., xn) (→ Definition
1.32 S. 1-31). Ein einstelliges Prädikat heißt auch Eigenschaft.
Aus Prädikaten entstehen Aussagen, indem wir alle Variablen mit Werten belegen, z.B.
prim(2), teilt(3, 4),
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
Quantifizierung
2 - 45
oder indem wir sie quantifizieren. Die Umgangssprache bietet dazu viele Möglichkeiten. Auf die Frage
Für wieviele x gilt prim(x)?
sind mögliche Antworten:
Quantor
Für kein x, ein x, mindestens ein x, höchstens ein x, zwei x, tausend x, wenige x,
gewisse x, ein paar x, manche x, einige x, viele x, fast alle x, alle x bis auf..., alle x,
beliebige x, jedes x, usw.
Diese sprachlichen Gebilde sind Quantoren. Der klassischen Logik genügen zwei
Quantoren:
l
l
der Allquantor (Generalisator) „für alle“, „für jedes“, als Symbol ∀ oder
der Existenzquantor (Partikularisator) „es existiert ein“, „es gibt ein“, „für mindestens ein“, als Symbol ∃ oder
Schreibweisen
∧;
∨.
Jeder Quantor bindet eine Individuenvariable. Die Symbole für die Quantoren erlauben
es, Ausdrücke kompakt zu notieren. Drei gleich bedeutende Schreibweisen sind z.B.:
(1)
Für alle x gilt: teilt(x, y).
∀x : teilt(x, y).
∧x teilt(x, y).
(2)
Es gibt ein x, sodass für alle y gilt: teilt(x, y).
∃x ∀y : teilt(x, y).
∨x ∧y teilt(x, y).
Freie und gebundene
Variable
Der Unterschied zwischen freien und gebundenen Variablen sei hier verdeutlicht. In
teilt(x, y)
sind x und y frei, in
{(x, y) | teilt(x, y)}
durch den Mengenkonstruktor „die Menge aller (x, y) mit der Eigenschaft“ gebunden.
In (1) ist x durch den Allquantor gebunden, y ist frei. In (2) ist x durch den Existenzquantor, y durch den Allquantor gebunden.
Klassifikation von
Aussagen
Die Rolle der Quantoren wird klar, wenn wir Aussagen klassifizieren.
1+1=2
ist eine singuläre Aussage.
x=x
ist eine generelle, allgemeingültige Aussageform, da sie für alle x gilt; ausgedrückt
durch
∀x : x = x.
Dagegen ist
y=x+1
eine existenzielle, erfüllbare Aussageform, da sie nur für gewisse x, y gilt; ausgedrückt
durch die Aussageformen
∃x : y = x + 1,
∃y : y = x + 1
oder Aussagen wie
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 46
2 Logik
∃x ∃y : y = x + 1,
∀x ∃y : y = x + 1.
Schließlich ist
x=x+1
eine widersprüchliche, unerfüllbare Aussageform, da sie für kein x gilt; ausgedrückt
durch ihr generelles Gegenteil
¬∃x : x = x + 1,
∀x : ¬x = x + 1, oder
∀x : x ≠ x + 1.
Aussageformen, die Variablen enthalten, werden also nur zusammen mit Quantoren zu
Aussagen. Anders formuliert: Mathematische Sätze ohne Quantoren können keine
Variablen enthalten, sie bleiben auf singuläre Aussagen beschränkt.
Quantorsymbole
Die Symbole ∀ und ∃, ein vertikal gespiegeltes A für den Allquantor und ein horizontal
gespiegeltes E für den Existenzquantor, ermöglichen die lineare Notation auf einer
∧
∨
Zeile. Die Symbole und , die den aussagenlogischen Operationssymbolen ∧ und ∨
gleichen, verdeutlichen wie eng der Allquantor „für alle“ mit der Konjunktion
„und...und...und...“, der Existenzquantor „für mindestens ein“ mit der Disjunktion
∧
∨
„oder...oder...oder...“ zusammenhängt. Gewissermassen sind
und
Abkürzungen
für Konjunktionen bzw. Disjunktionen mit ggf. unendlich vielen Faktoren, ähnlich wie
das Symbol eine Abkürzung für Summen mit vielen Summanden darstellt:
å
n
i=1
x i = x1 + ... + xn,
∧
Ai = A1 ∧ ... ∧ An,
∨
Ai = A1 ∨ ... ∨ An,
i ∈ { 1, …, n }
i ∈ { 1, …, n }
å
i∈I
xi .
∧
P(x),
∀x ∈ M : P(x).
∨
P(x),
∃x ∈ M : P(x).
x∈M
x∈M
∧, ∨ sind zwar suggestiver als ∀, ∃, aber nur in zweidimensionaler Notation gut lesbar. Da diese
mit unserem Textsystem relativ aufwändig zu schreiben ist, bevorzugen wir in diesem Skript
rein pragmatisch die lineare Notation mit ∀, ∃.
Abkürzungen
Oft nutzen wir abkürzende Schreibweisen, die quantifizierten Variablen gleichzeitig
eine Individuenmenge zuordnen. So ist
∀x ∈ M : P(x)
∃x ∈ M : P(x)
∀x ∈ M, y ∈ N
∃x ∈ M, y ∈ N
∀x, y ∈ M
∃x, y ∈ M
zu lesen als
zu lesen als
zu lesen als
zu lesen als
zu lesen als
zu lesen als
∀x : (x ∈ M P(x)),
∃x : (x ∈ M ∧ P(x)),
∀x ∈ M ∀y ∈ N,
∃x ∈ M ∃y ∈ N,
∀x ∈ M, y ∈ M,
∃x ∈ M, y ∈ M.
Damit formalisieren wir einige bekannte Definitionen:
Definition 1.2
Definition 1.10
M = N :⇔ ∀x : (x ∈ M ⇔ x ∈ N).
∩
M∈
Definition 1.26
M
M := {x |
∧M x ∈ M} = {x | ∀M ∈ M : x ∈ M}.
M∈
f heißt Abbildung von M in N :⇔
∀x ∈ M : (∃y ∈ N : (x, y) ∈ f ∧ ∀y, z ∈ N : ((x, y), (x, z) ∈ f y = z)).
Eine Abbildung ordnet jedem Urbild genau ein Bild zu. Der Existenzquantor drückt
nur „es gibt mindestens ein“ aus. Wie bei der Abbildung ist oft „es gibt genau ein“ aus-
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
2 - 47
zudrücken. „Genau ein“ ist äquivalent zu „mindestens ein“ und „höchstens ein“. Den
Sachverhalt „es gibt höchstens ein x mit der Eigenschaft P(x)“ beschreibt
∀x, y : ((P(x) ∧ P(y)) x = y)
Höchstens ein
relativ komplex. Deshalb verwendet man gern die Abkürzung
∃1x : P(x)
Genau ein
für
∃x : P(x) ∧ ∀x, y : ((P(x) ∧ P(y)) x = y).
Die Definition einer Abbildung lautet damit:
f heißt Abbildung von M in N :⇔ ∀x ∈ M ∃1y ∈ N : (x, y) ∈ f.
Definition 1.26
Nach dieser informalen Einführung konstruieren wir die Prädikatenlogik als formale
Sprache. Wie in 2.1 bei der Aussagenlogik legen wir das Alphabet, die Syntax und die
Semantik der Prädikatenlogik fest.
2.2.3
Alphabet der Prädikatenlogik
Wir betrachten die Variante der Prädikatenlogik erster Stufe mit Gleichheit und
Funktionsnamen.
l
l
l
l
Definition 2.43
Alphabet der
Prädikatenlogik
Prädikatenlogik bedeutet, Formeln aus Quantoren und Prädikaten zu bilden.
Erster Stufe bedeutet, nur Prädikate von Individuen zuzulassen. (Höhere Stufen
betrachten auch Prädikate von Prädikaten.)
Mit Gleichheit bedeutet, die durch das Gleichheitszeichen „=“ dargestellte Relation
als logische Grundrelation auf beliebigen Mengen aufzufassen und dazuzunehmen.
(Die Definition 1.5 S. 1-3 setzt den Begriff „für alle Eigenschaften“ und damit die
Prädikatenlogik zweiter Stufe voraus!)
Mit Funktionsnamen bedeutet, zusätzlich zu Prädikaten auch Funktionen einzuführen. Da Funktionen spezielle Relationen sind, gewinnt man keine Substanz, reduziert aber den Schreibaufwand und verbessert die Notation und Verständlichkeit der
Formeln. „=“ erlaubt es, aus Funktionsnamen gebildete Terme zu vergleichen. Gleichungen reichern die Formelmenge an.
Das Alphabet der Prädikatenlogik besteht aus
l
l
l
l
l
l
l
l
l
Namen für Individuenkonstanten, für die wir ggf. indizierte Kleinbuchstaben
vom Alphabetanfang verwenden: a, b, c, a1, a2,...;
Namen für Individuenvariablen, für die wir ggf. indizierte Kleinbuchstaben vom
Alphabetende verwenden: x, y, z, x1, x2,...;
Namen für n-stellige Funktionen mit n ∈
buchstaben ab f verwenden: f, g, h, f1, f2,...;
lN
, für die wir ggf. indizierte Klein-
Namen für n-stellige Prädikate mit n ∈ lN0, für die wir ggf. indizierte Großbuchstaben ab P verwenden: P, Q, R, P1, P2,...;
dem Gleichheitszeichen =;
den Konstanten 0, 1 der Aussagenlogik;
den Operationssymbolen ¬, ∧, ∨, , ⇔, <≠> der Aussagenlogik;
den Quantorsymbolen ∀ (Allquantor, „für alle“) und ∃ (Existenzquantor, „es
gibt ein“);
den Klammern „(“ und „)“ und dem Doppelpunkt „:“.
Gelegentlich sagen wir kurz Individuenvariable statt Individuenvariablenname oder
noch kürzer Variable.
An die Stelle der Individuenkonstantennamen könnten nullstellige Funktionsnamen treten. Das
wäre formal einfacher, aber Formeln wären schwerer lesbar.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 48
2 Logik
Die Namen a, b, c,... für Konstanten und x, y, z,... für Variablen führte Descartes ein.
2.2.4
Syntax der Prädikatenlogik
Die Sprache der Prädikatenlogik ist eine Menge von Wörtern über dem Alphabet der
Prädikatenlogik. Wie bei der Aussagenlogik konstruieren wir die Syntax dieser Sprache induktiv.
Definition 2.44
Termkalkül,
Prädikatenlogischer
Term
Die Menge der prädikatenlogischen Terme ist genau durch endlichmaliges Anwenden folgender Regeln gegeben:
(1)
atomare Terme
Jeder Individuenkonstantenname a, b, c, a1, a2,... und jeder Individuenvariablenname x, y, z, x1, x2,... ist ein prädikatenlogischer Term.
(2)
Funktionsterme
Ist f ein n-stelliger Funktionsname und sind t1,.., tn prädikatenlogische Terme,
so ist auch f(t1,.., tn) ein prädikatenlogischer Term.
Ein prädikatenlogischer Term t, der Teil eines prädikatenlogischen Terms s ist, heißt
Teilterm von s.
Beispiele
Nach den Syntaxregeln können wir prädikatenlogische Terme bilden, d.h. aus dem
Termkalkül ableiten, z.B.
a,
x,
f(a), f(x), f(a, b), f(a, x), f(x, y),
f(x, g(y, z)), f(g(a, x), h(b, y), z),
f(f(f(x))), f(g(h(x), y), i(z)).
konstanter atomarer Term
variabler atomarer Term
Funktionsterme
Die Teilterme des letzten Terms sind
f(g(h(x), y), i(z)),
g(h(x), y),
h(x),
x,
y,
i(z),
z.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
Definition 2.45
Formelkalkül,
Prädikatenlogische
Formel
2 - 49
Die Menge der prädikatenlogischen Formeln ist genau durch endlichmaliges
Anwenden folgender Regeln gegeben:
atomare Formeln
(1)
(2)
Gleichungen
Sind t und t´ prädikatenlogische Terme, so ist
t = t´
eine prädikatenlogische Formel.
Prädikatformeln
Sind P ein n-stelliger Prädikatname und t1,.., tn prädikatenlogische Terme, so
ist
P(t1,.., tn)
eine prädikatenlogische Formel.
aussagenlogische Formeln
(3)
(4)
atomare aussagenlogische Formeln
0 und 1
sind prädikatenlogische Formeln.
zusammengesetzte aussagenlogische Formeln
Sind ϕ und η prädikatenlogische Formeln, so sind auch
η), (ϕ ⇔ η), (ϕ <≠> η)
¬ϕ, (ϕ ∧ η), (ϕ ∨ η), (ϕ
prädikatenlogische Formeln.
quantifizierte Formeln
(5)
Sind x ein Individuenvariablenname und ϕ eine prädikatenlogische Formel, so
sind
∀x : ϕ und ∃x : ϕ
prädikatenlogische Formeln.
Eine prädikatenlogische Formel ϕ, die Teil einer prädikatenlogischen Formel η ist,
heißt Teilformel von η.
Beispiele
Nach den Syntaxregeln können wir prädikatenlogische Formeln bilden, d.h. aus dem
Formelkalkül ableiten, z.B. die atomaren Formeln
x = a, f(x, y) = g(z),
P(a), P(a, x), P(x, f(y, z)),
0
Gleichungen
Prädikatformeln
atomare aussagenlogische Formel
und die zusammengesetzten Formeln
¬x = a,
(f(a, x) = g(y) ∧ P(b, z)),
(∀x : f(x) = a ∨ ¬P(y, g(y))),
∃z : P(x, z)).
∃x : (∀y : f(x) = y
zusammengesetzte aussagenlogische Formeln
quantifizierte Formeln
Die echten Teilformeln der letzten Formel sind
∀y : f(x) = y
∀y : f(x) = y,
f(x) = y,
∃z : P(x, z),
P(x, z).
9.8.04
∃z : P(x, z),
© Karlheinz Hug, Hochschule Reutlingen
2 - 50
2 Logik
Diese Formeln sind inhaltsleer. Sie füllen sich mit Inhalt durch Festlegungen ihrer
Semantik, indem ihnen Individuenmengen und konkrete Funktionen und Prädikate
zugeordnet werden (→ 2.2.5).
Wie bei der Aussagenlogik ist sicherzustellen, dass Formeln eindeutig zerlegbar sind.
Satz 2.46
Eindeutigkeit der
Syntaxdefinition
Jede prädikatenlogische Formel lässt sich auf genau eine Weise aus atomaren
Bestandteilen konstruieren.
Der Satz beruht auf der Klammerung von Teilformeln. Die Syntax ist redundant. Der
Doppelpunkt „:“ ist für die Eindeutigkeit nicht notwendig, er soll als syntaktischer
Zucker die Lesbarkeit verbessern; er liest sich als „gilt“.
2.2.4.1
Klammerung und Vorrangregeln
Die Syntax definiert die Prioritätsstufen
=,
{∀, ∃, ¬},
{∧, ∨,
, ⇔, <≠>}.
von hoch nach niedrig. Wir ergänzen sie (konsistent mit 2.1.5.2) zu
=,
Vorrangregeln
{∀, ∃, ¬},
{∧, ∨,
},
{⇔, <≠>}.
von hoch nach niedrig, um Klammern zu sparen. Außerdem lassen wir
l
l
l
Außenklammern,
überflüssige Klammern bei assoziativen Operationen, und
Doppelpunkte vor Quantoren
weg. Aus
Beispiele
(∀x : (∃y : ((ϕ ∧ η) ∧ κ)
∀z : λ) ∨ µ)
ergibt sich durch Entfernen der Außen- und Assoziativklammern
∀x : (∃y : (ϕ ∧ η ∧ κ)
∀z : λ) ∨ µ.
Man erkennt, dass die „:“ redundant sind. Aus
∃x : ∀y : ϕ
ergibt sich
∃x ∀y : ϕ.
2.2.4.2
Syntaktische Eigenschaften von Variablen und Formeln
Wirkungsbereich
In einer quantifizierten Formel
∀x : ϕ
oder ∃x : ϕ
heißt ϕ der Wirkungsbereich des Quantors ∀ bzw. ∃.
Freie und gebundene
Variable
Der Zustand einer Variablen ist induktiv über den Aufbau der Formeln definiert: In atomaren Formeln sind alle darin vorkommenden Variablen frei, keine ist gebunden.
Aussagenlogische Operationen belassen den Zustand der Variablen. Ist q ∈ {∀, ∃}, so
ist x (durch q) gebunden (quantifiziert) und nicht frei in qx : ϕ.
Quantorenfreie und
geschlossene Formel
Eine Formel heißt quantorenfrei (offen), wenn sie keine Quantoren; geschlossen,
wenn sie keine freien Variablen enthält.
Beispiele
(a = b) ∧ 0
P(x, y)
∀x ∃y : P(x, y)
∀x : P(y)
© Karlheinz Hug, Hochschule Reutlingen
quantorenfrei, geschlossen
x, y frei, quantorenfrei, nicht geschlossen
x, y gebunden, nicht quantorenfrei, geschlossen
x gebunden, y frei, nicht quantorenfrei, nicht geschlossen
9.8.04
2.2 Prädikatenlogik
2 - 51
Geschlossene Formeln entsprechen Aussagen, sie können falsch oder wahr sein. Nicht
geschlossene Formeln entsprechen Prädikaten ihrer freien Variablen. Allgemein gilt:
Satz 2.47
Binden freier Variablen
Sind ϕ = ϕ(x1,.., xn) eine prädikatenlogische Formel und x1,.., xn mit n ∈ lN die freien
Variablen in ϕ, so sind für i = 1,.., n
∀x : ϕ(x1,.., xi−1, x, xi+1,.., xn) und
∃x : ϕ(x1,.., xi−1, x, xi+1,.., xn)
prädikatenlogische Formeln mit den freien Variablen x1,.., xi−1, xi+1,.., xn und der
gebundenen Variablen x.
Beispiel
Die Eigenschaft natürlicher Zahlen, Primzahl zu sein, lässt sich so definieren:
prim(x) := x ∈ lN ∧ x ≠ 1 ∧ ∀y ∈ lN : (teilt(y, x)
(y = 1 ∨ y = x)).
Die Formel ist nicht geschlossen, da x frei vorkommt.
Abschlüsse einer
Formel
Sind ϕ eine prädikatenlogische Formel und x1,.., xn die freien Variablen in ϕ, so heißen
∀x1 ... ∀xn : ϕ
universeller Abschluss und
∃x1 ... ∃xn : ϕ
existenzieller Abschluss
von ϕ.
Bereinigte Formel
Beispiele
Eine Variable kann in einer Formel sowohl frei als auch gebunden - ja sogar mehrfach
gebunden - vorkommen. Solche Formeln sind weniger verständlich als bereinigte Formeln. Dabei heißt eine prädikatenlogische Formel ϕ bereinigt, wenn jede Variable in ϕ
entweder frei oder einfach gebunden vorkommt, d.h. alle gebundenen Variablen von
den freien Variablen verschieden sind und keine Variable durch mehrere Quantoren
gebunden ist.
∃x ∀y : (P(x, y) ∧ ∃z : Q(y, z))
bereinigt
P(x, y) ∧ ∀x : (Q(x) ∧ ∃y ∀z : (R(y, z) ∧ ∃x : S(x, z))) nicht bereinigt
Die letzte Formel wirft das Problem auf, welches der drei x in S(x, z) und welches der
zwei y in R(y, z) gemeint ist. Die vernünftige Regel lautet:
Bindungsregel
Kommt eine Variable x in einer Formel in mehreren Zuständen vor, so ist an jeder
Stelle der Zustand wirksam, der durch den nächsten Quantor bewirkt ist, falls x
gebunden ist, sonst ist x frei.
Damit ist in S(x, z) das an ∃x gebundene x, in R(y, z) das an ∃y gebundene y wirksam.
Um eine Formel verständlicher zu machen - zu bereinigen -, kann man gebundene
Variablen geeignet umbenennen. Dabei darf sich die Bedeutung einer Formel nicht
ändern. Deshalb ist zuvor die Semantik von Formeln zu klären.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 52
2.2.5
2 Logik
Semantik der Prädikatenlogik
Die Semantik der Prädikatenlogik definieren wir analog zur Semantik der Aussagenlogik über Bindungen und Belegungen der Namen und Interpretationen der Formeln, die
wir induktiv über den Aufbau der Formeln konstruieren.
Individuenmenge
Zuerst ist eine nicht leere Individuenmenge (Universum) M zu wählen.
2.2.5.1
Bindung
Die Bindung zu M ordnet allen Namen, Termen und Formeln Mengen zu.
l
l
l
Alle Individuenkonstantennamen werden an M gebunden:
a, b, c, a1, a2,... ∈ M.
Alle Individuenvariablennamen werden an M gebunden:
x, y, z, x1, x2,... ∈ M.
n
Alle n-stelligen Funktionsnamen werden an M
(M )
gebunden, d.h.
f, g, h, f1, f2,... stellen Funktionen Mn → M dar.
l
Alle n-stelligen Prädikatnamen werden an P(M n) gebunden, d.h.
P, Q, R, P1, P2,... stellen Prädikate auf M dar.
Als Folge davon gilt:
l
l
2.2.5.2
Definition 2.48
Belegung
Alle Funktionsterme werden an M gebunden, z.B.
f(t1,.., tn) ∈ M.
Alle prädikatenlogischen Formeln ϕ werden an lB = {0, 1} gebunden, d.h.
ϕ ∈ lB.
Belegungen und Interpretationen
Eine Belegung beleg = beleg M = (strukt, wert)M ordnet Namen Werte zu; sie setzt
sich aus zwei Teilen zusammen: Die Strukturierung strukt = struktM ordnet
l
l
l
dem Individuenkonstantennamen a einen Wert strukt(a) ∈ M,
dem n-stelligen Funktionsnamen f eine konkrete Funktion strukt(f) : Mn → M,
dem n-stelligen Prädikatnamen P ein konkretes Prädikat strukt(P) ⊆ Mn
zu, die Variablenbelegung wert = wertM
l
Passende Belegung
dem freien Individuenvariablennamen x einen Wert wert(x) ∈ M.
Interessant sind nur Belegungen, die zu einer gegebenen Menge F von prädikatenlogischen Formeln passen. Eine Belegung beleg heißt passend zu F, wenn gilt:
für alle ϕ ∈ F und alle in ϕ vorkommenden Namen ist beleg definiert.
Es ist belanglos, wie beleg für nicht in F vorkommende Namen definiert ist.
Belegung und Struktur
Die Wahl einer Individuenmenge M und einer passenden Strukturierung bestimmt eine
mathematische Struktur
M,
a1,.., ak, f1,.., fm, R1,.., Rn
(→ Definition 1.34 S. 1-32). Die Anwendung einer Strukturierung auf die Individuenkonstanten-, Funktions- und Prädikatnamen einer prädikatenlogischen Formel liefert
eine Strukturformel. Die Syntax der Prädikatenlogik prägt die Syntax der Strukturformeln, doch gelten für Strukturen oft auch andere Syntaxregeln, z.B. Infix- oder Postfix© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
2 - 53
statt Funktionsschreibweise. Bei der Interpretation prädikatenlogischer Formeln wandelt man diese in entsprechende Formeln der Struktur.
Beispiel 2.6
Belegung und
Interpretation
Als Individuenmenge wählen wir P(lN). Die Strukturierung
strukt(f) = ∩ (Durchschnittsoperation, zweistellig),
strukt(P) = ⊆ (Teilmengenrelation, zweistellig)
bestimmt die Struktur P(lN), ∩, ⊆. Damit wandelt sich die prädikatenlogische Formel
P(f(x, y), y)
zur Strukturformel in Funktionsschreibweise
⊆(∩(x, y), y)
und in der üblichen Infixschreibweise zu
x ∩ y ⊆ y.
Die Variablenbelegung wert(x) = {1, 2}, wert(y) = {2, 3, 4} liefert die Aussage
{1, 2} ∩ {2, 3, 4} ⊆ {2, 3, 4},
die wir als wahr interpretieren. Aus der prädikatenlogischen Formel
∀x ∀y : P(f(x, y), y)
ergibt sich die Strukturformel
∀x ∀y : x ∩ y ⊆ y,
mit der Bindung der Variablen an die Individuenmenge
∀x ∈ P(lN) ∀y ∈ P(lN) : x ∩ y ⊆ y,
vereinfacht
∀x, y ∈ P(lN) : x ∩ y ⊆ y,
∀x, y ⊆ lN : x ∩ y ⊆ y,
mit an die bei Mengen üblichen Großbuchstaben angepassten Namen
∀M, N ⊆ lN : M ∩ N ⊆ N,
also die auf Teilmengen von lN spezialisierte Formel von Satz 1.13 (1) S. 1-9. Belegen
wir M, N mit beliebigen Mengen, so ist die Inklusion M ∩ N ⊆ N stets wahr. Die Formel ist also wahr und damit ein Satz. Wählen wir statt lN eine beliebige Menge G, so
ergibt sich mit der Individuenmenge P(G) der allgemeine Satz.
p
Wie in der Aussagenlogik beschränken wir uns auf Interpretationen, die zu einer gegebenen Formelmenge F passen.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 54
Definition 2.49
Interpretation
2 Logik
Sind F eine Menge prädikatenlogischer Formeln und beleg = belegM eine zu F passende Belegung, so ist die Interpretation I = IM, beleg von F zu M und beleg induktiv
für die Formeln definiert, die mit den in allen ϕ ∈ F vorkommenden Namen konstruierbar sind:
(1)
(2)
(3)
atomare Terme
I(a) := beleg(a) für Individuenkonstantennamen a,
I(x) := beleg(x) für Individuenvariablennamen x.
Funktionsterme
I(f(t1,.., tn)) := beleg(f)(I(t1),.., I(tn))
für n-stellige Funktionsnamen f und prädikatenlogische Terme t1,.., tn.
Gleichungen
I(t = t´) :=
(4)
1
0
falls I(t) = I(t′)
sonst
für prädikatenlogische Terme t, t´.
Prädikatformeln
I(P(t1,.., tn)) :=
1
0
falls ( I ( t 1 ), …, I ( tn ) ) ∈ beleg ( P )
sonst
für n-stellige Prädikatnamen P und prädikatenlogische Terme t1,.., tn.
(5)
(6)
aussagenlogische Formeln
werden wie in der Aussagenlogik interpretiert (→ Definition 2.5).
quantifizierte Formeln
Es sei x ein Individuenvariablenname und ϕ eine prädikatenlogische Formel.
Zu w ∈ M sei beleg[x→w] die Belegung, die mit beleg an allen Stellen bis auf
höchstens x übereinstimmt, aber an der Stelle x den Wert w annimmt:
beleg[x→w](y) :=
w
beleg ( y )
falls y = x
sonst
für Individuenvariablennamen y.
I[x→w] sei die Interpretation zu beleg[x→w]. Damit definieren wir:
I(∀x : ϕ) :=
1
0
I(∃x : ϕ) :=
1
0
falls für alle w ∈ M gilt: I [ x → w ] ( ϕ ) = 1
sonst
,
falls es ein w ∈ M gibt, sodass I [ x → w ] ( ϕ ) = 1
sonst
.
Eine Interpretation ordnet also prädikatenlogischen Termen Werte der Individuenmenge und prädikatenlogischen Formeln Wahrheitswerte zu. Die Klammern sorgen
wieder dafür, dass Formeln von innen nach außen interpretiert werden. Alle in einer
Formel vorkommenden Konstanten und Variablen werden belegt, Teilterme und -formeln werden der Klammerung folgend berechnet.
Aussagenlogik und
Prädikatenlogik
Aus syntaktischer Sicht erweitert die Prädikatenlogik die Aussagenlogik. Schränkt man
die Prädikatenlogik ein, indem man keine
l
l
l
Individuenkonstanten,
Individuenvariablen,
Funktionen,
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
2 - 55
l
l
n-stelligen Prädikate mit n > 0, und
Quantoren
zulässt, so erhält man die Aussagenlogik. Die nullstelligen Prädikate entsprechen dann
den Aussagevariablen; die Belegung ∅ entspricht 0, die Belegung {∅} entspricht 1
(→ S. 1-31).
Aus semantischer Sicht spezialisiert die Prädikatenlogik die Aussagenlogik, denn zu
Interpretationen gehören nicht nur Abbildungen in {0, 1}, sondern auch Zuordnungen
von Strukturen aus Individuenmengen, Funktionen und Relationen. Die Prädikatenlogik spezialisiert sich auf Strukturen und formalisiert für diese tiefer gehende Aussagen
als es die Aussagenlogik vermag.
2.2.5.3
Erläuterungen
Wozu befassen wir uns mit der Prädikatenlogik? Sie dient uns dazu, mathematische
und informatische Strukturen zu analysieren und zu konstruieren. InformatikerInnen
stoßen in Literatur, Sprachen und Systemen immer wieder auf prädikatenlogische Elemente, die sie lesen und verstehen können müssen. InformatikerInnen müssen Sachverhalte prägnant und exakt beschreiben können, z.B. dass eine Liste von Dateinamen sortiert ist. Die Prädikatenlogik ist dabei ein nützliches, ja unverzichtbares Mittel. Es geht
also um praktisches Anwenden der Prädikatenlogik, nicht um das Formalisieren der
Logik als Selbstzweck. Da auf einem Rechner laufende Programme stets mathematische, formale Konstrukte sind, muss die InformatikerIn zwei Fähigkeiten besitzen:
l
l
informal beschriebene Sachverhalte formalisieren und daraus Programme konstruieren,
in Programmen formalisierte Sachverhalte verbalisieren, um sie sich und anderen
verständlich zu machen.
Das Formalisieren mittels der Prädikatenlogik ist eine gute Denkschule. In den folgenden Kapiteln dieses Skripts nutzen wir prädikatenlogische Formeln, um andere Gebiete
der Mathematik und theoretischen Informatik formalisiert darzustellen. Dabei sind wir,
was den Formalismus betrifft, nicht allzu streng und kombinieren formale und informale Elemente. Andererseits erweitern wir unsere formal definierte Prädikatenlogik
pragmatisch:
l
l
l
Wir benutzen direkt Namen und Notationen des jeweiligen Gebiets in Strukturformeln, sodass wir keine Belegungen angeben müssen.
Statt mit einer Individuenmenge M haben wir es oft mit mehreren Individuenmengen M 1,.., Mn zu tun.
Daher sind die betrachteten Strukturen nicht homogen, sondern heterogen. Funktionen und Relationen sind nicht auf n-fachen Produkten von M, sondern auf gemischten Produkten von M1,.., Mn definiert.
Die Eigenschaften und Rechenregeln prädikatenlogischer Formeln lassen sich pragmatisch leicht auf diese Erweiterungen übertragen; der Aufwand, dies zu formalisieren,
wäre eher technischer Art und unangemessen.
2.2.6
Prädikatenlogische Formeln in Programmiersprachen
Prädikatenlogische Konstrukte finden sich in logikbasierten Programmiersprachen wie
Prolog, aber auch Spezifikationssprachen wie Z. Beispielsweise bietet Prolog Möglichkeiten, die bis zur Prädikatenlogik zweiter Stufe reichen.
Beispiel
Im Folgenden betrachten wir drei Sprachen. Ihre Ausdrucksmächtigkeit zeigen wir beispielhaft anhand der geschlossenen Formel
sorted :⇔ ∀i, k ∈ {1,.., count} ⊆ lN : (i ≤ k item(i) ≤ item(k))
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 56
2 Logik
mit der Konstanten count ∈ lN und der Funktion item : {1,.., count} → M für eine endliche Folge (Reihung, Liste). Die Formel drückt aus, dass die Folge sortiert ist. Literaturhinweise zu den Sprachen gibt [32].
Eiffel
Eiffel ist eine objektorientierte Spezifikations- und Implementationssprache, die auf der
Methode der Spezifikation durch Vertrag basiert. Die Aussagenlogik, um spezielle
Konstrukte erweitert, erscheint in Klasseninvarianten, Vor- und Nachbedingungen,
Schleifeninvarianten, allgemeinen Zusicherungen und algorithmischen Steuerkonstrukten. Prädikatenlogische Formeln ermöglicht das mächtige Konstrukt Agenten, das u.a.
Quantoren modellieren kann. Ausdrücke mit einem Quantor sind gut lesbar; unser Beispiel, bei dem zwei Inline-Agenten die beiden Allquantoren implementieren, liest sich
wegen seiner Länge weniger leicht:
sorted : BOOLEAN is
-- Are the elements in the list totally ordered?
ensure
Result = (1 |..| count).for_all (i : INTEGER |
(1 |..| count).for_all (k : INTEGER | i <= k implies item (i) <= item (k)))
BON
Die Business Object Notation (BON) kombiniert eine objektorientierte Analyse- und
Entwurfsmethode mit einer Modellierungssprache. BON konzentriert sich darauf,
Klassenarchitekturen zu modellieren und das Verhalten der Klassen zu spezifizieren.
Dabei ist die Vertragsmethode zentral, BON erweitert sie zu einer Analysemethode. In
Kooperation mit Eiffel ermöglicht BON einen nahtlosen, reversiblen, werkzeuggestützten Entwicklungsprozess von der Analyse über die Implementierung bis zum Betrieb.
Die textuelle Vertragssprache ähnelt der Eiffel-Vertragssprache. Darüber hinaus integriert BON Elemente der Mengenlehre und der Prädikatenlogik erster Stufe in einer
Form, die der üblichen mathematischen Notation nahe kommt und ihrer Semantik entspricht. Unser Beispiel ist in grafischer BON-Vertragssprache elegant formuliert:
sorted : BOOLEAN
|!| Result = ∀i, k ∈ {1 .. count} l (i ≤ k → item (i) ≤ item (k))
BON kann mittels der Prädikatenlogik alle Arten von Beziehungen zwischen Klassen Assoziation, Komposition, Aggregation - einschließlich Kardinalitäten ausdrücken,
ohne dazu weitere Modellierungskonstrukte zu benötigen.
OCL
Die Object Constraint Language (OCL) ist die Vertragssprache der Unified Modeling
Language (UML) in der von der Object Management Group (OMG) 1997 standardisierten Version 1.1. OCL soll eine formale Sprache sein, die für Menschen ohne mathematischen Hintergrund verständlich und benutzbar ist. Deshalb ähnelt die Syntax von
OCL mehr der einer Programmiersprache als der mathematischen Notation. Formulieren wir unser Beispiel mit OCL:
SortableList::sorted () : Boolean
post:
result = Integer.allInstances->forAll (i, k |
1 <= i and i <= k and k <= count implies item (i) <= item (k))
Die eher schwerfällig wirkende Form lässt offen, was leichter lernbar ist: die Prädikatenlogik oder OCL?
2.2.7
Eigenschaften prädikatenlogischer Formeln
Die in 2.1.7 eingeführten Eigenschaften von Aussagen lassen sich analog für prädikatenlogische Formeln definieren. Bild 2.3 und Korollar 2.7 gelten analog. Differenzierte
Eigenschaften ermöglicht der Modellbegriff. Wir geben die Definitionen in verschiedenen Formulierungen an.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
Definition 2.50
Modell
Allgemeingültigkeit
Erfüllbarkeit
2 - 57
F sei eine Menge prädikatenlogischer Formeln.
Ist I = IM, strukt, wert eine Interpretation von F zu M und belegM = (strukt, wert)M mit
I(ϕ) = 1 für alle ϕ ∈ F, so heißt I ein M, strukt-Modell oder kurz Modell für F, und
F gilt in I.
F heißt gültig in der Struktur M, strukt,
wenn für jede passende Variablenbelegung wert die Interpretation IM, strukt, wert ein
M, strukt-Modell für F ist,
d.h. wenn für jede passende Variablenbelegung wert und jedes ϕ ∈ F gilt:
IM, strukt, wert(ϕ) = 1.
F heißt erfüllbar in der Struktur M, strukt,
wenn es ein M, strukt-Modell für F gibt,
d.h. wenn für wenigstens eine passende Variablenbelegung wert und jedes ϕ ∈ F gilt:
IM, strukt, wert(ϕ) = 1.
F heißt allgemeingültig, wenn F in jeder Interpretation gilt,
d.h. wenn F in jeder Struktur M, strukt gültig ist,
d.h. wenn jede Interpretation von F ein Modell für F ist,
d.h. wenn für jede Interpretation I = IM, strukt, wert und jedes ϕ ∈ F gilt: I(ϕ) = 1.
F heißt erfüllbar, wenn es eine Interpretation gibt, in der F gilt,
d.h. wenn es eine Struktur M, strukt gibt, in der F erfüllbar ist,
d.h. wenn es ein Modell für F gibt,
d.h. wenn für wenigstens eine Interpretation I = IM, strukt, wert und jedes ϕ ∈
I(ϕ) = 1.
F gilt:
F heißt widersprüchlich, wenn F in keiner Interpretation gilt.
Falls F = {ϕ}, so hat ϕ die Eigenschaften von F.
Beispiel
Seien
ϕ
= ∃y : x = f(y, y)
strukt(f) = + (Addition).
und
Mit M = lN ergibt der Interpretationsteil I
lN
,+
die lN, +-Strukturformel
∃y ∈ lN : x = y + y.
Da es (zu x = 1) kein y ∈ lN gibt mit 1 = y + y, ist ϕ nicht gültig in lN, +. Da es zu
jedem geraden x ∈ lN (also x = 2z mit z ∈ lN) ein y ∈ lN gibt mit x = y + y, ist ϕ erfüllbar
in lN, +. Es gibt also Variablenbelegungen wert, für die die Interpretationen I , +, wert
lN , + -Modelle für ϕ sind.
lN
Mit M = ! ergibt der Interpretationsteil I!, + die !, +-Strukturformel
∃y ∈ ! : x = y + y.
Da es zu jedem x ∈ ! ein y ∈ ! gibt mit x = y + y (nämlich y = x/2), ist ϕ gültig in
!, + . Für alle Variablenbelegungen wert sind die Interpretationen I! , +, wert !, + Modelle für ϕ.
Damit ist ϕ ist erfüllbar, aber nicht allgemeingültig.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 58
Satz 2.51
Abschlüsse
Allgemeingültigkeit
Erfüllbarkeit
Definition 2.52
Logische Äquivalenz
2 Logik
Sind ϕ eine prädikatenlogische Formel und x1,.., xn die freien Variablen in ϕ, so gilt:
(1)
ϕ ist allgemeingültig genau dann, wenn ihr universeller Abschluss
∀x1 ... ∀xn : ϕ allgemeingültig ist.
(2)
ϕ ist erfüllbar genau dann, wenn ihr existenzieller Abschluss ∃x1 ... ∃xn : ϕ
erfüllbar ist.
Zwei prädikatenlogische Formeln ϕ, η heißen logisch äquivalent, wenn die Äquivalenz ϕ ⇔ η allgemeingültig ist:
ϕ≡η
:⇔
ϕ ⇔ η ist allgemeingültig.
Ersetzungsregeln
Korollar 2.10 gilt ebenso analog wie die Ersetzungsregeln Satz 2.8, Satz 2.11 und Satz
2.12. Durch den Allquantor gebundene Variablen darf man durch Werte ersetzen und
den Allquantor weglassen (→ Satz 2.59 (4)).
Beispiel
Aus
∀x ∈ ! ∃y ∈ ! : x + y = 0
ergibt sich z.B.
∃y ∈ ! : 1 + y = 0.
Zusätzlich darf man freie Variablen durch geeignete Terme ersetzen, muss aber dabei
auf gebundene Variablen achten. Wir führen eine Notation für die Ersetzung (Substitution) ein:
ϕ[x → t]
|
bezeichnet die Formel, die aus der Formel ϕ entsteht, indem jedes freie Vorkommen
der Variablen x durch den Term t ersetzt wird.
Satz 2.53
Substitutionslemma
Für jede prädikatenlogische Formel ϕ, jede in ϕ freie Variable x und jeden Term t, der
keine in ϕ gebundene Variable enthält, sagt ϕ dasselbe über x aus wie ϕ[x → t] über t.
|
Durch Ersetzen einer freien Variablen durch einen Term wird eine Formel spezieller, da
beim Belegen der Variablen an der Ersetzungsstelle nur noch spezielle Werte auftreten.
Beispiel
In
∃x ∈ ! : x + y = 0
darf man y durch z2 + 1 ersetzen:
∃x ∈ ! : x + (z2 + 1) = 0,
L
L
aber nicht durch x2 + 1:
∃x ∈ ! : x + (x2 + 1) = 0,
da x gebunden ist und dadurch eine falsche Formel entsteht. Ebenso wenig darf man
das gebundene x durch z2 + 1 ersetzen:
∃x ∈ ! : z2 + 1 + y = 0.
Man darf jedoch gebundene Variablen umbenennen, falls dadurch keine freie Variable
entfällt.
Satz 2.54
Gebundene
Umbenennung
Für jede prädikatenlogische Formel ϕ, in der die Variable y nicht vorkommt, gilt:
(1)
(2)
∀x : ϕ
∃x : ϕ
© Karlheinz Hug, Hochschule Reutlingen
≡
≡
∀y : ϕ[x → y]
∃y : ϕ[x → y]
|
|
9.8.04
2.2 Prädikatenlogik
2 - 59
F
Beweis mittels Substitutionslemma Satz 2.53.
Durch systematisches gebundenes Umbenennen mit noch nicht vorkommenden Variablen kann man Formeln bereinigen.
Satz 2.55
Bereinigte Form
Beispiele
Zu jeder prädikatenlogischen Formel gibt es eine logisch äquivalente bereinigte Formel.
∀x : P(x, y)
ist in
∀z : P(z, y)
L
umbenennbar, aber nicht in
∀y : P(y, y),
da das zuvor freie y jetzt gebunden ist. In
∀x : P(x, y) ∧ Q(x)
kommt x in P(x, y) durch ∀ gebunden und in Q(x) frei vor. Durch Umbenennen wird
die Formel bereinigt und verständlicher:
Programmiersprachen
2.2.8
∀z : P(z, y) ∧ Q(x).
Zwischen freien und gebundenen Variablen in Formeln und globalen Variablen und
formalen Parametern von Prozeduren und Funktionen in Programmiersprachen bestehen Ähnlichkeiten. Formale Parameter kann man ohne Auswirkung auf die Umgebung
der Prozedur umbenennen, während sich das Umbenennen einer globalen Variablen
weit reichend auswirken kann.
Prädikatenlogische Rechenregeln
Die in 2.1.8 betrachteten aussagenlogischen Rechenregeln bleiben in der Prädikatenlogik gültig, sodass wir uns auf Regeln mit quantifizierten Formeln beschränken können.
Die folgenden Rechenregeln für prädikatenlogische Formeln sind allgemeingültig und
enthalten logisch äquivalente Formeln.
Satz 2.56
Negation
Für beliebige Variablen x und prädikatenlogische Formeln ϕ gilt:
(1)
(2)
(3)
(4)
¬∀x : ϕ
¬∀x : ¬ϕ
¬∃x : ϕ
¬∃x : ¬ϕ
≡
≡
≡
≡
∃x : ¬ϕ.
∃x : ϕ.
∀x : ¬ϕ.
∀x : ϕ.
Regeln von de Morgan
Aufgrund dieser Negierungssätze lässt sich der Allquantor mittels Negation und Existenzquantor, der Existenzquantor mittels Negation und Allquantor ausdrücken.
Beispiel
Alle MKI-StudentInnen haben eine eigene Webseite. Negiert: Es gibt eine MKI-StudentIn, die keine eigene Webseite hat.
Analog zur Aussagenlogik gilt auch in der Prädikatenlogik ein Dualitätsprinzip.
Definition 2.57
Duale Formel
Ist ϕ eine prädikatenlogische Formel, in der nur die Operationen ¬, ∧, ∨ und Quantoren vorkommen, dann entsteht
die zu ϕ strikt duale Formel ϕ durch Negieren aller atomaren Teilformeln und
gegenseitiges Austauschen von 0 und 1, von ∧ und ∨, sowie von ∀ und ∃;
die zu ϕ duale Formel ϕ∗ durch gegenseitiges Austauschen von 0 und 1, von ∧ und
∨, sowie von ∀ und ∃.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 60
2 Logik
ϕ∗ entsteht aus ϕ durch Negieren jeder atomaren Teilformel, und umgekehrt.
Beispiel
∀x ∃y : (f(x) = g(y) ∧ P(x, y)) ∨ 0,
∃x ∀y : (¬f(x) = g(y) ∨ ¬P(x, y)) ∧ 1
sind strikt dual zueinander,
∀x ∃y : (f(x) = g(y) ∧ P(x, y)) ∨ 0,
∃x ∀y : (f(x) = g(y) ∨ P(x, y)) ∧ 1
sind dual zueinander.
Wegen Satz 2.28 (1) schränkt die Voraussetzung von Definition 2.57 und des folgenden
Dualitätstheorems nicht echt ein.
Theorem 2.58
Dualitätstheorem der
Prädikatenlogik
Für prädikatenlogische Formeln ϕ, η, in denen nur die Operationen ¬, ∧, ∨ und
Quantoren vorkommen, gilt:
(1)
(2)
ϕ ≡ ¬ϕ.
ϕ≡η
genau dann, wenn
ϕ ≡ η.
(3)
ϕ≡η
ϕ∗ ≡ η∗.
genau dann, wenn
Beweis. (1) Sei ϕ wie vorausgesetzt. Durch wiederholtes Anwenden der Regeln von de
Morgan Satz 2.14 (3) und Satz 2.56 wandert ¬ vor zusammengesetzten Teilformeln
nach innen und ∧ und ∨ tauschen sich aus, vor Quantoren wandert ¬ nach innen und ∀
und ∃ tauschen sich aus. (Ein ausführlicher Beweis verfährt induktiv über den Aufbau
von Formeln.)
(2) und (3) analog zu Theorem 2.16 (2) und (3).
F
(1) bedeutet, dass striktes Dualisieren einer Formel dasselbe bewirkt wie Negieren. Das
Dualitätstheorem reduziert den Aufwand zum Beweisen der folgenden Sätze.
Satz 2.59
Quantoren tauschen,
entfernen, einführen
L
Beispiel
Für beliebige Variablen x, y, prädikatenlogische Formeln ϕ und Prädikate P gilt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
∀x ∀y : ϕ
≡
∃x ∃y : ϕ
≡
∃x ∀y : ϕ
∀x : P(x)
P(x)
∀x ∀y : P(x, y) ∃x ∀y : P(x, y) ∃x : P(x, x)
∀y ∀x : ϕ.
∃y ∃x : ϕ.
∀y ∃x : ϕ.
P(y).
∃y : P(y).
∀x : P(x, x).
∃x : P(x, x).
∃x ∃y : P(x, y).
Aufgrund der Vertauschbarkeit gleichartiger Quantoren sind die auf S. 46 eingeführten
Abkürzungen gerechtfertigt.
Man beachte, dass die Umkehrung von (3), ∀x ∃y : ϕ ∃y ∀x : ϕ, nicht gilt!
Jeder Mensch hat einen Vater (von gentechnischen Experimenten sehen wir ab). Es gibt
aber keinen Vater aller Menschen (von religiösen Vorstellungen sehen wir ab).
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.2 Prädikatenlogik
Satz 2.60
Quantoren vereinen,
trennen
L
Beispiel
Satz 2.61
Quantoren verschieben
2 - 61
Für beliebige Variablen x und prädikatenlogische Formeln ϕ, η gilt:
(1)
(2)
(3)
(4)
(5)
(6)
≡
≡
≡
∀x : (ϕ ∧ η).
(∃x : ϕ ∧ ∃x : η).
∃x : (ϕ ∨ η).
(∀x : (ϕ ∨ η)).
∃x : (ϕ η).
(∀x : (ϕ η)).
Man beachte, dass die Umkehrungen von (2), (4) und (6) nicht gelten!
Angenommen, Alice besitzt einen Apple und Bob einen PC. Daraus folgt nicht, dass
jemand sowohl einen Apple als auch einen PC besitzt.
Für beliebige Variablen x und prädikatenlogische Formeln ϕ, η gilt, falls x in η nicht
frei vorkommt:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
2.2.9
∀x : ϕ ∧ ∀x : η
(∃x : (ϕ ∧ η))
∃x : ϕ ∨ ∃x : η
(∀x : ϕ ∨ ∀x : η)
∀x : ϕ ∃x : η
(∃x : ϕ ∀x : η)
∀x : ϕ ∧ η
∃x : ϕ ∧ η
∀x : ϕ ∨ η
∃x : ϕ ∨ η
∀x : ϕ η
∃x : ϕ η
η ∀x : ϕ
η ∃x : ϕ
≡
≡
≡
≡
≡
≡
≡
≡
∀x : (ϕ ∧ η).
∃x : (ϕ ∧ η).
∀x : (ϕ ∨ η).
∃x : (ϕ ∨ η).
∃x : (ϕ η).
∀x : (ϕ η).
∀x : (η ϕ).
∃x : (η ϕ).
Prädikatenlogische Basen
Auch den Begriff der Basis können wir analog zur Aussagenlogik definieren.
Definition 2.62
Prädikatenlogische
Basis
Satz 2.63
Basen
Eine Menge QOB logischer Quantoren und Operationen heißt (prädikatenlogische)
Basis, wenn es zu jeder prädikatenlogischen Formel eine logisch äquivalente Formel
gibt, die nur Quantoren und Operationen aus QOB enthält. Eine Basis heißt minimal,
wenn keine ihrer echten Teilmengen eine Basis ist.
Minimale prädikatenlogische Basen sind:
(1)
(2)
(3)
(4)
{∀, ¬, ∧}.
{∃, ¬, ∨}.
{∀, ¬, ∨}.
{∃, ¬, ∧}.
Beweis folgt aus Satz 2.28 und Satz 2.56.
2.2.10
F
Normalformen prädikatenlogischer Formeln
Analog zur Aussagenlogik suchen wir Normalformen für prädikatenlogische Formeln.
Satz 2.64
Normalformen
quantorfreier Formeln
9.8.04
Zu jeder quantorfreien prädikatenlogischen Formel gibt es logisch äquivalente
DNFen und KNFen, deren Faktoren atomare Teilformeln sind.
© Karlheinz Hug, Hochschule Reutlingen
2 - 62
2 Logik
Definition 2.65
Pränexform
Sind q1,.., qn ∈ {∀, ∃} Quantoren, x1,.., xn mit n ∈ lN0 Variablen und ϕ, η prädikatenlogische Formeln mit
ϕ = q1x1 ... qnxn : η,
so heißt q1x1 ... qnxn Präfix von ϕ. Ist zudem η quantorenfrei, so heißt η Matrix von
ϕ und ϕ befindet sich in Pränexform.
Pränexformen können für Menschen schwer verständlich sein, eignen sich aber gut für
automatische Beweisverfahren.
Satz 2.66
Pränexe Normalform
zu Formeln
Zu jeder prädikatenlogischen Formel gibt es eine logisch äquivalente Formel in bereinigter Pränexform.
Die Matrix der Pränexform kann eine DNF oder KNF sein.
Beweis. Sei ϕ eine prädikatenlogische Formel. Nach Satz 2.55 gibt es eine logisch
äquivalente bereinigte Formel η. Nach Satz 2.63 gibt es eine logisch äquivalente Formel κ, in der nur die Operationen ¬, ∧, ∨ vorkommen. In κ treibt man durch wiederholtes Anwenden der de morganschen Regeln Satz 2.56 sowie Satz 2.61 die Quantoren
nach außen, bis die Pränexform λ vorliegt. Die Matrix von λ lässt sich nach Satz 2.64
in eine DNF oder KNF umformen.
F
P(x, y) ∨ ∀x : (Q(x) ∧ ∃y ∀z : (R(y, z) ∃x : S(x, z))) ≡
bereinigen
Operatoren ersetzen
P(x, y) ∨ ∀u : (Q(u) ∧ ∃v ∀z : (R(v, z) ∃w : S(w, z))) ≡
P(x, y) ∨ ∀u : (Q(u) ∧ ∃v ∀z : (¬R(v, z) ∨ ∃w : S(w, z))) ≡
Satz 2.61
P(x, y) ∨ ∀u : (Q(u) ∧ ∃v ∀z ∃w : (¬R(v, z) ∨ S(w, z))) ≡
3mal Satz 2.61
P(x, y) ∨ ∀u ∃v ∀z ∃w : (Q(u) ∧ (¬R(v, z) ∨ S(w, z))) ≡
4mal Satz 2.61
∀u ∃v ∀z ∃w : (P(x, y) ∨ (Q(u) ∧ (¬R(v, z) ∨ S(w, z)))) ≡
∀u ∃v ∀z ∃w : (P(x, y) ∨ (Q(u) ∧ ¬R(v, z)) ∨ (Q(u) ∧ S(w, z))).
Beispiel
η
κ
λ
λ mit DNF
Den Abschluss des Abschnitts über die Prädikatenlogik bildet eine Übersicht über syntaktische Eigenschaften und logisch äquivalente Umformungen prädikatenlogischer
Formeln.
Bild 2.5 Transformation der Formen prädikatenlogischer Formeln
nicht bereinigt
beliebige Operationen
bereinigen
Operationen
tauschen
nicht bereinigt
Operationen ¬, ∧, ∨
bereinigt
Pränexform
beliebige Operationen
bereinigt
beliebige Operationen
Operationen
tauschen
bereinigen
bereinigt
Operationen ¬, ∧, ∨
Operationen
tauschen
Quantoren
verschieben
bereinigt
Pränexform
Operationen ¬, ∧, ∨
Matrix
denormalisieren
Matrix
normalisieren
bereinigt
Pränexform
Matrix in [D|K]NF
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.3 Literaturhinweise
2.3
2 - 63
Literaturhinweise
Grundzüge der Logik findet man in vielen „Mathematik-für-Informatiker“-Lehrbüchern. Dieses Kapitel plündert Ideen aus [3], [5], [6], [8], [9], [12], [13], [16], [18],
[19], [21], [23], [25] und [27].
Anfänge der Logik reichen in die griechische Antike zurück. Erste Formen der Aussagenlogik finden sich in Schriften der Stoiker. Bedeutende Grundlagen schuf der griechische Philosoph Aristoteles (384 - 322 v.u.Z.) mit seinem logischen Werk.
Gottfried Wilhelm Leibniz (1646 - 1716) begründete die mathematische Logik, ohne
die weitere Entwicklung stark zu beeinflussen. Erst George Boole (1815 - 1864) lieferte mit seinem Hauptwerk An Investigation of the Laws of Thought (London 1854)
die erste Algebra der Aussagenlogik. Die Methode des Interpretierens von Aussagen
mittels Wahrheitstabellen führte Charles Sanders Peirce (1839 - 1914) ein.
Peirce trug auch wesentlich dazu bei, die Rolle der Quantoren und Variablen in mathematischen Sätzen zu erkennen. Gottlob Frege (1848 - 1925) stellte in seiner Begriffsschrift, eine der arithmetischen nachgebildete Formelsprache des reinen Denkens
(Halle 1879) den ersten leistungsfähigen Kalkül der Prädikatenlogik vor, die erste
umfassende formale Sprache der Logik. Die heutigen formalen Logiksprachen gehen
wesentlich auf den italienischen Mathematiker und Logiker Guiseppe Peano (1858 1932) zurück.
Die englischen Logiker Bertrand Russell (1872 - 1970) und Alfred North Whitehead
(1861 - 1947) stellten die neue Logik in ihrem epochalen Werk Principia Mathematica
(Cambridge 1910 - 1913) umfassend dar. Der polnische Logiker Jan Lukasiewicz
(1878 - 1956) gab dem Aussagenkalkül eine besonders einfache und präzise Form.
2.4
Übungen
Aufgabe 2.1
Jüdischer Witz, frei
nach S. Landmann
Talmudschüler: Ist Gott allmächtig?
Rabbi:
Gott ist allmächtig!
Talmudschüler: Ist Gott wirklich allmächtig??
Rabbi:
Gott ist allmächtig!!
Talmudschüler: Wenn Gott ist allmächtig, kann er auch machen a Stein so groß, dass er
ihn nicht aufheben kann?
Aufgabe 2.2
Wer kann’s?
(a)
(b)
(c)
(d)
Wer einen PC anschalten kann, kann programmieren.
Keiner ist ein echter Programmierer, wenn er keine eigene Webseite hat.
Keiner, der keinen PC anschalten kann, hat eine eigene Webseite.
Nur echte Programmierer können 10000-Zeilen-Programme schreiben.
Welche Eigenschaften muss jemand besitzen, der ein 10000-Zeilen-Programm
geschrieben hat?
Aufgabe 2.3
Lebensgeheimnis [21]
Befragt „Was ist das Geheimnis ihres langen Lebens?“ antwortet der Hundertjährige:
„Ich befolge strikt meine Diätregeln: Wenn ich zu einer Mahlzeit keinen Wein trinke,
dann esse ich immer Spätzle. Immer wenn ich sowohl Spätzle als auch Wein habe, verzichte ich auf Pudding. Falls ich Pudding esse oder Wein meide, rühre ich keine Spätzle
an.“ Können Sie seine verwirrende Altersweisheit vereinfachen?
Aufgabe 2.4
Aussagen zerlegen
Geben Sie zu folgenden Aussagen alle Teilausdrücke an! Welche sind Atome?
9.8.04
(1)
(2)
(3)
(a ∧ b) (¬b ∨ c)
c))
¬(¬a ∨ ¬(¬b
(b ⇔ (c <≠> a))
a
© Karlheinz Hug, Hochschule Reutlingen
2 - 64
Aufgabe 2.5
Syntax von
Mengentermen und
Mengenformeln
2 Logik
Stellen Sie Syntaxregeln auf für mengentheoretische
(1)
(2)
Ausdrücke (Terme), die mit der Konstanten ∅, geeigneten Variablen und den
Operationen , ∩, ∪, \, ∆;
Prädikate (Formeln), die mit geeigneten Elementvariablen, mengentheoretischen
Ausdrücken gemäß (1) und den Relationen ∈, ∉, =, ≠, ⊆, ⊂, /⊆, ⊄
gebildet werden!
Aufgabe 2.6
Dreiecke
Geben Sie Beziehungen zwischen den Eigenschaften gleichschenklig, gleichseitig,
gleichwinklig, rechtwinklig, spitzwinklig und stumpfwinklig von Dreiecken in Form
(1)
(2)
einer Reihe von Implikationen,
eines Klassendiagramms
an (→ Aufgabe 1.14)!
Aufgabe 2.7
Interpretationen
Aufgabe 2.8
Wahrheitstabellen
Berechnen Sie die Wahrheitswerte der Aussagen
(1)
(2)
(3)
(a)
(b)
(a ∧ b) (¬b ∨ c)
c))
¬(¬a ∨ ¬(¬b
(b ⇔ (c <≠> a))
a
für die Belegung a = c = 0, b = 1;
für folgende Zuordnung konkreter Aussagen:
a := „2 ∗ 3 ∗ 5 ∗ 7 ∗ 11 + 1 ist eine Primzahl.“
b := „123456789 ist durch 3 teilbar.“
c := „Heute habe ich Geburtstag.“
Stellen Sie die Wahrheitstabellen zu folgenden Aussagen auf!
(1)
(2)
(3)
(a ∧ b) (¬b ∨ c)
c))
¬(¬a ∨ ¬(¬b
(b ⇔ (c <≠> a))
a
Aufgabe 2.9
Bedeutung
umgangssprachlicher
Operationen
Was bedeuten Und, Oder, Wenn... Dann in folgenden Sätzen?
Aufgabe 2.10
Notwendig und
hinreichend
Formulieren Sie folgende Aussagen als normale Bedingungssätze!
(1)
(2)
(3)
(4)
(1)
(2)
(3)
Mir tut der Zahn weh und der Zahnarzt bohrt rein.
Der Zahnarzt bohrt in meinen Zahn und er tut mir weh.
Jetzt oder nie schaffe ich die Logik-Prüfung.
Wenn ich den Bachelor-Abschluss habe, dann verdiene ich viel Geld.
Zum Bestehen der Prüfung ist es notwendig, während der Prüfung persönlich am
Prüfungsort anwesend zu sein.
Vorausgesetzt, Sie erscheinen zur Prüfung, so ist es eine hinreichende Bedingung
zum Bestehen der Prüfung, dass Sie wenigstens 60 Punkte erreichen.
Weniger als 60 Punkte reichen nicht hin, um die Prüfung zu bestehen, aber falls
Sie bestehen, so haben Sie notwendigerweise mindestens 60 Punkte erzielt.
Sind 30 Punkte notwendig oder hinreichend zum Bestehen der Prüfung?
Aufgabe 2.11
Aussage finden [21]
Finden Sie eine Aussage A = A(a, b, c) mit der Eigenschaft: Für je zwei Belegungen der
Variablen a, b, c, die sich an genau einer Stelle unterscheiden, hat A verschiedene
Werte! Beispiel: A(0, 0, 0) ≠ A(0, 0, 1), während A(0, 0, 0) = A(0, 1, 1) erlaubt ist.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.4 Übungen
Aufgabe 2.12
Kriminalfall
2 - 65
Der Kommissar weiß über drei Tatverdächtige A, B, C:
(a)
(b)
(c)
Wenn sich B oder C als Täter herausstellen, dann ist A unschuldig.
Ist A oder C unschuldig, dann muss B der Täter sein.
Ist C schuldig, dann ist A Mittäter.
Wer ist der Täter?
Aufgabe 2.13
Lügengeschichte
Die Personen A, B, C behaupten über sich:
(a)
(b)
(c)
A: „Wenn B lügt, dann sagt C die Wahrheit.“
B: „C lügt.“
C: „A lügt.“
Wer lügt, wer sagt die Wahrheit?
Aufgabe 2.14
Begründen Sie Korollar 2.7 S. 20!
Aufgabe 2.15
Geben Sie eine plausible Erklärung für Satz 2.8 S. 21!
Aufgabe 2.16
Beweisen Sie Korollar 2.10 S. 21!
Aufgabe 2.17
Geben Sie eine plausible Erklärung für Satz 2.11 S. 21!
Aufgabe 2.18
Geben Sie eine plausible Erklärung für Satz 2.12 S. 22!
Aufgabe 2.19
Beweisen Sie Satz 2.13 S. 22!
Aufgabe 2.20
Beweisen Sie Satz 2.14 S. 22!
Aufgabe 2.21
Aussagen negieren
Negieren Sie folgende Aussagen durch Anwenden von Dualitäts-Theorem 2.16 S. 23!
(1)
(2)
(a ∨ ¬(b ∧ a)) ∧ (c ∨ (d ∧ c))
(a ∧ (b ∨ c) ∧ (b ∨ ¬c)) ∨ (a ∧ b ∧ (a ∨ c))
Aufgabe 2.22
Beweisen Sie Satz 2.17 S. 24!
Aufgabe 2.23
Aussagen vereinfachen
Vereinfachen Sie folgende Aussagen mittels algebraischer Umformungen!
(1)
(2)
(3)
(4)
(a ∨ ¬(b ∧ a)) ∧ (c ∨ (d ∧ c))
Wenn ich Zeit habe, dann rufe ich dich an, falls mein Handy funktioniert, und,
sofern mein Handy funktioniert, rufe ich dich an, wenn die Sonne scheint.
(a ∧ (b ∨ c) ∧ (b ∨ ¬c)) ∨ (a ∧ b ∧ (a ∨ c))
c)) ∨ (b ⇔ ¬c)) <≠> ((¬a ∧ b)
(a ∨ c))
((a ∧ (b
Aufgabe 2.24
Beweisen Sie Satz 2.18 S. 25 für m = 2 und n = 3!
Aufgabe 2.25
Erfüllbarkeit
Ist die Aussage
(a1 ∨ a2) ∧ (¬a2 ∨ ¬a3) ∧ (a3 ∨ a4) ∧ ... ∧ (a2n−1 ∨ a2n) ∧ (¬a2n ∨ ¬a2n+1)
für n ∈ lN, n > 1 erfüllbar?
Aufgabe 2.26
Beweisen Sie Satz 2.19 S. 25!
Aufgabe 2.27
Implikation
In welcher Beziehung stehen folgende Varianten der Implikation zueinander?
9.8.04
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
b
¬a
a
¬b
¬b
¬a
b
a
a
¬b
b
¬a
a
b
¬a
¬b
kontraponierte Aussage
konverse Aussage
konträre Aussage
© Karlheinz Hug, Hochschule Reutlingen
2 - 66
2 Logik
Aufgabe 2.28
Beweisen Sie Satz 2.20 S. 26!
Aufgabe 2.29
Schlussfolgerung
Folgt aus den Aussagen
„Wenn ich MKI studiere, dann studiere ich auch Logik und Webdesign.“
„Logik studiere ich nicht.“
„Ich studiere MKI oder Logik oder Webdesign.“
die Aussage
„Ich studiere Webdesign.“?
Aufgabe 2.30
Beweisen Sie Satz 2.21 S. 27!
Aufgabe 2.31
Beweisen Sie Korollar 2.22 S. 27!
Aufgabe 2.32
Beweisen Sie Satz 2.23 S. 28!
Aufgabe 2.33
Logik der sozialen
Marktwirtschaft
(a)
(b)
(c)
(d)
(e)
(f)
Wenn die Löhne hoch sind, dann gibt es viele Arbeitslose oder die Unternehmer
zocken ab.
Die Unternehmer zocken ab oder die Löhne sind nicht hoch oder es gibt viele
Arbeitslose.
Wenn es wenig Arbeitslose gibt, dann zocken die Unternehmer ab oder die
Löhne sind nicht hoch.
Wenn die Unternehmer nicht abzocken, dann gibt es viele Arbeitslose oder die
Löhne sind nicht hoch.
Wenn es viele Arbeitslose gibt, dann sind die Löhne hoch und die Unternehmer
zocken ab.
Die Löhne sind hoch und die Unternehmer zocken ab und es gibt viele Arbeitslose.
Wenn Aussage (a) wahr ist, was gilt dann für die anderen Aussagen? Was ist, wenn alle
Aussagen zutreffen?
Aufgabe 2.34
Logik der
Finanzwirtschaft [33]
Wirtschaftsexperte A behauptet:
(a)
(b)
(c)
(d)
Wenn die Kredite steigen oder die Zinsen sinken, dann fallen die Aktien oder es
werden keine Steuern erhöht.
Die Aktien gehen genau dann in den Keller, wenn sowohl die Kredite als auch
die Steuern wachsen.
Gehen die Zinsen runter, so passiert mit den Aktienwerten nicht dasselbe.
Deshalb werden die Steuern hinaufgeschraubt, oder die Aktien fallen und die
Zinsen schrumpfen.
Wirtschaftsexperte B verfeinert die Theorie von A zu dieser:
(e)
(f)
(g)
(h)
Wenn die Kredite steigen oder die Zinsen sinken, dann fallen entweder die
Aktien oder es werden keine Steuern erhöht.
Die Aktien gehen genau dann in den Keller, wenn sowohl die Kredite als auch
die Steuern wachsen.
Gehen die Zinsen runter, so passiert mit den Aktienwerten nicht dasselbe, oder
aber die Kredite steigen.
Deshalb werden entweder die Steuern hinaufgeschraubt, oder die Aktien fallen
und die Zinsen schrumpfen.
Was meinen die beiden Experten eigentlich kurz und bündig? (Lösung: [33].)
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.4 Übungen
Aufgabe 2.35
Eine Logelei von
Zweistein
[DIE ZEIT Nr. 12,
15. März 2001]
2 - 67
Wenn der Knull nicht gepramelt hat, dann hat entweder das Fipi oder die Gluka geurzt.
Wenn der Knull nicht gedixt hat, dann hat, falls das Dapi nicht gelüllt hat, die Gluka
gepramelt. Wenn der Akru nicht geurzt hat, dann hat das Fipi entweder gepramelt oder
gewatzelt. Wenn weder der Knull noch das Dapi gedixt haben, dann hat die Gluka
geurzt. Wenn das Dapi nicht gewatzelt hat, dann hat, falls der Knull nicht geurzt hat,
das Fipi gelüllt.
Jeder hat etwas getan, keine zwei taten dasselbe, wer hat was getan? (Lösung: [33].)
Aufgabe 2.36
Noch eine Logelei von
Zweistein
[DIE ZEIT Nr. 22,
22. Mai 2003]
Der Ethnologe schreibt aus dem fernen Knusiland:
„Bekanntlich leben hier drei Stämme, die Abianer, die immer die Wahrheit sagen, die
Bebianer, die stets lügen, und die Cebianer, deren Aussagen abwechselnd wahr und
falsch sind. Freilich weiß man am Anfang eines Gesprächs mit einem Cebianer nicht,
in welcher Phase er gerade ist, ob er mit einer Lüge oder einer Wahrheit beginnt.
Neulich stellte mir Herr Akenknus, ein Abianer, vier Freundinnen vor, eine Abianerin,
eine Bebianerin und zwei Cebianerinnen. Eine hieß mit Vornamen Knusine, eine Knusetta, eine Knuselotte und eine Knusmarie.
Akenknus erklärte: ,Drei der Damen sind verheiratet. Die Ehemänner heißen mit Nachnamen Knalk, Knilp und Knolz.’
Jede der Damen gab drei Erklärungen ab, die ich notierte. Knusine: ,Das Alter einer
von uns ist eine Primzahl. Eine der beiden Cebianerinnen ist ein Jahr älter als die
andere. Eine der Cebianerinnen ist mit Knolz verheiratet.’
Knusetta: ,Frau Knolzens Alter ist eine gerade Zahl. Ich bin eine Cebianerin. Frau
Knalk ist die Älteste von uns.’
Knuselotte: ,Die Bebianerin unter uns ist um 20 Prozent älter als eine der Cebianerinnen. Der Altersunterschied zwischen mir und Knusetta beträgt zehn Jahre. Knusines
Alter ist durch vier teilbar.’
Knusmarie: ,Das Alter einer der beiden Cebianerinnen ist um ein Drittel höher als das
der Abianerin. Die Abianerin ist unverheiratet. Knusetta ist jünger als ich.’
Akenknus raunte mir zu: ,Keine der vier Frauen ist jünger als 15 oder älter als 30 Jahre.
Keine zwei von ihnen sind gleich alt. Die Altersangaben sind wie üblich in vollen Jahren. Je jünger die Dame, desto mehr von ihren drei Erklärungen sind wahr.’
Nun wüsste ich gern, welche Dame von welchem Stamm, wie alt, und gegebenenfalls
mit welchem Herrn verheiratet ist.“
Helfen Sie dem Ethnologen?
Aufgabe 2.37
Beweisen Sie Satz 2.24 S. 28!
Aufgabe 2.38
Beweisen Sie Satz 2.25 S. 33!
Aufgabe 2.39
Nand und Nor
Zeigen Sie, dass die Nand- und die Nor-Operation kommutativ, aber nicht assoziativ
sind!
Aufgabe 2.40
Aussagenlogische
Basis
Ist {¬, ⇔} eine aussagenlogische Basis?
Aufgabe 2.41
Beweisen Sie Korollar 2.31 S. 36!
Aufgabe 2.42
Normalformen
Geben Sie zu folgenden Aussagen äquivalente DNFen, KNFen, KDNFen und KKNFen
an!
(1)
(2)
(3)
9.8.04
(a ∨ ¬(b ∧ a)) ∧ (c ∨ (d ∧ c))
(a ∧ (b ∨ c) ∧ (b ∨ ¬c)) ∨ (a ∧ b ∧ (a ∨ c))
c)) ∨ (b ⇔ ¬c)) <≠> ((¬a ∧ b)
((a ∧ (b
(a ∨ c))
© Karlheinz Hug, Hochschule Reutlingen
2 - 68
Aufgabe 2.43
Minimale DNF
2 Logik
Geben Sie zur KDNF
(a ∧ b ∧ c) ∨ (a ∧ ¬b ∧ c) ∨ (¬a ∧ b ∧ c) ∨ (¬a ∧ b ∧ ¬c)
eine logisch äquivalente minimale DNF an!
Aufgabe 2.44
Normalformen
Geben Sie zur Aussage
(a ∧ b) ∨ (a <≠> c)
die Wahrheitstabelle, die kanonischen Normalformen, eine minimale KNF und zwei
minimale DNFen an!
Aufgabe 2.45
Paritätsfunktion [6]
Die Paritätsfunktion (parity function) Par ist eine n-stellige Aussagefunktion mit
n ∈ lN, die einer Belegung genau dann 1 zuordnet, wenn sie eine ungerade Anzahl von
1en enthält.
(1)
(2)
Stellen Sie Wahrheitstabelle zu Par für n = 3 auf und konstruieren Sie die kanonischen Normalformen!
Geben Sie eine rekursive Definition von Par für beliebige n an!
Die Paritätsfunktion dient der Fehlererkennung bei Codes zur Datenübertragung.
Aufgabe 2.46
Abstimmungsfunktion
[16]
Die Abstimmungsfunktion (majority function) Maj ist eine n-stellige Aussagefunktion mit ungeradem n = 2k − 1, k ∈ lN, die einer Belegung genau dann 1 zuordnet, wenn
sie mehr 1en als 0en enthält.
(1)
(2)
Stellen Sie Wahrheitstabelle zu Maj für n = 3 auf und konstruieren Sie die kanonischen Normalformen!
Geben Sie eine rekursive Definition der Anzahl der 1en in den Variablen a1,.., an
an und definieren Sie damit Maj!
Die Abstimmungsfunktion wird in fehlertoleranten Systemen mit redundanten, mehrfach vorhandenen Komponenten eingesetzt.
Aufgabe 2.47
Beweisen Sie Satz 2.41 S. 43!
Aufgabe 2.48
Prädikate formulieren
[33]
(1)
(2)
Der griechische Mathematiker und Ordensführer Pythagoras von Samos (um 580
v.u.Z. - um 500 v.u.Z.) ist durch einen Satz über rechtwinklige Dreiecke bekannt,
der schon in der mesopotamischen Mathematik nachgewiesen ist. Ein pythagoreisches Zahlentripel besteht aus drei aufsteigend geordneten natürlichen Zahlen,
sodass die Summe der Quadrate der ersten beiden Zahlen das Quadrat der dritten
Zahl ergibt (→ Beispiel 3.1 S. 7). Zusätzlich verlangen wir hier, dass die Zahlen
teilerfremd sind. (ggT(p, q) ist der größte gemeinsame Teiler der ganzen Zahlen
p und q.)
Der Sollwert einer physikalischen Größe ist s > 0, der Istwert x weicht höchstens
ein Promille davon ab.
Formulieren Sie diese Sachverhalte als Prädikate! (Lösung: [33].)
Aufgabe 2.49
Formeln verbalisieren
Aufgabe 2.50
Formeln zerlegen
Lesen Sie die folgenden prädikatenlogischen Formeln in Umgangssprache laut vor!
(1)
(2)
(3)
(4)
(Q(f(x), x) ∧ ∃y : (R(y) ∧ S(y, x))))
∀x : (P(x)
(Q(f(y), x) ∧ ∃y : (R(y) ∧ S(y, x)))
∀x : P(x)
Q(f(y), x)) ∧ R(y) ∧ ∃z : S(y, z)
∀x : (P(x)
Q(f(y), x)) ∧ R(y) ∧ ∃x : S(y, x)
∀x ∃y : (P(x)
Geben Sie zu folgenden prädikatenlogischen Formeln alle Teilformeln und -terme
sowie die syntaktischen Eigenschaften der Variablen (frei, gebunden) und Formeln
(quantorenfrei, geschlossen, bereinigt) an!
(1)
(2)
(Q(f(x), x) ∧ ∃y : (R(y) ∧ S(y, x))))
(Q(f(y), x) ∧ ∃y : (R(y) ∧ S(y, x)))
∀x : (P(x)
∀x : P(x)
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.4 Übungen
2 - 69
∀x : (P(x)
Q(f(y), x)) ∧ R(y) ∧ ∃z : S(y, z)
Q(f(y), x)) ∧ R(y) ∧ ∃x : S(y, x)
∀x ∃y : (P(x)
(3)
(4)
Aufgabe 2.51
Freie und gebundene
Variablen,
quantorenfreie und
geschlossene Formeln
Zu einem prädikatenlogischen Term t und einer prädikatenlogischen Formel ϕ seien
(1)
Vt die Menge aller in t vorkommenden Variablen;
(2)
(3)
(4)
(5)
Frei(ϕ) die Menge aller freien Variablen in ϕ;
Gebunden(ϕ) die Menge aller gebundenen Variablen in ϕ;
offen(ϕ) die Eigenschaft von ϕ, quantorenfrei zu sein;
geschlossen(ϕ) die Eigenschaft von ϕ, geschlossen zu sein.
Definieren Sie die Mengen Vt, Frei(ϕ) und Gebunden(ϕ) induktiv über den Aufbau der
Formeln! Welche Definitionen bieten sich für die Prädikate offen(ϕ) und geschlossen(ϕ) an?
Aufgabe 2.52
Formel verbalisieren
Welche Teile der prädikatenlogischen Formel
∀x : (ist_Vorlesung(x)
(liest(Dozent(x), x) ∧ ∃y : (studiert(y) ∧ hört(y, x))))
sind Variablen, Funktionen und Prädikate? Was bedeuten sie wohl? Beschreiben Sie
verbal den möglichen Sinn der Formel!
Aufgabe 2.53
Sprachgebilde
formalisieren
Welche der folgenden sprachlichen Gebilde entsprechen Aussagen, prädikatenlogischen Termen und Formeln?
(1)
(2)
(3)
Orangen und Äpfel.
Birnen sind süß.
x ist größer als y.
(4)
a2 + b2.
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
a2 + b2 = c2.
Alle Menschen sind gleichberechtigt.
Es gibt ein Leben vor dem Tod.
Du hast keine Chance, aber nutze sie!
Jede Gitarre hat sechs Saiten.
Manche Gitarren sind verstimmt.
Katzen fangen Mäuse.
Jeder ist seines Glückes Schmied.
Formalisieren Sie die prädikatenlogischen Formeln, indem Sie geeignete Funktionen
und Prädikate definieren!
Aufgabe 2.54
Astronomie
Beschreiben Sie folgende Sätze mit jeweils passenden Ausdrucksmitteln der Mengenlehre wie Mengen und Relationen, der Logik wie Aussagen und prädikatenlogischen
Formeln, sowie Klassendiagrammen!
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
9.8.04
Die Erde ist der blaue Planet.
Steht der Mond zwischen Erde und Sonne, dann gibt es eine Sonnenfinsternis.
Die Erde ist ein Planet der Sonne.
Die Sonne scheint auf die Erde.
Die Erde dreht sich um die Sonne.
Erde, Mars und Venus sind Planeten.
Sonnen, Planeten und Monde sind Himmelskörper.
Ein Sonnensystem besteht aus einer Sonne und ihren Planeten.
Zu jedem Planeten gehört eine Sonne, um die er sich dreht.
© Karlheinz Hug, Hochschule Reutlingen
2 - 70
2 Logik
(10)
(11)
(12)
(13)
(14)
(15)
Zu jedem Mond gehört ein Planet, um den er sich dreht.
Es gibt einen Planeten, der belebt ist.
Alle Sonnen sind unbelebt.
Alle Monde sind unbelebt.
Alle Himmelskörper, die Sonnen oder Monde sind, sind unbelebt.
Ist ein Himmelskörper belebt, so ist es ein Planet.
Aufgabe 2.55
Formel quantifizieren
(1)
(2)
Formulieren Sie alle zehn Möglichkeiten, das Prädikat P(x, y) zu quantifizieren!
Die Individuenmenge M sei die Menge aller Menschen, die jemals gelebt haben.
Interpretieren Sie das Prädikat P(x, y) als
x ist Mutter von y
und untersuchen Sie für alle Formeln aus (1), ob sie in dieser Struktur gültig,
erfüllbar oder nicht erfüllbar sind! Handelt es sich um Aussagen?
Aufgabe 2.56
Formel interpretieren
[21]
Nennen Sie zur prädikatenlogischen Formel
ϕ = ∀x ∃y : P(x, y, f(z))
(1) eine Struktur M g, struktg, in der ϕ gültig, und
(2)
eine Struktur M e, strukte, in der ϕ erfüllbar, aber nicht gültig ist!
Aufgabe 2.57
Beweisen Sie Satz 2.51 S. 58!
Aufgabe 2.58
Beweisen Sie Satz 2.56 S. 59!
Aufgabe 2.59
Negation
Welche der folgenden Aussagen sind logisch äquivalent, welche sind Negationen welcher anderen? Wieviele wesentlich verschiedene Aussagen sind darunter?
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
Alle deutschen Autos sind schlecht gebaut.
Alle deutschen Autos sind nicht schlecht gebaut.
Alle nicht deutschen Autos sind schlecht gebaut.
Alle nicht deutschen Autos sind nicht schlecht gebaut.
Einige deutsche Autos sind schlecht gebaut.
Einige deutsche Autos sind nicht schlecht gebaut.
Einige nicht deutsche Autos sind schlecht gebaut.
Einige nicht deutsche Autos sind nicht schlecht gebaut.
Aufgabe 2.60
Beweisen Sie Satz 2.59 S. 60!
Aufgabe 2.61
Beweisen Sie Satz 2.60 S. 61!
Aufgabe 2.62
Beweisen Sie Satz 2.61 S. 61!
Aufgabe 2.63
Eigenschaften von
Formeln
Welche der folgenden Formeln sind allgemeingültig, gültig (in welcher Struktur?),
erfüllbar (für welche Interpretation?), widersprüchlich?
Aufgabe 2.64
Formeln transformieren
(1)
(2)
(3)
(4)
∀x ∀y : (P(x, y) ∧ ¬P(y, x))
∀x : P(x) ∨ ∃x : ¬P(x)
∀x ∀y : (P(x) ∨ Q(y)) ∧ ∃x ∃y : (¬P(x) ∧ ¬Q(y))
∀x : (¬P(x, x) ∧ ∃y : (P(x, y) ∧ ¬P(y, x)))
Transformieren Sie die folgenden prädikatenlogischen Formeln in jede der in Bild 2.5
S. 62 zusammengestellten Formen!
(1)
(2)
(3)
(4)
∀x : (P(x) (Q(f(x), x) ∧ ∃y : (R(y) ∨ S(y, x))))
∀x : P(x) (Q(f(y), x) ∨ ∃y : (R(y) ⇔ S(y, x)))
(∀x : (P(x) Q(f(y), x)) ∧ R(y)) ∨ ∃z : S(y, z)
∀x ∃y : (P(x) ⇔ Q(f(y), x)) ∨ R(y) <≠> ∃x : S(y, x)
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
2.4 Übungen
2 - 71
Aufgabe 2.65
Epimenides
Der Kreter Epimenides sagt: „Alle Kreter lügen.“
Aufgabe 2.66
Ecos foucaltsches
Pendel
Formalisieren Sie die Aussagen der folgenden Zitate aus Umberto Ecos Roman Das
Foucaultsche Pendel (München/Wien 1989)!
Folgern Sie daraus Aussagen über das Lügen von Epimenides und anderer Kreter!
(1)
(2)
(3)
Aufgabe 2.67
Unabhängige Formeln
[21]
„[Der Dumme] ist der Typ, der sagt, alle Hunde sind Haustiere, und alle Hunde
bellen, aber auch Katzen sind Haustiere, und folglich bellen sie.“
„Alle großen Menschenaffen stammen von niederen Formen des Lebens ab, die
Menschen stammen von niederen Formen des Lebens ab, also sind die Menschen große Affen.“
„Einige von denen, die nicht glauben, dass Gott die Welt in sieben Tagen
geschaffen hat, sind keine Fundamentalisten, aber einige Fundamentalisten glauben, dass Gott die Welt in sieben Tagen geschaffen hat - also ist keiner, der nicht
glaubt, dass Gott die Welt in sieben Tagen geschaffen hat, ein Fundamentalist. Ist
das jetzt dumm oder nicht?“
Die Formeln
(a)
(b)
(c)
∀x : P(x, x)
∀x ∀y : (P(x, y) P(y, x))
∀x ∀y ∀z : ((P(x, y) ∧ P(y, z)) P(x, z))
drücken die Reflexivität, Symmetrie und Transitivität des Prädikats P aus.
Zeigen Sie, dass keine dieser Formeln aus den anderen beiden folgt, indem Sie für
jedes Formelpaar ein Modell angeben, das kein Modell für die jeweils dritte Formel ist!
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
2 - 72
© Karlheinz Hug, Hochschule Reutlingen
2 Logik
9.8.04
3
Methodik
AufgabeBeispiel
3
Bild
3 3 (3)
MathAussagen
Leitlinie Programm
3
3 3
Tabelle 3
Dieses Kapitel gibt einen Überblick über die Methoden der Mathematik, die auch für
die Informatik wichig sind.
3.1
Axiomatik und Deduktion
Abstraktion
Vergleichen wir die algebraischen Strukturen der Mengenlehre in Kapitel 1 und der
Aussagenlogik in Kapitel 2, so erkennen wir ähnliche Regeln, z.B. Idempotenz, Assoziativität, Kommutativität, Distributivität, de Morgan. Eine wichtige Fähigkeit von
MathematikerInnen und InformatikerInnen ist das Abstrahieren: das Erkennen wesentlicher Merkmale unter vielen unwesentlichen Details. Die MathematikerIn abstrahiert
Gemeinsamkeiten aus mathematischen Strukturen und extrahiert daraus z.B. Axiome,
die InformatikerIn abstrahiert Gemeinsamkeiten aus informatischen Strukturen und
extrahiert daraus z.B. abstrakte Klassen.
Bevor wir in Kapitel 4 die Methode der Axiomatisierung am Beispiel der booleschen
Algebren anwenden, sind ein paar allgemeine Worte dazu angebracht und zur damit
eng verknüpften Methode der Deduktion, die auf logischen Schlussfolgerungen
basiert. Axiomatik und Deduktion finden sich schon im Werk Elemente des antiken
griechischen Mathematikers Euklid1, das die Geometrie darstellt. In neuerer Zeit legten
Peano2 und Hilbert3 wesentliche Grundlagen.
Deduktion
Wissenschaftliche Theorien sind Systeme von Vermutungen und Behauptungen.
Begründete Vermutungen nennt man Hypothesen, als wahr geltende Behauptungen
Sätze (Lehrsatz). Manche Wissenschaften finden ihre Sätze auf empirischem Weg,
indem sie einen Ausschnitt einer Realität untersuchen. Manche Wissenschaften nutzen
die deduktive Methode, um von anerkannten Sätzen - so genannten Voraussetzungen
- ausgehend durch Anwenden logischer Schlussregeln zu neuen Sätzen - so genannten
Folgerungen - zu kommen. In der Mathematik und der Informatik sind Abstraktion
und Deduktion unentbehrliche Methoden.
Axiomatik
Was bedeutet axiomatische Methode? In einer einzelnen mathematischen Theorie sind
Axiome ausgezeichnete, als wahr vorausgesetzte Behauptungen, die grundlegende
Beziehungen zwischen Grundbegriffen einführen. Die Menge der Axiome nennt man
Axiomensystem. Axiome werden nicht bewiesen, sondern „fallen als gültige Sätze
vom Himmel“. Alle anderen Sätze der Theorie lassen sich deduktiv aus den Axiomen
ableiten. Diese Sätze formuliert man prägnant und allgemein und ergänzt sie i.A. mit
Überlegungen, die ihre Gültigkeit zeigen sollen und die Beweise heißen. Beweise werden mehr oder weniger formal mittels logischer Beweismethoden und -verfahren
geführt. Die in einer Theorie formulierbaren Behauptungen sind - wie exemplarisch
anhand der Aussagenlogik und der Prädikatenlogik dargestellt - Wörter über einem
gewissen Alphabet, die gewisse syntaktische Regeln erfüllen. Die Sätze der Theorie
sind die allgemeingültigen Behauptungen, d.h. sie unterliegen der Semantik, stets wahr
zu sein. Beweise setzen ein System logischer Schlussregeln voraus.
1
Euklid von Alexandria (um 365 - 300 v.u.Z.), griechischer Mathematiker, Physiker, schuf
Grundlegendes zu Geometrie, Zahlentheorie, Aufbau und Beweismethodik der Mathematik.
2
Guiseppe Peano (1858 - 1932), italienischer Mathematiker, Logiker, schuf ein Axiomensystem der natürlichen Zahlen.
3
David Hilbert (1862 - 1943), deutscher Mathematiker.
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Kapitel 3 - Seite 1 von 14
3-2
3 Methodik
Bei Sätzen unterscheidet man pragmatisch folgende Arten:
Satzarten
l
l
l
l
Ein Lemma (Mehrzahl Lemmata) ist ein Hilfssatz, dessen Bedeutung vor allem
darin liegt, einen wichtigen Satz vorzubereiten oder dessen Beweis zu erleichtern.
Ein „normaler“ Satz hat eine gewisse Bedeutung, die sich daran misst, wie oft und
wie gut man den Satz in Theorien und Praxis anwenden kann. Der Beweis eines Satzes erfordert oft einen gewissen Aufwand, der in Lemmata ausgelagert sein kann.
Ein Theorem ist wörtlich auch ein Satz; in diesem Skript sind Theoreme besonders
wichtige (und seltene) Sätze.
Ein Korollar ist eine Folgerung aus einer Definition, einem Satz oder Beweis,
deren Beweis offensichtlich oder leicht ist.
Definitionen sind keine Sätze, sondern führen neue, prägnante Bezeichnungen und
Schreibweisen ein für wichtige, oft vorkommende Sachverhalte, die durch komplexe
Ausdrücke beschrieben sein können.
Theorie und Modell
Eine mathematische Theorie besteht somit aus Axiomen, Definitionen, und Sätzen, die
sich aus den Axiomen ableiten lassen. Ähnlich, wie wir in Definition 2.50 S. 2-57
Modelle für Mengen prädikatenlogischer Formeln betrachten, können wir zu einem
Axiomensystem Modelle angeben, in denen die Axiome gelten. In jedem Modell gelten dann auch alle aus den Axiomen ableitbaren Sätze. Jedes Modell eines Axiomensystems ist damit ein Modell der gesamten Theorie. Umgekehrt genügt es, die Sätze der
Theorie zu beweisen, ohne Modelle zu betrachten. Die Sätze der Theorie gelten „automatisch“ in allen Modellen des Axiomensystems.
Aufbau der Mathematik
Die Mathematik lässt sich u.a. auf folgende Arten darstellen:
(1)
(2)
Als Ansammlung einzelner mathematischer Theorien, von denen jede ihr eigenes Axiomensystem hat, aus dem sich ihre Sätze ableiten.
Als System miteinander verwobener mathematischer Theorien, deren gemeinsames Fundament die Mengenlehre bildet. Die Sätze aller Theorien lassen sich
letztlich aus den Axiomen der Mengenlehre ableiten. Die in einer Theorie untersuchte mathematische Struktur wird nicht durch Axiome eingeführt, sondern
durch eine Definition im Rahmen der Mengenlehre.
Art (1) entspricht der historischen Entwicklung der Theorien, Art (2) der modernen
Mathematik, die versucht, isolierte Theorien in das mengentheoretische Gebäude zu
integrieren. Als Beispiel betrachten wir in Kapitel 4 die Theorie der booleschen Algebren. Nach Art (1) führt man boolesche Algebren mit Axiomen ohne Rückgriff auf die
Mengenlehre ein. Nach Art (2) definiert man boolesche Algebren einfach als Mengen
mit einer speziellen algebraischen Struktur. Wir gehen in diesem Skript beim Einführen
mathematischer Strukturen nach Art (2) vor und sprechen gelegentlich trotzdem von
„den Axiomen“ der mathematischen Struktur, obwohl es sich nur um mengentheoretische Eigenschaften handelt.
Eigenschaften von
Axiomensystemen
Von einem „guten“ Axiomensystem AS zu einer Theorie und dem verwendeten
„guten“ Logikkalkül LK sind folgende Eigenschaften wünschenswert:
l
l
l
Korrektheit: LK heißt korrekt, wenn jede aus AS ableitbare Behauptung allgemeingültig, also ein Satz der Theorie ist.
Vollständigkeit: LK heißt vollständig, wenn jeder Satz der Theorie aus AS ableitbar ist.
Widerspruchsfreiheit: AS heißt widerspruchsfrei (konsistent), wenn kein Widerspruch aus AS ableitbar ist. Anders formuliert: Es gibt keine in der Theorie formulierbare Behauptung B, sodass sowohl B als auch ¬B aus AS ableitbar ist.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.2 Definitionsmethoden
l
l
3-3
Unabhängigkeit: AS heißt unabhängig, wenn kein Axiom aus den anderen ableitbar ist. Entfernt man eines der Axiome, so gibt es einen Satz, der aus AS , aber nicht
aus dem reduzierten Axiomensystem ableitbar ist.
Entscheidbarkeit: Es gibt einen Algorithmus (Verfahren), der zu jeder in der Theorie formulierbaren Behauptung B nach endlich vielen Schritten die Entscheidung
liefert, ob B ableitbar ist oder nicht.
Diese Eigenschaften sind nicht alle gleich wichtig. Korrektheit und Widerspruchsfreiheit sind kaum verzichtbar, wenn man nicht falsche Behauptungen oder Widersprüche
schlussfolgern will. Allerdings ist jeder Beweis der Widerspruchsfreiheit eines Axiomensystems relativ, denn um ihn zu führen, braucht man eine widerspruchsfreie Theorie, deren Widerspruchsfreiheit zuvor mit einer anderen widerspruchsfreien Theorie zu
beweisen wäre usw. Da absolute Widerspruchsfreiheit nicht beweisbar ist, steht die
Mathematik auf tönernen theoretischen Füßen, die dennoch bisher praktisch gut getragen haben.
Vollständigkeit und Entscheidbarkeit bleiben oft Wunschträume. Dazu lieferten vor
allem Gödel1 und Church2 bedeutende Resultate. Gödels Vollständigkeitssatz besagt,
dass der Sequenzenkalkül für die Prädikatenlogik erster Stufe vollständig ist. Sein
Unvollständigkeitssatz besagt, dass jede axiomatisierte Theorie, die wenigstens die
Arithmetik der natürlichen Zahlen umfasst, unvollständig ist. Gödel zeigte auch, dass
die Prädikatenlogik zweiter Stufe unvollständig ist, und er wies die relative Widerspruchsfreiheit von Auswahlaxiom und Kontinuumshypothese zu den übrigen Axiomen der Mengenlehre nach.
Church zeigte 1936, dass die Prädikatenlogik erster Stufe nicht entscheidbar ist, d.h. es
gibt keinen Algorithmus, der zu jeder prädikatenlogischen Formel entscheidet, ob sie
allgemeingültig ist oder nicht. Sehr viele Behauptungen sind nicht entscheidbar. Unentscheidbare Probleme eignen sich nicht zur Bearbeitung auf einem Rechner.
Weniger wichtig ist dagegen die Unabhängigkeit: Oft verzichtet man bewusst darauf
und ergänzt ein Axiomensystem aus ästhetischen und praktischen Gründen um abhängige Axiome.
3.2
Definitionsmethoden
Eine Definition eines Begriffs beschreibt den Sinn, die Bedeutung des Begriffs genau
innerhalb eines begrifflichen Zusammenhangs und grenzt ihn von anderen Begriffen
ab. Zum Definieren eines Begriffs müssen wir andere Begriffe verwenden. Dazu gibt es
zwei alternative Ansätze:
Beispiel
(1) Lexika definieren Begriffe oft gegenseitig durch zirkulare Beschreibungen.
Wald: mit Bäumen bewachsenes Gebiet. Baum: Holzgewächs, oft einen Wald bildend.
Holz: wesentlicher Stoff, aus dem Bäume sind.
Bei solchen Definitionen gibt es keinen Anfang und kein Ende: Suchen wir eine Erklärung für einen Begriff A und folgen Begriffen B, C,.., die A erklären sollen, so finden
wir zu A zurück. Dieses Problem der Zirkel in Definitionen löst der zweite Ansatz:
(2)
Wissenschaftliches Definieren setzt eine Menge von Grundbegriffen als gegeben voraus. Alle anderen Begriffe werden mittels der Grundbegriffe oder schon
definierter Begriffe definiert.
1
Kurt Gödel (1906 - 1978), österreichisch-amerikanischer Mathematiker, Logiker, lieferte
bedeutende Beiträge zu logischen Grundlagenproblemen.
2
Alonzo Church (1903 - 1995), amerikanischer Mathematiker, Logiker, schuf den LambdaKalkül; nach der churchschen These sind verschiedene Berechenbarkeitsbegriffe gleichwertig.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3-4
3.2.1
3 Methodik
Mathematische Definition
Die Mathematik verbindet den Ansatz (2) mit ihrer axiomatischen Methode. Sie definiert Grundbegriffe implizit in Axiomen, indem sie grundlegende Beziehungen zwischen den Grundbegriffen festlegt. Alle anderen Begriffe werden explizit definiert. Bei
einer expliziten Definition heißt der zu definierende Begriff Definiendum, die ihn
erklärende Beschreibung eines Dings oder Sachverhalts Definiens. Wir schreiben
Definiendum := Definiens
falls das Definiens ein Term ist,
Definiendum :⇔ Definiens
falls es eine Aussage (aussagenlogischer Ausdruck, prädikatenlogische Formel) ist.
Der Doppelpunkt macht die Gleichung bzw. Äquivalenz asymmetrisch. Die LeserIn
erkennt sofort, dass links etwas Neues, rechts etwas Bekanntes steht.
Eine explizite Definition ist damit - formal gesehen - ein neuer Name, eine abkürzende
Schreibweise für einen altbekannten Sachverhalt. Man kann das Definiendum überall,
wo es vorkommt, durch das Definiens ersetzen. Ersetzt man in einem Term oder einer
Aussage schrittweise alle Begriffe durch ihr Definiens, so erhält man schließlich einen
Term bzw. eine Aussage, in dem bzw. der nur Grundbegriffe vorkommen. Beispielsweise sind die Grundbegriffe in diesem Skript die Elementrelation x ∈ M, die Mengengleichheit M = N, und das Mengenkonstrukt M = {x | E(x)}. Alle Terme und Aussagen
lassen sich mit nur diesen Grundbegriffen formulieren.
Erforderlich ist das Ersetzen eines definierten Begriffs durch seine definierende
Beschreibung dann, wenn ein Vorkommen des Begriffs bewiesen werden soll. Beispielsweise beweist man eine Teilmengenbeziehung M ⊆ N, indem man „auf die Definition zurückgeht“, ein beliebiges Element x aus M herausgreift und zeigt, dass es auch
zu N gehört.
Inhaltlich betrachtet ist Definieren ein kreativer Akt. Die Kunst besteht darin, unter
unzähligen Dingen und Sachverhalten besonders interessante, wesentliche zu erkennen
und diese in Definitionen zu benennen. Wichtigem gibt man einen Namen, Unwichtiges bleibt anonym. Passende Namen erleichtern uns, Begriffe zu begreifen.
Keine Zirkel in
Definitionen
Die Definitionsmethode (2) kann uns nicht helfen, zu definierende Begriffe auszuwählen. Sie lehrt uns nur, wie korrekte Definitionen zu konstruieren sind. Insbesondere darf
im Definiens nicht das Definiendum vorkommen, und zwar weder direkt noch indirekt
durch einen Begriff, der mittels des Definiendum definiert ist. Diese Regel, die zirkulare Beschreibungen vermeidet, scheint bei rekursiver oder induktiver Definition verletzt (ist es aber nicht).
3.2.2
Rekursive und induktive Definition
Die Methode der rekursiven Definition haben wir am Beispiel des n-stelligen Produkts von Mengen gezeigt (→ 1.9.1 S. 1-28), die Methode der induktiven Definition
exemplarisch bei der Syntax und der Semantik der Sprachen der Aussagenlogik und
der Prädikatenlogik kennen gelernt (→ Definitionen 2.2 S. 6, 2.5 S. 9, 2.44 S. 48, 2.45
S. 49, 2.49 S. 54). Beide Methoden sind miteinander verwandt, vielleicht sogar identisch. Wir haben die zugrunde liegenden Prinzipien so charakterisiert:
Rekursion
Das Prinzip der Rekursion ist, ein Problem der Größe n ∈ lN zu lösen, indem man
l
l
es auf ein Problem der Größe n − 1 reduziert, und
zusätzlich das Problem der Größe 1 löst.
Damit ist das Problem für alle n ∈ lN gelöst.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.3 Beweismethoden
Induktion
3-5
Das Prinzip der Induktion ist, ein Problem zu lösen, indem man
l
l
atomare Teilprobleme löst;
die Lösungen von aus Teilproblemen zusammengesetzten Problemen konstruiert,
indem man sie aus Lösungen schon gelöster Teilprobleme zusammensetzt.
Damit ist das Problem für alle Teilprobleme, also allgemein, gelöst.
So gesehen ist Rekursion ein Spezialfall von Induktion, bei dem sich die Teilprobleme
mit natürlichen Zahlen nummerieren lassen und es nur ein atomares Problem mit der
Nummer 1 gibt, sodass eine Kette von Teilproblemen und Lösungen entsteht. Bei der
Induktion liegen dagegen oft mehrere atomare Teilprobleme vor, deren Lösungen man
auf viele verschiedene Arten kombinieren kann.
Andererseits verwenden viele Autoren die Begriffe Rekursion und Induktion synonym.
Formelsprache
Induktive Definition eignet sich allgemein zur Definition der Syntax so genannter kontextfreier Sprachen. Zu solchen Sprachen gehören insbesondere aus Mathematik und
Programmiersprachen bekannte Ausdrücke, Formeln und Konstrukte: arithmetische
und relationale Ausdrücke, Mengenausdrücke und -formeln, boolesche Ausdrücke,
prädikatenlogische Formeln, Anweisungen, Datentypen und Klassen. Bei einer induktiven Definition der Syntax einer solchen Formelsprache
l
l
definiert man zunächst die einfachsten - atomaren - Formeln, und
erklärt dann, wie sich komplexere - zusammengesetzte - Formeln aus einfacheren
Formeln aufbauen.
Damit ist die Syntax für alle Formeln definiert. Die induktive Definition besteht damit
aus einer Reihe von Syntaxregeln, die zusammen einen Kalkül, eine Anleitung zum
Konstruieren von Formeln bilden.
Rekursive Funktion
Induktive oder rekursive Definition eignet sich auch zur Definition bestimmter Funktionen. Das meist zitierte Beispiel ist wohl die Fakultätsfunktion:
! : lN0 → lN, n → n! :=
|
1
n(n
falls n ∈ { 0, 1 }
– 1 )!
sonst
.
Verglichen damit benutzt die vielleicht anschaulichere Definition
n! := 1 ∗ 2 ∗ 3 ∗ ... ∗ n für n ∈ lN0
die ungenauen Punkte „...“.
3.3
Beweismethoden
InformatikerInnen entwickeln informatische Systeme. Anwender nutzen diese Systeme
als Werkzeuge oder Medien zum Lösen ihrer Probleme. Um festzustellen, ob ein
System tut, was es soll, d.h. ob es gestellte Anforderungen erfüllt, gibt es zwei sich
ergänzende Ansätze:
(1)
(2)
Die Anwender fragen, ob sich das System im praktischen Betrieb wie gefordert
verhält.
Zeigen, dass die Implementation der Spezifikation des Systems entspricht.
Ansatz (2) reicht von „Veranschaulichen“ über logisch hieb- und stichfestes „Nachweisen“ zu formalem „Beweisen“. Implementationen und formale Spezifikationen sind
mathematische Konstrukte, von denen zu zeigen ist, dass sie inhaltlich und formal
zueinander passen.
MathematikerInnen beweisen die Allgemeingültigkeit von Aussagen. InformatikerInnen beweisen die Korrektheit von Implementationen bezüglich ihrer Spezifikationen.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3-6
3 Methodik
Die spezifizierte und implementierte Einheit - hier System genannt - muss dabei nicht
etwas Großes sein; es kann sich um ein Programmpaket, ein Modul, eine Prozedur,
einen Algorithmus, eine Menge von Testfällen, einen Anwendungsfall oder Ähnliches
handeln. Daher bedeutet Mathematik für InformatikerInnen weniger, angesammelte
Formeln und Kochrezepte mechanisch anzuwenden, als vielmehr mathematische
Methoden, insbesondere Beweismethoden, zu beherrschen und kreativ zu nutzen.
In der Mathematik und der Informatik gleich wichtig ist ein allgemeines, oft Teile-undHerrsche (divide-and-conquer) genanntes Prinzip zum Lösen von Problemen.
Leitlinie 3.1
Prinzip der
Dekomposition und
Komposition
Reduziere die Komplexität eines Problems und seiner Lösung durch
l
l
Dekomposition des Problems in Teilprobleme und
Komposition der Teillösungen zu einer Lösung des Problems.
Zerlege also ein komplexes Problem in einfachere, überschaubare, lösbare Teilprobleme. Konstruiere eine Lösung des Problems, indem du die Lösungen der Teilprobleme zusammenfügst.
In den folgenden Beweismethoden erscheint dieses Prinzip zu verschiedenen Problemlösungskonzepten konkretisiert, z.B.:
l
l
l
3.3.1
Fallunterscheidung,
Zerlegung einer Implikation in eine Kette von Implikationen,
Zerlegung einer Äquivalenz in zwei Implikationen.
Direkter Beweis
Allgemein hat der zu beweisende Satz die Form einer allgemeingültigen Aussage
A.
Oft nutzt man zu seinem Beweis einen anderen Satz B, der aus dem Axiomensystem
ableitbar ist, und die Schlussregel modus ponens, Satz 2.20 (4) S. 2-26:
(B ∧ (B A)) A.
Ist B schon bewiesen und folgt A aus B, so ist A bewiesen.
Keine Zirkel in
Beweisen
Analog wie in Definitionen Zirkel zu vermeiden sind, dürfen auch in Beweisen keine
Zirkel vorkommen. Das heißt, der Beweis eines Satzes darf nur die Axiome, Definitionen vorkommender Begriffe und schon bewiesene Sätze nutzen. Insbesondere darf im
Beweis eines Satzes nicht der Satz selbst verwendet werden, und zwar weder direkt
noch indirekt durch einen anderen Satz, der mittels des zu beweisenden Satzes „bewiesen“ scheint. (Diese Regel scheint bei induktiven Beweisen (→ 3.3.3) verletzt, ist es
aber nicht.)
Oft hat der zu beweisende Satz die Form einer allgemeingültigen Implikation
A B,
unter der Voraussetzung A gilt die Folgerung B.
Betrachten wir die vier möglichen Belegungen von A und B: Ist A falsch, so ist A B
unabhängig von B wahr. Ist A wahr und B falsch, so ist A B falsch - dieser Fall scheidet aus, da sonst A B nicht allgemeingültig wäre. Im Fall A, B wahr ist auch A B
wahr.
Um die Argumentation zu verdeutlichen, nutzen wir die logische Äquivalenz
A B ≡ ¬A ∨ (A ∧ B).
Wir transformieren den Satz also in
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.3 Beweismethoden
3-7
¬A ∨ (A ∧ B)
und betrachten zwei Fälle:
(1)
(2)
Ist A falsch, so ist der Satz unabhängig von B wahr. In diesem Fall bleibt nichts
zu zeigen.
Ist A wahr, so muss auch B wahr sein, damit der Satz wahr ist. Setzen wir also A
als wahr voraus und folgern daraus, dass auch B wahr ist, so ist der Satz A B
bewiesen.
Können wir B nicht in einem Schritt aus A folgern, so zeigen wir für geeignete Aussagen C1,.., Cn, dass die Implikationen
A C1, C1 C2,.., Cn−1 Cn, Cn B
allgemeingültig sind, also kurz die Kette der Implikationen
A C1 C2 ... Cn−1 Cn B.
Aus der Transitivität der Implikation, Satz 2.19 (5) S. 2-25 folgt dann A B.
Beispiel 3.1
Pythagoreische 1
Zahlentripel
Satz: Bilden drei Zahlen ein pythagoreisches Zahlentripel, so bilden auch ihre Vielfachen pythagoreische Zahlentripel.
Formalisierter Satz:
∀a, b, c ∈ lN : (a2 + b2 = c2 ∀k ∈ lN : (ka)2 + (kb)2 = (kc)2).
Beweis:
Voraussetzung: Seien a, b, c ∈ lN beliebig mit a2 + b2 = c2.
Behauptung (zu zeigen): ∀k ∈ lN : (ka)2 + (kb)2 = (kc)2.
Beweis der Behauptung: Sei k ∈ lN beliebig. Dann gilt:
(ka)2 + (kb)2 = k2 ∗ a2 + k2 ∗ b2 = k2 ∗ (a2 + b2) =
k2 ∗ c2 = (kc)2,
p
also (ka)2 + (kb)2 = (kc)2, was zu beweisen war.
3.3.1.1
Voraussetzung
Gegenbeispiel
Es ist zu zeigen, dass die Umkehrung eines Satzes der Form
AB
nicht allgemeingültig ist, also dass
¬(B A),
oder äquivalent dazu
¬A ∧ B
erfüllbar ist. Dazu genügt es, einen speziellen Sachverhalt anzugeben, in dem A nicht
gilt, aber B. Dieser Sachverhalt heißt ein Gegenbeispiel (counterexample) zu B A.
Beispiel 3.2
Prim und teilerfremd
Satz: Je zwei verschiedene Primzahlen sind teilerfremd (relativ prim). Umgekehrt müssen zwei teilerfremde Zahlen nicht prim sein.
Formalisierter Satz:
∀m, n ∈ lN : (m ≠ n ∧ prim(m) ∧ prim(n)) ggT(m, n) = 1).
1
Pythagoras von Samos (um 580 - um 500 v.u.Z.), griechischer Philosoph, Mathematiker, gründete einen religiös-wissenschaftlichen Geheimbund. Der nach ihm benannte Satz war schon viel früher in der babylonischen Mathematik
bekannt (→ Aufgabe 2.48 S. 68).
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3-8
3 Methodik
Anders formuliert:
∀m, n ∈ lN : ((prim(m) ∧ prim(n)) (m = n ∨ ggT(m, n) = 1)).
Gegenbeispiel:
15 und 16 sind teilerfremd, da 15 = 3 ∗ 5 und 16 = 2 ∗ 2 ∗ 2 ∗ 2, also ggT(15, 16) = 1,
p
aber 15 und 16 sind keine Primzahlen.
3.3.1.2
Äquivalenzbeweis
Der zu beweisende Satz hat die Form einer allgemeingültigen (logischen) Äquivalenz
A ⇔ B.
Um ihn zu beweisen, spalten wir ihn mit Satz 2.19 (6) S. 2-25 in zwei Implikationen
auf:
(A B) ∧ (B A),
die wir einzeln direkt beweisen.
3.3.1.3
Ringschlussbeweis
Der zu beweisende Satz behauptet die logische Äquivalenz einer Folge von Aussagen
A1,.., An, d.h. er hat die Form
(A1 ⇔ A2) ∧ (A2 ⇔ A3) ∧ ... ∧ (An−1 ⇔ An).
Um ihn zu beweisen genügt es, die Implikationskette
A1 A3 ... An−1 An A1
zu zeigen. Statt n − 1 Äquivalenzen, also 2 ∗ (n − 1) Implikationen, sind nur n Implikationen zu beweisen, der Rest folgt aus der Transitivität der Implikation.
3.3.2
Indirekter Beweis
Indirekte Beweise teilen sich in Kontrapositions- und Widerspruchsbeweise.
3.3.2.1
Kontrapositionsbeweis
Der zu beweisende Satz hat wieder die Form einer allgemeingültigen Implikation
A B.
Um ihn zu beweisen, nutzen wir die Kontrapositionsregel, Satz 2.19 (8) S. 2-25:
A B ≡ ¬B ¬A.
Wir transformieren den Satz also in
¬B ¬A
und beweisen ihn so direkt: Voraussetzung: ¬B; Behauptung (zu zeigen): ¬A.
Bringt das überhaupt etwas? Oft sind beide Formen gleich schwierig oder einfach zu
beweisen. Aber manchmal ist eben die kontraponierte Form leichter zu zeigen. Im folgenden Beispiel ist es leichter, zu quadrieren, als eine Wurzel zu ziehen.
Beispiel 3.3
Gerade und ungerade
Zahlen und Quadrate
Satz: Das Quadrat einer natürlichen Zahl ist genau dann gerade (ungerade), wenn sie
selbst gerade (ungerade) ist.
Teilweise formalisierter Satz:
(1)
∀n ∈ lN0 : (n2 gerade n gerade).
(2)
∀n ∈ lN0 : (n gerade n2 gerade).
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.3 Beweismethoden
3-9
(3)
∀n ∈ lN0 : (n2 ungerade n ungerade).
(4)
∀n ∈ lN0 : (n ungerade n2 ungerade).
Da eine natürliche Zahl entweder gerade oder ungerade ist, sind die Aussagen (1) und
(4) äquivalent; (4) ist die Kontraposition von (1). Analog ist (3) die Kontraposition von
(2). (2) ist unmittelbar einzusehen. Damit ist auch (3) gezeigt. Um (1) zu zeigen, beweisen wir die Kontraposition (4).
Beweis:
Voraussetzung: Sei n ∈ lN0 beliebig, aber ungerade.
Behauptung (zu zeigen): n2 ist ungerade.
Beweis der Behauptung: Da n ungerade ist, gibt es ein k ∈ lN0 mit n = 2k + 1. Damit
ist n2 = (2k + 1)2 = 4k2 + 4k + 1 = 2 ∗ (2k2 + 2k) + 1. Also ist auch n2 ungerade, was zu
p
beweisen war.
Kontraposition ist auch einsetzbar, wenn der zu beweisende Satz die Form einer allgemeingültigen Aussage
A
hat. Wir nutzen einen aus dem Axiomensystem ableitbaren Satz B und die Schlussregel
modus tollens, Satz 2.20 (5) S. 2-26:
((¬A ¬B) ∧ B) A.
B ist schon bewiesen. Wir zeigen, dass ¬B aus ¬A folgt. Damit ist A bewiesen.
3.3.2.2
Widerspruchsbeweis
Allgemein hat der zu beweisende Satz die Form einer allgemeingültigen Aussage
A.
Um ihn zu beweisen, nutzen wir die Regel reductio ad absurdum, Satz 2.20 (8) S. 2-26:
(¬A 0) A.
Aus der Annahme, dass A nicht gilt, also ¬A, leiten wir einen Widerspruch 0 ab. Da
dies nicht sein darf, muss A statt ¬A gelten. Der Widerspruchsbeweis von A ist also ein
direkter Beweis von ¬A 0.
Varianten dieser Art von Widerspruchsbeweisen basieren auf folgenden Äquivalenzen:
A ≡ ¬A 0.
A ≡ ¬A A.
A ≡ ¬A (C ∧ ¬C).
Oft hat der zu beweisende Satz die Form einer allgemeingültigen Implikation
A B.
Die Beweisregel lautet dann
(¬(A B) 0) (A B),
oder äquivalent dazu
((A ∧ ¬B) 0) (A B).
Aus der Annahme, dass A gilt, aber B nicht, also A ∧ ¬B, leiten wir einen Widerspruch
0 ab. Da dies nicht sein darf, muss A B gelten. Der Widerspruchsbeweis von A B
ist also ein direkter Beweis von (A ∧ ¬B) 0.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3 - 10
3 Methodik
Varianten dieser Art von Widerspruchsbeweisen basieren auf folgenden Äquivalenzen:
A B ≡ ¬(A ∧ ¬B).
A B ≡ (A ∧ ¬B) 0.
A B ≡ (A ∧ ¬B) ¬A.
A B ≡ (A ∧ ¬B) B.
A B ≡ (A ∧ ¬B) (C ∧ ¬C).
Satz 2.19 (7) S. 2-25
Wozu brauchen wir diese Beweismethode? Sie ist nützlich, wenn weder A noch ¬B
allein sich eignen, um daraus die Behauptung B bzw. ¬A zu folgern. Mit A ∧ ¬B setzen
wir mehr voraus und müssen weniger folgern, nämlich nur 0, ¬A oder B. Wir zeigen
die Methode des Widerspruchsbeweises an zwei klassischen Beispielen, dem Satz von
Euklid über die Unendlichkeit der Primzahlmenge und dem Satz von Hippasos über die
Irrationalität der Wurzel aus 2.
Beispiel 3.4
Unendlichkeit der
Primzahlmenge
Lemma 1 zum Satz von Euklid: Jede natürliche Zahl n > 1 hat eine Primzahl als Teiler.
Beweis:
Da n Teiler von n ist, hat n einen von 1 verschiedenen Teiler. Sei p der kleinste von 1
verschiedene Teiler von n.
Behauptung (Aussage A): p ist eine Primzahl.
Annahme: ¬A, d.h. p ist keine Primzahl.
Konstruktion eines Widerspruchs:
Da p keine Primzahl ist, hat p einen von 1 und p verschiedenen Teiler q. Da q Teiler
von p und p Teiler von n ist, ist q auch Teiler von n. Wegen 1 < q < p ≤ n ist p nicht der
kleinste Teiler von n. Die Annahme, dass p keine Primzahl ist, führt zum Widerspruch,
dass p zugleich der kleinste und nicht der kleinste von 1 verschiedene Teiler von n ist.
p
Also muss die Annahme falsch sein, d.h. p ist doch eine Primzahl.
Lemma 2 zum Satz von Euklid: Zu jeder endlichen Menge P von Primzahlen gibt es
eine Primzahl, die nicht in P enthlaten ist.
Beweis:
Seien P = {p1,.., pn} eine endliche Menge von Primzahlen und p := p1 ∗ ... ∗ pn + 1.
Behauptungen:
(1)
Keine der Primzahlen p1,.., pn ist Teiler von p.
(2)
p hat eine Primzahl q als Teiler.
Beweis der Behauptungen:
(1)
ist klar nach Konstruktion von p, denn beim Teilen von p durch ein pi bleibt der
Rest 1.
Detailbeweis durch Widerspruch. Annahme: Ein pi ist Teiler von p.
Dann gibt es natürliche Zahlen a, b, sodass
pi ∗ a = p = p1 ∗ ... ∗ pi ∗ ... ∗ pn + 1 = pi ∗ b + 1,
also
pi ∗ (a − b) = 1.
(2)
Daraus folgt pi = 1 und a − b = 1. Dies widerspricht der Annahme, dass pi eine
Primzahl ist.
Nach Konstruktion ist p > 1. Nach Lemma 1 hat p eine Primzahl q als Teiler.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.3 Beweismethoden
3 - 11
Da q nach (2) Teiler von p und Primzahl ist, kann q nicht unter den p1,.., pn vorkommen, denn diese sind nach (1) keine Teiler von p. Damit ist q eine Primzahl, die nicht in
p
P enthalten ist.
Satz von Euklid (Aussage A): Es gibt unendlich viele Primzahlen.
Beweis:
Annahme: ¬A, d.h. die Menge lP aller Primzahlen ist endlich.
Konstruktion eines Widerspruchs:
Nach Lemma 2 gibt es eine Primzahl, die nicht in lP enthalten ist. Dies widerspricht der
Voraussetzung, dass lP alle Primzahlen umfasst.
p
Korollar zum Satz von Euklid (Aussage A): Es gibt keine größte Primzahl.
Beweis:
Annahme: ¬A, d.h. es gibt eine größte Primzahl p.
Konstruktion eines Widerspruchs:
Für die Menge aller Primzahlen gilt:
lP
= {n ∈ lN | n ist Primzahl und n ≤ p}.
Da es nur endlich viele natürliche Zahlen gibt, die kleiner als p sind, ist
Nach dem Satz von Euklid ist lP aber unendlich. Widerspruch!
lP
endlich.
p
Das Produkt der ersten n Primzahlen p1,.., pn plus 1 muss keine Primzahl sein, wie das
Gegenbeispiel der ersten sechs Primzahlen zeigt: 2 ∗ 3 ∗ 5 ∗ 7 ∗ 11 ∗ 13 + 1 = 30031 =
59 ∗ 509.1
Beispiel 3.5
Irrationalität von Wurzel
aus 2
Satz von Hippasos2 (Aussage A): Die Wurzel aus 2 ist keine rationale Zahl,
√2 ∉
3.
Beweis:
Annahme: ¬A, d.h. die Wurzel aus 2 ist rational, √2 ∈
3.
Konstruktion eines Widerspruchs:
Informalere Variante:
Dann gibt es teilerfremde Zahlen p ∈
0,
lN
q∈
lN
mit √2 = p/q. Quadrieren der Glei-
2/q2.
Multiplizieren der Gleichung mit q2 ergibt 2 ∗ q2 = p2. Also
chung ergibt 2 = p
muss p2 gerade sein. Nach Beispiel 3.3 muss dann auch p gerade sein. Damit gibt es ein
r ∈ lN mit p = 2 ∗ r. Somit ist 2 ∗ q2 = p2 = 2 2 ∗ r2, also q2 = 2 ∗ r2. Also muss auch q2
und damit q gerade sein. Damit haben p und q den gemeinsamen Teiler 2, im Widerspruch zur Annahme, dass sie teilerfremd sind.
Formalere Variante:
√2 ∈
3
∃p ∈ lN0, q ∈ lN : (ggT(p, q) = 1 ∧ √2 = p/q).
√2 = p/q 2 = p2/q2 2 ∗ q2 = p2 p2 gerade.
(Beispiel 3.3 ∧ p2 gerade) p gerade ∃r ∈ lN : p = 2 ∗ r.
p = 2 ∗ r p2 = 2 2 ∗ r2.
1
Ich danke Herbert Bauer für diese Bemerkung.
2
Hippasos von Metapont (um 500 v.u.Z.), griechischer Mathematiker, Schüler des Pythagoras,
entdeckte inkommensurable Strecken und wurde dafür angeblich ertränkt (da die Pythagoräer
die natürlichen Zahlen mit ihren mythisch-religiösen Ideen verknüpft hatten).
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3 - 12
3 Methodik
(2 ∗ q2 = p2 ∧ p2 = 22 ∗ r2) 2 ∗ q2 = 22 ∗ r2 q2 = 2 ∗ r2 q2 gerade.
(Beispiel 3.3 ∧ q2 gerade) q gerade ∃s ∈ lN : q = 2 ∗ s.
(p = 2 ∗ r ∧ q = 2 ∗ s) (2 teilt p ∧ 2 teilt q) ggT(p, q) ≥ 2 > 1.
(ggT(p, q) = 1 ∧ ggT(p, q) > 1) 0, Widerspruch!
p
Manche Beweise erscheinen als Widerspruchsbeweise, obwohl sie keine sind.
Leitlinie 3.2
Keine unechten
Widerspruchsbeweise
Vermeide scheinbare Widerspruchsbeweise für A B, die aus A und ¬B - ohne ¬B
zu verwenden - den „Widerspruch“ B folgern, oder - ohne A zu verwenden - den
„Widerspruch“ ¬A folgern! Solche Beweise sind umständliche, getarnte direkte
Beweise oder Kontrapositionsbeweise.
Verwende Widerspruchsbeweise nur dort, wo sie unverzichtbar erscheinen!
3.3.3
Induktiver Beweis
Die Methode des induktiven Beweises basiert auf dem Prinzip der Induktion und eignet sich zum Beweisen von Eigenschaften induktiv definierter Konstrukte. Beispielsweise ist die Vorgehensweise bei einer induktiv definierten Formelsprache F wie folgt
(→ 3.2.2). Um zu beweisen, dass eine Behauptung B(F) für alle Formeln F ∈ F gilt,
genügt es, die folgenden Schritte „induktiv über den Aufbau der Formeln“ durchzuführen:
l
l
Induktionsanfang (Induktionsanker): Zeige, dass B(A) für alle atomaren Formeln
A ∈ F gilt.
Induktionsschritt:
■ Unter der Induktionsvoraussetzung (Induktionsannahme), dass B(E) für alle
einfacheren Formeln E ∈ F gilt,
■ zeige im Induktionsschluss die Induktionsbehauptung, dass B(F) für komplexere Formeln F ∈ F gilt, die sich aus einfacheren Formeln E ∈ F zusammensetzen.
Damit ist die Behauptung B(F) für alle Formeln F ∈ F bewiesen.
Die Beweismethode der vollständigen Induktion lernen wir zusammen mit den natürlichen Zahlen in Kapitel 5 kennen.
3.4
Literaturhinweise
Dieses Kapitel nutzt Ideen aus [8], [6], [13], [16], [18], [19], [23] und [27].
3.5
Übungen
Aufgabe 3.1
Definitionen
Stellen Sie fest, ob folgende Sätze methodisch korrekte Definitionen sind und identifiezieren Sie das Definiendum und das Definiens!
(1)
(2)
Wir sagen, dass ein Maß Bier voll ist, wenn das Glas wenigstens so viel Bier enthält, dass der Pegel nicht mehr als 1 cm unterhalb der 1-Liter-Marke liegt und
der Schaum mindestens 1 cm über die Marke hinausreicht.
Sei B ein Maß Bier. B wird als voll bezeichnet dann und nur dann, wenn der
Inhalt von B aus einer Flüssigkeit besteht, die sich in staatlich geprüften Laboratorien zweifelsfrei als das landläufig als Bier bezeichnete Getränk entsprechend
dem deutschen Reinheitsgebot und der Nahrungsmittelgesetze der EU identifizieren lässt, und zwar in einem Volumen bei Zimmertemperatur, das höchstens
um ein Prozent von der Einheit ein Liter abweicht.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
3.5 Übungen
3 - 13
(3)
(4)
(5)
(6)
Aufgabe 3.2
Direkter Beweis
Beweisen Sie, dass das geometrische Mittel zweier nichtnegativer reeller Zahlen kleiner oder gleich ihrem arithmetischen Mittel ist! Sind die Zahlen verschieden, so ist ihr
geometrisches Mittel kleiner als ihr arithmetisches Mittel.
(1)
(2)
(3)
(4)
Aufgabe 3.3
Descartes’ Methode
Unter Implantaten versteht die Zahnheilkunde künstliche Zahnwurzeln zur Befestigung von Kronen, Brücken oder Prothesen.
Ist eine natürliche Zahl größer als 1 und nur durch 1 und sich selbst teilbar, so
nennen wir sie eine Primzahl.
Zwei ganze Zahlen heißen relativ prim, wenn sie nur 1 als gemeinsamen Teiler
haben.
Ein Hund ist ein Haustier, das vom Wolf abstammt, also zum Beispiel ein Dakkel.
∀a, b ∈
∀a, b ∈
∀a, b ∈
∀a, b ∈
! : ((a ≥ 0 ∧ b ≥ 0) √ab ≤ (a + b) / 2)
! : ((a ≥ 0 ∧ b ≥ 0 ∧ a ≠ b) √ab < (a + b) / 2)
! : ((a ≥ 0 ∧ b ≥ 0) (a = b ⇔ √ab = (a + b) / 2))
! : ((a ≥ 0 ∧ b ≥ 0) (a ≠ b ⇔ √ab < (a + b) / 2))
Diskutieren Sie die folgenden vier Regeln, die René Descartes in seinem Werk Discours de la Méthode aufstellt:
Die erste besagte, niemals eine Sache als wahr anzunehmen, von der ich nicht evidentermaßen erkenne, dass sie wahr ist: d.h. Übereilung und Vorurteile sorgfältig
zu vermeiden und über nichts zu urteilen, was sich meinem Denken nicht so klar und
deutlich darstellte, dass ich keinen Anlass hätte, daran zu zweifeln.
Die zweite, jedes Problem, das ich untersuchen würde, in so viele Teile zu teilen, wie
es angeht und wie es nötig ist, um es leichter zu lösen.
Die dritte, in der gehörigen Ordnung zu denken, d.h. mit den einfachsten und am
leichtesten zu durchschauenden Dingen zu beginnen, um so nach und nach, gleichsam über Stufen, bis zur Erkenntnis der zusammengesetzten aufzusteigen, ja selbst
in Dinge Ordnung zu bringen, die natürlicherweise nicht aufeinanderfolgen.
Die letzte, überall so vollständige Aufstellungen und so allgemeine Übersichten aufzustellen, dass ich versichert wäre, nichts zu vergessen.1
1
Zitiert nach Tom Sorell: Descartes. Herder, Freiburg (1999), S. 60; zitiert nach der Standardausgabe von Descartes’ Werken von Adam und Tannery, Vrin, Paris (1964-75), Band 6, S. 1819.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
3 - 14
© Karlheinz Hug, Hochschule Reutlingen
3 Methodik
9.8.04
4
Relationale Strukturen
AufgabeBeispiel
4
Bild
4 4 (4)
MathAussagen
Leitlinie Programm
4
4 4
Tabelle 4
Dieses Kapitel vertieft die Kenntnisse über Relationen Abbildungen, stellt als grundlegende mathematische Strukturen Äquivalenz- und Ordnungsstrukturen vor, und führt
Kardinal- und Ordinalzahlen ein.
4.1
Allgemeines über Relationen und Abbildungen
Wir befassen uns näher mit den aus 1.7 S. 1-18 bekannten zweistelligen Relationen. Ist
R⊆M×N
eine Relation in einer Produktmenge M × N, so betrachten wir die Notation mit der Elementrelation der Mengenlehre, die übliche Infixnotation, die Prädikatnotation und die
Bezeichnung eines Funktionswerts der charakteristischen Funktion als äquivalent:
(x, y) ∈ R
Abkürzungen
⇔
xRy
⇔
R(x, y)
⇔
χR(x, y)
⇔
χR(x, y) = 1.
Allgemein sind bei Relationen abkürzende Schreibweisen beliebt, die wir schon in Spezialfällen kennen. Hat man mehrere Paare, die in Beziehungen zueinander stehen und
zusammenpassen, so schreibt man gerne Beziehungsketten statt Konjunktionen von
Beziehungen hin, z.B.
v=w≤x<y→z∈L⊆M⊂N=O
v = w ∧ w ≤ x ∧ x < y ∧ y → z ∧ z ∈ L ∧ L ⊆ M ∧ M ⊂ N ∧ N = O,
statt
allgemein also
xRySz
4.1.1
statt
x R y ∧ y S z.
Zugeordnete Relationen
Gegeben sind die Mengen M, N und eine Relation R ⊆ M × N. In der Literatur hat die
Produktmenge M × N meist keinen Namen; wir nennen sie den Grundbereich von R.
Wie erhält man aus R weitere Relationen? Die einfachsten Möglichkeiten sind:
l
Einschränkung
l
Fortsetzung
l
Teilrelation
Einschränkung: Sind L ⊆ M, O ⊆ N, so ist
R∩L×O
eine Relation in L × O; sie heißt die Einschränkung (Restriktion) von R auf L × O.
Damit hat R ∩ L × O den Grundbereich L × O. Ist der Grundbereich aus dem
Zusammenhang klar, so schreiben wir kurz R statt R ∩ L × O, z.B. x R y statt
x R ∩ L × O y für x ∈ L, y ∈ O. Anschaulich: In der Computergrafik entspricht die
Einschränkung dem Clipping, d.h. dem Entfernen von Bildpunkten, die außerhalb
eines abzubildenden Fensters liegen.
Fortsetzung: Sind M ⊆ L, N ⊆ O, so ist jede Relation S ⊆ L × O mit
S∩M×N=R
eine Fortsetzung von R auf L × O. R selbst ist die kleinste Fortsetzung von R auf
L × O.
Teilrelation: Jede Teilmenge
S⊆R
ist eine Relation in M × N; sie heißt eine Teilrelation von R. Man sagt auch: S ist
feiner als R oder eine Verfeinerung von R, R ist gröber als S oder eine Vergröberung von S (weil Oberrelation von S seltsam klingt). Ist L ⊆ M, O ⊆ N, so ist die
kleinste Fortsetzung der Einschränkung R ∩ L × O auf M × N eine Teilrelation von
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Kapitel 4 - Seite 1 von 80
4-2
4 Relationale Strukturen
R. Anschaulich: In der Computergrafik setzt sich ein digitales Farbbild (= Relation)
aus roten, grünen und blauen Teilbildern (= Teilrelationen) zusammen.
Bild 4.1
Einschränkung und
Teilrelation
Einschränkung
y
Teilrelation
x
l
Komplementäre
Relation
Bild 4.2
Komplementäre
Relation
Komplementierung:
R = M × N \ R,
das Komplement von R, ist die komplementäre Relation zu R. Anschaulich handelt es sich um ein Negativbild.
y
x
l
R−1 := {(y, x) | (x, y) ∈ R} ⊆ N × M
ist die Umkehrrelation (converse) zu R (→ Definition 1.25 S. 1-19). Sie entsteht
anschaulich durch Spiegelung an der Winkelhalbierenden der beiden Koordinatenachsen.
Umkehrrelation
Bild 4.3
Umkehrrelation
Umkehrung:
x
y
Die folgenden Eigenschaften der Umkehrrelation sind offensichtlich.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Satz 4.1
Umkehrrelation
4-3
Für eine Relation R ⊆ M × N gilt:
∅−1 = ∅.
(M × N)−1 = N × M.
(1)
(2)
(R−1)−1 = R.
(3)
R⊆S
Involution
R−1 ⊆ S−1.
Monotonie
4.1.2
Bereiche von Relationen
Beispiel
Ist M eine Menge von StudentInnen, N eine Menge von Lehrveranstaltungen und
R ⊆ M × N die Relation „besucht“, so gibt der Nachbereich xR einer StudentIn x ∈ M
an, welche Lehrveranstaltungen x besucht. Der Vorbereich Ry einer Lehrveranstaltung
y ∈ N gibt an, welche StudentInnen y besuchen.
Bild 4.4
Nach- und Vorbereich
M :=
R := besucht
N :=
Menge der StudentInnen
Menge der Lehrveranstaltungen
Vorbereich
von MT1
Ali
TG1
Eva
I1
MT1
Ina
Nachbereich
von Eva
AK
Udo
E1
In einem Pfeildiagramm entspricht ein Nachbereich einer Menge von Zielen von Pfeilen, die von einer gegebenen Startmenge ausgehen. Ein Vorbereich entspricht einer
Menge von Startpunkten von Pfeilen, die auf eine gegebene Bildmenge treffen.
In einer Matrix entspricht dem Nachbereich einer Zeile die Menge der darin markierten
Spalten, dem Vorbereich einer Spalte die Menge der darin markierten Zeilen.
Definition 4.2
Nach- und Vorbereich
n
Sind M, N Mengen und R ⊆ M × N eine Relation, so heißt für L ⊆ M
LR
:= {y ∈ N | ∃x ∈ L : x R y}
der Nachbereich von L zu R, und für O ⊆ N heißt
RO := {x ∈ M | ∃y ∈ O : x R y}
der Vorbereich von O zu R. Die Nach- und Vorbereiche einelementiger Mengen heißen primitiv; wir schreiben dafür
xR
:= {x}R = {y ∈ N | x R y},
Ry := R{y} = {x ∈ M | x R y}.
L
Die Literatur bietet uneinheitliche Bezeichnungen für zu unterscheidende Mengen. Mal heißt M
Definitionsbereich und RN Vorbereich von R, mal ist es umgekehrt. Entsprechend heißen N oder
MR mal Wertebereich, mal Nachbereich. In der englischsprachigen Literatur sind die Bezeichnungen domain und range so üblich:
domain(R) := RN
und
range(R) := MR.
Durch ihre Nach- und Vorbereiche induziert eine Relation R zwei Abbildungen zwischen den Potenzmengen ihrer Komponentenmengen:
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4-4
4 Relationale Strukturen
P(M) → P(N), L → LR,
|
P(N) → P(M), O → RO.
|
Die folgenden Beziehungen dieser Abbildungen sind leicht zu zeigen.
Satz 4.3
Bereiche und
Mengenoperationen
Für Mengen M, N, eine Relation R ⊆ M × N, und Teilmengen K, L ⊆ M und O, P ⊆ N
gilt:
= R∅ = ∅.
(1)
∅R
(2)
K⊆L
O⊆P
(3)
⊆ KR ∩ LR.
RO∩P ⊆ RO ∩ RP.
(4)
K∪LR
⊆ LR.
RO ⊆ RP.
KR
Monotonie
K∩LR
= KR ∪ LR.
LR
RO∪P = RO ∪ RP.
(5)
⊇ KR \ LR.
RO\P ⊇ RO \ RP.
(6)
LR
=
RO =
∪ xR .
Vereinigungstreue
x∈L
∪ Ry .
y∈O
K\LR
= R−1L.
RO = OR−1.
4.1.3
Eigenschaften von Relationen
Bei Relationen kann es im Allgemeinen Elemente geben, die zu keinem anderen Element oder zu mehreren anderen Elementen in Beziehung stehen. Relationen mit entsprechend speziellen Eigenschaften verdienen besonderes Interesse.
Definition 4.4
Eigenschaften
zweistelliger
Relationen
Sind M, N Mengen, so heißt eine Relation R ⊆ M × N
linkstotal
:⇔
∀x ∈ M ∃y ∈ N : x R y;
rechtstotal
:⇔
∀y ∈ N ∃x ∈ M : x R y;
bitotal
:⇔
R ist links- und rechtstotal;
linkseindeutig
:⇔
∀x, x´ ∈ M, y ∈ N : ((x R y ∧ x´ R y) x = x´);
rechtseindeutig
(partielle Abbildung)
:⇔
∀x ∈ M, y, y´∈ N : ((x R y ∧ x R y´) y = y´);
eineindeutig
:⇔
R ist links- und rechtseindeutig;
homogen
:⇔
M = N.
Beispiele
Die in Bild 4.4 dargestellte Relation hat keine dieser Eigenschaften.
Identität
Die Identität auf M,
idM = {(x, x) | x ∈ M}
(→ 1.8.1 S. 1-21), besitzt alle diese Eigenschaften. Offenbar gilt
idM−1 = idM.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Allrelation
4-5
Die Allrelation auf M,
M 2,
ist bitotal und homogen, aber - falls M mehrere Elemente hat - weder links- noch
rechtseindeutig.
Auf einer Menge von Menschen ist die homogene Relation „ist Mutter von“ rechtstotal
und linkseindeutig.
Einschränkung
Teilrelation
Offenbar gilt: Mit einer Relation sind auch alle Verfeinerungen, Vergröberungen, deren
Komplemente und Umkehrrelationen homogen. Ist R ⊆ M × N links-, rechts- oder eineindeutig, so haben Einschränkungen R ∩ L × O für L ⊆ M, O ⊆ N und Teilrelationen
S ⊆ R dieselbe Eigenschaft. Für die Links-, Rechts- und Bitotalität gilt Entsprechendes
nicht, sie können bei Einschränkungen und Teilrelationen verloren gehen. Die Totalitäten bleiben aber bei Vergröberungen erhalten. Fortsetzungen und das Komplement können alle Eigenschaften ihrer Ausgangsrelation verlieren.
Umkehrrelation
Mit der Umkehrrelation R−1 gilt offenbar:
R ist linkstotal
R ist rechtstotal
R ist bitotal
R ist linkseindeutig
R ist rechtseindeutig
R ist eineindeutig
⇔
⇔
⇔
⇔
⇔
⇔
R−1 ist rechtstotal,
R−1 ist linkstotal,
R−1 ist bitotal,
R−1 ist rechtseindeutig,
R−1 ist linkseindeutig,
R−1 ist eineindeutig.
Beachte, dass eine wie oben definierte partielle Abbildung keine Abbildung im Sinne
unserer Definition 1.26 S. 1-20 ist. Mit diesen Begriffen ist eine Abbildung
f : M → N, x → f(x) = y
Abbildung
|
eine linkstotale, rechtseindeutige Relation auf M × N. Manche Autoren verlangen von
Abbildungen nur die Rechtseindeutigkeit und sprechen von (links)totalen Abbildungen, wenn sie zusätzlich linkstotal sind.
Beispiel
Relation oder
Abbildung?
Auf einer Menge von Menschen ist die Umkehrrelation von „ist Mutter von“ eine
Abbildung. Relationale und funktionale Schreibweise hängen so zusammen:
⇔
y ist Mutter von x.
Mutter(x) = y
⇔
x (ist Mutter von)−1 y
Im Folgenden entwickeln wir Rechenregeln für Relationen und spezialisieren sie für
Abbildungen. Bei konkreten Anwendungen kann man mit Relationen oder Abbildungen arbeiten. Jede Abbildung lässt sich als Relation relationenalgebraisch behandeln,
doch wird die Abbildungsnotation oft handlicher sein. Ist andererseits eine beliebige
Relation R ⊆ M × N gegeben, so ist ihr die Abbildung
M → P(N), x → xR
|
zugeordnet, die jedem x ∈ M seinen primitiven Nachbereich zuordnet (→ Definition
4.2). Indem man vom Betrachten von Element-Element-Paaren (x, y) ∈ R ⊆ M × N zum
Betrachten von Element-Mengen-Paaren (x, xR) ∈ M × P(N) übergeht, gewinnt man die
Linkstotalität und Rechtseindeutigkeit:
l
l
9.8.04
Jedem x ∈ M ist mindestens eine Menge xR ⊆ N zugeordnet, die leer sein kann. Gibt
es zu x kein y ∈ N mit x R y, so ist xR = ∅.
Jedem x ∈ M ist höchstens eine Menge xR ⊆ N zugeordnet, die mehrere Elemente
haben kann. Gibt es zu x mehrere y, y´ ∈ N mit x R y, x R y´, so gehören sie zu xR:
y, y´ ∈ xR.
© Karlheinz Hug, Hochschule Reutlingen
4-6
4 Relationale Strukturen
Die Abbildungseigenschaften sind durch den komplexeren Wertebereich bezahlt.
Eigenschaften von Relationen lassen sich mit ihren Bereichen charakterisieren. Das
bringt keine tief liegenden Erkenntnisse, sondern dient dazu, das Umformen prädikatenlogischer Formeln zu üben.
Satz 4.5
Eigenschaften und
Bereiche
4.1.4
Für Mengen M, N und eine Relation R ⊆ M × N gilt:
(1)
R ist linkstotal
⇔
RN = M.
(2)
R ist rechtstotal
⇔
MR
(3)
R ist linkseindeutig
⇔
∀x, x´ ∈ M : (xR ∩ x´R ≠ ∅ x = x´).
(4)
R ist rechtseindeutig
⇔
∀y, y´∈ N : (Ry ∩ Ry´ ≠ ∅ y = y´).
= N.
Zugeordnete Abbildungen
Im wichtigen Spezialfall der Abbildungen, also der linkstotalen, rechtseindeutigen
Relationen, geht man oft etwas anders vor als sonst bei Relationen. Wie allgemein bei
Relationen stellt sich die Frage, wie man aus einer gegebenen Abbildung f : M → N
weitere Abbildungen erhält. Die in 4.1.1 genannten einfachsten Möglichkeiten bei
Relationen passen nicht ganz, da relationale Einschränkungen, Fortsetzungen, Teilrelationen, das Komplement und die Umkehrrelation einer Abbildung keine Abbildungen
sein müssen. (Die Linkstotalität und die Rechtseindeutigkeit können verloren gehen.)
Deshalb sind hier die einfachen Möglichkeiten, die wir aus 1.8 kennen:
l
Einschränkung
|
l
Fortsetzung
l
Inverse Abbildung
4.1.5
Einschränkung: Ist f : M → N und L ⊆ M, so ist
f|L : L → N, x → f(x)
eine Abbildung, die Einschränkung von f auf L (→ 1.8.1 S. 1-21).
Fortsetzung: Ist M ⊆ L, so ist jede Abbildung g : L → N mit
g|M = f
eine Fortsetzung von f auf L (→ 1.8.1 S. 1-21).
Umkehrung: Die Umkehrrelation einer Abbildung f : M → N ist genau dann eine
Abbildung, wenn f bijektiv ist. In diesem Fall heißt
f−1 : N → M, y → f−1(y) := x genau dann, wenn f(x) = y
die Inverse (Umkehrabbildung) zu f (→ Definition 1.27 S. 1-21).
|
Bilder und Urbilder von Abbildungen
Nach- und Vorbereiche heißen bei Abbildungen Bilder und Urbilder.
Beispiel
Ist M eine Menge von StudentInnen, N eine Menge von Gemeinden und f : M → N die
Abbildung, die jeder StudentIn ihren Wohnort zuordnet, so gibt das Bild f[L] an, in welchen Orten die StudentInnen x ∈ L wohnen. Das Urbild einer Gemeinde y ∈ N gibt an,
welche StudentInnen dort wohnen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Bild 4.5
Bild und Urbild
M :=
f := Wohnort
Menge der StudentInnen
Urbild von
Tübingen
4-7
N :=
Menge der Gemeinden
Ali
Balingen
Eva
Esslingen
Reutlingen
Ina
Tübingen
Udo
Bild
von Eva
und Ina
Bad Urach
Definition 4.6
Bild und Urbild
n
Sind M, N Mengen und f : M → N eine Abbildung, so heißt für L ⊆ M der Nachbereich
f[L] := {f(x) ∈ N | x ∈ L} = Lf ⊆ N
das Bild von L unter f, und für O ⊆ N heißt der Vorbereich
f−1[O] := {x ∈ M | f(x) ∈ O} = fO ⊆ M
das Urbild von O unter f.
Das f−1 des Urbilds f−1[O] entspricht der Umkehrrelation f−1 und ist nicht mit der
Umkehrabbildung f−1 (die es nur zu bijektivem f gibt) zu verwechseln! Wie jede Relation induziert die Abbildung f zwei weitere Abbildungen zwischen den Potenzmengen
des Definitions- und des Wertebereichs von f:
P(M) → P(N), L → f[L],
|
P(N) → P(M), O → f−1[O].
|
Für diese Abbildungen verwenden wir einfach die Namen f und f−1, aber mit eckigen
Klammern. An den Klammern und den Argumenten ist stets ersichtlich, ob die Abbildung der Elemente (f(x)) oder die Abbildung der Teilmengen (f[L]) gemeint ist.
Warum unterscheiden sich die Notationen für Nach- und Vorbereiche bei Relationen und Abbildungen? Die Notation mit vor- oder nachgestelltem Index passt suggestiv gut zur relationalen
Infixnotation, während die Präfix-eckige-Klammer-Notation besser zur Präfix-runde-KlammerNotation bei Abbildungen passt. Trotzdem verwenden manche Autoren die Schreibweise mit
eckigen Klammern auch für Nach- und Vorbereiche von Relationen:
R[L] = LR
9.8.04
und
R−1[O] = RO.
© Karlheinz Hug, Hochschule Reutlingen
4-8
Satz 4.7
Bilder und
Mengenoperationen
4 Relationale Strukturen
Sind M, N Mengen, f : M → N eine Abbildung, K, L ⊆ M Teilmengen, I eine Indexmenge, (Li)i∈I ∈ MI eine Mengenfamilie und werden die Mengenoperationen jeweils
mit allen Indices i ∈ I gebildet, so gilt:
(1)
(2)
(3)
(4)
f[M] ⊆ N.
f[L] = ∅
⇔
L = ∅.
f[K] ⊆ f[L].
K⊆L
f[K ∩ L] ⊆ f[K] ∩ f[L].
f[
(5)
∩Li] ⊆ ∩f[Li].
f[K ∪ L] = f[K] ∪ f[L].
f[
Monotonie
∪Li] = ∪f[Li].
(6)
f[K \ L] ⊇ f[K] \ f[L].
(7)
L ⊆ f−1[f[L]].
Vereinigungstreue
Beweis. (1), (2) sind trivial. (3) bis (6) folgen aus Satz 4.3.
p
(7) Für x ∈ L ist f(x) ∈ f[L], also x ∈ f−1[f[L]].
Zwischen f[L] und f[L] gibt es keine allgemeine Inklusionsbeziehung.
Satz 4.8
Urbilder und
Mengenoperationen
Sind M, N Mengen, f : M → N eine Abbildung, O, P ⊆ N Teilmengen, I eine Indexmenge, (Oi)i∈I ∈ NI eine Mengenfamilie und werden die Mengenoperationen jeweils
mit allen Indices i ∈ I gebildet, so gilt:
(1)
f−1[N] = M.
(2)
f−1[O] = ∅ ⇔
O ∩ f[M] = ∅.
(3)
O⊆P
f−1[O] ⊆ f−1[P].
(4)
f−1[O ∩ P] = f−1[O] ∩ f−1[P].
f−1
(5)
[
∩Oi] = ∩f
−1
∪Oi] = ∪
=
Durchschnittstreue
Vereinigungstreue
f−1[Oi].
f−1[O \ P] = f−1[O] \ f−1[P].
−1[Oc]
Monotonie
[Oi].
f−1[O ∪ P] = f−1[O] ∪ f−1[P].
f−1[
(6)
(f−1[O])c.
(7)
f
(8)
f[f−1[O]] = O ∩ f[M] ⊆ O.
Differenztreue
Komplementtreue
Beweis. (1) gilt offenbar mit Satz 4.5 (1), da f linkstotal ist.
(2) x ∈ f−1[O] ⇔ f(x) ∈ O ∩ f[M].
(3) bis (6) folgen großenteils aus Satz 4.3.
(4) x ∈ f−1[O ∩ P] ⇔ f(x) ∈ O ∩ P ⇔ f(x) ∈ O ∧ f(x) ∈ P ⇔ x ∈ f−1[O] ∧ x ∈ f−1[P]
⇔ x ∈ f−1[O] ∩ f−1[P].
(6) x ∈ f−1[O \ P] ⇔ f(x) ∈ O \ P ⇔ f(x) ∈ O ∧ f(x) ∉ P ⇔ x ∈ f−1[O] ∧ x ∉ f−1[P] ⇔
x ∈ f−1[O] \ f−1[P].
(7) Mit (6) und (1) folgt: f−1[Oc] = f−1[N \ O] = f−1[N] \ f−1[O] = M \ f−1[O] = (f−1[O])c.
(8) y ∈ f[f−1[O]] ⇔ ∃x ∈ f−1[O] : f(x) = y ⇔ y ∈ O ∩ f[M].
© Karlheinz Hug, Hochschule Reutlingen
p
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
4.1.6
4-9
Eigenschaften von Abbildungen
Bei Abbildungen kann es im Allgemeinen Elemente des Wertebereichs geben, die kein
Urbild oder mehrere Urbilder haben. Abbildungen mit entsprechend speziellen Eigenschaften verdienen besonderes Interesse.
Definition 4.9
Eigenschaften von
Abbildungen
Beispiele
Sind M, N Mengen und f : M → N eine Abbildung, so heißt f
surjektiv
(Surjektion, onto)
:⇔
f ist rechtstotal, d.h.
∀y ∈ N ∃x ∈ M : f(x) = y;
injektiv
(Injektion, eineindeutig, one-to-one)
:⇔
f ist linkseindeutig, d.h.
∀x, x´ ∈ M : (f(x) = f(x´) x = x´);
bijektiv
(Bijektion, umkehrbar eindeutig)
:⇔
f ist surjektiv und injektiv.
Die in Bild 4.5 dargestellte Abbildung und f :
Eigenschaften.
f:
'→
! → !, x → x2 haben keine dieser
|
, n → |n| ist surjektiv, aber nicht injektiv.
lN
|
f : lN → lN, n → n2 ist injektiv, aber nicht surjektiv.
|
Die Identität idM und f :
! → !, x → x3 sind bijektiv.
|
Eigenschaften von Abbildungen lassen sich mit ihren Bildern und Urbildern charakterisieren.
Satz 4.10
Eigenschaften, Bilder
und Urbilder
Für Mengen M, N und eine Abbildung f : M → N gilt:
(1)
(2)
(3)
f ist surjektiv ⇔
⇔
⇔
f ist injektiv ⇔
⇔
⇔
⇔
f ist bijektiv ⇔
f[M] = N
∀L ⊆ M : f[L] ⊆ f[L]
∀O ⊆ N : f[f−1[O]] = O.
∀K, L ⊆ M : f[K ∩ L] = f[K] ∩ f[L]
Durchschnittstreue
∀L ⊆ M : f[L] ⊆ f[L]
∀K, L ⊆ M : (K ∩ L = ∅ f[K] ∩ f[L] = ∅)
∀L ⊆ M : f−1[f[L]] = L.
Komplementtreue
∀L ⊆ M : f[L] = f[L].
Beweis. Wir zeigen die Äquivalenzen durch Ringschlussbeweise.
(1) Die erste Äquivalenz entspricht Satz 4.5 (2).
f[M] = N ∀L ⊆ M : f[L] ⊆ f[L]:
Für L ⊆ M gilt mit Satz 4.7 (6): f[L] = N \ f[L] = f[M] \ f[L] ⊆ f[M \ L] = f[L].
∀L ⊆ M : f[L] ⊆ f[L] ∀O ⊆ N : f[f−1[O]] = O:
Wegen Satz 4.8 (8) genügt es, für O ⊆ N zu zeigen: O ⊆ O ∩ f[M].
Es gilt: O = O ∩ N = O ∩ ∅ = O ∩ f[∅] ⊆ O ∩ f[∅] = O ∩ f[M].
∀O ⊆ N : f[f−1[O]] = O f[M] = N:
Mit Satz 4.8 (1) gilt: f[M] = f[f−1[N]] = N.
(2) f injektiv ∀K, L ⊆ M : f[K ∩ L] = f[K] ∩ f[L]:
Wegen Satz 4.7 (4) genügt es, für K, L ⊆ M zu zeigen: f[K] ∩ f[L] ⊆ f[K ∩ L].
Zu y ∈ f[K] ∩ f[L] gibt es ein x ∈ K mit f(x) = y und ein x´ ∈ L mit f(x´) = y. Da f
injektiv ist, ist x = x´ ∈ K ∩ L, also y ∈ f[K ∩ L].
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 10
4 Relationale Strukturen
∀K, L ⊆ M : f[K ∩ L] = f[K] ∩ f[L] ∀L ⊆ M : f[L] ⊆ f[L]:
Für L ⊆ M gilt f[L] ∩ f[L] = f[L ∩ L] = f[∅] = ∅, also mit Satz 1.16 (8) S. 1-11
f[L] ⊆ f[L].
∀L ⊆ M : f[L] ⊆ f[L] ∀K, L ⊆ M : (K ∩ L = ∅ f[K] ∩ f[L] = ∅):
Für K, L ⊆ M mit K ∩ L = ∅ gilt mit Satz 1.16 (8) S. 1-11 K ⊆ L. Mit Satz 4.7 (3)
folgt f[K] ⊆ f[L] ⊆ f[L], also mit Satz 1.16 (8) f[K] ∩ f[L] = ∅.
∀K, L ⊆ M : (K ∩ L = ∅ f[K] ∩ f[L] = ∅) ∀L ⊆ M : f−1[f[L]] = L:
Wegen Satz 4.7 (7) genügt es, für L ⊆ M zu zeigen: f−1[f[L]] ⊆ L, oder mit Satz 1.16
(8) S. 1-11: f−1[f[L]] ∩ L = ∅.
L ∩ L = ∅ f[L] ∩ f[L] = ∅.
Mit den Sätzen 4.7 (7), 4.8 (4), der Voraussetzung und Satz 4.8 (2) folgt:
f−1[f[L]] ∩ L ⊆ f−1[f[L]] ∩ f−1[f[L]] = f−1[f[L] ∩ f[L]] = f−1[∅] = ∅.
∀L ⊆ M : f−1[f[L]] = L f injektiv:
Für x, x´ ∈ M mit f(x) = f(x´) gilt:
{x} = f−1[f[{x}]] = f−1[{f(x)}] = f−1[{f(x´)}] = f−1[f[{x´}]] = {x´}, also x = x´.
p
(3) folgt aus (1) und (2).
Jeder Abbildung f : M → N lässt sich die Surjektion
fsur : M → f[M] mit fsur(x) = f(x)
für x ∈ M zuordnen. Ist f injektiv, so sind fsur und
fsur−1 : f[M] → M
bijektiv. Aus beliebigem f : M → N gewinnt man eine Bijektion, indem man f auf eine
geeignete Teilmenge L ⊆ M einschränkt, sodass f|L injektiv ist, und dann den Wertebereich auf das Bild von L reduziert:
(f|L)sur : L → f[L], x → f(x).
|
4.1.7
Operationen mit Relationen
Wie erhält man aus gegebenen Relationen weitere Relationen? Da Relationen Mengen
sind, können wir die Mengenoperationen auf sie anwenden. Meist ist das nur sinnvoll,
wenn die Relationen denselben Grundbereich haben. Sei also R ⊆ P(M × N) ein System
von Relationen im Grundbereich M × N. Dann sind auch der Durchschnitt
Durchschnitt
∩R := ∩ R
R∈R
und die Vereinigung
Vereinigung
∪R := ∪ R
R∈R
der Relationen R ∈ R wieder Relationen in M × N.
Die Kurzschreibweisen ∩R und ∪R können zu Missverständnissen führen, wenn gleichzeitig
etwas lasch bei Durchschnitten und Vereinigungen indizierter Mengen die Indexbeziehung
unter dem Operationssymbol weggelassen wird. Sind z.B. Ri für i ∈ I Systeme von Relationen,
so sieht man ∩Ri nicht an, ob damit der Durchschnitt der Relationen R ∈ Ri, also
der Durchschnitt der Systeme Ri, also
© Karlheinz Hug, Hochschule Reutlingen
∩ Ri
∩
R ∈ Ri
R , oder
gemeint ist. Die Entscheidung für eine der beiden
i∈I
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
4 - 11
Interpretationen soll stets aus dem Zusammenhang klar werden. Dies ist eine der wenigen Stellen, an der wir uns eine Kontextabhängigkeit erlauben.
Wie vertragen sich die Mengenoperationen mit der Operation der Umkehrung? Die folgenden Rechenregeln sind wieder leicht zu zeigen.
Satz 4.11
Mengenoperationen
und Umkehrrelation
Für Relationen R, S ⊆ M × N und ein System von Relationen R ⊆ P(M × N) gilt:
(1)
(R ∩ S)−1 = R−1 ∩ S−1.
R≠∅
(∩R)
−1
=
∩R
R∈R
Durchschnittstreue
−1
.
∪R)−1 = ∪ R −1.
(2)
(R ∪ S)−1 = R−1 ∪ S−1.
(3)
(R \ S)−1 = R−1 \ S−1.
Differenztreue
(4)
(Rc)−1 = (R−1)c.
Komplementtreue
(
R∈R
Vereinigungstreue
Wie vertragen sich Operationen mit Relationen mit deren Nach- und Vorbereichen?
Auch die folgenden Beziehungen sind leicht zu zeigen.
Satz 4.12
Mengenoperationen
und Bereiche
Für Relationen R, S ⊆ M × N, ein System von Relationen R ⊆ P(M × N) und Teilmengen L ⊆ M, O ⊆ N gilt:
(1)
L∅
(2)
× N) = N
(M × N)O = M
⇔
⇔
(3)
S⊆R
(LS ⊆ LR ∧ SO ⊆ RO).
(4)
L(
L(M
(
(5)
= ∅O = ∅.
Monotonie.
∩R) ⊆ ∩ LR .
R∈R
∩R)O ⊆ ∩ R O .
R∈R
L(
(
L ≠ ∅.
O ≠ ∅.
∪R) = ∪ LR .
R∈R
Vereinigungstreue
∪R)O = ∪ RO .
R∈R
\ S) ⊇ LR \ LS.
(R \ S)O ⊇ RO \ SO.
(6)
L(R
(7)
L≠∅
O≠∅
c
c
L(R ) ⊇ (LR) .
(Rc)O ⊇ (RO)c.
Welche Eigenschaften der Relationen R ∈ R bleiben dem Durchschnitt
∩R und der
∪R erhalten? Von den in Definition 4.4 eingeführten Eigenschaften nicht
viele. Trivialerweise sind mit allen R ∈ R auch ∩R und ∪R homogen. Aber die Tota-
Vereinigung
litäten gehen im Allgemeinen dem Durchschnitt, die Eindeutigkeiten der Vereinigung
verloren. Es bleiben nur:
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 12
Satz 4.13
Mengenoperationen
und Eigenschaften
4 Relationale Strukturen
Für ein System von Relationen R ⊆ P(M × N) gilt:
∩R dieselbe Eigen-
(1)
Sind alle R ∈ R links-, rechts- oder eineindeutig, so hat
schaft.
(2)
Ist wenigstens ein R ∈ R links-, rechts- oder bitotal, so hat
Eigenschaft.
∪R dieselbe
Es gibt jedoch eine Reihe von Eigenschaften von Relationen, die sich bei Durchschnitten oder Vereinigungen erhalten. Darauf geht Satz 4.34 ein.
Eine Folge der Situation ist, dass Durchschnitte von Abbildungen kaum eine Rolle
spielen. Dagegen nutzt man die Vereinigung von Abbildungen mit „kleinen“, disjunkten Definitionsbereichen, um diese zu einer „großen“ Abbildung zusammenzusetzen.
Üblich ist das z.B. bei so genannten polynomialen Spline-Funktionen, die stetige Funktionen durch passende Polynomstücke annähern; sie spielen u.a. in der Computergrafik
eine Rolle. Formal sieht das so aus:
Satz 4.14
Zusammensetzen von
Abbildungen
Ist Z eine echte Zerlegung der Menge M, N ein nicht leeres Mengensystem, und gibt
es zu jedem Z ∈ Z ein NZ ∈ N und eine Abbildung fZ : Z → NZ, dann ist
Abbildung von
4.1.8
∪Z = M nach ∪N .
∪ fZ eine
Z∈Z
Komposition von Relationen
Als neue Möglichkeit, aus gegebenen Relationen weitere Relationen zu erhalten, kann
man zwei geeignete Relationen zu einer neuen Relation zusammensetzen.
Bild 4.6
Komposition von
Relationen
L
x
M
R
y
N
S
z
S°R
Beispiele
Ist L eine Menge von StudentInnen, M eine Menge von Lehrveranstaltungen, N eine
Menge von DozentInnen, R ⊆ L × M die Relation „besucht“ und S ⊆ M × N die Relation „wird gelesen von“, so ist S ° R die Relation „hört bei“. x S ° R z gibt an, dass die
StudentIn x ∈ L bei der DozentIn z ∈ N hört, d.h. es gibt eine Lehrveranstaltung y ∈ M,
sodass gilt: x besucht y und y wird von z gelesen.
Ist M eine Menge von Menschen und R ⊆ M2 die Relation „ist Mutter von“, so ist R ° R
die Relation „ist Großmutter mütterlicherseits von“. Die Umkehrrelation R−1 bedeutet
„ist Kind der Mutter“ und (R ° R)−1 bedeutet „ist EnkelIn der Großmutter“. Ist S ⊆ M2
die Relation „ist verheiratet mit“, so ist S ° R die Relation „ist Schwiegermutter von“,
denn x S ° R z gibt an, dass es einen Menschen y gibt, sodass x Mutter von y und y verheiratet mit z ist. Dagegen bedeutet die R ° S die Relation „ist Vater oder Stiefvater
von“, denn x R ° S z gibt an, dass es einen Menschen y gibt, sodass x verheiratet mit y
und y Mutter von z ist. (Die Homoehe bleibt hier außer Betracht.)
Definition 4.15
Komposition
zweistelliger
Relationen
Sind L, M, N Mengen und R ⊆ L × M, S ⊆ M × N Relationen, so heißt die durch
S ° R := {(x, z) ∈ L × N | ∃y ∈ M : (x R y ∧ y S z)}
S nach R, S Kringel R
definierte Relation S ° R ⊆ L × N die Komposition (Nacheinanderausführung) von R
und S.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
4 - 13
Die Schreibweise S ° R ist bei Relationen ungeschickter als die mit umgekehrter Reihenfolge,
R ° S. Die Wahl der Notation ist gerechtfertigt dadurch, dass wir generell bei Relationen und
speziell bei Abbildungen einheitlich dieselbe Notation verwenden, um Verwechslungen vorzubeugen, bei Abbildungen aber die gewählte Schreibweise geschickter als die andere ist.
Bild 4.7
Assoziativität der
Komposition
T°S
L
M
R
w
S
x
N
T
y
O
z
S°R
Bild 4.8
Umkehrrelation der
Komposition
S°R
L
M
y
R
x
R−1
N
S
z
S−1
(S ° R)−1
Welche Eigenschaften hat die Operation der Komposition? Beziehungen der Komposition mit sich selbst, mit der Umkehrrelation, Vor- und Nachbereichen, Eigenschaften
von Relationen und Mengenoperationen sind zu klären.
Satz 4.16
Eigenschaften der
Komposition
Für Mengen L, M, N, O, Relationen R, R´ ⊆ L × M, S, S´ ⊆ M × N, T ⊆ N × O und
Relationenfamilien (Ri)i∈I ∈ (L × M)I, (Sk)k∈K ∈ (M × N)K gilt:
(1)
(2)
(3)
(T ° S) ° R = T ° (S ° R).
R ° ∅ = ∅ = ∅ ° R.
R ° idL = R = idM ° R.
Assoziativität
Nullelement
Einselement
(4)
(S ° R)−1 = R−1 ° S−1.
Inverses Element
(5)
∀P ⊆ L : P(S ° R) = ( R )S .
P
∀Q ⊆ N : (S ° R)Q = R ( S ) .
Q
(6)
S°R=∅
⇔
LR
∩ SN = ∅.
(7)
Sind R und S links-, rechts- oder bitotal, links-, rechts- oder eineindeutig oder
homogen, so hat S ° R dieselbe Eigenschaft.
R ist linkstotal.
(8) S ° R ist linkstotal
S ° R ist rechtstotal
S ist rechtstotal.
S ° R ist bitotal
R ist linkstotal und S ist rechtstotal.
S ° R ⊆ S ° R´.
Monotonie
(9) R ⊆ R´
S ⊆ S´
S ° R ⊆ S´ ° R.
(10) S ° (R ∪ R´) = (S ° R) ∪ (S ° R´).
Distributivität
(S ∪ S´) ° R = (S ° R) ∪ (S´ ° R).
∪
S k
k ∈ K °
∪
R i
i ∈ I =
∪
i ∈ I, k ∈ K
(Sk ° Ri).
Beweis. (1) Für alle w ∈ L, z ∈ O gilt:
w (T ° S) ° R z ⇔ ∃x ∈ M : (w R x ∧ x T ° S z) ⇔
∃x ∈ M : (w R x ∧ ∃y ∈ N : (x S y ∧ y T z)) ⇔
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 14
4 Relationale Strukturen
∃x ∈ M ∃y ∈ N : (w R x ∧ x S y ∧ y T z) ⇔
∃y ∈ N : (∃x ∈ M : (w R x ∧ x S y) ∧ y T z) ⇔
∃y ∈ N : (w S ° R y ∧ y T z) ⇔ w T ° (S ° R) z.
(3) Für alle x ∈ L, y ∈ M gilt:
x R ° idL y ⇔ x idL x ∧ x R y ⇔ x R y ⇔ x R y ∧ y idM y ⇔ x idM ° R y.
(4) Für alle x ∈ L, z ∈ N gilt:
z (S ° R)−1 x ⇔ x S ° R z ⇔ ∃y ∈ M : (x R y ∧ y S z) ⇔
∃y ∈ M : (z S−1 y ∧ y R−1 x) ⇔ z R−1 ° S−1 x.
(5) Aus Dualitätsgründen genügt es, die Aussage für die Vorbereiche zu zeigen. Für
jedes x ∈ L gilt:
x ∈ (S ° R)Q ⇔ ∃z ∈ Q : x S ° R z ⇔ ∃z ∈ Q ∃y ∈ M : (x R y ∧ y S z) ⇔
∃y ∈ M : (x R y ∧ ∃z ∈ Q : y S z) ⇔ ∃y ∈ M : (x R y ∧ y ∈ SQ) ⇔ ∃y ∈ SQ : x R y ⇔
x ∈ R(S ) .
Q
(6) Durch Kontraposition: S ° R ≠ ∅ ⇔ ∃x ∈ L, z ∈ N : x S ° R z ⇔
∃x ∈ L, z ∈ N, y ∈ M : (x R y ∧ y S z) ⇔ ∃y ∈ M : (∃x ∈ L : x R y ∧ ∃z ∈ N : y S z) ⇔
∃y ∈ M : (y ∈ LR ∧ y ∈ SN) ⇔ ∃y ∈ M : (y ∈ LR ∩ SN) ⇔ LR ∩ SN ≠ ∅.
(7) Totalität: Aus Dualitätsgründen genügt es, die Linkstotalität zu zeigen. Sie folgt aus
(5) mit Satz 4.5 (1): (S ° R)N = R ( S ) = RM = L.
N
Eindeutigkeit: Es genügt, die Rechtseindeutigkeit zu zeigen. Zu x ∈ L, z, z´ ∈ N mit
x S ° R z und x S ° R z´ gibt es y, y´ ∈ M mit x R y, y S z, x R y´, y´ S z´. Da R rechtseindeutig ist, ist y = y´. Da S rechtseindeutig ist, ist z = z´. Also ist S ° R rechtseindeutig.
Homogenität ist trivial.
(8) Ist S ° R linkstotal, so ist nach Satz 4.5 (1) und (5) L = (S ° R)N = R ( S ) . Aus
N
SN ⊆ M und Satz 4.3 (2) folgt R ( S ) ⊆ RM ⊆ L. Also gilt überall „=“, sodass R nach
N
Satz 4.5 (1) linkstotal ist.
Ist S ° R rechtstotal, so ist mit (4) (S ° R)−1 = R−1 ° S−1 linkstotal, also S−1 linkstotal,
also S rechtstotal.
F
Wegen der Assoziativität der Komposition sparen wir Klammern und definieren:
T ° S ° R := (T ° S) ° R.
Beachte, dass die Komposition nicht kommutativ ist, d.h. im Allgemeinen gilt
S ° R ≠ R ° S.
Die Komposition ist auch nicht bezüglich des Durchschnitts distributiv. Eigenschaften
von Relationen lassen sich mit Kompositionen charakterisieren.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Satz 4.17
Eigenschaften und
Kompositionen
4 - 15
Für Mengen M, N und eine Relation R ⊆ M × N gilt:
(1)
R ist linkstotal
⇔
idM ⊆ R−1 ° R.
(2)
R ist rechtstotal
⇔
idN ⊆ R ° R−1.
(3)
R ist linkseindeutig
⇔
R−1 ° R ⊆ idM.
(4)
R ist rechtseindeutig
⇔
R ° R−1 ⊆ idN.
(5)
R ist linkstotal und linkseindeutig
⇔
R−1 ° R = idM.
(6)
R ist rechtstotal und rechtseindeutig
⇔
R ° R−1 = idN.
Beweis. Aus Dualitätsgründen genügt es, (1) oder (2), und (3) oder (4) zu zeigen.
(1) „ “: Für jedes x mit x idM x gilt x ∈ M. Da R linkstotal ist, gibt es ein y ∈ N mit
x R y. Dann ist y R−1 x und mit x R y folgt x R−1 ° R x. Also gilt idM ⊆ R−1 ° R.
„⇐“: Für jedes x ∈ M gilt x idM x und damit x R−1 ° R x. Daher gibt es ein y ∈ N mit
x R y (und y R−1 x). Also ist R linkstotal.
(4) „“: Zu y, z ∈ N mit y R ° R−1 z gibt es ein x ∈ M mit y R−1 x und x R z, also x R y.
Da R rechtseindeutig ist, folgt y = z, also y idN z. Also gilt R ° R−1 ⊆ idN.
„⇐“: Für x ∈ M, y, z ∈ N mit x R y und x R z ist y R−1 x, also y R ° R−1 z, also y idN z,
also y = z. Also ist R rechtseindeutig.
F
Aus Satz 4.17 folgt direkt die Charakterisierung von Eigenschaften von Abbildungen
mittels relationaler Kompositionen.
Korollar 4.18
4.1.9
Für eine Abbildung f : M → N und ihre Umkehrrelation f−1 gilt:
(1)
f ist injektiv
⇔
f−1 ° f = idM.
(2)
f ist surjektiv
⇔
f ° f−1 = idN.
Komposition von Abbildungen
Zwei geeignete Abbildungen lassen sich als Relationen zu einer neuen Relation kombinieren. Nach Satz 4.16 (7) ist die relationale Komposition von Abbildungen wieder
eine Abbildung. Der syntaktische Aspekt der Komposition von Abbildungen ist uns
von 2.2.4 Syntax der Prädikatenlogik, S. 2-48 durch Terme wie
f(g(w, x), y, h(i(z)))
bekannt. Die Auswertung dieses Terms veranschaulicht das Schaltbild oder Datenflussdiagramm:
Bild 4.9
Schaltbild oder
Datenflussdiagramm
w
x
y
z
9.8.04
g(w, x)
g
f
i(z)
i
f(g(w, x), y, h(i(z)))
h(i(z))
h
© Karlheinz Hug, Hochschule Reutlingen
4 - 16
4 Relationale Strukturen
Alternativ dazu betont das Mengendiagramm die Definitions- und Wertebereiche vor
den einzelnen Elementen:
Bild 4.10
Mengendiagramm mit
Abbildungen
K
w
O
g
×
b
L
×
x
M
f
c
R
e
×
N
P
i
z
Q
h
a
d
Die auf Abbildungspfeile reduzierte Variante nutzt die Projektionen - die Umkehrungen zur Produktbildung, die ja selbst keine Abbildung ist:
Bild 4.11
Abbildungsdiagramm
π1
K
K×L
g
O
π2
L
M
i
N
P
h
π1
π2
Q
O×M×Q
f
R
π3
Eine abstrakte Darstellung der zusammengesetzten Abbildung ist
f ° (g, id M, h ° i) : K × L × M × N → R.
Definition 4.19
Komposition von
Abbildungen
Sind L, M, N Mengen und f : L → M, g : M → N Abbildungen, so heißt die durch
g ° f := {(x, z) ∈ L × N | ∃y ∈ M : (f(x) = y ∧ g(y) = z)}
g nach f, g Kringel f
definierte Abbildung g ° f : L → N die Komposition (Nacheinanderausführung) von
f und g. Da f linkstotal ist, gibt es zu jedem x ∈ L ein y ∈ M mit f(x) = y. Daher gilt
g ° f = {(x, g(f(x))) ∈ L × N | x ∈ L}.
Für x ∈ L schreiben wir
(g ° f)(x) = g(f(x)).
Bild 4.12
Kommutierendes
Abbildungsdiagramm
L
h
N
f
g
M
Sind f : L → M, g : M → N, h : L → N Abbildungen mit
h = g ° f,
so sagt man, das Abbildungsdiagramm kommutiert oder ist kommutativ.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Satz 4.20
Eigenschaften der
Komposition
4 - 17
Für Mengen L, M, N, O und Abbildungen f, f´ : L → M, g, g´ : M → N, h : N → O gilt:
(1)
(2)
(h ° g) ° f = h ° (g ° f).
f ° idL = f = idM ° f.
Assoziativität
Einselement
∀P ⊆ L : (g ° f)[P] = g[f[P]].
∀Q ⊆ N : (g ° f)−1[Q] = f−1[g−1[Q]].
(4) Sind f und g surjektiv, so ist g ° f surjektiv.
(5) Sind f und g injektiv, so ist g ° f injektiv.
(6) Sind f und g bijektiv, so ist g ° f bijektiv.
(7) Ist g ° f surjektiv, so ist g surjektiv.
(8) Ist g ° f injektiv, so ist f injektiv.
(9) Ist g ° f bijektiv, so ist f injektiv und g surjektiv.
(10) Ist f surjektiv und g ° f = g´ ° f, so ist g = g´.
(11) Ist g injektiv und g ° f = g ° f´, so ist f = f´.
(3)
Beweis. (1) bis (7) folgen direkt aus Satz 4.16. Der folgende Beweis in Abbildungsnotation ist einfacher, weil er zusätzliche Eigenschaften von Abbildungen nutzt.
(1) Für jedes x ∈ L gilt:
((h ° g) ° f)(x) = (h ° g)(f(x)) = h(g(f(x))) = h((g ° f)(x)) = (h ° (g ° f))(x).
(3) Wir zeigen die Aussage für die Urbilder. Für jedes x ∈ L gilt:
x ∈ (g ° f)−1[Q] ⇔ (g ° f)(x) = g(f(x)) ∈ Q ⇔ f(x) ∈ g−1[Q] ⇔ x ∈ f−1[g−1[Q]].
(4) Aus (3) folgt mit Satz 4.10 (1): (g ° f)[L] = g[f[L]] = g[M] = N.
(5) Aus (3) folgt mit Satz 4.10 (2) für K ⊆ L:
(g ° f)−1[(g ° f)[K]] = f−1[g−1[g[f[K]]]] = f−1[f[K]] = K.
(7) Da g ° f surjektiv ist und f[L] ⊆ M gilt: N = (g ° f)[L] = g[f[L]] ⊆ g[M] ⊆ N, also gilt
g[M] = N. Damit ist g surjektiv.
(8) Für x, x´ ∈ L mit f(x) = f(x´) ist (g ° f)(x) = g(f(x)) = g(f(x´)) = (g ° f)(x´). Da g ° f
injektiv ist, ist x = x´ und damit ist f injektiv.
(10) Sei y ∈ M. Da f surjektiv ist, gibt es ein x ∈ L mit f(x) = y. Damit gilt g(y) = g(f(x))
= (g ° f)(x) = (g´ ° f)(x) = g´(f(x)) = g´(y). Also ist g = g´.
(11) Sei x ∈ L. Es gilt g(f(x)) = (g ° f)(x) = (g ° f´)(x) = g(f´(x)). Da g injektiv ist, folgt
f(x) = f´(x). Also ist f = f´.
F
Satz 4.21
Eigenschaften von
Inversen
Für Mengen M, N und eine Bijektion f : M → N gilt:
(1)
f−1 ist bijektiv.
(2)
(f−1)−1 = f, d.h. f und f−1 sind invers zueinander.
(3)
f−1 ° f = idM.
(4)
f ° f−1 = idN.
Beweis. (1) und (2) sind klar und (3) und (4) folgen aus Korollar 4.18. In Abbildungsnotation sieht das so aus:
(2) Für x ∈ M, y ∈ N gilt: (f−1)−1(x) = y ⇔ f−1(y) = x ⇔ f(x) = y.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 18
4 Relationale Strukturen
(3) Für x ∈ M und f(x) = y gilt: (f−1 ° f)(x) = f−1(f(x)) = f−1(y) = x.
F
(4) Für y ∈ N und f−1(y) = x gilt: (f ° f−1)(y) = f(f−1(y)) = f(x) = y.
Satz 4.22
Kriterium für Inverse
Sind M, N Mengen und f : M → N, g, g´ : N → M Abbildungen mit
g ° f = idM
und
f ° g´ = idN,
so ist g = g´ und f und g sind bijektiv und invers zueinander, d.h. g = f−1 und f = g−1.
Beweis. Da idM bijektiv ist, ist mit Satz 4.20 (9) f injektiv und g surjektiv. Analog ist,
da idN bijektiv ist, g´ injektiv und f surjektiv. Also ist f bijektiv. Damit gilt nach den Sätzen 4.20 (10), (11) und 4.21 (3), (4): Aus g ° f = idM = f−1 ° f folgt g = f−1 und aus
F
f ° g´ = idN = f ° f−1 folgt g´ = f−1.
Satz 4.23
Eigenschaften und
Kompositionen
Für Mengen M, N und eine Abbildung f : M → N gilt:
(1)
f ist surjektiv
⇔
es gibt eine Abbildung g : N → M mit f ° g = idN.
(2)
f ist injektiv
⇔
es gibt eine Abbildung g : N → M mit g ° f = idM.
(3)
f ist bijektiv
⇔
es gibt eine Abbildung g : N → M mit
f ° g = idN und g ° f = idM.
Beweis. (1) „“: Sei f surjektiv. Dann sind für y ∈ N alle Urbilder f−1[{y}] ⊆ M nicht
leer. Nach dem Auswahlaxiom wählen wir zu jedem y ∈ N ein xy ∈ f−1[{y}] und definieren durch g(y) := xy eine Injektion g : N → M, für die (f ° g)(y) = f(g(y)) = f(xy) = y
ist.
„⇐“: Da idN bijektiv ist, ist mit Satz 4.20 (9) f surjektiv und g injektiv.
(2) „ “: Sei f injektiv. Dann sind fsur : M → f[M] und fsur−1 : f[M] → M bijektiv. Sei
g : N → M eine Fortsetzung von fsur−1 auf N. Dann ist g surjektiv und für x ∈ M ist
(g ° f)(x) = g(f(x)) = fsur−1(f(x)) = x.
„⇐“: Da idM bijektiv ist, ist mit Satz 4.20 (9) f injektiv und g surjektiv.
(3) „“: Folgt aus Satz 4.21.
„⇐“: Folgt aus Satz 4.22.
F
Aus den Sätzen 4.20 (7) und 4.23 folgt direkt:
Korollar 4.24
Für Mengen M, N gilt:
Es gibt eine Surjektion f : M → N genau dann, wenn es eine Injektion g : N → M gibt.
Mit dem algebraischen Begriff der Links- und Rechtsinversen lassen sich die gewonnenen Aussagen umformulieren.
Definition 4.25
Links- und
Rechtsinverse
Sind M, N Mengen und f : M → N, g : N → M Abbildungen mit
g ° f = idM,
so heißt g Linksinverse von f und f Rechtsinverse von g.
Nach Satz 4.20 (9) sind Linksinverse surjektiv und Rechtsinverse injektiv. Links- und
Rechtsinverse müssen nicht existieren, und wenn sie existieren, dann müssen sie nicht
eindeutig sein. Hat eine Abbildung aber sowohl eine Links- als auch eine Rechtsinverse, so sind diese nach Satz 4.22 gleich. Aus Satz 4.23 ergibt sich:
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.1 Allgemeines über Relationen und Abbildungen
Korollar 4.26
Für Mengen M, N und eine Abbildung f : M → N gilt:
(1)
(2)
(3)
4.1.10
4 - 19
f ist surjektiv
f ist injektiv
f ist bijektiv
⇔
⇔
⇔
f besitzt eine Rechtsinverse.
f besitzt eine Linksinverse.
f besitzt eine Links- und Rechtsinverse.
Kartesisches Produkt von Relationen und Abbildungen
Eine weitere Möglichkeit, aus gegebenen Relationen neue Relationen zu bilden, bietet
das kartesische Produkt. Dabei entsteht die Struktur des Produkts aus den Strukturen
der Komponenten. Man spricht von komponentenweisen Relationen und Abbildungen. Den Spezialfall der Abbildungen geben wir der Lesbarkeit halber auch in Abbildungsnotation an.
Definition 4.27
Kartesisches Produkt
von Relationen und
Abbildungen
Seien I eine Indexmenge und Mi, Ni für i ∈ I Mengen.
Sind Ri ⊆ Mi × Ni für i ∈ I Relationen, so heißt die durch
(xi)i∈I
∏i ∈ I Ri
(yi)i∈I
:⇔
∀i ∈ I : xi Ri yi
für xi ∈ M i, yi ∈ Ni definierte Relation
∏i ∈ I R i ⊆ ∏i ∈ I M i × ∏i ∈ I N i
das kartesische Produkt der Ri, i ∈ I.
Sind fi : M i → Ni für i ∈ I Abbildungen, so heißt die durch
∏i ∈ I f i ((xi)i∈I) = (yi)i∈I
:⇔
∀i ∈ I : fi(xi) = yi
für xi ∈ M i, yi ∈ Ni definierte Abbildung
∏i ∈ I f i : ∏i ∈ I M i → ∏i ∈ I N i
das kartesische Produkt der fi, i ∈ I.
Unsere Notation ist hier leider zweideutig:
∏i ∈ I R i
soll das kartesische Produkt der
Ri als Relationen bedeuten,
∏i ∈ I R i ⊆ ∏i ∈ I M i × ∏i ∈ I Ni ,
kann aber auch das kartesische Produkt der Mengen Ri nach Definition 1.29 S. 1-27
bedeuten,
∏i ∈ I R i ⊆ ∏i ∈ I ( M i × N i ) .
Der Unterschied liegt in der Reihenfolge, in der die xi und yi zusammengefasst werden:
((xi)i∈I, (yi)i∈I) oder ((xi, yi))i∈I. Offenbar lassen sich die Paare von Familien bijektiv
den Familien von Paaren zuordnen:
((xi)i∈I, (yi)i∈I) ↔ ((xi, yi))i∈I.
Aus der allgemeinen Definition 4.27 ergeben sich Spezialfälle, die wir tabellarisch
zusammenstellen.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 20
4 Relationale Strukturen
Tabelle 4.1
Spezielle kartesische
Produkte von
Relationen und
Abbildungen
Relationen
Abbildungen
∀i ∈ I : Mi = Ni
∀i ∈ I : fi : Mi → Mi
∀i ∈ I : Ri ⊆ Mi2
∏i ∈ I R i
⊆
∏i ∈ I M i 2
∏i ∈ I f i : ∏i ∈ I M i → ∏i ∈ I M i
∀i ∈ I : Mi = M, Ni = N
∀i ∈ I : Ri ⊆ M × N
∀i ∈ I : fi : M → N
∏i ∈ I Ri
∏i ∈ I f i
⊆ MI × NI
: MI → N I
∀i ∈ I : Ri = R ⊆ M × N
∀i ∈ I : fi = f : M → N
RI ⊆ MI × N I
fI : M I → NI
∀i ∈ I : M i = Ni = M
∀i ∈ I : Ri ⊆ M2
∏i ∈ I R i
I 2
⊆ (M )
∀i ∈ I : Ri = R ⊆ M2
I 2
RI ⊆ ( M )
∀i ∈ I : fi : M → M
∏i ∈ I fi
: MI → M I
∀i ∈ I : fi = f : M → M
fI : MI → MI
Der letzte, speziellste Fall in Tabelle 4.1 tritt am häufigsten auf. Dabei wird einfach
eine homogene Relation R ⊆ M2 oder eine Abbildung f : M → M der Produktmenge MI
komponentenweise aufgeprägt, z.B. komponentenweiser Vergleich. Oft kommen dann
nicht nur einstellige, sondern auch zweistellige Operationen f : M2 → M vor, z.B. wenn
man für Vektoren komponentenweise Addition einführen will. Die obige Definition liefert mit
2 I
fI : ( M ) → MI
nicht ganz das Gewünschte, denn man will
I 2
fI : ( M ) → MI
haben. Man erreicht das, indem man die obige Definition zunächst auf drei- oder n-stellige Relationen verallgemeinert und dann wieder spezialisiert. Alternativ kann man die
Bijektion
((x, y)i)i∈I ↔ ((xi)i∈I, (yi)i∈I)
nutzen, die Familien von Paaren auf Paare von Familien abbildet.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.2 Homogene zweistellige Relationen
4.2
4 - 21
Homogene zweistellige Relationen
Neben den Abbildungen bilden die homogenen zweistelligen Relationen den zweiten
wichtigen Spezialfall.
Definition 4.28
Eigenschaften
zweistelliger
homogener Relationen
Ist M eine beliebige Menge, so heißt eine Relation R ⊆ M2
reflexiv
:⇔ ∀x ∈ M : x R x;
irreflexiv
:⇔ ∀x ∈ M : ¬x R x;
symmetrisch
:⇔ ∀x, y ∈ M : (x R y y R x);
asymmetrisch
:⇔ ∀x, y ∈ M : (x R y ¬y R x);
antisymmetrisch (identitiv)
:⇔ ∀x, y ∈ M : ((x R y ∧ y R x) x = y);
semikonnex
:⇔ ∀x, y ∈ M : (x R y ∨ y R x ∨ x = y);
konnex
:⇔ ∀x, y ∈ M : (x R y ∨ y R x);
transitiv
:⇔ ∀x, y, z ∈ M : ((x R y ∧ y R z) x R z);
intransitiv
:⇔ ∀x, y, z ∈ M : ((x R y ∧ y R z) ¬x R z).
Eine Folge x1,.., xn ∈ M mit n ∈ lN und x1 R x2,.., xn−1 R xn und xn R x1 heißt ein
Zyklus der Länge n zu R in M. R heißt
:⇔ R hat keinen Zyklus in M.
azyklisch
R heißt eine
Verträglichkeitsrelation (compatibility relation)
:⇔ R ist reflexiv und symmetrisch;
Äquivalenzrelation (equivalence relation)
:⇔ R ist reflexiv, symmetrisch und transitiv;
Präordnung (Quasiordnung)
:⇔ R ist reflexiv und transitiv;
Halbordnung (partielle Ordnung, weak partial order)
:⇔ R ist reflexiv, antisymmetrisch und transitiv;
strikte Halbordnung (streng, strong)
:⇔ R ist irreflexiv und transitiv;
Vollordnung (totale, lineare Ordnung, order)
:⇔ R ist reflexiv, antisymmetrisch, konnex und transitiv;
:⇔ R ist irreflexiv, semikonnex und transitiv.
strikte Vollordnung
Bild 4.13
Eigenschaften von
Relationen
reflexiv
•
•
irreflexiv
•
•
•
•
Ist R ⊆ M2 reflexiv (irreflexiv), so hat jeder (kein) Punkt von M einen Pfeil auf sich
selbst.
symmetrisch
•
•
•
9.8.04
asymmetrisch
•
•
•
© Karlheinz Hug, Hochschule Reutlingen
4 - 22
4 Relationale Strukturen
Ist R symmetrisch (asymmetrisch), so ist jeder (kein) Pfeil ein Doppelpfeil in beide
Richtungen.
=
antisymmetrisch
•
•
•
semikonnex
•
•
•
Ist R antisymmetrisch, so ist jeder Doppelpfeil ein Pfeil auf seinen Startpunkt. Ist R
semikonnex, so ist jeder Punkt mit jedem anderen mit wenigstens einem Pfeil verbunden.
transitiv
•
•
•
intransitiv
•
•
•
Ist R transitiv (intransitiv), so gibt es zu zwei aufeinander folgenden Pfeilen einen (keinen) direkten Pfeil.
•
Zyklus
•
•
•
semikonnex,
nicht azyklisch
•
•
•
Führen endlich viele aufeinander folgende Pfeile zum Startpunkt zurück, so liegt ein
Zyklus vor. Ist R azyklisch, so führt kein Weg entlang der Pfeilrichtung zum Startpunkt
zurück. Die wichtigen Äquivalenz- und Ordnungsrelationen behandeln wir ausführlich
in 4.3 und 4.5.
Beispiele
Die leere Relation ∅ ist reflexiv, irreflexiv, symmetrisch, asymmetrisch, antisymmetrisch, semikonnex, konnex, transitiv, intransitiv, azyklisch und damit eine Verträglichkeits- und Äquivalenzrelation und Prä- und Halbordnung.
Die Identität idM = {(x, x) | x ∈ M} ist reflexiv, symmetrisch, antisymmetrisch, transitiv,
und damit eine Verträglichkeits- und Äquivalenzrelation und Prä- und Halbordnung.
Die Allrelation M2 ist reflexiv, symmetrisch, semikonnex, konnex, transitiv, und damit
eine Verträglichkeits- und Äquivalenzrelation und Präordnung.
Auf einer Menge von Menschen ist die Relation
l
l
l
l
„ist Mutter von“ irreflexiv, asymmetrisch, antisymmetrisch (!), intransitiv und azyklisch;
„ist verheiratet mit“ irreflexiv und symmetrisch;
„hat dieselben Eltern wie“ reflexiv, symmetrisch, transitiv und damit eine Verträglichkeits- und Äquivalenzrelation und Präordnung;
„ist Vorfahre von“ irreflexiv, asymmetrisch, antisymmetrisch (!), transitiv, azyklisch
und damit eine strikte Halbordnung.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.2 Homogene zweistellige Relationen
4 - 23
Aus Definition 4.28 ergibt sich direkt:
Korollar 4.29
Eigenschaften
zugeordneter
Relationen
Für eine Menge M und eine Relation R ⊆ M2 gilt:
(1)
(2)
(3)
(4)
Hat R eine der Eigenschaften von Definition 4.28 (außer der Eigenschaft, einen
Zyklus zu besitzen), so hat für N ⊆ M die Einschränkung R ∩ N2 auf N dieselbe Eigenschaft.
Ist R irreflexiv, asymmetrisch, antisymmetrisch, intransitiv oder azyklisch, so
hat jede Teilrelation S ⊆ R dieselbe Eigenschaft.
Ist R reflexiv, semikonnex oder konnex oder hat R einen Zyklus, so hat jede
Vergröberung R ⊆ S ⊆ M2 dieselbe Eigenschaft.
R hat eine der Eigenschaften von Definition 4.28 genau dann, wenn die
Umkehrrelation R−1 diese Eigenschaft hat.
Gibt es Zusammenhänge zwischen den Eigenschaften?
Satz 4.30
Beziehungen zwischen
Eigenschaften
Für eine Menge M und eine Relation R ⊆ M2 gilt:
(1)
(2)
(3)
(4)
R ist nicht zugleich reflexiv und irreflexiv.
R≠∅
R ist nicht zugleich symmetrisch und asymmetrisch.
R≠∅
R ist nicht zugleich transitiv und intransitiv.
R≠∅
R ∪ idM ist reflexiv.
(5)
R \ idM ist irreflexiv.
(6)
R ist konnex
R und R \ idM sind semikonnex.
(7)
R ist semikonnex
R ∪ idM ist konnex.
R ist azyklisch.
R ist irreflexiv und transitiv
R ist asymmetrisch.
R ist azyklisch
R ist asymmetrisch
⇔
R ist irreflexiv und antisymmetrisch.
R ist symmetrisch und antisymmetrisch
R ist transitiv.
(12) R ist strikte Halbordnung
⇔
R ist azyklisch und transitiv
⇔
R ist asymmetrisch und transitiv.
(8)
(9)
(10)
(11)
Beweis. (1) bis (5) sind klar. (6) und (7) sind leicht zu zeigen.
(8) Der Fall R = ∅ ist klar. Für R ≠ ∅ zeigen wir eine kontraponierte Aussage. Ist R
nicht azyklisch, so gibt es einen Zyklus x1 R x2,.., xn−1 R xn, xn R x1. Da R transitiv ist,
folgt x1 R x1, d.h. R ist nicht irreflexiv.
(9) Ist R azyklisch, so hat R keine Zyklen der Länge 2. Für x, y ∈ M gilt also:
¬(x R y ∧ y R x). Umformen ergibt ¬x R y ∨ ¬y R x, und daraus x R y ¬y R x, d.h. R
ist asymmetrisch.
(10) „“: R asymmetrisch
R irreflexiv.
∀x, y ∈ M : (¬x R y ∨ ¬y R x)
∀x ∈ M : ¬x R x Seien x, y ∈ M mit x R y und y R x. Nun folgt: (R asymmetrisch ∧ x R y ∧ y R x)
(¬y R x ∧ y R x) 0 x = y. Also ist R antisymmetrisch.
„⇐“: Seien R irreflexiv und antisymmetrisch und x, y ∈ M mit x R y. Aus der Antisymmetrie von R folgt ¬y R x ∨ x = y. Wäre x = y, so wäre x R x, im Widerspruch zur Irreflexivität von R. Also gilt ¬y R x, d.h. R ist asymmetrisch.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 24
4 Relationale Strukturen
(11) Seien R symmetrisch und antisymmetrisch und x, y, z ∈ M mit x R y ∧ y R z. Aus
y R z und der Symmetrie von R folgt z R y. Aus y R z und z R y und der Antisymmetrie
von R folgt y = z. Aus x R y und y = z folgt x R z, d.h. R ist transitiv.
p
(12) folgt aus (8) bis (10).
Beachte, dass strikte Halb- und Vollordnungen keine Halb- bzw. Vollordnungen im
Sinn von Definition 4.28 sind, da sie irreflexiv und daher nicht reflexiv sind. Strikte
Ordnungen sind Ordnungen anderer Art, nicht Ordnungen mit der zusätzlichen Eigenschaft strikt. Satz 4.30 (4) und (5) stellt den Zusammenhang beider Ordnungsarten her.
Beachte dass (reflexiv, irreflexiv), (symmetrisch, asymmetrisch) und (transitiv, intransitiv) zwar sich gegenseitig ausschließende, aber nicht komplementäre Begriffspaare
sind. Beispielsweise hat {(1, 1), (1, 2), (2, 3)} keine der sechs Eigenschaften.
Auch die Eigenschaften homogener Relationen lassen sich mit ihren Bereichen charakterisieren; auch der folgende Satz dient vor allem dazu, das Umformen prädikatenlogischer Formeln zu üben.
Satz 4.31
Eigenschaften und
Bereiche
Für eine Menge M und eine Relation R ⊆ M2 gilt:
(1)
R ist reflexiv
⇔
⇔
⇔
⇔
∀x ∈ M : x ∈ xR
∀x ∈ M : x ∈ Rx
∀x ∈ M : x ∈ xR ∩ Rx
∀x ∈ M : x ∈ xR ∪ Rx.
(2)
R ist irreflexiv
⇔
⇔
⇔
⇔
∀x ∈ M : x ∉ xR
∀x ∈ M : x ∉ Rx
∀x ∈ M : x ∉ xR ∩ Rx
∀x ∈ M : x ∉ xR ∪ Rx.
(3)
R ist symmetrisch
⇔
∀x ∈ M : xR = Rx.
(4)
R ist asymmetrisch
⇔
∀x ∈ M : xR ∩ Rx = ∅.
(5)
R ist antisymmetrisch
⇔
∀x ∈ M : xR ∩ Rx ⊆ {x}.
(6)
R ist semikonnex
⇔
∀x ∈ M : xR ∪ Rx ∪ {x} = M.
(7)
R ist konnex
⇔
∀x ∈ M : xR ∪ Rx = M.
(8)
R ist transitiv
⇔
∀x ∈ M : ( R )R ⊆ xR
x
⇔
∀z ∈ M : R ( R ) ⊆ Rz.
z
⇔
∀x ∈ M : ( R )R ∩ xR = ∅
x
⇔
∀z ∈ M : R ( R ) ∩ Rz = ∅.
z
(9)
R ist intransitiv
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.2 Homogene zweistellige Relationen
4 - 25
Homogene Relationen kann man mit sich selbst komponieren, und zwar beliebig oft.
Die Komposition wird so zu einem Produkt.
Definition 4.32
Kompositionsprodukt
homogener
zweistelliger
Relationen
Sind M eine Menge und R ⊆ M2 eine Relation, so ist für n ∈ lN0 das n-fache (Kompositions-)Produkt (n-te Potenz) von R rekursiv definiert durch
R0 := idM,
Rn := Rn−1 ° R
für n ∈ lN.
Zudem seien
R+ :=
∗
R :=
∪
n
R ;
n ∈ lN
∪
n ∈ lN0
R = R0 ∪ R+ = idM ∪ R+.
n
Ist f : M → M eine Abbildung, so ist ihr n-faches Produkt analog
f0 = idM,
fn = fn−1 ° f
für n ∈ lN.
Damit gilt R1 = R, R2 = R ° R,... und f1 = f, f2 = f ° f,... Beachte, dass sich Kompositionsprodukt und kartesisches Produkt (→ Definition 4.27) wesentlich unterscheiden. Mittels Mengenoperationen, Umkehr- und Produktrelationen ergeben sich weitere Charakterisierungen der Eigenschaften homogener Relationen.
Satz 4.33
Eigenschaften und
Operationen
Für eine Menge M und eine Relation R ⊆ M2 gilt:
R ist reflexiv
⇔
id M ⊆ R
(2)
R ist irreflexiv
⇔
R ∩ idM = ∅.
(3)
R ist symmetrisch
⇔
R = R−1.
(4)
R ist asymmetrisch
⇔
⇔
R ∩ R−1 = ∅
(R ∪ R2) ∩ idM = ∅.
(5)
R ist antisymmetrisch
⇔
R ∩ R−1 ⊆ idM.
(6)
R ist semikonnex
⇔
R ∪ R−1 ∪ idM = M.
(7)
R ist konnex
⇔
R ∪ R−1 = M.
(8)
R ist transitiv
⇔
R2 ⊆ R.
(9)
R ist intransitiv
⇔
R ∩ R2 = ∅.
(10) Für n ∈ lN gilt:
(11) R ist azyklisch
9.8.04
(1)
R hat einen Zyklus der Länge n
⇔
∪
n
R n ∈ lN
R ⊆ R 2.
⇔
Rn ∩ idM ≠ ∅.
∩ idM = R+ ∩ idM = ∅.
(12) R ist reflexiv und transitiv
(13) R ist symmetrisch und antisymmetrisch
⇔
∀n ∈ lN : Rn = R.
R ⊆ idM.
(14) R ist Äquivalenzrelation und Halbordnung
⇔
R = idM.
© Karlheinz Hug, Hochschule Reutlingen
4 - 26
4 Relationale Strukturen
Welche der Eigenschaften von Definition 4.28 bleiben dem Durchschnitt und der Vereinigung von Relationen erhalten?
Satz 4.34
Operationen und
Eigenschaften
Für ein System von Relationen R ⊆ P(M2) gilt:
Sind alle R ∈ R reflexiv, symmetrisch, transitiv, Verträglichkeits- oder Äquiva-
(1)
lenzrelationen oder Präordnungen, so hat
Ist wenigstens ein R ∈ R irreflexiv, asymmetrisch, antisymmetrisch, intransitiv
(2)
oder azyklisch, so hat
∩R dieselbe Eigenschaft.
∪R dieselbe Eigenschaft.
(3)
Sind alle R ∈ R irreflexiv oder symmetrisch, so hat
(4)
Ist wenigstens ein R ∈ R reflexiv, semikonnex oder konnex oder hat wenigstens ein R ∈ R einen Zyklus, so hat
4.2.1
∩R dieselbe Eigenschaft.
∪R dieselbe Eigenschaft.
Intervalle
Bei homogenen Relationen kann man Nach- und Vorbereiche, insbesondere primitive,
miteinander schneiden. Für transitive Relationen erhält man so einen verallgemeinerten
Intervallbegriff, der speziell bei Zahlenmengen üblich ist. Bei nicht transitiven Relationen passt der Durchschnitt von Nach- und Vorbereichen nicht zu allen Eigenschaften,
die wir uns bei einem Intervall vorstellen.
Definition 4.35
Intervall
Sind M eine Menge und R ⊆ M 2 eine transitive Relation, so heißt für x, y ∈ M
[x, y]R := {z ∈ M | x R z ∧ z R y} = xR ∩ Ry
das Intervall zwischen x und y zu R.
Das Bild zeigt nicht alle Pfeile einer transitiven Relation.
Bild 4.14
Intervall
•
[x, y]
•
•
•
•
•
© Karlheinz Hug, Hochschule Reutlingen
•
y
x
•
9.8.04
4.2 Homogene zweistellige Relationen
4 - 27
Auch mit Intervallen lassen sich einige Eigenschaften charakterisieren.
Satz 4.36
Eigenschaften und
Intervalle
4.2.2
Für eine Menge M und eine transitive Relation R ⊆ M2 gilt:
(1)
∀x1, x2, y1, y2 ∈ M : [x1, y1]R ∩ [x2, y2]R = [x1, y2]R ∩ [x2, y1]R.
(2)
∀x1, x2, y1, y2 ∈ M :
((x1 R y1 ∧ x2 R y2)
([y1, x2]R ⊆ [x1, y2]R ∧ [y2, x1]R ⊆ [x2, y1]R)).
(3)
R ist reflexiv
⇔
∀x ∈ M : x ∈ [x, x]R.
(4)
R ist irreflexiv
⇔
∀x ∈ M : x ∉ [x, x]R.
(5)
R ist symmetrisch
∀x, y ∈ M : [x, y]R = [y, x]R.
(6)
R ist asymmetrisch
⇔
⇔
∀x ∈ M : [x, x]R = ∅
∀x, y ∈ M : [x, y]R ∩ [y, x]R = ∅.
(7)
R ist antisymmetrisch
⇔
∀x ∈ M : [x, x]R ⊆ {x}.
(8)
R ist reflexiv und antisymmetrisch
⇔
∀x ∈ M : [x, x]R = {x}.
Abbildungen zwischen relationalen Strukturen
Abbildungen übertragen Relationen auf ihrem Definitionsbereich in Relationen auf
ihrem Wertebereich und umgekehrt.
Definition 4.37
Bild und Urbild von
Relationen
Sind M, N Mengen, R ⊆ M2, S ⊆ N2 Relationen und f : M → N eine Abbildung, so
heißt die Relation
Rf
:= {(x, y) ∈ N2 | ∃v, w ∈ M : (f(v) = x ∧ f(w) = y ∧ v R w)}
= {(f(v), f(w)) | v R w}
das Bild von R unter f, und die Relation
fS
:= {(v, w) ∈ M2 | f(v) S f(w)}
heißt das Urbild von S unter f.
Bijektionen erhalten alle Eigenschaften von Relationen. Welche Eigenschaften von
Relationen bleiben unter allgemeinen Abbildungen invariant?
Satz 4.38
Bilder von Relationen
Sind M, N Mengen, R ⊆ M2 eine Relation und f : M → N eine Abbildung, so hat Rf
dieselbe Eigenschaft wie R unter einer der folgenden Voraussetzungen:
(1)
(2)
(3)
(4)
9.8.04
R ist symmetrisch oder hat einen Zyklus.
f ist surjektiv und R links-, rechts- oder bitotal, reflexiv, semikonnex, konnex
oder eine Verträglichkeitsrelation.
f ist injektiv und R links-, rechts- oder eineindeutig, irreflexiv, asymmetrisch,
antisymmetrisch, transitiv, intransitiv, azyklisch oder eine strikte Halbordnung.
f ist bijektiv und R hat eine der Eigenschaften der Definitionen 4.4 und 4.28.
© Karlheinz Hug, Hochschule Reutlingen
4 - 28
4 Relationale Strukturen
Da Abbildungen linkstotal und rechtseindeutig sind, bleiben Urbildern von Relationen
mehr Eigenschaften erhalten als Bildern.
Satz 4.39
Urbilder von Relationen
Sind M, N Mengen, S ⊆ N2 eine Relation und f : M → N eine Abbildung, so hat fS
dieselbe Eigenschaft wie S unter einer der folgenden Voraussetzungen:
(1)
(2)
(3)
(4)
S ist reflexiv, irreflexiv, symmetrisch, asymmetrisch, konnex, transitiv, intransitiv, azyklisch, eine Verträglichkeits- oder Äquivalenzrelation, Prä- oder
strikte Halbordnung oder hat einen Zyklus.
f ist surjektiv und S links-, rechts- oder bitotal.
f ist injektiv und S links-, rechts- oder eineindeutig, antisymmetrisch, semikonnex, eine Halb-, Voll- oder strikte Vollordnung.
f ist bijektiv und S hat eine der Eigenschaften der Definitionen 4.4 und 4.28.
Statt eine Relation von einer Menge auf eine andere Menge mittels einer Abbildung zu
übertragen, kann man Abbildungen zwischen zwei gegebenen relationalen Strukturen
danach untersuchen, ob sie mit den Strukturen verträglich sind. Strukturverträgliche
Abbildungen heißen Morphismen.
Definition 4.40
Relationale
Morphismen
Isomorphie
Sind M, N Mengen und R ⊆ M2, S ⊆ N2 Relationen, so heißt eine Abbildung
f : M → N ein (relationaler)
Homomorphismus
(mit R und S verträglich) :⇔
∀x, y ∈ M : (x R y f(x) S f(y));
Isomorphismus
:⇔
f ist ein bijektiver Homomorphismus und f−1 ist auch
ein Homomorphismus, d.h.
∀x, y ∈ M : (f(x) S f(y) x R y), also
∀x, y ∈ M : (f(x) S f(y) ⇔ x R y);
Automorphismus
:⇔
f ist ein Isomorphismus und M = N.
Den Bezug eines Morphismus zu den Strukturen verdeutlicht die Notation
f : M, R → N, S.
Die Strukturen M, R, N, S heißen (relational) isomorph,
M,
R ≅ N, S,
wenn es einen Isomorphismus f : M, R → N, S gibt.
Beispiele
Sei G eine Grundmenge.
(1)
Für jede Relation R ⊆ G 2 ist idG ein Automorphismus auf G, R (auch für
R = idG).
(2)
P(G), ⊆ → {P(M) | M ⊆ G}, ⊆, M → P(M) ist ein Isomorphismus (→ Korollar 1.9 S. 1-7).
Für jedes N ⊆ G sind M → M ∩ N, M → M ∪ N und M → M \ N Homomorphismen auf P(G), ⊆ (→ Sätze 1.13 (4) S. 1-9, 1.15 (7) S. 1-10).
Für jedes N ⊆ G ist P(G), ⊆ → P(G), ⊇, M → N \ M ein Homomorphismus
(→ Satz 1.15 (8) S. 1-10).
P(G), ⊆ → P(G), ⊇, M → M und P(G), ⊂ → P(G), ⊃, M → M sind Automorphismen (→ Satz 1.16 (7) S. 1-11).
Für jede Relation R ⊆ M × N sind P(M), ⊆ → P(N), ⊆, L → LR und
P(N), ⊆ → P(M), ⊆, O → RO Homomorphismen (→ Satz 4.3 (2)).
(3)
(4)
(5)
(6)
|
|
|
|
|
|
|
|
|
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.3 Äquivalenzrelationen
4 - 29
Für jede Abbildung f : M → N sind P(M), ⊆ → P(N), ⊆, L → f[L] und
−1
P(N), ⊆ → P(M), ⊆, O → f [O] Homomorphismen (→ Sätze 4.7 (3), 4.8
(3)).
(7)
|
|
Die Komposition von zwei Homo-, Iso- oder Automorphismen ist wieder ein Homo-,
Iso- bzw. Automorphismus.
Welche Beziehungen bestehen zwischen Bildern und Urbildern von Relationen und
Morphismen? Direkt aus den Definitionen 4.37 und 4.40 folgt:
Korollar 4.41
Bilder, Urbilder und
Morphismen
Sind M, N Mengen, R ⊆ M2, S ⊆ N2 Relationen und f : M, R → N, S ein Homomorphismus, so gilt:
(1)
(2)
4.3
Rf ⊆ S.
R ⊆ fS.
Äquivalenzrelationen
Bei Äquivalenzrelationen, also reflexiven, symmetrischen und transitiven Relationen,
geht es um das „Gleichmachen“ von Elementen. Wir haben schon eine Reihe von
Äquivalenzrelationen kennen gelernt:
Beispiele
(1)
(2)
(3)
(4)
Die als Grundbeziehung nicht näher definierte Gleichheit von Dingen ist eine
Äquivalenzrelation auf einer Menge von Dingen.
Ist M ein Mengensystem, so ist die in Definition 1.2 S. 1-1 definierte Mengengleichheit „=“ nach Korollar 1.3 S. 1-2 eine Äquivalenzrelation auf M, die auf
der logischen Äquivalenz basiert.
Die Gleichheiten von Relationen, Abbildungen, n-Tupeln usw. sind als Spezialfälle der Mengengleichheit auch Äquivalenzrelationen.
Ist A eine Menge von Aussagen, so sind die Äquivalenz „⇔“ nach Satz 2.21 S.
2-27 und die logische Äquivalenz „≡“ nach Korollar 2.22 S. 2-27 Äquivalenzrelationen auf A. Sie basieren auf der Gleichheit auf lB = {0, 1}.
Weitere Äquivalenzrelationen kennen wir aus der Schulmathematik, dem Alltag und
der Informatik:
(5)
(6)
Parallelität von Geraden im n-dimensionalen Raum.
Kongruenz und Ähnlichkeit von geometrischen Objekten wie Dreiecke, Vierecke, Kreise usw.
(7) Alle Socken gleicher Größe und Farbe aus gleichem Material mit gleichem Webmuster sind äquivalent.
(8) Alle Massenprodukte mit gleichen Eigenschaften sind äquivalent.
(9) Alle Geldmünzen und -scheine mit gleichem Wert sind äquivalent.
(10) Alle Module, die eine gegebene (vollständig spezifizierte) Schnittstelle (korrekt)
implementieren, sind äquivalent.
(11) Alle Algorithmen, die dieselbe Funktion berechnen, sind äquivalent.
(12) Alle Systeme von EBNF-Regeln, die dieselbe Sprache beschreiben, sind äquivalent.
Bei Äquivalenzrelationen abstrahieren wir von uninteressanten Eigenschaften und
betrachten nur gerade interessante Eigenschaften. Alle Dinge, die die gleichen gerade
interessanten Eigenschaften besitzen, sind äquivalent.
l
9.8.04
Bei der Mengengleichheit interessiert, welche Elemente zu den Mengen gehören uninteressant ist, wie oft und in welcher Reihenfolge die Elemente vorkommen.
© Karlheinz Hug, Hochschule Reutlingen
4 - 30
4 Relationale Strukturen
l
l
l
l
l
l
l
l
l
Bei den Aussagen interessieren die Interpretationen, die Wahrheitswerte - uninteressant ist, welche logischen Operationen in den Aussagen vorkommen.
Bei den Geraden interessiert nur die Richtung, nicht die Lage.
Bei den geometrischen Objekten interessiert nur die Form, nicht die Lage.
Bei Socken interessiert nur, dass man sie paarweise anziehen kann.
Bei einem Streichholz interessiert nur, ob es brennt, nicht wer es wann in welche
Schachtel gesteckt hat.
Beim Geld interessiert nur „Was kriege ich dafür?“, nicht woher es kommt.
Bei einem Modul interessiert nur, dass es richtig funktioniert, nicht wie es implementiert ist.
Bei einem Algorithmus interessiert nur das Ergebnis, nicht wie es berechnet wird.
Bei EBNF-Regeln interessiert die Syntax der beschriebenen Sprache, nicht die
Regeln für sich.
Das bedeutet freilich nicht, dass wegabstrahierte Eigenschaften generell uninteressant
sind. In anderen Zusammenhängen kann es durchaus darauf ankommen, wie ein Modul
implementiert ist, wieviel Speicherplatz und Laufzeit ein Algorithmus benötigt, oder
wie leicht sich die Syntaxanalyse bei gegebenen EBNF-Regeln gestaltet.
Definition 4.42
Äquivalenzklasse
Quotientenmenge
Sei M eine Menge und R ⊆ M2 eine Äquivalenzrelation. Elemente x, y ∈ M mit
xRy
heißen äquivalent bzgl. R. Für x ∈ M heißt die Menge der zu x äquivalenten Elemente von M,
[x]R := {y ∈ M | x R y},
die Äquivalenzklasse von x zu R. Wir nutzen die Kurzschreibweise
[x]
statt
[x]R,
wenn sie eindeutig und R bekannt ist. Jedes
y ∈ [x]R
heißt ein Repräsentant von [x]R. Die Menge aller Äquivalenzklassen zu R,
M / R := {[x]R | x ∈ M} ⊆ P(M),
M nach R
heißt die Quotientenmenge (Faktormenge) von M zu R. Die offenbar surjektive
Abbildung
[.]R : M → M / R, x → [x]R,
|
die jedem Element von M seine Äquivalenzklasse zuordnet, heißt die kanonische
(natürliche) Abbildung zu R.
Die kanonische Abbildung ist eine Abstraktion: sie abstrahiert von uninteressanten
Eigenschaften der Elemente x ∈ M. Das Ergebnis sind die Äquivalenzklassen [x]R, die
durch die interessanten Eigenschaften bestimmt sind.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.3 Äquivalenzrelationen
4 - 31
Bild 4.15
Äquivalenzklassen
Menge M
•
•
•
•
•
•
•
•
•
•
durch Äquivalenzrelation R
zerlegt in
Äquivalenzklassen Zi
•
•
Z1
•
•
•
Z
• 2 •
•
•
kanonische
Abbildung
[.]R
•
Z3
•
•
Z4
•
•
Quotientenmenge
M/R
Z3
Z1
Z2
Z4
Der Hauptsatz über Äquivalenzrelationen besagt, dass sich Äquivalenzrelationen und
echte Zerlegungen einer Menge entsprechen. Bevor wir ihn in zwei Sätze aufgespalten
formal beweisen, veranschaulichen wir uns die Situation. Das Pfeildiagramm einer
Äquivalenzrelation zerfällt in Teildiagramme, die durch keine Pfeile verbunden sind,
aber innerhalb jedes Teildiagramms ist jeder Punkt mit jedem (auch sich selbst) durch
einen Doppelpfeil verbunden.
Identität
Die Identität idM = {(x, x) | x ∈ M} ist eine Äquivalenzrelation. Zwei Elemente x, y ∈ M
sind genau dann äquivalent bzgl. idM, wenn sie gleich sind, d.h. x = y. Es ist also
idM = =.
Die Äquivalenzklasse von x ist {x}. Die Quotientenmenge von M zu id M besteht aus
den einelementigen Mengen,
M / idM = {{x} | x ∈ M}.
Die Identität ist die „feinste“ Äquivalenzrelation auf M, sie hat die größtmögliche
Anzahl von Klassen, die alle möglichst klein sind.
Allrelation
Die Allrelation M2 ist eine Äquivalenzrelation. Alle Elemente sind äquivalent bzgl. M2.
Die einzige Äquivalenzklasse ist M. Die Quotientenmenge von M zu M2 ist
M / M2 = {M}.
Die Allrelation ist die „gröbste“ Äquivalenzrelation auf M, sie hat die kleinstmögliche
Anzahl von Klassen, die alle möglichst groß sind.
Interessante Äquivalenzrelationen liegen zwischen der Identität und der Allrelation, sie
sind gröber als die Identität und feiner als die Allrelation. Die Äquivalenzklassen [x]R
einer Äquivalenzrelation R ⊆ M2 zerlegen M, ihre Produkte mit sich selbst, die [x]R2,
zerlegen R. Eine Äquivalenzrelation ist also die disjunkte Vereinigung der Allrelationen ihrer Äquivalenzklassen.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 32
4 Relationale Strukturen
Bild 4.16
Äquivalenzrelationen in
einer kartesischen
Ebene
Z5
Z4
Z3
Z2
Z1
Z1
Z2 Z3
Z4
Z5
Identität
Allrelation
Stellen wir die Äquivalenzrelation in einer kartesischen Ebene oder als Matrix dar und
gruppieren äquivalente Elemente nebeneinander zusammen zu ihren Äquivalenzklassen Zi, so ergibt sich für die Äquivalenzrelation als Muster die Diagonale aus den mit
den Äquivalenzklassen Zi gebildeten Quadraten Zi2. Der Identität idM entspricht die
„dünnste“ Diagonale, der Allrelation M2 die „dickste“.
Satz 4.43
Eigenschaften von
Äquivalenzrelationen
Für eine Menge M und eine Äquivalenzrelation R ⊆ M2 gilt:
(1)
Alle Äquivalenzklassen sind nicht leer:
∀x ∈ M : x ∈ [x]R.
(2)
Die Äquivalenzklassen überdecken M:
∪ [ x ]R = M.
x∈M
(3)
Jeder Repräsentant einer Äquivalenzklasse bestimmt dieselbe Äquivalenzklasse, d.h. jede Äquivalenzklasse ist unabhängig von der Wahl eines Repräsentanten bestimmt:
∀x, y ∈ M : (x R y ⇔ [x]R = [y]R).
(4)
Jedes Element gehört zu genau einer Äquivalenzklasse, d.h. zwei Äquivalenzklassen sind entweder gleich oder disjunkt:
∀x, y ∈ M : ([x]R ≠ [y]R ⇔ [x]R ∩ [y]R = ∅).
(5)
Die Äquivalenzklassen zerlegen M, d.h. die Quotientenmenge M / R ist eine
echte Zerlegung von M.
Die Produkte der Äquivalenzklassen mit sich selbst zerlegen R, d.h.
{[x]R2 | x ∈ M} ist eine echte Zerlegung von R:
(6)
∪ [ x ]R2 = R.
x∈M
Beweis. (1) Sei x ∈ M. Da R reflexiv ist, gilt x R x. Daraus folgt x ∈ [x]R.
(2) folgt direkt aus (1). (Im Fall M = ∅ ist R = ∅ und M / R = ∅. Dann ist die Vereinigung der 0 Mengen aus M / R leer, also gleich M.)
(3) Seien x, y ∈ M.
„“: Seien x R y und z ∈ [x]R. Dann gilt x R z. Da R symmetrisch ist, gilt auch y R x.
Da R transitiv ist, gilt auch y R z, also z ∈ [y]R. Damit ist [x]R ⊆ [y]R. Analog folgt die
umgekehrte Inklusion [y]R ⊆ [x]R und damit [x]R = [y]R.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.3 Äquivalenzrelationen
4 - 33
„⇐“: Sei [x]R = [y]R. Da R reflexiv ist, gilt x R x, also x ∈ [x]R = [y]R, also y R x. Da R
symmetrisch ist, gilt auch x R y.
(4) Seien x, y ∈ M. Wir zeigen die kontraponierten Implikationen.
[x]R = [y]R [x]R ∩ [y]R ≠ ∅:
Aus [x] = [y] und (1) folgt [x] ∩ [y] = [x] ≠ ∅.
[x]R ∩ [y]R ≠ ∅ [x]R = [y]R:
Es gibt ein z ∈ [x] ∩ [y]. Mit (3) gilt:
z ∈ [x] ∧ z ∈ [y] ⇔ x R z ∧ y R z ⇔ x R z ∧ z R y x R y ⇔ [x] = [y].
(5) folgt aus (1), (2) und (4).
p
(6) folgt aus (1), (3) und (4).
Theorem 4.44
Äquivalenzrelationen
und Zerlegungen
R
Sei M eine Menge.
(1)
Ist Z ⊆ P(M) eine echte Zerlegung von M, so ist
RZ := {(x, y) ∈ M2 | ∃Z ∈ Z : x, y ∈ Z}
eine Äquivalenzrelation auf M, deren Quotientenmenge gleich Z ist:
M / RZ = Z .
Wir bezeichnen RZ als die durch Z induzierte Äquivalenzrelation auf M.
(2)
Für jede Äquivalenzrelation R ⊆ M2 stimmt die durch die Quotientenmenge
M / R induzierte Äquivalenzrelation mit R überein:
RM / R = R.
Beweis. (1) Im Fall M = ∅ ist Z = ∅ und RZ = ∅. Sei also M ≠ ∅.
Reflexivität: Sei x ∈ M. Da Z eine echte Zerlegung ist, gibt es ein Z ∈ Z mit x ∈ Z.
Damit gilt x RZ x.
Symmetrie: folgt direkt aus der Kommutativität der Konjunktion.
Transitivität: Seien x, y, z ∈ M mit x RZ y und y RZ z. Dann gibt es genau ein Zxy ∈ Z
mit x, y ∈ Zxy und genau ein Zyz ∈ Z mit y, z ∈ Zyz. Damit ist y ∈ Zxy ∩ Zyz. Da Z eine
Zerlegung ist, folgt Zxy = Zyz. Damit sind x, z ∈ Zxy, also x RZ z.
Es bleibt zu zeigen: M / RZ = Z.
„⊆“: Ist [x] ∈ M / RZ, so gibt es (da Z eine echte Zerlegung ist) genau ein Z ∈ Z mit
x ∈ Z. Da für y ∈ M gilt: y ∈ [x] ⇔ x RZ y ⇔ y ∈ Z, ist [x] = Z.
„⊇“: Ist Z ∈ Z, so gibt es (da Z eine echte Zerlegung ist) ein x ∈ Z. Da für y ∈ M gilt:
y ∈ Z ⇔ x RZ y ⇔ y ∈ [x], ist Z = [x].
(2) „⊆“: Ist x RM / R y, so gibt es ein z ∈ M mit x, y ∈ [z]R. Daraus folgt z R x und z R y.
Da R symmetrisch und transitiv ist, folgt x R y.
„⊇“: Aus x R y folgt x, y ∈ [x]R und daraus x RM / R y.
p
Alle Repräsentanten einer Äquivalenzklasse sind äquivalent, daher ist es „egal, welchen man nimmt“. Oft bieten sich besonders „handliche“ Repräsentanten an, aus denen
man ein Repräsentantensystem bildet.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 34
Definition 4.45
Repräsentantensystem
4 Relationale Strukturen
Ist R ⊆ M2 eine Äquivalenzrelation, so heißt eine Teilmenge N ⊆ M
:⇔
⇔
ein Repräsentantensystem zu R
Beispiel 4.1
Diskretisierung
M / R = {[y]R | y ∈ N}
∀x ∈ M ∃1y ∈ N : x R y.
Beispielsweise bilden wir beim Diskretisieren stetiger Größen Äquivalenzklassen. Für
x ∈ ! bezeichnet x den ganzzahligen Anteil von x, also die größte ganze Zahl n ∈
mit n ≤ x. Durch
'
xRy
:⇔
x
!
= y
!
für x, y ∈ ist eine Äquivalenzrelation R auf definiert. Reelle Zahlen mit gleichem
ganzzahligen Anteil sind äquivalent. (In der Notation von Definition 4.37 ist
R = .id', das Urbild der Gleichheit unter .. Nach Satz 4.39 (1) ist R eine Äquivalenzrelation, weil die Gleichheit eine ist.) Ein handliches Repräsentantensystem bilden
offenbar die ganzen Zahlen: Es ist ⊆ und zu jedem x ∈ gibt es genau ein n ∈
mit x R n, nämlich n := x. In einem so diskretisierten System repräsentieren ganze
Zahlen reelle Zahlen.
' !
!
'
F
Nach- und Vorbereich
Im Folgenden sei R ⊆ M2 eine Äquivalenzrelation. Die Nach- und Vorbereiche von
Elementen von R sind die Äquivalenzklassen dieser Elemente, denn es gilt:
xR
= {y ∈ M | x R y} = [x]R,
Ry = {x ∈ M | x R y} = [y]R.
Die kanonische Abbildung zu R stimmt bis auf den Wertebereich mit den Abbildungen
M → P(M), x → xR,
|
M → P(M), x → Rx
|
Intervall
überein (→ S. 3). Die Intervalle von R sind leer oder stimmen mit Äquivalenzklassen
überein, denn es gilt:
[x, y]R = {z ∈ M | x R z ∧ z R y} = xR ∩ Ry = [x]R ∩ [y]R.
Deshalb lassen sich Äquivalenzrelationen auch mittels Bereichen charakterisieren.
Satz 4.46
Charakterisierung von
Äquivalenzrelationen
Ist M eine Menge und R ⊆ M2 eine Relation, so sind folgende Aussagen äquivalent:
(1)
(2)
(3)
(4)
R ist eine Äquivalenzrelation.
∀x ∈ M ∃y ∈ M : x R y ∧ ∀x, y, z ∈ M : ((x R z ∧ y R z) x R y).
∀x ∈ M ∃y ∈ M : y R x ∧ ∀x, y, z ∈ M : ((z R x ∧ z R y) x R y).
∀x ∈ M : xR ≠ ∅ ∧ ∀x, y ∈ M : (xR ∩ yR ≠ ∅ x R y).
(5)
∀x ∈ M : Rx ≠ ∅ ∧ ∀x, y ∈ M : (Rx ∩ Ry ≠ ∅ x R y).
(6)
∀x ∈ M : x ∈ xR = Rx = ( R )R .
x
(7)
∀x ∈ M : x ∈ xR = Rx = R ( R ) .
x
(8)
∀x, y ∈ M : (x R y ⇔ xR = yR).
(9)
∀x, y ∈ M : (x R y ⇔ Rx = Ry).
(10) idM ⊆ R = R−1 = R2.
Es folgen einige Anwendungen von Äquivalenzrelationen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.3 Äquivalenzrelationen
4.3.1
4 - 35
Faktorisierung von Abbildungen
Bei einer Abbildung kann man alle Urbildelemente mit gleichem Bildelement als äquivalent betrachten. Die Abbildung lässt sich dann in einen surjektiven und einen injektiven Teil zerlegen.
Bild 4.17
Faktorisierungsdiagramm
M
f
surjektiv [.]∼f
N
injektiv
f
M / ∼f
Satz 4.47
Faktorisierung einer
Abbildung
Für Mengen M, N und eine Abbildung f : M → N gilt:
(1)
Durch
∼f := {(x, y) ∈ M2 | f(x) = f(y)} = {(x, y) ∈ M 2 | y ∈ f−1[{f(x)}]} = f−1 ° f
(2)
ist eine Äquivalenzrelation auf M definiert; sie heißt die durch f induzierte
Identifizierung.
Für die Quotientenmenge gilt:
M / ∼f = {f−1[{z}] | z ∈ f[M]}.
(3)
Die Äquivalenzklassen f−1[{z}] heißen Fasern von f.
Durch
f : M / ∼f → N, [ x ] ~ → f(x)
f
|
(4)
ist eine injektive Abbildung definiert; sie heißt die zu f gehörige Injektion.
f ist die Komposition einer surjektiven und einer injektiven Abbildung:
f = f ° [ ]~ ,
f
d.h. das Faktorisierungsdiagramm Bild 4.17 kommutiert.
Beweis. (1) In der Notation von Definition 4.37 ist ∼f = fidN, das Urbild der Gleichheit
unter f. Nach Satz 4.39 (1) ist ∼f eine Äquivalenzrelation, weil die Gleichheit eine ist.
(2) Für x, y ∈ M gilt: y ∈ [ x ] ~ ⇔ x ∼f y ⇔ f(x) = f(y) ⇔ y ∈ f−1[{f(x)}].
f
(3) Es ist zu zeigen, dass f wohldefiniert ist: f ist offenbar linkstotal. f ist rechtseindeutig, da für x, y ∈ f−1[{z}] gilt: f(x) = z = f(y). Zudem ist f injektiv, denn aus f([x]) = f(x) =
f(y) = f([y]) folgt [x] = [y].
(4) Für x ∈ M gilt: (f ° [ ] ~ )(x) = f( [ x ] ~ ) = f(x).
f
f
F
Eine Abbildung ist also auf jeder ihrer Fasern konstant und ordnet verschiedenen
Fasern verschiedene Werte zu. Die Äquivalenzklassen [x]R einer Äquivalenzrelation R
sind die Fasern der kanonischen Abbildung [.]R zu R. Jede Äquivalenzrelation ist durch
ihre kanonische Abbildung induziert.
Eine Äquivalenzrelation R auf M zerlegt einen Homomorphismus f : M, R → N, = in
zwei Faktoren.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 36
Bild 4.18
Zerlegung eines
Homomorphismus
4 Relationale Strukturen
M,
f
R
N,
surjektiv [.]R
=
g
M/R
Satz 4.48
Zerlegung eines
Homomorphismus
Sind M, N Mengen, R ⊆ M2 eine Äquivalenzrelation und f : M, R → N, = ein
Homomorphismus, so ist durch
g([x]R) := f(x)
für [x]R ∈ M / R eine Abbildung g : M / R → N mit g ° [.]R = f definiert, d.h. das Diagramm Bild 4.18 kommutiert.
Beweis. Es ist nur zu zeigen, dass g wohldefiniert ist, was sich hier auf die Rechtseindeutigkeit reduziert. Aus [x] = [y] muss f(x) = f(y) folgen, d.h. die Gleichung
g([x]) = f(x) muss unabhängig vom Repräsentanten y ∈ [x] gelten. Aus [x] = [y] folgt
aber x R y und, da f ein Homomorphismus ist, f(x) = f(y).
F
Ist auch auf N eine Äquivalenzrelation S definiert, so überträgt sich ein Homomorphismus f : M, R → N, S auf die Quotientenmengen.
Bild 4.19
Übertragung eines
Homomorphismus
M,
R
surjektiv [.]R
M/R
Satz 4.49
Übertragung eines
Homomorphismus
f
g
h
N,
S
[.]S surjektiv
N/S
Sind M, N Mengen, R ⊆ M2, S ⊆ N2 Äquivalenzrelationen und f : M, R → N, S ein
Homomorphismus, so ist durch
h([x]R) := [f(x)]S
für [x]R ∈ M / R eine Abbildung h : M / R → N / S mit h ° [.]R = [.]S ° f definiert, d.h.
das Diagramm Bild 4.19 kommutiert.
Beweis. Mit g wie in Satz 4.48 ist h([x]R) := [f(x)]S = [g([x]R)]S. Da g wohldefiniert ist,
ist es auch h = [.]S ° g.
F
Es gilt auch die Umkehrung: Gibt es eine Abbildung h, die das Diagramm Bild 4.19
kommutativ macht, so ist f ein Homomorphismus. Zusammen erhalten wir eine Charakterisierung von mit Äquivalenzrelationen verträglichen Morphismen.
Satz 4.50
Homomorphismen von
Äquivalenzrelationen
Für Mengen M, N mit Äquivalenzrelationen R ⊆ M2, S ⊆ N2 und einer Abbildung
f : M → N gilt:
f ist ein Homomorphismus von M, R nach N, S genau dann, wenn es eine
Abbildung h : M / R → N / S mit h ° [.]R = [.]S ° f gibt.
Beweis. „“: Satz 4.49.
„⇐“: Seien x, y ∈ M mit x R y. Da R eine Äquivalenzrelation ist, ist [x]R = [y]R. Damit
ist [f(x)]S = ([.]S ° f)(x) = (h ° [.]R)(x) = h([x]R) = h([y]R) = (h ° [.]R)(y) = ([.]S ° f)(y) =
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.3 Äquivalenzrelationen
4 - 37
[f(y)]S. Da S eine Äquivalenzrelation ist, folgt f(x) S f(y). Also ist f ein Homomorphismus.
F
4.3.2
Von Präordnungen zu Halbordnungen
Zu einer Präordnung lässt sich durch Faktorisierung eine Halbordnung konstruieren.
Oft will man sogar eine Vollordnung haben.
Beispiel 4.2
Studierende Aufgaben
Punkte
Das Problem ist, die Leistung von StudentInnen anhand von ihnen gelöster Aufgaben
zu bewerten. Seien also
M = {Ali, Eva, Ina, Udo}
eine Menge von StudentInnen und
N = {1, 2, 3, 4}
eine Menge von Aufgaben. Die Abbildung
l : M → P(N)
ordnet jeder StudentIn die Menge der von ihr gelösten Aufgaben zu, etwa
l(Ali) = {1, 2}, l(Eva) = {1, 2, 3}, l(Ina) = {2, 3, 4}, l(Udo) = {1, 2}.
Wir können Ali und Udo gleich bewerten. Eva hat mehr geleistet als Ali und Udo. Ina
ist mit keiner anderen vergleichbar. Wie stellt sich das formal dar?
P(N), ⊆ ist eine halbgeordnete Menge. Nach Definition 4.37 ist das Urbild l⊆ von ⊆
unter l definiert durch
x l⊆ y :⇔ l(x) ⊆ l(y)
für x, y ∈ M und bedeutet
„x hat höchstens die Aufgaben gelöst, die y gelöst hat“.
Ihre Umkehrrelation (l⊆)−1 bedeutet
„x hat mindestens die Aufgaben gelöst, die y gelöst hat“.
Sie ist das Urbild der Umkehrrelation von ⊆, also von ⊇ unter l:
x (l⊆)−1 y ⇔ y l⊆ x ⇔ l(y) ⊆ l(x) ⇔ l(x) ⊇ l(y) ⇔ x l⊇ y.
Nach Satz 4.39 (1) sind l⊆ und l⊇ Präordnungen auf M, aber keine Halbordnungen, da
sie nicht antisymmetrisch sind, wie
Ali l⊆ Udo und Udo l⊆ Ali, aber Ali ≠ Udo
zeigt. Nur falls l injektiv ist, ist l⊆ eine Halbordnung.
Für die Durchschnittsrelation
≈l⊆ := l⊆ ∩ l⊇
gilt
x ≈l⊆ y ⇔ x l⊆ y ∧ x l⊇ y ⇔ l(x) ⊆ l(y) ∧ l(x) ⊇ l(y) ⇔ l(x) = l(y)
für x, y ∈ M. Das bedeutet
„x hat dieselben Aufgaben gelöst wie y“.
≈l⊆ ist nach Konstruktion symmetrisch und nach Satz 4.34 (1) reflexiv und transitiv,
also eine Äquivalenzrelation auf M. Die Quotientenmenge ist im Beispiel
M / ≈l⊆ = {{Ali, Udo}, {Eva}, {Ina}}.
Wir übertragen nun die Präordnung l⊆ von M auf die Quotientenmenge M / ≈l⊆, d.h.
wir betrachten nach Definition 4.37 das Bild
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 38
4 Relationale Strukturen
≤l⊆ := l⊆[.]≈
von l⊆ unter der kanonischen Abbildung [.]≈ zu ≈l⊆:
[x]≈ ≤l⊆ [y]≈ ⇔ x l⊆ y ⇔ l(x) ⊆ l(y).
Es ist leicht zu zeigen, dass ≤l⊆ eine Halbordnung auf M / ≈l⊆ ist.
Ziel ist, die Leistungen von je zwei Studierenden vergleichen zu können. Dazu ordnen
wir mit der Abbildung
p : N → lN
jeder Aufgabe a ∈ N eine Punktzahl p(a) ∈ lN zu. Die Abbildung
s : P(N) → lN, A →
|
å
a∈A
p(a)
ordnet jeder Teilmenge von Aufgaben die Summe ihrer Punkte zu. Die Kompositionsabbildung
s ° l : M → lN , x → s(l(x)) =
|
å
a ∈ l( x )
p( a )
ordnet jeder StudentIn die Summe der Punkte der von ihr gelösten Aufgaben zu.
≤ ist eine vollgeordnete Menge. Nach Definition 4.37 ist das Urbild (s ° l)≤ von ≤
unter s ° l definiert durch
lN ,
x (s ° l)≤ y :⇔ s(l(x)) ≤ s(l(y))
für x, y ∈ M und bedeutet
„x hat höchstens so viele Punkte erreicht wie y“.
Ihre Umkehrrelation (s ° l)≥ bedeutet
„x hat mindestens so viele Punkte erreicht wie y“.
Nach Satz 4.39 (1) sind (s ° l)≤ und (s ° l)≥ Präordnungen auf M. Die von (s ° l)≤ induzierte Äquivalenzrelation
≈(s ° l)≤ := (s ° l)≤ ∩ (s ° l)≥
auf M bedeutet:
„x hat gleich viele Punkte erreicht wie y“.
Sie induziert eine Vollordnung auf der Quotientenmenge M / ≈(s ° l)≤.
Eva schneidet unter jeder Punktezuordnung p besser als Ali und Udo ab, die stets
gleich gut sind. Die Leistung von Ina hängt von p ab. Wählen Sie p so, dass Ina
(1)
(2)
(3)
(4)
(5)
Beste,
Zweitbeste,
Drittbeste,
gleich gut wie Eva,
gleich gut wie Ali und Udo
wird!
© Karlheinz Hug, Hochschule Reutlingen
F
9.8.04
4.4 Gleichmächtigkeit und Mächtigkeit von Mengen
Satz 4.51
Äquivalenzrelation und
Halbordnung zu einer
Präordnung
4 - 39
Sind M eine Menge und R ⊆ M 2 eine Präordnung, so ist durch
x ≈R y
:⇔
xRy∧yRx
für x, y ∈ M, also durch
≈R
:=
R ∩ R−1
eine Äquivalenzrelation auf M und durch
[x]≈ ≤R [y]≈
:⇔
xRy
für x, y ∈ M, also durch das Bild von R unter der kanonischen Abbildung zu ≈R,
≤R
:=
R[.]≈
eine Halbordnung ≤R auf M / ≈R definiert. Wir nennen ≈R die durch R induzierte
Äquivalenzrelation und ≤R die durch R induzierte Halbordnung.
Beweis. Dass ≈R eine Äquivalenzrelation ist, ist klar. Nach Satz 4.38 (2) ist ≤R reflexiv.
Antisymmetrie: [x] ≤ [y] ∧ [y] ≤ [x] ⇔ x R y ∧ y R x ⇔ x ≈ y ⇔ [x] = [y].
Transitivität: [x] ≤ [y] ∧ [y] ≤ [z] ⇔ x R y ∧ y R z x R z ⇔ [x] ≤ [y].
F
4.4
Gleichmächtigkeit und Mächtigkeit von Mengen
4.4.1
Kardinalzahlen
Anzahlaspekt
Oft wollen wir etwas über die Größe, den Umfang von Mengen wissen: Besitzen zwei
Mengen gleich viele Elemente oder besitzt eine mehr als die andere? Wie viele Elemente gehören zu einer Menge? Dazu brauchen wir Anzahlen, also Zahlen, die den
Anzahlaspekt ausdrücken. Anzahlen sind Abstraktionen von Mengen mit gleich vielen
Elementen: Drei Käfer, drei Steine, drei Nüsse, drei Eier - gemeinsam ist diesen konkreten Dreiermengen die abstrakte Anzahl drei. Wir lernen diesen Abstraktionsprozess
als Kinder. Hier formalisieren wir ihn. Den Begriff der Anzahl der Elemente einer
Menge, den wir in Definition 1.4 S. 1-2 vage benutzt haben, können wir mit dem
Begriff der Äquivalenzrelation streng definieren, sogar ohne natürliche Zahlen zu verwenden.
Definition 4.52
Cantorsche
Gleichmächtigkeitsdefinition
Beispiele
Die Mengen M, N heißen gleichmächtig,
M ∼ N,
wenn es eine Bijektion f : M → N gibt.
{1, 2, 3} und {a, b, c} sind gleichmächtig, da 1 ↔ a, 2 ↔ b, 3 ↔ c eine Bijektion ist.
Ob zwei endliche Mengen M, N gleichmächtig sind, lässt sich leicht algorithmisch
ermitteln:1
gleichmächtig (M, N) :⇔
K := M; L := N;
WHILE K ≠ ∅ ∧ L ≠ ∅ DO
wähle x ∈ K, y ∈ L;
bilde x ↔ y;
K := K \ {x}; L := L \ {y}
END;
result := K = ∅ ∧ L = ∅.
Programm 4.1
Gleichmächtigkeit von
Mengen
1
Im Folgenden in Pseudocode verwendete algorithmische Konstrukte orientieren sich syntaktisch und semantisch an Component Pascal.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 40
4 Relationale Strukturen
Ist M oder N endlich, so terminiert der Algorithmus. Er konstruiert eine Injektion der
„kleineren“ in die „größere“ Menge. Sind beide Mengen gleichmächtig, so ist die konstruierte Abbildung auch surjektiv, also bijektiv. Sind beide Mengen unendlich, so läuft
der Algorithmus endlos. Beachte, dass der Algorithmus die Elemente nicht im Sinn
eines Durchnummerierens zählt, sondern nur einander zuordnet.
lN und 2lN := {2n | n ∈ lN } = {2, 4, 6,...}, die Menge der geraden Zahlen, sind gleichmächtig, da n ↔ 2n eine Bijektion ist. Über solche Bijektionen zwischen der Menge
der natürlichen Zahlen und einer ihrer echten Teilmengen wunderte sich schon Galilei1
- er fand sie paradox. Die galileische Paradoxie ist aber im Unterschied zur russellschen Antinomie nicht widersprüchlich. (Paradoxien erscheinen Anfängern als falsch,
sind es aber nicht.) Im Gegenteil - diese Idee stellt Definition 1.4 S. 1-2 auf eine solide
Basis.
Definition 4.53
Dedekindsche 2
Endlichkeitsdefinition
Eine Menge M heißt unendlich (infinite), wenn sie zu einer ihrer echten Teilmengen
gleichmächtig ist, d.h.
∃N ⊂ M : M ∼ N;
sonst endlich (finite).
Beispiele
lN
ist unendlich, da 2lN ⊂ lN und lN ∼ 2lN.
{1, 2, 3} ist endlich.
Satz 4.54
Gleichmächtigkeit als
Äquivalenzrelation
Die Gleichmächtigkeit ist eine Äquivalenzrelation auf jedem Mengensystem M:
∼ ⊆ M 2.
Beweis. Reflexivität: M ∼ M, da idM bijektiv ist.
Symmetrie: Aus M ∼ N folgt N ∼ M, da mit f : M → N auch f−1 bijektiv ist.
Transitivität: folgt aus Satz 4.20 (6).
F
Gleichmächtige Mengen sind charakterisiert durch Bijektionen, die von Strukturen
abstrahieren. Beziehen wir relationale Strukturen ein, so kommen wir zum Isomorphiebegriff von Definition 4.40. Der Beweis von Satz 4.54 gilt analog mit der Isomorphie
anstelle der Gleichmächtigkeit.
Satz 4.55
Isomorphie als
Äquivalenzrelation
Ist M ein Mengensystem und S = {M, R | M ∈ M ∧ R ⊆ M 2} ein System relationaler
Strukturen, so ist die (relationale) Isomorphie eine Äquivalenzrelation auf S:
≅ ⊆ S2.
1
Galileo Galilei (1564 - 1642), italienischer Physiker, Astronom, entdeckte drei Jupitermonde,
wurde von der Inquisition der katholischen Kirche unter Androhung der Folter gezwungen,
kopernikanischen Ideen und heliozentrischem Weltbild abzuschwören.
2
Richard Dedekind (1831 - 1916), deutscher Mathematiker.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.4 Gleichmächtigkeit und Mächtigkeit von Mengen
Definition 4.56
Mächtigkeit
4 - 41
Sei M, ∼ ein mit der Gleichmächtigkeit versehenes Mengensystem. Für M ∈ M
heißt die Äquivalenzklasse
[M]∼
die Mächtigkeit oder Kardinalzahl (Kardinalität) von M. Für die kanonische Abbildung zu ∼ benutzen wir die Schreibweise
|.| := [.]∼ : M → M / ∼, M → |M| := [M]∼.
|
Ist M endlich, so heißt die Mächtigkeit |M| endlich, sonst transfinit (unendlich).
In der Literatur sind auch folgende Schreibweisen gebräuchlich:
#M := card(M) := |M|.
Ist M, ∼ ein Mengensystem, das mit jeder Menge auch alle ihre Teilmengen enthält,
so gilt mit Definition 4.53 für M ∈ M:
M
4.4.2
M ist unendlich
⇔
∃N ⊂ M : |M| = |N|.
M ist endlich
⇔
∀N ⊂ M : |M| ≠ |N|.
Wir können die Begriffe der Gleichmächtigkeit und Mächtigkeit von Mengen (und Isomorphie von Strukturen) nur relativ zu einem gewählten wohldefinierten Mengensystem definieren. Eine „Menge aller Mengen“ dürfen wir nicht zugrunde legen - die gibt
es nicht, weil sie zu logischen Widersprüchen führen würde (→ Leitlinie 1.1 S. 1-3).
Ordinalzahlen
Unsere Definition der Mächtigkeit einer Menge ist reichlich abstrakt. Sie ist das Ergebnis eines Abstraktionsprozesses, der alle gleichmächtigen Mengen zu Äquivalenzklassen zusammenfasst und ihre sonstigen Eigenschaften abstreift. Wie können wir uns die
Mächtigkeit |M| einer Menge M als Anzahl ihrer Elemente, als Kardinalzahl vorstellen?
Gibt es für jede Mächtigkeit eine „Standardmenge“, die diese Anzahl repräsentiert?
Wir wollen Zahlen nicht als neue mathematische Objekte einführen, sondern aus dem
Mengenbegriff heraus entwickeln. Dazu konstruieren wir geeignete Repräsentanten der
endlichen Mächtigkeiten |M|, die ja Äquivalenzklassen sind, und setzen dann diese
Repräsentanten anstelle der Äquivalenzklassen ein.
Zählen
So wie die frühen Menschen das Zählen lernten, indem sie die Finger benutzten und
Kerben in Holz- und Knochenstücke ritzten:
|||||...,
konstruieren wir die natürlichen Zahlen als spezielle Mengen aus der leeren Menge.
Als ersten Versuch führen wir statt einer einfachen Strichliste eine doppelte, bei der die
Mengenklammern „{“ und „}“ als Striche dienen, mit denen wir die Doppelstrichliste
beidseitig erweitern:
0 := ∅ = {}.
1 := {0} = {∅} = {{}}.
2 := {1} = {{0}} = {{∅}} = {{{}}}.
3 := {2} = {{1}} = {{{0}}} = {{{∅}}} = {{{{}}}}.
...
Die induktive Definition dazu lautet:
(1)
(2)
9.8.04
0 := {} ist eine Versuchszahl.
Ist n eine Versuchszahl, so ist auch {n} eine Versuchszahl.
© Karlheinz Hug, Hochschule Reutlingen
4 - 42
Ordnungsaspekt
L
4 Relationale Strukturen
Die Versuchszahlen folgen aufeinander: Nach der Null kommt die Erste, dann die
Zweite, dann die Dritte, usw. Sie zeigen so einen weiteren Aspekt von Zahlen, den Ordnungsaspekt.
Leider scheitert der Versuch daran, den Anzahlaspekt geeignet zu erfassen, da alle Versuchszahlen bis auf 0 gleichmächtig sind, sie haben die Mächtigkeit |1|. Deshalb passen
wir den Ansatz unserem Ziel an, indem wir dem Nachfolger der Zahl n nicht nur n als
Element mitgeben, sondern alle vorhergehenden Zahlen:
0 := ∅ = {}.
1 := 0+ := {0} = {∅} = {{}}.
2 := 1+ := {0, 1} = {0, {0}} = {∅, {∅}} = {{}, {{}}}.
3 := 2+ := {0, 1, 2} = {0, {0}, {0, {0}}} = {{}, {{}}, {{}, {{}}}}.
...
n+ := {0, 1,.., n} = n ∪ {n}.
Definition 4.57
Natürliche Ordinalzahl
Die Menge lN0 der natürlichen Ordinalzahlen ist induktiv definiert durch:
(1)
0 := {} ∈ lN0.
(2)
∀n ∈ lN0 : n+ := n ∪ {n} ∈ lN0.
n+ heißt Nachfolger (successor) von n.
Für jede Menge M gilt: (0 ∈ M ∧ ∀n ∈ M : n+ ∈ M)
(3)
lN
0
⊆ M.
Wir setzen
lN
:= lN0 \ {0}.
Nach (1) und (2) ist jede natürliche Ordinalzahl die Menge, die genau die vorhergehenden natürlichen Ordinalzahlen umfasst, angefangen mit der leeren Menge als Null. Der
Nachfolger einer natürlichen Ordinalzahl n hat ein Element mehr als n. (3) bedeutet,
dass lN0 die „kleinste“ Menge mit den Eigenschaften (1) und (2) ist (→ 4.5.5). Verschiedene natürliche Ordinalzahlen haben verschiedene Mächtigkeit, da es keine Bijektion zwischen ihnen gibt.
Definition 4.58
Natürliche Kardinalzahl
Ist M, ∼ ein mit der Gleichmächtigkeit versehenes Mengensystem mit
heißen die Äquivalenzklassen der natürlichen Ordinalzahlen n ∈ lN0,
lN
0
⊆ M, so
|n| = [n]∼,
natürliche Kardinalzahlen.
Der folgende Satz über die Begriffe der Definitionen 4.52, 4.56, 4.57 und 4.58 ist einleuchtend, obwohl sein Beweis nicht trivial ist.
Satz 4.59
Endlichkeit ist
Natürlichkeit
Eine Menge ist genau dann endlich, wenn sie gleichmächtig zu einer natürlichen
Ordinalzahl ist.
Eine Kardinalzahl ist genau dann endlich, wenn sie natürlich ist.
Abkürzung
Um die Sprechweisen zu vereinfachen, identifizieren wir die Begriffe Ordinalzahl und
Kardinalzahl so: Ist eine Menge gleichmächtig zu einer natürlichen Ordinalzahl
n ∈ lN0, d.h. gilt
M∼n
d.h.
© Karlheinz Hug, Hochschule Reutlingen
|M| = [M]∼ = [n]∼ = |n|,
9.8.04
4.4 Gleichmächtigkeit und Mächtigkeit von Mengen
4 - 43
so nennen wir auch die Ordinalzahl n Mächtigkeit oder Kardinalzahl von M, identifizieren also die Äquivalenzklasse |n| und ihren Repräsentanten n und schreiben kurz
|M| = n.
Entsprechend bezeichnen lN0 und lN auch die Mengen aller natürlichen Kardinalzahlen
mit und ohne Null.
Die natürlichen Ordinalzahlen sind Standardmengen, sie repräsentieren alle Mächtigkeiten endlicher Mengen analog wie der in Paris aufbewahrte Urmeterstab alle Gegenstände der Länge 1 m repräsentiert. Mit Satz 4.59 ergibt sich:
Korollar 4.60
Beispiele
Für eine Menge M gilt:
(1)
M ist endlich
⇔
∃n ∈ lN0 : |M| = n.
(2)
M ist unendlich
⇔
∀n ∈ lN0 : |M| ≠ n.
{1, 2, 3} ist endlich, da |{1, 2, 3}| = |{0, 1, 2}| = |3| = 3.
lN
ist unendlich, da für alle n ∈ lN0 gilt: |lN| ≠ n.
Unendlichkeitsaxiom
Wir haben in Definition 4.57 die natürlichen Ordinalzahlen auf der Basis der naiven
Mengenlehre mit der leeren Menge konstruiert. Dürfen wir das überhaupt? Oder droht
das zu Widersprüchen zu führen? Als Erster formulierte der neunzehnjährige Hans von
Neumann1 diese Idee 1923 in einem Brief an Ernst Zermelo2, der 1908 das erste Axiomensystem der Mengenlehre vorgelegt hatte. So fand die Idee Eingang in die axiomatische Mengenlehre, die heute üblicherweise neben anderen Axiomen das Unendlichkeitsaxiom bietet, das gerade diese Konstruktion erlaubt. Wir dürfen uns also beruhigt
zurücklehnen.
Transfinite Kardinalzahl
Die natürlichen Kardinalzahlen repräsentieren nicht alle Mächtigkeiten, nur die endlichen. Welche Mächtigkeit hat z.B. die unendliche Menge lN? Wir definieren als erste
transfinite Kardinalzahl
ℵ0 := |lN|,
gesprochen „aleph null“. Das Symbol ℵ (aleph) ist der erste Buchstabe des hebräischen
Alphabets. Die Notation geht auf Cantor zurück, der unendliche Kardinalzahlen mit
hebräischen Buchstaben bezeichnete.
Definition 4.61
Abzählbare und
überabzählbare Menge
Eine Menge M heißt
abzählbar unendlich (countable infinite, denumerable), wenn |M| = ℵ0;
abzählbar (countable), wenn M endlich oder abzählbar unendlich ist, d.h.
|M| ∈ lN0 ∪ {ℵ0};
überabzählbar (uncountable) sonst.
In der Literatur steht manchmal „abzählbar“ für „abzählbar unendlich“ und „höchstens abzählbar“ für „abzählbar“.
Die Elemente einer abzählbaren Menge M lassen sich alle eineindeutig nummerieren:
M = {x1, x2,...},
d.h. es gibt eine bijektive Indizierung lN → M, n → xn.
|
9.8.04
1
John von Neumann (1903 - 1957), ungarisch-amerikanischer Mathematiker, Rechnerpionier.
2
Ernst Zermelo (1871 - 1953), deutscher Mathematiker.
© Karlheinz Hug, Hochschule Reutlingen
4 - 44
4 Relationale Strukturen
Auf die natürlichen Ordinal- und Kardinalzahlen folgen unendlich viele transfinite
Ordinal- und Kardinalzahlen. In diesem Bereich der unendlichen Mengen wird die
Mengenlehre erst richtig spannend. Die Basis dafür hat Cantor geschaffen. InformatikerInnen müssen nicht tiefer in dieses Gebiet vorstoßen. Die praktische Informatik handelt stets nur mit endlichen, wenn auch ggf. sehr großen Mengen.
4.4.3
Algorithmen zu Mengen
Zu zwei typischen Aufgaben stellen wir algorithmische Lösungen vor.
Aufgabe: Mächtigkeit
einer Menge
bestimmen
Gegeben ist eine Grundmenge G und eine durch eine Eigenschaft PM(.) auf G
beschriebene Teilmenge
M = {x ∈ G | PM(x)}.
Gesucht ist die Anzahl der Elemente von M, d.h.
|M| = |{x ∈ G | PM(x)}| = ?.
Die Schleife im folgenden Algorithmus wählt jedes Element von G genau einmal.
Programm 4.2
Mächtigkeit einer
Menge
card(M) =
result := 0;
FOR ALL x ∈ G DO
IF PM(x) THEN
result := result + 1
END
END.
Die folgende Suchaufgabe hat zwar nichts mit Mächtigkeit zu tun, doch variiert ihre
Lösung den Algorithmus von Programm 4.1.
Aufgabe: Element mit
Eigenschaft suchen
Programm 4.3
Element mit
Eigenschaft
4.5
Gegeben ist eine Grundmenge G und eine Eigenschaft P(.) auf G.
Gesucht ist ein Element x von G mit P(x).
ein_Element_mit(P) =
M := G;
result := nicht_gefunden;
ASSERT nicht_gefunden ∉ G;
WHILE result = nicht_gefunden ∧ M ≠ ∅ DO
wähle x ∈ M;
M := M \ {x};
IF P(x) THEN
result := x
END
END;
ASSERT (result = nicht_gefunden ∧ M = ∅) ∨ P(result).
Ordnungsrelationen
Bei Ordnungsrelationen geht es um Reihenfolgen, Anordnungen von Elementen. Ordnungen sind Halbordnungen, also reflexive, antisymmetrische und transitive Relationen, oder strikte Halbordnungen, also irreflexive und transitive Relationen. Beide
Arten von Halbordnungen können auch Vollordnungen, also konnex bzw. semikonnex
sein. Beachte, dass viele Autoren unter „Ordnung“ nicht wie wir einen Oberbegriff,
sondern entweder eine Halb- oder eine Vollordnung verstehen. Das Klassendiagramm
stellt die unterschiedlichen Bezeichnungen zusammen, wobei unsere fett erscheinen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
4 - 45
Bild 4.20
Klassifikation von
Ordnungen
Ordnung
reflexiv, antisymmetrisch, transitiv
Halbordnung ≤
Ordnung
partielle Ordnung
konnex
Vollordnung ≤
totale Ordnung
Ordnung
lineare Ordnung
irreflexiv, transitiv
strikte Halbordnung <
strikte Ordnung
strikte partielle Ordnung strenge Ordnung
semikonnex
strikte Vollordnung <
strikte totale Ordnung
strikte Ordnung
strikte lineare Ordnung
Klassendiagramm
Ist ≤ eine Halbordnung auf der Menge G, so heißen zwei Elemente x, y ∈ G vergleichbar (comparable), wenn x ≤ y oder y ≤ x ist, sonst unvergleichbar (incomparable). Im
Allgemeinen müssen nicht alle Elemente vergleichbar sein. Ist aber ≤ eine Vollordnung, so sind je zwei Elemente vergleichbar. Wir haben schon eine Reihe von Ordnungsrelationen kennen gelernt:
Beispiele
(1)
(2)
Ist M ein Mengensystem, so sind die in Definition 1.6 S. 1-6 definierten Mengeninklusionen nach Korollar 1.7 S. 1-7 Ordnungsrelationen auf M, und zwar
sind „⊆“ und „⊇“ Halbordnungen und „⊂“ und „⊃“ strikte Halbordnungen. Sie
basieren auf der Implikation.
Ist A eine Menge von Aussagen, so ist die Implikation „“ nach Satz 2.19 S. 225 eine Halbordnung auf der Quotientenmenge A / ≡. Nach Satz 2.20 (13) S. 226 ist „“ sogar eine Vollordnung auf A / ≡.
Weitere Ordnungsrelationen kennen wir aus der Schulmathematik, dem Alltag und der
Informatik:
(3)
(4)
(5)
(6)
(7)
(8)
(9)
'3!
Auf den Zahlenmengen lN, , , sind „kleiner oder gleich“ (≤) und „größer
oder gleich“ (≥) Vollordnungen, „kleiner“ (<) und „größer“ (>) sind strikte Vollordnungen.
Geldmünzen und -scheine sind nach Wert geordnet.
Produkte sind nach Seriennummern geordnet.
Menschen sind nach ihren Namen, Studierende auch nach ihren Matrikelnummern geordnet.
Module sind durch die Brauchtrelation halbgeordnet.
Die Speicherzellen eines Rechners sind durch ihre Adressen vollgeordnet.
Systeme von EBNF-Regeln sind halbgeordnet dadurch, dass sie kleinere oder
größere Sprachen beschreiben.
Bei Ordnungsrelationen vergleichen wir Elemente und fokussieren darauf, wie Elemente in einer Richtung aufeinander folgen: Welches Element kommt vor einem anderen, welches danach?
l
l
l
l
9.8.04
Bei der Mengeninklusion interessiert, welche Menge mehr oder weniger Elemente
als die andere hat.
Bei Aussagen interessiert, welche Aussage aus der anderen folgt.
Bei Zahlen interessiert, wo sie auf der Zahlengeraden liegen.
Beim Geld interessiert, ob ein Haufen Münzen mehr wert ist als ein Scheinchen.
© Karlheinz Hug, Hochschule Reutlingen
4 - 46
4 Relationale Strukturen
l
l
l
4.5.1
Bei einem PC interessiert, ob er aus einer früheren oder späteren Serie stammt.
Bei Menschen interessiert, ihre Telefonnummer schnell im Telefonbuch zu finden.
Bei einem Modul interessiert den Lader, welche gebrauchten Module er zuvor laden
muss.
Zugeordnete Relationen
Im Folgenden betrachten wir allgemeine Ordnungsstrukturen G, ≤ = G, ≤G mit einer
Grundmenge G und einer Halbordnung
Ordnung
≤ = ≤G
kleinergleich, lessequal
auf G. Wir sagen dann, G, ≤ oder kurz G ist eine halbgeordnete Menge (partially
ordered set, poset). Ist ≤ eine Vollordnung, so heißt G, ≤ oder kurz G eine vollgeordnete Menge (total, linear geordnete Menge, totally ordered set). Nach Satz 4.30 (5) ist
durch
Strikte Ordnung
< := ≤ \ idG
kleiner, less
eine strikte Halbordnung auf G definiert. Ist ≤ konnex, so ist < semikonnex, also eine
strikte Vollordnung. Ist umgekehrt G, < eine strikt halbgeordnete Menge, so ist nach
Satz 4.30 (4) durch
≤ := < ∪ idG
eine Halbordnung auf G definiert. Ist < semikonnex, so ist ≤ konnex, also eine Vollordnung. Elementweise bedeutet das:
x≤y
x<y
⇔
⇔
x < y ∨ x = y.
x ≤ y ∧ x ≠ y.
Nach Korollar 4.29 sind die Umkehrrelationen von Ordnungen auch Ordnungen, d.h.
durch
Inverse Ordnung
≥ := ≤−1
größergleich, greaterequal
ist eine Halbordnung, durch
Inverse strikte Ordnung
> := <−1
größer, greater
eine strikte Halbordnung definiert. ≥ oder > ist genau dann konnex bzw. semikonnex,
wenn ≤ bzw. < konnex bzw. semikonnex ist. Elementweise bedeutet das:
x≥y
x>y
⇔
⇔
y ≤ x.
y < x.
Auf dieser Eigenschaft beruht das Dualitätsprinzip bei Ordnungen.
Theorem 4.62
Dualitätsprinzip der
Ordnungstheorie
Zu jedem ordnungstheoretischen Begriff erhält man den dualen Begriff, indem man
≤ durch ≥ und < durch > ersetzt.
G,
≤ und G, ≥ heißen dual zueinander.
Eine ordnungstheoretische Aussage ist genau dann allgemeingültig, wenn die mit den
dualen Begriffen gebildete duale Aussage allgemeingültig ist.
Daher genügt es, jeweils einen von zwei dualen Sätzen zu beweisen.
Wir setzen bei Ordnungsstrukturen stets alle vier Ordnungsrelationen voraus:
G,
≤ = G, < = G, ≤, <, ≥, >.
Ist G eine Zahlenmenge, so haben ≤, <, ≥, > die übliche Bedeutung.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
4 - 47
Ist G die Potenzmenge einer Menge, so bedeuten ≤, <, ≥, > die Mengeninklusionen ⊆,
⊂, ⊇, ⊃.
Schließlich ist jeder Ordnungsstruktur die Unvergleichbarkeitsrelation
|| := G2 \ (≤ ∪ ≥)
Unvergleichbarkeit
unvergleichbar, incomparable
zugeordnet. Elementweise bedeutet das:
x || y
⇔
¬(x ≤ y ∨ y ≤ x).
Die Relationen <, >, =, || zerlegen G2, d.h. für x, y ∈ G trifft genau einer der vier Fälle
x < y,
x > y,
x = y,
x || y
zu. Ist G vollgeordnet, so ist || leer und es trifft genau einer der drei Fälle
x < y,
Trichotomie
x > y,
x=y
Trichotomie
zu. Wir zeigen das so: || ist nach Definition disjunkt zu ≤ ∪ ≥ = < ∪ id G ∪ > ∪ idG.
Wegen der Irreflexivität von < und > ist idG disjunkt zu < ∪ >. Wegen der Asymmetrie
von < sind < und > disjunkt.
Satz 4.63
Rechenregeln für
Ordnungen
Für eine halbgeordnete Menge G, ≤, < und Elemente x, y, z, x1,.., xn ∈ G gilt:
(1)
(2)
Einschränkung
x≤y<z
x<y≤z
x1 ≤ x2 ≤ ... ≤ xn ≤ x1
x < z.
x < z.
x1 = x2 = ... = xn.
Bei Ordnungsstrukturen interessieren oft Teilmengen mit den eingeschränkten Relationen. Man kann die Ordnung einer Grundmenge mittels der Ordnungen ihrer Teilmengen studieren. Für Teilmengen M ⊆ G bezeichnen wir die Einschränkungen
≤ ∩ M2, < ∩ M2, ≥ ∩ M2, > ∩ M2
kurz auch mit
≤, <, ≥, >.
Nach Korollar 4.29 (1) ist M = M, ≤, <, ≥, > wie G halb- oder vollgeordnet. Ein halbgeordnetes G kann vollgeordnete Teilmengen haben.
Ordnungsdiagramm
Endliche geordnete Mengen kann man anschaulich grafisch durch Ordnungs- oder
Hasse-Diagramme1 darstellen (Satz von Birkhoff2, 1935). Diese entsprechen den zur
Darstellung zweistelliger Relationen üblichen gerichteten Graphen oder Pfeildiagrammen (→ Bild 1.7 S. 1-19) mit speziellen Regeln, um die Diagramme übersichtlich zu
halten:
l
l
Die Richtung der Relation wird nicht durch einen Pfeil, sondern die Lage der Elemente dargestellt. Die Richtung läuft stets von unten nach oben.
Es wird nur eine Teilrelation von < durch Kanten dargestellt. Gilt x < y und y < z, so
wird x < z nicht dargestellt. Anders ausgedrückt: x < z wird nur dargestellt, wenn es
kein y gibt mit x < y und y < z.
Es ist x < y genau dann, wenn x im Ordnungsdiagramm unterhalb von y liegt und es
einen Weg von x über beliebig viele andere Elemente hinauf zu y gibt.
1
Helmut Hasse (1898 - 1979), deutscher Mathematiker. Die nach ihm benannten Diagramme
waren vor ihm bekannt.
2
9.8.04
Garrett Birkhoff (1911 - ?), amerikanischer Mathematiker.
© Karlheinz Hug, Hochschule Reutlingen
4 - 48
Beispiel
4 Relationale Strukturen
Die Ordnungsdiagramme zu den Potenzmengen P{1, 2}, ⊆ und P{1, 2, 3}, ⊆ sehen
so aus:
Bild 4.21
Ordnungsdiagramme
{1, 2}
{1}
{1, 2, 3}
{2}
∅
{1, 2}
{1, 3}
{2, 3}
{1}
{2}
{3}
∅
4.5.2
Nachbarrelationen
Bei endlichen halbgeordneten Mengen erfasst die in Ordnungsdiagrammen dargestellte
Teilrelation der Kleinerrelation wesentliche Beziehungen der Elemente, d.h. Wesentliches der Ordnungsstruktur. Wir geben dieser Relation einen Namen und untersuchen
sie.
Definition 4.64
Nachbarrelation
Für eine halbgeordnete Menge G, ≤, < heißt
→
:= {(x, y) ∈ G2 | x < y ∧ ¬∃z ∈ G : (x < z ∧ z < y)} = < \ <2
die obere Nachbarrelation (covering relation) zu <, und ihre Umkehrrelation
←
:= →−1
= {(y, x) | (x, y) ∈ →} = {(y, x) | x < y ∧ ¬∃z ∈ G : (x < z ∧ z < y)} = > \ >2
heißt die untere Nachbarrelation zu <. Gilt
x→y
und damit
y ← x,
so ist y ein oberer Nachbar (cover) von x und x ein unterer Nachbar von y.
Verwechslungen des Nachbarpfeils mit dem Abbildungspfeil scheinen ausgeschlossen.
Aus der Definition, Korollar 4.29 (2) und Satz 4.30 (8) folgt direkt:
Korollar 4.65
Ist G, ≤, < eine halbgeordnete Menge, so sind → und ← irreflexiv, asymmetrisch,
antisymmetrisch, intransitiv und azyklisch.
Ist G endlich, so gilt für x, y ∈ G:
x≤y
⇔
∃n ∈ lN ∃x1,.., xn ∈ G : x = x1 → x2 → ... → xn−1 → xn = y.
x<y
⇔
∃n ∈ lN ∃x1,.., xn ∈ G : x = x1 → x2 → ... → xn−1 → xn → y.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
4.5.3
4 - 49
Bereiche und Intervalle
Was lässt sich über die in den Definitionen 4.2 und 4.35 eingeführten Nach- und Vorbereiche und Intervalle sagen?
Satz 4.66
Ordnungen und
Bereiche
Sind G, ≤ eine halbgeordnete Menge, x, y ∈ G Elemente und beziehen sich die
Bereiche auf ≤ und < auf G, so gilt:
(1)
x≤
∩ ≤x = {x}.
x ∉ x< ∪ < x.
(2)
x≤
(3)
(4)
Ist G vollgeordnet, so sind {x≤, <x}, {x<, ≤x} und {x<, <x, {x}} Zerlegungen
von G.
⇔
≤x ⊆ ≤y.
x≤y
⇔
x≤ ⊇ y≤
(5)
x<y
⇔
x<
(6)
x=y
x≠y
⇔
⇔
x≤
= x< ∪ {x}.
<x ∩ x≤ = ≤x ∩ x< = ∅.
≤x = <x ∪ {x}.
⊃ y<
⇔
<x ⊂ <y.
= y≤
x≤ ≠ y ≤
⇔
⇔
≤x = ≤y.
≤x ≠ ≤y.
Beweis. (1) folgt aus der Reflexivität und Antisymmetrie von ≤ bzw. Irreflexivität von
<. (2) ist klar. (3) folgt aus (1) und (2).
(4) Nachbereiche. „“: Sei x ≤ y. Für z ∈ y≤ gilt y ≤ z. Wegen der Transitivität gilt
x ≤ z, also z ∈ x≤. Damit gilt y≤ ⊆ x≤.
„⇐“: Sei y≤ ⊆ x≤. Wegen der Reflexivität gilt y ≤ y, also y ∈ y≤ ⊆ x≤, also x ≤ y.
Vorbereiche: Wegen ≥ = ≤−1 folgt mit dem schon Gezeigten und Satz 4.3 (6) x ≤ y ⇔
y ≥ x ⇔ y≥ ⊇ x≥ ⇔ ≤ y ⊇ ≤ x.
(5) Nachbereiche. „“: Sei x < y. Für z ∈ y< gilt y < z. Wegen der Transitivität gilt
x < z, also z ∈ x<. Damit gilt y< ⊆ x<. Wegen y ∉ y< und y ∈ x< ist y< ⊂ x<.
„⇐“: Sei y< ⊂ x<. Dann gilt auch y< ⊆ x<. Wegen der Monotonie bzgl. der Relation
(Satz 4.12 (3)) gilt auch y≤ ⊆ x≤, also mit (4) x ≤ y. Aus y< ≠ x< folgt x ≠ y, zusammen
also x < y.
Vorbereiche: analog (4).
p
(6) folgt aus der Antisymmetrie von ≤ und (4).
Den Intervallbegriff können wir spezialisieren.
Definition 4.67
Abgeschlossenes und
offenes Intervall
Ist G, ≤ eine halbgeordnete Menge, so heißt für x, y ∈ G
[x, y] := [x, y]≤ = x≤ ∩ ≤y = {z ∈ G | x ≤ z ∧ z ≤ y}
das abgeschlossene Intervall zwischen x und y,
]x, y] := [x, y] \ {x} = x< ∩ ≤y = {z ∈ G | x < z ∧ z ≤ y}
das unten halboffene Intervall zwischen x und y,
[x, y[ := [x, y] \ {y} = x≤ ∩ <y = {z ∈ G | x ≤ z ∧ z < y}
das oben halboffene Intervall zwischen x und y,
]x, y[ := [x, y] \ {x, y} = ]x, y] ∩ [x, y[ = [x, y]< = x< ∩ <y = {z ∈ G | x < z ∧ z < y}
das offene Intervall zwischen x und y.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 50
4 Relationale Strukturen
Die Gleichungen ergeben sich aus Satz 4.66 (2). Die Nachbarrelation von Definition
4.64 lässt sich mit Intervallen so darstellen:
→
4.5.4
= {(x, y) ∈ G | x < y ∧ [x, y] = {x, y}} = {(x, y) ∈ < | [x, y] = {x, y}}
= {(x, y) ∈ G | x < y ∧ ]x, y[ = ∅} = {(x, y) ∈ < | ]x, y[ = ∅}.
Ketten und Antiketten
In halbgeordneten Mengen zeichnen sich die Teilmengen aus, die nur vergleichbare
oder nur unvergleichbare Elemente enthalten.
Definition 4.68
Kette und Antikette
Ist G, ≤ eine halbgeordnete Menge, so heißt eine Teilmenge M ⊆ G
Kette (chain) in G
:⇔
M ist vollgeordnet, d.h.
M2 ⊆ ≤ ∪ ≥;
Antikette (antichain) in G
:⇔
M enthält nur unvergleichbare Elemente, d.h.
d.h.
M2 ⊆ ||.
≤ ∩ M2 = ∅
Die Systeme aller Ketten und Antiketten in G sind
K(G) := {M ⊆ G | M ist Kette in G} ⊆ P(G),
A(G) := {M ⊆ G | M ist Antikette in G} ⊆ P(G),
jeweils versehen mit der Teilmengenrelation ⊆.
Ist M ∈ K(G) endlich, so heißt |M| − 1 die Länge (length) von M.
In einem Ordnungsdiagramm bestehen Ketten aus Elementen, die auf einem Weg von
unten nach oben liegen; Antiketten bestehen aus Elementen, von denen keine zwei auf
einem Weg von unten nach oben liegen. Maximale Ketten oder Antiketten sind solche,
die sich nicht durch Hinzunehmen weiterer Elemente vergrößern lassen.
Beispiele
P{1, 2} hat die (maximalen) Ketten {∅, {1}, {1, 2}} und {∅, {2}, {1, 2}}; die einzige
Antikette ist {{1}, {2}}.
P{1, 2, 3} hat neben {∅, {1}, {1, 2}, {1, 2, 3}} fünf weitere maximale Ketten. Welche?
Zu den (maximalen) Antiketten von P{1, 2, 3} gehören {{1}, {2}, {3}} und {{1, 2},
{1, 3}, {2, 3}}. Welche noch?
Endliche Ketten kann man auch auf Geraden anordnen, wie Zahlen auf Zahlengeraden.
4.5.5
Kleinste und größte Elemente
Ein kleinstes (größtes) Element einer halbgeordneten Menge ist ein Element der
Menge, das kleiner (größer) als alle anderen Elemente der Menge ist.
Definition 4.69
Kleinstes und größtes
Element
Sind G, ≤ eine halbgeordnete Menge und M ⊆ G eine Teilmenge, so heißt ein Element x ∈ G
kleinstes (least) Element von M,
x = klEl(M)
:⇔
⇔
x ∈ M ∧ ∀y ∈ M : x ≤ y
x ∈ M ∧ M ⊆ x≤;
:⇔
⇔
x ∈ M ∧ ∀y ∈ M : y ≤ x
x ∈ M ∧ M ⊆ ≤ x.
größtes (greatest) Element von M,
x = grEl(M)
Offenbar gilt für eine Teilmenge M ⊆ G einer halbgeordneten Menge G:
x = klEl(M) ∧ y = grEl(M)
© Karlheinz Hug, Hochschule Reutlingen
⇔
x, y ∈ M ∧ M ⊆ [x, y].
9.8.04
4.5 Ordnungsrelationen
Beispiele
4 - 51
Die Potenzmenge P(N) einer beliebigen Menge N hat ∅ als kleinstes und N als größtes
Element.
{{1}, {2}} hat weder ein kleinstes noch ein größtes Element.
{∅, {1}, {2}} hat ∅ als kleinstes, aber kein größtes Element.
{{1}, {2}, {1, 2}} hat kein kleinstes, aber {1, 2} als größtes Element.
Beispiel 4.3
Zerlegungen
Zu einer beliebigen Menge N sei
SZ(N) := {Z ⊆ P(N) | Z ist echte Zerlegung von N}
das System aller echten Zerlegungen von N. Durch
Z ≤ Z´
:⇔
∀Z ∈ Z ∃Z´ ∈ Z´ : Z ⊆ Z´
für Z, Z´ ∈ SZ (N) ist eine Halbordnung ≤ auf SZ(N) definiert. Statt „kleiner“ und
„größer“ sagen wir hier feiner und gröber. Für Z, Z´ ∈ SZ(N) und die induzierten
Äquivalenzrelationen RZ, RZ´ auf N gilt:
Z ist feiner als Z´, Z ≤ Z´
⇔
RZ ist feiner als RZ´, RZ ⊆ RZ´.
Das kleinste Element von SZ(N) ist {{x} | x ∈ N}, die feinste Zerlegung von N. Sie
induziert die feinste (= kleinste) Äquivalenzrelation auf N, die Identität id N. Das größte
Element von SZ(N) ist {N}, die gröbste Zerlegung von N. Sie induziert die gröbste
(= größte) Äquivalenzrelation auf N, die Allrelation N2 (→ S. 31). Für Z ∈ SZ(N) gilt
also:
{{x} | x ∈ N} ≤ Z ≤ {N}
Satz 4.70
Eindeutigkeit des
kleinsten und größten
Elements
und
idN ⊆ RZ ⊆ N2.
F
Eine halbgeordnete Menge hat höchstens ein kleinstes und ein größtes Element.
Beweis. Sei M halbgeordnet mit den kleinsten Elementen x, x´. Nach Definition gilt für
alle y ∈ M: x ≤ y ∧ x´ ≤ y, also insbesondere x ≤ x´ ∧ x´ ≤ x, woraus x = x´ folgt.
F
Als weiteres Beispiel formulieren wir Korollar 4.41 um.
Korollar 4.71
9.8.04
Sind M, N Mengen und f : M → N eine Abbildung, so gilt:
(1)
Ist R ⊆ M2 eine Relation auf M, so ist Rf die kleinste Relation S auf N, sodass
f : M, R → N, S ein Homomorphismus ist.
(2)
Ist S ⊆ N2 eine Relation auf N, so ist fS die größte Relation R auf M, sodass
f : M, R → N, S ein Homomorphismus ist.
© Karlheinz Hug, Hochschule Reutlingen
4 - 52
4.5.6
4 Relationale Strukturen
Minimale und maximale Elemente
Hat eine Menge kein kleinstes (größtes) Element, so kann sie doch Elemente enthalten,
die relativ zu den mit ihnen vergleichbaren Elementen die kleinsten (größten) sind, d.h.
zu denen es in der Menge keine kleineren (größeren) gibt. Solche Elemente heißen
minimal (maximal).
Definition 4.72
Extrema
Seien G, ≤ eine halbgeordnete Menge und M ⊆ G eine Teilmenge. Ein Element
x ∈ G heißt ein
minimales Element oder Minimum von M
:⇔
⇔
⇔
⇔
x ∈ M ∧ ∀y ∈ M : (y ≤ x y = x)
x ∈ M ∧ ¬∃y ∈ M : (y ≤ x ∧ y ≠ x)
x ∈ M ∧ ¬∃y ∈ M : y < x
x ∈ M ∧ M ∩ ≤x = {x};
maximales Element oder Maximum von M
:⇔ x ∈ M ∧ ∀y ∈ M : (x ≤ y y = x)
⇔ x ∈ M ∧ ¬∃y ∈ M : (x ≤ y ∧ y ≠ x)
⇔ x ∈ M ∧ ¬∃y ∈ M : x < y
⇔ x ∈ M ∧ M ∩ x≤ = {x}.
Die Mengen der Minima und Maxima von M sind
min(M) := {x ∈ M | ∀y ∈ M : (y ≤ x y = x)} = {x ∈ M | ¬∃y ∈ M : y < x},
max(M) := {x ∈ M | ∀y ∈ M : (x ≤ y y = x)} = {x ∈ M | ¬∃y ∈ M : x < y}.
Ein Element x ∈ min(M) ∪ max(M) heißt ein Extremum von M. Wir schreiben
kurz
min{...}
statt
min({...}),
und analog
max{...}.
Hat M genau ein minimales (maximales) Element, so schreiben wir
Beispiele
min(M) = x
statt min(M) = {x},
max(M) = x
statt max(M) = {x}.
Die Menge der Minima einer Menge kann
l
l
l
leer sein wie
genau ein Element enthalten wie
mehrere Elemente enthalten wie
min{1/n | n ∈ lN},
min{1, 2},
min{{1}, {2}}.
Entsprechendes gilt für die Menge der Maxima.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
Satz 4.73
Extrema
4 - 53
Seien G, ≤ eine halbgeordnete Menge und M ⊆ G eine Teilmenge.
(1)
(2)
(3)
(4)
(5)
(6)
(7)
Hat M ein kleinstes (größtes) Element, so ist dieses auch das einzige minimale
(maximale) Element:
x = min(M).
x = klEl(M)
x = max(M).
x = grEl(M)
Ist M vollgeordnet, so gilt: Jedes minimale (maximale) Element von M ist auch
kleinstes (größtes) Element von M:
min(M) = {x ∈ M | ∀y ∈ M : x ≤ y}.
max(M) = {x ∈ M | ∀y ∈ M : y ≤ x}.
M hat also höchstens ein minimales (maximales) Element:
|min(M)| ≤ 1,
|max(M)| ≤ 1.
Ist M nicht leer und endlich, so hat M mindestens ein minimales (maximales)
Element:
|min(M)| ≥ 1,
|max(M)| ≥ 1.
Ist M endlich, so gibt es zu jedem x ∈ M ein minimales y ∈ min(M) und ein
maximales z ∈ max(M) mit y ≤ x ≤ z.
Ist M endlich und hat genau ein minimales (maximales) Element, so ist dieses
auch kleinstes (größtes) Element von M:
x = klEl(M).
x = min(M)
x = grEl(M).
x = max(M)
Ist M eine nicht leere endliche Kette, so hat M genau ein minimales (maximales) Element, das auch kleinstes (größtes) Element von M ist:
x = klEl(M) = min(M).
x = grEl(M) = max(M).
Ist G endlich, so ist jedes Element von G entweder minimal (maximal) oder hat
einen unteren (oberen) Nachbarn:
∀x ∈ G : (x ∈ min(G) ⇔ ¬∃y ∈ G : y → x).
∀x ∈ G : (x ∈ max(G) ⇔ ¬∃y ∈ G : x → y).
Beweis. (1) Ist x = klEl(M) und y ∈ min(M), so gilt x ∈ M ∧ ∀z ∈ M : x ≤ z und
y ∈ M ∧ ∀z ∈ M : (z ≤ y z = y). Die erste Formel liefert x ≤ y, die zweite x = y.
(2) Der erste Teil folgt aus der Konnexität, der zweite aus Satz 4.70.
(3) zeigen wir durch Widerspruch. Annahme: M ≠ ∅ ist endlich und min(M) = ∅. Dann
gibt es ein n ∈ lN mit |M| = n. Zu beliebigem x ∈ M gibt es, da x nicht minimal ist, ein
y1 ∈ M mit y1 < x. Zu y1 gibt es ein y2 ∈ M mit y2 < y1, usw. Schließlich gibt es eine
Folge y1,.., yn ∈ M mit yn < yn−1 < ... < y2 < y1 < x. Damit ist |M| > n. Widerspruch!
(4) Mit M ist auch M ∩ ≤x endlich. Nach (3) hat M ∩ ≤x mindestens ein minimales Element y. Für dieses gilt: y ∈ M ∩ ≤x ∧ M ∩ ≤x ∩ ≤y = {y}. Aus y ≤ x folgt ≤y ⊆ ≤x, daraus ≤x ∩ ≤y = ≤y, daraus M ∩ ≤y = {y}, und daraus y ∈ min(M).
(5) folgt aus (4).
(6) folgt aus (2) und (3).
(7) „“: x ∈ min(G) ¬∃y ∈ G : y < x ¬∃y ∈ G : y → x.
„⇐“: x ∉ min(G) ∃y ∈ G : y < x.
G endlich ∃x1,.., xn ∈ G : y = x1 → ... → xn → x.
9.8.04
p
© Karlheinz Hug, Hochschule Reutlingen
4 - 54
4 Relationale Strukturen
Ketten
Ist M ⊆ G eine endliche Kette der Mächtigkeit |M| = n, so gibt es eine Indizierung ihrer
Elemente, sodass M = {x1,.., xn} und
klEl(M) = x1 < x2 < ... < xn−1 < xn = grEl(M).
Ist G eine endliche Kette mit |G| = n, so gibt es sogar für die Nachbarrelation eine Darstellung mit G = {x1,.., xn} und
klEl(G) = x1 → x2 → ... → xn−1 → xn = grEl(G).
In K(G), ⊆, der Menge aller Ketten in G, interessieren die maximalen Ketten
max(K(G)), und darunter die endlichen. Auch wenn M eine endliche maximale Kette in
G mit |M| = n ist, gibt es eine Darstellung mit M = {x1,.., xn} und
klEl(M) = x1 → x2 → ... → xn−1 → xn = grEl(M).
Satz 4.73 (6) liefert zwar ein Kriterium, mit dem sich feststellen lässt, ob ein Element
ein Extremum einer Kette ist. Das Kriterium eignet sich aber nicht dazu, das Extremum
einer gegebenen Kette effizient zu bestimmen. Wir stellen uns die Aufgabe:
Aufgabe: Minimum
einer Kette bestimmen
Finde einen effizienten Algorithmus, der zu einer endlichen Kette das Minimum
(Maximum) berechnet.
Der folgende Satz nach dem Teile-und-Herrsche-Prinzip (→ Leitlinie 3.1 S. 3-6) bereitet eine Basis für die Konstruktion eines Algorithmus.
Satz 4.74
Extrema von
Vereinigung
Für eine vollgeordnete Menge G, ≤ und endliche Teilmengen M, N ⊆ G gilt:
min(M ∪ N) = min{min(M), min(N)}.
max(M ∪ N) = max{max(M), max(N)}.
Beweis. Sei x := min(M), y := min(N), z := min{x, y}.
Aus x ∈ M, y ∈ N, z ∈ {x, y} folgt z ∈ M ∪ N.
((∀u ∈ M : x ≤ u) ∧ (∀v ∈ N : y ≤ v) ∧ z ≤ x ∧ z ≤ y) ((∀u ∈ M : z ≤ u) ∧ (∀v ∈ N : z ≤ v)) ∀w ∈ M ∪ N : z ≤ w z = min(M ∪ N).
p
Die folgenden Überlegungen beschränken sich auf das Minimum; sie gelten dual für
das Maximum. Wir spezialisieren Satz 4.74 auf verschiedene Fälle:
(1)
(2)
einelementige Kette {x}
min{x} = x.
zweielementige Kette {x, y}
min{x, y} =
x
y
falls x ≤ y
falls y ≤ x
.
Beachte, dass es im Fall x = y egal ist, ob x oder y als Minimum gewählt wird. Die in
der Mathematik übliche Darstellung der Fallunterscheidung bei einer Abbildung lässt
sich direkt in das in der Informatik übliche Struktogramm für die Fallunterscheidung
übertragen:
Programm 4.4
Struktogramm:
Minimum von zwei
Elementen
min{x, y} =
x≤y
x ≤ y?
result := x
© Karlheinz Hug, Hochschule Reutlingen
y<x
result := y
9.8.04
4.5 Ordnungsrelationen
4 - 55
Ist die Bedingung im mittleren Dreieck erfüllt, so wird der linke, sonst der rechte
Zweig ausgeführt. Die unteren beiden rechtwinkligen Dreiecke enthalten die jeweiligen
Zusicherungen (in blau). Das Ergebnis wird der Variablen result zugewiesen.
Aus dem Struktogramm ergibt sich der äquivalente Pseudocode:
Programm 4.5
Minimum von zwei
Elementen
min{x, y} =
IF x ≤ y THEN
result := x
ELSE
result := y
END.
Ersetzt man die bedingte Anweisung durch einen bedingten Ausdruck, so kommt die
Darstellung der mathematischen Notation wieder sehr nahe:
Bedingter Ausdruck
min{x, y} = IF x ≤ y THEN x ELSE y END.
(3)
dreielementige Kette {x, y, z}
min{x, y, z} = min{min{x, y}, z}.
Der Ausdruck auf der rechten Seite wird von innen nach außen berechnet. Der Algorithmus lautet als Struktogramm:
min{x, y, z} =
Programm 4.6
Struktogramm:
Minimum von drei
Elementen
x ≤ y?
x≤y
x≤z
x ≤ z?
result := x
z<x y≤z
result := z
y<x
y ≤ z?
result := y
z<y
result := z
Das Berechnen des Minimums von drei Elementen einer Kette erfordert offenbar zwei
Vergleiche.
(4)
n-elementige Kette {x1,.., xn}
min{x1,.., xn} = min{min{x1,.., xn−1}, xn}.
Daraus leiten wir die Rekursionsformel ab:
Rekursionsformel
min{x}
min{x, y}
min{x1,.., xi}
= x.
= IF x ≤ y THEN x ELSE y END.
= min{min{x1,.., xi−1}, xi}
für i = 2,.., n.
Durch Einsetzen erhalten wir
min{x1,.., xn}
= min{min{x1,.., xn−1}, xn}
= min{min{min{x1,.., xn−2}, xn−1}, xn} = ...
= min{min{min{...{min{min{x1}, x2}, x3},.., xn−2}, xn−1}, xn}.
Der Ausdruck auf der rechten Seite wird wieder von innen nach außen berechnet. So
transformieren wir die Rekursionsformel in einen iterativen Algorithmus mit einer
Zählschleife, die im i-ten Schritt min{x1,.., xi−1} mit xi vergleicht:
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 56
Programm 4.7
Struktogramm:
Minimum einer Kette
4 Relationale Strukturen
min{x1,.., xn} =
result := x1
für i = 2,.., n:
ASSERT result = min{x1,.., xi−1}
result := min{result, xi}
ASSERT result = min{x1,.., xi}
Aufwandsabschätzung
Das Berechnen des Minimums von n Elementen einer Kette erfordert offenbar n − 1
Vergleiche.
Verbesserung
Nachdem wir überzeugt sind, dass der Algorithmus korrekt ist, untersuchen wir, ob wir
ihn verbessern können. In den zum Struktogramm Programm 4.7 äquivalenten Pseudocode setzen wir Programm 4.5 textuell ein:
Programm 4.8
Minimum einer Kette
min{x 1,.., xn} =
result := x1;
FOR i := 2 TO n DO
IF result <= xi THEN
result := result
ELSE
result := xi
END
END.
Tatsächlich ist ein Zweig der bedingten Anweisung überflüssig:
Programm 4.9
Minimum einer Kette,
verbesserte Variante
min{x 1,.., xn} =
result := x1;
FOR i := 2 TO n DO
IF xi < result THEN
result := xi
END
END.
Der Algorithmus arbeitet nur im Spezialfall endlicher Ketten korrekt. Deshalb stellen
wir eine zweite Aufgabe für den allgemeinen Fall endlicher halbgeordneter Mengen:
Aufgabe: Minima einer
halbgeordneten Menge
bestimmen
Finde einen effizienten Algorithmus, der zu einer endlichen halbgeordneten Menge
die Menge aller Minima (Maxima) berechnet.
Wir können die iterative Struktur des obigen Algorithmus übernehmen, müssen aber
Mengen statt Elemente berechnen. Bei zwei unvergleichbaren Elementen ist nicht entscheidbar, welches kein Minimum sein kann. Nur bei vergleichbaren Elementen kann
man das größere ausschließen. Der Algorithmus arbeitet daher mit mehr Vergleichen,
zwei geschachtelten Schleifen und zwei Mengen. Die eine Menge enthält Kandidaten
für Minima und wird immer kleiner, die andere enthält Minima und wird immer größer.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
Programm 4.10
Minima einer
halbgeordneten Menge
Aufwandsabschätzung
4 - 57
min(M) =
result := ∅;
L := M;
WHILE L ≠ ∅ DO
ASSERT result ⊂ min(M) ⊆ result ∪ L;
x := ein z ∈ L;
N := L \ {x};
WHILE N ≠ ∅ DO
y := ein z ∈ N;
IF x < y THEN
ASSERT y ∉ min(M);
L := L \ {y}
ELSIF y < x THEN
ASSERT x ∉ min(M);
L := L \ {x};
x := y;
N := L
END;
N := N \ {y}
END;
result := result ∪ {x};
L := L \ {x};
ASSERT result ⊆ min(M) ⊆ result ∪ L
END;
ASSERT L = ∅ ∧ result = min(M).
Wieviele Vergleiche benötigt dieser Algorithmus, wenn |M| = n ist? Im schlechtesten
Fall ist M eine Antikette. Die Anzahl der Vergleiche ist dann
2 ∗ (n − 1) + 2 ∗ (n − 2) + ... + 2 ∗ 1 = n ∗ (n − 1).
Im besten Fall ist M eine Kette und schon das erste gewählte x ∈ M minimal. Die
Anzahl der Vergleiche ist dann
n − 1.
Der Algorithmus setzt eine extensionale Beschreibung der Menge M voraus (→
Beschreibungen von Mengen S. 1-2). In der Praxis liegt oft nur eine intensionale
Beschreibung von M durch ein Prädikat vor. Ein Minimum von M zu finden ist dann
schwieriger, weil es nicht gesucht, sondern aus anderen Elementen konstruiert werden
muss.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 58
4.5.7
4 Relationale Strukturen
Schranken und Grenzen
Im Folgenden sei G, ≤ wieder eine halbgeordnete Menge. Hat eine Teilmenge M ⊆ G
kein kleinstes (größtes) oder nicht einmal ein minimales (maximales) Element, so kann
es doch in G vergleichbare kleinere (größere) Elemente geben.
Definition 4.75
Schranken
Grenzen
Infimum Supremum
Sei G, ≤ eine halbgeordnete Menge und M ⊆ G eine Teilmenge. Ein Element x ∈ G
heißt eine
untere Schranke (lower bound) von M
:⇔
⇔
∀y ∈ M : x ≤ y
M ⊆ x≤;
obere Schranke (upper bound) von M
:⇔
⇔
∀y ∈ M : y ≤ x
M ⊆ ≤x .
Die Mengen der unteren und oberen Schranken von M sind
unSch(M) := {x ∈ G | ∀y ∈ M : x ≤ y} = {x ∈ G | M ⊆ x≤},
obSch(M) := {x ∈ G | ∀y ∈ M : y ≤ x} = {x ∈ G | M ⊆ ≤x}.
Wir schreiben kurz
M heißt
unSch{...}
statt
unSch({...}),
und analog
nach unten beschränkt (bounded from below)
:⇔
unSch(M) ≠ ∅;
nach oben beschränkt (bounded from above)
:⇔
obSch(M) ≠ ∅;
beschränkt (bounded)
:⇔
obSch{...}.
M ist nach unten und oben beschränkt.
Ein Element x ∈ G heißt
Infimum (untere Grenze, greatest lower bound, glb) von M,
x = inf(M)
:⇔
x = grEl(unSch(M)),
d.h. x ist größte untere Schranke von M
unSch(M) ⊆ ≤x ∧ M ⊆ x≤;
⇔
Supremum (obere Grenze, least upper bound, lub) von M,
x = sup(M)
:⇔
x = klEl(obSch(M)),
d.h. x ist kleinste obere Schranke von M
M ⊆ ≤x ∧ obSch(M) ⊆ x≤.
⇔
Beispiele
Die Menge der unteren Schranken einer Menge kann
l
l
l
leer sein wie
genau ein Element enthalten wie
mehrere Elemente enthalten wie
'
unSch( ) = ∅,
unSch{{1}, {2}} = {∅},
unSch{{1, 2}} = {∅, {1}, {2}, {1, 2}}.
Entsprechendes gilt für die Menge der oberen Schranken. Eine Menge kann
l
l
kein Infimum haben wie
ein Infimum haben wie
3 | 2 < x2},
{x ∈ ! | 2 < x2}.
{x ∈
Entsprechendes gilt für das Supremum.
Mengensysteme M ⊆ P(G) zeichnen sich dadurch aus, dass sie stets ein Infimum und
ein Supremum haben; es gilt nach Satz 1.19 (3) S. 1-15:
∩M,
sup(M) = ∪M.
inf(M) =
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
Satz 4.76
Beziehungen zwischen
ausgezeichneten
Elementen
4 - 59
Für eine halbgeordnete Menge G, ≤, Teilmengen M, N ⊆ G und Elemente x, y, z ∈ G
gilt:
(1)
(2)
(3)
(4)
(5)
(6)
Die Halbordnung ist durch die Infima (Suprema) der zweielementigen Mengen
bestimmt:
x≤y
⇔
x = inf{x, y}
⇔
y = sup{x, y}.
Je größer eine Menge, desto weniger Schranken hat sie:
unSch(N) ⊆ unSch(M).
Antitonie
M⊆N
obSch(N) ⊆ obSch(M).
M⊆N
Ein kleinstes (größtes) Element von M ist auch Infimum (Supremum) von M:
x = inf(M).
x = klEl(M)
x = sup(M).
x = grEl(M)
Hat M eine zu M gehörende untere (obere) Schranke, so ist diese das kleinste
(größte) Element und das Infimum (Supremum) von M:
x = klEl(M) = inf(M).
x ∈ M ∩ unSch(M)
x = grEl(M) = sup(M).
x ∈ M ∩ obSch(M)
M ∩ unSch(M) = {klEl(M)} = {inf(M)}.
M ∩ unSch(M) ≠ ∅
M ∩ obSch(M) = {grEl(M)} = {sup(M)}.
M ∩ obSch(M) ≠ ∅
x ist untere (obere) Schranke von M genau dann, wenn x kleinstes (größtes)
Element von M ∪ {x} ist:
x ∈ unSch(M)
⇔
x = klEl(M ∪ {x}).
x ∈ obSch(M)
⇔
x = grEl(M ∪ {x}).
Hat M ein Infimum (Supremum) und ist y ∉ M, so hat M ∪ {y} genau dann ein
Infimum (Supremum), wenn {x, y} ein Infimum (Supremum) hat, und die
Infima (Suprema) sind dann gleich:
(z = inf(M ∪ {y}) ⇔ z = inf{x, y}).
(x = inf(M) ∧ y ∉ M)
(z = sup(M ∪ {y}) ⇔ z = sup{x, y}).
(x = sup(M) ∧ y ∉ M)
Beweis: (1) und (2) sind leicht zu zeigen.
(3) Ist x = klEl(M), so ist x ∈ M ∩ unSch(M). Für ein beliebiges z ∈ unSch(M) gilt
∀y ∈ M : z ≤ y, also z ≤ x. Also gilt x ∈ unSch(M) ∧ ∀z ∈ unSch(M) : z ≤ x. Also ist
x = grEl(unSch(M)) = inf(M).
(4) x ∈ M ∩ unSch(M) ⇔ x ∈ M ∧ ∀y ∈ M : x ≤ y ⇔ x = klEl(M).
(5) x ∈ unSch(M) ⇔ ∀y ∈ M : x ≤ y ⇔ ∀y ∈ M ∪ {x} : x ≤ y ⇔ x = klEl(M ∪ {x}).
(6) „“: z = inf(M ∪ {y}) z ∈ unSch(M ∪ {y}) z ∈ unSch(M) ⇔ z ≤ inf(M) = x.
z = inf(M ∪ {y}) z ∈ unSch(M ∪ {y}) z ≤ y.
w ∈ unSch{x, y} ⇔ w ≤ x ∧ w ≤ y ⇔ w ∈ unSch(M) ∧ w ≤ y ⇔ w ∈ unSch(M ∪ {y})
⇔ w ≤ inf(M ∪ {y}) = z.
Zusammen ergibt sich z = inf{x, y}.
„⇐“: z = inf{x, y}) z ∈ unSch{x, y} ⇔ (wie oben) z ∈ unSch(M ∪ {y}).
w ∈ unSch(M ∪ {y}) ⇔ (wie oben) w ∈ unSch{x, y} ⇔ w ≤ inf{x, y} = z.
Zusammen ergibt sich z = inf(M ∪ {y}).
p
Das folgende Diagramm stellt die Beziehungen zwischen den Begriffen kleinstes Element, minimales Element, untere Schranke und Infimum dar.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 60
4 Relationale Strukturen
Bild 4.22
Beziehungen zwischen
ausgezeichneten
Elementen
x = klEl(M)
x ∈ min(M)
x∈M
4.5.8
x = inf(M)
und
x ∈ unSch(M)
Ordnungsmorphismen und sortierte Familien
Die mit Definition 4.40 eingeführten relationalen Morphismen heißen, wenn R eine
Ordnungsrelation ist, Ordnungsmorphismen. Bei den Beispielen (1) S. 28 bis (7) S.
29 handelt es sich also um Ordnungsmorphismen. Es genügt, spezielle Eigenschaften
von Ordnungsmorphismen zu definieren.
Definition 4.77
Isotone und antitone
Morphismen
Isomorphie
Seien G, ≤G, H, ≤H halbgeordnete Mengen. Ein Ordnungshomomorphismus
f : G → H heißt
isoton (ordnungstreu, order-preserving) :⇔
∀x, y ∈ G : (x ≤G y f(x) ≤H f(y));
strikt isoton
:⇔
∀x, y ∈ G : (x <G y f(x) <H f(y));
antiton (order-reversing)
:⇔
∀x, y ∈ G : (x ≤G y f(x) ≥H f(y));
strikt antiton
:⇔
∀x, y ∈ G : (x <G y f(x) >H f(y)).
Ein antitoner Ordnungsisomorphismus heißt Antiisomorphismus.
G,
≤G und H, ≤H heißen
ordnungsisomorph, wenn es einen Ordnungsisomorphismus f : G, ≤G → H, ≤H;
antiisomorph, wenn es einen Antiisomorphismus f : G, ≤G → H, ≥H
gibt. G, ≤G und G, ≥G heißen selbstdual, wenn sie ordnungsisomorph sind.
Als Voraussetzung für die Implikation genügt jeweils x <G y. Isomorphismen sind stets
strikt.
Beispiele
Für die Beispiele auf S. 28f gilt:
(1): Isotoner Automorphismus.
(2): Isotoner Isomorphismus, d.h. P(G), ⊆ ≅ {P(M) | M ⊆ G}, ⊆.
(3), (6) und (7): Isotone Homomorphismen.
(4): Antitoner Homomorphismus.
(5): Antitoner Automorphismus, d.h. P(G), ⊆ und P(G), ⊇ sind selbstdual unter dem
Komplement.
Beispiel 4.4
Teilmengen und
charakteristische
Funktionen
Sei G eine Grundmenge. Auf lB = {0, 1} definieren wir die strikte Halbordnung
< := {(0, 1)}
und dazu wie üblich ≤ := < ∪ id . Auf dem kartesischen Produkt
lB
lB
G,
d.h. der Menge
≤G
der ≤ nach Defialler Abbildungen von G nach lB, ist dann das kartesische Produkt
nition 4.27 und Tabelle 4.1 eine Halbordnung. Nach dem Beispiel S. 1-28 ist die Abbildung
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
4 - 61
P(G) → lBG, M → χM,
|
die jeder Teilmenge M ⊆ G ihre charakteristische Funktion χM zuordnet, bijektiv.
Wegen
M⊆N
⇔
⇔
x ∈ N)
∀x ∈ G : (x ∈ M
∀x ∈ G : χM(x) ≤ χN(x)
⇔
χM ≤G χN
für M, N ⊆ G ist die Abbildung ein Ordnungsisomorphismus. Damit sind P(G), ⊆ und
G G
lB , ≤ ordnungsisomorph:
F
P(G), ⊆ ≅ lBG, ≤G.
Die Komposition von zwei (strikt) isotonen oder zwei (strikt) antitonen Homomorphismen ist (strikt) isoton. Die Komposition eines (strikt) isotonen mit einem (strikt) antitonen Homomorphismus ist (strikt) antiton. Auf einem System halbgeordneter Mengen
ist die Ordnungsisomorphie eine Äquivalenzrelation.
Sind Ordnungsdiagramme eigentlich eindeutig?
Satz 4.78
Ordnung und
Ordnungsdiagramm
Zwei endliche halbgeordnete Mengen werden genau dann durch dasselbe Ordnungsdiagramm dargestellt, wenn sie ordnungsisomorph sind.
Darüber hinaus sind alle ordnungstheoretischen Begriffe wie die Nachbarrelationen,
Ketten und Antiketten, kleinste und größte Elemente, Extrema, Schranken und Grenzen
ordnungsisomorphieinvariant, d.h. ein Ordnungsisomorphismus bildet Nachbarn auf
Nachbarn, Ketten auf Ketten, Antiketten auf Antiketten, Extrema auf Extrema usw. ab.
Ist der Ordnungsisomorphismus isoton, so entsprechen sich kleinste Elemente, minimale Elemente, untere Schranken usw. Ein antitoner Ordnungsisomorphismus bildet
ein kleinstes auf ein größtes Element ab, ein minimales auf ein maximales Element,
eine untere auf eine obere Schranke usw.
Satz 4.79
Ordnungsisomorphie
primitiver Vor- und
Nachbereiche
Jede halbgeordnete Menge G, ≤ ist ordnungsisomorph zum System
{≤x
| x ∈ G}, ⊆
ihrer primitiven Vorbereiche und antiisomorph zum System
{x≤
| x ∈ G}, ⊆
ihrer primitiven Nachbereiche.
Beweis. Die Abbildung f : G → {≤x | x ∈ G}, x → ≤x ist offenbar surjektiv und wegen
|
Satz 4.66 (6) injektiv, also bijektiv. Nach Satz 4.66 (4) sind f und f−1 isoton. Analog ist
die Abbildung g : G → {x≤ | x ∈ G}, x → x≤ nach Satz 4.66 (4) und (6) ein Antiisomorphismus.
|
F
Ordnungsisomorphismen sind in der Informatik praktisch bedeutsam bei Datenstrukturen aus Datenelementen, zu denen es eine Vollordnung gibt. Die Elemente der Datenstruktur können dann sortiert oder nicht sortiert sein. Die Datenelemente sind Exemplare eines Datentyps, für den eine Vollordnung definiert ist. Der Datentyp wird
abstrakt beschrieben durch eine vollgeordnete Menge G, ≤G. Die Anordnung der Elemente in der Datenstruktur (z.B. einer Reihung oder Liste) wird abstrakt beschrieben
durch eine Indizierung mit einer geeigneten vollgeordneten Indexmenge I, ≤I.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 62
Definition 4.80
Sortierte Familie
4 Relationale Strukturen
Seien G, ≤G eine vollgeordnete Menge und I, ≤I eine vollgeordnete Indexmenge.
Eine Familie (xi)i∈I von Elementen aus G heißt
(aufsteigend) sortiert (sorted) :⇔
die Indizierung I → G, i → xi ist ein isotoner
Homomorphismus, d.h.
∀j, k ∈ I : (j ≤I k xj ≤G xk);
:⇔
die Indizierung I → G, i → xi ist ein antitoner
Homomorphismus, d.h.
∀j, k ∈ I : (j ≤I k xk ≤G xj).
absteigend sortiert
|
|
Auf (xi)i∈I definieren wir die Relation
:⇔
(j, xj) Ivt ( x ) (k, xk)
i
j <I k ∧ x k ≤G x j
und nennen ihre Elemente invertierte Paare von (xi)i∈I.
Die Familie (xi)i∈I ist genau dann sortiert, wenn sie keine invertierten Paare hat, d.h.
Ivt ( x ) = ∅.
i
In der Praxis sind sortierte Familien endlich. Diesen Fall endlicher sortierter Folgen
behandeln wir in 4.7.1, nachdem wir in 4.6 die natürlichen Ordinal- und Kardinalzahlen mit Wohlordnungen versehen haben.
4.5.9
Wohlordnungen
Vollgeordnete Mengen lassen sich durch kleinste (größte) und minimale (maximale)
Elemente charakterisieren.
Satz 4.81
Vollordnung, kleinste
und minimale
Elemente
Für eine halbgeordnete Menge G, ≤ sind die folgenden Aussagen äquivalent:
(1)
(2)
(3)
(4)
G ist vollgeordnet.
Jede endliche Teilmenge von G hat höchstens ein minimales (maximales) Element.
Jede nicht leere endliche Teilmenge von G hat ein kleinstes (größtes) Element.
Jede nicht leere, höchstens zweielementige Teilmenge von G hat ein kleinstes
(größtes) Element.
Beweis. (1) (2): Mit G ist jedes M ⊆ G nach Korollar 4.29 (1) vollgeordnet und hat
nach Satz 4.73 (2) höchstens ein minimales Element.
(2) (3): Sei M ⊆ G nicht leer und endlich. Nach Voraussetzung hat M höchstens ein,
nach Satz 4.73 (3) mindestens ein, also genau ein minimales Element, das nach Satz
4.73 (5) auch kleinstes Element ist.
(3) (4) ist klar.
(4) (1): Sind x, y ∈ G beliebig, so existiert z = klEl{x, y}. Für z gilt (z = x oder z = y)
und z ≤ x und z ≤ y. Daraus folgt x ≤ y oder y ≤ x. Also ist G vollgeordnet.
F
In einer vollgeordneten Menge muss nicht jede Teilmenge ein kleinstes (größtes) Element haben:
l
l
', 3, !, {1/n | n ∈ } ⊆ 3 haben kein kleinstes Element.
, ', 3, ! haben kein größtes Element.
lN
lN
Jedoch hat jede nicht leere Teilmenge von lN ein kleinstes Element. Dies ist also eine
besondere Eigenschaft: lN ist wohlgeordnet.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.5 Ordnungsrelationen
Definition 4.82
Wohlordnung
4 - 63
Eine halbgeordnete Menge G, ≤ heißt wohlgeordnet (well ordered) und ≤ heißt
Wohlordnung, wenn jede nicht leere Teilmenge von G ein kleinstes Element hat.
Nach Satz 4.81 ist jede Wohlordnung auch eine Vollordnung. Die Umkehrung gilt
nicht, denn , , sind voll-, aber nicht wohlgeordnet.
'3!
Satz 4.83
Nachfolgerfunktion
einer Wohlordnung
Für eine wohlgeordnete Menge G, ≤ gilt:
(1)
∀x ∈ G ∃1x´ ∈ G : (x < x´ ∧ ¬∃y ∈ G : (x < y ∧ y < x´)), d.h.
∀x ∈ G ∃1x´ ∈ G : x → x´, d.h.
∀x ∈ G ∃1x´ ∈ G : (x < x´ ∧ ]x, x´[ = ∅), d.h.
das x´ zu x ist ein eindeutig bestimmter Nachfolger, die Nachbarrelation von
Definition 4.64 ist eine Abbildung
G → G, x → x´,
die Nachfolgerfunktion zu ≤ heißt.
Die Nachfolgerfunktion ist injektiv.
|
(2)
Beweis. (1) Zu beliebigem x ∈ G sei M := {y ∈ G | x < y}. Da G wohlgeordnet ist, gibt
es zu M genau ein x´ ∈ G mit x´ = klEl(M). Wegen x´ ∈ M ist x < x´. Ist y ∈ G mit x < y,
so ist y ∈ M, also x´ ≤ y, also x → x´.
(2) Sei x1 → x´ ∧ x2 → x´. Da G wohlgeordnet ist, hat {x1, x2} ein kleinstes Element,
p
etwa x1 = klEl{x1, x2}. Also ist x1 ≤ x2. Aus x2 < x´ und x1 → x´ folgt x1 = x2.
|
|
Übrigens kann der Begriff der Wohlordnung nicht in der Prädikatenlogik erster Stufe
definiert werden. Außerdem führt er zu einem tief liegenden Satz der axiomatischen
Mengenlehre über die Äquivalenz recht unterschiedlicher Aussagen.
Theorem 4.84
Wohlordnungssatz
Zermelosches
Auswahlaxiom
Zornsches1 Lemma
Kettenaxiom
Die folgenden Aussagen sind äquivalent:
(1)
(2)
Wohlordnungssatz
Jede Menge lässt sich wohlordnen, d.h.
∃R ⊆ M2 : R ist Wohlordnung.
M ist Menge
zermelosches Auswahlaxiom
Aus jeder nicht leeren Menge eines Mengensystems lässt sich ein Element auswählen, d.h. ist M ein Mengensystem mit ∅ ∉ M, so gibt es eine Auswahlfunktion
f:M→
(3)
(4)
1
∪
M∈
M
M , M → f(M),
|
sodass für alle M ∈ M gilt f(M) ∈ M.
zornsches Lemma
Eine halbgeordnete Menge, in der jede Kette nach oben beschränkt ist, hat
mindestens ein maximales Element, d.h.
G, ≤ halbgeordnet (∀M ∈ K (G) : obSch(M) ≠ ∅ max(G) ≠ ∅).
Kettenaxiom
In einer halbgeordneten Menge gibt es zu jeder Kette eine diese umfassende
maximale Kette, d.h.
G, ≤ halbgeordnet ∀M ∈ K (G) ∃N ∈ max( K (G)) : M ⊆ N.
Max Zorn (1906 - 1993), deutscher Mathematiker, emigrierte 1933 vom Naziregime verfolgt in die USA.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 64
4 Relationale Strukturen
Keine der vier Aussagen lässt sich aus „einfachen“ Axiomen der Mengenlehre ableiten,
d.h. sie sind unabhängig von „einfachen“ Axiomen (die wir naiv benutzt haben). Meist
nimmt man das Auswahlaxiom in ein mengentheoretisches Axiomensystem auf. Allerdings lehnt die intuitionistische Denkschule das Auswahlaxiom und alle Folgerungen
daraus ab, weil es nicht konstruktiv ist: Es behauptet die Existenz einer Auswahlfunktion, ohne zu erklären, wie diese zu konstruieren ist. Entsprechend behaupten der
Wohlordnungssatz, das zornsche Lemma und das Kettenaxiom die Existenz einer
Wohlordnung, eines Maximums bzw. einer maximalen Kette, ohne zu erklären, wie
diese zu konstruieren sind. Tatsächlich hat bisher niemand eine Wohlordnung auf
angegeben.
!
Obwohl sich die Informatik mit konstruktiven Verfahren zur Berechnung von Größen
in endlich vielen Schritten, d.h. mit Algorithmen befasst, bietet der auf dem Auswahlaxiom basierende Teil der Mathematik Sätze, die auch in der Informatik von Interesse
sein können.
4.6
Ordnung der natürlichen Zahlen
4.6.1
Ordnung der Ordinalzahlen
Die in Definition 4.57 eingeführten natürlichen Ordinalzahlen sind per Konstruktion
geordnet. Jede Ordinalzahl außer 0 ist die Menge aller vorher konstruierten Ordinalzahlen:
n+ = {0,.., n}.
Eine Ordinalzahl m ist kleiner als eine Ordinalzahl n, wenn m vor n konstruiert ist, d.h.
wenn m in n vorkommt.
Definition 4.85
Ordnung der
Ordinalzahlen
Die Kleinerrelation < ⊆ lN02 ist für m, n ∈ lN0 durch
m<n
:⇔
m∈n
definiert, und dazu die Kleinergleichrelation ≤, die Größerrelation > und die Größergleichrelation ≥ wie üblich.
Die Ordnung auf lN0 basiert also auf der Elementrelation.
Satz 4.86
Wohlordnung der
Ordinalzahlen
lN0,
≤, < ist wohlgeordnet.
Beweis. < ist irreflexiv, da kein n ∈ lN0 vor sich selbst konstruiert ist. < ist transitiv,
denn wenn l ∈ lN0 vor m ∈ lN0 und m vor n ∈ lN0 konstruiert ist, ist auch l vor n konstruiert. < ist semikonnex, da von m, n ∈ lN0 entweder m vor n oder n vor m konstruiert
p
ist. < ist eine Wohlordnung, weil kein n ∈ lN0 vor 0 konstruiert ist.
Für m, n ∈ lN0 gilt:
m≤n
⇔
m ⊆ n;
m<n
⇔
m+ ∈ {0,.., n}.
Eine rekursive Charakterisierung lautet:
Nachfolger
m<n
⇔
m+ = n ∨ m+ < n.
Da lN0 wohlgeordnet ist, gibt es nach Satz 4.83 eine injektive Nachfolgerfunktion. Sie
ist durch n → n+ gegeben. Weil jede natürliche Ordinalzahl einen Nachfolger besitzt,
hat .+ den Definitionsbereich lN0. Für das Bild gilt
|
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.6 Ordnung der natürlichen Zahlen
4 - 65
.+[lN0] = lN,
d.h. jede natürliche Ordinalzahl außer 0 ist Nachfolger einer natürlichen Ordinalzahl.
Da keine zwei natürlichen Ordinalzahlen denselben Nachfolger haben, ist .+ injektiv.
Mit lN als Wertebereich ist .+ auch surjektiv. Somit ist die Nachfolgerfunktion
.+ : lN0 → lN, n → n+
|
Vorgänger
bijektiv und besitzt eine Inverse, die wir Vorgängerfunktion (predecessor) nennen:
.− : lN → lN0, n → n− = (n+)−1 := m genau dann, wenn m+ = n.
|
Die Nachfolgerfunktion .+ bietet einen weiteren Zugang zu <. Als Relation entspricht .+
der oberen Nachbarrelation → von Definition 4.64. Sie ist also azyklisch und intransitiv. Bilden wir die Produkte (.+)k für k ∈ lN und vereinigen sie, so erhalten wir die
Kleinerrelation:
<=
∪
k ∈ lN
( .+ ) k .
Anders formuliert gilt für m, n ∈ lN0:
m<n
4.6.2
∃k ∈ lN : (((m+)+)...+) = n (Nachfolgerfunktion k-mal angewendet)
∃k ∈ lN : m+k = n.
⇔
⇔
Ordnung der Kardinalzahlen
Wie ordnen wir die Kardinalzahlen? Die Kardinalzahlen lassen sich wohlordnen ohne
die Ordinalzahlen zu nutzen. Allerdings basiert dieser Ansatz auf dem Wohlordnungssatz oder dem Auswahlaxiom.
Definition 4.87
Mächtigerrelation
Eine Menge N heißt mächtiger als eine Menge M,
M ≤∼ N,
wenn es eine Injektion f : M → N gibt.
Das bedeutet mit der Inklusion, der Gleichmächtigkeit und Korollar 4.24 formuliert:
M ≤∼ N ⇔
⇔
Satz 4.88
Mächtigerrelation als
Präordnung
∃L ⊆ N : M ∼ L
es gibt eine Surjektion g : N → M.
Die Mächtigerrelation ist eine Präordnung auf jedem Mengensystem M:
≤∼ ⊆ M2.
Beweis. Reflexivität: M ≤∼ M, da idM injektiv ist.
p
Transitivität: folgt aus Satz 4.20 (5).
Nach Satz 4.51 induziert ≤∼ durch
M ≈≤∼ N
:⇔
M ≤∼ N ∧ N ≤∼ M
für M, N ∈ M eine Äquivalenzrelation ≈≤∼ auf M und durch
[M]≈ ≤≤∼ [N]≈
:⇔
M ≤∼ N
für M, N ∈ M, also durch das Bild von ≤∼ unter der kanonischen Abbildung zu ≈≤∼,
eine Halbordnung ≤≤∼ auf M / ≈≤∼. Statt einer Halbordnung auf M / ≈≤∼ wünschen wir
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 66
4 Relationale Strukturen
eine Wohlordnung auf M / ∼. Der aus der Pionierzeit der Mengenlehre berühmte bernsteinsche1 Äquivalenzsatz bringt uns dem Ziel näher.
Satz 4.89
Bernsteinscher
Äquivalenzsatz
Zwei Mengen M, N sind genau dann gleichmächtig, wenn jede mächtiger als die
andere ist:
M∼N
M ≤∼ N ∧ N ≤∼ M.
⇔
Beweise sind nicht trivial und basieren z.B. auf einem Fixpunktsatz von Knaster oder
Tarski oder dem unendlichen Heiratssatz.
F
Das bedeutet, dass die Gleichmächtigkeit ∼ mit der durch die Mächtigerrelation ≤ induzierten Äquivalenzrelation ≈≤ übereinstimmt:
∼ = ≈≤∼.
Damit gilt:
M / ≈≤∼ = M / ∼.
Theorem 4.90
Wohlordnung der
Kardinalzahlen
Ist M, ∼ ein mit der Gleichmächtigkeit ∼ versehenes Mengensystem, so ist auf der
Menge der Kardinalzahlen M / ∼ durch
|M| ≤ |N| ⇔
⇔
∃L ⊆ N : M ∼ L
es gibt eine Injektion f : M → N
für M, N ∈ M eine Wohlordnung ≤ definiert, die |∅| als kleinstes Element besitzt.
Beweis. Die Halbordnungseigenschaft wurde oben gezeigt, die Wohlordnungseigenschaft zeigt man mit dem Wohlordnungssatz.
F
Mit Definition 4.61 gilt nun für eine Menge M:
Korollar 4.91
(1)
M ist endlich
⇔
|M| < ℵ0.
(2)
M ist abzählbar
⇔
|M| ≤ ℵ0.
(3)
M ist überabzählbar
⇔
|M| > ℵ0.
(4)
M ist unendlich
⇔
|M| ≥ ℵ0.
1
Felix Bernstein (1878 - 1956), deutscher Mathematiker, emigrierte 1932 wegen rassistischer
Verfolgung durch das Naziregime in die USA.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.6 Ordnung der natürlichen Zahlen
Satz 4.92
Ordnungsregeln für
Kardinalzahlen
4 - 67
Sind M, N Mengen und M ein Mengensystem, so gilt:
|M| ≤ |N|.
|M| < |N|.
(1)
(2)
M⊆N
(M ⊂ N ∧ |N| < ℵ0)
(3)
Die Potenzmenge einer Menge ist echt mächtiger als die Menge:
|M| < |P(M)|.
Die Vereinigung abzählbar vieler abzählbarer Mengen ist abzählbar:
(4)
(|M| ≤ ℵ0 ∧ ∀M ∈ M : |M| ≤ ℵ0)
(5)
∪
M∈
M
M ≤ ℵ0.
Das kartesische Produkt endlich vieler abzählbarer Mengen ist abzählbar:
(|M| < ℵ0 ∧ ∀M ∈ M : |M| ≤ ℵ0)
(6)
∏M ∈ M M
≤ ℵ0.
Das kartesische Produkt unendlich vieler mindestens zweielementiger Mengen
ist überabzählbar:
(|M| ≥ ℵ0 ∧ ∀M ∈ M : |M| > 1)
∏M ∈ M M
> ℵ0.
Beweis. (1) und (2) sind klar.
(3) Wegen der Injektion x → {x} ist |M| ≤ |P(M)|. Annahme: |M| = |P(M)|. Dann gibt es
eine Bijektion f : M → P(M). Da f surjektiv ist, gibt es zu N := {x ∈ M | x ∉ f(x)} ⊆ M
ein y ∈ M mit f(y) = N. Dann gilt: y ∈ N ⇔ y ∉ N. Widerspruch!
|
(4) Wir benutzen das cantorsche Diagonalverfahren. Seien M = {M 1, M2,...} und
Mi = {xi1, xi2,...} für i = 1, 2,... Wir schreiben die Elemente zweidimensional hin. Den
Elementen eines Mi entspricht eine Zeile:
x11
x21
x31
...
x12 x13 ...
x22 x23 ...
x32 x33 ...
... ... ...
Nun besuchen wir die Elemente nach diesem Schema und nummerieren sie dabei um:
x11
x12
x13
x14
x21
x22
x23
x24
x31
x32
x33
x34
x41
x42
x43
x44
Offenbar erreichen wir damit jedes Element.
(5) Die Distributivität der Vereinigung beim kartesischen Produkt (→ Satz 1.23 (4) S.
1-18) gilt auch allgemeiner für die Vereinigung beliebig vieler Mengen. Seien
M = {M1, M2,...} und M i = {xi1, xi2,...} für i = 1, 2,... Dann gilt:
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 68
4 Relationale Strukturen
M1 × M 2 =
∪
{ x 1k }
k ∈ lN
× M2 =
∪
k ∈ lN
{ x 1k } × M 2 =
∪
k ∈ lN
{(x1k, x2l) | l ∈ lN}.
Nach (4) ist M1 × M2 als Vereinigung abzählbar vieler abzählbarer Mengen abzählbar.
Den Rest zeigt man mit vollständiger Induktion: Ist M2 × ... × Mn abzählbar, so ist auch
M1 × ... × Mn = M1 × (M2 × ... × Mn) abzählbar.
(6) Es genügt, M als abzählbar und alle M ∈ M als zweielementig vorauszusetzen.
Seien M = {M1, M2,...} und M i = {0, 1} für i = 1, 2,... Dann ist
∏M ∈ M M = {0, 1}
lN
die Menge aller charakteristischen Funktionen χ : lN → {0, 1}. Da sie gleichmächtig zu
P(lN) ist (→ Beispiel S. 1-28), gilt mit (3):
∏M ∈ M M
= |P(lN)| > |lN| = ℵ0.
F
Beachte, dass M ⊂ N und |M| = |N| ≥ ℵ0 möglich ist.
4.7
Anwendungen von Ordnungen
4.7.1
Sortierte Folgen
Sehr wichtig sind in der informatischen Praxis effiziente Sortieralgorithmen. Ein Sortieralgorithmus überführt eine Datenstruktur aus vergleichbaren Elementen von jedem
nicht sortierten Zustand in einen sortierten Zustand. Praktisch sortieren lassen sich nur
endlich viele Elemente, sodass wir Definition 4.80 für diesen Zweck auf endliche
Indexmengen, also auf endliche Folgen von Elementen einschränken können. In diesem Fall lässt sich die Sortierteigenschaft wegen der Transitivität der Ordnung der
Datenelemente durch eine Bedingung charakterisieren, die bei n Elementen mit n − 1
statt n ∗ (n − 1) Vergleichen auskommt.
Korollar 4.93
Sortierte Folge
Für eine vollgeordnete Menge G, ≤G und eine endliche Folge (x1,.., xn), n ∈ lN, in G
gilt:
(x1,.., xn) ist aufsteigend sortiert
⇔
∀i = 2,.., n : xi−1 ≤G xi.
(x1,.., xn) ist absteigend sortiert
⇔
∀i = 2,.., n : xi ≤G xi−1.
Ähnlich wie beim Minimum einer Kette (→ S. 55) leiten wir daraus eine Rekursionsformel ab:
Rekursionsformel
sortiert{x}.
sortiert{x, y}
= x ≤G y.
sortiert{x1,.., xi}
= sortiert{x1,.., xi−1} ∧ xi−1 ≤G xi
für i = 2,.., n.
Daraus konstruieren wir ähnlich wie beim Minimum (→ Programm 4.7) einen iterativen Algorithmus mit einer Zählschleife:
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.7 Anwendungen von Ordnungen
Programm 4.11
Struktogramm:
Sortiertsein einer Folge
4 - 69
sortiert{x1,.., xn} =
result := TRUE
für i = 2,.., n:
ASSERT result = sortiert{x1,.., xi−1}
result := result ∧ xi−1 ≤G xi
ASSERT result = sortiert{x1,.., xi}
Eine Analyse des Algorithmus ergibt, dass die Variable result in der Schleife höchstens
einmal vom Zustand TRUE in den Zustand FALSE wechseln kann. Die Sortiertaufgabe
unterscheidet sich von der Minimumaufgabe darin, dass die Iteration zum Feststellen
des Sortiertseins abbrechen kann, sobald das erste invertierte Elementpaar gefunden ist,
während die Iteration zum Berechnen des Minimums alle Elemente berücksichtigen
muss. Tatsächlich ist die Sortiertaufgabe eine Suchaufgabe: Die Menge ist solange zu
durchsuchen, bis ein Element mit einer gegebenen Eigenschaft gefunden ist oder alle
Elemente untersucht sind. Für Algorithmen zu solchen Aufgaben eignen sich Bedingungsschleifen besser als Zählschleifen. Hier entspricht der Übergang von der Zählzur Bedingungsschleife dem Übergang von der langen zur kurzen Auswertung boolescher Ausdrücke (→ S. 2-30).
Programm 4.12
Sortiertsein einer Folge
sortiert{x1,.., xn} =
result := TRUE;
i := 2;
WHILE result ∧ i <= n DO
result := xi-1 <= x i;
i := i + 1
END;
ASSERT ¬result ∨ i > n.
Verschiedene Sichten auf das Ergebnis sind:
result i > n
i ≤ n ¬result
Ist die Folge sortiert, so wurden alle Elemente untersucht.
Wurden nicht alle Elemente untersucht, so ist die Folge nicht
sortiert.
Mit kurzer Auswertung boolescher Ausdrücke lässt sich der Algorithmus weiter verbessern:
Programm 4.13
Sortiertsein einer Folge
verbesserte Version
sortiert{x1,.., xn} =
i := 2;
WHILE i <= n ∧ xi-1 <= xi DO
i := i + 1
END;
ASSERT i > n ∨ xi-1 > x i;
result := i > n.
Die Sichten auf das Ergebnis sind:
result ⇔ i > n
¬result ⇔ i ≤ n
9.8.04
Es ist i = n + 1. Entweder ist n = 1 oder die vorhergehende
Iteration lieferte i = n ∧ xn−1 ≤ xn, d.h. die ganze Folge inklusive letztem Paar ist sortiert.
Es wurden nicht alle Elemente untersucht. Es ist xi−1 > xi,
wegen diesem invertierten Paar ist die Folge nicht sortiert.
© Karlheinz Hug, Hochschule Reutlingen
4 - 70
4.7.2
4 Relationale Strukturen
Ordnungen auf Produktmengen
Im Folgenden seien I eine Indexmenge und Gi, ≤i für i ∈ I halbgeordnete Mengen.
Auf dem kartesischen Produkt
G :=
∏i ∈ I G i
der Mengen ist das kartesische Produkt
Komponentenweise
Ordnung
≤ :=
∏i ∈ I ≤i
der Relationen nach Definition 4.27 und Tabelle 4.1 definiert, das nach Aufgabe 4.22
(6) auch eine Halbordnung ist, sodass wir das kartesische Produkt
G,
≤ = ∏i ∈ I G i , ∏i ∈ I ≤i
der Strukturen mit der komponentenweisen Ordnung erhalten. Beachte, dass i.A. die
zugeordnete strikte Ordnung vom Produkt der zugeordneten strikten Ordnungen verschieden ist,
< = ≤ \ idG ≠
∏i ∈ I <i
=
∏i ∈ I (≤i \ idG ).
i
≤ ist i.A. selbst dann keine Vollordnung, wenn alle ≤i Vollordnungen sind.
G lässt sich auch anders, nämlich lexikografisch ordnen, wenn I wohlgeordnet ist.
Beschränken wir uns auf die endliche Indexmenge I = {1,.., n}, so ist durch
Lexikografische
Ordnung
:⇔
(x1,.., xn) <lex (y1,.., yn)
∃k ∈ I : (∀i ∈ {1,.., k − 1} : xi = yi ∧ xk <k yk)
für (x1,.., xn), (y1,.., yn) ∈ G = G1 × ... × Gn eine strikte Halbordnung <lex definiert; sie
heißt die lexikografische Ordnung zu den <i, i ∈ I. Wie üblich setzen wir
≤lex := <lex ∪ idG.
Sind alle <i, i ∈ I, strikte Vollordnungen, so ist auch <lex eine strikte Vollordnung.
Beispiele
Für I = {1, 2} und G1 = G2 = lN ist die komponentenweise Ordnung definiert durch
(x1, x2) ≤ (y1, y2)
:⇔
x 1 ≤ y 1 ∧ x 2 ≤ y 2,
es gilt also
(1, 2) ≤ (3, 4), aber (1, 4) und (2, 3) sind unvergleichbar,
während die lexikografische Ordnung definiert ist durch
(x1, x2) ≤lex (y1, y2)
:⇔
x1 < y1 ∨ (x1 = y1 ∧ x2 ≤ y2),
sodass gilt:
(1, 2) ≤lex (3, 4) und (1, 4) ≤lex (2, 3).
In einer vollgeordneten Menge G ist eine endliche Folge (x1,.., xn) genau dann sortiert,
wenn bzgl. der komponentenweisen Ordnung gilt:
(x1,.., xn−1) ≤ (x2,.., xn).
4.8
Hüllen von Relationen
Anwendungen geben oft Relationen vor, denen wünschenswerte Eigenschaften wie
Reflexivität, Symmetrie, Transitivität fehlen. Beispielsweise liegt eine azyklische Relation vor, wo eine Halbordnung gewünscht ist. In gewissen Fällen lässt sich die gege-
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.8 Hüllen von Relationen
4 - 71
bene „unvollständige“ Relation zu einer Relation mit geforderten Eigenschaften „vervollständigen“. Dabei soll die gegebene Relation nur soweit notwendig erweitert
werden. Wir haben z.B. in 4.6.1 die Nachfolgerfunktion der natürlichen Ordinalzahlen
zur Kleinerrelation vergröbert. Gesucht ist also die kleinste Relation mit einer geforderten Eigenschaft, die eine gegebene Relation umfasst. Dies entspricht dem in der Mathematik breit angewandten Prinzip der Hüllenbildung oder Abschließung (closure).
Im Folgenden identifizieren wir eine Eigenschaft von Teilmengen einer Grundmenge G
mit einem einstelligen Prädikat M(.) auf P(G) und einem Mengensystem M ⊆ P(G),
d.h. für M ⊆ G bedeuten
M(M)
M∈M
„M hat die Eigenschaft M(.)“
und
„M gehört zum Mengensystem M“
dasselbe. Zu einer Teilmenge N ⊆ G betrachten wir das Teilsystem der N umfassenden
Mengen aus M,
N⊆
∩ M = {M ∈ M | N ⊆ M} ⊆ M,
und ihr Infimum
gM(N) := inf{M ∈ M | N ⊆ M} =
∩{M ∈ M | N ⊆ M},
das stets existiert. Nach den Sätzen 1.19 (3) S. 1-15 und 4.76 (4) gilt:
Gehört gM(N) zu M, so ist es das kleinste Element von N⊆ ∩ M, d.h.
gM(N) ∈ M
gM(N) = klEl{M ∈ M | N ⊆ M}.
Nach Satz 4.76 (3) gilt:
Hat N⊆ ∩ M ein kleinstes Element, so ist es gleich gM(N).
Für N ∈ M gilt:
gM(N) =
∩{M ∈ M | N ⊆ M} = N = klEl{M ∈ M | N ⊆ M}.
Damit gilt:
gM[M] = M ⊆ {gM(N) | N ⊆ G} = gM[P(G)].
Definition 4.94
M-Hülle
Sind G eine Grundmenge, M ⊆ P(G) ein Mengensystem, und existiert zu N ⊆ G die
kleinste Obermenge aus M,
hM(N) := klEl{M ∈ M | N ⊆ M},
so heißt sie die M-Hülle von N.
Für das System der M-Hüllen gilt
M h := {hM(N) | N ⊆ G} = hM[P(G)] = hM[M] = M.
M
Weiter gilt:
N ∈ M ⇔ hM(N) = N.
Nicht zu jedem Mengensystem M und jeder Teilmenge N ⊆ G gibt es eine M-Hülle.
Interessant sind Systeme M, die zu jedem N ⊆ G eine M-Hülle liefern.
Definition 4.95
Durchschnittsstabilität
Ist G eine Grundmenge, so heißt ein Mengensystem M ⊆ P(G) durchschnittsstabil
(durchschnittsabgeschlossen), wenn jeder Durchschnitt von Mengen aus M in M
liegt, d.h.
∀N ⊆ M :
9.8.04
∩N ∈ M .
© Karlheinz Hug, Hochschule Reutlingen
4 - 72
4 Relationale Strukturen
Ein durchschnittsstabiles Mengensystem M enthält die Grundmenge G, weil ∅ ⊆ M
und nach Satz 1.19 (1) S. 1-15
Korollar 4.96
Durchschnittsstabilität
und M-Hülle
∩∅ = G ist.
Sind G eine Grundmenge und M ⊆ P(G) ein durchschnittsstabiles Mengensystem, so
existiert zu jedem N ⊆ G die M-Hülle von N.
Einen weiteren Zugang zu unserem Problem liefern Hüllenoperatoren.
Definition 4.97
Hüllenoperator
Ist G eine Grundmenge, so heißt eine Abbildung h : P(G) → P(G) ein Hüllenoperator auf G, wenn für alle M, N ⊆ G gilt:
(1)
(2)
(3)
M ⊆ h(M),
h(M) ⊆ h(N),
M⊆N
h(h(M)) = h(M).
Extensivität
Monotonie
Idempotenz
Ist eine Abbildung h : P(G) → P(G) extensiv und monoton, so gilt h(M) ⊆ h(h(M)) für
M ⊆ G. Für den Nachweis der Idempotenz genügt dann, h(h(M)) ⊆ h(M) zu zeigen. (3)
lautet kurz: h2 = h.
Beispiele
(1)
Ist f : M → N eine Abbildung, so ist durch
hM(L) := f−1[f[L]]
für L ⊆ M ein Hüllenoperator hM auf M definiert. Die durch
hN(O) := f[f−1[O]]
für O ⊆ N definierte Abbildung hN auf N ist zwar monoton und idempotent, aber
nicht extensiv, also kein Hüllenoperator.
(2)
Ist M eine Menge und R ⊆ M2 eine Präordnung, so sind die Abbildungen
N → NR und N → RN,
|
|
die jedem N ⊆ M den Nachbereich bzw. Vorbereich von N zu R zuordnen, Hüllenoperatoren auf M.
Den Zusammenhang zwischen M-Hüllen und Hüllenoperatoren klärt der folgende Satz.
Satz 4.98
M-Hülle und
Hüllenoperator
Sind G eine Grundmenge, M ⊆ P(G) ein Mengensystem, und existiert zu jedem
N ⊆ G die M-Hülle hM(N), so ist die Abbildung
hM : P(G) → P(G), N → hM(N) = klEl{M ∈ M | N ⊆ M}
|
ein Hüllenoperator auf G mit
hM[P(G)] = hM[M] = M.
Korollar 4.99
Durchschnittsstabilität
und Hüllenoperator
Sind G eine Grundmenge und M ⊆ P(G) ein durchschnittsstabiles Mengensystem, so
ist die Abbildung
hM : P(G) → P(G), N → hM(N) :=
|
∩{M ∈ M | N ⊆ M}
ein Hüllenoperator auf G mit
hM[P(G)] = hM[M] = M.
Hüllenoperatoren und durchschnittsstabile Mengensysteme entsprechen einander.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.8 Hüllen von Relationen
Satz 4.100
Hüllenoperator und
Durchschnittsstabilität
4 - 73
Ist h ein Hüllenoperator auf einer Grundmenge G, so ist das System
Mh := {h(N) | N ⊆ G} = h[P(G)]
seiner Bildmengen durchschnittsstabil. Der Hüllenoperator h M zu Mh nach Korollar
h
4.99 stimmt mit h überein.
Korollar 4.101
M-Hülle und
Durchschnittsstabilität
Sind G eine Grundmenge, M ⊆ P(G) ein Mengensystem, und existiert zu jedem
N ⊆ G die M-Hülle hM(N), so ist das System
M h := {hM(N) | N ⊆ G} = hM[P(G)] = hM[M] = M
M
der M-Hüllen durchschnittsstabil.
Im Folgenden betrachten wir Hüllen von zweistelligen homogenen Relationen auf G;
die Grundmenge ist dann G2.
Definition 4.102
Hüllen von Relationen
Die Systeme
R := {R ⊆ G2 | R ist reflexiv},
S := {S ⊆ G 2 | S ist symmetrisch} und
T := {T ⊆ G2 | T ist transitiv}
der reflexiven, symmetrischen und transitiven Relationen auf G und ihre Durchschnitte sind nach Satz 4.34 (1) durchschnittsstabil. Nach Korollar 4.99 gibt es die
Hüllenoperatoren hR, hS, hT, hR∩S, hR∩ T und hR∩S∩T auf G2 und nach Korollar
4.96 zu jeder Relation Q ⊆ G2 die folgenden Hüllen von Q:
reflexive Hülle:
symmetrische Hülle:
transitive Hülle:
reflexive und symmetrische Hülle:
reflexive und transitive Hülle:
∩{R ∈ R | Q ⊆ R},
hS(Q) = ∩{S ∈ S | Q ⊆ S},
hT(Q) = ∩{T ∈ T | Q ⊆ T},
hR∩S(Q) = ∩{R ∈ R ∩ S | Q ⊆ R},
hR∩T(Q) = ∩{R ∈ R ∩ T | Q ⊆ R},
hR(Q) =
reflexive, symmetrische und transitive Hülle:
hR∩S∩T(Q) =
∩{R ∈ R ∩ S ∩ T | Q ⊆ R}.
Die reflexive und symmetrische Hülle von Q ist die kleinste oder feinste Verträglichkeitsrelation, die Q umfasst.
Die reflexive und transitive Hülle von Q ist die kleinste oder feinste Präordnung, die Q
umfasst.
Die reflexive, symmetrische und transitive Hülle von Q ist die kleinste oder feinste
Äquivalenzrelation, die Q umfasst.
Die Darstellung von Relationenhüllen als Durchschnitte von Obermengen eignet sich
zu ihrer Definition, aber kaum zu ihrer praktischen Bestimmung. Dem Ziel der algorithmischen Berechnung der Relationenhüllen nähert sich der folgende Satz.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 74
Satz 4.103
Hüllen von Relationen
4 Relationale Strukturen
Für jede Relation Q ⊆ G 2 gilt:
(1)
hR(Q) = Q ∪ idG.
(2)
hS(Q) = Q ∪ Q−1.
(3)
hT(Q) = Q+ =
(4)
∪
n
Q .
n ∈ lN
Mit Q sind auch hS(Q) und hT(Q) reflexiv. Also gilt:
h S [R ] = R ∩ S ,
hT[R] = R ∩ T.
(5)
Mit Q sind auch hR(Q), hT(Q) und hR∩T(Q) symmetrisch. Also gilt:
hR[S] = R ∩ S,
hT[S] = S ∩ T,
hR∩T[S] = R ∩ S ∩ T.
(6)
Mit Q ist auch hR(Q) transitiv. Also gilt:
hR[T] = R ∩ T.
(7)
hR∩S(Q) = (hS ° hR)(Q) = (hR ° hS)(Q) = Q ∪ idG ∪ Q−1.
(8)
hR∩T(Q) = (hT ° hR)(Q) = (hR ° hT)(Q) = Q∗ =
(9)
n
Q .
n ∈ lN0
hR∩S∩ T(Q) = (hT ° hS ° hR)(Q) = (hT ° hR ° hS)(Q) = (hR ° hT ° hS)(Q) =
∪
–1 n
n ∈ lN0
Beispiele
∪
(Q ∪ Q ) .
Bei einer halbgeordneten Menge G, ≤, < ist die reflexive Hülle der Kleinerrelation die
Kleinergleichrelation:
hR(<) = ≤.
Bei den Verwandtschaftsrelationen sind die symmetrischen Hüllen der Schwester- und
der Bruderrelation die Geschwisterrelation:
hS(„ist Schwester von“) = hS(„ist Bruder von“) = „ist Geschwister von“.
Für die transitive und die reflexive und transitive Hülle von Q ⊆ G2 gilt für x, y ∈ G:
x Q+ y
⇔
∃n ∈ lN ∃x1,.., xn ∈ G : x = x1 Q x2 Q ... Q xn−1 Q xn Q y.
x Q∗ y
⇔
x Q+ y ∨ x = y.
Ist die Grundmenge G endlich, etwa |G| = n, so findet man höchstens Ketten der Länge
n − 1. Für die transitive Hülle von Q ⊆ G2 gilt dann mit (3):
Q+ = hT(Q) = Q ∪ Q2 ∪ Q3 ∪ ... ∪ Qn.
Daraus lässt sich ein Algorithmus entwickeln, der Q+ in n Schritten ermittelt.
Satz 4.104
Hüllen azyklischer
Relationen
Ist die Relation Q ⊆ G2 azyklisch, so ist Q+ eine strikte Halbordnung und Q∗ eine
Halbordnung.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.9 Übungen
Korollar 4.105
4 - 75
Für eine halbgeordnete Menge áG, ≤, <ñ mit der oberen und unteren Nachbarrelation
→ und ← gilt:
(1)
→+ = <.
(2)
→∗ = ≤.
(3)
←+ = >.
(4)
←∗ = ≥.
4.9
Übungen
Aufgabe 4.1
Veranschaulichen Sie Satz 4.3 S. 4 und beweisen Sie ihn!
Aufgabe 4.2
Veranschaulichen Sie Satz 4.5 S. 6 und beweisen Sie ihn!
Aufgabe 4.3
Bijektion
Zeigen Sie, dass für jedes k ∈ lN die Abbildung
lN
0
→ lN0 × {0,.., k − 1}, n → (n div k, n mod k)
|
bijektiv ist! Bemerkung: n = k ∗ (n div k) + n mod k.
Aufgabe 4.4
Veranschaulichen Sie Satz 4.11 S. 11 und beweisen Sie ihn!
Aufgabe 4.5
Veranschaulichen Sie Satz 4.12 S. 11 und beweisen Sie ihn!
Aufgabe 4.6
Veranschaulichen Sie Satz 4.13 S. 12 und beweisen Sie ihn!
Aufgabe 4.7
Veranschaulichen Sie Satz 4.14 S. 12 und beweisen Sie ihn!
Aufgabe 4.8
Veranschaulichen Sie Korollar 4.29 S. 23!
Aufgabe 4.9
Veranschaulichen Sie Satz 4.31 S. 24 und beweisen Sie ihn!
Aufgabe 4.10
Veranschaulichen Sie Satz 4.33 S. 25 und beweisen Sie ihn!
Aufgabe 4.11
Veranschaulichen Sie Satz 4.34 S. 26 und beweisen Sie ihn!
Aufgabe 4.12
Alternative Beweise
Beweisen Sie Satz 4.30 S. 23 mit den Charakterisierungen der Eigenschaften durch
Aufgabe 4.13
Reflexive,
symmetrische und
transitive Relationen
[16]
Für eine Relation gibt es acht Möglichkeiten, die drei Eigenschaften Reflexivität, Symmetrie und Transitivität zu haben oder nicht zu haben. Geben Sie für jede dieser Kombinationen ein konkretes Beispiel an! Untersuchen Sie Ihre Beispiele danach, welche
anderen Eigenschaften von Definition 4.28 sie haben!
Aufgabe 4.14
Falsches Argument
[28]
Was ist falsch am folgenden Argument, das angeblich zeigt, dass jede symmetrische
und transitive Relation R ⊆ M2 auch reflexiv ist?
Aufgabe 4.15
Verlorene
Eigenschaften
9.8.04
(1)
(2)
Bereiche, Satz 4.31 S. 24;
Operationen, Satz 4.33 S. 25!
Sei x ∈ M. Da R symmetrisch ist, gehören (x, y) und (y, x) beide zu R. Da R transitiv ist,
gehört auch (x, x) zu R. Also ist R reflexiv.
Sie betrachten Relationen R, S ⊆ M2. Geben Sie konkrete Beispiele für R und S mit:
(1)
(2)
(3)
(4)
(5)
R und S sind semikonnex, aber R ∩ S ist nicht semikonnex;
R und S sind asymmetrisch, aber R ∪ S ist nicht asymmetrisch;
R und S sind antisymmetrisch, aber R ∪ S ist nicht antisymmetrisch;
R und S sind transitiv, aber R ∪ S ist nicht transitiv;
R und S sind intransitiv, aber R ∪ S ist nicht intransitiv!
© Karlheinz Hug, Hochschule Reutlingen
4 - 76
Aufgabe 4.16
Eigenschaften von
Relationen
Aufgabe 4.17
Eigenschaften der
Komposition von
Relationen
4 Relationale Strukturen
Beweisen Sie die folgenden Aussagen!
Für eine Relation R ⊆ M2 gilt:
(1)
R ∩ R−1 und R ∪ R−1 sind symmetrisch.
(2)
Ist R reflexiv, so sind auch R ∩ R−1 und R ∪ R−1 reflexiv.
Untersuchen Sie zu Relationen R, S ⊆ M2, welche Eigenschaften die Komposition S ° R
unter folgenden Voraussetzungen hat!
(1)
(2)
(3)
R hat eine der Eigenschaften von Definition 4.28.
S hat eine der Eigenschaften von Definition 4.28.
R und S haben gemeinsam eine der Eigenschaften von Definition 4.28.
Hat im Fall (3) S ° R nicht dieselbe Eigenschaft wie R und S, so geben Sie ein konkretes
Gegenbeispiel an!
Aufgabe 4.18
Veranschaulichen Sie Satz 4.36 S. 27 und beweisen Sie ihn!
Aufgabe 4.19
Bilder von
zugeordneten
Relationen und
Bereichen
Beweisen Sie die folgenden Aussagen zu Definition 4.37 S. 27!
Für Mengen M, N, eine Relation R ⊆ M2 und eine Abbildung f : M → N gilt:
(1)
Das Bild der Identität ist die Identität auf der Bildmenge:
id Mf = id f[M].
(2)
Das Bild der Allrelation ist die Allrelation auf der Bildmenge:
(3)
M2f = f[M]2.
Das Bild einer Einschränkung ist die Einschränkung des Bilds:
(4)
(5)
(6)
(7)
∀L ⊆ M : (R ∩ L2)f = Rf ∩ f[L]2.
Für Q ⊆ R gilt:
Qf ⊆ Rf.
Monotonie
Das Bild des Komplements umfasst das Komplement des Bilds in der Bildmenge:
Rf ⊇ f[M]2 \ Rf.
Das Bild der Umkehrung ist die Umkehrung des Bilds:
R−1f = (Rf)−1.
Bilder von Nach- und Vorbereichen sind Nach- bzw. Vorbereiche von Bildern:
∀L ⊆ M : (f[LR] = f[L]Rf ∧ f[RL] = Rff[L]).
Aufgabe 4.20
Veranschaulichen Sie Satz 4.38 S. 27 und beweisen Sie ihn!
Aufgabe 4.21
Veranschaulichen Sie Satz 4.39 S. 28 und beweisen Sie ihn!
Aufgabe 4.22
Eigenschaften des
kartesischen Produkts
von Relationen
Beweisen Sie die folgenden Aussagen zu 4.2.2 S. 27!
Seien I eine Indexmenge und für i ∈ I seien Mi Mengen und Ri ⊆ M i2 Relationen. Für
k ∈ I sei πk :
∏i ∈ I M i → Mk, (xi) → πk((xi)) := xk die k-te Projektion des kartesischen
|
Produkts ΠMi auf Mk (→ S. 1-27). Dann gilt:
(1)
Das kartesische Produkt der Relationen Ri ist der Durchschnitt ihrer Urbilder
πiRi unter den Projektionen πi:
∏i ∈ I R i = ∩ π i R i .
i∈I
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.9 Übungen
4 - 77
(2)
Das kartesische Produkt der Identitäten ist die Identität des kartesischen Produkts:
∏i ∈ I idM
(3)
i
= id
i∈I
Das kartesische Produkt der Umkehrrelationen ist die Umkehrrelation des kartesischen Produkts:
∏i ∈ I ( R–i 1 )
(4)
∏
.
Mi
=
æ
è
∏i ∈ I R iöø
–1
.
Sind alle Ri, i ∈ I, reflexiv, symmetrisch, transitiv, Verträglichkeits- oder Äquivalenzrelationen oder Präordnungen, so hat
(5)
dieselbe Eigenschaft.
Ist wenigstens ein Ri, i ∈ I, irreflexiv, asymmetrisch, antisymmetrisch, intransitiv
oder azyklisch, so hat
(6)
∏i ∈ I R i
∏i ∈ I R i
dieselbe Eigenschaft.
Sind alle Ri, i ∈ I, Halbordnungen oder strikte Halbordnungen, so hat
∏i ∈ I R i
dieselbe Eigenschaft.
Aufgabe 4.23
Gleicher Durchschnitt
[16]
Zu einer Grundmenge G und einer Teilmenge L ⊆ G ist durch
MRN
:⇔
L∩M=L∩N
für M, N ⊆ G eine Relation R auf P(G) definiert.
Zeigen Sie, dass R eine Äquivalenzrelation auf P(G) ist!
Bestimmen Sie für den Fall G = {1, 2, 3, 4, 5} und L = {1, 3, 5} alle Äquivalenzklassen! Beginnen Sie mit den Klassen [∅] und [G]! Wieviele Äquivalenzklassen gibt es?
Aufgabe 4.24
Veranschaulichen Sie Satz 4.46 S. 34 und beweisen Sie ihn!
Aufgabe 4.25
Durchschnitt von
Äquivalenzrelationen
[28]
Sind R, S ⊆ M2 Äquivalenzrelationen, so ist nach Satz 4.34 (1) S. 26 auch R ∩ S eine
Äquivalenzrelation, und es gilt:
∀x ∈ M ∃y, z ∈ M : [x]R∩S = [y]R ∩ [z]S.
Veranschaulichen Sie diese Aussage und beweisen Sie sie!
Aufgabe 4.26
Gröbere Äquivalenzrelation [29]
Sind R, S Äquivalenzrelationen mit R ⊆ S ⊆ M2 und gibt es ein u ∈ [x]R und ein
v ∈ [y]R mit u S v, so gilt für alle w ∈ [x]R und z ∈ [y]R die Beziehung w S z.
Veranschaulichen Sie diese Aussage und beweisen Sie sie!
Aufgabe 4.27
Urbild einer
Äquivalenzrelation
Ist f : M → N eine Abbildung und S ⊆ N2 eine Äquivalenzrelation, so ist fS nach Satz
4.39 (1) S. 28 eine Äquivalenzrelation auf M. Zeigen Sie, dass für die Quotientenmenge gilt:
M / fS = {[x]fS | x ∈ M} = {f−1[[f(x)]S] | x ∈ M}.
Aufgabe 4.28
Überdeckung [28]
Zu einer Überdeckung U ⊆ P(M) einer Menge M (→ Definition 1.20 S. 1-16) sei durch
xRy
:⇔
∃U ∈ U : x, y ∈ U
für x, y ∈ M eine Relation R ⊆ M 2 definiert. Welche Eigenschaften hat R? Ist R eine
Äquivalenzrelation?
Aufgabe 4.29
Veranschaulichen Sie Satz 4.55 S. 40 und beweisen Sie ihn!
Aufgabe 4.30
Veranschaulichen Sie Satz 4.63 S. 47 und beweisen Sie ihn!
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
4 - 78
4 Relationale Strukturen
Aufgabe 4.31
Kleinste und größte
Elemente
Beweisen Sie, dass für eine halbgeordnete Menge áG, ≤ñ gilt:
Aufgabe 4.32
Ordnungsdiagramme
Stellen Sie die verschiedenen Ordnungsdiagramme halbgeordneter Mengen áG, ≤ñ mit
|G| = 1, 2, 3, 4 und 5 Elementen zusammen!
Aufgabe 4.33
Ordnungsdiagramme
zu Zerlegungen
Stellen Sie zu Mengen mit 1, 2, 3, 4 und 5 Elementen alle echten Zerlegungen in Ordnungsdiagrammen dar! Die Ordnung der Zerlegung ist die Feinerrelation von Beispiel
4.3 S. 51.
Aufgabe 4.34
Endliche Ketten
Beweisen Sie die folgende Aussage!
Aufgabe 4.35
Satz von Dilworth
Welche Beziehung besteht zwischen Ketten und Antiketten? Der Satz von Dilworth
gibt zwei Antworten:
∀x ∈ G : klEl(x≤) = x = grEl(≤x).
Jede endliche Kette der Länge n − 1 ist ordnungsisomorph zur Kette {1,.., n}.
(1)
(2)
In einer endlichen halbgeordneten Menge áG, ≤ñ ist die minimale Mächtigkeit
einer Zerlegung von G in Ketten gleich der maximalen Mächtigkeit einer Antikette.
In einer endlichen halbgeordneten Menge áG, ≤ñ ist die minimale Mächtigkeit
einer Zerlegung von G in Antiketten gleich der maximalen Mächtigkeit einer
Kette.
Veranschaulichen Sie diese Aussagen mit einigen Ordnungsdiagrammen!
Aufgabe 4.36
Lexikografische
Ordnung
Beweisen Sie, dass die in 4.7.2 S. 70 eingeführte lexikografische Ordnung auf dem
Produkt endlich vieler
(1)
(2)
halbgeordneter Mengen tatsächlich eine Halbordnung,
vollgeordneter Mengen tatsächlich eine Vollordnung
ist!
Aufgabe 4.37
Hüllenoperatoren
Veranschaulichen Sie die Beispiele auf S. 72 und beweisen Sie, dass es tatsächlich Hüllenoperatoren sind!
Aufgabe 4.38
Veranschaulichen Sie Satz 4.98 S. 72 und beweisen Sie ihn!
Aufgabe 4.39
Veranschaulichen Sie Satz 4.100 S. 73 und beweisen Sie ihn!
Aufgabe 4.40
Veranschaulichen Sie Satz 4.103 S. 74 und beweisen Sie ihn!
Aufgabe 4.41
Hüllen einer Relation
[16]
Auf der Grundmenge G = {a, b, c, d, e} sei die Relation Q = {(a, c), (b, d), (c, a), (c, e),
(d, c), (e, a), (e, b), (e, d)} gegeben.
Aufgabe 4.42
Eigenschaften von
Hüllen
Aufgabe 4.43
Eigenschaften von
Hüllenoperatoren
Aufgabe 4.44
Bestimmen Sie die Hüllen hR(Q), hS(Q), hT(Q), hR∩S(Q), hR∩T(Q) und hR∩S∩T(Q)!
(1)
Geben Sie eine transitive Relation T ⊆ G2 an, deren symmetrische Hülle nicht
transitiv ist!
(2)
Zeigen Sie, dass für Q ⊆ G2 gilt:
(hS ° hT)(Q) ⊆ (hT ° hS)(Q).
Sind die Hüllenoperatoren hR, hS und hT für die reflexive, symmetrische bzw. transitive Hülle von Relationen
(1)
durchschnittstreu, d.h. gilt
(2)
vereinigungstreu, d.h. gilt
∩Qi) = ∩h(Qi);
h(∪Qi) = ∪h(Q i)?
h(
Veranschaulichen Sie Satz 4.104 S. 74 und beweisen Sie ihn!
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
4.9 Übungen
Aufgabe 4.45
Gröbste
antisymmetrische
Relation [29]
4 - 79
Nach Korollar 4.29 (2) S. 23 gehört die Antisymmetrie zu den Eigenschaften von Relationen, die bei Verfeinerungen erhalten bleiben, aber bei Vergröberungen verloren
gehen können. Beweisen Sie die folgenden Aussagen!
(1)
(2)
9.8.04
Zu jeder antisymmetrischen Relation R ⊆ G2 gibt es eine gröbste antisymmetrische Relation a(R), die R umfasst:
a(R) = grEl{A ⊆ G2 | R ⊆ A und A ist antisymmetrisch}.
Ist < eine strikte Halbordnung auf G, so ist ≤ = < ∪ idG die gröbste antisymmetrische Relation, die gröber als < ist:
a(<) = ≤.
© Karlheinz Hug, Hochschule Reutlingen
4 - 80
© Karlheinz Hug, Hochschule Reutlingen
4 Relationale Strukturen
9.8.04
5
Zahlen
Aufgabe 5
5.1
Natürliche Zahlen
Siehe Bauer, Skript TG1.
5.1.1
Peanosche Axiome
Vollständige Induktion
5.1.2
Arithmetische Operationen
Rechenregeln
5.1.3
Ordnungsrelationen
Rechenregeln
5.1.4
Rekursionstheoreme
5.1.5
Archimedische Eigenschaft
Wir nutzen die Chance für zwei Widerspruchsbeweise.
Satz 5.23
Keine maximale
natürliche Zahl
Die Menge lN0 der natürlichen Zahlen hat keine maximalen Elemente.
Beweis durch Widerspruch. Angenommen, lN0 hat ein maximales Element n. Dann gilt
n < n + 1 = n+ ∈ lN0. Also ist n kein maximales Element von lN0 - Widerspruch!
Korollar 5.24
Archimedisches Axiom
F
Zu jedem m ∈ lN0 und n ∈ lN gibt es ein k ∈ lN mit m < k ∗ n.
Beweis durch Widerspruch. Wäre m ≥ k ∗ n für alle k ∈ lN, so wäre auch m ≥ k für alle
k, d.h. m wäre größtes Element von lN0 im Widerspruch zu Satz 5.23.
F
Wegen der Eigenschaft in Korollar 5.24 ist lN0 archimedisch geordnet.
5.2
Ganze Zahlen
Siehe Bauer, Skript TG1.
Konstruktive Definition von
' als Quotientenmenge der Produktmenge
lN
2
0
Rechenregeln
Satz 5.25
Abzählbarkeit der
ganzen Zahlen
5.2.1
Die Menge
' der ganzen Zahlen ist abzählbar unendlich.
Beweis folgt aus ihrer Konstruktion und Satz 4.92 (5) und (1) S. 4-67.
F
Standardfunktionen
'
' '
Abbildungen mit
als Wertebereich heißen ganzzahlige Funktionen, insbesondere
solche der Form f : → , p → f(p). Die folgenden für p ∈ definierten ganzzahligen Funktionen sind allgemein gebräuchlich.
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
|
'
Kapitel 5 - Seite 1 von 34
5-2
5 Zahlen
Vorzeichen (signum, sign):
1
sgn(p) := 0
–1
falls
p>0
falls
p = 0.
falls
p<0
(Absolut-)Betrag:
p
|p| := sgn(p) * p = –p
falls
p≥0
falls
p<0
.
Üblich ist auch die Kurzschreibweise für p, q ∈
p = ±q
p ∈ {q, −q}
:⇔
⇔
':
p = q ∨ p = −q
Für den Betrag gelten die Rechenregeln für p, q ∈
':
|p| = 0 ⇔ p = 0.
|p ∗ q| = |p| ∗ |q|.
|p + q| ≤ |p| + |q|.
5.2.2
Satz 5.26
Division mit Rest
⇔
|p| = |q|.
Dreiecksungleichung
Division mit Rest
Zu jedem (p, m) ∈
(1)
(2)
'×
lN
gibt es genau ein (q, r) ∈
'×
lN
0
mit
p = q ∗ m + r,
0 ≤ r < m.
Wir nennen dann q den ganzzahligen Quotienten und r den Rest von p bei Division
durch den Modul m und schreiben
p div m := q,
p mod m := r.
Damit sind die ganzzahlige Division
div :
'×
lN
→
',
(p, m) → p div m
|
und die Modulooperation
mod :
'×
lN
→ lN0, (p, m) → p mod m
|
als Abbildungen definiert. Die Bedingungen (1) und (2) legen die Modulooperation mit
der in 5.2.4 einzuführenden Kongruenzrelation verträglich fest.
Vorrangregel
Wir geben div und mod die Priorität der Multiplikation, d.h. div und mod binden gleich
stark wie ∗ und stärker als + und −.
Rechenregeln
Für (p, m) ∈
(3)
(4)
(5)
(6)
'×
lN
gilt:
sgn(p div m) = sgn(p).
sgn(p mod m) = sgn(m) ≥ 0.
Für 0 ≤ p < m gilt:
p div m = 0,
p mod m = p.
Für alle n ∈ gilt:
(p + m ∗ n) div m = p div m + n,
(p + m ∗ n) mod m = p mod m.
© Karlheinz Hug, Hochschule Reutlingen
'
9.8.04
5.2 Ganze Zahlen
5-3
Was bedeutet die Regeln? Für p < 0 ≤ p + m < m gilt wegen (5) und (6):
0 = (p + m) div m = p div m + 1,
also
p div m = −1.
Demnach ist p div m die größte ganze Zahl, die kleinergleich dem reellen Quotienten
p / m ist. Wir runden also ab, unabhängig davon, ob p ≥ 0 oder p < 0 ist. In der Notation
von 5.4.5 ist
p div m = p / m.
Anschaulich gehen wir von p auf der Zahlengeraden nach links bis zur nächstkleineren
durch m teilbaren ganzen Zahl. Diese teilen wir durch m, um p div m zu erhalten.
p mod m entspricht der dabei zurückgelegten Strecke.
Programmiersprachen
L
Viele Programmiersprachen bieten Division mit Rest als Paar von Operationen zu
ganzzahligen Typen, z.B. Component Pascal als DIV und MOD, C-orientierte Sprachen
als / und %. Sie müssen die Division mit Rest geeignet auf × \ {0} fortsetzen.
' '
Exkurs. Leider gibt es weit verbreitete Programmiersprachen, die die Division mit Rest nicht
einmal auf × lN gemäß der mathematisch sinnvollen Minimalbedingungen (1) und (2) spezifizieren, sondern nur auf lN × lN (1) und (2) verlangen und sich auf
× lN mit (1) begnügen.
Übersetzer können dann von (2) abweichen, indem sie beim Berechnen von p div m nicht abrunden, sondern in Richtung 0 runden. Für p ≥ 0 ist das egal, aber nicht für p < 0. Damit verlieren
(3), (4) und (6) ihre Gültigkeit, was das Programmieren mit Division mit Rest, insbesondere bei
Kongruenzrechnungen, unnötig verkompliziert.
'
'
Warum gibt es solche Sprachen? Manche (frühere) Rechner implementieren die Division mit
Rest nicht mathematisch sinnvoll gemäß (1) und (2). Sprachentwerfer lassen die Division mit
Rest unterspezifiziert, damit sich Übersetzerbauer flexibel an Hardwarearithmetiken anpassen
können. Hardwarefehler können so Sprachimplementationen infizieren. Entwerfer von Nachfolgersprachen belassen diese kompatibel mit Vorgängersprachen. Durch solche Anpassungszwänge scheinen sich Altlasten fehlerhafter Division mit Rest so dauerhaft zu erhalten wie
Atommüll. Die Dumme am Ende der Kette ist die AnwendungsprogrammiererIn, die um
Schwachstellen von Sprachen herum programmieren muss.
Fortsetzung
' '
Wie ist die Division mit Rest geeignet auf
×
\ {0} fortzusetzen? Leider gibt es
keine Fortsetzung, die alle Bedingungen (1) bis (6) erfüllt. Welche Minimalbedingungen sollte jede sinnvolle Fortsetzung erfüllen? Sicher ist es nützlich, (1) zu verallgemeinern und die Gleichung
(7)
p = (p div m) ∗ m + p mod m
' '
für alle (p, m) ∈ × \ {0} zu fordern, um p ohne Fallunterscheidung aus dem ganzzahligen Quotienten und dem Rest zurückzuerhalten. Für das Vorzeichen des Quotienten fordern wir konsistent mit (3) für (p, m) ∈ × \ {0}
' '
(8)
sgn(p div m) = sgn(p) ∗ sgn(m).
(6) verallgemeinernd fordern wir für (p, m) ∈
(9)
' × ' \ {0} und n ∈ '
(p + m ∗ n) div m = p div m + n,
(p + m ∗ n) mod m = p mod m.
(7) bis (9) legen p div m und p mod m im Fall m < 0 noch nicht eindeutig fest; es sind
Minimalforderungen an sinnvolle Fortsetzungen der Division mit Rest. Ab hier bieten
sich zwei Alternativen.
Variante 1: Fortsetzung mit nichtnegativem Rest
Konsistent mit (2) fordern wir für (p, m) ∈
' × ' \ {0}:
(10) 0 ≤ p mod1 m < |m|.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5-4
Tabelle 5.1
Beispiel für
nichtnegativen Rest
5 Zahlen
p
m
p div1 m
p mod1 m
10
7
1
3
−10
7
−2
4
10
−7
−1
3
−10
−7
2
4
Aus (10) folgt die Verallgemeinerung einer Ungleichung in (4):
(11) sgn(p mod1 m) ≥ 0.
Die Gleichung sgn(p mod1 m) = sgn(m) in (4) gilt nicht für m < 0. Aus (7) und (10) folgen (8), (9) und
(12) p div1 (−m) = −(p div1 m),
(13) p mod1 (−m) = p mod1 m.
L
J
Der Vorteil von (10) kostet den Nachteil, dass i.A.
p div1 (−m) ≠ (−p) div 1 m.
Wegen (13) verträgt sich die Variante nichtnegativer Rest sehr gut mit der Kongruenzrechnung. Deshalb wird sie in der Mathematik bevorzugt.
Variante 2: Fortsetzung mit vorzeichenbehaftetem Rest
Konsistent mit (2) fordern wir für (p, m) ∈
(14) m > 0
m<0
Tabelle 5.2
Beispiel für vorzeichenbehafteten Rest
' × ' \ {0}:
0 ≤ p mod2 m < m,
m < p mod2 m ≤ 0.
p
m
p div2 m
p mod2 m
10
7
1
3
−10
7
−2
4
10
−7
−2
−4
−10
−7
1
−3
Aus (14) folgt die Verallgemeinerung der Gleichung in (4):
(15) sgn(p mod2 m) = sgn(m).
Die Ungleichung sgn(m) ≥ 0 in (4) gilt nicht für m < 0. Aus (7) und (14) folgen (8), (9)
und
(16) p div2 (−m) = (−p) div2 m,
(17) p mod2 (−m) = −((−p) mod2 m).
L
J
Beispiel
Der Vorteil von (16) kostet den Nachteil, dass i.A.
p mod2 (−m) ≠ p mod m.
Auch die Variante vorzeichenbehafteter Rest verträgt sich mit der Kongruenzrechnung.
Component Pascal spezifiziert DIV und MOD nach der Variante vorzeichenbehafteter
Rest.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.2 Ganze Zahlen
5.2.3
Definition 5.27
Teiler
Vielfaches
Teiltrelation
5-5
Teilbarkeit
Für p, q ∈
durch p,
p|q
|⊆
Satz 5.28
Rechenregeln zur
Teiltrelation
' heißt p ein Teiler von q, p teilt q, q ein Vielfaches von p, q teilbar
:⇔
∃r ∈
' : p ∗ r = q.
'2 heißt Teiltrelation.
Für die Teiltrelation gilt für alle p, q, r, s, t ∈
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
p | 0.
0|p
⇔
p = 0.
p | ±1
⇔
p = ±1.
±1 | p.
±p | p.
(p | q ∧ q | p)
⇔
(p | q ∧ q | r)
p|q
(p ∗ r | q ∗ r ∧ r ≠ 0)
p|q
⇔
p | −q
⇔
(p | q ∧ r | s)
(p | q ∧ p | r)
(p | q ∧ q ≠ 0)
':
p = ±q.
p | r.
Transitivität
p ∗ r | q ∗ r.
p | q.
−p | q
⇔
−p | −q.
p ∗ r | q ∗ s.
p | (q ∗ s + r ∗ t).
1 ≤ |p| ≤ |q|.
' einen
trivialen (unechten) Teiler von q ∈ ', wenn p = ±1 oder p = ±q;
echten Teiler von q ∈ ', wenn p | q und p kein trivialer Teiler von q ist.
Aus (13) ergibt sich für p, q ∈ ':
Wegen (4) und (5) nennen wir p ∈
p ist echter Teiler von q
⇔
(p | q ∧ 1 < |p| < |q|).
Aus (5), (6) und (7) folgt:
Satz 5.29
Ordnungseigenschaften
Für die Teiltrelation gilt:
'2 ist eine Präordnung auf '.
(1)
|⊆
(2)
| ∩ lN2 ist eine Halbordnung auf lN.
Weiter folgt aus Satz 5.28 (13):
Satz 5.30
Teilt und Kleinergleich
Die Teiltrelation auf lN verfeinert die Kleinergleichordnung auf lN:
| ∩ lN2 ⊆ ≤ ∩ lN2, d.h.
m ≤ n).
∀m, n ∈ lN : (m | n
Für die Kleinergleichordnung gilt bekanntlich
m≤n
⇔
∃k ∈ lN0 : m + k = n,
für die Teiltrelation gilt
m|n
9.8.04
⇔
∃k ∈
' : m ∗ k = n.
© Karlheinz Hug, Hochschule Reutlingen
5-6
5 Zahlen
Beide Relationen sind also formal gleich, aber ≤ mit +, | mit ∗ definiert. Wesentlicher
Unterschied ist, dass ≤ voll-, aber | nur halbgeordnet ist. Bezüglich | gibt es unvergleichbare Elemente, z.B. 2 und 3.
Für die wegen Satz 5.29 (1) nach Satz 4.51 S. 4-39 durch die Teiltrelation | induzierte
Äquivalenzrelation ≈| auf gilt mit Satz 5.28 (6):
'
p ≈| q
⇔
p = ±q
'. Die Äquivalenzklassen zu ≈| sind also die Paarmengen
{p, −p} mit p ∈ ',
für p, q ∈
nur die Äquivalenzklasse {0} ist einelementig. Die Quotientenmenge
morph zu lN.
' / ≈| ist iso-
' ist die Menge der Teiler von p der Vorbereich von p zur Teiltrelation:
|p = {q ∈ ' | q teilt p},
Für p ∈
die Menge der Vielfachen von p ist der Nachbereich von p zur Teiltrelation:
p|
= {q ∈
' | p teilt q}.
Wegen Satz 5.28 (10) gilt für p ∈
':
|p = |−p,
p|
= −p|.
Gemeinsame Teiler und Vielfache sind Elemente von Durchschnitten von Teiler- bzw.
Vielfachmengen. Für p, q, r ∈ heißt r ein
'
gemeinsamer Teiler von p und q, wenn r ∈ |p ∩ |q, d.h.
r | p ∧ r | q;
gemeinsames Vielfaches von p und q, wenn r ∈ p| ∩ q|, d.h.
p | r ∧ q | r.
Nun interessieren möglichst
l
l
„große“ gemeinsame Teiler in |p ∩ |q,
„kleine“ gemeinsame Vielfache in p| ∩ q|,
wobei sich „groß“ und „klein“ auf | beziehen. Tatsächlich hat |p ∩ |q bzgl. | zwei
„größte“ Elemente, p und q haben zwei „größte“ gemeinsame Teiler, die sich im Vorzeichen unterscheiden. Entsprechend hat p| ∩ q| bzgl. | zwei „kleinste“ Elemente, p und
q haben ein nichtnegatives und ein nichtpositives „kleinstes“ gemeinsames Vielfaches.
Jedoch sind die Begriffe „größtes“ und „kleinstes“ bzgl. | gar nicht definiert, da | nur
eine Präordnung auf ist. Eindeutigkeit des „größten“ und „kleinsten“ Elements erreichen wir, indem wir jeweils das nichtnegative Element wählen, also in |p ∩ |q ∩ lN0 das
größte und in p| ∩ q| ∩ lN 0 das kleinste Element.
'
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.2 Ganze Zahlen
Satz 5.31
Existenz und
Eindeutigkeit von ggT
und kgV
5-7
Seien p, q ∈
(1)
'.
Es gibt genau ein r ∈ lN0 mit |p ∩ |q = |r. Für r gilt:
r | p ∧ r | q,
∀t ∈ lN0 : ((t | p ∧ t | q)
(2)
Es gibt genau ein s ∈ lN0 mit p| ∩ q| = s|. Für s gilt:
p | s ∧ q | s,
∀t ∈ lN0 : ((p | t ∧ q | t)
Definition 5.32
Größter gemeinsamer
Teiler
Kleinstes
gemeinsames
Vielfaches
t | r).
Seien p, q ∈
s | t).
'.
Das nach Satz 5.31 (1) eindeutig bestimmte r ∈
Teiler (greatest common divisor) von p und q:
ggT(p, q) = r
lN
0
heißt der größte gemeinsame
r ∈ lN0 ∩ |p ∩ |q ∧ |p ∩ |q ⊆ |r, d.h.
:⇔
r ∈ lN0 ist gemeinsamer Teiler von p und q und jeder gemeinsame Teiler von p und q
teilt r.
Das nach Satz 5.31 (2) eindeutig bestimmte s ∈
Vielfache (least common multiple) von p und q:
kgV(p, q) = s
s ∈ lN0 ∩ p| ∩ q| ∧
:⇔
p|
lN
0
heißt das kleinste gemeinsame
∩ q| ⊆ r|, d.h.
s ∈ lN0 ist gemeinsames Vielfaches von p und q und jedes gemeinsame Vielfache von
p und q ist Vielfaches von s.
Beschränken wir uns auf die natürlichen Zahlen, so können wir „größtes“ und „kleinstes“ oder „maximales“ bzw. „minimales“ auch auf die Kleinergleichordnung beziehen,
d.h. für p, q ∈ lN gilt
ggT(p, q) = max{r ∈
kgV(p, q) = min{s ∈
Satz 5.33
Rechenregeln zum ggT
Für alle p, q, r ∈
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
' | r teilt p ∧ r teilt q},
' | p teilt s ∧ q teilt s}.
' gilt:
ggT(0, 0) = 0.
ggT(p, 0) = |p|.
ggT(p, 1) = 1.
ggT(p, p) = |p|.
ggT(p, q) = ggT(q, p).
ggT(p, q) = ggT(p − q, q).
ggT(p, q) = ggT(p mod q, q).
q≠0
ggT(p ∗ r, q ∗ r) = ggT(p, q) ∗ |r|.
Aus (2), (5) und (7) erhält man die Rekursionsformel
p
ggT(p, q) = ggT (q, p mod q)
falls q = 0
sonst
,
aus der man den euklidischen Algorithmus zur Berechnung des größten gemeinsamen
Teilers zweier ganzer Zahlen entwickelt. Die rekursive Variante lässt sich in eine iterative transformieren. Siehe dazu die Module I0Euclid* und MathArithmeticsI in [33].
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5-8
5.2.4
5 Zahlen
Kongruenzrechnung
Die Kongruenzrechnung ist grundlegend wichtig in der Zahlentheorie, der Algebra und
ihren Anwendungen. Auch in der Informatik erscheint sie an vielen Stellen, z.B.:
l
l
l
Satz 5.34
Kongruenz modulo n
Rechner rechnen mit ganzen Zahlen in Moduloarithmetik.
Kryptografische Verfahren basieren wesentlich auf der Kongruenzrechnung.
Periodische Vorgänge steuert man gut mit der Kongruenzrechnung.
Für jedes n ∈ lN0 ist durch
p ≡ q (mod n)
'
:⇔
n|p−q
'
p kongruent q modulo n
für p, q ∈ eine Äquivalenzrelation ≡ (mod n) auf definiert; sie heißt Kongruenz
modulo n. Ihre Äquivalenzklassen heißen Restklassen modulo n. Die Quotientenmenge bezeichnen wir mit
'n := {[p]≡n | p ∈ '}.
Oft schreibt man statt p ≡ q (mod n) kurz p ≡ q mod n oder p ≡n q oder p ≡ q
oder gar p = q.
Eine Restklasse modulo n enthält alle ganzen Zahlen, die beim Teilen durch n denselben Rest lassen. Der Zusammenhang zwischen der Kongruenz ≡ (mod n) und der
Modulooperation von Satz 5.26 ist für n ∈ lN:
p ≡ q (mod n)
⇔
p mod n = q mod n.
Ein handliches Repräsentantensystem für
{0, 1,.., n − 1}.
Die Operationen übertragen sich von
Addition
[p]≡n +n [q]≡n := [p + q]≡n,
Subtraktion
[p]≡n −n [q]≡n := [p − q]≡n,
Multiplikation
[p]≡n ∗n [q]≡n := [p ∗ q]≡n
'n = {[0]≡n, [1]≡n,.., [n − 1]≡n} ist
' auf 'n durch
'
für p, q ∈ . Es ist zu zeigen, dass die Operationen wohldefiniert sind, d.h. unabhängig
von der Wahl der Repräsentanten.
Rechnen modulo n bedeutet, „normal“ addieren, multiplizieren usw., aber jedes Ergebnis (auch Zwischenergebnis) durch n teilen und nur den Rest behalten (den ganzzahligen Quotienten wegwerfen).
5.2.5
Definition 5.35
Primzahl
Primzahlen
Eine natürliche Zahl p > 1 heißt prim oder eine Primzahl, wenn p nur triviale Teiler
hat. Die Menge aller Primzahlen ist
lP
:= {n ∈ lN | n ist prim}.
Wir nennen p ∈ lP einen Primteiler von q ∈
', wenn p | q.
Das folgende Lemma und der Satz von Euklid ist in Beispiel 3.4 S. 3-10 bewiesen.
Lemma 5.36
Existenz eines
Primteilers
Satz 5.37
Satz von Euklid
Jede natürliche Zahl n > 1 hat einen Primteiler.
Die Menge lP aller Primzahlen ist abzählbar unendlich.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.3 Rationale Zahlen
5.3
5-9
Rationale Zahlen
Siehe Bauer, Skript TG1.
Konstruktive Definition von
3 als Quotientenmenge der Produktmenge ' × ' \ {0}
Rechenregeln
Nützlich sind folgende Bezeichnungen für positive und negative rationale Zahlen:
Satz 5.38
Abzählbarkeit der
rationalen Zahlen
3+ := {q ∈ 3 | q > 0},
3− := {q ∈ 3 | q < 0},
3+0 := 3+ ∪ {0} = {q ∈ 3 | q ≥ 0},
3−0 := 3− ∪ {0} = {q ∈ 3 | q ≤ 0}.
Die Menge 3 der rationalen Zahlen ist abzählbar unendlich.
Beweis folgt aus ihrer Konstruktion und Satz 4.92 (5) und (1) S. 4-67.
p
Programmierung
Rationale Zahlen kann man in Programmiersprachen als Datentypen, in objektorientierten Sprachen als Klassen implementieren. Siehe dazu als Beispiel das Klassenmodul MathRationals mit der Klasse Rational in [33].
5.4
Reelle Zahlen
! der reellen Zahlen kann man prinzipiell auf zwei Arten einführen:
konstruktiv als Teilsystem von P(3), der Potenzmenge der rationalen Zahlen,
Die Menge
(1)
(2)
5.4.1
axiomatisch.
Konstruktion
Von verschiedenen konstruktiven Ansätzen skizzieren wir einen. Startpunkt ist die
Struktur der rationalen Zahlen,
3, 0, 1, +, ∗, ≤ .
Nach Beispiel (2) S. 4-72 ist für eine halbgeordnete Menge G, ≤ die Abbildung
P(G) → P(G), M → ≤M
|
ein Hüllenoperator. Wir betrachten das System der ≤-Vorbereiche oder ≤-Hüllen
{≤M | M ⊆
3},
dessen Elemente hier Anfänge heißen. Das System der Anfänge teilt sich in offene
Anfänge, die kein größtes Element haben, und nicht offene Anfänge:
3
{≤M | M ⊆ } =
{≤M | M ⊆ , grEl(≤M) existiert nicht} ∪ {≤M | M ⊆ , grEl(≤M) existiert} =
{≤M | M ⊆ , ≤M ist offen} ∪ {≤M | M ⊆ , ≤M ist nicht offen}.
3
3
3
3
Außerdem betrachten wir das System der primitiven <-Vorbereiche
{<q | q ∈
3},
wobei hier <q der durch q bestimmte Abschnitt heißt. Nun gilt:
Jeder Abschnitt <q in
3 ist ein offener Anfang in 3.
Die Umkehrung gilt nicht, da z.B.
3− ∪ {q ∈ 3+0 | q2 < 2}
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 10
5 Zahlen
3
3
!
ein offener Anfang, aber kein Abschnitt in ist. Ziel ist, so zu zu vervollständigen, dass jeder offene Anfang ein Abschnitt ist. Das erreichen wir mit der Definition
Ordnung
! := {x ⊆ 3 | x ist offener Anfang in 3}.
Die Elemente von ! heißen reelle Zahlen. Wir müssen nun
(1) die Menge ! algebraisch und relational strukturieren und
(2) zeigen, dass 3 isomorph zu einer Teilmenge von ! ist.
Dann können wir 3 mit dieser Teilmenge von ! identifizieren. Wir beginnen mit der
Ordnungsstruktur auf !:
x≤y
:⇔ x ⊆ y
für x, y ∈ !.
Damit gilt:
Zu jedem offenen Anfang M ⊆
Abschnitt in ist, M = <x.
!
! gibt es ein x ∈ !, sodass M der durch x bestimmte
Als Folgerung ergibt sich, dass jede nicht leere nach oben beschränkte Teilmenge von
ein Supremum besitzt. Nun ist zu zeigen, dass die Abbildung
!
3, ≤
!
→ , ≤, q → <q
|
ein injektiver, strikt isotoner Ordnungshomomorphismus ist. Reelle Zahlen, die nicht
Abschnitte rationaler Zahlen sind, nennen wir irrationale Zahlen. Bisher wurde keine
algebraische Eigenschaft von genutzt. Die algebraische Struktur erhält ausgehend
von den Definitionen
3
Addition
x + y := {p + q | p ∈ x, q ∈ y}
Multiplikation
x ∗ y :=
3− ∪ {p ∗ q | p ∈ x \ 3−, q ∈ y \ 3−}
!
!
für x, y ∈ ! mit x, y ≥ 0.
für x, y ∈ ,
Die Multiplikation ist auf negative Zahlen fortzusetzen, die Inversen sind zu definieren
und die Verträglichkeit dieser Struktur mit der von ist zu zeigen.
3
5.4.2
Axiome
Als Alternative geben wir ein Axiomensystem für die reellen Zahlen an. Die Axiome
erfassen die wichtigsten Rechenregeln. Führt man die reellen Zahlen konstruktiv ein,
so ergeben sich die Aussagen dieser Axiome als beweisbare Sätze - ähnlich, wie sich
die Aussagen der peanoschen Axiome aus den Eigenschaften der nach von Neumann
konstruierten natürlichen Zahlen ergeben.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.4 Reelle Zahlen
Axiom 5.39
Reelle Zahlen
5 - 11
!
Die reellen Zahlen bilden eine Struktur , 0, 1, +, ∗, < mit den Eigenschaften:
(1)
! sind verschiedene Elemente, 0 ≠ 1.
und
∗ : !2 → !, (x, y) → x ∗ y
+ : !2 → !, (x, y) → x + y
0, 1 ∈
|
|
sind zweistellige Operationen.
<⊆
!2 ist eine zweistellige Relation.
Körperaxiome
Addition
(2)
(3)
(4)
(5)
!
!
!
Multiplikation
(6)
(7)
(8)
(9)
(10)
!
∀x, y, z ∈ :
∀x, y ∈ :
∀x ∈ :
∀x ∈ ∃−x ∈
!:
!
∀x, y, z ∈ :
∀x, y ∈ :
∀x ∈ :
!
(x + y) + z = x + (y + z).
x + y = y + x.
x + 0 = x.
x + (−x) = 0.
Assoziativität
Kommutativität
Null
Gegenzahl
(x ∗ y) ∗ z = x ∗ (y ∗ z).
x ∗ y = y ∗ x.
x ∗ 1 = x.
Assoziativität
Kommutativität
Eins
!
∀x ∈ ! \ {0} ∃x−1 ∈ ! : x ∗ x−1 = 1.
x ∗ (y + z) = x ∗ y + x ∗ z.
∀x, y, z ∈ ! :
Kehrzahl
Distributivität
Ordnungsaxiome
(11) ∀x, y, z ∈
!:
(12) ∀x, y, z ∈
(13) ∀x, y, z ∈
(14) ∀x, y, z ∈
!:
!:
!:
((x < y ∨ x = y ∨ y < x)
∧ ¬(x < y ∧ x = y)
∧ ¬(x < y ∧ y < x)
∧ ¬(x = y ∧ y < x)).
Trichotomie
((x < y ∧ y < z) x < z).
Transitivität
(x < y x + z < y + z).
Verträglichkeit
((x < y ∧ 0 < z) x ∗ z < y ∗ z). Verträglichkeit
Vollständigkeitsaxiom
!
(15) Jede nicht leere nach oben beschränkte Teilmenge von hat ein Supremum:
∀M ⊆ : ((M ≠ ∅ ∧ obSch(M) ≠ ∅) ∃x ∈ : x = sup(M)).
!
!
Aus den Axiomen folgen weitere Rechenregeln, auf die wir nicht eingehen, weil wir sie
als von der Schulmathematik bekannt voraussetzen. Stattdessen greifen wir Kapitel 6
vor und betrachten anhand der Axiome Beziehungen von
zu abstrakten algebraischen Strukturen.
!
!
!
Axiom (1) dient der Vorbereitung. Axiom (2) bedeutet, dass , + eine Halbgruppe ist,
die mit Axiom (3) kommutativ ist. Mit (2), (3), (4) ist , 0, + ein kommutatives
Monoid, mit (2), (3), (4), (5) eine kommutative Gruppe.
!
Analog ist , ∗ mit Axiom (6) eine Halbgruppe, die mit Axiom (7) kommutativ ist.
Mit (6), (7), (8) ist , 1, ∗ ein kommutatives Monoid. Mit (6), (7), (8), (9) ist
\ {0}, 1, ∗ eine kommutative Gruppe.
!
!
!
Mit den Axiomen (2) bis (7) und (10) ist , 0, +, ∗ ein kommutativer Ring, der wegen
(8) eine Eins hat. Mit (2) bis (10) ist , 0, 1, +, ∗ ein Körper.
!
!
Wegen den Axiomen (11) und (12) ist < eine strikte Vollordnung auf . Mit Axiom
(13) ist , 0, +, < eine geordnete Gruppe. \ {0}, 1, ∗, < ist allerdings keine geordnete Gruppe, da in (14) die Verträglichkeit nicht für alle z gegeben ist.
!
9.8.04
!
© Karlheinz Hug, Hochschule Reutlingen
5 - 12
5 Zahlen
3
Auch die Struktur , 0, 1, +, ∗, < der rationalen Zahlen erfüllt die Axiome (1) bis
(14). Es gibt also möglicherweise viele verschiedene Modelle zu den Axiomen (1) bis
(14). Erst Axiom (15) bewirkt Eindeutigkeit. Alle Modelle, die die Axiome (1) bis (15)
erfüllen, sind im Wesentlichen gleich, nämlich isomorph.
Satz 5.40
Eindeutigkeit der
reellen Zahlen
5.4.3
Durch Axiom 5.39 sind die reellen Zahlen bis auf Isomorphie eindeutig bestimmt.
Unterstrukturen
Nützlich sind folgende Bezeichnungen für positive und negative reelle Zahlen:
!+ := {x ∈ ! | x > 0},
!− := {x ∈ ! | x < 0},
!+0 := !+ ∪ {0} = {x ∈ ! | x ≥ 0},
!−0 := !− ∪ {0} = {x ∈ ! | x ≤ 0}.
Gehen wir von Axiom 5.39 aus, so können wir die natürlichen Zahlen als Unterstruktur
der reellen Zahlen einführen, und zwar so:
Zählmenge
Eine Teilmenge M ⊆
0∈M
∧
! heißt Zählmenge, wenn gilt:
∀x ∈ M : x + 1 ∈ M.
Das System aller Zählmengen ist durchschnittsstabil (→ Aufgabe 5.29). Daher ist der
Durchschnitt aller Zählmengen auch eine Zählmenge. Wir nennen
lN
0
:=
∩{M ⊆ ! | M ist Zählmenge}
die Menge der natürlichen Zahlen. Mit Korollar 4.96 S. 4-72 ergibt sich, dass lN0 die
kleinste Zählmenge ist, d.h. es gilt
∀M ⊆
! : (M ist Zählmenge
lN
0
⊆ M).
Dies entspricht der Bedingung (3) der von neumannschen Definition 4.57 S. 4-42 der
natürlichen Zahlen und dem Induktionsaxiom des peanoschen Axiomensystems, auf
dem das Beweisprinzip der vollständigen Induktion beruht. Hier folgt das Induktionsprinzip also aus den Axiomen der reellen Zahlen. Aus Obigem ergibt sich direkt:
∀M ⊆ lN0 : (M ist Zählmenge M = lN0).
Ähnlich vorgehend erhält man die ganzen und die rationalen Zahlen als Unterstrukturen von .
!
5.4.4
Mächtigkeit
Welche Mächtigkeit hat die Menge der reellen Zahlen? Wir nennen
Mächtigkeit des
Kontinuums
!
c := | |
die Mächtigkeit des Kontinuums. Beweisbar ist die Aussage
|P(lN)| = c.
Wegen Satz 4.92 (3) S. 4-67 gilt
ℵ0 = |lN| < |P(lN)|,
woraus
ℵ0 < c
folgt. Damit gilt:
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.4 Reelle Zahlen
Satz 5.41
Überabzählbarkeit der
reellen Zahlen
5 - 13
Die Menge
! der reellen Zahlen ist überabzählbar.
Nun sei ℵ1 die kleinste Mächtigkeit, die größer als ℵ0 ist:
ℵ 0 < ℵ 1.
Gilt nun
ℵ0 < ℵ1 < c
oder
ℵ0 < ℵ1 = c?
Die Aussage
ℵ1 = c,
Kontinuumshypothese
!
also dass es zwischen den Mächtigkeiten von lN und keine weitere Mächtigkeit gibt,
heißt Kontinuumshypothese. Cantor versuchte erfolglos, sie zu beweisen. Erst später
stellte sich heraus, dass die Kontinuumshypothese nicht entscheidbar ist. Gödel bewies
1938, dass ℵ1 = c nicht im Widerspruch zum zermeloschen Axiomensystem der Mengenlehre steht; Cohen bewies 1964 das Entsprechende für ℵ1 < c. Das bedeutet, dass
man zu einem Axiomensystem der Mengenlehre die Kontinuumshypothese oder ihr
Gegenteil als Axiom dazu nehmen kann, ohne dadurch Widersprüche hervorzurufen.
Die InformatikerIn brennen solche mathematischen Grundlagenfragen nicht sehr unter
den Nägeln, da sie in der Rechnerpraxis stets mit endlichen Zahlenmengen auskommen
muss. Aber wir sehen daran exemplarisch, dass es Probleme gibt, die von der Möglichkeit einer algorithmischen Behandlung weit entfernt sind.
5.4.5
Standardfunktionen
!
! !
Abbildungen mit als Wertebereich heißen reelle Funktionen, insbesondere solche
der Form f : → , x → f(x). Die folgenden für x ∈ definierten reellen Funktionen
sind allgemein gebräuchlich; die ersten beiden setzen die entsprechenden ganzzahligen
Funktionen fort.
!
|
Vorzeichen (signum, sign):
sgn(x) :=
1
0
–1
falls
x>0
falls
x = 0.
falls
x<0
(Absolut-)Betrag:
|x| := sgn(x) * x =
x
falls
x≥0
–x
falls
x<0
.
!
Üblich ist auch die Kurzschreibweise für x, y ∈ :
x = ±y
:⇔
x ∈ {y, −y}
⇔
x = y ∨ x = −y
⇔
|x| = |y|.
Ganzer Teil (größtes Ganzes, floor, untere Gaußklammer1):
x
:= max{z ∈
' | z ≤ x}.
1
Carl Friedrich Gauß (1777 - 1855), deutscher Mathematiker, lieferte bedeutende Beiträge zu
vielen Gebieten wie Algebra, Analysis, Fehler- und Wahrscheinlichkeitsrechnung.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 14
5 Zahlen
Aufgerundetes (ceiling, obere Gaußklammer):
x
:= min{z ∈
' | z ≥ x} =
x
falls
x +1
sonst
x∈
'.
!
Für Vorzeichen und Betrag gelten die Beziehungen für x, y ∈ :
x ≠ 0 sgn(x) = x / |x|.
|x| = 0 ⇔ x = 0.
|x ∗ y| = |x| ∗ |y|.
|x + y| ≤ |x| + |y|.
||x| − |y|| ≤ |x − y|.
Dreiecksungleichung
Für den ganzen Teil und das Aufgerundete gelten die Beziehungen:
∀x ∈
∀x ∈
∀x ∈
5.4.6
!: x ≤x≤ x .
': x =x= x .
!\': x <x< x
= x + 1.
Operationen mit reellen Funktionen
Wir haben die Werte der Betragsfunktion als Produkt der Werte der Vorzeichenfunktion
und der Werte der identischen Funktion definiert - also das Produkt reeller Zahlen für
ein Produkt von Funktionen genutzt. Die Kurzschreibweise dafür ist:
|.| = sgn * id !.
Entsprechend können wir mit der charakteristischen Funktion von
.
= . + χ!\'.
! \ ' schreiben:
Dies lässt sich verallgemeinern.
Definition 5.42
Operationen mit reellen
Funktionen
Für Mengen M, N und reelle Funktionen f : M →
f+g:M∩N→
!, g : N → ! heißt
!, x → (f + g)(x) := f(x) + g(x)
|
die Summenfunktion von f und g,
f−g:M∩N→
!, x → (f − g)(x) := f(x) − g(x)
|
die Differenzfunktion von f und g,
!
f ∗ g : M ∩ N → , x → (f ∗ g)(x) := f(x) ∗ g(x)
|
die Produktfunktion von f und g,
f / g : M ∩ N \ g−1[{0}] →
!, x → (f / g)(x) := f(x) / g(x)
|
die Quotientenfunktion von f und g.
Beachte, dass die Nullstellen g−1[{0}] = {x ∈ N | g(x) = 0} von g aus dem Definitionsbereich von f / g ausgeschlossen sind.
Für jeden Definitionsbereich M wird die Menge der reellen Funktionen
Operationen Summe und Produkt zu einer algebraischen Struktur
!M mit den
!M, 0, 1, +, ∗ ,
und zwar zu einem kommutativen Ring (→ Kapitel 6) mit der konstanten Nullfunktion
0 als neutralem Element der Summe und der konstanten Einsfunktion 1 als neutralem
Element des Produkts. Die Operationen auf M entstehen wie in 4.1.10 S. 4-19 skizziert aus den Operationen auf durch komponentenweises Aufprägen. Auch die Ord-
!
© Karlheinz Hug, Hochschule Reutlingen
!
9.8.04
5.4 Reelle Zahlen
5 - 15
!
nung von überträgt sich als komponentenweise Ordnung nach Tabelle 4.1 S. 4-20
und 4.7.2 S. 4-70 auf M:
f≤g
:⇔
!
∀x ∈ M : f(x) ≤ g(x).
Die Produktordnung ≤ ist allerdings nur eine Halbordnung. Wir schreiben dann
!M, 0, 1, +, ∗, ≤ .
Mit der Ordnung übertragen sich ordnungstheoretische Konzepte wie Extrema, Schranken usw., z.B. sind durch
!
!
min(f, g) : M → , x → min{f(x), g(x)},
max(f, g) : M → , x → max{f(x), g(x)}
|
|
die Minimum- und Maximumfunktion von f und g definiert.
5.4.7
Größenordnung reeller Funktionen
Folgendes ist für die Analyse der Komplexität von Algorithmen wichtig. Unter der
Komplexität eines Algorithmus verstehen wir seinen Bedarf an „Ressourcen“ als
Funktion der „Größe“ des Problems. Als Ressourcen betrachten wir vor allem
l
l
den Laufzeitaufwand und
den Speicherplatz,
den ein Algorithmus zum Lösen des Problems benötigt. Konkrete Maßeinheiten für
Zeit und Speicher brauchen wir dazu nicht. Die Größe eines Problems ist meist als
natürliche Zahl n gegeben, z.B.:
l
l
l
Suche ein Element in einer n-elementigen Menge oder Liste.
Sortiere n Elemente in einer Reihung oder einer Liste.
Berechne den größten gemeinsamen Teiler von p und q. Hier ist n := max(p, q).
Obwohl wir bei der Komplexitätsanalyse natürlichzahlige Funktionen untersuchen,
schaffen wir ihre Grundlagen sinnvollerweise für reelle Funktionen. Bei der Komplexitätsanalyse kann man sich für den
l
l
l
schlechtesten Fall (worst case),
statistischen Durchschnittsfall (average case),
besten Fall (best case)
interessieren. Oft ist eine obere Schranke für den Laufzeitaufwand im schlechtesten
Fall gesucht:
LaufzeitAlgorithmus, schlechtest(n) ≤ SchrankeAlgorithmus, schlechtest(n).
Von Interesse ist vor allem das Verhalten für große n. Wie wächst der Aufwand mit n?
Man spricht dann von asymptotischer Analyse. Deshalb befassen wir uns hier mit
dem Wachstum reeller Funktionen.
! → ! heißt
O(f) := {g ∈ !! | ∃c, k ∈ ! ∀x ∈ ! : (x ≥ k
Definition 5.43
Größenordnung
Groß-O-Notation
Für eine reelle Funktion f :
|g(x)| ≤ c ∗ |f(x)|)}
die Menge der Groß-Os oder die Größenordnung von f. O heißt Landausymbol.a
Jedes g ∈ O(f) heißt ein Groß-O von f oder höchstens von der Größenordnung f.
a
Edmund Landau (1877 - 1938), deutscher Mathematiker, Zahlentheoretiker.
Statt g ∈ O(f) schreibt man auch etwas schwammig g(x) = O(f(x)).
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 16
Satz 5.44
Rechenregeln zu
Größenordnungen
5 Zahlen
Polynom: Für alle n ∈ lN0, a0,.., an ∈
(1)
! mit an ≠ 0 gilt:
O(anxn + an−1xn−1 + ... + a1x + a0) = O(xn).
Summe und Produkt: Für f1 ∈ O(g1) und f2 ∈ O(g2) gilt:
(2)
f1 + f2 ∈ O(max(g1, g2)),
f1 ∗ f2 ∈ O(g1 * g2).
Eine reelle Funktion f :
Satz 5.45
Markante
Größenordnungen
Tabelle 5.3
Exemplarische
Näherungswerte
markanter
Wachstumsfunktionen
Beispiel 5.1
Binäres Suchen in
sortierter Reihung
! → ! heißt
logarithmisch beschränkt
:⇔
f ∈ O(log(x)),
linear beschränkt
:⇔
f ∈ O(x),
quadratisch beschränkt
:⇔
f ∈ O(x2),
polynomial beschränkt
:⇔
∃n ∈ lN0 : f ∈ O(xn),
exponentiell beschränkt
:⇔
f ∈ O(2x).
Für alle m ∈ lN mit m > 2 gilt:
O(log(n)) ⊂ O(n) ⊂ O(n * log(n)) ⊂ O(n2) ⊂ O(nm) ⊂ O(2n) ⊂ O(n!).
log2(n)
n
n * log 2(n)
n2
2n
n!
3
5
15
25
32
120
4
10
40
100
103
10 7
7
100
700
104
1030
10158
10
1000
104
106
10301
102568
13
10000
105
108
103010
1035659
Gegeben: Eine sortierte Reihung row = (row[lower],.., row[upper]).
Problem: Suche das Element x in der Reihung row.
Größe des Problems: n := upper − lower + 1 = Länge der Reihung row.
Algorithmus: Binäres Suchen
Programm 5.1
Binäres Suchen
row.has_between(x, lower, upper) =
ASSERT row.first <= lower;
ASSERT upper <= row.last;
ASSERT row.sorted(lower, upper);
IF lower > upper THEN
result := FALSE
ELSE
middle := (lower + upper) div 2;
IF x = row[middle] THEN
result := TRUE
ELSIF x < row[middle] THEN
result := row.has_between(x, lower, middle - 1)
ELSE
result := row.has_between(x, middle + 1, upper)
END
END.
Laufzeitaufwand
f(n)
1
1
1
1
1
1
f((n − 1) div 2)
f(n div 2)
Bestimmen des Laufzeitaufwands: Die konstanten Aufwände seien zu f(1) = c
zusammengefasst. Für f erhalten wir die Rekursionsformel
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.4 Reelle Zahlen
Rekursionsformel
5 - 17
f(n) = c + p + q ∗ f((n − 1) div 2) + r ∗ f(n div 2)
mit p + q + r = 1, wobei p, q und r die Wahrscheinlichkeiten für das Ausführen des IF-,
ELSIF- bzw. ELSE-Zweigs sind. Nach einem Rekursionstheorem zur Ordnungsinduktion (→ Bemerkung 2, S. 5-7 in Bauer, Skript TG1) ist f eindeutig bestimmt. Zur
Abschätzung des schlechtesten Falls vernachlässigen wir p und erhalten
f(n) ≤ c + f(n div 2).
Um die Rechnung zu vereinfachen, setzen wir n = 2 m ein:
f(2m) ≤ c + f(2m−1).
Für m = 1, 2, 3,... erhalten wir
f(2) ≤ c + f(1) = 2c,
f(4) ≤ c + f(2) = 3c,
f(8) ≤ c + f(4) = 4c,
...
Die vermutete Formel
f(2m) ≤ (m + 1) ∗ c
beweisen wir mit vollständiger Induktion nach m:
Vollständige Induktion
f(2m+1) ≤ c + f(2m) ≤ c + (m + 1) ∗ c = ((m + 1) + 1) ∗ c.
Nun setzen wir wieder 2m = n und m = log2(n) ein:
f(n) ≤ (log2(n) + 1) ∗ c.
Damit ist
f ∈ O(log(n)).
Ergebnis: Der Laufzeitaufwand für binäres Suchen in einer sortierten Reihung ist
schlechtestenfalls höchstens von der Größenordnung O(log(n)) oder kurz logarithmisch
beschränkt.
p
Beispiel 5.2
Sortieren einer Liste
durch Auswählen
Gegeben: Eine sortierbare Liste list.
Problem: Sortiere die Liste list.
Größe des Problems: n := Anzahl der Elemente in der Liste list.
Algorithmus: Sortieren durch Auswählen
Programm 5.2
Sortieren durch
Auswählen
list.selectionsort =
entferne kleinstes Element aus der Liste:
list.remove_min_item(OUT x);
sortiere restliche Liste:
list.selectionsort;
ASSERT list.sorted;
füge kleinstes Element an den Anfang der Liste:
list.put_first(IN x);
ASSERT list.sorted.
Laufzeitaufwand
f(n)
a∗n
f(n − 1)
b
Bestimmen des Laufzeitaufwands: Zum Finden des kleinsten Elements ist die Liste
linear zu durchsuchen, der Aufwand dafür ist linear beschränkt. Die Größen a, b sind
konstante Aufwände. Der konstante Aufwand zum Sortieren der leeren Liste sei
f(0) = c. Für f erhalten wir die Rekursionsformel
Rekursionsformel
f(n) = a ∗ n + f(n − 1) + b.
Nach dem Rekursionstheorem 2, Satz 5.18 S. 5-7 in Bauer, Skript TG1 ist f eindeutig
bestimmt. Für n = 1, 2, 3,... erhalten wir
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 18
5 Zahlen
f(1) = a + c + b,
f(2) = 2a + f(1) + b = 3a + c + 2b,
f(3) = 3a + f(2) + b = 6a + c + 3b,
...
Die vermutete Formel
f(n) = ((n ∗ (n + 1)) / 2) ∗ a + c + n ∗ b
beweisen wir mit vollständiger Induktion nach n:
f(n + 1) = a ∗ (n + 1) + f(n) + b = a ∗ (n + 1) + ((n ∗ (n + 1)) / 2) ∗ a + c + n ∗ b + b =
(((n + 1) ∗ (n + 2)) / 2) ∗ a + c + (n + 1) ∗ b.
Vollständige Induktion
Damit ist
f ∈ O(n2).
Ergebnis: Der Laufzeitaufwand für Sortieren durch Auswählen ist in jedem Fall höchstens von der Größenordnung O(n2) oder kurz quadratisch beschränkt.
F
Solche Abschätzungen des Laufzeitaufwands von Algorithmen beruhen auf mathematischen Methoden, die keine Kenntnisse über spezielle Programmiersprachen oder
Rechner voraussetzen.
5.5
Komplexe Zahlen
In ! sind zwar alle Gleichungen der Formen
und
a + x = b mit a, b ∈ !
a ∗ x = b mit a, b ∈ !, a ≠ 0
lösbar, aber z.B. die Gleichung
x2 = −1
hat keine Lösung in !. Ziel ist es, ! so zur Menge der komplexen Zahlen zu erweitern, dass alle algebraischen Gleichungen der Form
anxn + an−1xn−1 + ... + a1x + a0 = 0 mit n ∈ lN, a0,.., an ∈
in
5.5.1
lösbar werden. soll der kleinste Oberkörper von ! mit dieser Eigenschaft sein.
Konstruktion
Wir starten mit der Definition
Komplexe Zahlen
:= !2.
heißen komplexe Zahlen. Wir müssen nun
(1) die Menge algebraisch strukturieren und
(2) zeigen, dass ! isomorph zu einer Teilmenge von ist.
Dann können wir ! mit dieser Teilmenge von identifizieren. Leider ist es unmöglich,
! algebraisch wie gefordert und die Ordnung von ! damit verträglich zu erweitern,
Die Elemente von
d.h. wir müssen auf das Erweitern der Ordnung verzichten. Offenbar ist die Abbildung
! → , x → (x, 0)
|
injektiv, sodass wir x und (x, 0) identifizieren. Komplexe Zahlen der Form (0, y) heißen
imaginäre Zahlen. Die komplexe Zahl (x, y) setzt sich aus ihrem Realteil x und ihrem
Imaginärteil y zusammen. Die algebraische Struktur erhält so: Für die Addition verwenden wir die komponentenweise Addition wie in 4.1.10 S. 4-19 skizziert:
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.6 Zahlendarstellungen
Addition
5 - 19
(v, w) + (x, y) := (v + x, w + y)
für (v, w), (x, y) ∈ .
Dagegen eignet sich die komponentenweise Multiplikation nicht.
Multiplikation
(v, w) ∗ (x, y) := (v ∗ x − w ∗ y, v ∗ y + w ∗ x)
für (v, w), (x, y) ∈ .
Nun sind noch die Inversen zu definieren und die Verträglichkeit dieser Struktur mit
der von zu zeigen.
!
Für die imaginäre Einheit (0, 1) führen wir den Namen i ein:
Imaginäre Einheit
i := (0, 1).
Damit ergibt sich
i2 = (0, 1) ∗ (0, 1) = (0 ∗ 0 − 1 ∗ 1, 0 ∗ 1 + 1 ∗ 0) = (−1, 0) = −1,
also
i =
–1 .
Weiter ist
i ∗ y = (0, 1) ∗ (y, 0) = (0 ∗ y − 1 ∗ 0, 0 ∗ 0 + 1 ∗ y) = (0, y).
So erhalten wir die klammerfreie additive Schreibweise
(x, y) = (x, 0) + (0, y) = x + iy.
Dies ist die Darstellung der komplexen Zahlen in kartesischen Koordinaten. Daneben
gibt es eine Darstellung in Polarkoordinaten. Addition und Subtraktion sind leichter
in kartesischen Koordinaten, Multiplikation und Division leichter in Polarkoordinaten
auszuführen.
5.5.2
Bemerkungen
Gaußsche Zahlenebene, Polarkoordinaten, Rechenregeln
Programmierung
Komplexe Zahlen kann man in Programmiersprachen als Datentypen, in objektorientierten Sprachen als Klassen implementieren. Siehe dazu als Beispiel das Klassenmodul MathComplexesR mit der Klasse Complex in [33].
Resümieren wir: Der Prozess der Konstruktion der verschiedenen Zahlen, der mit der
leeren Menge begann, liefert als Ergebnis die Inklusionskette
∅ ⊂ lP ⊂ lN ⊂ lN0 ⊂
' ⊂ 3 ⊂ ! ⊂ .
5.6
Zahlendarstellungen
5.6.1
Stellenwertsysteme
Dezimalsystem, Dualsystem, Hexadezimalsystem, Konvertierung
Aufgabe 5.1
Konvertierung
Studieren Sie die Algorithmen zum Konvertieren von Zahlen in [33], Modul
I1Converter!
5.6.2
Festpunktzahlen
Einer- und Zweierkomplement, Überlauf
Aufgabe 5.2
Einer- und
Zweierkomplement
9.8.04
Studieren Sie die Begriffe Einer- und Zweierkomplement anhand der interaktiven
Lerneinheiten in [33], Menü Informatik 1 → Übungsblätter → Interaktive Lerneinheiten → Bit-Operationen und Bit-Interpretation!
© Karlheinz Hug, Hochschule Reutlingen
5 - 20
5.6.3
5 Zahlen
Gleitpunktzahlen
Reelle Zahlen sind in der Mathematik und vielen naturwissenschaftlich-technischen
Gebieten außerordentlich wichtig. Rechensysteme und Programmiersprachen bieten
dafür ersatzweise Gleitpunktzahlen (floating-point number). Oft heißen sie - wie in
Component Pascal - REAL, oder passender - wie in C-orientierten Sprachen - float.
Component Pascal bietet zwei „reelle“ Typen, Realtypen genannt, die sich im Speicherplatzbedarf, im Wertebereich und in der Genauigkeit unterscheiden. Beide implementieren durch den IEEE Standard 754 for Binary Floating-Point Arithmetic spezifizierte Formate für Gleitpunktzahlen.
Tabelle 5.4
Realtypen in
Component Pascal
Typ
SHORTREAL
REAL
Wertebereich
MIN (SHORTREAL) ..
MAX (SHORTREAL)
MIN (REAL) .. MAX (REAL)
+ − ∗ / = # < > <= >=
Operatoren
Format
IEEE Standard 754 Single
IEEE Standard 754 Double
Länge
32 Bit
64 Bit
Mantisse
23 Bit
52 Bit
Exponent
8 Bit
11 Bit
kleinste positive Zahl
1.2E−38
2.2E−308
größte positive Zahl
3.4E38
1.8E308
Genauigkeit
7-8 Dezimalstellen
15-16 Dezimalstellen
Numerische Berechnungen mit Gleitpunktzahlen konfrontieren uns mit einer Reihe
von Problemen, weil Gleitpunktzahlen als Ersatz für reelle Zahlen inhärent ungenau
sind und daher die Gleitpunktzahlenarithmetik anderen Gesetzen folgt als die mathematisch exakte Arithmetik der reellen Zahlen. Denn maschinenintern lassen sich nur
endlich viele Gleitpunktzahlen darstellen. Die Menge dieser Gleitpunktzahlen ist eine
relativ kleine, beschränkte Teilmenge der rationalen Zahlen. Gleitpunktzahlen liegen
längst nicht so dicht beieinander wie rationale Zahlen. Dadurch entstehen Darstellungsfehler bei der Eingabe und Rundungsfehler beim Rechnen. Diese Fehler können sich
im Verlauf einer längeren Berechnung so fortpflanzen, dass sie das Endergebnis völlig
verfälschen.
Aufgabe 5.3
Rundungsfehler
Studieren Sie das Problem der Rundungsfehler bei Gleitpunktzahlenarithmetik anhand
[33], Modul I0FloatingPoint!
Da ein gewisses Verständnis dieser Problematik Voraussetzung für einen guten Programmierstil ist, untersuchen wir die Gleitpunktzahlenarithmetik etwas genauer. Fassen wir zunächst die wichtigsten Unterschiede der beiden Zahlenarten zusammen.
Tabelle 5.5
Reelle Zahlen und
Gleitpunktzahlen
Theorie
Mathematik
Praxis
Rechner, Programmierung
Zahlenart
reelle Zahlen
Gleitpunktzahlen
Anzahl
unendliche viele
endlich viele
Abstand zwischen zwei
benachbarten Zahlen
beliebig klein
durch Rechnergenauigkeit
vorgegeben
Eingabegrößen, Ergebnisse
exakte Werte
ungenau, Näherungswerte
Berechnungen
exakte Arithmetik
approximative Arithmetik
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.6 Zahlendarstellungen
5.6.3.1
5 - 21
Darstellungen von Gleitpunktzahlen
Reelle Zahlen sind als möglicherweise unendliche Dezimalbrüche darstellbar. Die als
endliche oder periodische Dezimalbrüche darstellbaren reellen Zahlen sind rational.
Beispiele
Mathematische Notation
normalisierte programmiersprachliche Notation
123,456
7,296493451394732445923563441
0,000834602 ∗ 10−5
0,834602 ∗ 10−8
1.23456E2
7.2964934513947324459235
8.34602E-9
8.34602E-9
Kommt in der Darstellung eine 10er-Potenz als Faktor vor, so handelt es sich um eine
halblogarithmische oder Exponentialdarstellung. Zu einer Zahl gibt es unendlich
viele solcher Darstellungen. Gesucht ist eine eindeutige, „normalisierte“ Darstellung,
die sich als maschineninterne Darstellung eignet. Eindeutigkeit erreichen wir, indem
wir fordern, dass vor dem Komma eine 0 steht, die erste Ziffer nach dem Komma keine
0 ist und nach dem Komma ab jeder Stelle nicht nur 9en auftreten. (Beachte, dass
0,999... = 1!)
!
Jede reelle Zahl x ∈ , x ≠ 0 besitzt eine eindeutige normalisierte Dezimalbruchdarstellung der Form
Normalisierter
Dezimalbruch
x = ± 0,z1z2z3... ∗ 10e
'
mit z1 ≠ 0, zk ∈ {0,..., 9}, e ∈ , wobei es zu jedem Ziffernindex i einen Index k > i
gibt mit zk ≠ 9. Die Ziffernfolge z1z2z3... nach dem Komma heißt Mantisse, 10 ist die
Basis und e der Exponent. Einen Dezimalbruch normalisieren bedeutet, ihn in die
normalisierte Darstellung bringen. Dazu ist ggf. die Mantisse oder das Komma zu verschieben und der Exponent entsprechend anzupassen.
Die Darstellung ist leicht für andere Basen verallgemeinerbar. Die Mantisse ist bei reellen Zahlen eine unendliche Ziffernfolge. Beschränken wir die Länge der Mantisse, so
erhalten wir Gleitpunktzahlen.
Es seien B ∈ lN, B ≥ 2, m ∈ lN, e1, e2 ∈ lN0. Eine B-adische und m-stellige normalisierte Gleitpunktzahl hat die Form x = 0 oder
Normalisierte
Gleitpunktzahl
x = ±
å
m
k=1
zk ⋅ B
e–k
mit z1 ≠ 0, zk ∈ {0, 1,..., B − 1}, e ∈
Ziffern,
Basis,
Mantissenlänge oder Stellenzahl,
zk
B
m
å
', −e1 ≤ e ≤ e2. Es heißen die
m
k=1
zk ⋅ B
[−e1, e2] ∩
e
−e1
e2
k
'
Mantisse,
Exponentenbereich,
Exponent,
kleinster Exponent,
größter Exponent.
Bei einer nicht normalisierten Gleitpunktzahl, auch denormalisiert oder subnormal
genannt, ist z1 = 0. Als eindeutige Darstellung der Null legen wir
0 = + 0,0...0 ∗ B−e1
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 22
5 Zahlen
fest. Je nachdem, ob die Basis B = 2, 8, 10 oder 16 ist, sprechen wir von dualen, oktalen, dezimalen bzw. hexadezimalen Gleitpunktzahlen. Statt des Kommas schreibt
man oft einen Punkt.
Beispiel
Eine dezimale normalisierte Gleitpunktzahl mit Mantissenlänge 5:
0.37249 ∗ 104
Dieselbe Zahl in Component-Pascal-Notation:
0.37249E4
Der Zahlbereich eines Gleitpunktzahlentyps ist das Intervall vom kleinstmöglichen bis
zum größtmöglichen Wert; er ist im Wesentlichen durch den Exponentenbereich
bestimmt. Die Genauigkeit einer Gleitpunktzahl ist durch die Mantissenlänge festgelegt. Innerhalb ihres Zahlbereichs bilden Gleitpunktzahlen das Gleitpunktzahlenraster. In der Nähe von 0 ist das Raster relativ dicht, die Lücken sind relativ eng. Mit
wachsendem Abstand von 0 wird das Raster lichter, die Lücken werden größer.
Die Darstellung in Rechnern ist heute meist dual. Die Stellenzahl für den Exponenten
bewegt sich etwa im Bereich von 6 bis 15 Bit, die Mantissenlänge etwa von 9 bis 112
Bit. Manche Prozessoren bieten auch dezimale Gleitpunktzahlen.
Die maschineninterne Darstellung lässt sich noch verbessern:
l
l
l
l
Beispiele
Die Stelle vor dem Komma kann weggelassen werden, sie hat ja immer den Wert 0.
Das Komma bzw. der Punkt kann weggelassen werden.
Die Basis kann weggelassen werden.
Bei dualen Gleitpunktzahlen kann die erste Stelle nach dem Komma weggelassen
werden, sie muss ja stets - außer bei der Zahl 0 - gleich 1 sein.
Wir haben 32 Bit für eine duale Gleitpunktzahl zur Verfügung. Wir wählen e1 = e2,
nehmen 7 Bit für den Exponenten und dazu ein Vorzeichenbit. Dann bleiben 23 Bit für
die Mantisse und ein Vorzeichenbit. Damit ergibt sich ein Zahlbereich etwa von 10−38
bis 1038 und eine Genauigkeit von etwa 7 Dezimalstellen.
Mit dem vierfachen Speicherplatz und 112 Bit Mantissenlänge ist eine Genauigkeit von
ca. 33 Dezimalstellen erreichbar.
5.6.3.2
IEEE Standard 754
In der Praxis (auch in Component Pascal) werden für die maschineninterne Darstellung
oft die durch den IEEE Standard 754 for Binary Floating-Point Arithmetic festgelegten
Formate Single, Double und Double-Extended oder das de-facto-Standard-Format
Quadruple Precision verwendet. Sie unterscheiden sich in Details von unserer Darstellung. IEEE 754 legt für die drei Formate genau fest, wo welche Bits innerhalb eines
Maschinenworts zu liegen haben. Außerdem liegt der Exponent in Exzessdarstellung
vor. Das bedeutet, dass nicht der vorzeichenbehaftete Exponent e, sondern die stets
nichtnegative Charakteristik c = e + e1 gespeichert wird. Zu den IEEE-Formaten
gehören auch
l
l
l
l
normalisierte und nicht normalisierte Zahlen,
zwei Darstellungen für Null, +0 und −0,
zwei Werte ±inf oder ±INF für „unendlich“ (∞, infinite), die bei Überlauf, z.B. beim
Multiplizieren gigantischer Zahlen oder beim Dividieren durch 0 auftreten, und
besondere Werte für NaN (Not-a-Number), die z.B. beim Dividieren von 0 durch 0
entstehen und sich in QNaNs (Quiet NaN) und SNaNs (Signalling NaN) teilen.
Mehr zum IEEE Standard 754 finden Sie z.B. in [31] und [34].
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.6 Zahlendarstellungen
5 - 23
Aufgabe 5.4
IEEE Standard 754
Studieren Sie den IEEE Standard 754 anhand der interaktiven Lerneinheit in [33],
Menü Informatik 1 → Übungsblätter → Interaktive Lerneinheiten → Bit-Interpretation!
5.6.3.3
Maschinendarstellung reeller Zahlen
Rundungsfunktion
Nicht jede reelle Zahl lässt sich exakt im Rechner darstellen. Eine Rundungsfunktion
rd : → ordnet jedem x ∈ eine Maschinenzahl y = rd(x) zu, die Gleitpunktdarstellung von x. Dabei können verschiedene Fälle auftreten.
! !
!
Die 0 wird exakt abgebildet: rd(0) := 0.
Ist x ≠ 0 mit der Darstellung
x = ±0,z1z2...zmzm+1... ∗ Be, z1 ≠ 0,
so definiert man den relativen Darstellungsfehler
δx := (rd(x) − x) / x.
Im Fall e < −e1 liegt Exponentenunterlauf vor. Vernünftigerweise wird rd(x) := 0
gesetzt. Damit ist der Betrag des relativen Darstellungsfehlers |δx| = 1, d.h. 100%.
Im Fall e > e2 liegt Exponentenüberlauf vor. Steht der Wert ∞ zur Verfügung, wird
rd(x) := sgn(x) ∗ ∞ gesetzt. Damit ist der absolute relative Darstellungsfehler |δx| = ∞.
Ohne ∞ ist eine Zuordnung rd(x) sinnlos, der Rechner sollte die Berechnung mit einer
Fehlermeldung abbrechen.
Im Normalfall −e1 ≤ e ≤ e2 kann gerundet werden. Zwei Lösungen liegen auf der Hand.
Bei unsymmetrischer Rundung (Abbruch, Abschneiden, Rundung zur Null) werden nur die ersten m Stellen der Mantisse genommen, der Rest wird abgeschnitten:
Unsymmetrische
Rundung
rd(x) := ±0,z1z2...zm ∗ Be.
Für den relativen Darstellungsfehler ergibt sich die Abschätzung
|δx| < Be−m / |x|.
Bei symmetrischer Rundung (Rundung zur nächsten Maschinenzahl) wird je nach
Wert der (m+1)-ten Stelle ab- oder aufgerundet:
Symmetrische
Rundung
rd(x) := ±0,z1z2...zm ∗ Be,
falls zm+1 < B / 2;
rd(x) := ±(0,z1z2...zm + B−m) ∗ Be,
falls zm+1 ≥ B / 2.
Beachte, dass im letzten Fall durch das Aufrunden ein Übertrag entstehen kann und
dann u.U. renormalisiert werden muss. Für den relativen Darstellungsfehler ergibt sich
|δx| < Be−m / 2 |x|.
Weitere Möglichkeiten zur Rundung sind Abrunden zur nächstkleineren und Aufrunden zur nächstgrößeren Maschinenzahl.
Der relative Darstellungsfehler ist nach oben durch die vom Rechner R abhängige relative Rechnergenauigkeit δR beschränkt. Diese Zahl ist definiert durch
Relative
Rechnergenauigkeit
Beispiele
δR := B1−m
bei unsymmetrischer Rundung und
δR := B1−m / 2
bei symmetrischer Rundung.
Bei B = 2, m = 23 und symmetrischer Rundung ergibt sich δR = 1/223 ≈ 0,125 ∗ 10 −6.
Bei B = 2, m = 52 und symmetrischer Rundung ergibt sich δR = 1/252 ≈ 0,222 ∗ 10 −15.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 24
5 Zahlen
Die relative Rechnergenauigkeit δR ist die kleinste positive Zahl δ, für die rd(1 + δ) > 1
ist. Sie lässt sich auch leicht empirisch mit einem iterativen Algorithmus bestimmen;
siehe [33], Modul I1RealInfo .
Ein Rechner kann (zwecks Vereinfachung der Schaltkreislogik) auch eine andere Rundungsfunktion realisieren. Man sollte jedoch erwarten dürfen, dass die relative Rechnergenauigkeit nicht schlechter als bei unsymmetrischer Rundung ist.
5.6.3.4
Fehlerquellen beim Rechnen mit Gleitpunktzahlen
Mit den Darstellungsfehlern haben wir eine spezielle Fehlerart kennengelernt. Klassifizieren wir nun die Fehler, die beim Rechnen mit Gleitpunktzahlen auftreten.
Genauigkeitsfehler entstehen
l
l
als Eingabefehler schon bei den Eingabedaten und
als Rundungsfehler bei arithmetischen Operationen.
Eingabefehler entstehen
l
l
als Darstellungsfehler wegen der maschineninternen Beschränkung der Stellenzahl,
als Konvertierungsfehler beim Übergang zwischen Zahlsystemen (dezimal ↔ dual).
Sie bewirken selbst dann, wenn mit den maschineninternen Daten arithmetisch exakt
weitergerechnet wird, unvermeidbare Fehler bei den Ausgabedaten, da sie den Gesetzen der Fehlerfortpflanzung unterliegen. Hinzu kommen dann die Rundungsfehler
durch die Gleitpunktarithmetik, auf die wir im nächsten Abschnitt eingehen. Auch
diese verursachen Fortpflanzungsfehler. Im schlechten Fall verstärken sich diese Fehler
und verfälschen die Ergebnisse. Weitere Probleme sind:
l
l
l
l
l
Die Eingabedaten können schon bei der Erfassung mit Messfehlern behaftet sein,
bevor sie in eine rechnerinterne Darstellung gebracht werden.
Von einem vernünftigen Verfahren zur Lösung eines Problems erwartet man, dass es
numerisch stabil ist, d.h. dass der Rundungsfehler bei den Ausgabedaten nicht
beliebig größer als der unvermeidbare Fehler wird. Nicht alle Verfahren sind numerisch stabil.
Die Kondition eines Problems ist das im schlechtesten Fall auftretende Verhältnis
von relativen Resultatfehlern zu relativen Eingangsfehlern. Ist ein Problem schlecht
konditioniert, d.h. seine Kondition einige Zehnerpotenzen groß, so kann auch ein
numerisch stabiles Lösungsverfahren die Situation nicht verbessern.
■ Ein Beispiel für ein schlecht konditioniertes Problem ist die Subtraktion von
zwei fast gleich großen Gleitpunktzahlen, die die Auslöschung von Stellen verursacht. Deshalb sollte man Subtraktionen möglichst vermeiden!
Zu einem gut konditionierten Problem kann das verwendete Lösungsverfahren
schlecht konditioniert sein.
Verfahren, die theoretisch exakte Lösungen liefern, arbeiten mit dem unendlichen,
stetigen Wertebereich der reellen Zahlen. Praktisch realisiert werden sie durch
Näherungsverfahren, die mit endlich vielen diskreten Werten arbeiten. Dadurch entstehen Verfahrensfehler.
■ Diskretisierungsfehler entstehen, wenn man z.B. eine stetige Funktion durch
endlich viele Funktionswerte oder Koeffizienten eines Näherungspolynoms
ersetzt.
■ Abbruchfehler entstehen, wenn man ein theoretisch unendlich oft iterierendes
Verfahren durch einen terminierenden Algorithmus realisiert.
Die Numerische Mathematik analysiert die Probleme der Fehlerfortpflanzung eingehend. Uns geht es hier darum, problembewusst programmieren zu lernen.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.6 Zahlendarstellungen
5.6.3.5
5 - 25
Gleitpunktzahlenarithmetik
Die Gleitpunktzahlenarithmetik unterscheidet sich von der Arithmetik der reellen und
rationalen Zahlen darin, dass klassische Rechenregeln wie die Assoziativ- und die Distributivgesetze nicht gelten. Um zu verstehen, warum das so ist, betrachten wir zuerst
die Grundrechenarten.
Mathematische Notation
Es seien
x, y
● ∈ {+, −, ∗, /}
x●y
z = gl(x ● y)
Gleitpunktzahlen,
eine arithmetische Operation,
das exakte Ergebnis der Rechnung,
das Gleitpunktergebnis, das ist die Gleitpunktdarstellung des exakten Ergebnisses, sie ist mit einem Rundungsfehler behaftet.
Component-Pascal-Notation
VAR x, y, z : REAL;
z := x + y;
Korrekte Rundung
Es ist sinnvoll,
Spezielles
Rundungsgesetz
gl(x ● y) = rd(x ● y)
zu fordern. Man kann aber auch auf die Forderung gl = rd verzichten und stattdessen
die Gültigkeit des allgemeinen Rundungsgesetzes
|rd(x) − x| ≤ |x| ∗ δR
Allgemeines
Rundungsgesetz
|gl(x ● y) − (x ● y)| ≤ |x ● y| ∗ δR
!
für x, y ∈ mit einer durch den Rechner R festgelegten Rechnergenauigkeit δR fordern. Die Details der implementierten Rechnerarithmetik sind dann unwesentlich.
Wie wichtig korrekte Rundung ist, zeigen folgende Fragen:
(1)
(2)
(3)
(4)
Gilt gl(1 ∗ x) = x für alle x?
Gilt gl(x / x) = 1 für alle x ≠ 0?
Gilt gl(0.5 ∗ x) = gl(x / 2) für alle x?
Folgt aus gl(x − y) = 0 stets x = y für alle x, y?
Während bis in die 70er Jahre Rechner weit verbreitet waren, die wenigstens eine der
Fragen für bestimmte Werte verneinen mussten, sichert der IEEE Standard 754 auf alle
Fragen die Antwort „ja“ zu.
Prinzip einer Rechnung
(1)
(2)
Beispiele
9.8.04
x und y als Dezimalbrüche betrachten.
Exakte Rechnung durchführen. Das exakte Ergebnis x ● y ist wieder ein Dezimalbruch.
(3) Das Ergebnis x ● y normalisieren.
(4) Das normalisierte Ergebnis runden, sodass es auf eine Gleitpunktzahl gl(x ● y)
abgebildet wird.
Bei den folgenden Beispielen gilt B = 10, m = 3, und es wird unsymmetrisch gerundet
(abgeschnitten).
© Karlheinz Hug, Hochschule Reutlingen
5 - 26
5 Zahlen
Addition
x = 0.972E4
y = 0.861E3
z = gl(x + y)
(1) Die betragsmäßig kleinere Zahl an die andere anpassen:
◆ Den Exponenten erhöhen, bis beide Exponenten gleich sind.
◆ Die Mantisse entsprechend verschieben (und ggf. Hilfsstellen einführen).
x = 0.972E4 = 0.9720E4
y = 0.861E3 = 0.0861E4
(2) Die Mantissen der beiden Zahlen addieren.
x + y = 1.0581E4
(3) Normalisieren.
= 0.10581E5
(4) Runden (und Hilfsstellen entfernen).
z = gl(0.10581E5) = 0.105E5
Subtraktion
Auslöschung
x = 0.972E4
y = 0.971E4
z = gl(x − y)
(1) Die betragsmäßig kleinere Zahl an die andere anpassen: entfällt bei diesem Beispiel.
(2) Die Mantissen der beiden Zahlen subtrahieren.
x − y = 0.001E4
(3) Normalisieren.
= 0.100E2
(4) Runden.
z = gl(0.100E2) = 0.100E2
Da hier x und y fast gleich sind, „verschwinden“ bei ihrer Differenz die Ziffern an beiden signifikanten Stellen, es bleibt nur die Ziffer an der am wenigsten signifikanten
dritten Stelle. Durch Normalisieren wird sie zur signifikantesten Ziffer. Dieses Phänomen heißt Auslöschung. Da wenig signifikante Ziffern meist mit Rundungsfehlern
behaftet sind, vergrößert Auslöschung die folgenden Rundungsfehler erheblich.
Multiplikation
x = 0.279E4
y = 0.168E3
z = gl(x ∗ y)
(1) Die Mantissen der beiden Zahlen multiplizieren (und Hilfsstellen einführen).
0.279 ∗ 0.168 = 0.046872
(2) Die Exponenten der beiden Zahlen addieren.
4+3=7
(3) Exaktes Ergebnis:
x ∗ y = 0.279 ∗ 104 ∗ 0.168 ∗ 10 3
= 0.279 ∗ 0.168 ∗ 10 4 ∗ 103
= 0.046872 ∗ 107 = 0.046872E7
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.7 Übungen
5 - 27
(4)
(5)
Normalisieren.
= 0.46872E6
Runden (und Hilfsstellen entfernen).
z = gl(0.46872E6) = 0.468E6
Division
Analog.
5.7
Übungen
Aufgabe 5.5
Mächtigkeiten
endlicher Mengen
Zeigen Sie, dass für die endlichen Mengen L, M, N folgende Beziehungen der Mächtigkeiten gelten!
(1)
(2)
(3)
|M ∪ N| = |M| + |N| − |M ∩ N|.
|L ∪ M ∪ N| = |L| + |M| + |N| − |L ∩ M| − |L ∩ N| − |M ∩ N| + |L ∩ M ∩ N|.
|M × N| = |M| ∗ |N|.
Mit diesen Formeln lassen sich Mächtigkeiten von Mengen bestimmen.
(4)
(5)
(6)
Von 40 Studierenden, die die Vorlesungen TG2 und I2 besuchen, gehen 24 in
TG2 und 32 in I2. Wieviele Studierende besuchen beide Vorlesungen?
18 Studierende gehen in TG2, 24 in I2, 30 in MD. In TG2 und I2 gehen 12, in
TG2 und MD 14, in I2 und MD 16 und in alle drei Vorlesungen 10. Wieviele Studierende besuchen wenigstens eine der drei Vorlesungen? Wieviele gehen nur in
TG2, nur in I2, nur in MD?
20 Studierende melden sich alle zu drei Seminaren an. Wieviele Seminaranmeldescheine werden ausgefüllt?
Aufgabe 5.6
Beweisen Sie die Rechenregeln (AM), (K M) und (D) von Satz 5.8 S. 5-4 in Bauer,
Skript TG1 mit vollständiger Induktion!
Aufgabe 5.7
Beweisen Sie die Rechenregeln von Satz 5.10 S. 5-4 in Bauer, Skript TG1 mit vollständiger Induktion!
Aufgabe 5.8
Vollständige Induktion
Folgende Aussagen sind mit vollständiger Induktion nach n zu beweisen.
Aufgabe 5.9
Vollständige Induktion
bei Summenformeln
(1)
Für jedes n ∈ lN mit n ≥ 2 gilt: 2 < 2n.
(2)
Für jedes n ∈ lN mit n ≥ 3 gilt: 2n + 1 < 2n.
(3)
Für jedes n ∈ lN mit n ≥ 5 gilt: n2 < 2 n.
(4)
Für jedes n ∈ lN mit n ≥ 4 gilt: 2n < n!.
Folgende Aussagen sind mit vollständiger Induktion nach n zu beweisen.
(1)
Für die Summe der ersten n natürlichen Zahlen gilt:
sn =
(2)
(3)
å
n
2
( 2k – 1 ) = n .
k=1
Für die Summe der ersten n Quadratzahlen gilt:
sn =
9.8.04
n( n + 1 )
k = -------------------- .
2
k=1
Für die Summe der ersten n ungeraden natürlichen Zahlen gilt:
sn =
Quadratzahl
å
n
å
2
n ( n + 1 ) ( 2n + 1 )
k = ----------------------------------------- .
6
k=1
n
© Karlheinz Hug, Hochschule Reutlingen
5 - 28
Kubikzahl
5 Zahlen
(4)
Für die Summe der ersten n Kubikzahlen gilt:
sn =
Endliche geometrische
Reihe
(5)
å
3
k =
k=1
Für jedes q ∈
sn =
Aufgabe 5.10
Vollständige Induktion
in der Kombinatorik
å
n
(n + 1)
n
--------------------
2 ! \ {1} und n ∈
n
lN
0
2
.
gilt:
n+1
1–q
q = ---------------------- .
1–q
k=0
k
Folgende Aussagen sind mit vollständiger Induktion nach m := |M| zu beweisen. Wir
setzen zudem n := |N|.
(1)
Die Mächtigkeit der Potenzmenge einer endlichen Menge ist die Zweierpotenz
der Mächtigkeit dieser Menge:
|P(M)| = 2|M|.
Da die Potenzmenge einer Menge und die Menge der charakteristischen Funktionen dieser Menge gleichmächtig sind, ist damit auch gezeigt:
|M| < ℵ0
|{0, 1} M| = 2|M|.
Wieviele Teilmengen können 40 Studierende bilden?
Variation mit
Wiederholung
(2)
Wieviele Teiler hat 6n?
Eine Dialogbox stellt den Zustand eines Objekts mit Checkboxen dar. Das
Objekt hat 30 mögliche Zustände. Wieviele Checkboxen hat die Dialogbox?
Wieviele Zustände der Checkboxen sind durch Invarianten auszuschließen?
Verallgemeinerung von (1): Sind M, N endliche Mengen, so gilt für die Anzahl
der Abbildungen von M nach N:
W(|N|, |M|) := |NM| = |N||M|.
Permutation
(3)
Somit ist W(n, m) = nm die Anzahl verschiedener Anordnungen von n Elementen
mit Wiederholung auf m Stellen. Solch eine Anordnung heißt Kombination mter Ordnung von n Elementen mit Wiederholung mit Berücksichtigung der
Anordnung oder Variation m-ter Ordnung von n Elementen mit Wiederholung.
Auf wieviele Arten kann ein Dozent die |{1, 1.3, 1.7, 2,.., 4, 4.7, 5}| = 12 Noten
auf 40 Studierende verteilen?
Wie oft muss ein ec-Kartendieb schlimmstenfalls probieren, um die vierstellige
PIN aus Dezimalziffern herauszufinden?
Wie oft muss ein Hacker schlimmstenfalls probieren, um ein achtstelliges Passwort aus Tastaturzeichen herauszufinden?
Eine Permutation ist eine bijektive Abbildung einer endlichen Menge auf sich
selbst. Für die Anzahl der Permutationen einer Menge gilt:
P(|M|) := |{p ∈ MM | p ist bijektiv}| = |M|!.
Somit ist P(m) = m! die Anzahl verschiedener Anordnungen von m Elementen
ohne Wiederholung.
In wievielen Reihenfolgen können 40 Studierende in den Hörsaal eintreten?
In wievielen Reihenfolgen kann eine Studierende die zehn in einer Vorlesungsstunde beschriebenen Blätter in den Ordner heften?
In wievielen Reihenfolgen können n gesendete Pakete einer E-Mail beim Empfänger ankommen?
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.7 Übungen
5 - 29
Die folgende Aussage ist mit vollständiger Induktion nach n := |N| zu beweisen. Wir
setzen wieder m := |M|.
Variation ohne
Wiederholung
(4)
Verallgemeinerung von (3): Sind M, N endliche Mengen, so gilt für die Anzahl
der injektiven Abbildungen von M nach N:
V(|N|, |M|) := |{f ∈ NM | f ist injektiv}| =
n!
N!
--------------------------- = -------------------- = n ⋅ ( n – 1 ) ⋅ … ⋅ ( n – m + 1 ) .
( n – m )!
( N – M )!
Somit ist V(n, m) = n! / (n − m)! die Anzahl verschiedener Anordnungen von n
Elementen ohne Wiederholung auf m Stellen. Mit n! / (n − m)! := 0 für m > n ist
V(n, m) für alle n, m definiert. Solch eine Anordnung heißt Kombination m-ter
Ordnung von n Elementen ohne Wiederholung mit Berücksichtigung der
Anordnung oder Variation m-ter Ordnung von n Elementen ohne Wiederholung.
Auf wieviele Arten können sich 40 Studierende auf 50 Sitzplätze verteilen?
Auf wieviele Arten können sich drei Betreuer auf 20 Studierende verteilen, wenn
sich bei jeder Studierenden höchstens ein Betreuer befindet?
Die folgende Aussage lässt sich aus (3) und (4) folgern.
Kombination ohne
Wiederholung
(5)
Sind m ∈ lN0 und N eine endliche Menge, so gilt für die Anzahl der m-elementigen Teilmengen von N:
n!
N!
C(|N|, m) := |{M ⊆ N | |M| = m}| = --------------------------------- = ------------------------------- .
m! ⋅ ( n – m )!
! ⋅ ( N – m )!
n!
V (n , m )
= ------------------------------- = -------------------- die Anzahl der Auswahlen
m! ⋅ ( n – m )!
m!
von m Elementen aus n Elementen ohne Wiederholung. Für m > n ist
C(n, m) = 0. Solch eine Auswahl heißt Kombination m-ter Ordnung von n
Elementen ohne Wiederholung ohne Berücksichtigung der Anordnung.
Somit ist C(n, m) =
n
m
Für m, n ∈ lN0 heißt
n
m
n!
= ------------------------------- ein Binomialkoeffizient.
m! ⋅ ( n – m )!
Wieviele Teams mit genau fünf Mitgliedern können 40 Studierende bilden?
Auf wieviele Arten kann eine Studierende 15 Aufgaben aus 30 gestellten zum
Bearbeiten auswählen?
Die folgende Aussage ist mit vollständiger Induktion nach m zu beweisen.
Kombination mit
Wiederholung
(6)
Für m, n ∈ lN0 heißt eine Auswahl von m Elementen aus n Elementen mit Wiederholung eine Kombination m-ter Ordnung von n Elementen mit Wiederholung ohne Berücksichtigung der Anordnung. Für ihre Anzahl gilt:
D(n, m) =
n
( n + m – 1 )!
+ m – 1
= ----------------------------- .
m
m! ⋅ ( n – 1 )!
Wieviele Teilmengen von 40 Studierenden können in einer Vorlesung zehn Fragen stellen?
Wieviele natürliche Zahlen mit genau 12 Primfaktoren aus den ersten 24 Primzahlen gibt es?
Aufgabe 5.11
Binomialkoeffizienten
9.8.04
(1)
Für alle k, n ∈ lN0 gilt:
n
0
= 1;
n
k
=
n
n .
– k
© Karlheinz Hug, Hochschule Reutlingen
5 - 30
5 Zahlen
(2)
Auf wieviele Arten kann man niemand aus 40 Studierenden auswählen? Aus 40
Studierenden zehn oder 30 auszuwählen - gibt es dafür unterschiedlich viele
Möglichkeiten?
Für alle k, n ∈ lN0 gilt:
n
k
Binomischer Lehrsatz
(3)
+
k
n n + 1
= .
k + 1
+ 1
Diese Rekursionsformel ist direkt formal zu beweisen.
Informal: Um aus 41 Studierenden elf auszuwählen, markieren wir den 41. Studierenden. Fall 1: Wir wählen elf aus den ersten 40 Studierenden; bei diesen ist
der 41. nicht dabei. Fall 2: Wir wählen den 41. und die anderen zehn aus den 40;
bei diesen Elfergruppen ist der 41. dabei.
Für alle x, y ∈ ! und n ∈ lN0 gilt:
n
( x + y) =
å
n
k=0
(4)
n
k
⋅x
n–k
k
⋅y .
Dieser binomische Lehrsatz ist mit vollständiger Induktion nach n und (2) zu
beweisen.
Für alle n ∈ lN0 gilt:
n
2 =
å
n
k=0
n
k
.
Erklären Sie einen Zusammenhang zwischen dieser Formel und Aufgabe 5.10
(1) und (5)!
Aufgabe 5.12
Geburtstag von
Studierenden
Satz: Alle Studierenden haben am gleichen Tag Geburtstag.
Beweis mit vollständiger Induktion nach der Anzahl n der Studierenden.
Induktionsanfang mit n = 1: Eine Studierende hat offenbar am gleichen Tag Geburtstag wie sie selbst.
Induktionsannahme: Je n Studierende haben am gleichen Tag Geburtstag.
Induktionsschluss: Zu zeigen ist, dass je n + 1 Studierende am gleichen Tag Geburtstag haben. Seien also s1,.., sn+1 beliebige n + 1 Studierende. Nach Induktionsannahme
haben die n Studierenden s1,.., sn am gleichen Tag Geburtstag, und die n Studierenden
s2,.., sn+1 haben am gleichen Tag Geburtstag. Da wir n ≥ 2 annehmen können, gehört s2
zu beiden Mengen. Also haben einerseits s1 und s2, andererseits s2 und sn+1 am gleichen Tag Geburtstag. Wegen der Transitivität der Gleichheit haben auch s1 und sn+1,
also s1,.., sn+1 am gleichen Tag Geburtstag.
Damit ist der Satz bewiesen. Oder doch nicht? Wo liegt der Fehler? Wenn Sie keinen
Fehler finden, haben sogar alle Menschen am gleichen Tag Geburtstag!
Aufgabe 5.13
Von neumannsche
natürliche Zahlen
Analog zu Satz 4.79 S. 4-61 zeigt man leicht, dass jede halbgeordnete Menge G, ≤
ordnungsisomorph zum System {<x | x ∈ G}, ⊆ ihrer primitiven Vorbereiche ist. Die
von neumannschen natürlichen Zahlen besitzen sogar die bemerkenswerte Eigenschaft:
∀n ∈ lN0 : n = <n.
Beweisen Sie diese Aussage mit vollständiger Induktion!
Zur Erinnerung: 0 := ∅, n+ := n ∪ {n}, m < n :⇔ m ∈ n, <n = {m ∈ lN0 | m < n}.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
5.7 Übungen
Aufgabe 5.14
Rekursionstheorem
5 - 31
Beweisen Sie das folgende einfache Rekursionstheorem mit dem Rekursionstheorem 1,
Satz 5.16 S. 5-6 in Bauer, Skript TG1!
Zu einer Wertemenge W, einem Element a ∈ W und einer Abbildung h : W → W gibt
es genau eine Abbildung f : lN0 → W mit
f(0) = a,
Rekursionsanfang
∀n ∈ lN0 : f(n ) = h(f(n)).
+
Aufgabe 5.15
Anzahlen von
Relationen
Rekursionsschritt
Es sei M eine endliche Menge mit |M| = m.
Wieviele Relationen R ⊆ M2 gibt es?
(1)
Wieviele dieser Relationen sind
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
Aufgabe 5.16
Russische
Bauernmultiplikation
reflexiv?
irreflexiv?
symmetrisch?
asymmetrisch?
antisymmetrisch?
transitiv?
intransitiv?
azyklisch?
Verträglichkeitsrelationen?
Äquivalenzrelationen?
Präordnungen?
Halbordnungen?
Vollordnungen?
Die schon den alten Ägyptern bekannte russische Bauernmultiplikation, mit der russische Bauern im 19. Jahrhundert zwei natürliche Zahlen multiplizierten, basiert auf
der Abbildung
russ : lN03 → lN0, (k, m, n) → russ(k, m, n) := k + m ∗ n,
|
deren Eigenschaften
(a)
(b)
(c)
(d)
russ(0, m, n) = m ∗ n,
russ(k, m, n + 1) = russ(k + m, m, n),
russ(k, m, p ∗ n) = russ(k, m ∗ p, n),
russ(k, m, 0) = k
leicht zu zeigen sind. Damit lässt sich das Multiplizieren wegen (b) auf Dekrementieren
und Addieren und wegen (c) auf Halbieren und Verdoppeln zurückführen.
(1)
Multiplizieren Sie die Zahlen 123 und 456 möglichst effizient mit russischer
Bauernmultiplikation! Wie ginge es noch schneller?
Algorithmisch sieht das so aus:
Produkt(m, n) =
result := russ (0, m, n);
ASSERT result = m * n.
Geben Sie für
russ(k, m, n) =
...
ASSERT result = k + m * n.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 32
5 Zahlen
einen effizienten
(2)
(3)
rekursiven,
iterativen
Algorithmus an! Beweisen Sie die Korrektheit der Algorithmen, indem Sie an geeigneten Stellen Zusicherungen einfügen, die die Eigenschaften (a) bis (d) nutzen!
(4)
Geben Sie Abschätzungen für die Laufzeitaufwände ihrer Algorithmen abhängig
von n an!
Aufgabe 5.17
„Russische
Bauernpotenzierung“
Formen Sie die Abbildung russ von Aufgabe 5.16 so um, dass sie als Basis für das
Potenzieren dienen kann und passen Sie die Eigenschaften und Algorithmen entsprechend an!
Aufgabe 5.18
Ackermannfunktion
Die Ackermannfunktion A : lN02 → lN0, die in der Berechenbarkeitstheorie eine
wichtige Rolle spielt, ist rekursiv definiert durch
A (x , y ) =
y + 1
A (x –
A (x –
falls x = 0
1, 1)
falls x ≠ 0 ∧ y = 0 .
1, A (x, y – 1))
sonst
Berechnen Sie A(3, 3)!
Aufgabe 5.19
Division mit Rest in
Programmiersprachen
Finden Sie heraus, wie C, C++, Java, C#, Eiffel und andere Programmiersprachen die
Division mit Rest spezifizieren und implementieren!
Aufgabe 5.20
Division mit Rest
Die beiden Varianten der Division mit Rest - nichtnegativer und vorzeichenbehafteter
Rest - basieren auf folgender Aussage, die zu beweisen ist.
'
'
Für alle p, m ∈ gibt es genau ein q ∈ mit
q ∗ m ≤ p < (q + 1) ∗ m
und genau ein r ∈ {0,.., |m| − 1} und genau ein s ∈ {1,.., |m|} mit
p = q ∗ m + r,
p = (q + 1) ∗ m − s,
r + s = |m|.
Aufgabe 5.21
Induktive Definition
Die Relation R ⊆ lN02 sei induktiv definiert durch
(a)
(b)
(0, 0) ∈ R, (1, 1) ∈ R,
(x, y) ∈ R ((x + 2, y) ∈ R ∧ (x, y + 2) ∈ R).
Beweisen Sie, dass R = {(x, y) ∈ lN02 | (x + y) mod 2 = 0}!
Aufgabe 5.22
Beweisen Sie die Rechenregeln zur Teiltrelation von Satz 5.28 S. 5!
Aufgabe 5.23
Teiltrelation
Zeichnen Sie das Ordnungsdiagramm zur Teiltrelation auf den ersten natürlichen Zahlen {0, 1, 2,.., n}!
Aufgabe 5.24
Teilbarkeit und
vollständige Induktion
Beweisen Sie folgende Aussagen über Teilbarkeit mit vollständiger Induktion nach n!
(1)
(2)
(3)
'
Für jedes p ∈ und jedes n ∈ lN mit n ≥ 2 gilt: p − 1 | pn − 1.
Für jedes n ∈ lN gilt: 6 | n ∗ (n − 1) ∗ (n − 2).
Für jedes n ∈ lN gilt: 8 | 4n ∗ (n − 1).
Aufgabe 5.25
Beweisen Sie die Rechenregeln zum größten gemeinsamen Teiler von Satz 5.33 S. 7!
Aufgabe 5.26
ggT und kgV
Beweisen Sie die folgende Beziehung zwischen dem größten gemeinsamen Teiler und
dem kleinsten gemeinsamen Vielfachen!
Für alle p, q ∈
© Karlheinz Hug, Hochschule Reutlingen
' gilt: ggT(p, q) ∗ kgV(p, q) = |p ∗ q|.
9.8.04
5.7 Übungen
5 - 33
Aufgabe 5.27
Beweisen Sie, dass die Kongruenz modulo n eine Äquivalenzrelation ist (→ Satz 5.34
S. 8)!
Aufgabe 5.28
Restklassen
Stellen Sie die
(1)
(2)
Additionstabellen,
Multiplikationstabellen
für die ersten n ∈ lN Restklassen modulo n auf!
Aufgabe 5.29
Zählmengen
Beweisen Sie, dass das System aller Zählmengen (→ S. 12) durchschnittsstabil ist!
Aufgabe 5.30
Reelle und rationale
Zahlen
Beweisen Sie die folgende Aussage mit der archimedischen Eigenschaft der natürlichen Zahlen, Korollar 5.24 S. 1!
Aufgabe 5.31
Verallgemeinerte
Dreiecksungleichung
Zu jedem x ∈
! mit x > 0 gibt es ein n ∈
lN
mit 1 / n < x.
Beweisen Sie mit vollständiger Induktion nach n, dass für n ∈ lN0 und x1, .., xn ∈
folgende verallgemeinerte Dreiecksungleichung gilt!
å
n
k=1
xk ≤
å
! die
n
k=1
xk .
Aufgabe 5.32
Zahlendarstellungen
Papieraufgaben zu Zahlendarstellungen mit Lösungen finden Sie in [33], Menü Informatik 1 → Übungsblätter → Papierübungsblatt 2!
Aufgabe 5.33
Gleitpunktzahlen
Programmieraufgaben zu Gleitpunktzahlen mit Lösungen finden Sie in [33], Menü
Informatik 1 → Übungsblätter → WS 98/99 Übungsblatt 8, WS 97/98 Übungsblatt 8,
SS 96 Übungsblatt 5, Aufgaben 3 und 4!
Eine Prüfungsaufgabe zu Gleitpunktzahlen mit Lösung finden Sie in [33], Menü Informatik 1 → Lehrmaterial → Informatik 1 - Prüfung im WS 1997/98 mit Musterlösung.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
5 - 34
© Karlheinz Hug, Hochschule Reutlingen
5 Zahlen
9.8.04
6
Algebraische Strukturen
AufgabeBeispiel
6
Bild
6 6 (6)
MathAussagen
Leitlinie Programm
6
6 6
Tabelle 6
Dieses Kapitel stellt grundlegende algebraische Strukturen wie Halbgruppen, Gruppen,
Ringe, Körper, Verbände, boolesche Algebren und Vektorräume vor, und führt Grundbegriffe der Codierung ein.
6.1
Strukturen mit einer zweistelligen Operation
Im Folgenden sei G eine Grundmenge.
6.1.1
Vom Gruppoid zum Monoid
Eine algebraische Struktur G, l (→ Definition 1.34 S. 1-32) mit einer zweistelligen
Operation
Definition 6.1
Gruppoid
l : G2 → G, (x, y) → l(x, y) = x l y
|
(für die wir die Infixnotation bevorzugen) heißt ein Gruppoid (groupoid).
Die Mächtigkeit |G| heißt auch die Ordnung von G, l.
Statt G, l schreiben wir auch kurz G, wenn die Operation l bekannt ist und wir keine
Verwechslungen erwarten.
Endliche Gruppoide lassen sich mit Verknüpfungs- oder Cayley-Tabellen1 darstellen
(→ Tabelle 1.6 S. 1-23).
Beispiel
Sei G = {a, b, c}.
l
Tabelle 6.1
Verknüpfungstabelle
eines Gruppoids
a
b
c
a
b
c
ala
alb
alc
cla
clb
clc
bla
blb
blc
Ist G, l ein Gruppoid, so heißt die Operation l und die Struktur G, l
Definition 6.2
Assoziativität
Kommutativität
Halbgruppe
assoziativ (associative)
:⇔
kommutativ (commutative)
:⇔
∀x, y, z ∈ G : (x l y) l z = x l (y l z);
∀x, y ∈ G : x l y = y l x.
Eine Halbgruppe (semigroup) ist ein assoziatives Gruppoid.
Ein kommutatives Gruppoid heißt auch abelsch (abelian).a
a
Niels Henrik Abel (1802 - 1829), genialer norwegischer Mathematiker, starb an Tuberkulose,
bevor ihn der Ruf auf eine Professur erreichte.
Ein endliches Gruppoid ist genau dann kommutativ, wenn seine Verknüpfungstabelle
symmetrisch bzgl. der Hauptdiagonalen von links oben nach rechts unten ist, d.h. wenn
man Zeilen und Spalten vertauschen kann, ohne dass sich die Tabelle ändert.
Leider ist aus einer Verknüpfungstabelle nicht direkt ersichtlich, ob die Operation assoziativ ist; dazu muss man alle Kombinationen durchprobieren.
1
Arthur Cayley (1821 - 1895), englischer Mathematiker und Jurist, arbeitete über Algebra und
Geometrie.
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Kapitel 6 - Seite 1 von 24
6-2
Definition 6.3
Verknüpfung mehrerer
Elemente
6 Algebraische Strukturen
Für ein Gruppoid G, l, n ∈ lN und Elemente x1,.., xn ∈ G sei rekursiv definiert:
x1 l ... l xn := x1
für n = 1,
x1 l ... l xn := (x1 l ... l xn−1) l xn
für n > 1.
Nach Definition 6.3 wird, falls nicht geklammert ist, von links nach rechts verknüpft.
Bei nicht assoziativen Gruppoiden kann das Verknüpfen von rechts nach links zu anderen Resultaten führen. Dagegen spielt bei assoziativen Gruppoiden die Reihenfolge der
Verknüpfung keine Rolle.
Satz 6.4
Klammerverzicht bei
Assoziativität
Sind G, l eine Halbgruppe und y ∈ G das Ergebnis einer Verknüpfung der n ∈ lN
Elemente x1,.., xn ∈ G in gegebener Anordnung, in der beliebig Klammern gesetzt
sind, so ist stets y = x1 l ... l xn.
Beweis mit vollständiger Induktion nach n.
Satz 6.5
Umordnung bei
Kommutativität
Sind G, l eine kommutative Halbgruppe und y ∈ G das Ergebnis einer Verknüpfung
der n ∈ lN Elemente x1,.., xn ∈ G in beliebiger Anordnung, so ist stets
y = x1 l ... l xn.
Beweis mit vollständiger Induktion nach n.
Definition 6.6
Neutrales Element
Eins
Monoid
p
p
Ist G, l ein Gruppoid, so heißt ein Element e ∈ G eine
∀x ∈ G : e l x = x;
Linkseins (linksneutral)
:⇔
Rechtseins (rechtsneutral)
:⇔
∀x ∈ G : x l e = x;
Eins (neutral)
:⇔
x ist eine Links- und eine Rechtseins.
Hat G, l die Eins e, so schreiben wir G, e, l. Liest man die Operation l als Addition, so entspricht e einer Null. Bei Gruppoiden liest man l aber meist als Multiplikation, sodass e als eine Eins erscheint.
Ein Monoid ist eine Halbgruppe mit einer Eins.
In einem kommutativen Gruppoid fallen die Eigenschaften Linkseins, Rechtseins und
Eins zusammen.
Ein Gruppoid kann mehrere Linkseinsen oder mehrere Rechtseinsen haben. Hat ein
Gruppoid G, l aber eine Linkseins el ∈ G und eine Rechtseins er ∈ G, so sind diese
gleich, da
el = el l er = er.
Ein Gruppoid hat also höchstens eine Eins.
Ein endliches Gruppoid hat eine
l
l
Linkseins e genau dann, wenn die Zeile von e in der Verknüpfungstabelle mit der
Kopfzeile,
Rechtseins e genau dann, wenn die Spalte von e in der Verknüpfungstabelle mit der
Frontspalte
übereinstimmt.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Definition 6.7
Null
6-3
Ist G, l ein Gruppoid, so heißt ein Element n ∈ G eine
∀x ∈ G : n l x = n;
Linksnull (linksabsorbierend)
:⇔
Rechtsnull (rechtsabsorbierend)
:⇔
∀x ∈ G : x l n = n;
Null (absorbierend)
:⇔
x ist eine Links- und eine Rechtsnull.
Hat G, l die Null n, so schreiben wir G, n, l. Die Bezeichnung Null ist gerechtfertigt, wenn die Operation l als Multiplikation gelesen wird.
In einem kommutativen Gruppoid fallen die Eigenschaften Linksnull, Rechtsnull und
Null zusammen.
Ein Gruppoid kann mehrere Linksnullen oder mehrere Rechtsnullen haben. Hat ein
Gruppoid G, l aber eine Linksnull nl ∈ G und eine Rechtsnull nr ∈ G, so sind diese
gleich, da
nl = nl l nr = nr.
Ein Gruppoid hat also höchstens eine Null.
Ein endliches Gruppoid hat eine
l
l
Linksnull n genau dann, wenn die Zeile,
Rechtsnull n genau dann, wenn die Spalte
von n in der Verknüpfungstabelle nur n enthält.
Einsen und Nullen haben die Eigenschaft x l x = x, die folgende Definition veranlasst.
Definition 6.8
Idempotentes Element
6.1.2
Definition 6.9
Gleichung
Lösung
Ist G, l ein Gruppoid, so heißt ein Element x ∈ G idempotent, wenn x l x = x.
Kürzbarkeit und Lösbarkeit
Gegeben ist ein Gruppoid G, l mit den Elementen a, b ∈ G. Gesucht ist ein x ∈ G,
das die Gleichung
xla=b
löst, d.h. eine Linkslösung dieser Gleichung; oder ein x ∈ G, das die Gleichung
alx=b
löst, d.h. eine Rechtslösung dieser Gleichung. Eine Lösung ist eine Links- oder eine
Rechtslösung einer Gleichung.
In einem kommutativen Gruppoid fallen die Eigenschaften Linkslösung, Rechtslösung
und Lösung zusammen.
Definition 6.10
Teiler
Teilbarkeit
Ist G, l ein Gruppoid mit den Elementen a, b ∈ G, so heißt a ein
die Gleichung a l x = b hat eine Rechtslösung, d.h.
∃x ∈ G : a l x = b;
Linksteiler von b
:⇔
Rechtsteiler von b
:⇔
die Gleichung x l a = b hat eine Linkslösung, d.h.
∃x ∈ G : x l a = b;
Teiler von b
:⇔
a ist ein Links- und ein Rechtsteiler von b, d.h.
∃xl, xr ∈ G : a l xr = xll a = b.
Ist a ein (Links-, Rechts-)Teiler von b, so sagt man auch: a teilt b (von links, rechts);
b ist ein Vielfaches von a; b ist durch a (von links, rechts) teilbar. b heißt (von
links, rechts) teilbar, wenn es einen (Links-, Rechts-)Teiler von b gibt.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
6-4
6 Algebraische Strukturen
In einem kommutativen Gruppoid fallen die Eigenschaften Linksteiler, Rechtsteiler
und Teiler zusammen.
Definition 6.11
Kürzbarkeit
Ein Gruppoid G, l heißt
∀a, x, y ∈ G : (a l x = a l y x = y);
linkskürzbar
:⇔
rechtskürzbar
:⇔
∀a, x, y ∈ G : (x l a = y l a x = y);
kürzbar (regulär)
:⇔
G ist links- und rechtskürzbar.
In einem kommutativen Gruppoid fallen die Eigenschaften linkskürzbar, rechtskürzbar
und kürzbar zusammen.
Korollar 6.12
Kürzbarkeit
Lemma 6.13
Kürzbarkeit
Für ein Gruppoid G, l gilt:
(1)
G ist linkskürzbar ⇔
(2)
G ist rechtskürzbar ⇔
(1)
für jedes a ∈ G ist die Abbildung G → G, x → a l x
injektiv.
für jedes a ∈ G ist die Abbildung G → G, x → x l a
injektiv.
|
|
Für ein linkskürzbares Gruppoid G, l gilt:
(a) Hat G mehr als ein Element, so hat G keine Linksnull.
(b) Ist G endlich, so ist für jedes a ∈ G die Abbildung G → G, x → a l x
bijektiv.
(c) Für alle a, b ∈ G hat die Gleichung a l x = b höchstens eine Rechtslösung x.
(d) Hat G eine Rechtseins, so ist diese das einzige idempotente Element.
Für ein rechtskürzbares Gruppoid G, l gilt:
(a) Hat G mehr als ein Element, so hat G keine Rechtsnull.
(b) Ist G endlich, so ist für jedes a ∈ G die Abbildung G → G, x → x l a
bijektiv.
(c) Für alle a, b ∈ G hat die Gleichung x l a = b höchstens eine Linkslösung x.
(d) Hat G eine Linkseins, so ist diese das einzige idempotente Element.
|
(2)
|
Beweis. (1) (a) Seien x, y ∈ G und n ∈ G eine Linksnull. Dann ist n l x = n = n l y. Da
G linkskürzbar ist, folgt x = y.
(b) Nach Korollar 6.12 ist die Abbildung injektiv. Bei Abbildungen endlicher Mengen
in sich fallen die Eigenschaften surjektiv, injektiv und bijektiv zusammen.
(c) Seien a, b, x, y ∈ G mit a l x = b und a l y = b. Da G linkskürzbar ist, folgt daraus
x = y.
(d) Seien e ∈ G eine Rechtseins und x ∈ G ein idempotentes Element. Dann gilt
x l e = x und x l x = x. Da G linkskürzbar ist, folgt x = e.
(2) zeigt man analog.
© Karlheinz Hug, Hochschule Reutlingen
p
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Definition 6.14
Lösbarkeit
Quasigruppe
6-5
Ein Gruppoid G, l heißt
∀a, b ∈ G ∃x ∈ G : x l a = b;
linkslösbar
:⇔
rechtslösbar
:⇔
∀a, b ∈ G ∃x ∈ G : a l x = b;
lösbar
:⇔
G ist links- und rechtslösbar;
eindeutig linkslösbar
:⇔
∀a, b ∈ G ∃1x ∈ G : x l a = b;
eindeutig rechtslösbar
:⇔
∀a, b ∈ G ∃1x ∈ G : a l x = b;
eindeutig lösbar
:⇔
G ist eindeutig links- und eindeutig rechtslösbar.
Eine Quasigruppe ist ein eindeutig lösbares Gruppoid.
In einem kommutativen Gruppoid fallen die Eigenschaften (eindeutig) linkslösbar,
(eindeutig) rechtslösbar und (eindeutig) lösbar zusammen.
Korollar 6.15
Lösbarkeit
Für ein Gruppoid G, l gilt:
(1)
⇔
für jedes a ∈ G ist die Abbildung G → G, x → x l a surjektiv
⇔ jedes x ∈ G ist Rechtsteiler von jedem y ∈ G.
G ist rechtslösbar
⇔
für jedes a ∈ G ist die Abbildung G → G, x → a l x surjektiv
⇔ jedes x ∈ G ist Linksteiler von jedem y ∈ G.
G ist lösbar
⇔ jedes x ∈ G ist Teiler von jedem y ∈ G.
G ist eindeutig linkslösbar ⇔
für jedes a ∈ G ist die Abbildung G → G, x → x l a bijektiv.
G ist eindeutig rechtslösbar ⇔
für jedes a ∈ G ist die Abbildung G → G, x → a l x bijektiv.
G ist linkslösbar
|
(2)
|
(3)
(4)
|
(5)
|
Direkt aus Lemma 6.13 folgt:
Korollar 6.16
Endlichkeit,
Kürzbarkeit und
Lösbarkei
Satz 6.17
Endlichkeit und
Lösbarkeit
Für ein endliches Gruppoid G, l gilt:
(1)
(2)
(3)
G ist linkskürzbar
G ist rechtskürzbar
G ist kürzbar
G ist eindeutig rechtslösbar.
G ist eindeutig linkslösbar.
G ist eindeutig lösbar.
Für ein endliches Gruppoid G, l gilt:
(1)
(2)
(3)
G ist linkslösbar
G ist rechtslösbar
G ist lösbar
G ist eindeutig linkslösbar.
G ist eindeutig rechtslösbar.
G ist eindeutig lösbar.
Beweis. (1) Da G endlich ist, ist für jedes a ∈ G die nach Korollar 6.15 (1) surjektive
Abbildung G → G, x → x l a sogar bijektiv. Also ist G nach Korollar 6.15 (4) eindeutig linkslösbar.
|
p
(2) zeigt man analog. (3) folgt aus (1) und (2).
Ein endliches Gruppoid ist
l
l
l
linkslösbar genau dann, wenn jede Spalte,
rechtslösbar genau dann, wenn jede Zeile,
lösbar genau dann, wenn jede Spalte und jede Zeile
der Verknüpfungstabelle jedes Element genau einmal enthält.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
6-6
6 Algebraische Strukturen
Verknüpfungstabellen endlicher Quasigruppen heißen auch lateinische Quadrate.
Satz 6.18
Kürzbarkeit und
Lösbarkeit
Für ein Gruppoid G, l gilt:
(1)
(2)
(3)
G ist linkskürzbar und rechtslösbar
G ist rechtskürzbar und linkslösbar
G ist kürzbar und lösbar
⇔
⇔
⇔
G ist eindeutig rechtslösbar.
G ist eindeutig linkslösbar.
G ist eindeutig lösbar.
Beweis. (1) folgt aus den Korollaren 6.12 (1), 6.15 (2) und (5).
(2) folgt aus den Korollaren 6.12 (2), 6.15 (1) und (4).
p
(3) folgt aus (1) und (2).
Satz 6.19
Lösbarkeit und Eins
Für eine nicht leere Halbgruppe G, l gilt:
(1)
(2)
(3)
G ist eindeutig linkslösbar
G ist eindeutig rechtslösbar
G ist eindeutig lösbar
G hat eine Rechtseins.
G hat eine Linkseins.
G hat eine Eins.
Beweis. (1) Zu y ∈ G gibt es genau ein e ∈ G mit e l y = y. Da G assoziativ ist, folgt
(e l e) l y = e l (e l y) = e l y. Da G nach Satz 6.18 (2) rechtskürzbar ist, folgt
e l e = e. Da G assoziativ ist, gilt für x ∈ G: (x l e) l e = x l (e l e) = x l e. Da G
rechtskürzbar ist, folgt x l e = x. Also ist e eine Rechtseins.
p
(2) zeigt man analog. (3) folgt aus (1) und (2).
6.1.3
Definition 6.20
Inverses Element
Invertierbarkeit
Gruppe
Mit Invertierbarkeit zur Gruppe
Sind G, l ein Gruppoid mit einer Links- oder Rechtseins e ∈ G und x ∈ G ein Element, so heißt ein Element x−1 ∈ G
linksinvers zu x bzgl. e
:⇔
x−1 l x = e;
rechtsinvers zu x bzgl. e
:⇔
x l x−1 = e;
invers zu x bzgl. e
:⇔
x−1 ist links- und rechtsinvers zu x bzgl. e.
x heißt (links-, rechts-)invertierbar bzgl. e, wenn es zu x ein (links-, rechts-)inverses
Element bzgl. e gibt.
G, l heißt (links-, rechts-)invertierbar bzgl. e, wenn alle x ∈ G (links-, rechts-)
invertierbar bzgl. e sind.
Ist G, l invertierbar bzgl. e, so ist
.−1 : G → G, x → x−1
|
eine einstellige Operation und wir schreiben auch G, e, −1, l.
Eine Gruppe ist ein invertierbares Monoid.
In einem kommutativen Gruppoid mit Eins fallen die Eigenschaften linksinvers, rechtsinvers und invers zusammen.
Ein Element eines Gruppoids kann mehrere linksinverse oder mehrere rechtsinverse
Elemente bzgl. einer Links- oder Rechtseins haben.
Ein Element eines Gruppoids kann links- oder rechtsinverse Elemente bzgl. mehrerer
Links- oder Rechtseinsen haben.
Ein Gruppoid kann bzgl. mehrerer Links- oder Rechtseinsen (links-, rechts-)invertierbar sein.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Satz 6.21
Inverse Elemente
6-7
Für ein Gruppoid G, l mit einer Links- oder Rechtseins e ∈ G gilt:
(1)
Hat x ∈ G ein (links-, rechts-)inverses Element x−1 ∈ G bzgl. e, so hat x−1 ein
(rechts-, links-)inverses Element bzgl. e, nämlich
(x−1)−1 = x.
Für eine Halbgruppe G, l mit einer Links- oder Rechtseins e ∈ G gilt:
(2)
Haben x, y ∈ G die (links-, rechts-)inversen Elemente x−1, y−1 ∈ G bzgl. e, so
hat auch x l y ein (links-, rechts-)inverses Element bzgl. e, nämlich
(x l y )−1 = y−1 l x−1.
Für ein Monoid G, e, l gilt:
(3)
Hat x ∈ G ein linksinverses Element x−1l ∈ G und ein rechtsinverses Element
x−1r ∈ G, so sind diese gleich:
x−1l = x−1r.
(4)
Jedes x ∈ G hat höchstens ein inverses Element x−1 ∈ G.
Beweis. (1) folgt direkt aus der Definition.
(2) Linksinversion: Da G assoziativ ist, gilt
(y−1 l x−1) l (x l y) = y−1 l (x−1 l x) l y = y−1 l e l y = y−1 l y = e.
Dabei wird e mit y−1 verknüpft, wenn es eine Rechtseins, mit y, wenn es eine Linkseins
ist. Analog zeigt man die Rechtsinversion:
(x l y) l (y−1 l x−1) = x l (y l y−1) l x−1 = x l e l x−1 = x l x−1 = e.
(3) Da G assoziativ ist, gilt
x−1l = x−1l l e = x−1l l (x l x−1r) = (x−1l l x) l x−1r = e l x−1r = x−1r.
p
(4) folgt aus (3).
Beispiele
Triviales
(1)
(2)
(3)
∅, ∅ ist eine kommutative, kürzbare Quasigruppe, aber kein Monoid, da sie
keine Eins hat.
{a}, a l a = a ist eine kommutative Gruppe mit der Eins a und der Null a. Sie
ist die einzige Gruppe mit nur einem Element.
G, l mit |G| > 1 und l := π1, d.h. die Operation ist die Projektion auf die erste
Komponente:
x l y := π1(x, y) = x für x, y ∈ G,
ist eine rechtskürzbare, eindeutig linkslösbare Halbgruppe; sie heißt Linksnullhalbgruppe. Jedes x ∈ G ist eine Linksnull. Jedes y ∈ G ist eine Rechtseins. G
hat keine Rechtsnull und keine Linkseins. Ist e ∈ G eine Rechtseins, so gilt für
jedes y ∈ G: y ist rechtsinvers zu e bzgl. e und e ist linksinvers zu y bzgl. e. Also
ist G linksinvertierbar bzgl. jedem e ∈ G. G ist aber bzgl. keinem e ∈ G rechtsinvertierbar, da bzgl. e nur e rechtsinvertierbar ist.
Tabelle 6.2
Verknüpfungstabelle
der
Linksnullhalbgruppe
mit drei Elementen
9.8.04
l
a
b
c
a
a
a
a
b
b
b
b
c
c
c
c
© Karlheinz Hug, Hochschule Reutlingen
6-8
6 Algebraische Strukturen
Potenzmengen
(4)
(5)
Für eine beliebige Menge M sind P(M), M, ∩ und P(M), ∅, ∪ kommutative
Monoide mit den neutralen Elementen („Einsen“) M bzw. ∅.
Für eine beliebige Menge M ist P(M), ∅, idP(M), ∆ eine kommutative Gruppe
mit dem neutralen Element („Eins“) ∅, wobei jede Teilmenge N ⊆ M zu sich
selbst invers ist.
Aussagenlogik
(6)
(7)
1, ∧ und lB, 0, ∨ sind kommutative Monoide mit den neutralen Elementen
(„Einsen“) 1 bzw. 0.
lB , 0, id , <≠> ist eine kommutative Gruppe mit dem neutralen Element
(„Eins“) 0, wobei jedes x ∈ lB zu sich selbst invers ist.
lB ,
lB
Relationen und Abbildungen
P(M2), idM, ° ist nach Satz 4.16 S. 4-13 ein Monoid mit der Identität als Eins.
(8)
(9)
id M, ° ist nach Satz 4.20 S. 4-17 ein Monoid. Für jedes c ∈ M ist die konstante Abbildung
M → M, x → c
eine Linksnull. Hat M mehr als ein Element, so gibt es keine Rechtsnull.
M
M,
|
(10)
{f
∈ MM | f bijektiv}, idM, −1, ° ist nach Satz 4.21 S. 4-17 eine Gruppe.
Zahlenmengen
0, + ist ein kommutatives, kürzbares Monoid mit dem neutralen Element
(„Eins“) 0.
(12) lN0, 0, 1, ∗, , 0, 1, ∗, , 0, 1, ∗, , 0, 1, ∗, , 0, 1, ∗ sind kommutative
Monoide mit der Null 0 und der Eins 1.
(13) lN, 1, ∗ und \ {0}, 1, ∗ sind kommutative, kürzbare Monoide mit der Eins
1.
(14) , 0, −, +, , 0, −, +, , 0, −, +, , 0, −, + sind kommutative Gruppen mit
dem neutralen Element („Eins“) 0. Das inverse Element zu x ist −x.
(11)
lN 0 ,
'
(15)
'
3
!
'
3
!
3 \ {0}, 1, −1, ∗ , ! \ {0}, 1, −1, ∗ , \ {0}, 1, −1, ∗
sind kommutative Grup-
pen mit der Eins 1. Das inverse Element zu x ist 1/x.
Quotientenmengen
Für n ∈ lN0 sei
(16)
'n das in Satz 5.34 S. 5-8 definierte System der Restklassen modulo n.
'n, [0]≡n, [1]≡n, ∗n
ist ein kommutatives Monoid mit der Null [0]≡n und der
Eins [1]≡n.
(17)
'n \ [0]≡n, [1]≡n, ∗n
ist ein kommutatives, kürzbares Monoid mit der Eins
[1]≡n.
(18)
'n, [0]≡n, −n, +n
ist eine kommutative Gruppe mit dem neutralen Element
(„Eins“) [0]≡n. Das inverse Element zu [x]≡n ist [−x]≡n.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Satz 6.22
Charakterisierung von
Gruppen
6-9
Für ein Gruppoid G, l sind folgende Aussagen äquivalent:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
G ist eine Gruppe, d.h. ist assoziativ, hat eine Eins und ist invertierbar.
G ist assoziativ, hat eine Linkseins e und ist linksinvertierbar bzgl. e.
G ist assoziativ, hat eine Rechtseins e und ist rechtsinvertierbar bzgl. e.
G ist nicht leer, assoziativ und eindeutig lösbar.
G ist nicht leer, assoziativ, kürzbar und lösbar.
G ist nicht leer, assoziativ und lösbar.
G ist assoziativ, hat eine Eins und ist linkslösbar.
G ist assoziativ, hat eine Eins und ist rechtslösbar.
Beweis. (1) ((2) ∧ (3)): klar.
(2) (1): Seien e ∈ G eine Linkseins und x ∈ G beliebig. Dann gibt es zu x ein linksinverses x−1 mit x−1 l x = e und zu x−1 ein linksinverses (x−1)−1 mit (x−1)−1 l x−1 = e.
Da G assoziativ ist, gilt
e = (x−1)−1 l (e l x−1) = (x−1)−1 l ((x−1 l x) l x−1) = ((x−1)−1 l x−1) l (x l x−1) =
e l (x l x−1) = x l x−1.
Damit gilt:
x l e = x l (x−1 l x) = (x l x−1) l x = e l x = x.
Also ist e auch eine Rechtseins und x−1 rechtsinvers zu x.
(1): zeigt man analog.
(1) (5): Seien e ∈ G die Eins und x, y ∈ G beliebig.
(3)
Linkskürzbarbeit: Sei a ∈ G mit a l x = a l y. Da G invertierbar und assoziativ ist, gilt:
x = e l x = (a−1 l a) l x = a−1 l (a l x) = a−1 l (a l y) = (a−1 l a) l y = e l y = y.
Linkslösbarkeit: x := b l a−1 ist eine Lösung von x l a = b, da
x l a = (b l a−1) l a = b l (a−1 l a) = b l e = b.
Die Rechtskürzbarkeit und die Rechtslösbarkeit zeigt man analog.
(4) ⇔ (5): Satz 6.18 (3).
(6): klar.
(4) ((7) ∧ (8)): Satz 6.19 (3).
(6) ((7) ∧ (8)): Da G ≠ ∅, gibt es ein x ∈ G. Da G lösbar ist, gibt es dazu ein e ∈ G
(5)
mit e l x = x und dazu ein y ∈ G mit x l y = e. Da G assoziativ ist, gilt:
e l e = e l (x l y) = (e l x) l y = x l y = e.
(Also ist e idempotent.) Sei u ∈ G beliebig. Da G lösbar ist, gibt es dazu v, w ∈ G mit
e l v = u und w l e = u. Da G assoziativ ist, gilt:
und
e l u = e l (e l v) = (e l e) l v = e l v = u
u l e = (w l e) l e = w l (e l e) = w l e = u.
Also ist e eine Links- und Rechtseins, also eine Eins.
(8) (3): zeigt man analog.
(2): Seien e ∈ G die Eins und x ∈ G beliebig. Da G linkslösbar ist, gibt es eine
(7)
Linkslösung y ∈ G mit y l x = e. Dieses y ist linksinvers zu x.
9.8.04
p
© Karlheinz Hug, Hochschule Reutlingen
6 - 10
6 Algebraische Strukturen
Die Aussage (2) oder (3) eignet sich gut, um zu beweisen, dass ein Gruppoid eine
Gruppe ist, weil dazu relativ wenig zu zeigen ist.
Satz 6.23
Charakterisierung
endlicher Gruppen
Für ein endliche Halbgruppe G, l sind folgende Aussagen äquivalent:
(1)
(2)
(3)
G ist eine Gruppe.
G ist nicht leer und kürzbar.
G hat eine Eins und sonst keine idempotenten Elemente.
Beweis. (1) (2): Satz 6.22.
(2) (1): Nach Korollar 6.16 (3) ist G eindeutig lösbar, also nach Satz 6.22 eine
Gruppe.
(1) (3): Nach Satz 6.22 ist G kürzbar und hat nach Lemma 6.13 (d) nur die Eins als
idempotentes Element.
(3) (1): Der Beweis beruht auf Eigenschaften zyklischer Unterhalbgruppen, die hier
nicht bereitstehen. Siehe beispielsweise [29].
p
6.1.4
Unterstrukturen und umfassende Strukturen
Ähnlich wie bei Relationen schränken wir einerseits algebraische Strukturen auf Teilmengen der Grundmenge ein, andererseits erweitern wir die Grundmenge und setzen
die Struktur darauf fort.
Definition 6.24
Abgeschlossenheit
Unterstruktur
Sei G, l ein Gruppoid.
Eine Teilmenge U ⊆ G heißt abgeschlossen bzgl. l, wenn gilt:
∀x, y ∈ U : x l y ∈ U.
Für eine abgeschlossene Teilmenge U ⊆ G ist U, l|U2 ein Gruppoid; es heißt ein
Untergruppoid von G. Wir schreiben dafür auch kurz U, l. Das System aller
Untergruppoide von G ist
U(G) := {U ⊆ G | U, l ist Untergruppoid von G}.
Ist G eine Halbgruppe, so ist ein Untergruppoid U, l eine Halbgruppe; sie heißt
eine Unterhalbgruppe von G. Das System aller Unterhalbgruppen von G ist
H(G) := {U ⊆ G | U, l ist Unterhalbgruppe von G}.
Ist G ein Monoid, so ist ein Untergruppoid U, l eine Unterhalbgruppe von G.
Haben G und U dieselbe Eins, so heißt U, l ein Untermonoid von G. Das System
aller Untermonoide von G ist
M(G) := {U ⊆ G | U, l ist Untermonoid von G}.
Ist G eine Gruppe, so ist ein Untergruppoid U, l eine Unterhalbgruppe von G. Ist
l eine Gruppe, so heißt sie eine Untergruppe von G. Das System aller Untergruppen von G ist
U,
G(G) := {U ⊆ G | U, l ist Untergruppe von G}.
Nicht jede Teilmenge eines Gruppoids ist ein Untergruppoid, weil die Operation aus
der Teilmenge „herausführen“ kann. Ein Untergruppoid „erbt“ aber generell die Eigenschaften Assoziativität, Kommutativität und Kürzbarkeit von seiner Grundstruktur.
Dagegen vererben sich Einsen und die Eigenschaften Lösbarkeit und Invertierbarkeit
nicht generell. Deshalb sind Untermonoide spezielle Unterhalbgruppen von Monoiden
und Untergruppen spezielle Unterhalbgruppen von Gruppen. Eine Unterhalbgruppe mit
einer Eins ist nicht notwendig ein Untermonoid.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
6 - 11
Sind G, e, l eine Gruppe und U eine Untergruppe mit der Eins eU, so gilt
e = eU l eU−1 = (eU l eU) l eU−1 = eU l (eU l eU−1) = eU l e = eU.
Somit hat U dieselbe Eins wie G. Wegen der Eindeutigkeit des Inversen hat x ∈ U auch
dasselbe Inverse x−1 in U wie in G.
Auf den Systemen der Unterstrukturen ist die Teilmengenrelation eine Halbordnung.
Ist G ein Gruppoid oder eine Halbgruppe, so sind ∅ und G triviale Untergruppoide
bzw. Unterhalbgruppen von G, und zwar ist ∅ die kleinste und G die größte der jeweiligen Unterstrukturen. ∅ kann kein Untermonoid sein, weil es keine Eins enthält. Ist G
ein Monoid oder eine Gruppe mit der Eins e, so sind {e} und G triviale Untermonoide
bzw. Untergruppen von G, und zwar ist {e} die kleinste und G die größte der jeweiligen
Unterstrukturen.
Beispiele
Für Mengen M, N mit N ⊆ M ist P(N), N, ∩ kein Untermonoid von
P(M), M, ∩ , weil es eine andere Eins hat. P(N), ∅, ∪ ist ein Untermonoid von
P(M), ∅, ∪.
lN 0 , 0, + ist ein Untermonoid von , 0, −, + , aber keine Untergruppe, weil es
keine Gruppe ist.
(1)
'
(2)
Erweiterung
' \ {0}, 1, ∗
(3)
ist ein Untermonoid von
gruppe, weil es keine Gruppe ist.
(4)
3 \ {0}, 1, −1, ∗ , aber keine Unter-
3 \ {0}, 1, −1, ∗ ist eine Untergruppe von ! \ {0}, 1, −1, ∗ .
! \ {0}, 1, −1, ∗ ist eine Untergruppe von \ {0}, 1, −1, ∗ .
(5) Jedes Gruppoid G, l lässt sich zu einem Gruppoid G1, 1,
Man wählt 1 ∉ G, definiert
l mit Eins 1 erweitern.
G1 := G ∪ {1},
und setzt die Operation l durch
1 l x := x l 1 := x
für x ∈ G1 auf G12 fort. Ist G, l eine Halbgruppe, so ist G1, 1, l ein Monoid, da
(x l y) l z = x l (y l z), wenn x, y oder z gleich 1 ist. Hat G, l schon eine (Links-,
Rechts-)Eins e ∈ G, so verliert e in G1, 1, l diese Eigenschaft, da 1 l e = e l 1 = e.
6.1.5
Mengenoperationen und Hüllen
Ähnlich wie bei Relationen betrachten wir Durchschnitte, Vereinigungen und Hüllen
von Strukturen.
Satz 6.25
Durchschnittsstrukturen
(1)
(2)
Ist G, l ein Gruppoid und V ⊆ U(G) ein System von Untergruppoiden, so ist
∩V ein Untergruppoid von G.
Ist G,
so ist
l eine Halbgruppe und V ⊆ H(G) ein System von Unterhalbgruppen,
∩V eine Unterhalbgruppe von G.
l ein Monoid und V ⊆ M(G) ein System von Untermonoiden, so ist
(3)
Ist G,
(4)
Ist G, l eine Gruppe und V ⊆ G(G) ein System von Untergruppen, so ist
eine Untergruppe von G.
∩V ein Untermonoid von G.
∩V
Satz 6.25 besagt, dass U(G), H(G), M(G) und G(G) durchschnittsstabile Systeme sind.
Deshalb gibt es nach Korollar 4.96 S. 4-72 jeweils zu jeder Teilmenge M ⊆ G eine
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
6 - 12
6 Algebraische Strukturen
umhüllende Struktur, d.h. eine kleinste Struktur, die M umfasst, nämlich den Durchschnitt aller M umfassenden Strukturen. Diese Struktur heißt üblicherweise von M
erzeugt.
Definition 6.26
Erzeugte Struktur
Erzeugendensystem
Sind G, l ein Gruppoid und M ⊆ G eine Teilmenge, so heißt
hU(M) :=
∩{U ∈ U(G) | M ⊆ U}
das von M erzeugte Untergruppoid.
Sind G, l eine Halbgruppe und M ⊆ G eine Teilmenge, so heißt
hH(M) :=
∩{U ∈ H(G) | M ⊆ U}
die von M erzeugte Unterhalbgruppe.
Sind G, l ein Monoid und M ⊆ G eine Teilmenge, so heißt
hM(M) :=
∩{U ∈ M(G) | M ⊆ U}
das von M erzeugte Untermonoid.
Sind G, l eine Gruppe und M ⊆ G eine Teilmenge, so heißt
hG(M) :=
∩{U ∈ G(G) | M ⊆ U}
die von M erzeugte Untergruppe.
M heißt jeweils ein Erzeugendensystem von hX(M) für X ∈ {U, H, M, G}.
hX(M) heißt
endlich erzeugt
:⇔
|M| < ℵ0;
zyklisch
:⇔
|M| = 1.
hU, hH, hM und hG, sind Hüllenoperatoren auf G im Sinne von Definition 4.97 S. 4-72.
Die Vereinigung von Gruppoiden, Halbgruppen, Monoiden oder Gruppen hat i.A. nicht
dieselbe Struktur. Deshalb bildet man die Hüllen von Vereinigungen.
Definition 6.27
Verbindung
Sind G, l ein Gruppoid, eine Halbgruppe, ein Monoid oder eine Gruppe und
U, V ⊆ G Unterstrukturen, so heißt die von der Vereinigung von U und V entsprechend erzeugte Struktur,
U
½ V := hX(U ∪ V)
für X ∈ {U, H, M, G}
die (Gruppoid-, Halbgruppen-, Monoid-, Gruppen-)Verbindung von U und V.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
6.1.6
6 - 13
Homomorphismen
Ähnlich wie bei relationalen Strukturen interessieren Abbildungen, die sich mit algebraischen Strukturen vertragen.
Definition 6.28
Morphismen
Isomorphie
Sind G,
scher)
lG, H, lH Gruppoide, so heißt eine Abbildung f : G → H ein (algebrai-
Homomorphismus (mit lG und lH verträglich, strukturerhaltend)
:⇔ ∀x, y ∈ G : f(x lG y) = f(x) lH f(y);
Isomorphismus
:⇔
f ist ein bijektiver Homomorphismus;
Automorphismus
:⇔
f ist ein Isomorphismus und G, lG = H, lH.
Je nach den algebraischen Strukturen von G, lG und H,
Gruppoid-, Halbgruppen- oder Gruppenmorphismen.
lH sprechen wir
von
Sind G, eG, lG und H, eH, lH Monoide und ist f : G, lG → H, lH ein Halbgruppenhomomorphismus mit f(eG) = eH, so heißt f Monoidhomomorphismus.
Den Bezug eines Morphismus zu den Strukturen verdeutlicht die Notation
f : G, lG → H, lH.
Die Strukturen G, lG und H, lH heißen (algebraisch) isomorph,
G,
lG ≅ H, lH,
wenn es einen Isomorphismus f : G, lG → H, lH gibt.
Eine Abbildung f : G, lG → H, lH ist genau dann ein Homomorphismus, wenn das
folgende Diagramm kommutiert.
Bild 6.1
Homomorphiediagramm
G2
f×f
H2
lG
lH
G
f
H
Es ist egal, ob man erst die Operanden in G verknüpft und dann das Ergebnis mit f
abbildet oder erst beide Operanden mit f abbildet und dann ihre Bilder in H verknüpft.
Während wir bei relationalen Isomorphismen fordern müssen, dass auch die Umkehrabbildung ein Homomorphismus ist, erhalten wir diese Eigenschaft bei algebraischen
Isomorphismen gratis.
Satz 6.29
Bijektive
Homomorphismen
Sind G, lG, H, lH Gruppoide und f : G, lG → H, lH ein bijektiver Homomor-
phismus, so ist auch die Umkehrabbildung f−1 : H,
Homomorphismus.
l H →
G,
lG ein bijektiver
Beweis. Da f surjektiv ist, gibt es zu x, y ∈ H die Urbilder v := f−1(x), w := f−1(y) ∈ G.
Mit f(v) = f(f−1(x)) = (f ° f−1)(x) = x und f(w) = f(f−1(y)) = (f ° f−1)(y) = y gilt:
f−1(x lH y) = f−1(f(v) lH f(w)) = f−1(f(v lG w)) = (f ° f−1)(v lG w) = v lG w =
f−1(x) lG f−1(y).
Beispiele
9.8.04
(1)
Ist G, l eine Struktur, so ist die Identität idG ein Automorphismus.
p
© Karlheinz Hug, Hochschule Reutlingen
6 - 14
6 Algebraische Strukturen
(2)
Ist G, l ein Gruppoid (mit Eins), so ist G, l → P(G), l, x → {x} ein injektiver Homomorphismus.
|
Die Komposition von zwei Homo-, Iso- oder Automorphismen ist wieder ein Homo-,
Iso- bzw. Automorphismus.
Auf einem System gleichartiger Strukturen ist die Isomorphie eine Äquivalenzrelation.
Satz 6.30
Injektion eines
Untergruppoids
Sind G, l ein Gruppoid und M ⊆ G eine Teilmenge, so ist M, l|M2 ein Untergruppoid von G genau dann, wenn M, l|M2 → G, l, x → x ein Homomorphismus ist.
|
F
Beweis. Siehe beispielsweise [13].
6.1.7
Komplexprodukt und Komplexinverse
Aus Operationen mit Elementen entstehen Operationen mit Mengen.
Definition 6.31
Komplexprodukt
Sind G, l ein Gruppoid und M, N ⊆ G Teilmengen, so heißt die durch
M l N := {x l y | x ∈ M, y ∈ N} ⊆ G
definierte Teilmenge das Komplexprodukt von M und N. Ist keine Mehrdeutigkeit
zu erwarten, so kürzen wir ab:
MN := M l N.
Für x, y ∈ G kürzen wir weiter ab:
xN := {x}N,
My := M{y}.
Ist G, l ein Gruppoid, so ist auch P(G), l mit dem Komplexprodukt l ein Gruppoid. Die Assoziativität überträgt sich. Ist G, l eine Halbgruppe, so auch P(G), l.
Hat G, l die (Links-, Rechts-)Eins e, so hat P(G), l die (Links-, Rechts-)Eins {e}.
Beispiele
(1)
(2)
Das Monoid lN, 1, ∗ umfasst die Menge der geraden natürlichen Zahlen, die
wir als Komplexprodukt schreiben können:
2lN := 2 ∗ lN = {2 ∗ n | n ∈ lN}.
Im Monoid , 0, 1, ∗ ist die Menge der Vielfachen von n ∈ lN das Komplexprodukt
n := n ∗ = {n ∗ z | z ∈ }.
n , 0, + ist eine Untergruppe von , 0, +. Nach 5.2.3 S. 5-5 ist n
gleich
der Menge der durch n teilbaren Zahlen, also der Nachbereich von n zur Teiltrelation |, d.h.
n = n|.
'
'
'
'
'
'
'
'
Definition 6.32
Komplexinverse
Sind G, l eine Gruppe und M ⊆ G eine Teilmenge, so heißt die durch
Ml−1 := {x−1 | x ∈ M} ⊆ G
definierte Teilmenge das Komplexinverse von M. Ist keine Mehrdeutigkeit zu erwarten, so kürzen wir ab:
M−1 := Ml−1.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Satz 6.33
Rechenregeln für
Komplexprodukt und
Komplexinverse
6 - 15
Für ein Gruppoid G, l und Teilmengen L, M, M´, N, N´ ⊆ G gilt:
(1)
(2)
(3)
(4)
(5)
G ist Halbgruppe
(L l M) l N = L l (M l N).
∅ l M = M l ∅ = ∅.
G ist Monoid mit Eins e
{e} l M = M l {e} = M.
M l N ⊆ M´ l N.
M ⊆ M´
N ⊆ N´
M l N ⊆ M l N´.
(M ∪ M´) l N = (M l N) ∪ (M´ l N).
M l (N ∪ N´) = (M l N) ∪ (M l N´).
∪
M k
k ∈ K
l ∪ N i =
i ∈ I
∪
i ∈ I, k ∈ K
Assoziativität
Nullelement
Einselement
Monotonie
Distributivität
(Mk l Ni).
Ist G, e, l eine Gruppe, so gilt zudem:
(6)
(M−1)−1 = M.
(7)
M⊆N
(8)
(M l N)−1 = N−1 l M−1.
(9)
Involution
M−1 ⊆ N−1.
Monotonie
Inverses Element
M l M−1 ⊇ {e}.
(10) M l M−1 = {e}
⇔
|M| = 1.
Vergleichen Sie diesen Satz mit Teilen von Satz 4.16 S. 4-13 sowie Satz 4.1 S. 4-3!
Satz 6.34
Charakterisierung von
Untergruppen
Für eine Gruppe G,
lent:
(1)
(2)
(3)
6.1.8
l und eine Teilmenge U ⊆ G sind folgende Aussagen äquiva-
l ist eine Untergruppe von G.
∀x, y ∈ U : x l y−1 ∈ U.
U l U−1 ⊆ U.
U,
Potenzen
Mehrfaches Verknüpfen - multiplikativ betrachtet - bedeutet Potenzieren.
Definition 6.35
Potenz eines Elements
Ist G, l ein Gruppoid, so ist für n ∈ lN die n-te Potenz eines Elements x ∈ G rekursiv definiert durch das n-fache Produkt von x mit sich:
x1 := x,
x2 := x l x,
xn := xn−1 l x
für n > 1.
Hat G, l die Eins e ∈ G, so definieren wir:
x0 := e.
Ist G, l eine Gruppe, so definieren wir:
x−n := (x−1)n
für n ∈ lN.
Nach Definition 6.35 wird beim Potenzieren von links nach rechts verknüpft. Bei nicht
assoziativen Gruppoiden kann das Verknüpfen von rechts nach links zu anderen Resultaten führen. Wir verwenden Potenzen im Folgenden aber meist bei Halbgruppen.
Wegen der Assoziativität spielt die Reihenfolge der Verknüpfung dann keine Rolle.
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
6 - 16
6 Algebraische Strukturen
Für ein Gruppoid G, l und ein Element x ∈ G gilt:
⇔
x ist idempotent
∀n ∈ lN : xn = x.
„⇐“ ist klar. „“ zeigen wir mit vollständiger Induktion: Offenbar gilt x2 = x1 = x. Aus
xn = x folgt xn+1 = xn l x = x l x = x2 = x. Also gilt xn = x für alle n ∈ lN.
Satz 6.36
Rechenregeln für
Potenzen eines
Elements
Definition 6.37
Potenz einer Menge
Für eine Halbgruppe, ein Monoid oder eine Gruppe G,
m, n ∈ lN, lN0 bzw. gilt:
'
(1)
xm l xn = xm+n.
(2)
(xm)n = xm∗n.
(3)
Ist G kommutativ, so gilt:
l, Elemente x, y ∈ G und
(x l y)n = xn l yn.
Ist G, l ein Gruppoid, so ist für n ∈ lN die n-te Potenz einer Teilmenge M ⊆ G
rekursiv definiert durch das n-fache Komplexprodukt von M mit sich:
Ml1 := M,
Ml2 := M l M,
Mln := Mln−1 l M
M+ :=
∪
M
•n
für n > 1,
.
n ∈ lN
Hat G, l die Eins e ∈ G, so definieren wir:
Ml0 := {e},
M∗ := Ml0 ∪ M+ =
∪
M
•n
.
n ∈ lN0
Sind keine Verwechslungen zu erwarten (z.B. mit dem n-fachen kartesischen Produkt
von M), so kürzen wir ab:
Mn := Mln
für n ∈ lN0.
Die Bemerkung zu Definition 6.35 gilt analog: Beim Potenzieren wird von links nach
rechts verknüpft. Während bei nicht assoziativen Gruppoiden das Verknüpfen von
rechts nach links andere Resultate liefern kann, ist die Reihenfolge bei den meist
betrachteten Halbgruppen belanglos.
Korollar 6.38
Charakterisierung von
Untergruppoiden
Für ein Gruppoid G, l und eine Teilmenge U ⊆ G sind folgende Aussagen äquivalent:
(1)
U ist abgeschlossen bzgl. l, d.h. U, l ist ein Untergruppoid von G.
(2)
Ul2 ⊆ U.
(3)
∀n ∈ lN : Uln ⊆ U.
(4)
U+ ⊆ U.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
Satz 6.39
Rechenregeln für
Potenzen einer Menge
Für eine Halbgruppe oder ein Monoid G,
bzw. lN0 gilt:
(1)
Satz 6.40
Hüllen und Potenzen
6 - 17
l, Teilmengen M, N ⊆ G und m, n ∈
lN
Mlm l Mln = M lm+n.
(2)
(Mlm)ln = Mlm∗n.
(3)
Ist G kommutativ, so gilt:
(1)
Für eine Halbgruppe G, l ist die von einer Teilmenge M ⊆ G erzeugte Unterhalbgruppe gleich der Vereinigung der Potenzen von M:
(M l N)ln = Mln l Nln.
hH(M) = M +.
(2)
Für ein Monoid G, l ist das von einer Teilmenge M ⊆ G erzeugte Untermonoid gleich der Vereinigung der Potenzen von M:
hM(M) = M∗.
(3)
Für eine Gruppe G, l ist die von einer Teilmenge M ⊆ G erzeugte Untergruppe gleich der Vereinigung der Potenzen von M ∪ M−1:
hG(M) = (M ∪ M−1)∗.
Beispiele
(1)
(2)
lN ,
+ ist eine kommutative Halbgruppe. Wegen
{1} + = {1} ∪ {1 + 1} ∪ {1 + 1 + 1} ∪ ... = {1, 2, 3,...} = lN
ist lN, + zyklisch.
Die geraden natürlichen Zahlen 2lN, + bilden eine Unterhalbgruppe von lN, +.
Auch sie ist wegen
{2} + = {2} ∪ {2 + 2} ∪ {2 + 2 + 2} ∪ ... = {2, 4, 6,...} = 2 lN
zyklisch. Die Abbildung lN → 2 lN, n → 2 ∗ n ist bijektiv und wegen 2 ∗ (m + n)
= 2 ∗ m + 2 ∗ n ein Isomorphismus. Also sind lN, + und 2lN, + isomorph.
Beispiel (2) illustriert eine allgemeine Aussage:
Jede unendliche zyklische Halbgruppe ist isomorph zu lN, +.
Die ganzen Zahlen , + bilden wegen
|
(3)
(4)
'
hG({1}) = hG({−1}) = {1, −1}∗ =
(5)
'
eine unendliche zyklische Gruppe, die aus 1 oder −1 erzeugt wird.
Die kommutative Gruppe n, +n der Restklassen modulo n ∈ lN ist wegen
'
hG({[1]}) = {[1]}∗ = {[1]} ∪ {[1] +n [1]} ∪ {[1] +n [1] +n [1]} ∪ ... =
{[0], [1],.., [n − 1]} = n
'
eine endliche zyklische Gruppe, die aus [1] erzeugt wird.
(6)
9.8.04
Zu jeder endlichen zyklischen Halbgruppe {x}+ gibt es m, n ∈ lN mit
m < n,
{x}+ = {x, x2, x3,.., xn−1},
|{x}+| = n − 1,
x n = x m.
Sie hat einen „einmaligen Anfang“ und ein „zyklisches Ende“.
© Karlheinz Hug, Hochschule Reutlingen
6 - 18
Bild 6.2
Endliche zyklische
Halbgruppe
6 Algebraische Strukturen
x2
x
xm
xm+1
xn−1
6.1.9
Definition 6.41
Verträgliche Relation
Kongruenz
Geordnete Struktur
xn−2
Verträgliche Relationen
Ist G, l ein Gruppoid, so heißt eine Relation R ⊆ G2 mit der Operation l
linksverträglich
:⇔
rechtsverträglich
:⇔
verträglich
:⇔
∀x, y, z ∈ G : x R y (z l x) R (z l y);
∀x, y, z ∈ G : x R y (x l z) R (y l z);
R ist links- und rechtsverträglich mit l.
Eine (Links-, Rechts-)Kongruenz ist eine (links-, rechts-)verträgliche Äquivalenzrelation; ihre Äquivalenzklassen heißen Kongruenzklassen.
Ist G, ≤ eine halbgeordnete Menge und ≤ mit l verträglich, so heißt G, l, ≤ je
nach der Struktur von G, l ein geordnetes Gruppoid, eine geordnete Halbgruppe, ein geordnetes Monoid oder eine geordnete Gruppe.
Beispiele
(1)
(2)
(3)
(4)
(5)
(6)
Satz 6.42
Verträglichkeit
6.1.10
Für eine Menge M sind P(M), M, ∩, ⊆ und P(M), ∅, ∪, ⊆ geordnete kommutative Monoide.
lN 0 , 0, +, ≤ und lN , 1, ∗, ≤ sind geordnete kommutative Monoide.
'
'
3
!
, 0, −, +, ≤ , , 0, −, +, ≤ und , 0, −, +, ≤ sind geordnete kommutative
Gruppen.
\ {0}, 1, ∗, ≤ ist kein geordnetes kommutatives Monoid, weil das Multiplizieren mit negativen Zahlen Ungleichungen nicht erhält.
3 \ {0}, 1, −1, ∗, ≤
!
und \ {0}, 1, −1, ∗, ≤ sind deshalb auch keine geordneten
kommutativen Gruppen.
P(M2), idM, °, ⊆ ist nach Satz 4.16 (9) S. 4-13 ein geordnetes Monoid.
Für ein Gruppoid G, l und eine reflexive, transitive Relation R ⊆ G2 gilt:
R ist mit l verträglich
⇔
∀v, w, x, y ∈ G : ((v R x ∧ w R y) (v l w) R (x l y)).
Produktstrukturen
Ähnlich wie bei Relationen definieren wir auf einem kartesischen Produkt eine komponentenweise Operation.
Satz 6.43
Produktgruppoid
Sind G, lG, H, lH Gruppoide, dann ist durch
l : (G × H)2 → G × H, ((v, x), (w, y)) → (v, x) l (w, y) := (v lG w, x lH y)
eine Operation l auf der Produktmenge G × H definiert. G × H, l heißt das direkte
Produkt oder Produktgruppoid von G, lG und H, lH.
|
6.1.11
Faktorstrukturen
Das folgende Lemma überträgt den Satz 4.47 S. 4-35 auf Gruppoide. Es bereitet den
Homomorphiesatz für Gruppoide vor, der dem Homomorphie-Satz 4.48 S. 4-36 für
Relationen entspricht.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
6 - 19
Sind G, lG, H, lH Gruppoide und f : G,
so ist durch f induzierte Identifizierung,
Lemma 6.44
Induzierte Kongruenz
lG → H, lH ein Homomorphismus,
∼f := {(x, y) ∈ G2 | f(x) = f(y)},
eine Kongruenz auf G, die durch f induzierte Kongruenz.
p
Beweis. Siehe beispielsweise [13].
Satz 6.45
Faktorgruppoid
Ist G, l ein Gruppoid und R ⊆ G2 eine Kongruenz, dann ist durch
lR : (G / R)2 → G / R, ([x]R, [y]R) → [x]R lR [y]R := [x l y]R
eine Operation lR auf der Faktormenge G / R definiert. G / R, lR heißt das durch R
|
induzierte Faktorgruppoid (algebraische Faktorstruktur).
p
Beweis. Siehe beispielsweise [13].
6.1.12
Worthalbgruppen und -monoide
6.1.12.1
Zeichen
Zeichen (character): zur Darstellung von Information vereinbartes Objekt.
Zeichenkonstanten:
a, b, c,...
Zeichenvariablen:
Alphabet
x, y, z.
Alphabet, Zeichensatz (Zeichenvorrat, character set): nicht leere, endliche Menge
von Zeichen,
A, B.
Lateinisches Standardalphabet:
A := {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z}, |A| = 26.
Binäralphabet:
lB
:= {0, 1}, |lB| = 2.
Als Binärzeichen können beliebige Zeichen verwendet werden:
Beispiele
{0, 1}, {O, L}, {nein, ja}, {falsch, wahr}.
Ziffernalphabet: Ring1 der Restklassen von
'n := {0, 1,.., n − 1}, |'n| = n.
' modulo n ∈
lN
,
Wir arbeiten hier mit dem Repräsentantensystem statt mit {[0]≡n, [1]≡n,.., [n − 1] ≡n} von Satz
5.34 S. 5-8.
Ordnungsstruktur
Alphabete sind üblicherweise geordnet, ihre Zeichen sind nummeriert oder nummerierbar. Die Norm DIN 44300 für Begriffe der Informationsverarbeitung fordert von einem
Alphabet zusätzlich, dass die Zeichen in vereinbarter Reihenfolge geordnet sind. Da
ein Alphabet A endlich ist mit n := |A| ∈ lN, gibt es eine bijektive Abbildung
'n = {0, 1,.., n − 1} ↔ A = {x0,.., xn−1}, i ↔ xi,
die die natürliche Ordnung auf 'n,
1
9.8.04
Definition folgt.
© Karlheinz Hug, Hochschule Reutlingen
6 - 20
6 Algebraische Strukturen
0 < 1 < ... < n − 1,
durch
∀i, j ∈
'n : (xi < xj :⇔ i < j)
auf A überträgt:
x0 < x1 < ... < xn−1.
In den Begriffen von Definition 4.37 S. 4-27 ist diese Vollordnung auf A sowohl Bild als auch
Urbild der Vollordnung auf n.
'
Algebraische Struktur
'
Oft übertragen wir auch die modulare Arithmetik von n auf A und rechnen mit Zeichen x ∈ A wie mit Zahlen i ∈ n, d.h. für i, j ∈ n, xi, xj ∈ A ist
'
'
i ⊕ j := i +n j = (i + j) mod n,
xi + xj := xi⊕j,
i
xi ∗ xj := xi7j.
7 j := i ∗n j = (i ∗ j) mod n,
Mit der Nachfolgeroperation
succ(i) := i ⊕ 1 für i, j ∈
'n,
succ(xi) := xsucc(i) für xi ∈ A
und ihrer Umkehrung, der Vorgängeroperation
pred(i) := i ⊕ (−1) für i, j ∈
auf
A.
'n,
pred(xi) := xpred(i) für xi ∈ A
'n bzw. A erhalten wir eine endliche zyklische konnexe Präordnung auf 'n bzw.
Modulare Arithmetik und Präordnung hängen durch die Rekursionsformeln
i ⊕ 0 = i,
xi + x0 = xi,
i ⊕ j = succ(i) ⊕ pred(j),
xi + xj = succ(xi) + pred(xj)
zusammen. Da somit A und
6.1.12.2
'|A| isomorph sind, identifizieren wir sie oft.
Wörter
Man kann Zeichen aneinanderreihen, z.B.
abc
xyz
012
Dadurch erhält man Zeichenfolgen oder Zeichenketten (character string). Ein Wort
(word) ist eine als Einheit betrachtete Zeichenfolge. Da die Zeichen der Folge zu einem
bestimmten Alphabet gehören, spricht man von einem Wort über dem Alphabet.
Wort über dem Alphabet A: Folge von Zeichen x1,.., xn aus A,
w = x1...xn.
Die Länge eines Worts ist die Anzahl der Zeichen des Worts.
|w| = |x1...xn| := n.
Beispiele
Wort
B
Oberon
01100010
Länge
1
6
8
Ein Wort über einem Binäralphabet heißt Binärwort. Für n = 1, 2,... gibt es genau 2n
unterscheidbare Binärwörter der Länge n. Ein Byte ist ein Binärwort der Länge 8 (8 Bit
= 1 Byte). Es gibt also 256 verschiedene Werte eines Bytes.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.1 Strukturen mit einer zweistelligen Operation
6 - 21
Aus Wörtern über einem Alphabet kann man neue Alphabete bilden.
Beispiele
{falsch, wahr}
das Alphabet der Wahrheitswerte;
{rot, gelb, grün}
das Alphabet der Verkehrsampelsignale;
{sehr gut, gut, befriedigend, ausreichend}
ein Alphabet von Noten.
Wie Zeichen kann man Wörter aneinanderreihen - man erhält Wortfolgen, die man
Text nennt.
Verkettet man Wörter (über einem Alphabet) miteinander, erhält man wieder Wörter
(über demselben Alphabet).
Beispiel
 Verkettung →
einzel stück
einzelstück
Gehört das (nichtdruckbare) Leerzeichen (Zwischenraum; blank, space) zu dem
Alphabet, dann verschwindet formal der Unterschied zwischen den Begriffen Wort und
Text.
Ist A ein Alphabet (A ist hier der Name einer Menge von Zeichen), dann bezeichne
W(A) die Menge aller Wörter über A.
Die Verkettung oder Konkatenation (concatenation) ist eine Verknüpfung in W(A),
d.h. eine Abbildung von W(A) × W(A) in W(A), die je zwei Wörtern x, y ∈ W(A) das
verkettete Wort xy ∈ W(A) zuordnet.
Eine Teilmenge S von Wörtern über einem Alphabet A heißt formale Sprache (formal
language).
Welche Wörter x ∈ W(A) zu einer Sprache S ⊆ W(A) gehören und welche nicht, wird
meist durch bestimmte Regeln festgelegt. Es gibt dafür viele Möglichkeiten.
Leeres Wort:
λ mit |λ| := 0.
Für n ∈ lN0 ist die Menge aller Wörter über A mit der Länge n das n-fache kartesische
Produkt von A,
An := A1 × An−1, A1 := A, A0 := {λ}.
Die üblichen runden Klammern und Kommas lassen wir weg, schreiben also
x1...xn ∈ An statt (x1,.., xn).
An sich ist das kartesische Produkt nicht assoziativ, d.h. (x1, (x2, x3)) ≠ ((x1, x2), x3). Durch das
Weglassen der Klammern und Kommas erscheint es aber so.
Menge aller Wörter über A mit höchstens der Länge n ∈ lN0:
n
A(n)
∪ An .
:=
i=0
Algebraische Struktur
Worthalbgruppe über dem Alphabet A: Menge aller Wörter über A mit der Konkatenation als Operation l ohne Einselement,
W(A) :=
∪
n
A .
n ∈ lN
Wortmonoid über dem Alphabet A: Menge aller Wörter über A mit Einselement λ,
Wλ(A) :=
∪
n
A .
n ∈ lN0
Die Konkatenation l ist für v = (y1,.., ym), w = (z1,.., zn) ∈ Wλ(A) definiert durch
9.8.04
© Karlheinz Hug, Hochschule Reutlingen
6 - 22
6 Algebraische Strukturen
v l w = (y1,.., ym) l (z1,.., zn) := (y1,.., ym, z1,.., zn).
Für u = (x1,.., xl), v = (y1,.., ym), w = (z1,.., zn) ∈ Wλ(A) gilt daher
u l (v l w) = (x1,.., xl) l ((y1,.., ym) l (z1,.., zn)) = (x1,.., xl) l (y1,.., ym, z1,.., zn) =
(x1,.., xl, y1,.., ym, z1,.., zn) = ((x1,.., xl) l (y1,.., ym)) l (z1,.., zn) = (u l v) l w,
d.h. l ist assoziativ. Das Operationssymbol
v, w ∈ Wλ(A) also vw statt v l w.
l
lassen wir weg, schreiben für
W(A) ist eine unendliche, kürzbare Halbgruppe.
Wλ(A) ist ein unendliches, kürzbares Monoid.
Nach Satz 6.40 ist die von S ⊆ W(A) erzeugte Unterhalbgruppe in W(A)
S+ :=
∪
S
ln
.
n ∈ lN
Damit ist
W(A) = A+.
Nach Satz 6.40 ist das von S ⊆ W λ(A) erzeugte Untermonoid in Wλ(A)
S∗ :=
∪
S
ln
.
n ∈ lN0
Damit ist
Wλ(A) = A∗ = A+ ∪ {λ}.
Aufgrund dieser Identitäten bezeichnen wir im Folgenden dort, wo keine Verwechslungen möglich sind, die Worthalbgruppe und das Wortmonoid über A mit A+ bzw. A∗.
Beachte jedoch: A+ und A* können nur bezüglich einer assoziativen Operation auf W(A) bzw.
Wλ(A) gebildet werden, die zuvor definiert sein muss. Für S ⊆ Wλ(A) brauchen i.A. W(S) und
S+ bzw. Wλ (S) und S∗ nicht isomorph zu sein, da in W(S) die Operation die Konkatenation von
Elementen von S ist, die als nicht weiter zerlegbar betrachtet werden, während in der Unterhalb-
gruppe S+ die Operation die Konkatenation von Elementen aus A ist, also die Elemente von S+
in Produkte von Elementen aus A zerlegt werden können.
Ordnungsstruktur
Aus der Ordnung der Zeichen von A ergibt sich die alphabetische oder lexikografische Ordnung der Wörter von A∗.
Formale Sprache: Menge von Wörtern,
S ⊆ A∗ .
Endliche Wortmengen sind auch Alphabete.
Text: Folge von Zeichen oder Wörtern.
Ob Text als Folge atomarer Zeichen oder als Folge zusammengesetzter Wörter zu
betrachten ist, lässt sich formal differenzieren:
l
l
Text t als Folge von Wörtern w ∈ S über A, die als solche erkennbar sind:
t ∈ T ⊆ Wλ(S) mit S ⊆ A∗.
Text t als Folge von Zeichen aus A, gebildet als Folge von Wörtern w ∈ S, aber
Wörter w ∈ S in t nicht mehr als solche erkennbar:
t ∈ T ⊆ S∗ mit S ⊆ A∗.
Daten: maschinell verarbeiteter, gespeicherter, übertragener Text.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
6.2 Strukturen mit zwei zweistelligen Operationen
6 - 23
Binärdaten: Folge von Bits, Wort über lB.
6.2
Strukturen mit zwei zweistelligen Operationen
6.2.1
Ringe
6.2.2
Körper
6.2.3
Boolesche Algebren
6.2.4
Verbände
6.2.5
Boolesche Verbände
6.2.5.1
Boolesche Algebra der Logik
6.2.5.2
Mengenalgebra
6.2.5.3
Schaltalgebra
6.3
Vektorräume
6.4
Übungen
Aufgabe 6.1
Gruppoide
Wieviele nicht isomorphe
(1)
(2)
(3)
zweielementige,
dreielementige
vierelementige
Gruppoide gibt es? Welche sind assoziativ, kommutativ, haben eine (Links-, Rechts-)
Eins oder eine (Links-, Rechts-)Null, sind (links-, rechts-)kürzbar, (links-, rechts-)lösbar, (links-, rechts-)invertierbar?
Aufgabe 6.2
Untermonoid und
Unterhalbgruppe
9.8.04
Konstruieren Sie ein Beispiel eines Monoids, das eine Unterhalbgruppe mit Eins hat,
das kein Untermonoid ist!
© Karlheinz Hug, Hochschule Reutlingen
6 - 24
© Karlheinz Hug, Hochschule Reutlingen
6 Algebraische Strukturen
9.8.04
A
ISO 8859-1 Zeichencode Latin1
Aufgabe 7
Tabelle A.1
Spaltenform
Dez
Hex
Char
Dez
Hex
Char
Dez
Hex
0
0
NUL
32
20
SPC
64
40
1
1
SOH
33
21
!
65
2
2
STX
34
22
"
3
3
ETX
35
23
4
4
EOT
36
5
5
ENQ
6
6
7
Dez
Hex
@
96
60
`
41
A
97
61
a
66
42
B
98
62
b
#
67
43
C
99
63
c
24
$
68
44
D
100
64
d
37
25
%
69
45
E
101
65
e
ACK
38
26
&
70
46
F
102
66
f
7
BEL
39
27
'
71
47
G
103
67
g
8
8
BS
40
28
(
72
48
H
104
68
h
9
9
HT
41
29
)
73
49
I
105
69
i
10
A
LF
42
2A
*
74
4A
J
106
6A
j
11
B
VT
43
2B
+
75
4B
K
107
6B
k
12
C
FF
44
2C
,
76
4C
L
108
6C
l
13
D
CR
45
2D
-
77
4D
M
109
6D
m
14
E
SO
46
2E
.
78
4E
N
110
6E
n
15
F
SI
47
2F
/
79
4F
O
111
6F
o
16
10
DLE
48
30
0
80
50
P
112
70
p
17
11
DC1
49
31
1
81
51
Q
113
71
q
18
12
DC2
50
32
2
82
52
R
114
72
r
19
13
DC3
51
33
3
83
53
S
115
73
s
20
14
DC4
52
34
4
84
54
T
116
74
t
21
15
NAK
53
35
5
85
55
U
117
75
u
22
16
SYN
54
36
6
86
56
V
118
76
v
23
17
ETB
55
37
7
87
57
W
119
77
w
24
18
CAN
56
38
8
88
58
X
120
78
x
25
19
EM
57
39
9
89
59
Y
121
79
y
26
1A
SUB
58
3A
:
90
5A
Z
122
7A
z
27
1B
ESC
59
3B
;
91
5B
[
123
7B
{
28
1C
FS
60
3C
<
92
5C
\
124
7C
|
29
1D
GS
61
3D
=
93
5D
]
125
7D
}
30
1E
RS
62
3E
>
94
5E
^
126
7E
~
31
1F
US
63
3F
?
95
5F
_
127
7F
DEL
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Char
Char
Anhang A - Seite 1 von 4
A-2
A ISO 8859-1 Zeichencode Latin1
Dez
Hex
128
Char
Dez
Hex
Char
Dez
Hex
Char
Dez
Hex
80
160
A0
NBSP
192
C0
À
224
E0
à
129
81
161
A1
¡
193
C1
Á
225
E1
á
130
82
162
A2
¢
194
C2
Â
226
E2
â
131
83
163
A3
£
195
C3
Ã
227
E3
ã
132
84
164
A4
¤
196
C4
Ä
228
E4
ä
133
85
165
A5
¥
197
C5
Å
229
E5
å
134
86
166
A6
¦
198
C6
Æ
230
E6
æ
135
87
167
A7
§
199
C7
Ç
231
E7
ç
136
88
168
A8
¨
200
C8
È
232
E8
è
137
89
169
A9
©
201
C9
É
233
E9
é
138
8A
170
AA
ª
202
CA
Ê
234
EA
ê
139
8B
171
AB
«
203
CB
Ë
235
EB
ë
140
8C
172
AC
¬
204
CC
Ì
236
EC
ì
141
8D
173
AD
SHY
205
CD
Í
237
ED
í
142
8E
174
AE
®
206
CE
Î
238
EE
î
143
8F
175
AF
¯
207
CF
Ï
239
EF
ï
144
90
-
176
B0
°
208
D0
Ð
240
F0
ð
145
91
-
177
B1
±
209
D1
Ñ
241
F1
ñ
146
92
178
B2
²
210
D2
Ò
242
F2
ò
147
93
179
B3
³
211
D3
Ó
243
F3
ó
148
94
180
B4
´
212
D4
Ô
244
F4
ô
149
95
181
B5
µ
213
D5
Õ
245
F5
õ
150
96
182
B6
¶
214
D6
Ö
246
F6
ö
151
97
183
B7
·
215
D7
×
247
F7
÷
152
98
184
B8
¸
216
D8
Ø
248
F8
ø
153
99
185
B9
¹
217
D9
Ù
249
F9
ù
154
9A
186
BA
º
218
DA
Ú
250
FA
ú
155
9B
187
BB
»
219
DB
Û
251
FB
û
156
9C
188
BC
¼
220
DC
Ü
252
FC
ü
157
9D
189
BD
½
221
DD
Ý
253
FD
ý
158
9E
190
BE
¾
222
DE
Þ
254
FE
þ
159
9F
191
BF
¿
223
DF
ß
255
FF
ÿ
© Karlheinz Hug, Hochschule Reutlingen
Char
9.8.04
ZeileSpalte
-0
-1
-2
-3
-4
-5
-6
-7
-8
-9
-A
-B
-C
-D
-E
-F
0-
NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
FF
CR
SO
SI
1-
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
GS
RS
US
2-
SPC
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
3-
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
4-
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
5-
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
6-
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
7-
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
DEL
9-
-
-
A-
NBSP
¡
¢
£
¤
¥
¦
§
¨
©
ª
«
¬
SHY
®
¯
B-
°
±
²
³
´
µ
¶
·
¸
¹
º
»
¼
½
¾
¿
C-
À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
D-
Ð
Ñ
Ò
Ó
Ô
Õ
Ö
×
Ø
Ù
Ú
Û
Ü
Ý
Þ
ß
E-
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
F-
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ
A ISO 8859-1 Zeichencode Latin1
9.8.04
Tabelle A.2
Matrixform
8-
A-3
© Karlheinz Hug, Hochschule Reutlingen
A-4
© Karlheinz Hug, Hochschule Reutlingen
A ISO 8859-1 Zeichencode Latin1
9.8.04
B
Verlage
Literaturverzeichnis
BI
BI Wissenschaftsverlag, Mannheim/Wien/Zürich
dtv
Deutscher Taschenbuch Verlag GmbH & Co. KG, München
Hanser
Carl Hanser Verlag, München/Wien
Spektrum
Spektrum Akademischer Verlag GmbH, Heidelberg/Berlin
Springer
Springer-Verlag, Berlin/Heidelberg/New York
Teubner
B. G. Teubner GmbH, Stuttgart/Leipzig/Wiesbaden
Vandenhoeck &
Ruprecht
Vandenhoeck & Ruprecht, Göttingen
Vieweg
Bücher
Friedr. Vieweg & Sohn Verlagsgesellschaft mbH, Braunschweig/
Wiesbaden
[1]
[2]
Martin Aigner: Diskrete Mathematik. Vieweg (2001) 4. Auflage, 316 S.
Albrecht Beutelspacher, Marc-Alexander Zschiegner: Diskrete Mathematik für
Einsteiger. Mit Anwendungen in Technik und Informatik. Vieweg (2002) 216 S.
[3] Heinz-Dieter Ebbinghaus, Jörg Flum, Wolfgang Thomas: Einführung in die
mathematische Logik. BI Wissenschaftsverlag, Mannheim/Leipzig/Wien/Zürich
(1992) 3. vollst. überarbeit. u. erweit. Auflage, 338 S.
[4] Hartmut Ernst: Grundlagen und Konzepte der Informatik. Eine Einführung in die
Informatik ausgehend von den fundamentalen Grundlagen. Vieweg (2000)
822 S.
[5] Hartmut Ernst: Grundkurs Informatik. Grundlagen und Konzepte für die
erfolgreiche IT-Praxis. Eine umfassende praxisorientierte Einführung. Vieweg
(2003) 3. überarbeit. u. verbess. Auflage, 888 S.
Führt in die Themen Information, Codierung, Schaltalgebra, Digitaltechnik,
Rechnerarchitekturen, Betriebssysteme, Programmiersprachen, Softwareentwicklung, Automatentheorie, formale Sprachen, Algorithmen, Datenstrukturen, Kommunikations- und Informationstechnik ein.
[6] Gerhard Goos: Vorlesungen über Informatik. Band 1: Grundlagen und
funktionales Programmieren. Springer (1997) 2. Auflage, 394 S.
Erster Teil eines vierbändigen Standardwerks universitärer Informatikausbildung.
[7] Siegfried Gottwald, Hans-Joachim Ilgauds, Karl-Heinz Schlote (Hrsg.): Lexikon
bedeutender Mathematiker. Verlag Harri Deutsch, Thun/Frankfurt (M.) (1990)
504 S.
[8] Peter Hartmann: Mathematik für Informatiker. Ein praxisbezogenes Lehrbuch.
Vieweg (2003) 2. durchgeseh. Auflage, 456 S.
[9] Volker Heun: Grundlegende Algorithmen. Einführung in den Entwurf und die
Analyse effizienter Algorithmen. Vieweg (2003) 2. verbess. u. erweit. Auflage,
370 S.
[10] Christian Horn, Immo O. Kerner, Peter Forbig: Lehr- und Übungsbuch
Informatik. Band 2: Theorie der Informatik. Fachbuchverlag Leipzig im Carl
Hanser Verlag (2001) 2. bearbeit. Auflage, 309 S.
© Karlheinz Hug, Hochschule Reutlingen, 9. August 2004
Anhang B - Seite 1 von 4
B-2
B Literaturverzeichnis
[11] Karlheinz Hug: Module, Klassen, Verträge. Ein Lehrbuch zur
komponentenorientierten Softwarekonstruktion. Vieweg (2001) 2. aktual.
Auflage, 446 S.
[12] Herbert Klaeren, Michael Sperber: Vom Problem zum Programm. Architektur
und Bedeutung von Computerprogrammen. Teubner (2001) 3. neubearbeit. u.
erweit. Auflage, 263 S.
Theoretisch gut fundierte Einführung in funktionales Programmieren.
[13] Ulrich Knauer: Diskrete Strukturen - kurz gefasst. Spektrum (2001) 231 S.
Reizvolle kleine Einführung, die man erfrischend schnell durchliest.
[14] Herbert Meschkowski: Mathematiker-Lexikon. Bibliographisches Institut
Hochschultaschenbücher-Verlag, Mannheim/Zürich (1964) 309 S.
[15] Herbert Meschkowski: Hundert Jahre Mengenlehre. dtv (1973) 161 S.
[16] Werner Nehrlich: Diskrete Mathematik. Basiswissen für Informatiker. Eine
Mathematica-gestützte Darstellung. Fachbuchverlag Leipzig bei Hanser (2003)
331 S.
[17] Peter Rechenberg: Was ist Informatik? Eine allgemeinverständliche Einführung.
Hanser (2000) 3. überarbeit. u. erweit. Auflage, 356 S.
Eine nach den Teilgebieten technische, praktische, theoretische und angewandte Informatik gegliederte Umschau.
[18] Peter Rechenberg, Gustav Pomberger (Hrsg.): Informatik-Handbuch. Hanser
(2002) 3. aktual. u. erweit. Auflage, 1192 S.
Empfehlenswertes Nachschlagewerk mit Beiträgen von 47 Experten zu Themen aus theoretischer, technischer, praktischer, angewandter und Wirtschaftsinformatik sowie zu Daten, Normen und Spezifikationen.
[19] Fritz Reinhardt, Heinrich Soeder: dtv-Atlas zur Mathematik. Tafeln und Texte.
Band I. Grundlagen, Algebra und Geometrie. dtv (1998) ?. Auflage, 272 S.
[20] Jürgen Schmidt: Mengenlehre I. Grundbegriffe. Einführung in die axiomatische
Mengenlehre. Bibliographisches Institut Hochschultaschenbücher-Verlag,
Mannheim (1974) 2. verbess. Auflage, 245 S.
[21] Uwe Schöning: Logik für Informatiker. BI (1989) 2. überarbeit. Auflage, 172 S.
[22] Uwe Schöning: Theoretische Informatik - kurzgefaßt. Spektrum (1999)
3. Auflage, 196 S.
[23] Alfred Tarski: Einführung in die mathematische Logik. Vandenhoeck &
Ruprecht, Göttingen (1977) 5. erweit. Auflage, 285 S.
[24] Gottfried Vossen, Kurt-Ulrich Witt: Grundlagen der Theoretischen Informatik
mit Anwendungen. Eine Einführung für Studierende der Informatik,
Wirtschaftsinformatik und Technischen Informatik. Vieweg (2002) 2. Auflage,
353 S.
[25] J. Stanley Warford: Computer Systems. Jones and Bartlett Publishers, Sudbury,
Massachusetts (2002) 2nd edition, 591 S.
[26] J. Stanley Warford: Computing Fundamentals. The Theory and Practice of
Software Design with BlackBox Component Builder. Vieweg (2002) 611 S.
[27] Kurt-Ulrich Witt: Algebraische Grundlagen der Informatik. Zahlen - Strukturen
- Codierung - Verschlüsselung. Vieweg (2001) 395 S.
[28] Richard Johnsonbaugh: Discrete Mathematics. Macmillan Publishing Company,
New York; Collier Macmillan Publishers, London (1984) 436 S.
[29] Robert Zobel: Diskrete Strukturen. Eine angewandte Algebra für Informatiker.
BI (1987) Reihe Informatik, Band 49, 194 S.
© Karlheinz Hug, Hochschule Reutlingen
9.8.04
B-3
Artikel
Elektronische
Quellen
Ergänzungen
Bibliografie,
weiterführende
Literatur
9.8.04
[30] Georg Cantor: Beiträge zur Begründung der transfiniten Mengenlehre.
Mathematische Annalen 46 (1895) u. 49 (1897)
[31] Centre Charles Hermite, Nancy: IEEE standard 754 for binary floating-point
arithmetic (16.2.1999) http://cch.loria.fr/documentation/IEEE754/index.html
[32] Karlheinz Hug: Spezifikation durch Vertrag - eine Basistechnologie für
eBusiness. Forum Wirtschaftsinformatik 2001 Reutlingen - eBusiness
Technologies (22.5.2001) 34 S.; CD-ROM „Forum Wirtschaftsinformatik
Reutlingen 2001“; http://www-wi.fh-reutlingen.de/forumwi; http://userserv.fhreutlingen.de/~hug
[33] Karlheinz Hug: Herunterladbares Lehrmaterial, BlackBox-Subsysteme des
Fachbereichs Informatik; http://userserv.fh-reutlingen.de/~hug
[34] William Kahan: Lecture Notes on the Status of IEEE Standard 754 for Binary
Floating-Point Arithmetic (31.5.1996) 30 S.; http://cch.loria.fr/documentation/
IEEE754/wkahan/ieee754.ps
[35] Benno Artmann: Einführung in die neuere Algebra. Unter ständiger
Berücksichtigung der ganzen und rationalen Zahlen. Vandenhoeck & Ruprecht
(1973) 226 S.
[36] Peter Deussen: Halbgruppen und Automaten. Springer (1971) 198 S.
[37] Otto Körner: Algebra. Studienbuch für Studierende der Mathematik und Physik
ab 2. Semester. AULA-Verlag, Wiesbaden (1990) 2., korrigierte Auflage, 239 S.
[38] Georg Johann Rieger: Zahlentheorie. Vandenhoeck & Ruprecht (1976) 220 S.
[39] Peter Bachmann: Mathematische Grundlagen der Informatik. Akademie Verlag
GmbH, Berlin (1992) 294 S.
Mengen, Algorithmen, formale Sprachen, Automaten, Logik, universelle
Algebra.
[40] Klaus Denecke: Algebra und Diskrete Mathematik für Informatiker. B. G.
Teubner GmbH, Stuttgart/Leipzig/Wiesbaden; GWV Fachverlage GmbH
Wiesbaden (2003) 297 S.
Grundbegriffe, Kombinatorik, algebraische Strukturen, Graphen, lineare und
universelle Algebra, Terme, Bäume, Identitäten, Varietäten, Anwendungen.
[41] Hans-Jörg Kreowski: Logische Grundlagen der Informatik. R. Oldenbourg
Verlag, München/Wien (1991) 165 S.
Logik, Signaturen, Strukturen, Terme, Formeln, Spezifikationen, Modelle,
Folgern, Ableiten.
[42] Christoph Meinel, Martin Mundhenk: Mathematische Grundlagen der
Informatik. Mathematisches Denken und Beweisen. Eine Einführung. Teubner
(2002) 300 S.
Aussagenlogik, Mengen, Beweise, Relationen, Abbildungen, vollständige
Induktion, Zählen, Stochastik, boolesche Algebra, Graphen, Bäume.
[43] Ingo Wegener: Kompendium Theoretische Informatik. Eine Ideensammlung. B.
G. Teubner, Stuttgart (1996) 189 S.
Rechner, churchsche These, Entscheidbarkeit, NP-Vollständigkeit, endliche
Automaten, Grammatiken, kontextfreie Sprachen, Kellerautomaten.
[44] Ingo Wegener: Theoretische Informatik - eine algorithmenorientierte
Einführung. B. G. Teubner, Stuttgart/Leipzig (1999) 2. Auflage, 238 S.
Turingmaschinen, churchsche These, Entscheidbarkeit, NP-Vollständigkeit,
endliche Automaten, Grammatiken, kontextfreie Sprachen, Kellerautomaten.
© Karlheinz Hug, Hochschule Reutlingen
B-4
© Karlheinz Hug, Hochschule Reutlingen
B Literaturverzeichnis
9.8.04
Herunterladen