Goal
The course gives an introduction to the field of mathematical logic by presenting the syntax and semantics of propositional logic and of the richer language of predicate logic. The goal is to describe and investigate the above logics by finitary methods, and to train students in formalizing specifications and in verifying properties of systems.
Description
Originally logic was used by the Greek Sophists to demonstrate the correctness of their argument in formal debates. The ambiguity of human languages asked for formulation of logic in a symbolic formal language. Only towards the end of the 19th century logic has been formulated in the language of mathematics, and in particular of algebra, making it a useful tool to solve mathematical problems. In the same period the language used to prove theorems from mathematics begun suffering the same problems of natural language, showing many paradoxes. Logic was proposed as the foundational language of mathematics, but several limitation where soon discovered. More recently logic has become the language of computer science, just as calculus is the language of many engineering discipline.
In this course we will study propositional and predicate logic, their proof theory, their limitation, as well as some of their applications in computer science.
Prerequisites
Inleiding Informatica
Literature
The following book will be used for the course: Michael R. A. Huth and Mark D. Ryan Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press, 2004 (ISBN 052154310X).
Table of Contents
- Introduction and motivation
- A brief history of mathematical logic
Part I : Propositional Logic
3. Syntax
4. Proof theory
a. Natural deduction
5. Semantics
6. Normal forms
7. SAT solvers
Part II: Predicate Logic
8. Syntax
9. Proof theory
a. Natural deduction
10. Undecidability
11. Expressiveness
12. A Theorem prover
Material
Slides will be provided to the students for download.
Examination
Students will be evaluated on the basis of a written examination, possibly complemented with take-home assignments.
Practice class
Yes, a weekly practice class is a mandatory component of the course.