Link to the University of Waterloo home page
2021-2022

The Undergraduate Calendar

 

 

Computational Mathematics

Degree Requirements

Computational Mathematics

Students in this 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 237 Calculus 3 for Honours Mathematics
MATH 247 Calculus 3 (Advanced Level)

One of

MATH 239 Introduction to Combinatorics
MATH 249 Introduction to Combinatorics (Advanced Level)

All of

AMATH 242/CS 371 Introduction to Computational Mathematics

One of

CS 230 Introduction to Computers and Computer Systems
CS 241 Foundations of Sequential Programs

One of

CS 234 Data Types and Structures
CS 240 Data Structures and Data Management

Four of the following core courses

AMATH 342 Computational Methods for Differential Equations
CO 250 Introduction to Optimization or CO 255 Introduction to Optimization (Advanced Level)
CS 245 Logic and Computation (see Note 2) or PMATH 330 Introduction to Mathematical Logic
CS 246 Object-Oriented Software Development
CS 475 Computational Linear Algebra
STAT 340 Stochastic Simulation Methods or STAT 341 Computational Statistics and Data Analysis

Four additional courses from

AMATH 382/BIOL 382 Computational Modelling of Cellular Systems
AMATH 442 Computational Methods for Partial Differential Equations
CO 351 Network Flow Theory
CO 353 Computational Discrete Optimization
CO 367 Nonlinear Optimization
CO 370 Deterministic OR Models
CO 372 Portfolio Optimization Models
CO 450 Combinatorial Optimization
CO 452 Integer Programming
CO 454 Scheduling
CO 456 Introduction to Game Theory
CO 485 The Mathematics of Public-Key Cryptography
CO 487 Applied Cryptography
CS 341 Algorithms
CS 431 Data-Intensive Distributed Analytics or CS 451 Data-Intensive Distributed Computing
CS 466 Algorithm Design and Analysis
CS 476 Numerical Computation for Financial Modeling
CS 480 Introduction to Machine Learning
CS 482 Computational Techniques in Biological Sequence Analysis
CS 485 Statistical and Computational Foundations of Machine Learning
CS 487 Introduction to Symbolic Computation
PMATH 370 Chaos and Fractals
STAT 440 Computational Inference
STAT 441 Statistical Learning - Classification
STAT 442 Data Visualization
STAT 444 Statistical Learning - Function Estimation
Three (1.5 units) non-math courses, at least one must be at the 200-, 300-, or 400-level, from one of the following departments (other course concentrations may be eligible subject to approval by a Computational Mathematics advisor):
Economics
any one Science department
any one Engineering department

Notes

  1. CS 240 requires CS 245 and CS 246 as prerequisites, CS 241 requires CS 246 as a prerequisite. CS 240 and CS 241 have restricted access for non-Computer Science majors.
  2. CS 245 and CS 246 require CS 136 as a prerequisite.
  3. CS 341, CS 451, CS 466, CS 480, and CS 485 have restricted access for non-Computer Science majors.
  4. Engineering courses may not be open to Mathematics students or may not easily fit schedules.

Office of the Registrar
University of Waterloo
Ira G. Needles Hall
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519-888-4567