EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2014 0. ORGANISATORISCHES UND ÜBERBLICK Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 1 / 16
Organisatorisches: Vorlesung DOZENT Prof. Dr. Klaus Ambos-Spies INF 294 (Angewandte Mathematik), Raum 015 Sprechstunde: Mo 11-12 h und nach Vereinbarung VORLESUNGSZEITEN Montag 9.15-10.45 h und Donnerstag 11.15-12.45 h Raum: INF 252 (Chemie-Hörsaalgebäude), Hörsaal Ost Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 2 / 16
Organisatorisches: Übungen KOORDINATORIN Nadine Losert INF 294, Raum 012 Sprechstunde: Mi 10-11 h und nach Vereinbarung TUTOREN Jan Gutknecht Markus Schäfers Patrick Scholz ZEITEN DER ÜBUNGSGRUPPEN (6 GRUPPEN) Mo 11-13h, INF 294, HS - 102 (Jan Gutknecht) Mo 14-16h, INF 288, HS 6 (Jan Gutknecht) Mo 16-18h, INF 288, HS 1 (Patrick Scholz) Di 16-18h, INF 288, HS 4 (Patrick Scholz) Do 14-16h, INF 294, HS - 102 (Markus Schäfers) Do 16-18h, INF 294, HS - 102 (Markus Schäfers) Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 3 / 16
Organisatorisches: Übungen (Fortsetzung) ANMELDUNG Über das MÜSLI-System ab sofort bis Mi 16.04. (24 h) Nähere Informationen: s. Vorlesungswebseite BEGINN 2. Vorlesungswoche (ab 22.4.) Bei den Übungen besteht Präsenzpflicht! Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 4 / 16
Organisatorisches: Prüfung / Scheine STUDIENBEGLEITENDE PRÜFUNG (für Studierende in den BA-Studiengängen) ÜBUNGSSCHEINE mit ETCS-Punkten (für Studierende in anderen Studiengängen) VORAUSSETZUNG: Erfolgreiche Teilnahme an den Übungen (50 %; Näheres in den Übungen) KLAUSUR (90 Minuten) Voraussichtlicher Termin: Do 31. Juli 2014, 13:30-15 Uhr NACHKLAUSUR (nur bei Nichtbestehen der Klausur) Voraussichtlicher Termin: Do 9. Oktober 2014, 13:30-15 Uhr Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 5 / 16
Organisatorisches: Webseite der Vorlesung Alle aktuellen Informationen zur Vorlesung sowie Übungsblätter, Folien usw. finden sich auf der Webseite der Vorlesung: http://www.math.uni-heidelberg.de/logic/ss14/theoinf ss14.html Zusätzliche Informationen: Seite der Vorlesung im SoSe 2013: http://www.math.uni-heidelberg.de/logic/ss13/theoinf ss13.html Skript zu einer früheren Vorlesung (ähnlicher Inhalt): http://www.math.uni-heidelberg.de/logic/lehre/skripten.html Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 6 / 16
Überblick: Themen Die Vorlesung gibt eine Einführung in drei zentrale Gebiete der Theoretischen Informatik: Berechenbarkeitstheorie Komplexitätstheorie Theorie der Formalen Sprachen und Automatentheorie Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 7 / 16
Berechenbarkeitstheorie: Ziele Die Berechenbarkeitstheorie untersucht die Frage, welche Probleme sich algorithmisch (d.h. mit Hilfe eines Computers) prinzipiell lösen lassen. Im Mittelpunkt steht die Untersuchung der berechenbaren Funktionen (= algorithmisch durchführbare Transformationen) der entscheidbaren Mengen (= algorithmisch lösbare Entscheidungsprobleme) der aufzählbaren Mengen (= algorithmisch generierbare Lösungsmengen) Hierzu werden diese intuitiven Begriffe formalisiert (mathematisiert) und bestehende Zusammenhänge untersucht. Besondere Bedeutung hat die Bestimmung algorithmisch unlösbarer Probleme sowie die Bereitstellung von Methoden zum Nachweis der Unlösbarkeit. Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 8 / 16
Berechenbarkeitstheorie: Vorlesungsthemen Intuitiver Algorithmenbegriff und die intuitiven Begriffe der Berechenbarkeit, Entscheidbarkeit und Aufzählbarkeit (Ideen und Zusammenhänge) Ansätze zur Formalisierung des Berechenbarkeitsbegriffs: Turingmaschinen Registermaschinen Rekursive Funktionen Nachweis der Äquivalenz dieser formalen Konzepte (Äquivalenzsatz) und die Church-Turing-These (Formalisierung adäquat) Existenz Universeller Maschinen (= Universalcomputer) Grenzen der algorithmischen Methode: Unentscheidbarkeit des Halteproblems und anderer semantischer Programmeigenschaften (Satz von Rice) Methoden zum Nachweis der Unentscheidbarkeit (Reduktionsmethode und vollständige aufzählbare Mengen) Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 9 / 16
Komplexitätstheorie: Ziele Während die Berechenbarkeitstheorie die Frage untersucht, welche Probleme sich prinzipiell algorithmisch lösen lassen, ohne die zur Lösung erforderlichen Ressourcen zu betrachten, werden in der Komplexitätstheorie Fragen des erforderlichen Aufwands der Lösungen betrachtet. Dabei sind Rechenzeit und Speicher(=Platz)bedarf die wichtigsten Kostenfunktionen (Komplexitätsmaße). Insbesondere werden in der Komplexitätstheorie der begriffliche Rahmen für die Komplexitätsanalyse konkreter Probleme geschaffen und typische Phänomene untersucht. Dabei betrachtet man untere (Komplexitäts-)Schranken (= Mindestaufwand jeder möglichen Lösung) und obere Schranken (= Aufwand, der zumindest für eine Lösung ausreicht) eines Problems. Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 10 / 16
Komplexitätstheorie: Ziele (Fortsetzung) Typische Fragestellungen: Gibt es beliebig schwer lösbare Probleme? (JA Hierarchiesätze) Besitzt jedes lösbare Probleme eine optimale (=kostengünstigste) Lösung? (NEIN Speed-Up-Theorem) Sind parallele Rechner prinzipiell schneller als sequentielle Rechner? ( Nichtdeterminismus, P-NP-Problem) Wie beweist man untere Komplexitätsschranken? ( (NP-)Vollständigkeit und Härte) Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 11 / 16
Komplexitätstheorie: Vorlesungsthemen Rechenzeit und Speicherplatzbedarf Hierarchiesätze Nichtdeterministische Maschinen Grenzen der tatsächlichen Berechenbarkeit: Das P-NP-Problem NP-vollständige Probleme Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 12 / 16
Formale Sprachen: Ziele Die Theorie der Formalen Sprachen beschäftigt sich mit Charakterisierung und Analyse der Syntax natürlicher Sprachen und künstlicher Sprachen (wie Programmiersprachen) mit Hilfe von Grammatiken. Dabei wird eine Sprache als Menge von Wörtern aufgefasst. Z.B. wird die Programmiersprache C als die Menge aller (syntaktisch) korrekten C-Programme definiert (wobei jedes Programm als ein Wort aufgefasst wird). Als Grammatiken werden meist sog. generative Grammatiken (Chomsky-Grammatiken) verwendet, die eine endliche Menge von Regeln zur Erzeugung der Wörter der Sprache bereitstellen. Typische Fragen über Grammatiken sind das Wortproblem (Ist ein gegebenes Wort in der Grammatik erzeugbar?) oder das allgemeinere Analyseproblem (Syntaxanalyse Compilerbau). Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 13 / 16
Formale Sprachen: Ziele (Fortsetzung) Von beliebigen Chomsky-Grammatiken erzeugte Sprachen sind aufzählbar aber i.a. nicht entscheidbar (d.h. das Wortproblem ist algorithmisch nicht lösbar). Man betrachtet daher spezielle Typen von Chomsky-Grammatiken, bei denen die Gestalt der Regeln eingeschränkt ist. kontextsensitive, kontextfreie, lineare, rechtslineare (=reguläre) Grammatiken und Sprachen (Chomsky-Hierarchie) Zur algorithmischen Analyse der korrespondierenden Sprachen führt man auch geeignete Maschinen (Automaten) ein, die das Wortproblem der Sprachen eines gegebenen Typs lösen können. Turingmaschinen, linear beschränkte Automaten, Push-Down-Automaten, endliche Automaten (Automatentheorie) Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 14 / 16
Formale Sprachen: Vorlesungsthemen Chomsky-Grammatiken und die von diesen erzeugten Sprachen Die Chomsky-Hierarchie Maschinencharakterisierungen der Chomsky-Sprachklassen (Endliche Automaten, Push-Down-Automaten, Turingakzeptoren) Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 15 / 16
Vorlesungsthemen: Zusammenfassung Da man Entscheidungsprobleme als formale Sprachen auffassen kann, gibt es enge Beziehungen zwischen der Theorie der Formalen Sprachen und der Automatentheorie auf der einen Seite und der Berechenbarkeits- und Komplexitätstheorie auf der anderen Seite. Die drei in der Vorlesung behandelten Themenkreise sind daher von Konzepten und Methoden her eng miteinander verknüpft. Man könnte die algorithmische Darstellung und Analyse von Wortmengen als das übergeordnete Thema der Vorlesung ansehen. Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 16 / 16