Course Meeting Times
Lectures: 2 sessions/week; 1.5 hours/session
Recitation: 2 sessions/week; 1 hour/session
Prerequisites
The only prerequisite is 18.01 Single Variable Calculus. If you have already taken 18.200 Principles of Discrete Applied Mathematics or 6.1220 Design and Analysis of Algorithms (formerly 6.046), then you probably should not take 6.1200.
Course Description
This course covers elementary discrete mathematics for science and engineering, with a focus on mathematical tools and proof techniques useful in computer science. Topics include logical notation, sets, relations, elementary graph theory, state machines and invariants, induction and proofs by contradiction, recurrences, asymptotic notation, elementary analysis of algorithms, elementary number theory and cryptography, permutations and combinations, counting tools, and discrete probability.
Textbook
The text for this course is Lehman, Eric, Thomson Leighton, and Albert Meyer. Mathematics for Computer Science (PDF). The textbook is available under a CC BY-SA license.
Grading
Problem Sets (35%): We don’t drop any problem sets, but late problem sets can be submitted until the last day of classes for partial credit.
Recitation Warm-Up Questions (5%): We drop your 3 lowest scores.
Recitation (10%): Each recitation earns you a score of 0, 1, or 2 points. If you attend for the full period and work constructively with your team, then you get 2 points. If you miss a significant part of the recitation or glaringly fail to work constructively with your team, then you get 1 point. If you are absent, you get 0 points. We drop your 3 lowest recitation scores.
Quiz 1 (15%), Quiz 2 (20%), Final Exam (25%): If the class median on an exam is below 70%, then we assume the exam was too hard, and adjust all scores upward so that the median is 70%. We normalize by adding a fixed number of points to every score, and scores are not capped at 100%. If the median on an exam is above 70%—fantastic! No adjustment necessary.
The weights listed above total 110%; we’ll cut the extra 10% off of the weight of your weakest exam. For example, if quiz 2 is your lowest of the three exams, we will count it as 10% instead of 20%.
Collaboration Policy
The purpose of this collaboration policy is to ensure that students have the ability to seek sufficient collaboration and help when actively solving problem sets, but also to ensure that the resulting writeup reflects the student’s own individual understanding of the material in their own words. With that said, please approach collaboration on problem sets with care, and follow the more precise guidelines below.
Solving: We encourage you to collaborate with your peers to solve problem sets in order to deepen your understanding of the course material. If you find yourself unable to solve a problem, you can seek help, either by approaching the TAs or lecturers (through office hours or private Piazza posts), or by mutually collaborating in a group of up to 3 or 4 students—larger groups lead to imbalanced participation and learning, and are best split into subgroups. You should not ask for an explanation from someone who has independently solved the problem, nor should you offer an explanation to someone who did not solve with you. You also should not look for or read completed solutions from other outside sources (e.g., the wider internet, previous semesters’ materials, generative AI, etc.).
Writing: Your writeup must be entirely your own. Jointly developing the broad outline of a solution with peers is encouraged, but translating that into a detailed writeup or proof must be done individually, in your own words, and you must understand it well enough that you could explain it to your TA. Additionally, you should not show your writeup to your peers, and you should not look at writeups from your peers or other sources. Seeking feedback on your writing is also encouraged, but only from course staff or external tutors. Copying from any source (books, past classes, your friend’s problem set, generative AI, etc.) is not allowed.
In case you work with other students, make sure that your eventual writeup is not a verbatim reiteration of your jointly-generated notes, as this would not be considered your own words. After learning from your collaboration, you should complete your writeup without directly consulting these shared notes.
This is also true for late problem sets submitted after solutions are posted on Canvas. You are permitted to read and learn from the posted solutions, but you must not consult these solutions when composing your own proofs in your own words.
You are permitted to consult external sources for matters not related to solving or structuring your proofs, such as grammar, style, or LaTeX formatting.
Openness: If you have any questions about the collaboration policy, or if you feel that you may have violated the policy, please talk to one of the course staff. Although the course staff is obligated to deal with plagiarism and cheating appropriately, we are able to be far more understanding and lenient if we find out from the transgressors themselves rather than from a third party or on our own.
Needless to say, no collaboration whatsoever is permitted on exams.