ESSLLI08 Course: Logic for Computation.
In this course we will introduce a number of logics that are important in modern computer science: propositional logic, description logic, first-order logic, second-order logic, and fix-point logic. Moreover, we will introduce them in a way that makes clear both the underlying unity of these systems and their utility. Accordingly, we will introduce these logics as a series of tools of increasing strength for talking about relational structures, and in parallel will introduce the tools that exist for working them, such SAT solvers, theorem provers, model checkers, and model builders. We believe that the material we shall discuss is indispensable to a modern education in logic. Unfortunately, much of it is only currently available in advanced courses and textbooks. This foundational course is designed to make this material accessible to an interdisciplinary audience.
The slides of the course are given below. We also provide the slides in a version suitable for printing (2x4 without pauses), but notice that animations won't work properly in this version. The following link are all the handouts in a single file.