Who I am

Face Shot

I am a second year graduate student in computer science at the University of Washington focusing on Programming Languages and Software Engineering. My work uses verification tools and constraint solvers to make programming easier, including programming for verification.

I'm interested in the connections and interactions between different logics. Any work that unifies seemingly disparate ideas in PL will have me very excited. I have a secondary interest in security.


Current Research

I am currently working with Dan Grossman and Nate Yazdani on making proof assistants like Coq easier to use. Programming in these proof assistants is fragile -- small changes in theorems can break proofs that depend on those theorems. We are using information from changes in the proofs of those theorems to generate patches for broken proofs that depend on those theorems.

I recently finished an internship with the Automated Reasoning Group at Amazon with Serdar Tasiran and Daniel Schwartz-Narbonne. I developed a solver-aided tool and framework to help developers write better tests for web services. As part of this work, I extended Rosette to handle strings and regular expressions.

In the future, I plan to look into a more general way of combining theories than Nelson-Oppen which allows SMT solvers to take advantage of mathematical properties like inverse functions between two theories.



I am a competitive runner and triathlete. I run for Club Northwest. I occasionally write articles for Northwest Runner.

I am the writer and interviewer behind The Identity Function, a blog interview series about LGBTQ computer science researchers.

I enjoy singing and composing music for the piano.