Stanford University

Computer Science Theory/Discrete Mathematics Subplan

About the Subplan:

  • Intended for students wishing for a strong and deep background in the area of computer science theory and mathematics
  • Could prepare students for graduate work in either area, as well as for other careers requiring particular strength in this type of thinking
  • Emphasis is on theory; students 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).

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.

Requirements

The requirements of the Mathematics major must be satisfied:

  • 57 units of Math courses taken for a letter grade reduced by the number of 200-level graduate Math courses.
  • Four additional courses of Math Department courses numbered 101 and above or pre-approved electives in other disciplines with significant mathematical content, one of which can be taken for CR/NC.
    • The above letter grade policies does not apply for courses taken in Spring 2020 and the 2020-2021 academic year due to COVID-19. Please see the official requirements.

See the Math major page for full details regarding the Math major requirements.

The selection of courses must contain the required courses listed in the links 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.

Subplan Required Courses     Subplan Checklist 

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 49 units of Math Department classes. If you are taking Single Variable Calculus courses you must take them for a letter grade in order for them to count toward the 57 units of Math Department courses.

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 49 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 in order for them to count toward the 57 units of Math Department courses.

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 requirements 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 in order for them to count toward the 57 units of Math Department courses.

See the section below for the required subplan courses.

Optional 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 Courses: These courses must be completed for the subplan and must be taken for a letter grade.

Required Math Courses:

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:

CS 154 (3 - 4 units)

CS 161 (3 - 5 units)


Additional Required Math Courses:

Two of the following in Combinatorics:

Math 61DM (5 units)

Math 107 (4 units)

Math 108 (4 units)

Math 233A/B/C (3 units)

One of the following in Probability:

Math 151 (4 units)

Math 230A (3 units)

Stats 116 (4 - 5 units)

Two of the following:

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 of the following CS Courses:

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)

CS 268 (3 units)

Math Faculty Advisors:

CS Faculty Advisors:

Students who have declared the Subplan may also pursue honors in the major. 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.

Questions? Contact the Math Department Student Services Specialist