Computer Science Theory/Discrete Mathematics Subplan
Questions?
Contact mathstudentservices [at] stanford.edu (mathstudentservices[at]stanford[dot]edu).
About the Subplan
The Computer Science Theory / Discrete Mathematics subplan is intended for students wishing for a strong and deep background in the area of computer science theory and mathematics. It could prepare students for graduate work in either area, as well as for other careers requiring particular strength in this type of thinking.
Determining if this Subplan is Right for You
Because the emphasis of the subplan is on theory, students who are interested in a combination of mathematics and computer science more generally should consider the Bachelor of Science in Mathematical and Computational Science.
Depending on interests, students are encouraged to consider the regular mathematics major, and the computer science major (and in particular, the computer science theory track of the computer science major).
Declaring the Subplan
In order to declare the Subplan in Computer Science Theory/Discrete Mathematics, you must also declare the Mathematics major. The Subplan can be declared at the same time that the major is declared, or it can be declared at a later date if you are already a Mathematics major.
The Subplan declaration process is the same as the major declaration process. Please see the How to Declare page for detailed instructions about how to declare. If you are declaring the major and the Subplan at the same time, you must select both the major and the Subplan in Axess before submitting your declaration.
Subplan Requirements
The requirements of the Math major must be satisfied, and the selection of courses must contain the required courses listed below.
For the purposes of the Subplan, the required Computer Science Department courses can count toward either the Math Department courses or the additional courses. All required courses must be taken for a letter grade.
In addition to the required courses, it is strongly recommended that you have either taken the single-variable calculus series (see information about this series on the Introductory Math Courses page) or have equivalent Advanced Placement credit (see information about this credit on the Advanced Placement page on Registrar’s Office website). Up to 10 units of single-variable calculus may count toward the 57 units of Math Department classes. These courses must be taken for a letter grade.
The full 60DM (Modern Mathematics: Discrete Methods) series is strongly recommended for students interested in the Subplan. Up to 15 units from that series or from the Math 50-series or 60CM-series count toward the 57 units of Math Department classes. (Please see the Introductory Math Courses page for information about these series.) These courses must be taken for a letter grade.
Required Courses
Optional Introductory Courses
These courses may count toward the 57 units of Math Department courses as long as they are taken for a letter grade
- AP Credit or Math 19/20/21 (10 units)
- Math 61DM/62DM/63DM* (strongly recommended) or Math 51/52/53 or Math 61CM/62CM/63CM (10-15 units)
*If you are using Math 61DM toward the Additional Required Math Courses below, then only the units for 62DM and 63DM should be counted towards your total units here.
Required Math Courses
These courses must be completed for the subplan and must be taken for a letter grade.
- Math 116 or Math 143 or Math 144 or Math 147 (4 units)
- Math 120 (4 units)
- Math 171 (4 units)
Required CS Theory Courses
Take both courses for a letter grade.
- CS 154 (3 - 4 units)
- CS 161 (3 - 5 units)
Two Combinatorics Courses
Choose two of these courses. Must be taken for a letter grade.
- Math 61DM (5 units)
- Math 107 (4 units)
- Math 108 (4 units)
- Math 233A/B/C (3 units)
One Probability Course
Choose one course. Must be taken for a letter grade.
- Math 151 (4 units)
- Math 230A (3 units)
- Stats 116 (5 units) No longer offered
- Stats 118 or 200 (4 units)
Two Additional Courses
Choose two of the following courses. Must be taken for a letter grade.
- Math 113 (4 units)
- Math 152 (4 units)
- Math 154 (4 units)
- Math 155 (4 units)
- Math 159 (4 units)
- Math 161 (4 units)
Four CS Courses
Choose 4 courses from this list. Must be taken for a letter grade.
- CS 168 (4 units)
- CS 250 (3 units)
- CS 252 (3 units
- CS 254 (3 units)
- CS 254B (3 units)
- CS 255 (3 units)
- CS 259Q (3 units)
- CS 260 (3 units)
- CS 261 (3 units)
- CS 263 (3 units)
- CS 265 (3 units)
Subplan Faculty Advisors
Math Faculty Advisors
CS Faculty Advisors
Honors in the Computer Science Theory/Discrete Mathematics Subplan
Students who have declared the Subplan may also pursue honors in the major. All of the honors requirements must be fulfilled except for the 7 additional Math courses numbered 121 or higher. You must complete the required courses for the Subplan plus the additional 6 units of Math 197 and an honors thesis.
For more information about the honors degree, please see the Honors in the Major page.