Was bisher geschah Modellierung von Aussagen durch Aussagenlogik I I Syntax: Junktoren, Aussagenvariablen, Formelbaum Semantik: Belegungen, WW-Tabellen Prädikatenlogik Syntax (Quantoren, Individuenvariablen) Modellierung von Daten durch Mengen I I I I I I extensionale und intensionale Darstellung Mächtigkeiten von (endlichen) Mengen |M| Beziehungen zwischen Mengen ⊆, =, ⊂ leere Menge ∅ Potenzmenge 2M Mengen-Operationen ∪, ∩, , \, ∆, Produkt ×, iterierte Produkte n , ∗ 93 Folgen Folgen (Listen, Wörter) werden definiert: extensional durch Angabe der Elemente und ihrer Reihenfolge Beispiele: 3210, [1, 4, 9, 16, 25], abababababa intensional durch Angabe einer Eigenschaft, die für jeden Index i das i-te Element eindeutig bestimmt. Beispiele: (4 − i)1≤i≤4 , (i 2 )i∈{1,...,5} , (wi )0≤i≤10 mit wi = (vi )i∈N mit vi = a falls i ∈ 2 b sonst a falls i ∈ 2 b sonst Z Z (i 2 )i∈N = [0, 1, 4, 9, . . .], (3)k∈N = [3, 3, 3, 3, . . .] Länge der Folge (an )n∈I : Anzahl der Elemente (= Mächtigkeit der Indexmenge I ⊆ N) 94 Modellierung durch Folgen Beispiel Würfelfolgen: I Menge der möglichen Werte (Augenzahlen): {1, 2, . . . , 6}, z.B. 3 ∈ {1, 2, . . . , 6} I Menge aller Folgen von Werten bei viermaligem Würfeln (nacheinander): {1, 2, . . . , 6}4 , z.B. [3, 6, 5, 3] ∈ {1, 2, . . . , 6}4 I Menge aller Folgen von Werten beim Würfeln beliebig oft nacheinander: {1, 2, . . . , 6}∗ , z.B. [3, 2, 2, 5, 1] ∈ {1, 2, . . . , 6}∗ , ε ∈ {1, 2, . . . , 6}∗ 95 Modellierung durch Mengen und Folgen I Menge aller Skatkarten: S = {♦, ♥, ♠, ♣} × ({7, 8, 9, 10} ∪ {B, D, K , A}) I Folge aller Unter (B) nach Wert aufsteigend geordnet [(♣, B), (♠, B), (♥, B), (♦, B)] ∈ S 4 I Folge aller Karten der Farbe ♠ nach Wert (Nullspiel) aufsteigend geordnet [(♠, 7), (♠, 8), (♠, 9), (♠, 10), (♠, B), (♠, D), (♠, K ), (♠, A)] ∈ S 8 I Menge aller Möglichkeiten der (zwei) Karten im Skat: {{h, k} | h ∈ K ∧ k ∈ K ∧ h 6= k} ⊆ 2S (Warum nicht ⊆ S 2 ? ) I Blatt = Menge aller Karten auf der Hand (zu Beginn des Spieles) B ∈ 2S mit |B| = 10 (10 verschiedene Karten) I Kartenfächer (zu Beginn des Spieles): Folge (k1 , . . . , k10 ) ∈ S 10 mit |{k1 , . . . , k10 }| = 10 (alle Karten verschieden), z.B. [(♠, B), (♥, B), (♦, A), (♦, 9), (♣, A), (♣, K ), (♣, 9), (♥, 10), (♥, 8), (♥, 7)] I Stich: Folge von drei nacheinander gelegten Karten (geordnetes Tripel) (k1 , k2 , k3 ) ∈ S 3 mit |{k1 , . . . , k3 }| = 3 I Spiel: Folge der (während des Spiels gefallenen) Stiche ∈ S 3 10 96 Zusammenhänge Folgen – Mengen Folge (an )n∈I gegeben I Menge {an | n ∈ I } der Elemente der Folge (an )n∈I (eindeutig) I I Folge [1, 4, 9, 16], Menge der Elemente {1, 4, 9, 16} Folge [a, a, a, . . .], Menge der Elemente {a} (Folge lässt sich nicht eindeutig rekonstruieren.) I Menge der Anfangsstücke der Folge (eindeutig) Beispiel: (2n )n∈N , Menge {[1], [1, 2], [1, 2, 4], . . .} (Folge lässt sich eindeutig rekonstruieren.) Menge A gegeben I Folgen (an )n∈I durch Mengen definiert (A∗ , Aω ) I beliebige Anordnung der Elemente einer Menge zu Folgen (i.A. nicht eindeutig, mehrere Möglichkeiten), z.B. I I I M = {a, b, c, d}, Folgen [a, b, c, d], [b, d, b, c, d, a] M = , Folgen [0, 1, 2, . . .] , [0, 2, 4, 6, 8, 1, 3, 5, 7, 9, 10, 12 . . .] M = , Folgen [0, 1, −1, 2, −2, 3, −3, . . .] [0, 1, 2, 3, −3, −2, −1, 4, 5, . . .] N Z 97 Alphabet, Wort, Sprache Alphabet (endliche) Menge A von Symbolen Wort endliche Folge von Symbolen w = w1 · · · wn mit ∀i ∈ {1, . . . , n} : wi ∈ A Länge eines Wortes |w | = Anzahl der Symbole in w Anzahl der Vorkommen eines Symboles in einem Wort |w |a = Anzahl der a in w (für a ∈ A) Sprache Menge von Wörtern L ⊆ A∗ 98 Wörter – Beispiele banane ist ein Wort (Zeichenkette) mit Symbolen aus der Menge {a, b, e, n}, neben und abbbeeeab auch, ananas und ab + bea nicht 2009 ist ein Wort mit Symbolen aus der Menge {0, 2, 9}, 90 und 09020090 auch, −2090 nicht (x + y ) · (z − x) ist ein Wort mit Symbolen aus der Menge {x, y , z, (, ), +, −, ·}, ()xz(xy + − auch, x + 3 · z nicht (¬p ∧ p) → q ist ein Wort mit Symbolen aus der Menge {p, q, ∧, ¬, →, (, )}, q → (p → q) und ∧)(¬p∧ auch, p ↔ q nicht otto holt obst . ist ein Wort mit Symbolen aus der Menge {otto, obst, holt, .}, . otto . . otto auch, los otto nicht 99 Verkettung von Wörtern (Folgen) Verkettung ◦ von Wörtern: Für alle Wörter u = u1 · · · um ∈ A∗ , v = v1 · · · vn ∈ A∗ gilt u ◦ v = u1 · · · um v1 · · · vn Beispiel: anne ◦ marie = annemarie Eigenschaften der Operation ◦: I ◦ ist assoziativ, d.h. ∀u ∈ A∗ ∀v ∈ A∗ ∀w ∈ A∗ ((u ◦ v ) ◦ w = u ◦ (v ◦ w )) I Das leere Wort ε ist neutrales Element für ◦, d.h. ∀w ∈ A∗ (ε ◦ w = w ◦ ε = w ) I ◦ ist nicht kommutativ. Gegenbeispiel: u = marie, v = anne u ◦ v = marieanne 6= annemarie = v ◦ u 100 Beziehungen zwischen Wörtern (Folgen) Präfix (Anfangswort) v ∀u ∈ A∗ ∀v ∈ A∗ ((u v v ) ↔ (∃w ∈ A∗ (u ◦ w = v ))) (Für zwei Wörter u ∈ A∗ , v ∈ A∗ gilt u v v genau dann, wenn ein Wort w ∈ A∗ existiert, so dass u ◦ w = v gilt.) Beispiele: I an v anna (mit w = na) I n 6v anna I tom v tomate (mit w = ate) I oma 6v tomate I für jedes Wort u ∈ A∗ gilt ε v u (mit w = u) I für jedes Wort u ∈ A∗ gilt u v u (mit w = ε) (analog zur Teiler-Beziehung zwischen natürlichen Zahlen) 101 Postfix- und Infix-Beziehung auf Wörtern (Folgen) Postfix-Beziehung: ∀u ∈ A∗ ∀v ∈ A∗ (Postfix(u, v ) ↔ (∃w ∈ A∗ (w ◦ u = v ))) Für zwei Wörter u = u1 · · · um ∈ A∗ , v = v1 · · · vn ∈ A∗ heißt u genau dann Postfix (Suffix) von v , wenn ein Wort w ∈ A∗ existiert, so dass w ◦ u = v gilt. Beispiel: enten ist Postfix von studenten (mit w = stud) Infix-Beziehung (Teilwort, Faktor): ∀u ∈ A∗ ∀v ∈ A∗ (Infix(u, v ) ↔ (∃w ∈ A∗ ∃w 0 ∈ A∗ (w ◦ u ◦ w 0 = v ))) Für zwei Wörter u = u1 · · · um ∈ A∗ , v = v1 · · · vn ∈ A∗ heißt u genau dann Infix von v , wenn zwei Wörter w , w 0 ∈ A∗ existieren, so dass w ◦ u ◦ w 0 = v gilt. Beispiel: uwe ist Infix von sauwetter (mit w = sa, w 0 = tter ) satt ist kein Infix von sauwetter 102 Beispiele für Sprachen I Menge aller englischen Wörter L1 ⊂ {a, . . . , z}∗ I Menge aller deutschen Wörter L2 ⊂ {a, . . . , z, ß,ä,ö,ü}∗ I Menge aller möglichen DNA L3 ⊆ {A, T , G , C }∗ I Menge aller natürlichen Zahlen in Dezimaldarstellung L4 = {0, . . . , 9}∗ (evtl. mit führenden Nullen) I Menge aller natürlichen Zahlen in Binärdarstellung (Bitfolgen beliebiger Länge) L5 = {0, 1}∗ I Menge aller aussagenlogischen Formeln in AL({p, q, r }) L6 ⊂ {p, q, r , t, f, ¬, ∨, ∧, →, ↔, (, )}, I Menge aller arithmetischen Ausdrücke über L7 ⊂ {0, . . . , 9, +, ·, −, /, (, )}, I Menge aller deutschen Sätze L8 ⊂ (L2 ∪ {., , , !, ?, (, ), −}) Z (ohne Variablen) ∗ Wie lassen sich unendliche Sprachen endlich darstellen? (Voraussetzung für maschinelle Verarbeitung) verschiedene Darstellungen in den LV zur theoretischen Informatik z.B. Automaten und formale Sprachen im 3. Semester (INB) 103