Mathematics for Computer Science

Class Overview



This subject offers an introduction to Discrete Mathematics oriented toward Computer Science and Engineering. See also the introductory video on the website
6.042r/MITx. In Fall '17 there will be MWF class sessions:

  • 9:30-11AM in 32-044 (Stata basement Tutorial Lounge)
  • 1-2:30PM in 32-044
  • 2:30-4PM in 32-082 (Stata basement TEAL room)
    if needed, there will be a parallel session in 32-044
There are no separate recitations. Students will be assigned to sessions and teams by the second week of class. Students generally work with the same team throughout the term. (Contact about changing assignments.)

There are three main topics:

  1. Fundamental concepts of mathematics: definitions, proofs, sets, functions.
  2. Discrete structures: elementary number theory, graphs, counting.
  3. Discrete probability theory.

The prerequisite is 18.01 (first term calculus), in particular, some familiarity is expected with sequences and series, limits, and differentiation/integration of single variable functions.

The goals of the class are summarized in a statement of Class Objectives and Educational Outcomes.

Considerations for Taking the Subject This Term

There are two main considerations for students in deciding to take 6.042J/18.062J this term –– or at all.
  1. Team Problem Solving

    This is a "flipped" class: students prepare by doing assigned reading and answering online questions before class. Class meeting time is then devoted almost entirely to team problem solving and studying with teams of 6 to 8 students sitting around a table and sharing a nearby whiteboard. Participation in team sessions counts for 25% of the final grade.

    The sessions are open book, and laptops, tablets, etc., are encouraged for viewing class related material (viewing extraneous stuff like email or facebook is a no-no).

    Each team will have a TA/LA coach who serves as a facilitator and provides feedback on solutions. The coach will initially resist answering questions about the material, always trying first to find a team member who can explain the answer to the rest of the team. Of course the coach will provide hints and explanations when the whole team is stuck. An instructor and a supervising TA circulate among the teams and oversee class activity. See the description of team protocols and grading for more information about team activities.

    The Good News is that the immediate, active engagement in problem solving sessions is an effective and enjoyable way for most students to master the material. Team sessions also provide a supervised setting to acquire and practice technical communication skills. Student grades for problem solving sessions depend on degree of active, prepared participation, rather than problem solving success. Sessions are not aimed to test how well a student can solve the problems in class; the goal is to have students understand how to solve them by the end of the session.

    The Bad News is that a team problem solving approach to teaching requires students to arrive prepared at the sessions: they need to do (though not carefully study) the assigned reading and do the online problems before class. The team problem solving aims to help solidify students' understanding of material they have already seen. Watching designated videos, or at least looking at the lecture-slide handouts, is generally helpful but optional. We expect that class preparation, including assigned reading and online material, will take 1.5 hours per class.

    There is no way to make up for not working with the team, so it is necessary to keep up and be there ––no focusing on some other activity for a month, aiming to catch up afterward. If you cannot commit to keeping up, you may prefer to take the subject some other term. (In Fall '18, Math Department faculty are expected to teach the class in standard lecture/recitation style.)

  2. Department Requirement

    This subject is required of all Computer Science (6-3) majors and is in a required category for Math majors taking the Computer Science option (18C). It covers many mathematical topics that are essential in Computer Science and are not covered in the standard calculus or algebra curriculum. In addition, the subject teaches students about careful mathematics: precisely stating assertions about well-defined mathematical objects and verifying these assertions using mathematically sound proofs. While some students have had earlier exposure to some of these topics, in most cases they learn a lot more in 6.042J/18.062J.

    Some students already have a firm understanding of sound proofs and familiarity with a significant fraction of the covered topics from Math Team, competition, or similar experience. They should discuss with the instructor and their advisor the possibility of substituting another subject for 6.042. It is also possible for qualified students to get credit for the class by serving as a Lab Assistant.

Weekly Schedule

  • Class Text

    Reading for each class will be assigned from our own class textbook.

  • Videos and Online Feedback Questions

    Online questions based on video mini-lectures and the text are due before each class.

  • Problem Sets

    Psets will be usually be posted on Wednesdays and due after nine days on Friday.

  • Detailed Calendar

    The complete schedule includes topic and reading listings for each class, as well as PSet due dates and midterm dates.

Class Website

The class has a comprehensive Stellar website where notes, problem sets, solutions, etc., will be posted. Announcements and staff contact information are also available on this website. It is always worth checking the website for corrections and announcements before starting problem sets.

Complete class materials including solutions from Spring '15 are available for reference on the MIT Open Courseware site. Fall '17 will use the same text (except for minor updates) and largely the same in-class materials as Spring '15. Exams and psets will differ of course.

Problem Sets

There will be (TBA: eight or nine) PSets. Pset activities will count for 10% of the final grade. Devoting up to four hours each week working on a pset is, for most students, crucial for mastering the covered material. A good portion of each midterm exam and the final will be based on pset problems.

There are separate web pages with PSet submission instructions.

Online Feedback Problems

Online problems to be completed before most class meetings are posted on the 6.042r website. These consist of straightforward questions that provide useful feedback on comprehension of the covered material. (Some students prefer as an advance guide to try the online problems before reading the text or watching videos; that's fine.) Watching designated videos on the 6.042r website is helpful for many students but is optional. It's always a good idea to review the four-per-page slide handouts and have them handy in class.

Like team problem solving in class, online problems are graded solely on participation: students receive full credit as long as they try the problem, even if their answer is wrong. Online feedback problems count for 5% of the final grade.


You are encouraged to collaborate on problem sets, but you must write up your own solutions alone without your collaborators.

Midterm Exams

There will be four 1.5 hour midterm exams from 7:30-9PM. Midterm 1 will count for 7% of the final grade; Midterms 2 - 4 will each count for 11% of the final grade. Dates are in the the class schedule.

Midterm questions will typically be variations of prior problems from class and psets. The best way to prepare is to review the published solutions of these problems. Each exam focuses on material not covered by prior exams; midterms will not cover material introduced the day before the exam. A single two-sided crib sheet is allowed for each midterm.

Final Exam

There will be a three hour final exam during exam period. The final counts for 25% of the overall class grade.

The final exam will cover the entire subject with somewhat greater emphasis on material not covered by the midterms. Most exam questions will be variants of problems assigned during the term (pset, class, midterm, and online). It may include a few questions which combine topics that were originally covered separately. A pair of two-sided crib sheets (total: 4 sides) are allowed for the final.


Grades for the class are based on the following weighting:

Class participation 20%
Problem Sets: 10%
Online Feedback Problems: 05%
Midterm exams: 40%
Final: 25%

The lowest three (3) class session scores will not count in grade calculation. No makeup is required for these dropped scores. This effectively gives a student three class sessions they can miss without excuse or penalty.

The three excused absences are treated as "personal" days which may be used for sick leave, professional conflicts like job interviews, or sleeping in.

One Pset score and one midterm score will be waived upon completion of a makeup assignment. See Makeup Policy for more details.

The class is not graded on a curve. In fact, MIT policy (Rules and Regulations of the Faculty, section 2.62) does not allow grading according to a fixed grade distribution. Instead, students are assessed individually. In particular, students who remain in class after Drop Date are not in jeopardy of seeing their grades change due to the change in class composition.

While there is no curve, it is expected that, as in the past, 6.042J/18.062J will be "(A-/B+)-centered" with unsatisfactory grades (D/F) unlikely to exceed 10%.

[an error occurred while processing this directive] Coaching Notes for Second & Third Class [an error occurred while processing this directive]

For grading questions see the Regrading Requests

Questions, Suggestions, and Complaints to the Staff

Messages for the staff can be posted (publicly or privately) on the class Piazza forum or by email to

Pictures and Email addresses for individual staff members are available. Email links are also available on Stellar.

Creative Commons License
MIT 6.042 class material by Albert R Meyer is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License .
For website issues, contact the

This document last modified Saturday, 23-Sep-2017 02:49:49 EDT