I teach the courses Concurrency & Multithreading (period 1), Logic and Sets (period 4, together with Wouter Kager) and Distributed Algorithms (period 5) at the Department of Computer Science of the Vrije Universiteit Amsterdam.

Some material of courses I taught in the past:

- Process Algebra, based on:
W.J. Fokkink,

*Introduction to Process Algebra*, Texts in Theoretical Computer Science, An EATCS Series, Springer, 2000 - Logic Programming, based on:
I. Bratko,

*PROLOG Programming for Artificial Intelligence*(3rd edition), Addison-Wesley, 2000