Formale Methoden 2 Gaetano Geck Lehrstuhl I – Logik in der Informatik WS 2014/2015 1 Mengen 2 Relationen Definition Operationen Eigenschaften Äquivalenzrelationen Mehrstellige Relationen 3 Abbildungen 4 Algebraische Strukturen 5 Ordnungen und spezielle Relationen Mengenlehre / Relationen Definition und Beispiel Definition 2.1 Mengen der Form R ⊆ M1 × · · · × Mk heißen k-stellige Relationen (über M1 , . . . , Mk ). Bemerkungen: zunächst nur binäre Relationen (später weitere) Beispiel 2.2 (Studienergebnisse) Wir betrachten Relationen über folgenden Mengen Veranstaltungen = {RS, Logik, GTI, IS}, Notenwerte = {1.0, 1.3, . . . , 3.7, 4.0, 5.0} und Notennamen = {sehr gut, gut, befriedigend, ausreichend, nicht bestanden}. Die Ergebnisse von Anna und Bert werden beschrieben durch die Relationen ErgebnisseAnna = {(RS, 1.7), (Logik, 1.0)} und ErgebnisseBert = {(RS, 3.0), (GTI, 5.0), (GTI, 4.0), (IS, 2.7)} und die Zuordnung von Notenwerten zu Notennamen durch die Relation Noten = {(1.0, sehr gut), (1.3, sehr gut), (1.7, gut), . . . , (5.0, nicht bestanden)} FM2 (WS 2014/15, Geck) 19 Mengenlehre / Relationen Weitere Beispiele Beispiel 2.3 (Familienbande) Wir betrachten die Mengen Erwachsene = {Homer, Marge, Ned, Maude} und Kinder = {Bart, Lisa, Maggie, Rod, Todd} und darüber die binären Relationen Vater, Mutter ⊆ Erwachsene × Kinder: Vater = {(Homer, Bart), (Homer, Lisa), (Homer, Maggie), (Ned, Rod), (Ned, Todd)} und Mutter = {(Marge, Bart), (Marge, Lisa), (Marge, Maggie), (Maude, Rod), (Maude, Todd)}. Bemerkung: Um die Zugehörigkeit eines Paares zu einer binären Relation zu notieren, wird gelegentlich die Infixnotation verwendet: mRn, falls (m, n) ∈ R. Beispiel 2.4 (Teilbarkeit) Wir betrachten die Teilbarkeitsrelation auf den natürlichen Zahlen N0 : T = {(p, n) | Es gibt ein q ∈ N0 mit n = pq}. Unter Verwendung des Infixsymbols | für T gilt etwa: 3 | 6, 8 - 12, FM2 (WS 2014/15, Geck) 3 | 12, 4 - 13, 4 | 12, 12 | 48 8 -4 20 Mengenlehre / Relationen Operationen: Definition und Beispiel Aus Relationen können durch verschiedene Operationen Relationen abgeleitet werden. Definition 2.5 Zu einer binären Relation R ⊆ M × N ist die Umkehrrelation definiert als Relation R−1 ⊆ N × M mit R−1 = {(n, m) | (m, n) ∈ R}. Für binäre Relationen R ⊆ M × N und S ⊆ N × P ist die Komposition R ◦ S ⊆ M × P definiert als Relation R ◦ S = {(m, p) | es gibt ein n ∈ N mit (m, n) ∈ R, (n, p) ∈ S} Beispiel 2.6 (Umkehrrelation) Für Vater = {(Homer, Bart), (Homer, Lisa), (Homer, Maggie), (Ned, Rod), (Ned, Todd)} gilt Vater−1 = {(Bart, Homer), (Lisa, Homer), (Maggie, Homer), (Rod, Ned), (Todd, Ned)} Beispiel 2.7 (Komposition) Für ErgebnisseBert ⊆ Veranstaltungen × Notenwerte und Noten ⊆ Notenwerte × Notennamen mit ErgebnisseBert = {(RS, 3.0), (GTI, 5.0), (GTI, 4.0), (IS, 2.7)} Noten = {(1.0, sehr gut), (1.3, sehr gut), (1.7, gut), . . . , (5.0, nicht bestanden)} gilt ergibt sich die Komposition ErgebnisseBert ◦ Noten ⊆ Veranstaltungen × Notennamen als {(RS, befriedigend), (GTI, nicht bestanden), (GTI, ausreichend), (IS, befriedigend)} FM2 (WS 2014/15, Geck) 21 Mengenlehre / Relationen Operationen: Kurzaufgaben Zur Erinnerung: Definition 2.8 Zu einer binären Relation R ⊆ M × N ist die Umkehrrelation definiert als Relation R−1 ⊆ N × M mit R−1 = {(n, m) | (m, n) ∈ R}. Für binäre Relationen R ⊆ M × N und S ⊆ N × P ist die Komposition R ◦ S ⊆ M × P definiert als Relation R ◦ S = {(m, p) | es gibt ein n ∈ N mit (m, n) ∈ R, (n, p) ∈ S} Aufgaben Betrachten Sie die Relation Vater0 = {(Abe, Homer), (Homer, Bart), (Homer, Hugo), (Bart, Bart Jr.)}. Geben Sie die Umkehrrelation (Vater0 )−1 an. Geben Sie die Komposition Vater0 ◦ Vater0 an. Geben Sie die Relation (Vater0 )−1 ◦ Vater0 an. Geben Sie die Relation Vater0 ◦ (Vater0 )−1 an. FM2 (WS 2014/15, Geck) 22 Mengenlehre / Relationen Eigenschaften (1/3) Definition 2.9 (Totalität, Eindeutigkeit) Wir betrachten eine binäre Relation R ⊆ M × N . Sie heißt linkstotal, wenn es zu jedem m ∈ M ein n ∈ N mit (m, n) ∈ R gibt; rechtstotal, wenn es zu jedem n ∈ N ein m ∈ M mit (m, n) ∈ R gibt; linkseindeutig, wenn es für alle n ∈ N mit (m, n) ∈ R und (k, n) ∈ R stets m = k gilt; rechtseindeutig, wenn es für alle m ∈ M mit (m, n) ∈ R und (m, p) ∈ R stets n = p gilt. Beispiele 2.10 Die Relation Vater ⊆ Erwachsene × Kinder über den Mengen Erwachsene = {Homer, Marge, Ned, Maude} und Kinder = {Bart, Lisa, Maggie, Rod, Todd}, Vater = {(Homer, Bart), (Homer, Lisa), (Homer, Maggie), (Ned, Rod), (Ned, Todd)}, ist rechtstotal und linkseindeutig, aber weder linkstotal noch rechtseindeutig. Fragen Ist die Teilbarkeitsrelation T = {(p, n) | Es gibt ein q ∈ N0 mit n = pq} linkstotal, rechtstotal? linkseindeutig, rechtseindeutig? FM2 (WS 2014/15, Geck) 23 Mengenlehre / Relationen Eigenschaften (2/3) Nun: Beschränkung auf binäre Relationen auf einer Menge M Definition 2.11 (Reflexivität, Symmetrie, Transitivität) Wir betrachten eine binäre Relation R ⊆ M × M . Sie heißt reflexiv, wenn (m, m) ∈ R gilt; irreflexiv, wenn (m, m) < R gilt; symmetrisch, wenn (m, n) ∈ R stets (n, m) ∈ R impliziert; asymmetrisch, wenn (m, n) ∈ R stets (n, m) < R impliziert; antisymmetrisch, wenn (m, n) ∈ R und (n, m) ∈ R stets m = n impliziert; transitiv, wenn (m, n) ∈ R und (n, p) ∈ R stets (m, p) ∈ R impliziert (jeweils für alle m, n, p ∈ M ). Beispiel 2.12 (Teilbarkeitsrelation) Die Teilbarkeitsrelation T = {(p, n) | Es gibt ein q ∈ N0 mit n = pq} ist reflexiv (1 | 1, 2 | 2, . . . ) antisymmetrisch transitiv FM2 (WS 2014/15, Geck) (2 | 6, 6 | 12 ⇒ 2 | 12) 24 Mengenlehre / Relationen Eigenschaften (3/3) Zur Erinnerung: Definition 2.13 (Reflexivität, Symmetrie, Transitivität) Wir betrachten eine binäre Relation R ⊆ M × M . Sie heißt reflexiv, wenn (m, m) ∈ R für alle m ∈ M gilt; irreflexiv, wenn (m, m) < R für alle m ∈ M gilt; symmetrisch, wenn (m, n) ∈ R stets (n, m) ∈ R impliziert; asymmetrisch, wenn (m, n) ∈ R stets (n, m) < R impliziert; antisymmetrisch, wenn (m, n) ∈ R und (n, m) ∈ R stets m = n impliziert; transitiv, wenn (m, n) ∈ R und (n, p) ∈ R stets (m, p) ∈ R impliziert (jeweils für alle m, n, p ∈ M ). Beispiel 2.14 (Vergleichsrelation) Die Relation < ⊆ N0 × N0 mit < = {(m, n) | es existiert ein c ∈ N mit m + c = n} ist irreflexiv asymmetrisch transitiv FM2 (WS 2014/15, Geck) (x ≮ x) (x < y ⇒ y ≮ x ) (x < y, y < z ⇒ x < z) 25 Mengenlehre / Relationen Äquivalenzrelationen: Definition, Beispiel Definition 2.15 (Äquivalenzrelation) Eine binäre Relation R auf einer Menge M heißt Äquivalenzrelation, wenn sie reflexiv, symmetrisch und transitiv ist. Bemerkung: Für jede Menge M existieren (triviale) Äquivalenzrelationen: die Identität id = {(m, m) | m ∈ M} und die Allrelation all = {(m, n) | m, n ∈ M}. Interessanter sind die folgende Klassen von Äquivalenzrelationen. Definition 2.16 (Zahlentheoretische Kongruenz) Für jedes k ∈ N ist die Kongruenz modulo k die Relation ≡k ⊆ N0 × N0 , wobei m ≡k n genau dann gilt, wenn m und k denselben Rest bei Division durch k besitzen. Beispiele 2.17 Zwei Zahlen m, n stehen genau dann in Relation m ≡2 n, wenn sie entweder beide gerade oder beide ungerade sind: 0≡2 2, 1.2 4, FM2 (WS 2014/15, Geck) 8≡2 100, 8.2 101, 19≡2 5; 18.2 81. 26 Mengenlehre / Relationen Äquivalenzklassen Definition 2.18 Für eine Äquivalenzrelation R auf einer Menge M ist die Äquivalenzklasse [m]R eines Elementes m die Menge zu m äquivalenter Elemente in M : [m]R = {n ∈ M | (m, n) ∈ R}. Beispiel 2.19 Betrachten wir die Äquivalenzrelation ≡2 auf der Menge N0 , so besitzt diese die Klassen [0]≡2 = {2n | n ∈ N0 }= {0, 2, 4, 6, . . . } und [1]≡2 = {2n + 1 | n ∈ N0 }= {1, 3, 5, 7, . . . }. Fakt 2.20 Aufgrund der Symmetrie jeder Äquivalenzrelation R auf einer Menge M gilt für alle m, n ∈ M , dass genau dann n ∈ [m]R gilt, wenn m ∈ [n]R ist. Folgerung: m und n sind genau dann äquivalent, wenn sie dieselben Äquivalenzklassen besitzen eine Äquivalenzklasse wird durch jedes ihrer Elemente gleichermaßen beschrieben; die Elemente nennen wir auch Repräsentanten der Klasse FM2 (WS 2014/15, Geck) 27 Mengenlehre / Relationen Äquivalenzklassen und Partitionen Äquivalenzklassen und Partitionen sind eng miteinander verwandt Aufgabe Zeigen Sie, dass für eine Äquivalenzrelation R auf M mit Elementen m, n ∈ M gilt: (m, n) < R ⇔ [m]R ∩ [n]R = ∅. Fakt 2.21 (Partition und Äquivalenzklassen) Die Klassen einer links- bzw. rechtstotalen Äquivalenzrelation R auf einer Menge M bilden eine Partition von M , den Quotienten M/R = {[m]R | m ∈ M} Jede Partition M = {Mi | i ∈ I} einer Menge M induziert eine Äquivalenzrelation RM = {(m, n) | es gibt ein i ∈ I mit m ∈ Mi und n ∈ Mi }. Beispiel 2.22 ({0, . . . , 11}/≡3 ) FM2 (WS 2014/15, Geck) 0 3 1 4 2 5 6 9 7 10 8 11 28 Mengenlehre / Relationen Äquivalenzklassen: Beispiel Q Die rationalen Zahlen Q können durch Bildung von Äquivalenzklassen auf Paaren aus Z × Z+ konstruiert werden: Definition 2.23 Wir definieren die Äquivalenzrelation ∼ auf Z × Z+ durch (p, q) ∼ (r, s) ⇔ p · s = q · r. Die p Äquivalenzklasse von (p, q) bezeichnen wir durch q . Es gilt dann Q = (Z × Z+ )/∼ . Operatoren auf Äquivalenzklassen können über ihre Repräsentanten definiert werden. Beispiel 2.24 (Addition rationaler Zahlen) p p0 q0 Für die Klassen q , Es gilt etwa 2 3 + 1 6 ∈ Q sei die Summe = 2·6+1·3 3·6 = p q 12+3 18 + p0 q0 = definiert als pq0 +p0 q qq0 . 15 18 Zu beachten: Wohldefiniertheit der Operatoren (Unabhängigkeit von den Repräsentanten) Beispiel 2.25 (Wohldefiniertheit der Addition) Die Elemente (2, 3) und (4, 6) aus Z × Z+ repräsentieren dieselbe Klasse 23 ∈ Q. Es sollte also bei Rechnung mit 46 dasselbe Ergebnis (die Klasse 15 18 ) herauskommen. FM2 (WS 2014/15, Geck) 29 Mengenlehre / Relationen Äquivalenzklassen: Beispiel Q (Wohldefiniertheit von +) Zu zeigen: Es gelte für Repräsentanten (p, q) ∼ (r, s) und (p0 , q0 ) ∼ (r0 , s0 ) p (also für die Klassen q = dann soll auch p q + p0 q0 = pq0 +p0 q qq0 = rs0 +r0 s ss0 = r s + r0 s0 r s und p0 q0 = r0 s0 ), gelten. Erinnerung: Die Gleichheit der Klassen gilt genau dann, wenn ihre Repräsentanten (pq0 + p0 q, qq0 ) und (rs0 + r0 s, ss0 ) äquivalent sind. Wir wissen: (a) wegen p q (b) wegen p0 q0 = = r s gilt ps = qr r0 s0 gilt p0 s0 = q0 r0 Nachrechnen: (pq0 + p0 q)(ss0 ) = = = = pq0 ss0 + p0 qss0 qq0 rs0 + p0 qss0 qq0 rs0 + qq0 r0 s (rs0 + r0 s)(qq0 ) (Ausmultiplizieren) (Eigenschaft (a)) (Eigenschaft (b)) (Zusammenfassen) Folglich gilt (pq0 + p0 q, qq0 ) ∼ (rs0 + r0 s, ss0 ). FM2 (WS 2014/15, Geck) 30 Mengenlehre / Relationen Äquivalenzklassen: Verhältnisse Definition 2.26 Seien R und S Äquivalenzrelationen auf derselben Menge M , dann heißt R Verfeinerung von S, wenn für alle m, n ∈ M aus (m, n) ∈ R auch (m, n) ∈ S folgt. Bemerkung: Obige Bedingung ist äquivalent zu: für alle m ∈ M gilt [m]R ⊆ [n]S . Wenn R feiner ist als S, wird S auch gröber als R genannt. Beispiel 2.27 ({0, . . . , 11}/≡6 ist Verfeinerung von {0, . . . , 11}/≡3 ) FM2 (WS 2014/15, Geck) 0 3 1 4 2 5 6 9 7 10 8 11 31