Course Mission


You should be familiar with the following topics:

Grading and Requirements

The requirements of the course are as follows:

Homework policy

You are encouraged to discuss the course material and the homework problems with each other in small groups (2-4 people; 4 is an upper limit), but you must list all discussion partners on your problem set. Discussion of homework problems may include brainstorming and verbally discussing possible solution approaches, but must not go as far as writing up solutions together; each person MUST WRITE UP HIS/HER/THEIR SOLUTIONS INDEPENDENTLY. You may not collaborate with another student on writing up solutions or even look at another student's written solutions. If your homework writeup resembles that of another student in a way which suggests that you have violated the above policy, you may be suspected of academic dishonesty.

You may consult certain outside materials, specifically lecture notes and videos of other classes, any textbooks, and research papers. You may not consult any other materials, including solved homework problems for this or any other class. For all outside materials used, you must provide a detailed acknowledgement of the precise materials used. Whether or not you consult outside materials, you must always write up your solutions in your own words. If your homework writeup resembles any outside source in a way which suggests that you have violated the above policy, you may be suspected of academic dishonesty.

Violation of any portion of this policy will result in a penalty to be assessed at the instructor's discretion. This may include receiving a zero grade for the assignment in question AND a failing grade for the whole course, even for the first infraction.

More generally, students are expected to adhere to the Academic Honesty policy of the Computer Science Department; this policy can be found in full here. Please contact the instructor with any questions.

Length limit on HW answers: When writing a HW solution, you should give enough details to present the key ideas, but avoid going into an excessive amount of detail or writing an excessively long answer. Most problems can be solved in a perfectly satisfactory way with a one-page writeup (in 11-point font), and you should strive not to exceed one page in your solution to each problem. You are especially discouraged from writing long unclear answers in an attempt for partial credit. If you write more than two pages for any problem, the TAs may not read past page two and may give a score penalty.

Re-grade policy:

If you dispute the grade received for an assignment, you must submit, in writing through Gradescope, a detailed and clearly stated argument for what you believe is incorrect and why. This must be submitted no later than one week after the assignment was returned. (For example, if the assignment were returned to the class on Tuesday, your regrade request would have to be submitted before the next Tuesday.) Requests for a re-grade after this time will not be accepted. A written response will be provided within one week indicating your final score. Requests of re-grade of a specific problem may result in a regrade of the entire assignment. This re-grade and written response is final. Keep in mind that a re-grade request may result in the overall score for an assignment being lowered.


Supplementary readings will be assigned for some (most) lectures in order to provide a more detailed account of the various topics than we can do in lecture. These readings will primarily be from

An overview of Chernoff and Hoeffding bounds (relevant for our unit on randomness) can be found here (thanks to Clement Canonne for preparing this).


Here are some snippets of advice which are informal, but will hopefully help you get the most out of this class:

  • Office hours (of the instructor and the TAs) can be a really valuable way to solidify your understanding of the course material, and a good way to maintain engagement. You are encouraged to attend!

  • Lectures will often be cumulative, in the sense that most lectures will build on concepts and results that were covered in previous lectures; so if you fall significantly behind it can be difficult to catch up. You are advised to take careful notes during lectures to supplement the notes that Rocco will create, and to review those notes between lectures.

    "Realizing the gravity of the situation, we immediately set about taking notes."
    – Witold Gombrowicz, Philidor's Child Within