1 / 20

Vorlesung Informatik 3 Einführung in die Theoretische Informatik (01 – Einleitung)

Vorlesung Informatik 3 Einführung in die Theoretische Informatik (01 – Einleitung). Prof. Dr. Th. Ottmann. Organisatorisches. Vorlesung : Jeweils montags, von 11 – 13 Uhr und mittwochs, von 9 – 11 Uhr Übungen : wöchentl. zu versch. Terminen (4 Gruppen), Assistent: Dr. W. Hürst

Download Presentation

Vorlesung Informatik 3 Einführung in die Theoretische Informatik (01 – Einleitung)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vorlesung Informatik 3Einführung in die Theoretische Informatik(01 – Einleitung) Prof. Dr. Th. Ottmann

  2. Organisatorisches Vorlesung: Jeweils montags, von 11 – 13 Uhr und mittwochs, von 9 – 11 Uhr Übungen: wöchentl. zu versch. Terminen (4 Gruppen), Assistent: Dr. W. Hürst Dienstags, 9 – 11 Uhr (2 Gruppen) Dienstags, 14 – 16 Uhr Freitags, 11 – 13 Uhr Anmeldung über Web-Formular (Link in CampusOnline unter „News“ auf der Startseite der Vorlesung) ab sofort bis spätestens Donnerstag, 29.10.05 Weitere Infos: Siehe • Infoblatt zu CampusOnline (Anmeldung etc.) und • Infoblatt zum Vorlesungs-/Übungsbetrieb (Termine, Prüfungsvorraussetzungen etc.) http://ad.informatik.uni-freiburg.de/lehre/ws0506/info3/

  3. Die nächsten Termine Mo 24.10. 11 – 13 Uhr, 1. Vorlesung, HS 026 Mi 26.10. Keine Vorlesung (Eröffnung des akademischen Jahres) Mo 31.10. 11 – 13 Uhr, 2. Vorlesung, Wiedergabe der Aufzeichnung vom Mo 24.10., 16 – 18 Uhr, HS 106, MM-Raum Mi 2. 11. 9 – 11 Uhr, 3. Vorlesung, Wiedergabe der Aufzeichnung vom Do 27.10., 13 – 15 Uhr, HS 106 MM-Raum Mo 7.11. 11 – 13 Uhr 4. Vorlesung Mi 9.11. 9 – 11 Uhr 5. Vorlesung …..usw.

  4. Literatur U. Schöning: Theoretische Informatik kurz gefasst, Spektrum Akademischer Verlag (März 2001) M. Sipser: Introduction to the Theory of Computation, Second Edition, Course Technology (2005) John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman: Introduction to Automata Theory, Languages, and Computation, Addison Wesley Publishing Company (2001) Deutsche Übersetzung: Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie.  Pearson Studium (2002) Katrin Erk, Lutz Priese: Theoretische Informatik, Springer, Berlin (2001) Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, 3. überarbeitete und erweiterte Auflage 2004XIV + 405 Seiten, € 29,90, ISBN 3-528-23147-5 Vieweg Verlag U.v.a

  5. Themen der Vorlesung Antworten auf grundsätzliche Fragen, wie z.B. • Was kann man überhaupt (nicht) mit Computer lösen? • Wie groß ist der Aufwand zum Lösen von Problemen? Kann die Problemlösung am Aufwand scheitern? • Was sind sinnvolle mathematische Modelle von Automaten und Computern? Für welche Zwecke eignet sich welches Modell? • Welche Alternativen zur Modellierung von Rechenvorgängen gibt es?

  6. Einige Antworten der Vorlesung Theorie der Berechenbarkeit: Es gibt nicht berechenbare Funktionen; es gibt überhaupt viel mehr Funktionen als Algorithmen Komplexitätstheorie: Es gibt Probleme, bei denen die Zeit zum Berechnen einer Lösung nur polynomiell von der Problemgröße abhängt und andere, zu deren Lösung (vermutlich) kein in Polynomzeit ausführbarer Algorithmus existiert Automatentheorie: Es gibt eine Hierarchie von immer leistungsfähigeren Automaten, endliche Automaten, Pushdown- Automaten, Register- und Turingmaschinen Theorie der formalen Sprachen: Es gibt eine Hierarchie Formaler Grammatiken, mit denen man immer größere Klassen von Sprachen erzeugen kann

  7. Kurze Historie der Berechenbarkeitstheorie ~ 800 Ibn Musa Al-Chwarismi (persischer Mathematiker und Astronom) schreibt Lehrbuch über as Lösen von algebraischen Gleichungen ~ 1300 Raimundus Lullus (katalanischer Philosoph) sucht in Ars Magna Methode zur Lösung mathematischer Probleme 1888 Dedekind: primitiv rekursive Funktionen 1928 Ackermann: berechenbare, nicht primitiv rekursive Funktion Bis 1931 Allgemeine Ansicht: Jedes hinreichend genau formulierte mathematische Problem kann gelöst werden. Hilbert sucht nach allgemeinem Lösungsverfahren. 1931 Gödel: In jedem hinreichend ausdrucksfähigen formalen System gibt es wahre Sätze, die nicht mit Hilfe eines Algorithmus hergeleitet werden können (Gödelscher Unvollständigkeitssatz). Erste Algorithmenpräzisierung Um 1936 Verschiedene Präzisierungen des Algorithmenbegriffs. λ-Kalkül (Church), μ-rekursive Funktionen (Kleene), (allg.) rekursive Funktionen (Gödel, Herbrand), Turing-Maschinen (Turing)

  8. Beispiel: Existenz nicht berechenbarer Funktionen Unabhängig vom Rechnermodell gilt: • Algorithmen werden durch Programme beschrieben • Programme sind Texte endlicher Länge über einem endlichen Alphabet • Alle gültigen Programme lassen sich abzählen (mit einer Nummer identifizieren): P0, P1, P2, P3, P4, P5, …. Satz: Es gibt mehr Funktionen f : N → N als berechnende Programme Beweis: Technik: Diagonalisierung

  9. Diagonalisierung 0 1 2 3 4 5 6 …. n …. fP0 fP1 fP2 fP3 fP4 .. fd

  10. Beweistechniken • Diagonal-/ Schubfachschluss • Direkter Beweis: Beweise die Aussage durch explizite Prüfung aller denkbaren Fälle • Indirekter Beweis: Nehme das Gegenteil der Behauptung an und zeige, dass das zu einem Widerspruch führt • Vollständige (strukturelle) Induktion: Zeige, dass Aussage • für gegebene Anfangs Strukturen gilt • sie richtig bleibt für (rekursiv aus einfacheren Bestandteilen) erzeugte Strukturen

  11. Beispiel eines direkten Beweises Satz: In jeder binären 2x2 Matrix kommen höchstens 3 der 4 möglichen Bitvektoren der Länge 2 vor.

  12. Beispiel eines indirekten Beweises Satz:  2 ist keine rationale Zahl, d.h.  2 kann man nicht als Bruch m/n darstellen.

  13. Beispiel eines Induktionsbeweises Satz: Für alle natürlichen Zahlen n ≥ 4 gilt: 2n ≥ n2

  14. Beispiel für eine strukturelle Induktion Sei P die wie folgt definierte Teilmenge der natürlichen Zahlen • 3  P und 17  P • Wenn n  P, dann sind auch die Zahlen 2n + 1 und 3n + 2 in P. Satz: Alle Zahlen in P sind ungerade

  15. Schubfachschluss - Zählargument Satz: Für alle natürlichen Zahlen n ≥ 1 gilt: Die Zeilen und Spaltenvektoren einer n x n Bit-Matrix schöpfen nicht alle möglichem n-Bit Vektoren aus

  16. Diagonalschluss Satz: Für alle n ≥ 1 und jede beliebige n x n Bitmatrix M =(bij), 1 ≤ i, j ≤ n, gilt: Der n – Bit – Vektor V = (¬b11, ¬ b22, …, ¬ bnn) tritt weder als Zeilen- noch als Spaltenvektor in M auf. Dabei bezeichnet ¬b für ein Bit b  {0,1} das Bit: ¬b = 0, falls b = 1, ¬b = 1, falls b = 0

  17. Wiederholung einiger Begriffe aus der diskreten Mathematik Mengen: • Teilmenge, Potenzmenge • Kartesisches Produkt • endliche, unendliche, abzählbare Menge

  18. Relationen Äquivalenzrelationen: Eine zweistellige Relation heißt Äquivalenzrelation, wenn sie reflexiv, transitiv und symmetrisch ist

  19. Grundbegriffe für Graphen Sei V eine Menge von Knoten, G = (V, E) mit E  V x V heißt Graph mit Knotenmenge V und Kantenmenge E. Gerichteter, ungerichteter Graph Pfad, Zyklus Zusammenhängender, zyklischer, azyklischer Graph Bäume, Wurzel, Blätter

  20. Alphabete, Worte, Sprachen Alphabet: Endliche Menge von Symbolen  Beispiele:  = {0, 1},  = {a, b, c, …., x, y, z} Wort (Zeichenreihe): Jede endliche Aneinanderreihung von Symbolen des zugrunde liegenden Alphabets inklusive des leeren Wortes ε.

More Related