Mengenlehre
Mengenlehre
Mengenlehre
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
1 Grundbegriffe<br />
<strong>Mengenlehre</strong><br />
Jörg Witte<br />
25.10.2007<br />
Die Menegenlehre ist heute für die Mathematik grundlegend. Sie spielt aber<br />
auch in der Informatik eine entscheidende Rolle. Insbesondere fußt die Theorie<br />
der relationalen Datenbanken auf der <strong>Mengenlehre</strong>.<br />
Die <strong>Mengenlehre</strong> wurde von G. Cantor (1845 – 1918) begündet. Er legte<br />
den Begriff der Menge folgendermaßen fest:<br />
Definition 1.1 (Menge) Unter einer Menge M verstehen wir eine Zusammenfassung<br />
von bestimmten wohl unterschiedenen Objekten der Anschauung<br />
oder des Denkens, welche die Elemente der Menge genannt werden, zu einem<br />
Ganzen.<br />
Für ein ELement x von M schreiben wir: x ∈ M. Endliche Mengen lassen<br />
sich aufzählen:<br />
{x1, x2, . . . , xn}<br />
Häufig werden Mengen durch Aussageformen p(x) definiert. Eine Aussageform<br />
ist eine logische Aussage, die entweder wahr oder falsch ist, und die von<br />
einem Parameter x abhängt. Schreibweise:<br />
{x|p(x)}<br />
Mit Hilfe einer Aussageform knnen Elemente zu einer Menge zusammengefasst<br />
werden, die alle eine Eigenschaft gemeinsam haben. Beispiel:<br />
{x|x ist eine Primzahl}.<br />
Wichtig ist die Unterscheidbarkeit der Elemente. Ein Element kann in<br />
einer Menge höchstens einmal auftreten. Das spiegelt sich in der Theorie der<br />
relationalen Datenbanken darin wieder, dass ein Datensatz in einer Tabelle<br />
höchstens einmal vorhanden sein kann.Beispiel:<br />
{I, N, F, O, R, M, A, T, K}.<br />
1
Das I tauch hier nur einmal auf, da die beiden I’s, die in dem Wort Informatik<br />
auftauchen, nicht wohl unterschieden sind. Auch spielt die Reihenfolge, in der<br />
die Elemente aufgelistet werden, keine Rolle.<br />
Da Mengen auf unterschiedliche Weisen dargstellt werden können, stellt sich<br />
die Frage wann zwei Mengen gleich sind.<br />
Definition 1.2 (Gleichheit) Zwei Mengen A und B sind genau dann gleich,<br />
wenn<br />
x ∈ A ⇐⇒ x ∈ B.<br />
Beispiel: die Menge der natürlichen Zahlen, die durch drei teilbar sind, und<br />
die Menge der natürlichen Zahlen, deren Quersummen durch drei teilbar sind,<br />
sind gleich.<br />
Die Menge, die keine elemente enthält, wird leere Menge genannt und mit<br />
dem Symbol ∅ bezeichnet. Auf Grund der Gleichheitsdefinition kann es nur eine<br />
leere Menge geben.<br />
Definition 1.3 (Teilmenge) Eine Menge A ist genau dann eine Teilmenge<br />
von B, wenn<br />
x ∈ A =⇒ x ∈ B.<br />
Folgerung 1.1 Zwei Mengen A und B sind genau dann gleich, wenn A ⊂ B<br />
und B ⊂ A.<br />
2 Mengenoperationen<br />
Auf Mengen können Operationen ausgeführt werden. Diese sind für das Verständnis<br />
relationaler Datenbanken wichtig, da alle Datenbankoperationen Mengenoperationen<br />
sind.<br />
Definition 2.1 (Durchschnitt) Der Durchschnitt A ∩ B zweier Mengen A<br />
und B ist wie folgt definiert:<br />
A ∩ B = {x|x ∈ A und x ∈ B}<br />
Definition 2.2 (Vereinigung) Die Vereinigung A ∪ B zweier Mengen A und<br />
B ist wie folgt definiert:<br />
A ∪ B = {x|x ∈ A und x ∈ B}<br />
Die Vereinigung un der Durchschnitt sind Assoziativ und Kommutataiv.<br />
Weiterjhin gibt es zwei Distributvgesetze:<br />
und<br />
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)<br />
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C).<br />
2
Definition 2.3 (Differenz von Mengen) Die Differenz A\B zweier Mengen<br />
A und B ist wie folgt definiert:<br />
A \ B = {x|x ∈ A und x �∈ B}<br />
Ein besonderer Fall der Mengendifferenz liegt, dann vor, wenn eine Menge<br />
eine Teilmenge der anderen ist.<br />
Definition 2.4 (Komplement von Mengen) Das Komplement A von A bezüglich<br />
einer Universalmenge Ω ist die Differenzmenge Omenga \ A, wenn A ⊂ Ω.<br />
Häufig ist die Universalmenge aus dem Zusammenhang her klar, so dass sie<br />
nicht noch explizit erwähnt wird.<br />
Satz 2.1 (Regeln von Morgan)<br />
und<br />
A ∩ B = A ∪ B<br />
A ∪ B = A ∩ B<br />
3 Cartesisches Produkt<br />
Bei einem Schachspiel werden die Felder durch eine Kombination von 8 Buchstaben<br />
und 8 Zahlen identifiziert. Betrachten wir die Mengen<br />
und<br />
{A, B, C, D, E, F, G, H}<br />
{1, 2, 3, 4, 5, 6, 7, 8}!<br />
Ein Feld eine Schachspiels ist dann eindeutig duch ein Paar von je einem<br />
Element aus der ersten Menge und einem Element aus der zweiten Menge bestimmt.<br />
Bei einem Tabellenkalkulationsprogramm finden wir ähnliches vor.<br />
Definition 3.1 (binäres Cartesisches Produkt) Seien A und B zwei Mengen,<br />
dann heit<br />
A × B = {(a, b)|a ∈ A, b ∈ B}<br />
das Cartesische Produkt der Mengen A und B.<br />
Das Cartesische Produkt ist also eine Menge von geordneten Paaren. Die<br />
Mengen A und B müssen nicht notwendigerweise verschieden sein.<br />
Für die leere Menge und eine Beliebige menge A erhaltren wir:<br />
A × ∅ = ∅ × A = ∅<br />
3
In der Theorie der relationalen Datenbanken werden uns Cartesische Produkte<br />
als Relationen bzw. bei Datenbankabfragen begegnen.<br />
In der Literatur zu den relationalen Datenbanken findet man häufig noch<br />
eine andere Definition des Cartesischen Produktes. Auch wird dort häufig von<br />
der Reihenfolge der Elemente abgesehen. Wenn das Cartesiche Produkt aber als<br />
geordnetes Paar definiert wird, dann spielt die Reihenfolge durchaus eine Rolle.<br />
Ihre Rolle reduziert sich allerdings darauf, die Elemente zu identifizieren. In der<br />
Theorie der relationalen Datenbanken werden dafür Bezeichner verwendet.<br />
Eine Definition, die nicht von einer Reihenfolge gebraucht macht, aber auch<br />
nicht von Bezeichnern, sieht wie folgt aus:<br />
A × B = {{a, {a, b}}|a ∈ A, b ∈ B}.<br />
Jedem geordneten Paar lät sich eindeutig ein Element dieser Menge zuordnen<br />
und umgekehrt. Daher kann man die zweite Definition nur als eine andere<br />
Schreibweise für das Cartesische Produkt auffassen. Wir sprechen hier der Einfachheit<br />
wegen weiter von geordneten Paaren.<br />
Wir wollen uns herlegen, wie diese eindeutige Zuordnung aussieht. Offensichtlich<br />
wird dem Paar (a, b) die Menge {a, {a, b}} zugeordnet. Umgekehrt<br />
kann man dieser Menge auch eindeutig ein Paar (a, b) zuordnen. Warum geht<br />
das mit der Menge {a, b} nicht notwendigerweise? Mehrdeutigkeiten gibt es,<br />
wenn die Mengen A und B einen nichtleeren Durchschnitt haben, a, b ∈ A ∩ B<br />
und a �= b. Ist a = b, dann hat (a, b) nur ein Element und ist eindeutig dem<br />
Paar A, A zugeordnet.<br />
Rekursiv lät sich die Definition des geordneten Paares verallgemeinernt:<br />
{(m1, . . . , mn) = ((m1, . . . , mn−1), mn).<br />
Definition 3.2 (Cartesische Produkt) Seien M1, ..., Mn n Mengen, dann<br />
ist das Produkt aus M1, ..., Mn wie folgt definiert:<br />
M1 × · · · × Mn = {(m1, . . . , mn)|m1 ∈ M1, . . . , mn ∈ Mn}<br />
In der Theorie der relationalen Datenbanken ist es wichtig, eine Relation zu<br />
identifizieren und von anderen Relationen abzugrenzen. Daherist die folgende<br />
Definition sinnvoll.<br />
Definition 3.3 Zwei n-Tupel (r1, . . . , rn) und (s1, . . . , sn) sind genau dann gleich,<br />
wenn fr alle i ∈ {1, . . . , n} gilt: ri = si.<br />
Für das Cartesische Produkt gelten zwei Distributivgesetze:<br />
und<br />
A × (B ∪ C) = (A × B) ∪ (A × C)<br />
A × (B ∩ C) = (A × B) ∩ (A × C)<br />
4
4 Relationen und Funktionen<br />
Definition 4.1 (binäre Relation) Seien A und B zwei Mengen, dann ist<br />
eine (binäre ) Relation R eine Teilmenge des Cartesischen Produktes A × B:<br />
Beispiel: Gleicheitsrelation:<br />
R ⊂ A × B.<br />
R = {(x, x)|x ∈ A}.<br />
Ordnungsrelation: Sei A eine angeordnete Menge, dann ist<br />
R = {(a, b)|a, b ∈ A, a < b}<br />
eine Relation, nämlich die Ordnungsrelation.<br />
Definition 4.2 (n-stellige Relation) Seiebn M1, M2,..., Mn n Mengen, dann<br />
ist<br />
R ⊂ M1 × · · · × Mn<br />
eine (nn-stellige) Relation.<br />
Von sehr wichtiger Besdeutung für des Entwurf relationaler Datenbanken ist<br />
die folgende Definition.<br />
Definition 4.3 (Funktionen) Sei R ⊂ A × B eine Relation zwischen A und<br />
B.<br />
• F heit linksvollständig, wennn es zu jedem a ∈ A ein b ∈ B gibt, so dass<br />
(a, b) ∈ R<br />
• R heit rechtseindeutig, wenn für alle Paare (a, b), (a, c) ∈ R stets gilt:<br />
b = c.<br />
• eine Relation, die sowohl linksvollständig als auch rechteindeutig ist, heit<br />
eine Funktion oder Abbildung. A heit der Definitionsbereich, B der Wertebereich.<br />
Man schreibt auch:<br />
R : A → B<br />
bzw b = R(a). Man sagt dann: b hngt funktional von a ab.<br />
Beispiel<br />
R = {(ISBN, Buchtitel)| ISBN-Nummer, passender Buchtitel}<br />
Da die ISBN-Nummer eindeutig ein Buchbeschreibt, hängt der Titel funktional<br />
von der ISBN-Nummer ab. Beim relationalen Datenbankentwurf werden systematisch<br />
solchhe funktionalen Abhängigkeiten aufgedeckt.<br />
5
Neben der Bildung von Cartesischen Produkten spielen bie Datenbankabfragen<br />
gewisse Einschrnkungen eine Rolle. Zum einen wird die Anzahl der Faktoren<br />
eines Cartesischen Produktes eingeschrnkt. Abbildungen, die solche Einschränkungen<br />
bewirken, heißen Projektionen. Zum anderen kann durch die<br />
Formulierung von Bedinungen die Anzahl der Tupel eingeschränkt werden. Abbildungen,die<br />
derartige Einschränkungen bewirken, heißen Selektionen. Bedinungen<br />
werden i. A. durch Vergleichsoperatoren uund logische Operatoren<br />
formuliert.<br />
Eine Hintereinanderausfhrung von Cartesischem Produkt und Selektion heißt<br />
join und spielt bei Datenbakabfragen eine wichtige Rolle.<br />
Eine minimale Menge von Operationen, die mindestens notwendig ist, um<br />
alle Ausdrü cke bilden zu knnen, die für Datanbankabfragen notwendig sind,<br />
umfasst<br />
• Projektion<br />
• Selektion<br />
• Cartesisches Produkt<br />
• Vereinigung<br />
• Differenz<br />
6