Database Theory
Database Theory
Lehrveranstaltung mit SWS 4/2/0 (Vorlesung/Übung/Praktikum) in SS 2023
Dozent
Tutor
Umfang (SWS)
- 4/2/0
Module
Leistungskontrolle
- Mündliche Prüfung
Matrix-Kanal
Vorlesungsreihe
Databases are a key technology in computer science that brings together fascinating theoretical topics and highly relevant practical applications. The goal of this lecture is to give an extended introduction to this interesting field, with a special focus on database query languages, their expressive power, and computational complexity. The lecture will introduce the relational data model, and then discuss theoretical and practical aspects of a variety of query languages:
- first-order logic as a query language and the relational algebra
- conjunctive queries and their unions
- navigational queries: path queries
- Datalog and its relatives
- query answering under database dependencies
The lecture focuses on core principles that apply to many types of databases alike (relational, graph-based, semantic web). Some important query answering algorithms are presented, too, but otherwise, the details of database implementation and administration are not covered.
Prerequisites
Undergraduate-level knowledge of predicate logic, regular languages, and algorithmic and computational complexity is required. The lecture will connect with other topics in the Computer Science and Computational Logic curriculum, such as relational databases, logic programming, and Semantic Web technologies – familiarity with these topics is not required to follow the lecture.
Schedule and Location
- The weekly lecture sessions will take place on Mondays from 09:20 to 10:50 in room APB E007 and Tuesdays from 09:20 to 10:50 in room APB E005.
- The weekly exercise session will take place on Tuesdays from 14:50 to 16:20 in room APB E005.
- The first exercise session will be on Tuesday, 2023-04-11.
- Room change: the first lecture on Monday, 2023-04-03, takes place in APB 3027.
- Room change: the second lecture on Tuesday, 2023-04-04, takes place in APB E009.
Examinations
For the oral exams, we have blocked two dates this term:
- Monday, 2023-07-17
- Friday, 2023-07-28
As usual, you should book a date with our secretary after you have officially enrolled in your respective examination office/system.
Legacy
This course has first been taught at TU Dresden by Prof. Dr. Markus Krötzsch in the form of the 2015 lecture Foundations of Databases and Query Languages, the 2018 lecture Database Theory, and the 2019 lecture Database Theory. The plan for this year's course will be somewhat similar.
The structure of some of the lectures of this course is inspired by the course Theory of Data and Knowledge Bases in the version given by Georg Gottlob and Thomas Lukasiewicz at the University of Oxford.The main reference textbook for the lecture is:
- Serge Abiteboul, Richard Hull, Victor Vianu: Foundations of Databases. Addison-Wesley. 1994.
- The book is available for free from its webpage, but there are also copies in the library.
Further texts might be consulted for background information and additional details:
- Michael Sipser: Introduction to the Theory of Computation. 2005
- Accessible introduction to complexity theory that covers all topics of computational complexity that the lecture touches upon.
- Evgeny Dantsin, Thomas Eiter, Georg Gottlob, Andrei Voronkov: Complexity and expressive power of logic programming. ACM Computing Surveys, 33:3, pp 374-425, 2001.
- Covers all Datalog complexity results mentioned in the lecture. Available at http://dx.doi.org/10.1145/502807.502810 (may require access from within a university network)
- additional references will be added in the course of the lecture
Veranstaltungskalender abonnieren (icalendar)
Vorlesung | Introduction/Relational Data Model | DS2, 3. April 2023 in APB 3027 | Datei |
Vorlesung | First-Order Queries | DS2, 4. April 2023 in APB E009 | Datei |
Entfällt | No Lecture: Easter Monday | DS2, 10. April 2023 in APB E007 | |
Vorlesung | Complexity of Query Answering | DS2, 11. April 2023 in APB E005 | Datei |
Übung | 1. Relational Algebra | DS5, 11. April 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Query Complexity of FO Query Answering | DS2, 17. April 2023 in APB E007 | Datei |
Vorlesung | Data Complexity of FO Query Answering | DS2, 18. April 2023 in APB E005 | Datei |
Übung | 2. First-Order Queries | DS5, 18. April 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Conjunctive Queries | DS2, 24. April 2023 in APB E007 | Datei |
Vorlesung | Tree-Like Conjunctive Queries (1) | DS2, 25. April 2023 in APB E005 | Datei |
Übung | 3. Complexity of First-Order Queries | DS5, 25. April 2023 in APB E005 | Datei 1, Datei 2 |
Entfällt | No Lecture: International Workers' Day | DS2, 1. Mai 2023 in APB E007 | |
Vorlesung | Tree-Like Conjunctive Queries (2) | DS2, 2. Mai 2023 in APB E005 | Datei |
Übung | 4. Conjunctive Queries, CSP, and Hypergraphs | DS5, 2. Mai 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Query Optimisation | DS2, 8. Mai 2023 in APB E007 | Datei |
Vorlesung | Conjunctive Query Optimisation | DS2, 9. Mai 2023 in APB E005 | Datei |
Übung | 5. Tree Width and Hypertree Width | DS5, 9. Mai 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Conjunctive Query Optimisation (continued) | DS2, 15. Mai 2023 in APB E007 | |
Vorlesung | Query Expressiveness | DS2, 16. Mai 2023 in APB E005 | Datei |
Übung | 6. Trakhtenbrot's Theorem | DS5, 16. Mai 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Query Expressiveness (continued) | DS2, 22. Mai 2023 in APB E007 | |
Vorlesung | Introduction to Datalog / Datalog Complexity | DS2, 23. Mai 2023 in APB E005 | Datei |
Übung | 7. FO Query Expressivity | DS5, 23. Mai 2023 in APB E005 | Datei 1, Datei 2 |
Entfällt | No Lecture: Pentecost | DS2, 29. Mai 2023 in APB E007 | |
Entfällt | No Lecture: Pentecost | DS2, 30. Mai 2023 in APB E005 | |
Entfällt | No Exercise: Pentecost | DS5, 30. Mai 2023 in APB E005 | |
Vorlesung | Datalog Expressivity and Containment | DS2, 5. Juni 2023 in APB E007 | Datei |
Vorlesung | Datalog Expressivity and Containment (continued) | DS2, 6. Juni 2023 in APB E005 | |
Übung | 8. Datalog | DS5, 6. Juni 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Datalog Evaluation (1) | DS2, 12. Juni 2023 in APB E007 | Datei |
Vorlesung | Datalog Evalution (2) / Graph Databases | DS2, 13. Juni 2023 in APB E005 | Datei |
Übung | 9. Semi-Positive Datalog | DS5, 13. Juni 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Path Queries | DS2, 19. Juni 2023 in APB E007 | Datei |
Vorlesung | Dependencies | DS2, 20. Juni 2023 in APB E005 | Datei |
Übung | 10. Datalog Evaluation | DS5, 20. Juni 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | The Chase | DS2, 26. Juni 2023 in APB E007 | Datei |
Vorlesung | The Chase (continued; termination and acyclicity) | DS2, 27. Juni 2023 in APB E005 | |
Übung | 11. Graph Databases and Path Queries | DS5, 27. Juni 2023 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Query Answering Beyond Acyclic TGDs | DS2, 3. Juli 2023 in APB E007 | |
Vorlesung | Outlook/Summary | DS2, 4. Juli 2023 in APB E005 | |
Übung | 12. Dependencies | DS5, 4. Juli 2023 in APB E005 | Datei 1, Datei 2 |
Konsultation | Consultation (time for your questions) | DS5, 11. Juli 2023 in APB E005 |
Kalender