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

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Hier einige Hieroglyphen:
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Diskrete Mathematik I Wintersemester 2007 A. May
7.2 B-Bäume / B*-Bäume als Hilfsmittel zur Indexorganisation
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Graphen Ein Graph ist eine Kollektion von Knoten und Kanten. Knoten sind einfache Objekte. Sie haben Namen und können Träger von Werten, Eigenschaften.
WS 03/041 Algorithmentheorie 01 - Einleitung Prof. Dr. S. Albers Prof. Dr. Th. Ottmann.
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Einführung in Berechenbarkeit und Formale Sprachen
Einige entscheidbare bzw. rekursiv aufzählbare Sprachen
Verifizieren versus Berechnen
Christian Schindelhauer
WS 2009/10 1 Vorlesung Systeme 1. WS 2009/10 2 Vorlesung Systeme 1 Lehrstuhl für Kommunikationssysteme Prof. Gerhard Schneider
Formale Sprachen – Mächtigkeit von Maschinenmodellen
Stoyan Mutafchiev Betreuer: Ilhan, Tim
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
WS 06/07 Algorithmentheorie 01 - Einleitung Prof. Dr. Th. Ottmann Tobias Lauer.
Algorithmen und Datenstrukturen
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
Basisinformationstechnologie I Dozent T.Schaßan Ableitungsbaum Referentin: Munkhnast Dembereldalai.
Kapitel 1 Die natürlichen und die ganze Zahlen. Kapitel 1: Die natürlichen und die ganzen Zahlen © Beutelspacher/Zschiegner April 2005 Seite 2 Inhalt.
M a r c – o l i v e r p a h l Informatik II – Kapitel 18 Übersetzung Zusammenfassung des Kapitel 18 Küchlin, Weber, Vorversion Einführung in die Informatik,
Grundkurs Theoretische Informatik, Folie 3.1 © 2004 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 3 Gottfried Vossen Kurt-Ulrich Witt.
Reguläre Sprachen Karin Haenelt.
Reguläre Ausdrücke Karin Haenelt
© Karin Haenelt 2006, Äquivalenzen Reg.Ausdrücke, Reg.Sprachen, EA ( ) 1 Reguläre Sprachen Karin Haenelt.
Parsing regulärer Ausdrücke
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, ( ) 1 Operationen auf endlichen Akzeptoren und Transduktoren.
© Karin Haenelt 2005, Endliche Automaten: Alphabet, Zeichenreihe, Sprache, Endliche Automaten Grundlagen: Alphabet, Zeichenreihe, Sprache.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Theoretische Informatik 2
Berechenbarkeit. Fragestellungen Können Computer alles ausrechnen? Kann man alles ausrechnen? Was kann man berechnen? Was nicht? Was heißt Berechenbarkeit?
§17 Produkte und Quotienten von Vektorräumen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Polynome und schnelle Fourier-Transformation
Institut für Theoretische Informatik
Institut für Theoretische Informatik
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
Formale Sprachen Mathematische Grundlagen Rudolf FREUND, Marian KOGLER.
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Noam CHOMSKY, Sheila GREIBACH
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 1. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07
Arne Vater Wintersemester 2006/ Vorlesung
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Arne Vater Wintersemester 2006/ Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Das Traveling Salesman Problem (TSP)
Mensch – Maschine - Kommunikation
7. Formale Sprachen und Grammatiken
Christian Scheideler WS 2008
 Präsentation transkript:

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 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/

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.

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

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?

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

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)

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

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

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

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.

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

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

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

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

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

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

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

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

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 ε.