Computer Science
Plan Requirements |
Bachelor of Computer Science |
|
Students in this academic plan must fulfil all the requirements in 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
- One of
- One of
- 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
- One of
- All of
- CS 136L Tools and Techniques for Software Development
- CS 240 Data Structures and Data Management or CS 240E Data Structures and Data Management (Enriched)
- CS 241 Foundations of Sequential Programs or CS 241E Foundations of Sequential Programs (Enriched)
- CS 245 Logic and Computation or CS 245E Logic and Computation (Enriched)
- CS 246 Object-Oriented Software Development or CS 246E Object-Oriented Software Development (Enriched)
- CS 251 Computer Organization and Design or CS 251E Computer Organization and Design (Enriched)
- CS 341 Algorithms
- CS 350 Operating Systems
- Three additional CS courses 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 academic advisor. Courses in this list may be counted as CS 0.5 unit.
- 5.0 non-math units, which must satisfy the following elective breadth and depth requirements
- Elective breadth requirements
-
1.0 unit of humanities from: CHINA, CLAS, CMW, COMMST, CROAT, DAC, DUTCH, EASIA, ENGL, FINE, FR, GER, GRK, HIST, HUMSC, ITAL, ITALST, JAPAN, JS, KOREA, LAT, MEDVL, MUSIC, PHIL, PORT, REES, RS, RUSS, SI, SPAN, THPERF, VCULT
-
1.0 unit of social sciences from: AFM, ANTH, APPLS, ARBUS, BET, BUS, COMM, ECON, ENBUS, GEOG, GSJ, HRM, INDEV, INDG, INTST, LS, MSCI, PACS, PSCI, PSYCH, REC, SDS, SMF, SOC, SOCWK, STV
-
0.5 unit of pure sciences from: BIOL, CHEM, EARTH, PHYS, SCI
-
0.5 unit pure and applied sciences from: pure sciences plus ENVS, ERS, HEALTH, KIN, MNS, PLAN
- Elective depth requirements
- 1.5 units with the same subject, including at least 0.5 unit at 300-level or higher, or
- 1.5 units with the same subject forming a prerequisite chain of length three
Breadth and Depth Notes
- No course can satisfy more than one of the breadth requirements.
- Courses with substantial math or computer science content, regardless of subject, do not satisfy the elective breadth or depth requirement. Students may wish to consult with the CS advisors about specific courses.
- Courses from the "List 1: First Course" for the Undergraduate Communication Requirement do not satisfy the humanities breadth requirement. Courses found only in the "List 2: Second Course" list can satisfy both the humanities breadth requirement and the Undergraduate Communication Requirement.
|
|
|