Students in this academic plan must fulfil all the requirements in Table 1 and Table 2. This must include at least 26 math courses and the following specific requirements:
- One of
- MATH 239 Introduction to Combinatorics
- MATH 249 Introduction to Combinatorics (Advanced Level)
- One of
- CO 250 Introduction to Optimization
- CO 255 Introduction to Optimization (Advanced Level)
- One of
- CO 330 Combinatorial Enumeration
- CO 342 Introduction to Graph Theory
- One of
- CO 351 Network Flow Theory
- CO 353 Computational Discrete Optimization
- CO 367 Nonlinear Optimization
Note: If CO 255 is taken, this requirement can be satisfied by taking one of CO 450 to CO 471.
- Three additional courses chosen from
- All of
- Three of
- MATH 237 Calculus 3 for Honours Mathematics or MATH 247 Calculus 3 (Advanced Level)
- AMATH 331/PMATH 331 Applied Real Analysis or PMATH 333 Introduction to Real Analysis
- AMATH 332/PMATH 332 Applied Complex Analysis
- CS 462 Formal Languages and Parsing
- CS 466 Algorithm Design and Analysis
- CS 487 Introduction to Symbolic Computation
- PMATH 334 Introduction to Rings and Fields with Applications or PMATH 348 Fields and Galois Theory
- PMATH 340 Elementary Number Theory
Note: These fourth-year CS courses are open only to Computer Science majors.
- Two additional 300- or 400-level math courses with a subject code other than CO
- One additional 300- or 400-level math course
- Three additional math courses