Link to the University of Waterloo home page
2020-2021

The Undergraduate Calendar

 

 

Computer Science

Plan Requirements

Bachelor of Mathematics (Computer Science)

Students in this plan must fulfil all the requirements in Table I and Table II. This must include at least 27 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

CS 240 Data Structures and Data Management
CS 241 Foundations of Sequential Programs
CS 245 Logic and Computation
CS 246 Object-Oriented Software Development
CS 251 Computer Organization and Design
CS 341 Algorithms
CS 350 Operating Systems

One of

AMATH 242/CS 371 Introduction to Computational Mathematics
CS 370 Numerical Computation

One of

CS 360 Introduction to the Theory of Computing
CS 365 Models of Computation

One additional CS course chosen from CS 340-CS 398, CS 440-CS 489.

Two additional CS courses chosen from CS 440-CS 489.

One additional course chosen from

CO 487 Applied Cryptography
CS 440-CS 498
CS 499T Honours Thesis
STAT 440 Computational Inference
CS 600- or 700-level courses
Note: CS 600- or 700-level courses may be taken only if an equivalent 400-level course does not exist and special permission is obtained from the instructor and a CS undergraduate advisor. Courses in this list may be counted as CS 0.5 unit.

Three additional courses labelled ACTSC, AMATH, CO, PMATH, STAT, excluding the following:

  • Courses with requisites normally excluding Honours CS students
  • Courses cross-listed with a CS course
  • Courses explicitly listed in CS major plans as alternatives to CS courses
  • Readings and topics courses
  • ACTSC 221, CO 353, CO 380, CO 480

The 5.0 non-math units must satisfy the same restrictions as specified for the Bachelor of Computer Science.

 


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