About me

I am a Tenure-Track Assistant 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. I am currently working on quantitative verification, type systems, static resource analysis of programs, probabilistic programming, proof assistants, and decision procedures.

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

Photo of Jan

More Info

Current Students and Post-Docs

Stefan Muller (Post-Doc)

Ankush Das (PhD Student)

David Kahn (PhD Student)

Di Wang (PhD Student)

Charles Yuan (Undergraduate)

Past Students

Prachi Laud (Undergraduate; since 2019 Software Engineer at Facebook)

Chan Ngo (Post-Doc; since 2018 Senior Research Engineer at Aptiv)

Yue Niu (Undergraduate; since 2018 garduate student at Carnegie Mellon)

Nicholas Roberts (Undergraduate)

Benjamin Lichtman (Undergraduate; since 2017 Software Engineer at Microsoft)

Quentin Carbonneaux (PhD Student at Yale; with Zhong Shao; since 2017 Softrware Engineer at Google)


e-mail jhoffmann (at) cmu (dot) edu
phone +1 412 268 6309
office GHC 9105
address Computer Science Department
Carnegie Mellon University
5000 Forbes Avenue
Pittsburgh, PA 15213-3891