Module overview
This module will cover foundational concepts in data management. It will study classic database theory, as well as new areas of research. The first part of the class will focus on query languages and their complexity, while the second part will focus more on advanced topics in data management, such as incomplete information, provenance, privacy, data dependencies, and others.
Topics we will include query languages, query containment, query complexity, worst-case optimal algorithms, datalog semantics, evaluation, and optimisation techniques. Bag Semantics and its relation to Diophantine inequalities. Database dependencies and reasoning with data.