Personal profile

Research interests

My research interests are centred on developing mathematically rigorous theories and tools to support software practitioners in specifying, designing, maintaining and implementing concurrent and distributed programs. I currently work on the following topics:

  • Relationships between session types and automata theories: session types are a type discipline for concurrent programs (typing the behaviour of a program instead of its data). Session types theories relate to many other theories (e.g., model checking, communicating automata, etc). 
  • Static verification of message-passing programs. I am working on techniques to statically detect deadlocks and other issues in Go programs. Some of my papers have been nicely summarised by other people: see this post and this other post on the Morning Paper blog, as well as this blog post
  • Verification of GPU programs. With Tiago Cogumbreiro, we're working on behavioural-types-based techniques to verify different properties of GPU kernels (e.g., absence of data-races).

I am the coordinator of the The Proofs and Programs Club @ RHUL.

Recent publications

 

Educational background

Before joining the Department of Computer Science at Royal Holloway, I was a lecturer at The University of Kent. Before that I was a Research Associate at Imperial College London, in Nobuko Yoshida's team in the project From Data Types to Session Types -- A Basis for Concurrency and Distribution. I obtained my PhD from the University of Leicester under the supervision of Emilio Tuosto, while working as a Graduate Teaching Assistant. Before moving to Leicester, I worked for a year in The Netherlands at the European Space Agency in the On-board Software Systems section, as part of the YGT programme. I am originally from Belgium, where I graduated (BSc and MSc) from the University of Namur -- Maitrise en Science Informatique, avec Grande Distinction.

Collaborations and top research areas from the last five years

Recent external collaboration on country/territory level. Dive into details by clicking on the dots or