Theoretische Informatik und Logik

Aus International Center for Computational Logic
Wechseln zu:Navigation, Suche

Theoretische Informatik und Logik

Lehrveranstaltung mit SWS 4/2/0 (Vorlesung/Übung/Praktikum) in SS 2024

Dozent

Tutor

Umfang (SWS)

  • 4/2/0

Module

Leistungskontrolle

  • Klausur

Matrix-Kanal

Vorlesungsreihe


Die Lehrveranstaltung vermittelt eine vertiefende Einleitung in die theoretische Informatik, beginnend mit den Grundlagen der Berechenbarkeits- und Komplexitätstheorie, Prädikatenlogik und deren Bezug zu Komplexität und Datenbanken, bis hin zu weiterführenden Themen wie Gödels Unvollständigkeitstheoreme und die Beziehung von Logik und formalen Sprachen. Wir stoßen vor zu den Grenzen der Informatik und Mathematik, treffen auf fleißige Biber und verrückte Logiker, vergleichen SQL mit Tic Tac Toe und stellen die großen Fragen unseres Fachgebiets.

Die Vorlesung ist weitgehend selbsterklärend, aber Grundlagen aus der Veranstaltung Formale Systeme können hilfreich sein.

Vorlesungen

Die Vorlesungstermine sind

  • montags 3.DS (11:10–12:40) in HÜL/S386 sowie
  • donnerstags 4.DS (13:00–14:30) in HSZ/0002.

Die erste Vorlesung findet am Montag, dem 8. April 2024 statt.

Übungen

Die Einschreibung in die Übungsgruppen wird über OPAL erfolgen. Die Einschreibung ist ab Montag, dem 8. April 2024, 18:00 Uhr möglich. Für die Teilnahme an einer Übungsgruppe ist die Einschreibung in dieser Gruppe verpflichtend. Studierenden ohne Einschreibung kann die Teilnahme an einer selbst gewählten Übung nicht garantiert werden. Übungsleiter sind berechtigt, nicht eingeschriebene Studierende bei Überfüllung aus der Übung zu verweisen.

Die folgenden Termine für Übungen werden von uns angeboten:

  • Gruppe A: montags 5. DS (14:50-16:20) in APB E008 (Übungsleiter: Florens Förster)
  • Gruppe B: dienstags 5. DS (14:50-16:20) in APB E006 (Übungsleiter: Dörthe Arndt)
  • Gruppe C: mittwochs 3. DS (11:10-12:40) in APB E008 (Übungsleiter: Anton Claußnitzer)
  • Gruppe D: mittwochs 5. DS (14:50-16:20) in APB E010 (Übungsleiter: Florens Förster)
  • Gruppe E: donnerstags 3. DS (11:10-12:40) in APB E006 (Übungsleiter: Marcos Cramer)
  • Gruppe F: donnerstags 5. DS (14:50-16:20) in POT 0106 (Übungsleiter: Linus Wemmer)
  • Gruppe G: freitags 2. DS (9:20-10:50) in APB E009 (Übungsleiter: Stephan Mennicke)

Die Übungsgruppe G wird vorläufig als hybride Übung für Studierende der TU Dresden angeboten. Die Plattform, für die Übung ist BigBlueButton. Nutzen Sie diesen Link, um der Veranstaltung zu seiner Zeit beizutreten. Sie benötigen einen ZIH-Login, um der Veranstaltung beitreten zu können. Dieses zusätzliche Angebot ist ein Pilotversuch. Sollte sich dieses Format als umständlich oder schwer durchführbar erweisen, wechseln wir zum ausschließlichen Präsenzmodus.


Der Übungsbetrieb startet am 15. April 2024 zu Ihren jeweiligen Terminen in den angegebenen Räumen. Die Übungsblätter können in der Spalte der jeweiligen Übung unter Termine und Unterlagen heruntergeladen werden.

WHILE/LOOP Simulator

Wir bieten einen Online-Simulator für WHILE- und LOOP-Programme an. Der Simulator unterstützt zusätzlich zu den Grundsprachen einige der Abkürzungen aus der Vorlesung. Im Menü unter Beispiele finden sich einige Beispielprogramme, die in das Programmfeld kopiert werden können.

Der Simulator wurde von Simon Meusel entwickelt. Der Quellcode ist frei verfügbar unter https://github.com/knowsys/while-simulator . Pull-Requests sind Willkommen.

Unterlagen

Die vollständigen Foliensätze zur Vorlesung erscheinen bis zur Woche der Vorlesung online (siehe Termine und Unterlagen). Weiterführende Literatur ist unter Literatur angegeben. Die Quellen der Vorlesungsfolien sind auf github verfügbar: https://github.com/knowsys/TheoLog

(C) Markus Krötzsch, https://iccl.inf.tu-dresden.de/web/TheoLog2017, CC BY 3.0 DE

Bildrechte können davon abweichen und sind gesondert in den LaTeX-Dateien angegeben. Die Foliensätze enthalten keinerlei Texte, die aus Werken entnommen sind, für welche die VG Wort Verwertungsrechte vertritt.

Die Nutzung der Materialien in eigenen Lehrveranstaltungen ist willkommen, sofern der obige Lizenztext in allen abgeleiteten Foliensätzen angegeben wird. Rückmeldungen sind ebenfalls willkommen (z.B. als Issue zu diesem Repository); wir verlinken hier gern auf die Homepages der entsprechenden Kurse. Interessierte Lehrende können ihre abgewandelten Quellen auch mit in diesem Respository veröffentlichen -- kontaktieren Sie Prof. Krötzsch.

Die Folien wurden erstellt von Markus Krötzsch. Eine vollständige Liste der Beitragenden ist unter https://github.com/mkroetzsch/TheoLog/graphs/contributors zu finden.

Kontakt

Zur Kommunikation unter Vorlesungsteilnehmern der TU Dresden steht ein Matrix-Kanal zur Verfügung.

Kommentare und Bug Reports können gern auch direkt über die entsprechenden Seiten auf github gepostet werden: https://github.com/mkroetzsch/TheoLog

Persönliche Fragen können direkt an das Organisationsteam (siehe Links oben) gestellt werden, falls sie aus einem zwingenden Grund nicht über andere Kanäle gerichtet werden können. Allgemeine Fragen sollten Sie aber immer in geteilten Kanälen stellen, damit auch Ihre Kommilitoninnen und Kommilitonen davon profitieren (oder vielleicht sogar direkt helfen können).

Allgemein sind die Vorlesungsfolien und Übungsunterlagen ausreichend detailliert für das Studium. Weitere Lehrmaterialien können dennoch hilfreich sein, um Details nachzuschlagen oder sich weiter im Thema zu vertiefen.

Allgemeine Lehrbücher

  • Uwe Schöning: Theoretische Informatik -- kurz gefasst. Spektrum Akademischer Verlag.
(deutschsprachiger Standardtext; in der Tat ziemlich kurz gefasst)
  • Michael Sipser: Introduction to the Theory of Computation. Cengage Learning.
(Standardtext zur Berechnung und Sprachen, speziell zum Thema Komplexität zu empfehlen; leider nur auf Englisch)
  • Christopher Moore, Stephan Meterns: The Nature of Computation. Oxford University Press.
(sehr guter, moderner Text zu Komplexität und Berechnung, weniger formell; leider nur auf Englisch)
  • John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman: Einführung in Automatentheorie, Formale Sprachen und Berechenbarkeit. Pearson Studium.
(aus dem Englischen übertragenes Standardwerk; Original ev. besser)

Unterhaltung

Besonders spannende und interessante Themen aus der theoretischen Informatik und der Geschichte ihrer Protagonisten kann man auch in weniger formalen Texten nachlesen:

  • Apostolos Doxiadis, Christos Papadimitriou: Logicomix: An Epic Search for Truth. Bloomsbury
(Graphic Novel, inspiriert von Russels Leben und der Geschichte der Logik, wenn auch in Teilen frei erfunden)
  • Scott Aaronson: Quantum Computing Since Democritus. Cambridge
(informeller Text (eigentlich eine Sammlung von Blogeinträgen) mit interessanten Denkanstößen rund um Berechnung und Komplexität)
  • Douglas Hofstadter: Gödel, Escher, Bach: An Eternal Golden Braid. Basic Books
(der Klassiker; in viele Sprachen übersetzt, aber im Original am besten)

Berechnung und Komplexität

Die Bücher von Sipser und Moore & Mertens sind hier bereits sehr gute Referenzen. Wer darüber hinaus noch mehr Details sucht, der kann die folgenden Fachbücher konsultieren:

  • Christos H. Papadimitriou: Computational Complexity Academic Internet Publ., 2007.
(Standardwerk zu vielen Themen der Komplexitätstheorie)
  • Sanjeev Arora, Boaz Barak: Computational Complexity: A Modern Approach Cambridge University Press.
(Detailllierter und umfangreicher Text zur Komplexitätstheorie)

Prädikatenlogik

Die Vorlesungsfolien sollten bei diesem Thema ausreichen. Die Darstellung des Themas in der Literatur ist ziemlich uneinheitlich, so dass verschiedene Bücher oft leicht unterschiedliche Definitionen verwenden. Wer dennoch weitere Details nachschlagen will, dem nützen eventuell die folgenden Bücher:

  • Uwe Schöning: Logik für Informatiker. Spektrum Akademischer Verlag.
(leichte Abweichungen in Notation und Darstellung)
  • Martin Kreuzer, Stefan Kühling: Logik für Informatiker. Pearson Studium.
(sehr knapp und informell; eventuell interessant als Quelle für Übungsaufgaben)
(Schwerpunkt auf Logikprogrammierung und Prädikatenlogik)
(Aufgabensammlung aus den Logikvorlesungen vergangener Jahre)

Spezielle Themen

  • Torkel Franzén: 'Gödel's Theorem: An Incomplete Guide to Its Use and Abuse. A K Peters.
(Gut verdaulicher Text zu Gödels Unvollständigkeitssätzen, einschl. deren Beziehungen zur Berechenbarkeitstheorie)
  • Raymond M. Smullyan: A Beginner's Guide to Mathematical Logic. Dover Publications, 2014.
(Erster Teil: Einleitung und Logikrätsel. Zweiter Teil: Umfassende Entwicklung von Gödels Unvollständigkeitsbeweisen mit Gödel-Nummern und Gödel-Sätzen)

Veranstaltungskalender abonnieren (icalendar)

Vorlesung Einleitung und Übersicht DS3, 8. April 2024 in HÜL/S386 Datei 1 Datei 2
Vorlesung Berechenbarkeit und Unentscheidbarkeit DS4, 11. April 2024 in HSZ/0002 Datei 1 Datei 2
Übung Übung 1 Datei
Vorlesung WHILE und LOOP DS3, 15. April 2024 in HÜL/S386 Datei 1 Datei 2
Vorlesung Das Halteproblem und Reduktionen DS4, 18. April 2024 in HSZ/0002 Datei 1 Datei 2
Übung Übung 2 Datei
Vorlesung Der Satz von Rice und das Postsche Korrespondenzproblem DS3, 22. April 2024 in HÜL/S386 Datei 1 Datei 2
Vorlesung Unentscheidbare Probleme formaler Sprachen DS4, 25. April 2024 in HSZ/0002 Datei 1 Datei 2
Übung Übung 3 Datei
Vorlesung Einführung in die Komplexitätstheorie DS3, 29. April 2024 in HÜL/S386
Vorlesung Beziehungen zwischen Komplexitätsklassen / Effizient lösbare Probleme DS4, 2. Mai 2024 in HSZ/0002
Vorlesung NP und NP-Vollständigkeit DS3, 6. Mai 2024 in HÜL/S386
Entfällt Ascension of Christ DS4, 9. Mai 2024 in HSZ/0002
Vorlesung NP, Teil 2 DS3, 13. Mai 2024 in HÜL/S386
Vorlesung NL und PSpace DS4, 16. Mai 2024 in HSZ/0002
Entfällt Pentacost Week DS3, 20. Mai 2024 in HÜL/S386
Entfällt Pentacost Week DS4, 23. Mai 2024 in HSZ/0002
Vorlesung PSpace-Vollständigkeit DS3, 27. Mai 2024 in HÜL/S386
Vorlesung Prädikatenlogik: Syntax und Semantik DS4, 30. Mai 2024 in HSZ/0002
Vorlesung Modelltheorie und logisches Schließen DS3, 3. Juni 2024 in HÜL/S386
Vorlesung Logisches Schließen (1) DS4, 6. Juni 2024 in HSZ/0002
Vorlesung Logisches Schließen (2) DS3, 10. Juni 2024 in HÜL/S386
Vorlesung Funktionen und Normalformen DS4, 13. Juni 2024 in HSZ/0002
Vorlesung Unifikation DS3, 17. Juni 2024 in HÜL/S386
Vorlesung Resolution (1) DS4, 20. Juni 2024 in HSZ/0002
Vorlesung Resolution (2) DS3, 24. Juni 2024 in HÜL/S386
Vorlesung Endliche Modelle und Datenbanken DS4, 27. Juni 2024 in HSZ/0002
Vorlesung Datalog DS3, 1. Juli 2024 in HÜL/S386
Vorlesung Gödels 1. Unvollständigkeitssatz DS4, 4. Juli 2024 in HSZ/0002
Vorlesung Gödel, Turing und der ganze Rest DS3, 8. Juli 2024 in HÜL/S386
Vorlesung Zusammenfassung und Ausblick DS4, 11. Juli 2024 in HSZ/0002
Vorlesung Probeklausur DS3, 15. Juli 2024 in HÜL/S386
Vorlesung Probeklausur DS4, 18. Juli 2024 in HSZ/0002


Kalender