I'm Curtis Fenner. I graduated from the University of Michigan in 2018.

I enjoy working with code and math!



Shiru is a toy programming language, interpreter, and compiler. It also includes a simple SMT-solver, used to verify correctness conditions at compile time, such as array indexes being in-bounds.

Proof Checker

A simple automatic proof-verifier for students learning proofs in JavaScript and Perl. The checker manipulates symbolic representations of mathematical statements and verifies the steps taken in a formal proof.