I am an Assistant Professor in the School of Computer Science at McGill University. I am a theoretical computer scientist, which means that I use mathematical tools to study what computation really "is". My main research topic is computational complexity theory, and particularly proof complexity, circuit complexity, communication complexity, and related topics. But this is not prescriptive, and I like to think about any fun problems that come my way!
You can look at my curriculum vitae for more of my (professional) past life, if you're into that sort of thing. Otherwise, scroll on down to find my research papers, my graduate students, or my recent teaching.
If you are a McGill undergraduate looking for advising from me, please read this first.
January 9, 2023. For the Spring semester 2023 I will be a research fellow at the Simons Institute for Theory of Computing at UC Berkeley, attending the program on Meta-Complexity. Due to this I will be away from McGill for the duration of the semester, but can still be reached via e-mail.
September 13, 2022. This year I am returning as the head organizer of the Undergraduate Computer Science Research Symposium (UCORE) at McGill, which is our annual symposium for students in the School of Computer Science. If you are an undergraduate SOCS student who has participated in research over the past year then I strongly encourage you to submit to the symposium. Please see the UCORE website for more details.
February 10, 2022. At FOCS 2021 I co-organized a workshop on recent progress in Propositional Proof Complexity. The schedule for the workshop is available, and the talks were recorded and are now publicly available. Of particular interest to many may be the following list of open problems in proof complexity, which were assembled by the speakers of the workshop and which we seek to distribute widely.