I am a fourth-year PhD candidate studying Theoretical Computer Science at MIT, grateful to be advised by both Virginia Vassilevska Williams and Ryan Williams.

I am broadly interested in fine-grained complexity and algorithm design, and especially enjoy thinking about problems concerning graph algorithms, string algorithms, and applications of algebraic methods in computer science.

Previously, I received a B.S. in Computer Science & Mathematics from Harvey Mudd College. I have been fortunate to have several excellent mentors and, in particular, am indebted to JJP Veerman for introducing me to research, Mohamed Omar for helping foster my interest in combinatorics, Jim Boerkoel for showing me how fascinating computer science research could be, and Ran Libeskind-Hadas for sparking my interest in theoretical computer science.

You can contact me using the email listed here .

ECCC Conference Proceedings Journal Publication

SODA 2022

QIP 2022

Algorithmica 2023

arXiv Conference Proceedings Journal Publication

arXiv Conference Extended Abstract A Twitter Thread Oxford-Warwick Presentation Slides LIS Natural Computation Presentation UWaterloo Solvers, ML, Logic, & Complexity Presentation FOCS Video

If you enjoyed this paper, you may also enjoy this beautiful sequel work by Till Tantau.

arXiv Conference Proceedings SM Thesis Version Presentation

The main open problem raised by this work was resolved in this paper by Xiaoyu He and Ray Li.

Artificial Intelligence 2020 (Volume 289)

ICAPS 2019 · **Runner-Up for Best Student Paper **

Conference Proceedings Presentation

During high school I participated in a few math contests, and in undergrad I wrote several problems for the Caltech Harvey Mudd Math Competition and USA Math Talent Search. Every two weeks I will post a recreational (non-research) math problem which I encountered during this time (and particularly enjoyed) below.

A thousand coins, labeled $1$ through $1000$, are arranged in a line in some order. We say two coins labeled with integers $i$ and $j$ form an inversion if $i < j$, but coin $i$ appears to the right of coin $j$ in the linear arrangement.

Consider the following procedure: for each $i = 1, 2, \dots, 1000$ in that order, we move coin $i$ from its current position to its opposite, position reflected in the middle of the sequence (i.e., if coin $i$ currently has exactly $c$ coins to its left, then we place it in a new position so that it now has exactly $c$ coins to its right). Prove that after this procedure is completed, the new arrangement has the same number of pairs of coins forming inversions that the original ordering had.

A new problem might be posted here on March 20th, 2023.

Previously posted problems can be found here.