This course will become read-only in the near future. Tell us at if that is a problem.

Full Description

University of Maryland open study group on mathematical proofs, theoretical arguments, probability theory and randomized algorithms. This is targeted pretty much exclusively on hands on work solving problems, developing proofs, and discussing solutions. The content has been chosen to complement graduate-level work in computer science. It should be accessible to varying levels of experience with logical reasoning, probability, and algorithms, depending on the time you are willing to invest. If you're already a whiz with proofs, you will probably be bored. 

We are using two excellent textbooks. Probability and Computing (PDF), by Mitzenmacher and Upfal, which focuses on randomized algorithms and probabilistic analysis; and Mathematics for Computer Science (PDF), by Lehman and Leighton, with a focus on rigorous proof techniques. 

This is a self-taught course for those of us who would like to strengthen our relevant skills. Most of the learning will be independent. The meetings are to review the work we've done over the course of the week. We'll keep pace with one another at a chapter level, but which problems you do within each chapter are up to you. There is no expert among us and we are all learning together. 

For those on campus at UMD, there will be weekly in-person meetings on Wednesdays at 6pm EST to review practice problems and any questions about the material. All are welcome to participate and keep pace with the material and discussions. If there is interest we will determine a way to support remote meeting participation.

How to participate

You can either participate or follow this group. Participants can post and contribute content, and receive email notifications of updates. Followers see course content on their P2PU dashboard, but cannot edit content and do not receive email notifications. (Don't worry too much about the signup task you are presented with in order to participate, it's just a boilerplate part of the platform right now, which is still in beta). Read more on the FAQ

Task Discussion