Logic is the study of reasoning.

In the middle of the 19th century Boole and others started to study logic with mathematical methods, e.g. Boolean algebra, which gave rise to formal logic. The treatment of logic as a mathematical subject is indispensible in both mathematics and computer science, and opens the possibility for analysing and automating many intellectual tasks, including even mathematical reasoning itself.

This course is intended as a first course in logic. It treats the two most important logics, propositional logic and predicate logic, in depth, and shows how they are used in modelling reasoning, especially mathematical reasoning. In particular, we define and study the formal language of predicate logic, its semantics (models), and natural deduction for it. We will prove soundness and completeness of natural deduction with respect to the semantics, and give some applications of these theorems.

**Please note that self-enrollment on the course page is not the same as course registration in Ladok.**

- Teacher: Sofia Tirabassi
- Teacher: Errol Yuksel