I am an Associate Professor at Carnegie Mellon’s Computer Science Department, and a member of the Principles of Programming (PoP) group and CyLab.

My research areas are programming languages and verification. My mission is to discover beautiful mathematical ideas that have a real-world impact, shape the way programmers think, and help to create software that is more reliable, efficient, and secure. Currently, I am working on quantitative verification, type systems, static resource analysis of programs, probabilistic programming, and programming languages for digital contracts.

Before joining Carnegie Mellon, I was an Associate Research Scientist in the FLINT group at the Department of Computer Science at Yale University. Before that, I was a PhD student at LMU Munich. My advisor was Martin Hofmann.

news

Aug 22, 2025 Our article on Integrating Resource Analyses via Resource Decomposition will appear at OOPSLA 2025.
Aug 22, 2025 Our article on Big Stop Semantics is available on Arxiv.
May 11, 2025 Computer Science BSc student Arnav Sabharwal will join the group for a summer research project on data driven resource analysis.
Apr 10, 2025 I’m looking forward to finally teaching the course 15-714 - Resource Aware Programming Languages again in fall. Enroll!
Nov 1, 2024 Our article Worst-Case Input Generation for Concurrent Programs under Non-Monotone Resource Metrics will appear in Logical Methods in Computer Science.
Sep 1, 2024 PhD students Ethan Chu and Nathan Glover and MSc student Lauren Sands have joined the group.
Aug 26, 2024 I’m looking forward to co-chairing the Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software (PLACES 2024) with Farzaneh Derakhshan.
Aug 26, 2024 There are two great articles about research from my group on the CSD PhD Blog. The first one is about Hybrid Resource Analysis by Long Pham. The second one is about The Quantum Physicist’s Method of Resource Analysis by David Kahn.

Show all news