Projects

Capstone project at Brown (spring 2016)
My undergraduate capstone project at Brown was on verifying the solutions to several epistemic logic puzzles in the Alloy programming language. The abstract is here. You can also download the Alloy files and run them yourself; they are here.

Undergraduate Research (summer 2015)
I attended the Complexity Across Disciplines Math REU in summer 2015. The work was in graph theory and combinatorics. We studied a particular operation, called a ‘contextdirected reversal’, on signed permutations — permutations of where each element is additionally given a sign.
The main result classifies exactly which signed permutations are sortable by contextdirected reversals. We are unable to provide a formula for the number of such signed permutations, but we relate signed permutations to a subclass of graphs, and provide a formula for the number of graphs sortable by an analogous graph operation. We prove that asymptotically it is 1/3 of all graphs.
Here are some slides on our work and a final poster which we presented at the Joint Math Meetings (JMM) in January 2016, winning an Outstanding Presentation Award.
Exposition

SPEED computational complexity estimation (fall 2016)
For a project in CIS 673 (ComputerAided Verification), I gave a presentation on the paper SPEED: precise and efficient static estimation of program computational complexity. You can read my take on the paper in my project report, or take a look at the slides. See also the SPEED webpage.

Model theory (spring 2015)
With a group of 8 other students, I ran a group independent study project (GISP) on model theory, in the spring semester of 2016. The website for the class can be found here.
Here are some of the notes I wrote for the class:
(The notes are not entirely free of errors.)