Chair of Programming Languages and AI

Breadcrumb Navigation


Vorlesung Logic in Computer Science


Due to inclement weather, there is no lecture on Tuesday, 5th December. The replacement time and date will be discussed on the Zulip channel mentioned below and then announced here. 


Logic lies at the core of computer science, and this lecture will give an overview of some of its main topics. While we will be inspired and motivated mainly from the perspective of modern artificial intelligence, the course is structured to give participants a solid grounding in various areas and to prepare them for further study in any of the more formal branches of the subject.

In the first part of the course we will rehearse the main formalisms of classical logic, from propositional to predicate logic, drawing links to relational databases as well as to knowledge representation and reasoning frameworks.

In the second part we will turn to questions of computation, evaluating the logical formalisms from the point of view of computability and decidability. Highlights of this part include Gödel’s completeness theorem, which links logical truth to provability in a formal system, and the undecidability of both pure first-order logic and arithmetic.

The final part will focus on the semantics of first-order logic, introducing concepts that are vital to the way logic is used. We will discuss the classical theorems of Löwenheim and Skolem that showcase the flexibility (or maybe rather: lack of expressiveness) of first-order logic to find out to what extent a logical theory can completely describe a structure. We will also see several tools to ascertain whether this is indeed the case.

Varied examples both from within logic and from interesting areas of application will be presented throughout the lecture and in the accompanying exercises.

Prerequisites, intended audience and format

Although participation in this course is open to everybody, it is intended either for 3rd year bachelor students or as a master lecture in computer science or related fields. As such it build on the skills and prior knowledge imparted during the first two years of a bachelor programme. In particular, this covers the basic concepts of propositional and predicate logic as taught in the ‘Logik und Diskrete Strukturen’ and the basic concept of a Turing machine as covered in ‘Formale Sprachen und Komplexität’ or ‘Theoretische Informatik für Medieninformatiker’.

There will be a final exam after the end of the lecturing period. The exact date and the modalities will be announced in due course.

Course materials

Lecture notes for the course are made available at

where they can be accessed with the username “LCS” and the password

Solutions can be found at

and can be accessed usin gthe same credentials. 

Zulip Channel

A Zulip channel for orgnisational matters pertaining to this course is available at

Teaching staff

Felix Weitkämper DPhil (Oxon)

Luis Gambarte MSc

Dates and times

Tuesdays 10 - 13 c.t. Edmund-Rumpler-Str. 9 / A 015

Fridays 8 - 10 c.t. Theresienstr. 39 / B 134