CS70: Discrete Mathematics for Computer Science

The goal of this course is to introduce students to ideas and techniques from discrete mathematics that are widely used in Computer Science. The course aims to present these ideas "in action"; each one will be geared towards a specific significant application. Thus, students will see the purpose of the techniques at the same time as learning about them.

MAth55 and CS70 cover similar material;  Math55, however, covers a wider range of topics in less depth and with fewer applications, and is less closely tailored to Computer Science. You should take this course as an alternative to Math55 if you are intending to major in Computer Science and if you found the more conceptual parts of CS61A enjoyable and relatively straightforward. 


The grade is determined by


You must have taken CS61A, Math1A and Math1B (or equivalents).


Homeworks are due in the CS70 drop box. Typically homeworks will be posted on the web on Tuesday, and are due on the following Tuesday by 2:30pm.  Late homeworks will not be accepted. The two lowest homework grades will be dropped when computing the grade average. Make sure you write your name on all the pages of your solution.


You are encouraged to work on homework problems in groups of at most four people; however, you must always write up the solutions on your own. Similarly, you may use references to help solve homework problems, but you must write up the solution on your own and cite your sources. Copying solutions or code, in whole or in part, from other students or any other source without acknowledgment constitutes cheating. Any student found to be cheating in this class will automatically receive an F grade and will also be referred to the Office of Student Conduct.

Cheating on an homework or a midterm will result in a grade of zero for that assignment. Cheating on the final, or repeated offences, will be reported to the Office of Student Conduct and will result in an F.