Metadata
Title
Computer Science
Category
undergraduate
UUID
f0fc2099a5cb4fe1b9d1a0d721623e1f
Source URL
https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/p...
Parent URL
https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/p...
Crawl Time
2026-03-18T05:15:33+00:00
Rendered Raw Markdown
# Computer Science

**Source**: https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bachelor-of-Mathematics-Computer-Science-1.html
**Parent**: https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bus-Admin-Computer-Sci-Double-Degree-Reqmnt-1.html

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| |  |  | | --- | --- | |  |  | | 2022-2023 | [The Undergraduate Calendar](https://academic-calendar-archive.uwaterloo.ca/) | | - [The Undergraduate Studies Calendar](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/uWaterloo-Undergraduate-Calendar-Access.html) - [General Information](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-General-Information.html) - [Calendar of Events and Academic Deadlines](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/uWaterloo-Calendar-Events-and-Academic-Deadlines.html) - [Admissions](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Admissions.html) - [Fees](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Fees.html) - [Awards and Financial Aid](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Awards-and-Financial-Aid.html) - [Co-operative Education & Career Action](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Co-operative-Education-Career-Action.html) - [University Policies, Guidelines, and Academic Regulations](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Policies-Guidelines-Academic-Regulations.html) - [Faculty of Arts](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Faculty-of-Arts.html) - [Faculty of Engineering](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Faculty-of-Engineering.html) - [Faculty of Environment](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Faculty-of-Environment.html) - [Faculty of Health](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Faculty-of-Health.html) - [**Faculty of Mathematics**](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/u-Waterloo-Faculty-of-Mathematics.html)  - [About the Faculty of Mathematics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-About-the-Faculty-of-Mathematics.html) - [List of Academic Programs/Plans](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-List-of-Academic-Programs-or-Plans.html) - [Admission to Specific Honours Academic Plans](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Admission-Specific-Honours-Academic-Plans.html) - [Bachelor of Computer Science and Bachelor of Mathematics Plan Combinations](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-BCS-and-BMath-Academic-Plan-Combinations.html) - [**Academic Plans and Requirements**](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Academic-Plans-and-Requirements.html)  - [Degree Requirements for all Math students](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Degree-Requirements-for-Math-students.html) - [Actuarial Science](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Actuarial-Science-1.html) - [Applied Mathematics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Applied-Mathematics-1.html) - [Combinatorics and Optimization](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Combinatorics-and-Optimization1.html) - [Computational Mathematics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Computational-Mathematics-1.html) - [**Computer Science**](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Computer-Science-1.html)  - [Admissions](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computer-Science-Admissions.html) - [**Plan Requirements**](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computer-Science-Plan-Requirements.html)  - [Bachelor of Computer Science](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bachelor-of-Computer-Science-1.html) - [Bachelor of Computer Science (Data Science)](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bachelor-of-Computer-Science-Data-Science.html) - [**Bachelor of Mathematics (Computer Science)**](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bachelor-of-Mathematics-Computer-Science-1.html) - [Business Administration & Computer Science Double Degree](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Business-Admin-Computer-Sci-Double-Degree-1.html) - [Joint Computer Science (Bachelor of Mathematics)](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Joint-Computer-Science-Bach-of-Math.html) - [Joint Bachelor of Computer Science](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Joint-Bachelor-of-Computer-Science-1.html)  - [Specializations](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computer-Science-Specializations.html) - [Computer Science Minor](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computer-Science-Minor-2.html) - [Computing Minor](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computing-Minor.html) - [Accelerated Master's](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Computer-Science-Accelerated-Masters.html)  - [Computing and Financial Management](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Computing-and-Financial-Management.html) - [Mathematics/Business](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Mathematics-or-Business.html) - [Mathematical Optimization](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Mathematical-Optimization1.html) - [Mathematical Studies](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Mathematical-Studies-1.html) - [Mathematics/Teaching](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Mathematics-or-Teaching.html) - [Plans for Students outside the Mathematics Faculty](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Plans-for-Students-outside-Mathematics-Fac.html) - [Pure Mathematics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Pure-Mathematics-1.html) - [Software Engineering](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Software-Engineering.html) - [Statistics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Statistics-1.html)  - [Faculty Policies](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/MATH-Faculty-Policies.html) - [Courses - Faculty of Mathematics](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/Courses-Faculty-of-Mathematics.html) - [Courses - Undergraduate](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/Course-Descriptions-Index.html)  - [Faculty of Science](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Faculty-of-Science.html) - [Social Work](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Social-Work.html) - [Minors, Options, Diplomas, Certificates](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Minors-Options-Diplomas-Certificates.html) - [Undergraduate Course Descriptions](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/Course-Descriptions-Index.html) - [Amendments](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/group/uWaterloo-Amendments.html) | |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | | |  | | --- | | Computer Science Plan Requirements | | |  | | --- | | Bachelor of Mathematics (Computer Science) | |  | | Students in this academic plan must fulfil all the requirements in [Table 1](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Degree-Requirements-for-Math-students.html#Table%20I) and [Table 2](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Degree-Requirements-for-Math-students.html#Table%20II). This must include at least 27 math courses and the following specific requirements:     - One of   - [MATH 237](https://ucalendar.uwaterloo.ca/2223/COURSE/course-MATH.html#MATH237) Calculus 3 for Honours Mathematics   - [MATH 247](https://ucalendar.uwaterloo.ca/2223/COURSE/course-MATH.html#MATH247) Calculus 3 (Advanced Level) - One of   - [MATH 239](https://ucalendar.uwaterloo.ca/2223/COURSE/course-MATH.html#MATH239) Introduction to Combinatorics   - [MATH 249](https://ucalendar.uwaterloo.ca/2223/COURSE/course-MATH.html#MATH249) Introduction to Combinatorics (Advanced Level) - All of   - [CS 240](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS240) Data Structures and Data Management   - [CS 241](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS241) Foundations of Sequential Programs   - [CS 245](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS245) Logic and Computation   - [CS 246](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS246) Object-Oriented Software Development   - [CS 251](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS251) Computer Organization and Design   - [CS 341](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS341) Algorithms   - [CS 350](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS350) Operating Systems - One of   - [AMATH 242](https://ucalendar.uwaterloo.ca/2223/COURSE/course-AMATH.html#AMATH242)/[CS 371](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS371) Introduction to Computational Mathematics   - [CS 370](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS370) Numerical Computation - One of    - [CS 360](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS360) Introduction to the Theory of Computing   - [CS 365](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS365) 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](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CO.html#CO487) Applied Cryptography   - CS 440-CS 498   - [CS 499T](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CS.html#CS499T) Honours Thesis   - [STAT 440](https://ucalendar.uwaterloo.ca/2223/COURSE/course-STAT.html#STAT440) 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](https://cs.uwaterloo.ca/office-hours). Courses in this list may be counted as CS 0.5 unit. - Three additional courses with [ACTSC](https://ucalendar.uwaterloo.ca/2223/COURSE/course-ACTSC.html), [AMATH](https://ucalendar.uwaterloo.ca/2223/COURSE/course-AMATH.html), [CO](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CO.html), [PMATH](https://ucalendar.uwaterloo.ca/2223/COURSE/course-PMATH.html), [STAT](https://ucalendar.uwaterloo.ca/2223/COURSE/course-STAT.html) subject codes, excluding the following:   - Courses with requisites normally excluding Honours Computer Science students   - Courses cross-listed with a CS course   - Courses explicitly listed in Computer Science major academic plans as alternatives to CS courses   - Readings and topics courses   - [ACTSC 221](https://ucalendar.uwaterloo.ca/2223/COURSE/course-ACTSC.html#ACTSC221), [CO 353](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CO.html#CO353), [CO 380](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CO.html#CO380), [CO 480](https://ucalendar.uwaterloo.ca/2223/COURSE/course-CO.html#CO480) - 5.0 non-math units, which must satisfy the same restrictions as specified for the [Bachelor of Computer Science](https://academic-calendar-archive.uwaterloo.ca/undergraduate-studies/2022-2023/page/MATH-Bachelor-of-Computer-Science-1.html) | | | | ---   Office of the Registrar  University of Waterloo  Ira G. Needles Hall  200 University Avenue West  Waterloo, Ontario, Canada N2L 3G1   519-888-4567 | | | |