Students in this plan must fulfil all the requirements of Table 1 and the following specific requirements:
One of
CS 115 Introduction to Computer Science 1
CS 135 Designing Functional Programs
CS 145 Designing Functional Programs (Advanced Level)
One of
CS 136 Elementary Algorithm Design and Data Abstraction
CS 146 Elementary Algorithm Design and Data Abstraction (Advanced Level)
One of
MATH 127 Calculus 1 for the Sciences
MATH 137 Calculus 1 for Honours Mathematics
MATH 147 Calculus 1 (Advanced Level)
One of
MATH 128 Calculus 2 for the Sciences
MATH 138 Calculus 2 for Honours Mathematics
MATH 148 Calculus 2 (Advanced Level)
One of
MATH 135 Algebra for Honours Mathematics
MATH 145 Algebra (Advanced Level)
One of
MATH 136 Linear Algebra 1 for Honours Mathematics
MATH 146 Linear Algebra 1 (Advanced Level)
One of
MATH 239 Introduction to Combinatorics
MATH 249 Introduction to Combinatorics (Advanced Level)
One of
STAT 230 Probability
STAT 240 Probability (Advanced Level)
One of
STAT 231 Statistics
STAT 241 Statistics (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 additional course chosen from CS 340-CS 398, CS 440-CS 489.
Two additional courses chosen from CS 440-CS 489, CS 499T.
Ten non-math courses satisfying the same restrictions as specified for the Bachelor of Computer Science.