Welcome to Michael's home page.

I am head of the Informatics Theory Group. Here is a brief summary of my teaching and research interests:

Main areas of Interest

Mathematical methods for the specification, design, and validation of complex software and hardware systems, specifically in distributed and parallel applications.

Key issues

  • Synchronisation mechanisms, transition between synchrony and asynchrony.
  • Abstraction and refinement for data-flow and control-flow programming.
  • Semantics of synchronous programming and model-based design languages (Esterel, Lustre, Statecharts).
  • Determinism and causality in concurrent systems
  • Interface specifications for compositional modelling, capturing also intensional, non-functional, properties specifically regarding causality and timing.

Mathematical tools

  • Intuitionistic and constructive modal logics
  • Logical game theory
  • Kripke semantics, Heyting algebra and type theory
  • Process algebras and calculi for synchrony and asynchrony
  • Functional Programming Languages


  • Compilation and type-based static analysis of hardware-software embedded systems
  • Interactive (e.g. web-based) services and distributed transaction systems
  • Stream-based data processing 
  • Component-based programming

Automatic and interactive validation techniques

  • Model checking
  • Timing analysis
  • Type checking
  • Theorem proving