Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Mengenlehre • Grundbegriff ist die Menge Definition (Naive Mengenlehre). Eine Menge ist die „Zusammenfassung von Elementen unserer Anschauung zu einem wohldefinierten Ganzen“. (Georg Cantor) • Notation 1. Aufzählung aller Elemente: { 1 , { 2 } , { 3 , 4 } , { 5 } } 2. Beschreibung der Eigenschaften der Elemente: { x | x mod 2 = 0 } Informell wird auch geschrieben: { 2, 4, 6, 8, … } • Begriff der Mengenzugehörigkeit x M, x Ê M >x : x { a1, … an } 2 x = a1 e … e x = an >x : x { y | P(y) } 2 P(x) • Begriff der leeren Menge Die leere Menge ist die Menge, die kein Element enthält. Sie wird A oder {} geschrieben: >x : x Ê A Mengenlehre 1 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Russelsches Paradox in der naiven Mengenlehre • Man definiere M als die Mengen aller Mengen, die sich selbst nicht enthalten: M={X|XÊX} Frage: Enthält M sich selber? Ja. Wenn M sich selbst enthält, dann darf M sich selbst nicht enthalten Nein. Wenn M sich selbst nicht enthält, dann muss M sich selbst enthalten Wir wissen aber aus der Logik, dass aus einem Widerspruch alles abgeleitet werden kann. Mengenlehre 2 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Vergleichen von Mengen • Gleichheit Zwei Mengen A und B heissen gleich, wenn sie genau die gleichen Elemente enthalten: A = B 2 ( >x : x A 2 x B ) Beispiel: { 1 , 2 , 3 } = { n | n £ d n < 4 } • Teilmengenrelation Die Menge T heisst eine Teilmenge der Menge A, wenn jedes Element, das in der Teilmenge T liegt, auch in der Menge A liegt: T A 2 ( >x : x T / x A ) Beispiel: { 2 } { 1 , 2 } Die Menge T heisst eine echte Teilmenge der Menge A, wenn T eine Teilmenge von A ist, aber nicht gleich A ist: T A 2 (>x : x T / x A) d T A Beispiel: { 2 } {1,2} Mengenlehre 3 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Beweis: A ist Teilmenge jeder Menge • Gegeben: T A 2 >x : x T / x A >x : x Ê A • Zu beweisen: AA • Beweis: A A 2 >x : x A / x A (1) A A 2 >x : f / x A (2) A A 2 >x : t (3) AA2t (4) (1) Definition von (2) Axiom für A (3) f / x A ist Tautologie (4) >x : t ist Tautologie Mengenlehre 4 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Operationen auf Mengen • Durchschnitt Der Durchschnitt zweier Mengen A und B ist die Menge aller Elemente, die sowohl in A als auch in B enthalten sind. AbB={x|xAdxB} Beispiel: { 1 , 2 } b { 1 } = { 1 } • Vereinigung Die Vereinigung zweier Mengen A und B ist die Menge aller Elemente, die entweder in A oder in B enthalten sind. AaB={x|xAexB} Beispiel: { 1 , 2 } a { 3 } = { 1 , 2 , 3 } • Komplement Sei eine Menge X gegeben und sei U eine Teilmenge von X. Das Komplement von U bezüglich der Menge X ist die Menge XU aller Elemente der Menge X, die nicht in U liegen. U X / XU = { x | x X d x Ê U } Beispiel: { 1 , 2, 3 } { 1 , 2 } = { 3 } Mengenlehre 5 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Operationen auf Mengen (2) • Differenz Seien A und B beliebige Mengen. Die Differenz A minus B ist die Menge A \ B aller Elemente, die in A und nicht in B liegen. A\B={x|xAdxÊB} Beispiel: { 1 , 2 , 3 } \ { 3 , 4 } = { 1 , 2 } • Symmetrische Differenz Die symmetrische Differenz zweier Mengen A und B ist die Menge A B aller Elemente, die genau in einer der beiden Mengen liegen. A B = (A a B) \ (A b B) Beispiel: { 1 , 2 , 3 } { 3 , 4 } = { 1 , 2 , 4 } • Potenzmenge Sei A eine Menge. Die Potenzmenge von A ist die Menge V(A) aller Teilmengen von A. V(A) = { U | U A } Beispiel: V({ 1 , 2 }) = { A , { 1 } , { 2 } , { 1 , 2 } } Mengenlehre 6 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Operationen auf Mengen (3) • Anzahl von Elementen (informell) Sei A eine Menge mit endlich vielen Elementen. Die Anzahl |A| nennt man die Mächtigkeit oder Kardinalität der Menge. • Zwei endliche Mengen haben dieselbe Kardinalität, wenn die Anzahl Elemente in beiden Mengen gleich ist. Man stelle sich vor, dass man immer je ein Element aus beiden Mengen herausnimmt, und es bleiben zwei leere Mengen. • Cantor hat diese Idee für unendliche Menge weiterentwickelt: Zwei unendliche Mengen haben dieselbe Kardinalität, wenn sich die Elemente beider Mengen paaren lassen: 1 r 2 2 r 4 3 r 6 4 r 8 5 r 10 6 r 12 7 r 14 8 r 16 9 r 18 10 r 20 … Die Kardinalität von £ wird F0 (Aleph null) genannt. Sie ist die kleinste unendliche Kardinalität. Eine weitere Kardinalität ist c. Dies ist die Kardinalität von V(£) und §. • Cantors Diagonalisierungsargument beweist c <> F0. Mengenlehre 7 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Cantors Diagonalisierungsargument für |V(£)| > |£| Beweis durch Widerspruch. Wir nehmen an, das |V(£)| <= |£|. D.h., man kann jeder Teilmenge von £ eine Zahl aus £ so zuordnen, dass jede Zahl aus £ höchstens einmal benutzt wird. Uns interessieren die Paare, bei denen die Teilmenge von £ die Zahl aus £ nicht enthält, mit der sie gepaart wird. Beim Paar (1 , { 2 }) z.B. enthält die Teilmenge die Zahl nicht, beim Paar (2 , { 2 , 3 }) enthält sie sie. Wir definieren eine Teilmenge M £ so, dass M die Zahlen enthält, die entweder nicht gepaart sind oder mit einer Teilmenge von £ gepaart sind, die die Zahl nicht enthalten. M ist eine Teilmenge von £. Also muss es ein Paar (z , M) geben. Ist z ein Element von M? Ja: Dann ist z gepaart mit einer Menge, die z enthält. Das ist eine Widerspruch zur Definition von M. Nein: Dann ist z gepaart mit einer Menge aus |V(£)| (nämlich M), die z nicht enthält. Nach der Definition von M muss z dann aber ein Element von M sein. Widerspruch. Also muss |V(£)| > |£| gelten. Mengenlehre 8 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Gesetze für Mengenoperationen AbA=A AbB=BbA (A b B) b C = A b (B b C) A b (B a C) = Distributivität (A b B) a (A b C) A b (A a B) = A Absorption De Morgan Regeln (A b B) = (A) a (B) Neutrale Elemente* A b X = A Invariable Elemente* A b A = A Komplementarität* A b A = A Involutionsgesetz A = A Idempotenz Kommutativität Assoziativität Reflexivität Extremalität* Kontraktion Monotonie Antitonie AA AA (A b B) A AB/ AbCBbC AB/ A B AaA=A AaB=BaA (A a B) a C = A a (B a C) A a (B b C) = (A a B) b (A a C) A a (A b B) = A (A a B) = (A) b (B) AaA=A AaX=X A a A = X AA XA (A a B) A AB/ AaCBaC A B/ A B * wobei A X Mengenlehre 9 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Das Beweisen von Mengengesetzen • Venn-Diagramme: graphische Veranschaulichung • Tableau Methode: Tabelle von Fallunterscheidungen • Transfer Methode: Eine mengentheoretische Formel wird in eine äquivalente aussagenlogische Formel umgewandelt, die dann bewiesen wird. Diese Methode beruht auf der Verwandschaft zwischen Aussagenlogik und Mengenlehre, die damit zu tun hat, dass beide Systeme Boole’sche Algebren sind. Mengenlehre Aussagenlogik a e / b ¬ d . • Direkter Beweis durch Einsetzen von Definitionen, Axiomen und Gesetzen. Mengenlehre 10 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Direkter Beweis De Morgan Regel für b • Gegeben: Die Definitionen von b, a, , Ê, 8 • Zu beweisen: X(A b B) = (X A) a (X B) • Beweis: X { x | x 8 A d x 8 B } = { x | x 8 X A e x 8 X B } (1) { x | x 8 X d xÊ { x | x 8 A d x 8 B }} = { x | x 8 { x | x 8 X d x Ê A} e x 8 { x | x 8 X d x Ê B }} (2) { x | x 8 X d (x Ê A e x Ê B) } = { x | x 8 X d x Ê A e x 8 X d x Ê B) } (3) { x | x 8 X d (x Ê A e x Ê B) } = { x | x 8 X d (x Ê A e x Ê B) } (4) (1) Definition von b und a, (2) Definition von , (3) Definition von Ê und 8, de Morgan, (4) Distributivität Mengenlehre 11 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Familien von Mengen • Eine Familie von Mengen ist eine Ansammlung von Mengen A die durch eine Indexmenge I indiziert sind. Genauer gesagt ist eine Familie eine Funktion, die jedem Index i I eine Menge Ai zuordnet. Beispiel: I={1,2,3} A1 = { a , b , c } , A2 = { b , c , d } , A3 = { c } • Operationen auf Familien: Der Durchschnitt einer Familie von Mengen A ist die Menge jener Elemente, die in jedem Ai vorkommen. XA = Xi I Ai = { x | >i I : x Ai } Beispiel: XA = { c } Die Vereinigung einer Familie von Mengen A ist die Menge jener Elemente, die in mindestens einem Ai vorkommen. WA = Wi I Ai = { x | ?i I : x Ai } Beispiel: WA = { a , b , c , d } Mengenlehre 12 Formale Grundlagen der Informatik (Fuchs/Kraan SS 98) Eigenschaften von Familien • Zwei Mengen heissen disjunkt, wenn ihr Durchschnitt leer ist. • Eine Familie von Mengen heisst disjunkt, wenn der Durchschnitt aller Mengen der Familie leer ist. XA = A • Eine Familie von Mengen heisst paarweise disjunkt, wenn der Durchschnitt von jedem Paar von Mengen leer ist. >i, j I : i <> j / Ai b Aj = A Mengenlehre 13