I am an Assistant Professor of Computer Science and Electrical Engineering at Stanford University.

I'm interested broadly in theoretical computer science and theoretical aspects of engineering, and especially in dealing with noisy data.  How can we protect our data against inevitable noise?  How can we learn stuff from data even in the presence of noise?  What if we want to learn from this data really efficiently, even at the cost of introducing noise ourselves?  More specifically and with some buzzwords, recently I've been thinking about error correcting codes, randomized algorithms, dimension reduction, matrix completion, group testing, and sparse signal processing.

Before joining Stanford in Fall 2016, I was an NSF post-doctoral fellow at Carnegie Mellon University; I received a Ph.D. in mathematics from the University of Michigan in 2014, and a B.A. in math and computer science from Swarthmore College in 2008.

Stanford CS/EE/?? PhD students: I'm looking to take a few rotation students for the spring quarter.  If you are interested in doing a rotation with me, let me know!

Office: Gates 481 and occasionally Packard 253
Email: marykw AT stanford.edu
Office phone: 650-724-1435 (disclaimer: I rarely never answer my office phone)

Mary Wooters (with one t) is NOT my name, but apparently people google it looking for me so I may as well have it on my website.