If you have any questions or concerns about these policies, please ask in lecture, during office hours, on Piazza, or by email.


  • Problem sets are graded by the entire course staff, directly within Gradescope. All numbered pset questions are worth the same amount.
  • Exams are graded by the instructors and graduate TAs. They will be accessible on Gradescope once graded.
  • We will post psets and exam grades on Gradescope.
  • We will post psets solutions a few days after each submission deadline. Posted solutions will include suggested rubrics for grading each problem. If the graders modify the suggested rubrics for any reason, we will post final rubrics when grading is complete.


  • Please check that all your grades are tabulated and recorded correctly. In particular, please check your graded exams for arithmetic errors, and please verify that you got credit for any group work submitted by another group member. If you notice a mistake, please bring your graded work to one of the instructors or one of the TAs; we will correct the error immediately.
  • If you do not understand your grade on a pset or exam problem, please discuss your grade with one of the instructors or TAs during office hours. After that discussion, if you still believe that your work has been graded incorrectly, please request a regrade.
  • All regrade requests must be submitted in writing at most two weeks after the graded work is returned. Problem set regrades can be requested online within Gradescope; please provide a brief written explanation of why you think your work should be regraded. To request an exam regrade, give your exam to one of the TAs. Except for arithmetic/recording mistakes, no grades will be changed in the student's presence, and late regrade requests will be ignored.
  • All regrade requests must include a brief written justification for the request. Good justifications include the following:
    • My answer agrees with the posted solution, but I still lost points.
    • I lost 4 points for an incorrect time analysis, but the rubric says that's only worth 2 points.
    • You took off points for missing the base case, but it's right here.
    • My answer is correct, even though it does not match the posted solution.
    • There is no explanation for my grade.
    • The official solution is incorrect; here's a counterexample.
  • We can only grade what you actually wrote. You cannot get a higher grade by explaining what you meant. For psets, we will regrade your original Gradescope submission. Modifying your exam before requesting a regrade is an egregious violation of academic integrity policies, which will result in an automatic F in the course.
  • Under normal circumstances, regrade requests should be processed at most one week after they are submitted.
  • If you submit a regrade request, your entire pset or exam will be regraded from scratch. Your grade may go down.
  • We will readily admit, apologize for, and correct our mistake if you have been graded unfairly. However, please remember that "unfairly" means your grade is inconsistent with the published grading standard, or that you were graded more harshly than other people in the class, not just that you think the grading standard is too harsh. Please also keep in mind that each pset point is worth about 0.1% of your final course grade. Frivolous regrade requests will be met with the scorn they deserve.


We will determine final course grades as follows.
  1. Compute everyone's raw total: 25% psets + 75% exams (30% final, 22.5% for each midterm), excluding extra credit points.
    • There will be eleven graded psets (pset0 through pset11), with three problems each. We will drop the six lowest homework problem scores (except for zeros from cheating offenses).
    • The structure of exams has not yet been decided. We may give a choice to only do a subset of the problems or drop the scores of some problems.
  2. Compute everyone's adjusted total, by adding extra credit points to the raw totals. Extra credit points are not necessarily worth the same as regular points.
  3. Remove outliers at both ends of the curve.
    • Anyone with an adjusted total over 95% automatically gets an A+. This rule typically applies to the top 2-3% of the class. I reserve the right to lower the 95% cutoff.
    • Anyone with an adjusted total below 40%, or who has submitted less than 50% of the homework, or who otherwise does not appear to be making a good faith effort in the class, automatically gets an F. This rule typically applies to the bottom 1-2% of the class. This is not the only way to fail!
  4. Determine letter-grade cutoffs from the undergraduate raw totals. Outliers and graduate students are excluded from the cutoff computation to avoid unfairly skewing the curve for undergraduates. The mean is the center of the B range, and each standard deviation is worth 3/4 of a letter grade. For example, the B+/A- cutoff is 2/3 standard deviations above the mean, and the B-/C+ cutoff is 2/3 standard deviations below the mean.
  5. Compute final letter grades (for non-outliers) from adjusted averages.
  6. Adjust grades (only upwards!) at the instructor's whim.

This algorithm ensures that extra credit can only increase your grade, that other people's extra credit does not affect your grade, and that the curve isn't skewed by the handful of outliers in every class.