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
Applications
- 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