I am a professeur régulier at Université du Québec à Montréal and a Debian Developer. I completed my PhD in computer science at Carnegie Mellon University, where I was advised by Steve Brookes and Frank Pfenning. I was then an NSERC postdoctoral researcher at McGill University with Brigitte Pientka.
My professional ambition is to develop tools and techniques that help practitioners correctly specify, implement, and reason about concurrent and communicating systems. My current work involves designing and reasoning about the logical foundations of programming languages for concurrency.
See my blog for my musings on computer science and mathematics. A version of this site is also available over Gopher.
I am recruiting students!
I am recruiting doctoral and master’s students, as well as undergraduate research assistants. If you think we have overlapping research interests or are an undergraduate who is curious about research, please contact me.