Allen School (CSE) Paul G. Allen School of Computer Science & Engineering
My goal is to help students become great computer scientists. On the research front, I work towards this goal with my students in the PLSE research group. On the education front, I work towards this goal by teaching courses on programming languages and related topics.
My expertise is rooted in formal verification, especially of compilers. As my students develop their own research vision, we branch out across diverse domains. Our work is unified by themes of making it easier to write tricky code and figuring out how to ensure such programs are correct. We rigorously prove our results and always build real, working systems1. Some of the domains we have explored include:
- CAD Tools for 3D Printing and Carpentry
- Automatic Numerical Accuracy Improvement
- Machine Learning Compilers and Runtimes
- Web Browser Layout Verification
- Radiotherapy Control Verification
- Distributed Systems Verification
- Internet Router Verification
- Compiler Optimization Synthesis
Check out our projects, publications, and talks for more!
My colleague Dan Grossman characterizes this combination of formalism and empiricism as “both Greek and graphs”. ↩︎