X Y T Z 0 1 2 X L W 4 C B 3 4 N B U Q R S T 0 O 6 K E V P A J 9 Notizen G C 5 8 3 U 9 A F Y Q D E F 8 G H 1 I D R 2 H I J K Z L N 7 M O 6 7 P S 5 V W M DISKRETE STRUKTUREN Wintersemester 2015/2016 17. Oktober 2015 Prof. Dr. Steffen Reith Theoretische Informatik Studienbereich Angewandte Informatik Hochschule RheinMain Notizen ADMINISTRATIVES Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik TERMINE Notizen Vorlesung: Donnerstag 815 - 945 im Hörsaal UDE-B002 Übungsgruppen: Gruppe A (WI) Mittwoch 1000 - 1130 UDE-C037 Zschiegner Gruppe B (WI) Mittwoch 1145 - 1315 UDE-C037 Zschiegner Gruppe C (WI) Mittwoch 1600 - 1730 UDE-C407 Campos Gruppe A (AI) Mittwoch 815 - 945 UDE-C037 Zschiegner Gruppe B (AI) Donnerstag 1600 - 1730 UDE-C037 Reith Gruppe C (AI) Freitag 815 - 945 UDE-C035 Reith Der Übungsbetrieb beginnt in der KW 43 ab Mittwoch 3 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik ÜBER DEN DOZENTEN Notizen → Prof. Dr. Steffen Reith, geboren ja1968, verheiratet, ein Kind → Seit Sommersemester 2006 an der Hochschule RheinMain → Vorher tätig als Softwareentwickler für kryptographische und mathematische Algorithmen für tief eingebettete System in KFZs. → Spezialgebiete: Komplexitätstheorie, Logik in der Informatik, Kryptographie (Computational Number Theory) und tief eingebettete Systeme EMail: [email protected] IM (Skype): Steffen.Reith (jederzeit) Sprechzeiten: Nach Vereinbarung Donnerstag 1400 Büro: Raum C202 4 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik WEITERE INFORMATIONEN ZUR VORLESUNG Notizen Webseite: http://www.cs.hs-rm.de/~reith Auf der Webseite ist auch ein RSS-Feed verfügbar (manchmal). Literatur: → Meinel, Mundhenk, Mathematische Grundlagen der Informatik: Mathematisches Denken und Beweisen, Vieweg+Teubner, 2008 → Haggarty, Diskrete Mathematik für Informatiker, Pearson Studium, 2004 → Beutelspacher, Das ist o. B. d. A. trivial!: Tipps und Tricks zur Formulierung mathematischer Gedanken, Vieweg+Teubner, 2009 → Beutelspacher, Zschiegner, Diskrete Mathematik für Einsteiger, Vieweg+Teubner, 2011 5 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik WEITERE INFORMATIONEN ZUR VORLESUNG (II) Notizen Bender: Ahhh, what an awful dream. Ones and zeroes everywhere and I thought I saw a two. Fry: It was just a dream, Bender. There's no such thing as two. Ein Schlüssel zum erfolgreichen Studium ist die permanente Beschäftigung mit Literatur! Die Wikipedia ist keine brauchbare Wissensquelle für technisch/wissenschaftliche Fragestellungen! Mathematik ist ein full contact“ Sport! Zuschauen reicht nicht! ” Auf der Webseite der Vorlesung finden Sie ein Grundlagenskript. Hier sind (evtl. unbekannte) Schreibweisen nochmal zusammen gefasst. Sollten Inhalte fehlen, dann sagen Sie das bitte! 6 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik WEITERE INFORMATIONEN ZUR VORLESUNG (III) Notizen Ersatztermine: Werden Dienstags stattfinden Skript: Wird in (sehr) unregelmäßigen Abständen auf der Webseite der Vorlesung veröffentlicht (eine alte (fehlerhafte!) Version ist schon bald online). Folien: Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verfügung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachträglich) zur Verfügung stehen. Eine eigene Mitschrift sollte angefertigt werden! 7 Notizen EINLEITUNG Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EIN ROTER FADEN Notizen In der Vorlesung werden die folgenden Themen untersucht: i) Logik: Aussagen, Logische Verknüpfungen, Rechnen mit logischen Verknüpfungen Aussageformen, Quantoren ii) Mengen: Mengenoperationen, Potenzmenge, Kartesisches Produkt, Relationen, Funktionen iii) Beweise: direkte und indirekte Beweise, Gegenbeispiele iv) Induktion: Prinzip der vollständige Induktion, induktive Definitionen und strukturelle Induktion v) Mächtigkeit von Mengen: Abzählbarkeit / Überabzählbarkeit vi) Graphen: gerichtet und ungerichtete Graphen, Adjazenzmatrix, Wege, Kreise, Zusammenhang vii) Elementare Zahlentheorie und algebraische Strukturen: Teilbarkeit, Kongruenzen, Gruppen, Ringe, Körper, Vektorräume 9 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik WARUM MATHEMATIK (THEORIE)? Notizen Die mathematischen Grundlagen der Informatik sind schwach ” motiviert“, langweilig“, schwer“ und nutzlos“! ” ” ” Warum lohnt sich Mathematik? → Konkrete Technologien ändern sich sehr schnell, deshalb sollte man die extrem langlebigen Konzepte verstehen. → Hintergrundinformationen ermöglichen Chancen und Grenzen von Technologien zu verstehen. → Mathematik gibt Hinweise, welche Wege zu keiner Lösung führen werden. → Verbesserung des strukturierten Denkens und der Problemlösungskompetenz. → (Tiefgreifende) Ideen führen zu schnellen Algorithmen Ohne Mathematik werden Sie nicht erfolgreich! 10 Notizen EIN BEISPIEL Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EIN SEHR EINFACHES BEISPIEL Notizen Kugeln sind in einer quadratischen Pyramide der Höhe h gestapelt. Schreiben Sie ein Programm, dass die Anzahl der Kugeln berechnet: unsigned long CalcBalls(unsigned long height) { unsigned long i; /* Zaehler */ unsigned long sum = 0; /* Akt. Summe v. Kugeln */ for (i = 1; i <= height; i++) { sum += (i*i); } return sum; /* Summe ist Anzahl der Kugeln */ } 12 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EIN SEHR EINFACHES BEISPIEL (II) Es gilt n ∑ i=1 i2 = Notizen n(n+1)(2n+1) . 6 (IA) Eine Pyramide der Höhe n = 1 enthält (IV) Für k ≤ n gilt k ∑ i2 = i=1 (IS) n+1 ∑ i2 i=1 = (IV) = = = = = = 1·2·3 6 = 1 Kugel. k(k+1)(2k+1) . 6 n ∑ i2 + (n + 1)2 i=1 n(n+1)(2n+1) + (n2 + 2n + 1) 6 2n3 +3n2 +n + (n2 + 2n + 1) 6 3 2 2n +9n +13n+6 6 (n+1)(2n2 +7n+6) 6 (n+1)(n+2)(2n+3) 6 (n+1)((n+1)+1)(2(n+1)+1) 6 13 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EIN SEHR EINFACHES BEISPIEL (III) Notizen Dies führt direkt zu einem rekursiven Algorithmus: unsigned long CalcBalls(unsigned long height) { /* Rekursionsabbruch? */ if ((height == 0) || (height == 1)) { return height; } else { return (height * height) /* Anzahl Kugeln in akt. Ebene */ + CalcBalls(height - 1); /* Restpyramide */ } } Leider auch nicht schneller 14 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EIN SEHR EINFACHES BEISPIEL (IV) Notizen Aber wir wissen: unsigned long CalcBalls(unsigned long height) { /* Induktiv gezeigte Formel verwenden */ return ( height * (height + 1) * ((2 * height) + 1)) / 6; } Hintergrundwissen führt zu einem wesentlich schnelleren und übersichtlicheren Algorithmus Also: Das schreibe ich einfach ab!“. Aber was passiert denn die ” Pyramide n-eckig ist? Und: Abschreiben kann jeder! Damit ist die Dienstleistung des abschreibens“ wenig wert. ” 15 Notizen SPIELREGELN Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik SPIELREGELN Notizen → → → → → Laptops und Handys sind zu Beginn der Veranstaltung aus Wir (Dozent + Hörer) sind pünktlich Es redet nur eine Person Bei Fragen und Problemen sofort melden / fragen Es wird Eigeninitiative und selbstständiges Arbeiten erwartet Ziel: Die Studenten brauchen keinen Dozenten mehr → Eine Vorlesung ist keine (wöchentliche) Fernsehserie! → Eine Vorlesung wird von den Hörern und vom Dozenten gestaltet → aktive Mitarbeit erwünscht und erforderlich → Der Dozent will motiviert werden → selbstständige Vor- und Nachbereitung ist notwendig → Lernen nur kurz vor der Klausur ist tödlich! (kontinuierliches Lernen) Deshalb: Der erste Tag für die Vorbereitung auf die Klausur ist heute. → Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis! 17 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik SPIELREGELN (II) Notizen Was wünschen Sie sich? 18 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik ÜBUNG Notizen Start der Übung: Nächste Woche (KW 43) → Auf der Webseite werden Sie jede Woche Aufgabenblätter für die Übung finden. Diese Übungen müssen selbstständig, vollständig und regelmäßig gelöst werden. → Vorstellen / Besprechen von Lösungen an der Tafel. → Je nach Gruppengröße werden die Noten (mind. zwei Teilnoten) durch Vorrechnen an der Tafel oder durch unangekündigte kurze Tests ermittelt. → Eine Teilaufgabe kann mehrere Stunden angestrengtes Nachdenken bedeuten! Wird eine Aufgabe nicht gelöst, so hilft das trotzdem beim Lernen. → Die Übung ist für Sie die Chance neue Konzepte zu vertiefen, zu verstehen (fragen!) und anzuwenden. → Viele Begriffe und Konzepte kann man nur durch beständiges und hartnäckiges Üben erlernen. 19 Notizen EINE (ZU KURZE) EINFÜHRUNG IN DIE LOGIK Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik AUSSAGEN Notizen Ziel: Sachverhalte der (wirklichen) Welt sollen mathematisch exakt formuliert werden (können). Dazu sind Gedanken zu → Aussagen → Beweisen → Mengen (später) notwendig. → Die Logik entwickelte sich aus der Philosophie und ist heute die Grundlage für alle Wissenschaften. → Die moderne Logik entwickelte sich durch G. Frege (1879, Begriffsschrift“), A. Whitehead und B. Russel (1910, ” Principia Mathematica“) und D. Hilbert (1920er Jahre, ” Hibertprogramm, Widerspruchsfreiheit der Axiomensysteme der Mathematik) 21 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik AUSSAGEN (II) Notizen Heute ist die Logik eines der zentralen Werkzeuge der Informatik (z.B. formale Korrektheit von Programmen, Semantic Web, KI, etc.). Es wird (streng) die deduktive Methode, d.h. Schlussfolgerungen von gegeben Prämissen auf zwingende Konsequenzen (Konklusionen) angewendet (vgl. Wissenschaftstheorie und Erkenntnisgewinn). Definition Eine Aussage ist ein Satz, der entweder wahr oder falsch ist, aber nie beides gleichzeitig. Eine wahre Aussage hat den Wahrheitswert w“ (oder 1“ / true) ” ” und falsche Aussagen f“ (oder 0“ / false). ” ” 22 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik AUSSAGEN (III) Notizen Beispiel → Wiesbaden liegt in Hessen → 11 ist eine gerade Zahl → Ein Babier ist einer, der genau alle die rasiert, die sich nicht selbst rasieren Das letzte Beispiel führt zum Russell-Paradoxon und hat 1918 eine Grundlagenkrise in der Mathematik ausgelöst. Aussagen können auch verknüpft werden: 11 ist eine Primzahl und Wiesbaden liegt am Rhein.“ ” Dies ist wieder eine Aussage! 23 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik AUSSAGEN (IV) Notizen Idee: Repräsentiere ganze Aussagen durch Aussagenvariablen, die einen Wahrheitswert haben. Nun können die umgangssprachlichen Verknüpfungen und“, ” oder“, nicht“, wenn . . . dann“ und entweder oder“ ” ” ” ” (mathematisch) präzise aufgeschrieben werden. Umgangssprache und oder nicht wenn . . . dann entweder . . . oder genau dann wenn Name i.d. Logik Konjunktion Disjunktion Negation Implikation Kontravalenz Äquivalenz Symbol ∧ ∨ ¬ → ⊕ ↔ Die Verknüpfungen nennt man auch Junktoren“. ” 24 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EINIGE DEFINITIONEN Notizen Die Bedeutung der Junktoren wird nun wie folgt festgelegt: x 0 0 1 1 y 0 1 0 1 x ∧ y x ∨ y x → y x ⊕ y x ↔ y ¬x 0 0 1 0 1 1 0 1 1 1 0 1 0 1 0 1 0 0 1 1 1 0 1 0 Schreibt man alle Kombinationsmöglichkeiten von Wahrheitswerten in einer Tabelle auf, um den Wahrheitswert einer zusammengesetzten Aussage zu ermitteln, so nennt man diese Tabelle Wahrheitswertetabelle oder Wahrheitswertetafel. In der Praxis wird die Disjunktion oft mit der Kontravalenz verwechselt! 25 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik DIE GLEICHWERTIGKEIT VON FORMELN - EIN BEISPIEL Notizen Definition Eine Verknüpfung von Aussagenvariablen mit Junktoren heißt (aussagenlogisch) Formel. Beispiel Die Aussagen (x → y)∧(y → x) und (x ↔ y) sind gleichwertig: x 0 0 1 1 y 0 1 0 1 x → y y → x (x → y) ∧ (y → x) x ↔ y 1 1 1 1 1 0 0 0 0 1 0 0 1 1 1 1 26 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EINIGE DEFINITIONEN Notizen Anmerkung Jede Zeile einer Wahrheitswertetafel heißt Belegung (der Wahrheitswertevariablen). Eine Belegung ist also eine Funktion, die Wahrheitswertevariablen auf Wahrheitswerte abbildet. Eine Wahrheitswertetabelle enthält alle möglichen Belegungen der Variablen. Definition Eine Formel heißt Tautologie, wenn sie für jede mögliche Belegung wahr ist. Eine Formel wird Kontradiktion genannt, wenn sie für jede Belegung falsch ist. 27 Administratives Einleitung Ein Beispiel Spielregeln Eine (zu kurze) Einführung in die Logik EINIGE DEFINITIONEN (II) Notizen Definition Zwei Formeln H1 und H2 heißen logisch gleichwertig (kurz: H1 ≡ H2 ) genau dann, wenn (H1 ↔ H2 ) eine Tautologie ist. Anmerkung Äquivalente Formeln haben die gleiche Wahrheitswertetafel. Anmerkung Mit dieser Beobachtung kann man in einer Formel eine Teilformel durch eine äquivalente Teilformel ersetzen, wobei die neue Formel wieder äquivalent ist. → man kann Formeln umformen“ / vereinfachen“ ” ” 28