Research

Algorithms now function as public infrastructure. My work treats them the way engineers treat bridges: design them to carry load safely, inspect them regularly, and stress-test them against the forces they will actually face.

1. Algorithms with guarantees

When an algorithm allocates resources, clusters people, or aggregates votes, its design encodes a notion of fairness. I design approximation and online algorithms that provably balance fairness against efficiency, and quantify the price of that tradeoff.

2. Measuring and verifying AI systems

Large language models are becoming decision-making infrastructure, but their safety properties are fragile and hard to certify. I study how alignment breaks, how to attack it efficiently, and how to verify it statistically.

3. AI and public infrastructure

As AI capabilities grow, so does the set of people able to exploit weaknesses in public systems. I examine concrete systems, starting with elections, and work with policymakers to prepare for them.