Skip to: content
The School of Mathematical and Computational Sciences at UPEI provides students with a strong foundation in Mathematics, Statistics and Computer Science, and offers a comprehensive suite of applied programs which meet market demand and lead to fulfilling careers in areas such as: Financial Mathematics, Actuarial Science, Data Analytics, Business Analytics, and Video Game Programming.
Faculty members in the School of Mathematical and Computational Sciences are focused on providing quality instruction in a friendly learning community. Small class sizes, activelearning opportunities, and accessible professors are features of all programs in the School of Mathematical and Computational Sciences.
The School of Mathematical and Computational Sciences offers degrees in:
Mathematics is the study of quantity, structure and space. While mathematics is important in understanding and influencing the physical world around us, mathematics can also be curiositydriven and enjoyed without the requirement of a particular application. The Bachelor of Science with a major in Mathematics provides students with a solid foundation in both pure and applied mathematics, preparing them for graduate studies and professional programs. Students interested in graduate studies in mathematics should consider the Bachelor of Science with honours in Mathematics.
Computer Science is a key enabler for innovation and discovery in most fields. It encompasses both theory and practice; theoretical ideas about how information is represented and processed, and practical techniques for creating new software. The School offers options such as cooperative education, a specialization in video game programming, and an Honours degree. Employment prospects are among the highest of any field. Honours graduates are well positioned to pursue graduate studies.
Statistics is the practice of collecting and analyzing numerical data, and inferring properties of the whole from a representative sample. The Bachelor of Science with a major in Statistics provides students with the solid foundation in both statistical theory and applied statistics necessary to become a statistician or proceed to more specialized statistical study at the graduate level. Students interested in continuing to work in statistics research should consider the Bachelor of Science with honours in Statistics.
Analytics is situated at the confluence of statistics, computer science and mathematics all centered on finding, interpreting and presenting meaningful patterns in data. We offer a Bachelor of Science in Analytics with specialization in either Data Analytics or Business Analytics, with cooperative education options available in both specializations. As data increasingly pervades our lives, graduates in Analytics are in high demand across a broad spectrum of fields including government, business and technology.
Actuarial Science is the study of risk, usually risk associated with insurance, pension, and investment plans. Actuarial Science uses techniques from mathematics, statistics, business, economics, and finance. The Bachelor of Science with a Major in Actuarial Science prepares students to write the early exams required to become an Actuary. Actuaries are in demand as professionals who develop solutions for complex financial issues. Actuaries have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies. Read more about what actuaries' do, job prospects, and salaries on our departmental website.
Financial Mathematics is the application of mathematical models to finance, usually to analyze markets and pricing. Financial Mathematics uses techniques from mathematics, statistics, business, finance, and economics. The Bachelor of Science in Financial Mathematics provides a solid foundation in Financial Mathematics, leading either to a career in the financial sector or to further training in advanced Financial Mathematics. Financial Mathematicians are in demand as professionals who develop solutions for complex financial issues and they have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies.
This specialization augments the Computer Science major with the skills needed to design and program video games on traditional, mobile and emerging platforms. Candidates for this program require strong programming, mathematical and problem solving skills. The focus is on game programming, rather than on artistic skills. A large and dynamic gaming industry offers graduates excellent employment prospects. Emerging technologies such as augmented/virtual reality ensure continued growth.
The specialization augments the Mathematics major with Engineering courses offered through UPEI’s School of Sustainable Design Engineering. The Bachelor of Science in Mathematics with Engineering provides a foundational Engineering program combined with more advanced mathematical training than is received in an Engineering Degree program.
Course code prefixes
In the School of Mathematical and Computational Sciences, there are five course prefixes:
Common requirements across all degree programs in the School of Mathematical and Computational Sciences
All degree programs in the School of Mathematical and Computational Sciences are built on a common core of courses that should be completed in the first two years of study. This common core consists of the following courses:
Course  Course name  Credits 
MATH 1910  Single Variable Calculus I  4 
MATH 1920  Single Variable Calculus II  4 
MATH 2610  Linear Algebra I  3 
STAT 2210  Introductory Statistics  3 
CS 1910  Computer Science I  3 
CS 1920  Computer Science II  3 
One of: 

3 
Total Semester Hours of Credit  23 
COMMON BREADTH REQUIREMENT
Students must take at least 15 semester hours of credit in courses outside the School of Mathematical and Computational Sciences (excluding one of the UPEI courses listed above), and of these 15 semester hours of credit, at least 6 must be from Biology, Chemistry or Physics and at least 6 must be from outside the Faculty of Science.
COMMON ADVANCED COURSES
Students in all degree programs in the School of Mathematical and Computational Sciences must complete MCS 4210 Professional Communication and Practice (writingintensive) and MCS 3050 Tutoring in Mathematical and Computational Sciences.
The Major in Mathematics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II 
3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab or MCS 2020  Matlab Technology Lab 
1 
MATH 2420  Combinatorics I  3 
STAT 2220  Introductory Statistics II  3 
MATH 3510  Real Analysis  3 
MATH 3610  Group Theory  3 
At least one of : MATH 3010  Differential Equations, STAT 3210  Probability and Mathematical Statistics I or MATH 3310  Complex Variables 
3 
Five electives in the Mathematical and Computational Sciences (at the 2000 level or higher with at least two at the 3000 level or higher) 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  52 
Total Semester Hours of Credit  120 
The Major in Statistics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MCS 2030  R Technology Lab  1 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4240  Experimental Design  3 
STAT 4330  Time Series I  3 
STAT 4110  Statistical Simulation  3 
STAT 4410  Stochastic Processes  3 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  120 
The Major in Computer Science requires a total of 120 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4810  Software Engineering  3 
One of: CS 4820  Software Systems Development Project or 
3 
Two electives in Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives: if CS 4820 taken  45 
or if CS 4840 taken  42 
Total Semester Hours of Credit 
120 
The Major in Actuarial Science requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 2510  Actuarial Science I  3 
AMS 3510  Actuarial Science II  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
AMS 3730  Advanced Insurance and Actuarial Practices  3 
AMS 4540  Loss Models I  3 
AMS 4550  Loss Models II  3 
AMS 4580  Credibility Theory  3 
STAT 4110  Statistical Simulation  3 
STAT 4330  Time Series I  3 
STAT 4410  Stochastic Processes  3 
MCS 3920  Numerical Analysis  3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
The Major in Financial Mathematics requires a total of 120 semester hours of credit, as described below:
Credit Hours  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 4080  Financial Mathematics II  3 
AMS 4090  Financial Mathematics III  3 
AMS 4780  Quantitative Risk Management  3 
AMS 3910  Mathematical Modelling  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
MATH 3010  Differential Equations  3 
MATH 3510  Real Analysis  3 
MATH 4710  Partial Differential Equations  3 
STAT 4330  Time Series I  3 
At least one of: STAT 4410  Stochastic Processes 
3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
At least one of: ECON 2510  Money and Financial Institutions 
3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
At least one of: BUS 3330  Integrated Cases in Corporate Finance 
3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
(Specialization in Data Analytics)
The Major in Analytics with a specialization in Data Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
MATH 3610  Group Theory  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4660  Data Visualization and Mining  3 
CS 2610  Data Structures and Algorithms  3 
CS2910  Computer Science III  3 
CS 3710  Database Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 4120  Machine Learning  3 
CS 4440  Data Science  3 
Two electives in Mathematical or Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  19 
Total Semester Hours of Credit  120 
(Specialization in Business Analytics)
The Major in Analytics with a specialization in Business Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4660  Data Visualization and Mining  3 
Two electives in the Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
CS 2610  Data Structures and Algorithms  3 
CS 2910  Computer Science III  3 
CS 3710  Database Systems  3 
ACCT 1010  Introduction to Financial Accounting  3 
BUS 1410  Marketing  3 
BUS 1710  Organizational Behaviour  3 
At least five of: ACCT 2210  Managerial Accounting 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
Note: Students who complete the Major in Analytics with a specialization in Business Analytics and obtain grades of at least 60% in seven of the Business courses can also obtain a Certificate in Business. 
The Major in Mathematics with Engineering requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
MATH 3310  Complex Variables  3 
At least one of: MATH 3510  Real Analysis 
3 
Two electives in Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
PHYS 1110 and 1120  General Physics I and II  6 
CHEM 1110 and 1120  General Chemistry I and II  6 
ENGN 1210  Design 1: Engineering Communications  3 
ENGN 1220  Design 2: Engineering Analysis  3 
ENGN 1510  Engineering and the Biosphere  3 
ENGN 2210  Design 3: Engineering Projects I  3 
ENGN 2220  Design 4: Engineering Projects II  3 
ENGN 2310  Strength of Materials  3 
ENGN 2340  Engineering Dynamics  3 
ENGN 2610  Thermofluids I  3 
ENGN 2810  Electrical Circuits I  3 
Two electives in Engineering  6 
Additional general electives  24 
Total Semester Hours of Credit  120 
Note: Mathematics with Engineering Majors may substitute ENGN 1320 for CS 1510, and CS 1610 or MCS 3920 for CS 1520. 
The Major in Computer Science with a specialization in Video Game Programming requires a total of 120 semester hours of credit, as described below. To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
At least one of: CS 2120  Mobile Device Development – iOS 
3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
CS 3110  Video Game Design  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4350  Computer Graphics Programming  3 
CS 4360  Advanced Computer Graphics Programming  3 
At least two of: CS 4060  Cloud Computing 
6 
CS 4650  Video Game Architecture  3 
CS 4810  Software Engineering  3 
CS 4830  Video Game Programming Project  6 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  21 
Total Semester Hours of Credit  120 
Acceptance to an Honours program
Students in the Mathematics, Statistics and Computer Science programs have an Honours option. Permission of the School of Mathematical and Computational Sciences is required for admission to an Honours program. Students must normally have a minimum average of 70% in all previous courses. Normally, the School expects an average of 75% in all previous Mathematical and Computational Sciences courses. Admission is contingent upon the student finding a project advisor and acceptance by the School of the topic for the Honours project. Students interested in doing Honours are strongly encouraged to consult with the Associate Dean of the School of Mathematical and Computational Sciences as soon as possible, and no later than January 31 of the student’s third year. To receive the Honours designation, in addition to successful completion of the Honours project, normally students must maintain an average of at least 75% in all courses in the School of Mathematical and Computational Sciences.
The Honours in Mathematics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab OR MCS 2020  Matlab Technology Lab 
1 
MATH 2420 Combinatorics I  3 
MATH 3510 Real Analysis  3 
MATH 3610 Group Theory  3 
MATH 3010 Differential Equations  3 
STAT 3210 Probability and Mathematical Statistics I  3 
MATH 3310 Complex Variables  3 
MCS 4900 Honours Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher, with at least two at the 4000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Statistics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
MCS 2030 R Technology Lab  3 
STAT 3210 Probability and Mathematical Statistics I  3 
STAT 3220 Probability and Mathematical Statistics II  3 
STAT 3240 Applied Regression Analysis  3 
STAT 4550 Data Analysis and Inference  3 
STAT 4240 Experimental Design  3 
STAT 4330 Time Series I  3 
STAT 4110 Statistical Simulation  3 
STAT 4410 Stochastic Processes  3 
MCS 4900 Honours Project  6 
Two electives in the Mathematical and Computational Science (at the 3000 level or higher) 
6 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Computer Science requires a total of 126 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610 Digital Systems  3 
CS 2520 Computer Organization and Architecture  3 
CS 2610 Data Structures and Algorithms  3 
CS 2620 Comparative Programming Languages  3 
CS 2820 Programming Practices  3 
MATH 2420 Combinatorics I  3 
MATH 2910 Multivariable Calculus  4 
MCS 3320 Theory of Computing  3 
CS 3420 Computer Communications  3 
CS 3520 Operating Systems  3 
CS 3610 Analysis and Design of Algorithms  3 
CS 3620 Software Design and Architecture  3 
CS 3710 Database Systems  3 
At least one of: CS 4110  Artificial Intelligence and Automated Reasoning OR CS 4120  Machine Learning 
3 
CS 4810 Software Engineering  3 
MCS 4900 Honours Research Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  35 
Total Semester Hours of Credit  126 
The Mathematical and Computational Sciences Coop program is an integrated approach to university education that enables students to alternate academic terms on campus with work terms in relevant and supervised employment. The Coop program consists of eight academic terms, at least three work terms and a series of professional development workshops and seminars. It is available as an option to fulltime students enrolled in Major and Honours programs. Application to the coop program is made in the student’s second year of study. Students must complete 126 semester hours of credit to graduate with the Coop designation, and no credit will be given for any Coop work term course, unless at least three work terms are successfully completed.
See the Coop Education (Mathematical and Computational Sciences) page for complete program details.
The Firstyear Calculus courses for most science students are Math 191 and Math 1920. In addition to Grade XII academic Mathematics (or equivalent), a passing grade on an Assessment Test written during the first week of classes is required as a prerequisite for Math 1910. The Assessment Test covers the standard precalculus topics of the High School curriculum (arithmetic, algebra, trigonometry, analytic geometry and the basic theory of functions). This test is of 90 minutes duration and is given during the first week of classes.
Students who do not pass the assessment test may have the option of enrolling in a special section of Math 1910 incorporating additional tutorials reviewing preCalculus materials. See the Associate Dean of the School of Mathematical and Computational Sciences for details.
Students may obtain a Minor in Computer Science by completing at least 21 semester hours of credit in Computer Science defined as follows:
CS 19101920  Computer Science I & II  6 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
plus 3 semester hours of credit in Computer Science at the 3000 level or higher, and an additional 6 semester hours of credit in Computer Science at the 2000 level or higher 
9 
Total Semester Hours of Credit 
21 
Students may obtain a Minor in Mathematics by completing at least 24 semester hours of credit in Mathematics defined as follows:
Math 19101920  Single Variable Calculus I & II  8 
Math 2610  Linear Algebra I  3 
Math 2910  Multivariable and Vector Calculus  4 
plus 3 semester hours of credit in Mathematics at the 3000 level or higher, and an additional 6 semester hours of credit of Mathematics at the 2000 level or above  9 
Total Semester Hours of Credit  24 
Students may obtain a Minor in Statistics by completing at least 23 semester hours of credit in Mathematics and Statistics defined as follows:
MATH 19101920  Single Variable Calculus I & II  8 
STAT 22102220  Introductory Statistics I & II  6 
MATH 2610  Linear Algebra I  3 
STAT 3210  Probability and Mathematical Statistics I  3 
plus 3 semester hours of credit in Statistics at the 3000 level or higher  3 
Total Semester Hours of Credit  23 
The School of Mathematical and Computational Sciences at UPEI provides students with a strong foundation in Mathematics, Statistics and Computer Science, and offers a comprehensive suite of applied programs which meet market demand and lead to fulfilling careers in areas such as: Financial Mathematics, Actuarial Science, Data Analytics, Business Analytics, and Video Game Programming.
Faculty members in the School of Mathematical and Computational Sciences are focused on providing quality instruction in a friendly learning community. Small class sizes, activelearning opportunities, and accessible professors are features of all programs in the School of Mathematical and Computational Sciences.
The School of Mathematical and Computational Sciences offers degrees in:
Mathematics is the study of quantity, structure and space. While mathematics is important in understanding and influencing the physical world around us, mathematics can also be curiositydriven and enjoyed without the requirement of a particular application. The Bachelor of Science with a major in Mathematics provides students with a solid foundation in both pure and applied mathematics, preparing them for graduate studies and professional programs. Students interested in graduate studies in mathematics should consider the Bachelor of Science with honours in Mathematics.
Computer Science is a key enabler for innovation and discovery in most fields. It encompasses both theory and practice; theoretical ideas about how information is represented and processed, and practical techniques for creating new software. The School offers options such as cooperative education, a specialization in video game programming, and an Honours degree. Employment prospects are among the highest of any field. Honours graduates are well positioned to pursue graduate studies.
Statistics is the practice of collecting and analyzing numerical data, and inferring properties of the whole from a representative sample. The Bachelor of Science with a major in Statistics provides students with the solid foundation in both statistical theory and applied statistics necessary to become a statistician or proceed to more specialized statistical study at the graduate level. Students interested in continuing to work in statistics research should consider the Bachelor of Science with honours in Statistics.
Analytics is situated at the confluence of statistics, computer science and mathematics all centered on finding, interpreting and presenting meaningful patterns in data. We offer a Bachelor of Science in Analytics with specialization in either Data Analytics or Business Analytics, with cooperative education options available in both specializations. As data increasingly pervades our lives, graduates in Analytics are in high demand across a broad spectrum of fields including government, business and technology.
Actuarial Science is the study of risk, usually risk associated with insurance, pension, and investment plans. Actuarial Science uses techniques from mathematics, statistics, business, economics, and finance. The Bachelor of Science with a Major in Actuarial Science prepares students to write the early exams required to become an Actuary. Actuaries are in demand as professionals who develop solutions for complex financial issues. Actuaries have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies. Read more about what actuaries' do, job prospects, and salaries on our departmental website.
Financial Mathematics is the application of mathematical models to finance, usually to analyze markets and pricing. Financial Mathematics uses techniques from mathematics, statistics, business, finance, and economics. The Bachelor of Science in Financial Mathematics provides a solid foundation in Financial Mathematics, leading either to a career in the financial sector or to further training in advanced Financial Mathematics. Financial Mathematicians are in demand as professionals who develop solutions for complex financial issues and they have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies.
This specialization augments the Computer Science major with the skills needed to design and program video games on traditional, mobile and emerging platforms. Candidates for this program require strong programming, mathematical and problem solving skills. The focus is on game programming, rather than on artistic skills. A large and dynamic gaming industry offers graduates excellent employment prospects. Emerging technologies such as augmented/virtual reality ensure continued growth.
The specialization augments the Mathematics major with Engineering courses offered through UPEI’s School of Sustainable Design Engineering. The Bachelor of Science in Mathematics with Engineering provides a foundational Engineering program combined with more advanced mathematical training than is received in an Engineering Degree program.
Course code prefixes
In the School of Mathematical and Computational Sciences, there are five course prefixes:
Common requirements across all degree programs in the School of Mathematical and Computational Sciences
All degree programs in the School of Mathematical and Computational Sciences are built on a common core of courses that should be completed in the first two years of study. This common core consists of the following courses:
Course  Course name  Credits 
MATH 1910  Single Variable Calculus I  4 
MATH 1920  Single Variable Calculus II  4 
MATH 2610  Linear Algebra I  3 
STAT 2210  Introductory Statistics  3 
CS 1910  Computer Science I  3 
CS 1920  Computer Science II  3 
One of: 

3 
Total Semester Hours of Credit  23 
COMMON BREADTH REQUIREMENT
Students must take at least 15 semester hours of credit in courses outside the School of Mathematical and Computational Sciences (excluding one of the UPEI courses listed above), and of these 15 semester hours of credit, at least 6 must be from Biology, Chemistry or Physics and at least 6 must be from outside the Faculty of Science.
COMMON ADVANCED COURSES
Students in all degree programs in the School of Mathematical and Computational Sciences must complete MCS 4210 Professional Communication and Practice (writingintensive) and MCS 3050 Tutoring in Mathematical and Computational Sciences.
The Major in Mathematics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II 
3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab or MCS 2020  Matlab Technology Lab 
1 
MATH 2420  Combinatorics I  3 
STAT 2220  Introductory Statistics II  3 
MATH 3510  Real Analysis  3 
MATH 3610  Group Theory  3 
At least one of : MATH 3010  Differential Equations, STAT 3210  Probability and Mathematical Statistics I or MATH 3310  Complex Variables 
3 
Five electives in the Mathematical and Computational Sciences (at the 2000 level or higher with at least two at the 3000 level or higher) 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  52 
Total Semester Hours of Credit  120 
The Major in Statistics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MCS 2030  R Technology Lab  1 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4240  Experimental Design  3 
STAT 4330  Time Series I  3 
STAT 4110  Statistical Simulation  3 
STAT 4410  Stochastic Processes  3 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  120 
The Major in Computer Science requires a total of 120 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4810  Software Engineering  3 
One of: CS 4820  Software Systems Development Project or 
3 
Two electives in Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives: if CS 4820 taken  45 
or if CS 4840 taken  42 
Total Semester Hours of Credit 
120 
The Major in Actuarial Science requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 2510  Actuarial Science I  3 
AMS 3510  Actuarial Science II  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
AMS 3730  Advanced Insurance and Actuarial Practices  3 
AMS 4540  Loss Models I  3 
AMS 4550  Loss Models II  3 
AMS 4580  Credibility Theory  3 
STAT 4110  Statistical Simulation  3 
STAT 4330  Time Series I  3 
STAT 4410  Stochastic Processes  3 
MCS 3920  Numerical Analysis  3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
The Major in Financial Mathematics requires a total of 120 semester hours of credit, as described below:
Credit Hours  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 4080  Financial Mathematics II  3 
AMS 4090  Financial Mathematics III  3 
AMS 4780  Quantitative Risk Management  3 
AMS 3910  Mathematical Modelling  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
MATH 3010  Differential Equations  3 
MATH 3510  Real Analysis  3 
MATH 4710  Partial Differential Equations  3 
STAT 4330  Time Series I  3 
At least one of: STAT 4410  Stochastic Processes 
3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
At least one of: ECON 2510  Money and Financial Institutions 
3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
At least one of: BUS 3330  Integrated Cases in Corporate Finance 
3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
(Specialization in Data Analytics)
The Major in Analytics with a specialization in Data Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
MATH 3610  Group Theory  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4660  Data Visualization and Mining  3 
CS 2610  Data Structures and Algorithms  3 
CS2910  Computer Science III  3 
CS 3710  Database Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 4120  Machine Learning  3 
CS 4440  Data Science  3 
Two electives in Mathematical or Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  19 
Total Semester Hours of Credit  120 
(Specialization in Business Analytics)
The Major in Analytics with a specialization in Business Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4660  Data Visualization and Mining  3 
Two electives in the Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
CS 2610  Data Structures and Algorithms  3 
CS 2910  Computer Science III  3 
CS 3710  Database Systems  3 
ACCT 1010  Introduction to Financial Accounting  3 
BUS 1410  Marketing  3 
BUS 1710  Organizational Behaviour  3 
At least five of: ACCT 2210  Managerial Accounting 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
Note: Students who complete the Major in Analytics with a specialization in Business Analytics and obtain grades of at least 60% in seven of the Business courses can also obtain a Certificate in Business. 
The Major in Mathematics with Engineering requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
MATH 3310  Complex Variables  3 
At least one of: MATH 3510  Real Analysis 
3 
Two electives in Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
PHYS 1110 and 1120  General Physics I and II  6 
CHEM 1110 and 1120  General Chemistry I and II  6 
ENGN 1210  Design 1: Engineering Communications  3 
ENGN 1220  Design 2: Engineering Analysis  3 
ENGN 1510  Engineering and the Biosphere  3 
ENGN 2210  Design 3: Engineering Projects I  3 
ENGN 2220  Design 4: Engineering Projects II  3 
ENGN 2310  Strength of Materials  3 
ENGN 2340  Engineering Dynamics  3 
ENGN 2610  Thermofluids I  3 
ENGN 2810  Electrical Circuits I  3 
Two electives in Engineering  6 
Additional general electives  24 
Total Semester Hours of Credit  120 
Note: Mathematics with Engineering Majors may substitute ENGN 1320 for CS 1510, and CS 1610 or MCS 3920 for CS 1520. 
The Major in Computer Science with a specialization in Video Game Programming requires a total of 120 semester hours of credit, as described below. To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
At least one of: CS 2120  Mobile Device Development – iOS 
3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
CS 3110  Video Game Design  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4350  Computer Graphics Programming  3 
CS 4360  Advanced Computer Graphics Programming  3 
At least two of: CS 4060  Cloud Computing 
6 
CS 4650  Video Game Architecture  3 
CS 4810  Software Engineering  3 
CS 4830  Video Game Programming Project  6 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  21 
Total Semester Hours of Credit  120 
Acceptance to an Honours program
Students in the Mathematics, Statistics and Computer Science programs have an Honours option. Permission of the School of Mathematical and Computational Sciences is required for admission to an Honours program. Students must normally have a minimum average of 70% in all previous courses. Normally, the School expects an average of 75% in all previous Mathematical and Computational Sciences courses. Admission is contingent upon the student finding a project advisor and acceptance by the School of the topic for the Honours project. Students interested in doing Honours are strongly encouraged to consult with the Associate Dean of the School of Mathematical and Computational Sciences as soon as possible, and no later than January 31 of the student’s third year. To receive the Honours designation, in addition to successful completion of the Honours project, normally students must maintain an average of at least 75% in all courses in the School of Mathematical and Computational Sciences.
The Honours in Mathematics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab OR MCS 2020  Matlab Technology Lab 
1 
MATH 2420 Combinatorics I  3 
MATH 3510 Real Analysis  3 
MATH 3610 Group Theory  3 
MATH 3010 Differential Equations  3 
STAT 3210 Probability and Mathematical Statistics I  3 
MATH 3310 Complex Variables  3 
MCS 4900 Honours Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher, with at least two at the 4000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Statistics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
MCS 2030 R Technology Lab  3 
STAT 3210 Probability and Mathematical Statistics I  3 
STAT 3220 Probability and Mathematical Statistics II  3 
STAT 3240 Applied Regression Analysis  3 
STAT 4550 Data Analysis and Inference  3 
STAT 4240 Experimental Design  3 
STAT 4330 Time Series I  3 
STAT 4110 Statistical Simulation  3 
STAT 4410 Stochastic Processes  3 
MCS 4900 Honours Project  6 
Two electives in the Mathematical and Computational Science (at the 3000 level or higher) 
6 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Computer Science requires a total of 126 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610 Digital Systems  3 
CS 2520 Computer Organization and Architecture  3 
CS 2610 Data Structures and Algorithms  3 
CS 2620 Comparative Programming Languages  3 
CS 2820 Programming Practices  3 
MATH 2420 Combinatorics I  3 
MATH 2910 Multivariable Calculus  4 
MCS 3320 Theory of Computing  3 
CS 3420 Computer Communications  3 
CS 3520 Operating Systems  3 
CS 3610 Analysis and Design of Algorithms  3 
CS 3620 Software Design and Architecture  3 
CS 3710 Database Systems  3 
At least one of: CS 4110  Artificial Intelligence and Automated Reasoning OR CS 4120  Machine Learning 
3 
CS 4810 Software Engineering  3 
MCS 4900 Honours Research Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  35 
Total Semester Hours of Credit  126 
The Mathematical and Computational Sciences Coop program is an integrated approach to university education that enables students to alternate academic terms on campus with work terms in relevant and supervised employment. The Coop program consists of eight academic terms, at least three work terms and a series of professional development workshops and seminars. It is available as an option to fulltime students enrolled in Major and Honours programs. Application to the coop program is made in the student’s second year of study. Students must complete 126 semester hours of credit to graduate with the Coop designation, and no credit will be given for any Coop work term course, unless at least three work terms are successfully completed.
See the Coop Education (Mathematical and Computational Sciences) page for complete program details.
The Firstyear Calculus courses for most science students are Math 191 and Math 1920. In addition to Grade XII academic Mathematics (or equivalent), a passing grade on an Assessment Test written during the first week of classes is required as a prerequisite for Math 1910. The Assessment Test covers the standard precalculus topics of the High School curriculum (arithmetic, algebra, trigonometry, analytic geometry and the basic theory of functions). This test is of 90 minutes duration and is given during the first week of classes.
Students who do not pass the assessment test may have the option of enrolling in a special section of Math 1910 incorporating additional tutorials reviewing preCalculus materials. See the Associate Dean of the School of Mathematical and Computational Sciences for details.
Students may obtain a Minor in Computer Science by completing at least 21 semester hours of credit in Computer Science defined as follows:
CS 19101920  Computer Science I & II  6 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
plus 3 semester hours of credit in Computer Science at the 3000 level or higher, and an additional 6 semester hours of credit in Computer Science at the 2000 level or higher 
9 
Total Semester Hours of Credit 
21 
Students may obtain a Minor in Mathematics by completing at least 24 semester hours of credit in Mathematics defined as follows:
Math 19101920  Single Variable Calculus I & II  8 
Math 2610  Linear Algebra I  3 
Math 2910  Multivariable and Vector Calculus  4 
plus 3 semester hours of credit in Mathematics at the 3000 level or higher, and an additional 6 semester hours of credit of Mathematics at the 2000 level or above  9 
Total Semester Hours of Credit  24 
Students may obtain a Minor in Statistics by completing at least 23 semester hours of credit in Mathematics and Statistics defined as follows:
MATH 19101920  Single Variable Calculus I & II  8 
STAT 22102220  Introductory Statistics I & II  6 
MATH 2610  Linear Algebra I  3 
STAT 3210  Probability and Mathematical Statistics I  3 
plus 3 semester hours of credit in Statistics at the 3000 level or higher  3 
Total Semester Hours of Credit  23 
The School of Mathematical and Computational Sciences at UPEI provides students with a strong foundation in Mathematics, Statistics and Computer Science, and offers a comprehensive suite of applied programs which meet market demand and lead to fulfilling careers in areas such as: Financial Mathematics, Actuarial Science, Data Analytics, Business Analytics, and Video Game Programming.
Faculty members in the School of Mathematical and Computational Sciences are focused on providing quality instruction in a friendly learning community. Small class sizes, activelearning opportunities, and accessible professors are features of all programs in the School of Mathematical and Computational Sciences.
The School of Mathematical and Computational Sciences offers degrees in:
Mathematics is the study of quantity, structure and space. While mathematics is important in understanding and influencing the physical world around us, mathematics can also be curiositydriven and enjoyed without the requirement of a particular application. The Bachelor of Science with a major in Mathematics provides students with a solid foundation in both pure and applied mathematics, preparing them for graduate studies and professional programs. Students interested in graduate studies in mathematics should consider the Bachelor of Science with honours in Mathematics.
Computer Science is a key enabler for innovation and discovery in most fields. It encompasses both theory and practice; theoretical ideas about how information is represented and processed, and practical techniques for creating new software. The School offers options such as cooperative education, a specialization in video game programming, and an Honours degree. Employment prospects are among the highest of any field. Honours graduates are well positioned to pursue graduate studies.
Statistics is the practice of collecting and analyzing numerical data, and inferring properties of the whole from a representative sample. The Bachelor of Science with a major in Statistics provides students with the solid foundation in both statistical theory and applied statistics necessary to become a statistician or proceed to more specialized statistical study at the graduate level. Students interested in continuing to work in statistics research should consider the Bachelor of Science with honours in Statistics.
Analytics is situated at the confluence of statistics, computer science and mathematics all centered on finding, interpreting and presenting meaningful patterns in data. We offer a Bachelor of Science in Analytics with specialization in either Data Analytics or Business Analytics, with cooperative education options available in both specializations. As data increasingly pervades our lives, graduates in Analytics are in high demand across a broad spectrum of fields including government, business and technology.
Actuarial Science is the study of risk, usually risk associated with insurance, pension, and investment plans. Actuarial Science uses techniques from mathematics, statistics, business, economics, and finance. The Bachelor of Science with a Major in Actuarial Science prepares students to write the early exams required to become an Actuary. Actuaries are in demand as professionals who develop solutions for complex financial issues. Actuaries have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies. Read more about what actuaries' do, job prospects, and salaries on our departmental website.
Financial Mathematics is the application of mathematical models to finance, usually to analyze markets and pricing. Financial Mathematics uses techniques from mathematics, statistics, business, finance, and economics. The Bachelor of Science in Financial Mathematics provides a solid foundation in Financial Mathematics, leading either to a career in the financial sector or to further training in advanced Financial Mathematics. Financial Mathematicians are in demand as professionals who develop solutions for complex financial issues and they have excellent career opportunities following graduation as well as excellent coop work opportunities during their studies.
This specialization augments the Computer Science major with the skills needed to design and program video games on traditional, mobile and emerging platforms. Candidates for this program require strong programming, mathematical and problem solving skills. The focus is on game programming, rather than on artistic skills. A large and dynamic gaming industry offers graduates excellent employment prospects. Emerging technologies such as augmented/virtual reality ensure continued growth.
The specialization augments the Mathematics major with Engineering courses offered through UPEI’s School of Sustainable Design Engineering. The Bachelor of Science in Mathematics with Engineering provides a foundational Engineering program combined with more advanced mathematical training than is received in an Engineering Degree program.
Course code prefixes
In the School of Mathematical and Computational Sciences, there are five course prefixes:
Common requirements across all degree programs in the School of Mathematical and Computational Sciences
All degree programs in the School of Mathematical and Computational Sciences are built on a common core of courses that should be completed in the first two years of study. This common core consists of the following courses:
Course  Course name  Credits 
MATH 1910  Single Variable Calculus I  4 
MATH 1920  Single Variable Calculus II  4 
MATH 2610  Linear Algebra I  3 
STAT 2210  Introductory Statistics  3 
CS 1910  Computer Science I  3 
CS 1920  Computer Science II  3 
One of: 

3 
Total Semester Hours of Credit  23 
COMMON BREADTH REQUIREMENT
Students must take at least 15 semester hours of credit in courses outside the School of Mathematical and Computational Sciences (excluding one of the UPEI courses listed above), and of these 15 semester hours of credit, at least 6 must be from Biology, Chemistry or Physics and at least 6 must be from outside the Faculty of Science.
COMMON ADVANCED COURSES
Students in all degree programs in the School of Mathematical and Computational Sciences must complete MCS 4210 Professional Communication and Practice (writingintensive) and MCS 3050 Tutoring in Mathematical and Computational Sciences.
The Major in Mathematics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II 
3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab or MCS 2020  Matlab Technology Lab 
1 
MATH 2420  Combinatorics I  3 
STAT 2220  Introductory Statistics II  3 
MATH 3510  Real Analysis  3 
MATH 3610  Group Theory  3 
At least one of : MATH 3010  Differential Equations, STAT 3210  Probability and Mathematical Statistics I or MATH 3310  Complex Variables 
3 
Five electives in the Mathematical and Computational Sciences (at the 2000 level or higher with at least two at the 3000 level or higher) 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  52 
Total Semester Hours of Credit  120 
The Major in Statistics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MCS 2030  R Technology Lab  1 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4240  Experimental Design  3 
STAT 4330  Time Series I  3 
STAT 4110  Statistical Simulation  3 
STAT 4410  Stochastic Processes  3 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  120 
The Major in Computer Science requires a total of 120 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4810  Software Engineering  3 
One of: CS 4820  Software Systems Development Project or 
3 
Two electives in Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives: if CS 4820 taken  45 
or if CS 4840 taken  42 
Total Semester Hours of Credit 
120 
The Major in Actuarial Science requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 2510  Actuarial Science I  3 
AMS 3510  Actuarial Science II  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
AMS 3730  Advanced Insurance and Actuarial Practices  3 
AMS 4540  Loss Models I  3 
AMS 4550  Loss Models II  3 
AMS 4580  Credibility Theory  3 
STAT 4110  Statistical Simulation  3 
STAT 4330  Time Series I  3 
STAT 4410  Stochastic Processes  3 
MCS 3920  Numerical Analysis  3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
The Major in Financial Mathematics requires a total of 120 semester hours of credit, as described below:
Credit Hours  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
STAT 2220  Introductory Statistics II  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
At least one of: MCS 2020  Matlab Technology Lab 
1 
AMS 2160  Mathematics of Finance  3 
AMS 2400  Financial Mathematics & Investments  3 
AMS 2410  Financial Economics I  3 
AMS 3410  Financial Economics II  3 
AMS 4080  Financial Mathematics II  3 
AMS 4090  Financial Mathematics III  3 
AMS 4780  Quantitative Risk Management  3 
AMS 3910  Mathematical Modelling  3 
AMS 3310  Advanced Corporate Finance for Actuaries  3 
MATH 3010  Differential Equations  3 
MATH 3510  Real Analysis  3 
MATH 4710  Partial Differential Equations  3 
STAT 4330  Time Series I  3 
At least one of: STAT 4410  Stochastic Processes 
3 
ECON 1010  Introductory Microeconomics  3 
ECON 1020  Introductory Macroeconomics  3 
At least one of: ECON 2510  Money and Financial Institutions 
3 
ACCT 1010  Introduction to Accounting  3 
BUS 2310  Corporate Finance  3 
At least one of: BUS 3330  Integrated Cases in Corporate Finance 
3 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
(Specialization in Data Analytics)
The Major in Analytics with a specialization in Data Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
MATH 3610  Group Theory  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4550  Data Analysis and Inference  3 
STAT 4660  Data Visualization and Mining  3 
CS 2610  Data Structures and Algorithms  3 
CS2910  Computer Science III  3 
CS 3710  Database Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 4120  Machine Learning  3 
CS 4440  Data Science  3 
Two electives in Mathematical or Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  19 
Total Semester Hours of Credit  120 
(Specialization in Business Analytics)
The Major in Analytics with a specialization in Business Analytics requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab 
1 
MATH 2420  Combinatorics I  3 
MATH 3430  Combinatorics II  3 
AMS 2940  Optimization  3 
AMS 3770  Combinatorial Optimization  3 
AMS 3910  Mathematical Modelling  3 
MATH 3010  Differential Equations  3 
STAT 3210  Probability and Mathematical Statistics I  3 
STAT 3220  Probability and Mathematical Statistics II  3 
STAT 3240  Applied Regression Analysis  3 
STAT 4660  Data Visualization and Mining  3 
Two electives in the Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
CS 2610  Data Structures and Algorithms  3 
CS 2910  Computer Science III  3 
CS 3710  Database Systems  3 
ACCT 1010  Introduction to Financial Accounting  3 
BUS 1410  Marketing  3 
BUS 1710  Organizational Behaviour  3 
At least five of: ACCT 2210  Managerial Accounting 
15 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  10 
Total Semester Hours of Credit  120 
Note: Students who complete the Major in Analytics with a specialization in Business Analytics and obtain grades of at least 60% in seven of the Business courses can also obtain a Certificate in Business. 
The Major in Mathematics with Engineering requires a total of 120 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910  Multivariable and Vector Calculus  4 
STAT 2220  Introductory Statistics II  3 
MATH 2620  Linear Algebra II  3 
MATH 2720  Mathematical Reasoning  3 
MATH 3010  Differential Equations  3 
MATH 3310  Complex Variables  3 
At least one of: MATH 3510  Real Analysis 
3 
Two electives in Mathematical and Computational Sciences (at the 3000 level or higher) 
6 
PHYS 1110 and 1120  General Physics I and II  6 
CHEM 1110 and 1120  General Chemistry I and II  6 
ENGN 1210  Design 1: Engineering Communications  3 
ENGN 1220  Design 2: Engineering Analysis  3 
ENGN 1510  Engineering and the Biosphere  3 
ENGN 2210  Design 3: Engineering Projects I  3 
ENGN 2220  Design 4: Engineering Projects II  3 
ENGN 2310  Strength of Materials  3 
ENGN 2340  Engineering Dynamics  3 
ENGN 2610  Thermofluids I  3 
ENGN 2810  Electrical Circuits I  3 
Two electives in Engineering  6 
Additional general electives  24 
Total Semester Hours of Credit  120 
Note: Mathematics with Engineering Majors may substitute ENGN 1320 for CS 1510, and CS 1610 or MCS 3920 for CS 1520. 
The Major in Computer Science with a specialization in Video Game Programming requires a total of 120 semester hours of credit, as described below. To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610  Digital Systems  3 
At least one of: CS 2120  Mobile Device Development – iOS 
3 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
CS 2620  Comparative Programming Languages  3 
CS 2820  Programming Practices  3 
MATH 2420  Combinatorics I  3 
CS 3110  Video Game Design  3 
MCS 3320  Theory of Computing  3 
CS 3420  Computer Communications  3 
CS 3520  Operating Systems  3 
CS 3610  Analysis and Design of Algorithms  3 
CS 3620  Software Design and Architecture  3 
CS 3710  Database Systems  3 
CS 4350  Computer Graphics Programming  3 
CS 4360  Advanced Computer Graphics Programming  3 
At least two of: CS 4060  Cloud Computing 
6 
CS 4650  Video Game Architecture  3 
CS 4810  Software Engineering  3 
CS 4830  Video Game Programming Project  6 
Two electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
6 
MCS 3050  Tutoring in Mathematical and Computational Sciences  1 
MCS 4210  Professional Communication and Practice  3 
Additional general electives  21 
Total Semester Hours of Credit  120 
Acceptance to an Honours program
Students in the Mathematics, Statistics and Computer Science programs have an Honours option. Permission of the School of Mathematical and Computational Sciences is required for admission to an Honours program. Students must normally have a minimum average of 70% in all previous courses. Normally, the School expects an average of 75% in all previous Mathematical and Computational Sciences courses. Admission is contingent upon the student finding a project advisor and acceptance by the School of the topic for the Honours project. Students interested in doing Honours are strongly encouraged to consult with the Associate Dean of the School of Mathematical and Computational Sciences as soon as possible, and no later than January 31 of the student’s third year. To receive the Honours designation, in addition to successful completion of the Honours project, normally students must maintain an average of at least 75% in all courses in the School of Mathematical and Computational Sciences.
The Honours in Mathematics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
At least one of: MCS 2010  MAPLE Technology Lab OR MCS 2020  Matlab Technology Lab 
1 
MATH 2420 Combinatorics I  3 
MATH 3510 Real Analysis  3 
MATH 3610 Group Theory  3 
MATH 3010 Differential Equations  3 
STAT 3210 Probability and Mathematical Statistics I  3 
MATH 3310 Complex Variables  3 
MCS 4900 Honours Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher, with at least two at the 4000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Statistics program requires a total of 126 semester hours of credit, as described below:
Credits  
The Common Core  23 
MATH 2910 Multivariable and Vector Calculus  4 
STAT 2220 Introductory Statistics II  3 
MATH 2620 Linear Algebra II  3 
MATH 2720 Mathematical Reasoning  3 
MCS 2030 R Technology Lab  3 
STAT 3210 Probability and Mathematical Statistics I  3 
STAT 3220 Probability and Mathematical Statistics II  3 
STAT 3240 Applied Regression Analysis  3 
STAT 4550 Data Analysis and Inference  3 
STAT 4240 Experimental Design  3 
STAT 4330 Time Series I  3 
STAT 4110 Statistical Simulation  3 
STAT 4410 Stochastic Processes  3 
MCS 4900 Honours Project  6 
Two electives in the Mathematical and Computational Science (at the 3000 level or higher) 
6 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  49 
Total Semester Hours of Credit  126 
The Honours in Computer Science requires a total of 126 semester hours of credit, as described below.
To receive credit towards a Major in Computer Science, all core computer science courses listed below require 60% as a minimum grade.
Credits  
The Common Core  23 
CS 1610 Digital Systems  3 
CS 2520 Computer Organization and Architecture  3 
CS 2610 Data Structures and Algorithms  3 
CS 2620 Comparative Programming Languages  3 
CS 2820 Programming Practices  3 
MATH 2420 Combinatorics I  3 
MATH 2910 Multivariable Calculus  4 
MCS 3320 Theory of Computing  3 
CS 3420 Computer Communications  3 
CS 3520 Operating Systems  3 
CS 3610 Analysis and Design of Algorithms  3 
CS 3620 Software Design and Architecture  3 
CS 3710 Database Systems  3 
At least one of: CS 4110  Artificial Intelligence and Automated Reasoning OR CS 4120  Machine Learning 
3 
CS 4810 Software Engineering  3 
MCS 4900 Honours Research Project  6 
Four electives in the Mathematical and Computational Sciences (at the 2000 level or higher) 
12 
MCS 3050 Tutoring in Mathematical and Computational Sciences  1 
MCS 4210 Professional Communication and Practice  3 
Additional general electives  35 
Total Semester Hours of Credit  126 
The Mathematical and Computational Sciences Coop program is an integrated approach to university education that enables students to alternate academic terms on campus with work terms in relevant and supervised employment. The Coop program consists of eight academic terms, at least three work terms and a series of professional development workshops and seminars. It is available as an option to fulltime students enrolled in Major and Honours programs. Application to the coop program is made in the student’s second year of study. Students must complete 126 semester hours of credit to graduate with the Coop designation, and no credit will be given for any Coop work term course, unless at least three work terms are successfully completed.
See the Coop Education (Mathematical and Computational Sciences) page for complete program details.
The Firstyear Calculus courses for most science students are Math 191 and Math 1920. In addition to Grade XII academic Mathematics (or equivalent), a passing grade on an Assessment Test written during the first week of classes is required as a prerequisite for Math 1910. The Assessment Test covers the standard precalculus topics of the High School curriculum (arithmetic, algebra, trigonometry, analytic geometry and the basic theory of functions). This test is of 90 minutes duration and is given during the first week of classes.
Students who do not pass the assessment test may have the option of enrolling in a special section of Math 1910 incorporating additional tutorials reviewing preCalculus materials. See the Associate Dean of the School of Mathematical and Computational Sciences for details.
Students may obtain a Minor in Computer Science by completing at least 21 semester hours of credit in Computer Science defined as follows:
CS 19101920  Computer Science I & II  6 
CS 2520  Computer Organization and Architecture  3 
CS 2610  Data Structures and Algorithms  3 
plus 3 semester hours of credit in Computer Science at the 3000 level or higher, and an additional 6 semester hours of credit in Computer Science at the 2000 level or higher 
9 
Total Semester Hours of Credit 
21 
Students may obtain a Minor in Mathematics by completing at least 24 semester hours of credit in Mathematics defined as follows:
Math 19101920  Single Variable Calculus I & II  8 
Math 2610  Linear Algebra I  3 
Math 2910  Multivariable and Vector Calculus  4 
plus 3 semester hours of credit in Mathematics at the 3000 level or higher, and an additional 6 semester hours of credit of Mathematics at the 2000 level or above  9 
Total Semester Hours of Credit  24 
Students may obtain a Minor in Statistics by completing at least 23 semester hours of credit in Mathematics and Statistics defined as follows:
MATH 19101920  Single Variable Calculus I & II  8 
STAT 22102220  Introductory Statistics I & II  6 
MATH 2610  Linear Algebra I  3 
STAT 3210  Probability and Mathematical Statistics I  3 
plus 3 semester hours of credit in Statistics at the 3000 level or higher  3 
Total Semester Hours of Credit  23 
In the School of Mathematical and Computational Sciences, there are five course prefixes:
101 ELEMENTS OF MATHEMATICS
This course provides an introduction to several mathematical topics at the university level, and is intended for students majoring in a discipline other than Mathematical and Computational Sciences, or the Natural Sciences. The course consists of four modules: (1) Sets and Logic, (2) Number Theory, (3) Geometry, (4) Mathematical Systems.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and any other 100level Mathematics course.
111 FINITE MATHEMATICS
This course introduces students to finite mathematical techniques and to mathematical models in business, life and the social sciences. The course begins with an introduction to mathematical models, types of models, and conversion of verbal models to mathematical models. Topics covered include systems of linear equations and matrices, linear inequalities and linear programming, sets, counting and probability.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit for Mathematics 111 will not be allowed if taken concurrent with or subsequent to Mathematics 261.
112 CALCULUS FOR THE MANAGERIAL, SOCIAL AND LIFE SCIENCES
This course provides an introduction to calculus for students in the managerial, social and life sciences. The main emphasis of the course is the development of techniques of differentiation and integration of algebraic, exponential and logarithmic functions. Applications of derivatives and integrals are also discussed.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and Math 191
191 SINGLE VARIABLE CALCULUS I
This course is an introduction to differential and integral calculus of functions of a single variable. The course is intended primarily for majors in the Mathematical and Computational Sciences, Engineering and the Physical Sciences, as well as those planning to continue with further Mathematics courses. The concepts of limits, continuity and derivatives are introduced and explored numerically, graphically and analytically. The tools of differential calculus are applied to problems in: related rates; velocity and acceleration; extrema of functions; optimization; curve sketching; and indeterminate forms. The concepts of definite and indefinite integrals are introduced, and the relation between the two integrals is discovered via the Fundamental Theorem of Calculus.
PREREQUISITE: Grade XII academic Mathematics and a passing grade on the Assessment Test.
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
192 SINGLE VARIABLE CALCULUS II
This course is a continuation of integral calculus of functions of a single variable and an introduction to sequences and series. Techniques of integration are studied, including improper integrals and numerical integration, and the tools of integral calculus are used to compute areas, volumes and arc lengths; and are applied to problems in physics and differential equations. Sequences, series, tests for convergence, Taylor series and Taylor polynomials are studied.
PREREQUISITE: Math 191
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
242 COMBINATORICS I
This course offers a survey of topics in discrete mathematics that are essential for students majoring in the Mathematical and Computational Sciences. Topics include: logic, proof techniques such as mathematical induction, recursion, counting methods, and introductory graph theory.
PREREQUISITE: Math 192
Three lecture hours per week
261 LINEAR ALGEBRA I
This course introduces some of the basic concepts and techniques of linear algebra to students of any major. The emphasis is on the interpretation and development of computational tools. Theory is explained mainly on the basis of two or threedimensional models. Topics covered are: matrices; determinants; systems of equations; vectors in two and threedimensional space including dot and cross products, lines, and planes; concepts of linear independence, basis, and dimension explained with examples; linear transformations and their matrices; eigenvectors and eigenvalues.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours per week
262 LINEAR ALGEBRA II
This course continues MATH 261 with further concepts and theory of linear algebra. Topics include vector spaces, orthogonality, GramSchmidt Process, canonical forms, spectral decompositions, inner product spaces and the projection theorem.
PREREQUISITE: Math 191, Math 261
Three lecture hours a week
272 MATHEMATICAL REASONING
This course provides students with experience in writing mathematical arguments. It covers firstorder logic, set theory, relations, and functions. The ideas and proof techniques are considered in the context of various mathematical structures such as partial orders, graphs, number systems, and finite groups.
PREREQUISITE: None
Three lecture hours per week
281 FOUNDATIONS OF GEOMETRY
This course presents an axiomatic base for Euclidean geometry and an insight into the interdependence of the various theorems and axioms of that geometry and nonEuclidean geometries. Topics include: incidence and separation properties for points, lines, planes and space; congruence properties; geometric inequalities; similarity properties; and geometric constructions.
PREREQUISITE: Six semester hours of First Year Mathematics
Three lecture hours per week
282 MATHEMATICAL PHYSICS
See Physics 282
PREREQUISITE: Math 291 and either Physics 112 or Physics 122
291 MULTIVARIABLE AND VECTOR CALCULUS
This course continues from Math 192 and is an introduction to multivariable differentiation and integration and vector calculus. Topics include parametric representation of curves; polar coordinates; vectors; dot and cross products; curves and surfaces in space; calculus of vectorvalued functions; functions of several variables; partial differentiation; directional derivatives; tangent planes; local and constrained maxima and minima; double and triple integrals; changes of variables in multiple integrals; vector fields; line and surface integrals; gradient, divergence and curl; Green’s, Stokes’ and Divergence Theorems.
PREREQUISITE: Math 192
Four lecture hours per week
Semester hours of credit: 4
301 DIFFERENTIAL EQUATIONS
This course introduces the basic theory of differential equations, considers various techniques for their solution, and provides elementary applications. Topics include linear equations; separable equations; linear independence and Wronskian; secondorder equations with constant coefficients; nonhomogeneous equations; applications of first and secondorder equations; Laplace and inverse Laplace transforms, and their application to initialvalue problems; series solutions about ordinary and singular points; and Fourier series.
PREREQUISITE: Math 192
Three lecture hours per week
331 COMPLEX VARIABLES
This is a first course in complex variables. The aim is to acquaint students with the elementary complex functions, their properties and derivatives, and with methods of integration. Topics covered include: definition and development of complex numbers as ordered pairs; geometric representation; basic formulas and inequalities involving argument and conjugates; roots of complex numbers, limit, continuity, and derivative; Cauchy Riemann conditions; harmonic functions; properties of trigonometric, hyperbolic, logarithmic, exponential, and inverse trigonometric functions; bilinear transformation; integration; Cauchy Integral Theorem and Formula; residues and poles; Laurent and Taylor’s series; and improper integrals.
PREREQUISITE: Math 291
Three lecture hours per week
342 NUMBER THEORY
This first course in number theory will include the following topics: equivalence of the principles of induction and the wellordering principle; division algorithm; positional notation and repeating decimals; greatest common divisor; Euclidean Algorithm; Fundamental Theorem of Arithmetic; Pythagorean Triplets; Prime Numbers Theorem; Mersenne and Fermat Numbers; congruences; Euler’s Phifunction; Chinese Remainder Theorem; Diophantine Equations; Theorems of Lagrange and Wilson; Quadratic Reciprocity Law of Gauss; Legendre symbol and primitive roots; perfect numbers; multiplicative number theoretic functions; Moebius inversion.
PREREQUISITE: Six semester hours of Mathematics at the 200 level or higher
Three lecture hours per week
343 COMBINATORICS II
This course continues MATH 242, with the examination of advanced counting techniques, binomial coefficients, and generating functions. Other topics include relations, partial orders, and Steiner Triple systems.
PREREQUISITE: Math 242
Three lecture hours per week
351 REAL ANALYSIS
This is a first course in real analysis. Topics include: the reals as a complete ordered field; closed and open sets; BolzanoWeierstrass and HeineBorel Theorems; Cauchy Sequences; limits and continuity; derivative; Mean Value Theorem; Riemann Integral; and the Fundamental Theorem of Calculus.
PREREQUISITE: Math 192 and Math 272
Three lecture hours per week
361 GROUP THEORY
An introduction to group theory, including: cyclic groups, symmetric groups, subgroups and normal subgroups, Lagrange's theorem, quotient groups and homomorphisms, isomorphism theorems, group actions, Sylow's theorem, simple groups, direct and semidirect products, fundamental theorem on finitely generated Abelian groups.
PREREQUISITE: Math 272
Three lecture hours per week
371 GRAPH THEORY
This course is an introduction to the ideas, methods, and applications of graph theory. Topics include graph connectivity, graph factors and factorizations, planar graphs, and colourings.
PREREQUISITE: Math 242 or Math 272
Three lecture hours per week
402 POINTSET TOPOLOGY
A first course in topology, covering some review of set theory; cardinal numbers; binary relations; metric spaces, convergence and continuity in metric spaces; topological spaces, bases, sub spaces; continuity in general; homeomorphism; product spaces; separation axioms; compactness; connectedness.
PREREQUISITE: Math 351
Three lecture hours per week
452 MEASURE THEORY AND INTEGRATION
A first course in measure theory, covering measure as a generalization of length, outer measure, sigmaalgebras, measurability, construction of measures, Lebesgue measure on the real line, measurable functions and the Lebesgue integral. Additional topics may include and convergence theorems, product measures and Fubini Theorem.
PREREQUISITE: Math 351
Three lecture hours per week
453 FUNCTIONAL ANALYSIS
This first course in functional analysis covers topics like: metric spaces, Banach spaces, function spaces, Hilbert spaces, generalized Fourier series and linear operators.
PREREQUISITE: Math 262 and Math 351
Three lecture hours per week
462 RING AND FIELD THEORY
Introduction to ring and field theory, including: polynomial rings, matrix rings, ideals and homomorphisms, quotient rings, Chinese remainder theorem, Euclidean domains, principal ideal domains, unique factorization domains, introduction to module theory, basic theory of field extensions, splitting fields and algebraic closures, finite fields, introduction to Galois theory.
PREREQUISITE: Math 361
Three lecture hours per week
471 PARTIAL DIFFERENTIAL EQUATIONS
This course is an introduction to the theory and application of partial differential equations. Topics include: firstorder equations and characteristic curves; classification of secondorder equations as parabolic, hyperbolic or elliptic; Laplace, wave and diffusion equations, and their physical origins; solution using Fourier series; and separation of variables.
PREREQUISITE: Math 291 and Math 301
Three lecture hours per week
472 DYNAMICAL SYSTEMS
This course is a study of the longterm qualitative behaviour of solutions of systems of differential or difference equations. Topics include: nonlinear systems, linearization, numerical and graphical methods, equilibria, phase space, stability, bifurcations, strange attractors, and chaos. Applications to physics, biology and other sciences are studied.
PREREQUISITE: Math 261, Math 291 and Math 301
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
221 INTRODUCTORY STATISTICS I
The main objective of this course is to introduce the basic concepts of descriptive statistics, statistical inference, and the use of statistical software such as MINITAB to students in any discipline. More time is spent on statistical inference than on descriptive statistics. Topics include frequency distributions, descriptive statistics, rules of probability, discrete and continuous probability distributions, random sampling and sampling distributions, confidence intervals, one and twotail tests of hypotheses, and correlation and linear regression.
PREREQUISITE: Grade XII academic Mathematics.
Three lecture hours per week
NOTE: Credit will not be allowed for Statistics 221 if a student has received credit for any of the following courses: Business 251, Education 481, Psychology 271 and Sociology 332.
222 INTRODUCTORY STATISTICS II
The course builds upon the knowledge developed in Introductory Statistics I and introduces students to statistical techniques commonly used in research. Topics include linear regression and multiple linear regression, residual analysis, simple ANOVA models, categorical data analysis, simple sampling models, and common distributions (including binomial, Poisson, and exponential).
PREREQUISITE: Stat 221
Three lecture hours per week
321 PROBABILITY AND MATHEMATICAL STATISTICS I
This course is an introduction to the theoretical basis of statistics for students who have completed Introductory Statistics. The study concentrates on the mathematical tools required to develop statistical methodology. Topics covered include: probability, continuous and discrete random variables, moment generating functions, multivariate probability distributions and functions of random variables.
PREREQUISITE: Math 291, and Stat 222 or permission of the instructor.
Three lecture hours per week
322 PROBABILITY AND MATHEMATICAL STATISTICS II
This course builds on the mathematical foundation developed in Statistics 321 and introduces the student to the theory of statistical inference. Topics covered include: sampling distributions and central limit theory, methods of estimation, hypothesis testing, least squares estimation of linear models, and an introduction to Bayesian inference.
PREREQUISITE: Stat 321
Three lecture hours per week
324 APPLIED REGRESSION ANALYSIS
This course builds upon the basis of inference studied in Statistics 221 and provides students with an advanced knowledge of regression techniques. Topics covered are simple and multiple linear regression techniques, matrix notation, the design matrix, model building techniques, residual analysis, and nonlinear regression.
PREREQUISITE: Stat 221 and Math 261
Three lecture hours per week
411 STATISTICAL SIMULATION
This course introduces statistical simulation, and its use as a tool to investigate stochastic phenomena and statistical methods. Topics include the building and validation of stochastic simulation models useful in computing, operations research, engineering and science; related design and estimation problems; variance reduction; and the implementation and the analysis of the results.
PREREQUISITE: Stat 322
Three lecture hours per week
424 EXPERIMENTAL DESIGN
This course builds upon the basis of inference studied in Statistics 221 and Statistics 324 to include statistical techniques commonly used in experimental studies. Students will study topics such as analysis of variance models, hypothesis testing in ANOVA models, randomization, and blocking techniques.
PREREQUISITE: Stat 324
Three lecture hours per week
428 GENERALIZED LINEAR MODELS
This course covers the basic theory, methodology and applications of generalized linear models. Topics include logistic regression, probit regression, binomial regression, Poisson regression, overdispersion, quasilikelihood, and the exponential family.
PREREQUISITE: Stat 322 and Stat 324
Three lecture hours per week
433 TIME SERIES I
This course is an introduction to Time Series methods, including: stationary models, trends and seasonality, stochastic Time Series models, autoregressive and moving average processes and an introduction to Time Series forecasting. ARIMA models. Seasonal Time Series and Spectral Analysis are also covered.
PREREQUISITE: Stat 324
Three lecture hours per week
434 TIME SERIES II
This course includes topics from Time Series Econometrics, including Maximum Likelihood and Least Squares Estimation of ARIMA Models and GARCH Models, Wavelets and Financial Models. Nonstationary Time Series, multivariate Time Series and panel cointegration analysis are also covered.
PREREQUISITE: Stat 433
Three lecture hours per week
441 STOCHASTIC PROCESSES
This course is an introduction to the branch of probability theory that deals with the analysis of systems that evolve over time. Topics include random walks, Markov chains, Poisson processes, continuous time Markov chains, birth and death processes, exponential models, and applications of Markov chains.
PREREQUISITE: Stat 322
Three lecture hours per week
455 DATA ANALYSIS AND INFERENCE
This course is an introduction to data analysis with a focus on regression. Topics include: initial examination of data, correlation, and simple and multiple regression models using least squares. Inference for regression parameters, confidence and prediction intervals, diagnostics and remedial measures interactions and dummy variables, variable selection, least squares estimation and inference for nonlinear regression will also be discussed.
PREREQUISITE: Stat 324
Three lecture hours per week
466 DATA VISUALIZATION AND MINING
This course introduces students to the statistical methods involved in visualization of high dimensional data, including interactive methods directed at exploration and assessment of structure and dependencies in data. Topics include methods for finding groups in data including cluster analysis, dimension reduction methods including multidimensional scaling, pattern recognition, and smoothing techniques.
PREREQUISITE: Math 262, Math 291 and Stat 321
Three lecture hours per week
474 MULTIVARIATE ANALYSIS
This course deals with the statistics of observation and analysis of more than one output variable. Topics include estimation and hypothesis testing for multivariate normal data, principal component analysis and factor analysis, discriminant analysis, cluster analysis, and correspondence analysis.
PREREQUISITE: Stat 324
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
141 INTRODUCTION TO COMPUTER PROGRAMMING FOR SCIENTISTS
This course is an introduction to computer programming for noncomputer science majors. Topics include problemsolving, algorithm design, data types, control structures, repetition, loops, nested structures, modular programming and arrays.
PREREQUISITE: Grade XII academic mathematics.
Three lecture hours and 1.5 hours of laboratory session per week.
NOTE: Credit will be allowed for only one of CS 141 or Engineering 131. As well, CS 141 may not be taken concurrently with, or after, CS 191.
161 DIGITAL SYSTEMS
This course provides an introduction to digital systems, beginning with elementary components such as logic gates, from which are constructed components such as adders and comparators, and progressing to more complex systems such as programmable logic devices, memory and processor units. Students acquire skills in the design and analysis of combinational and sequential digital systems, CAD design and simulation tools for complex systems, and construction of digital systems based upon a modular methodology.
PREREQUISITE: CS 191 or Engineering 131, three semester hours of Mathematics, or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours and a threehour laboratory session per week
191 COMPUTER SCIENCE I
This course is an introduction to computer programming and is designed for both Computer Science majors and nonmajors. Emphasis is on problem solving and software development using a modern high level objectoriented language. Topics include: the programming process; language syntax and semantics; data types; expressions; input and output; conditionals; loops; arrays; functions/methods and text files. The course follows an “objects late” strategy, deferring indepth discussion of objectoriented concepts to Computer Science 192.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours and 1.5 hours lab per week
192 COMPUTER SCIENCE II
This course continues the development of objectoriented programming. Topics include class design; inheritance; interfaces and polymorphism; collection classes; searching and sorting; recursion; exception handling; the ModelViewController pattern; and graphical user interfaces.
PREREQUISITE: CS 191
Three lecture hours and 1.5 hours lab per week
206 WEB DEVELOPMENT AND PROGRAMMING
In this course, students learn to create websites that involve serverside scripting and database operations. While one specific scripting language is used to acquire web development and programming skills, students are exposed to a spectrum of scripting languages, enabling them to easily adapt to others.
PREREQUISITES: CS 192
Three hours per week
212 MOBILE DEVICE DEVELOPMENT  iOS
This course introduces the student to programming for mobile devices that use iOS. The course will present a study of the architecture, operating system, and programming for these devices.
PREREQUISITE: CS 192
Three lecture hours per week
213 MOBILE DEVICE DEVELOPMENT  ANDROID
This course introduces the student to programming for mobile devices that use the Android platform. The course will present a study of the architecture, operating system and programming language of these devices.
PREREQUISITE: CS 192
Three lecture hours per week
252 COMPUTER ORGANIZATION AND ARCHITECTURE
This course provides a basic understanding of the organization and architecture of modern computer systems. It examines the function and design of major hardware components both from a designer’s perspective and through assembly language programming. Topics include components and their interconnection, internal/external memory, input/output subsystems, processors, computer arithmetic, instruction sets, addressing modes, and pipelining.
PREREQUISITE: CS 192
Three hours per week
261 DATA STRUCTURES AND ALGORITHMS
This course continues the study of data structures, recursive algorithms, searching and sorting techniques, and general strategies for problem solving. It also introduces complexity analysis and complexity classes.
PREREQUISITE: CS 192 and six semester hours of Mathematics
Three lecture hours per week
262 COMPARATIVE PROGRAMMING LANGUAGES
This course examines the principal features of major types of programming languages, including procedural, logical, functional and objectoriented languages. Features include parameterpassing mechanisms, control structures, scope, and binding rules. Each language type is illustrated by considering a specific language.
PREREQUISITE: CS 261
Three lecture hours per week
271 PRACTICAL EMBEDDED SYSTEMS
This course introduces students to the concept of embedded systems architectures, the interconnection of sensors and actuators to such systems, and the usage of such platforms for data acquisition and control of automated systems. Popular microcontroller units and systemonchip platforms will be examined.
PREREQUISITES: CS 121 or CS 141 or CS 191 or ENGN 131
Three lecture hours per week
282 PROGRAMMING PRACTICES
This course introduces the student to development in the Unix/Linux environment. Topics include development tools, shell programming, common utility programs, processes, file/directory management, IDEs, testing/debugging, version control, and an introduction to software engineering.
PREREQUISITE: CS 192 or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours per week
291 COMPUTER SCIENCE III
This is the third course in the Computer Science programming sequence. It covers more advanced programming concepts in an object oriented language. It also serves as an introduction to data structures and software engineering. Topics included: the programming toolchain; threads; class generics; lists, stacks, queues and binary trees; streams and binary I/O, object serialization, networking (sockets and web interface); introduction to software engineering; relational database connectivity; and XML parsing.
PREREQUISITE: CS 192 and six hours of Mathematics
Three lecture hours and 1.5 hours lab per week
311 VIDEO GAME DESIGN
This course focuses on the process from initial idea to final design of a video game. Students will craft a game document from an original concept of their own creation and create a prototype of the game based on that document.
PREREQUISITE: CS 261
Three lecture hours per week
321 HUMANCOMPUTER INTERFACE DESIGN
This course is an introduction to the design and evaluation of software interfaces and webpages. The course focuses on usercentered design and includes topics such as user analysis and modelling, iterative prototyping, usability testing, designing for the web, internationalization and localization.
PREREQUISITES: CS 192
Three hours per week
322 INTRODUCTION TO BIOINFORMATICS
This course is an introduction to bioinformatics, with a focus on a practical guide to the analysis of data on genes and proteins. It familiarizes students with the tools and principles of contemporary bioinformatics. Students acquire a working knowledge of a variety of publicly available data and computational tools important in bioinformatics, and a grasp of the underlying principles enabling them to evaluate and use novel techniques as they arise in the future.
Crosslisted with Biology, Pathology/Microbiology, Human Biology (cf. Biology 322, VPM 885, HB 885)
PREREQUISITE: CS 261 or BIO 223 or permission of instructor. If taken as VPM 885 or HB 885  Admission to the graduate program and permission of the instructor.
Three lecture hours and a onehour laboratory session per week
Note: No student can be awarded more than one course credit among HB 885, VPM 885, CS 322 and BIO 322.
342 COMPUTER COMMUNICATIONS
This course introduces the basic principles of modern computer communication: protocols, architectures and standards. Topics include layered architectures, data transmission, error and flow control, medium access, routing, congestion control and common internet application protocols.
PREREQUISITE: CS 252 and CS 282
Three lecture hours per week
352 OPERATING SYSTEMS
This course introduces the student to the major concepts of modern operating systems. Topics covered include: process management, memory management, file systems, device management and security.
PREREQUISITE: CS 252, CS 261 and CS 282
Three lecture hours per week
361 ANALYSIS AND DESIGN OF ALGORITHMS
This course, which introduces the study of algorithm design and measures of efficiency, is a continuation of CS 261. Topics include algorithm complexity and analysis; techniques such as divide and conquer, greedy and dynamic programming; searching and sorting algorithms; graph algorithms; text processing; efficient algorithms for several common computer science problems and NPcompleteness.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
362 SOFTWARE DESIGN AND ARCHITECTURE
This course examines the principles and best practices in objectoriented (OO) software design. Topics include a review of foundational OO concepts, OO design principles, classic design patterns, and software architectures.
PREREQUISITE: CS 261
Three lecture hours per week
371 DATABASE SYSTEMS
This course introduces the fundamental concepts necessary for the design, use and implementation of database systems. Topics discussed include logical and physical organization of data, database models, design theory, data definition and manipulation languages, constraints, views, and embedding database languages in general programming languages.
PREREQUISITES: CS 261
Three lecture hours per week
384 TECHNOLOGY MANAGEMENT & ENTREPRENEURSHIP
This course provides an overview on how to start and sustain a technologyoriented company. Topics discussed will include the role of technology in society, intellectual property, patents, business plans, financial planning, sources of capital, business structure, liability, tax implications, sales, marketing, operational and human resource management. This course will be taught using problembased and experiential learning strategies with involvement from real life entrepreneurs as motivators and facilitators.
(Crosslisted with Engineering 423)
PREREQUISITE: CS 252, CS 262 and CS 282
Three lecture hours per week
406 CLOUD COMPUTING
This course examines: the critical technology trends that are enabling cloud computing, the architecture and the design of existing deployments, the services and the applications they offer, and the challenges that need to be addressed to help cloud computing to reach its full potential. The format of this course will be a mix of lectures, seminarstyle discussions, and student presentations.
PREREQUISITE: CS 206
Three lecture hours per week
411 ARTIFICIAL INTELLIGENCE AND AUTOMATED REASONING
This course introduces general problemsolving methods associated with automated reasoning and simulated intelligence. Topics include problem abstraction, state space heuristic search theory, pathfinding, flocking behaviour, knowledge representation, propositional logic, reasoning with uncertainty, machine learning and connectionism.
PREREQUISITE: CS 261
Three lecture hours per week
412 MACHINE LEARNING AND DATA MINING
Machine learning is the study of mechanisms for acquiring knowledge from large data sets. This course examines techniques for detecting patterns in sets of uncategorized data. Supervised and unsupervised learning techniques are studied, with particular application to realworld data.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
435 COMPUTER GRAPHICS PROGRAMMING
This course introduces the student to the principles and tools of applied graphics programming including graphical systems, input and interaction, object modeling, transformations, hidden surface removal, and shading and lighting models. Languages, graphics libraries and toolkits, and video game engines are introduced, as well as relevant graphics standards.
PREREQUISITE: CS 262 and MATH 261
Three lecture hours per week
436 ADVANCED COMPUTER GRAPHICS PROGRAMMING
This course builds on the computer graphics programming concepts introduced in CS 435. Students are given a deeper understanding of the components of the 3D graphics pipeline, and how they are used in modern graphical applications. Topics include advanced texture mapping, practical uses of vertex and pixel shaders, screen postprocessing, particle systems, and graphics engine design.
PREREQUISITE: CS 435
Three lecture hours per week
444 DATA SCIENCE
Data science is an interdisciplinary and emerging field where techniques from several areas are used to solve problems using data. This course provides an overview and handson training in data science, where students will learn to combine tools and techniques from computer science, statistics, data visualization and the social sciences. The course will focus on: 1) the process of moving from data collection to product, 2) tools for preparing, manipulating and analyzing data sets (big and small), 3) statistical modelling and machine learning, and 4) real world challenges.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
461 WIRELESS SENSOR NETWORKS
This course is an introduction to Wireless Sensor Networks. It includes the following topics: singlenode architecture, wireless sensor network architecture, physical layer, MAC protocols, linklayer protocols, naming and addressing, time synchronization, localization and positioning, topology control, routing protocols, transport layer, and quality of service.
PREREQUISITE: CS 252 and CS 261
Three lecture hours per week
465 VIDEOGAME ARCHITECTURE
This programmingdriven course aims to explore the various systems that comprise a typical videogame project, including event systems, state machines, rendering, scripting and AI programming. Students will implement these components throughout the course with the end goal of building a small game.
PREREQUISITE: CS 435
COREQUISITE: CS 436 (must be taken previously or concurrently)
Three lectures hours per week
472 COMPILER DESIGN
This is a first course in compiler design. The course covers: compilation phases, lexical analysis, parsing, scope rules, block structure, symbol tables, runtime heap and stack management, code generation, preprocessing, compilercompilers, and translation systems.
PREREQUISITE: CS 332
Three lecture hours per week
481 SOFTWARE ENGINEERING
This course emphasizes the theory, methods and tools employed in developing medium to largescale software which is usable, efficient, maintainable, and dependable. Project management is a major focus. Topics include traditional and agile process models, project costing, scheduling, team organization and management, requirements modelling/specification, software design, software verification and testing, and reengineering.
PREREQUISITE: 4th year standing in Computer Science
Three lecture hours per week
482 SOFTWARE SYSTEMS DEVELOPMENT PROJECT
In this course, students propose, complete and present a significant software project in a group setting using the system development skills learned in CS 481. The course applies objectoriented design principles through the use of UML. Students are encouraged to select (with the consent of the instructor) a project with a realworld client.
PREREQUISITE: CS 481 (May be taken concurrently in exceptional circumstances).
One lecture hour per week plus significant project time
483 VIDEO GAME PROGRAMMING PROJECT
In this course, students work as a group to develop a single design into a fully functioning video game. This course applies the project management skills learned in CS 481 to the development of a professional quality video game based upon a single design and prototype emerging from CS 311.
PREREQUISITE: CS 311, CS 481 and enrolment in the Computer Science with Video Game Programming major.
One lecture hour per week plus significant project time.
Semester hours of credit: 6
484 PROTOTYPE SYSTEMS DEVELOPMENT
This course is for student teams who wish to develop an early prototype of a product which they hope to pitch to an external startup accelerator program postgraduation. Student teams may be interdisciplinary, but students must register for this course (or its equivalent) within their home school/department. Entry into the course is dependent upon a pitch for the product being judged as economically viable by a team of project mentors. Pitches are made at the conclusion of CS 384.
PREREQUISITE: CS 384 and permission of the instructor
One lecture hour per week plus significant project time.
Semester hours of credit: 6
In the School of Mathematical and Computational Sciences, there are five course prefixes:
216 MATHEMATICS OF FINANCE
This first course in the mathematics of finance includes topics such as measurement of interest; annuities and perpetuities; amortization and sinking funds; rates of return; bonds and related securities; life insurance.
PREREQUISITE: Math 191
Three lecture hours plus a two hour lab per week
240 FINANCIAL MATHEMATICS & INVESTMENTS
Advanced topics of Theory of Interest as initially covered in AMS 216 including time value of money, annuities, loans, bonds, general cash flows, portfolios and immunization concepts, as well as an introduction to capital markets, analysis of equity and fixed income investments, and an introduction to derivative securities including futures, forwards, swaps and options.
PREREQUISITE: AMS 216
Three lecture hours plus a two hour lab per week
241 FINANCIAL ECONOMICS I
Introduction to mathematical techniques used to price and hedge derivative securities in modern finance. Modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Applications of derivatives in practice will also be discussed.
PREREQUISITE: AMS 240
Three lecture hours plus a two hour lab per week
251 ACTUARIAL SCIENCE I
This course will explore the future lifetime random variable, probability and survival functions, force of mortality; complete and curtate expectation of life, and Makeham and Gompertz mortality laws. Other topics will include: Life tables, characteristics of population and insurance life tables, selection, and fractional age assumptions. Life insurance payments and annuity payments: Present value random variables; expected present values; higher moments; actuarial notation, annual, 1/mthly and continuous cases, relationships between insurance and annuity functions. Premiums, expense loadings, present value of future loss random variables and distribution, net and gross cases, the equivalence principle and portfolio percentile principle will also be discussed.
PREREQUISITE: AMS 240 and STAT 321
Three lecture hours plus a two hour lab per week
286 ACTUARIAL MATHEMATICS LAB I
This lab features problemsolving sessions for the professional examination on financial mathematics of the Society of Actuaries and the Casualty Actuarial Society.
PREREQUISITE: AMS 216
Semester hours of credit: 1
294 OPTIMIZATION
An introduction to the methods and applications of linear programming. Topics include linear programming formulations, the simplex method, duality and sensitivity analysis, and integer programming basics. Applications to transportation, resource allocation and scheduling problems will be examined. Software will be used to illustrate topics and applications.
PREREQUISITE: Math 261
Three lecture hours per week
316 GAME THEORY
The course covers the fundamentals of game theory and its applications to the modeling of competition and cooperation in business, economics, biology and society. It will include twoperson games in strategic form and Nash equilibria, extensive form games, including multistage games, coalition games and the core Bayesian games, mechanism design and auctions.
PREREQUISITE: Math 192, Math 242 and Stat 222
Three lecture hours per week
331 ADVANCED CORPORATE FINANCE FOR ACTUARIES
This course covers various advanced topics in corporate finance, with emphasis on theories of corporate incentives and asymmetric information. Illustrative applications using cases are provided. Topics include: capital budgeting, real options, investment decision using Markowitz and utility theory, the Capital Asset Pricing Model, Arbitrage Pricing Theory, market efficiency and capital structure and dividend policy. Other topics may include time value of money, capital budgeting, cost of capital, security issuance, capital structure, payout policy and dividends, shortterm finance, and risk management. Where suitable, topics are treated from a mathematical and quantitative perspective.
PREREQUISITE: AMS 240 and BUS 231
Three lecture hours per week
341 FINANCIAL ECONOMICS II
This course will discuss advanced mathematical techniques used to price and hedge derivative securities in modern finance. Topics include: modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Students will also have the opportunity to apply these derivatives in practice.
PREREQUISITE: AMS 241
Three lecture hours plus a two hour lab per week
351 ACTUARIAL SCIENCE II
This course will discuss: policy values, annual, 1/mthly and continuous cases, Thiele's equation, policy alterations, modified policies and multiple state models. Other topics will include applications in life contingencies, assumptions, Kolmogorov equations, premiums, policy values, multiple decrement models, Joint Life Models, Valuation of insurance benefits on joint lives, and dependent and independent cases.
PREREQUISITE: AMS 251 and STAT 322
Three lecture hours plus a two hour lab per week
373 ADVANCED INSURANCE AND ACTUARIAL PRACTICES
This course is a study of cash flow projection methods for pricing, reserving and profit testing. Topics include: deterministic, stochastic and stress testing; pricing and risk management of embedded options in insurance products; mortality and maturity guarantees for equitylinked life insurance.
PREREQUISITE: AMS 351
Three lecture hours per week
377 COMBINATORIAL OPTIMIZATION
In this course, various algorithms will be considered, including minimum spanning tree, shortest path, maximum flow, and maximum matching. The links with linear and integer programming will also be considered, with particular attention to duality.
PREREQUISITES: Math 242 and AMS 294
Three lecture hours per week
391 MATHEMATICAL MODELLING
This course studies the process of mathematical modeling, namely, formulating a “realworld” problem in mathematical terms, solving the resulting mathematical problem, and interpreting the solution. Major topics include the modeling of optimization problems (using the techniques of linear programming), and deterministic and probabilistic dynamical processes (with models formulated as differential and difference equations). Applications are taken from science, business and other areas, according to class interest.
PREREQUISITE: Math 261 and Math 301; a statistics course is recommended.
Three lecture hours per week
408 FINANCIAL MATHEMATICS II
This course explores calculus in a stochastic environment. Topics include: random functions, derivative, chain rule, integral, integration by parts, partial derivatives, pricing forwards and options. Ito’s lemma and financial applications, HullWhite, ArtznerHeath, and BrennanSchwartz models Martingales, pricing methodology, and riskneutral probability will also be discussed.
PREREQUISITE: Math 261 and AMS 341
Three lecture hours per week
409 FINANCIAL MATHEMATICS III
This course discusses forming riskfree portfolios, the BlackScholes partial differential equation, constant dividend case, exotic options, drift adjustment, and equivalent martingale measures. Topics also include: CoxRossRubinstein, Merton and Vasicek’s models, stochastic optimization, HamiltonJacobiBellman equation, and application to American options.
PREREQUISITE: AMS 408 and STAT 322
Three lecture hours per week
454 LOSS MODELS I
This course explores models for loss severity, parametric models, effect of policy modifications, and tail behaviour. Topics also include: models for loss frequency: (a, b, 0), (a, b, 1), mixed Poisson models; compound Poisson models, Aggregate claims models: moments and moment generating function: recursion and Classical ruin theory.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
455 LOSS MODELS II
This course is a study of the mathematics of survival models and includes some examples of parametric survival models. Topics include: tabular survival models, estimates from complete and incomplete data samples, parametric survival models, and determining the optimal parameters. Maximum likelihood estimators, derivation and properties, product limit estimators, KaplanMeier and NelsonAalen, credibility theory: limited fluctuation; Bayesian; Buhlmann; BuhlmannStraub; empirical Bayes parameter estimation; statistical inference for loss models; maximum likelihood estimation; the effect of policy modifications; and model selection will also be discussed.
PREREQUISITE: AMS 454
Three lecture hours per week
458 CREDIBILITY THEORY
This course is a credibility approach to inference for heterogeneous data; classical, regression and Bayesian models; with illustrations from insurance data.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
468 NONLINEAR OPTIMIZATION
This course is a study of unconstrained optimization, optimality conditions (necessary, sufficient and KarushKuhnTucker), penalty functions, convex functions, and convex programming.
PREREQUISITE: MATH 291 and AMS 294
Three lecture hours per week
478 QUANTITATIVE RISK MANAGEMENT
This course is an introduction to financial risk management. Topics include: risk measures, modeling for multivariate distributions and copulas, market, credit and operational risk. Advanced topics in quantitative risk management will also be discussed.
PREREQUISITE: AMS 331
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
201 MAPLE TECHNOLOGY LAB
An introduction to the software package MAPLE. Topics include the basic functions and commands, mathematical problem solving using MAPLE, and programming in the internal MAPLE language.
PREREQUISITE: CS 191 AND Math 192
Two lab hours per week for 6 weeks
Semester hours of credit: 1
202 MATLAB TECHNOLOGY LAB
An introduction to the software package Matlab. Topics include the basic functions and commands, programming and problemsolving using Matlab.
PREREQUISITE: CS 191 and Math 261
Two lab hours per week for 6 weeks
Semester hours of credit: 1
203 R TECHNOLOGY LAB
An introduction to the software package R. Topics include the basic functions and commands, programming and problemsolving using R.
PREREQUISITE: CS 191, Stat 222
Two lab hours per week for 6 weeks
Semester hours of credit: 1
204 VISUAL BASIC IN EXCEL TECHNOLOGY LAB
An introduction to the software package Excel and Visual Basic in the Excel environment. Topics include the basic functions and commands, programming and problemsolving using Excel and Visual Basic.
PREREQUISITE: CS 191 and AMS 240
Two lab hours per week for 6 weeks
Semester hours of credit: 1
205 GGY AXIS TECHNOLOGY LAB
An introduction to the software package GGY AXIS. Topics include the basic functions and commands, programming and problemsolving using GGY AXIS.
PREREQUISITE: CS 191 and AMS 251
Two lab hours per week for 6 weeks
Semester hours of credit: 1
284 COOP CAREER SKILLS I
This course offers introductory career skills training to prepare coop students for their first work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 292)
PREREQUISITE: Acceptance into the Mathematical and Computational Sciences Cooperative Education Program.
Semester hours of credit: 0
285 COOP WORK TERM I
This course is a coop students’ first work term. A work term report related to a technical problem/issue within the organization where the student is working is required. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 284 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
305 TUTORING IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
Students are introduced to techniques for facilitating learning in the Mathematical and Computational Sciences, and then put these techniques into practice by mediating student group learning either in introductory Mathematical and Computational Sciences courses, Mathematical and Computational Science Help Centre or in outreach programs to High Schools.
PREREQUISITE: At least 36 semester hours of credit completed in courses in the School of Mathematical and Computational Sciences
Semester hours of credit: 1
332 THEORY OF COMPUTING
This course introduces automata theory, formal languages and computability. Topics include: finite automata; regular expressions; regular, contextfree, and contextsensitive languages; computability models; algorithmic decidable and undecidable problems.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
350 QUANTUM INFORMATION
Introduction to quantum information science; the field of studying, storing, processing and communicating information using quantum systems. Topic include quantum mechanics for Qubit Systems, foundations of Quantum Computing, algorithms, communication and cryptography.
PREREQUISITE: Math 262
Three lecture hours per week
384 COOP CAREER SKILLS II
This course offers career skills training to strengthen coop students’ readiness for their second work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 392)
PREREQUISITE: MCS 285
Semester hours of credit: 0
385 COOP WORK TERM II
This course is a coop students’ second work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 384 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
392 NUMERICAL ANALYSIS
Approximate solution of equations, various interpolative or iterative methods, especially Newton’s; convergence tests and rates of convergence; roundoff and truncation errors; propagation of error in calculations; interpolating polynomials; GaussJordan and other methods for simultaneous linear equations; inversion of matrices; determinants and eigenvalues; simultaneous nonlinear equations; evaluation of definite integrals; approximate derivatives; initialvalue ordinary differential equations; leastsquares curve fitting.
PREREQUISITE: Math 301 and CS 191 or equivalent
Three lecture hours per week
395 SPECIAL TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue special topics in Mathematical and Computational Science. Content varies from year to year.
PREREQUISITE: Permission of the instructor
Three lecture hours per week
421 PROFESSIONAL COMMUNICATION AND PRACTICE
This course aims to build students’ oral and written communications skills, and to prepare them for a professional environment. Using examples from their discipline, students will focus on such aspects as description of processes, presentation of data, extended abstracts, correct use of terminology, and sensitivity to language and tone. Discussions of topics relevant to the professional Mathematical and Computational Scientist are also a key part of the course.
PREREQUISITE: At least 36 semester hours of credit completed in the School of Mathematical and Computational Sciences
Three hours per week
442 CRYPTOGRAPHY AND CODES
This course is a study of classic and modern methods of encryption, applications to publickey ciphers, random number generators, attacks on encryption systems, error correcting codes; and computational number theory.
PREREQUISITE: Math 342
Three lecture hours per week
484 COOP CAREER SKILLS III
This course offers career skills training to strengthen coop students’ readiness for their third work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 492)
PREREQUISITE: MCS 385
Semester hours of credit: 0
485 COOP WORK TERM III
This course is a coop students’ third work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 484 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
486 COOP WORK TERM IV
This optional work term is only available to coop students in the School of Mathematical and Computational Sciences, who elect for a fourth work term. The goal is to add further value for the student, integrating classroom theory with professional skills acquired during the work term.
PREREQUISITE: MCS 485
Semester hours of credit: 0
490 HONOURS PROJECT
This course is intended to give research experience to students planning to pursue graduate studies in an area of Mathematical and Computational Sciences, or planning a career where research experience would be an asset. It provides students with the opportunity to do an independent research project on Mathematical or Computational Sciences topic, under the supervision of a faculty member. Some or all of the work may be done during the summer months.
PREREQUISITE: Acceptance to an Honours program in the School of Mathematical and Computational Sciences (see Calendar listing for entrance requirements)
Semester hours of credit: 6
491 DIRECTED STUDIES IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
These courses are designed and recommended for students in the Mathematical and Computational Sciences to encourage independent initiative and study. Reading and research will be conducted in one or more specialized areas.
(See Academic Regulation 9 for Regulations Governing Directed Studies.)
PREREQUISITE: Permission of the instructor
Three semester hours of credit
495 ADVANCED TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue advanced topics in Mathematical and Computational Sciences. Content varies from year to year but is always at a fourthyear level. Prospective students should contact the School of Mathematical and Computational Sciences for a more detailed description of any particular year’s offering.
PREREQUISITE: Permission of the instructor
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
101 ELEMENTS OF MATHEMATICS
This course provides an introduction to several mathematical topics at the university level, and is intended for students majoring in a discipline other than Mathematical and Computational Sciences, or the Natural Sciences. The course consists of four modules: (1) Sets and Logic, (2) Number Theory, (3) Geometry, (4) Mathematical Systems.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and any other 100level Mathematics course.
111 FINITE MATHEMATICS
This course introduces students to finite mathematical techniques and to mathematical models in business, life and the social sciences. The course begins with an introduction to mathematical models, types of models, and conversion of verbal models to mathematical models. Topics covered include systems of linear equations and matrices, linear inequalities and linear programming, sets, counting and probability.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit for Mathematics 111 will not be allowed if taken concurrent with or subsequent to Mathematics 261.
112 CALCULUS FOR THE MANAGERIAL, SOCIAL AND LIFE SCIENCES
This course provides an introduction to calculus for students in the managerial, social and life sciences. The main emphasis of the course is the development of techniques of differentiation and integration of algebraic, exponential and logarithmic functions. Applications of derivatives and integrals are also discussed.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and Math 191
191 SINGLE VARIABLE CALCULUS I
This course is an introduction to differential and integral calculus of functions of a single variable. The course is intended primarily for majors in the Mathematical and Computational Sciences, Engineering and the Physical Sciences, as well as those planning to continue with further Mathematics courses. The concepts of limits, continuity and derivatives are introduced and explored numerically, graphically and analytically. The tools of differential calculus are applied to problems in: related rates; velocity and acceleration; extrema of functions; optimization; curve sketching; and indeterminate forms. The concepts of definite and indefinite integrals are introduced, and the relation between the two integrals is discovered via the Fundamental Theorem of Calculus.
PREREQUISITE: Grade XII academic Mathematics and a passing grade on the Assessment Test.
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
192 SINGLE VARIABLE CALCULUS II
This course is a continuation of integral calculus of functions of a single variable and an introduction to sequences and series. Techniques of integration are studied, including improper integrals and numerical integration, and the tools of integral calculus are used to compute areas, volumes and arc lengths; and are applied to problems in physics and differential equations. Sequences, series, tests for convergence, Taylor series and Taylor polynomials are studied.
PREREQUISITE: Math 191
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
242 COMBINATORICS I
This course offers a survey of topics in discrete mathematics that are essential for students majoring in the Mathematical and Computational Sciences. Topics include: logic, proof techniques such as mathematical induction, recursion, counting methods, and introductory graph theory.
PREREQUISITE: Math 192
Three lecture hours per week
261 LINEAR ALGEBRA I
This course introduces some of the basic concepts and techniques of linear algebra to students of any major. The emphasis is on the interpretation and development of computational tools. Theory is explained mainly on the basis of two or threedimensional models. Topics covered are: matrices; determinants; systems of equations; vectors in two and threedimensional space including dot and cross products, lines, and planes; concepts of linear independence, basis, and dimension explained with examples; linear transformations and their matrices; eigenvectors and eigenvalues.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours per week
262 LINEAR ALGEBRA II
This course continues MATH 261 with further concepts and theory of linear algebra. Topics include vector spaces, orthogonality, GramSchmidt Process, canonical forms, spectral decompositions, inner product spaces and the projection theorem.
PREREQUISITE: Math 191, Math 261
Three lecture hours a week
272 MATHEMATICAL REASONING
This course provides students with experience in writing mathematical arguments. It covers firstorder logic, set theory, relations, and functions. The ideas and proof techniques are considered in the context of various mathematical structures such as partial orders, graphs, number systems, and finite groups.
PREREQUISITE: None
Three lecture hours per week
281 FOUNDATIONS OF GEOMETRY
This course presents an axiomatic base for Euclidean geometry and an insight into the interdependence of the various theorems and axioms of that geometry and nonEuclidean geometries. Topics include: incidence and separation properties for points, lines, planes and space; congruence properties; geometric inequalities; similarity properties; and geometric constructions.
PREREQUISITE: Six semester hours of First Year Mathematics
Three lecture hours per week
282 MATHEMATICAL PHYSICS
See Physics 282
PREREQUISITE: Math 291 and either Physics 112 or Physics 122
291 MULTIVARIABLE AND VECTOR CALCULUS
This course continues from Math 192 and is an introduction to multivariable differentiation and integration and vector calculus. Topics include parametric representation of curves; polar coordinates; vectors; dot and cross products; curves and surfaces in space; calculus of vectorvalued functions; functions of several variables; partial differentiation; directional derivatives; tangent planes; local and constrained maxima and minima; double and triple integrals; changes of variables in multiple integrals; vector fields; line and surface integrals; gradient, divergence and curl; Green’s, Stokes’ and Divergence Theorems.
PREREQUISITE: Math 192
Four lecture hours per week
Semester hours of credit: 4
301 DIFFERENTIAL EQUATIONS
This course introduces the basic theory of differential equations, considers various techniques for their solution, and provides elementary applications. Topics include linear equations; separable equations; linear independence and Wronskian; secondorder equations with constant coefficients; nonhomogeneous equations; applications of first and secondorder equations; Laplace and inverse Laplace transforms, and their application to initialvalue problems; series solutions about ordinary and singular points; and Fourier series.
PREREQUISITE: Math 192
Three lecture hours per week
331 COMPLEX VARIABLES
This is a first course in complex variables. The aim is to acquaint students with the elementary complex functions, their properties and derivatives, and with methods of integration. Topics covered include: definition and development of complex numbers as ordered pairs; geometric representation; basic formulas and inequalities involving argument and conjugates; roots of complex numbers, limit, continuity, and derivative; Cauchy Riemann conditions; harmonic functions; properties of trigonometric, hyperbolic, logarithmic, exponential, and inverse trigonometric functions; bilinear transformation; integration; Cauchy Integral Theorem and Formula; residues and poles; Laurent and Taylor’s series; and improper integrals.
PREREQUISITE: Math 291
Three lecture hours per week
342 NUMBER THEORY
This first course in number theory will include the following topics: equivalence of the principles of induction and the wellordering principle; division algorithm; positional notation and repeating decimals; greatest common divisor; Euclidean Algorithm; Fundamental Theorem of Arithmetic; Pythagorean Triplets; Prime Numbers Theorem; Mersenne and Fermat Numbers; congruences; Euler’s Phifunction; Chinese Remainder Theorem; Diophantine Equations; Theorems of Lagrange and Wilson; Quadratic Reciprocity Law of Gauss; Legendre symbol and primitive roots; perfect numbers; multiplicative number theoretic functions; Moebius inversion.
PREREQUISITE: Six semester hours of Mathematics at the 200 level or higher
Three lecture hours per week
343 COMBINATORICS II
This course continues MATH 242, with the examination of advanced counting techniques, binomial coefficients, and generating functions. Other topics include relations, partial orders, and Steiner Triple systems.
PREREQUISITE: Math 242
Three lecture hours per week
351 REAL ANALYSIS
This is a first course in real analysis. Topics include: the reals as a complete ordered field; closed and open sets; BolzanoWeierstrass and HeineBorel Theorems; Cauchy Sequences; limits and continuity; derivative; Mean Value Theorem; Riemann Integral; and the Fundamental Theorem of Calculus.
PREREQUISITE: Math 192 and Math 272
Three lecture hours per week
361 GROUP THEORY
An introduction to group theory, including: cyclic groups, symmetric groups, subgroups and normal subgroups, Lagrange's theorem, quotient groups and homomorphisms, isomorphism theorems, group actions, Sylow's theorem, simple groups, direct and semidirect products, fundamental theorem on finitely generated Abelian groups.
PREREQUISITE: Math 272
Three lecture hours per week
371 GRAPH THEORY
This course is an introduction to the ideas, methods, and applications of graph theory. Topics include graph connectivity, graph factors and factorizations, planar graphs, and colourings.
PREREQUISITE: Math 242 or Math 272
Three lecture hours per week
402 POINTSET TOPOLOGY
A first course in topology, covering some review of set theory; cardinal numbers; binary relations; metric spaces, convergence and continuity in metric spaces; topological spaces, bases, sub spaces; continuity in general; homeomorphism; product spaces; separation axioms; compactness; connectedness.
PREREQUISITE: Math 351
Three lecture hours per week
452 MEASURE THEORY AND INTEGRATION
A first course in measure theory, covering measure as a generalization of length, outer measure, sigmaalgebras, measurability, construction of measures, Lebesgue measure on the real line, measurable functions and the Lebesgue integral. Additional topics may include and convergence theorems, product measures and Fubini Theorem.
PREREQUISITE: Math 351
Three lecture hours per week
453 FUNCTIONAL ANALYSIS
This first course in functional analysis covers topics like: metric spaces, Banach spaces, function spaces, Hilbert spaces, generalized Fourier series and linear operators.
PREREQUISITE: Math 262 and Math 351
Three lecture hours per week
462 RING AND FIELD THEORY
Introduction to ring and field theory, including: polynomial rings, matrix rings, ideals and homomorphisms, quotient rings, Chinese remainder theorem, Euclidean domains, principal ideal domains, unique factorization domains, introduction to module theory, basic theory of field extensions, splitting fields and algebraic closures, finite fields, introduction to Galois theory.
PREREQUISITE: Math 361
Three lecture hours per week
471 PARTIAL DIFFERENTIAL EQUATIONS
This course is an introduction to the theory and application of partial differential equations. Topics include: firstorder equations and characteristic curves; classification of secondorder equations as parabolic, hyperbolic or elliptic; Laplace, wave and diffusion equations, and their physical origins; solution using Fourier series; and separation of variables.
PREREQUISITE: Math 291 and Math 301
Three lecture hours per week
472 DYNAMICAL SYSTEMS
This course is a study of the longterm qualitative behaviour of solutions of systems of differential or difference equations. Topics include: nonlinear systems, linearization, numerical and graphical methods, equilibria, phase space, stability, bifurcations, strange attractors, and chaos. Applications to physics, biology and other sciences are studied.
PREREQUISITE: Math 261, Math 291 and Math 301
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
221 INTRODUCTORY STATISTICS I
The main objective of this course is to introduce the basic concepts of descriptive statistics, statistical inference, and the use of statistical software such as MINITAB to students in any discipline. More time is spent on statistical inference than on descriptive statistics. Topics include frequency distributions, descriptive statistics, rules of probability, discrete and continuous probability distributions, random sampling and sampling distributions, confidence intervals, one and twotail tests of hypotheses, and correlation and linear regression.
PREREQUISITE: Grade XII academic Mathematics.
Three lecture hours per week
NOTE: Credit will not be allowed for Statistics 221 if a student has received credit for any of the following courses: Business 251, Education 481, Psychology 271 and Sociology 332.
222 INTRODUCTORY STATISTICS II
The course builds upon the knowledge developed in Introductory Statistics I and introduces students to statistical techniques commonly used in research. Topics include linear regression and multiple linear regression, residual analysis, simple ANOVA models, categorical data analysis, simple sampling models, and common distributions (including binomial, Poisson, and exponential).
PREREQUISITE: Stat 221
Three lecture hours per week
321 PROBABILITY AND MATHEMATICAL STATISTICS I
This course is an introduction to the theoretical basis of statistics for students who have completed Introductory Statistics. The study concentrates on the mathematical tools required to develop statistical methodology. Topics covered include: probability, continuous and discrete random variables, moment generating functions, multivariate probability distributions and functions of random variables.
PREREQUISITE: Math 291, and Stat 222 or permission of the instructor.
Three lecture hours per week
322 PROBABILITY AND MATHEMATICAL STATISTICS II
This course builds on the mathematical foundation developed in Statistics 321 and introduces the student to the theory of statistical inference. Topics covered include: sampling distributions and central limit theory, methods of estimation, hypothesis testing, least squares estimation of linear models, and an introduction to Bayesian inference.
PREREQUISITE: Stat 321
Three lecture hours per week
324 APPLIED REGRESSION ANALYSIS
This course builds upon the basis of inference studied in Statistics 221 and provides students with an advanced knowledge of regression techniques. Topics covered are simple and multiple linear regression techniques, matrix notation, the design matrix, model building techniques, residual analysis, and nonlinear regression.
PREREQUISITE: Stat 221 and Math 261
Three lecture hours per week
411 STATISTICAL SIMULATION
This course introduces statistical simulation, and its use as a tool to investigate stochastic phenomena and statistical methods. Topics include the building and validation of stochastic simulation models useful in computing, operations research, engineering and science; related design and estimation problems; variance reduction; and the implementation and the analysis of the results.
PREREQUISITE: Stat 322
Three lecture hours per week
424 EXPERIMENTAL DESIGN
This course builds upon the basis of inference studied in Statistics 221 and Statistics 324 to include statistical techniques commonly used in experimental studies. Students will study topics such as analysis of variance models, hypothesis testing in ANOVA models, randomization, and blocking techniques.
PREREQUISITE: Stat 324
Three lecture hours per week
428 GENERALIZED LINEAR MODELS
This course covers the basic theory, methodology and applications of generalized linear models. Topics include logistic regression, probit regression, binomial regression, Poisson regression, overdispersion, quasilikelihood, and the exponential family.
PREREQUISITE: Stat 322 and Stat 324
Three lecture hours per week
433 TIME SERIES I
This course is an introduction to Time Series methods, including: stationary models, trends and seasonality, stochastic Time Series models, autoregressive and moving average processes and an introduction to Time Series forecasting. ARIMA models. Seasonal Time Series and Spectral Analysis are also covered.
PREREQUISITE: Stat 324
Three lecture hours per week
434 TIME SERIES II
This course includes topics from Time Series Econometrics, including Maximum Likelihood and Least Squares Estimation of ARIMA Models and GARCH Models, Wavelets and Financial Models. Nonstationary Time Series, multivariate Time Series and panel cointegration analysis are also covered.
PREREQUISITE: Stat 433
Three lecture hours per week
441 STOCHASTIC PROCESSES
This course is an introduction to the branch of probability theory that deals with the analysis of systems that evolve over time. Topics include random walks, Markov chains, Poisson processes, continuous time Markov chains, birth and death processes, exponential models, and applications of Markov chains.
PREREQUISITE: Stat 322
Three lecture hours per week
455 DATA ANALYSIS AND INFERENCE
This course is an introduction to data analysis with a focus on regression. Topics include: initial examination of data, correlation, and simple and multiple regression models using least squares. Inference for regression parameters, confidence and prediction intervals, diagnostics and remedial measures interactions and dummy variables, variable selection, least squares estimation and inference for nonlinear regression will also be discussed.
PREREQUISITE: Stat 324
Three lecture hours per week
466 DATA VISUALIZATION AND MINING
This course introduces students to the statistical methods involved in visualization of high dimensional data, including interactive methods directed at exploration and assessment of structure and dependencies in data. Topics include methods for finding groups in data including cluster analysis, dimension reduction methods including multidimensional scaling, pattern recognition, and smoothing techniques.
PREREQUISITE: Math 262, Math 291 and Stat 321
Three lecture hours per week
474 MULTIVARIATE ANALYSIS
This course deals with the statistics of observation and analysis of more than one output variable. Topics include estimation and hypothesis testing for multivariate normal data, principal component analysis and factor analysis, discriminant analysis, cluster analysis, and correspondence analysis.
PREREQUISITE: Stat 324
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
141 INTRODUCTION TO COMPUTER PROGRAMMING FOR SCIENTISTS
This course is an introduction to computer programming for noncomputer science majors. Topics include problemsolving, algorithm design, data types, control structures, repetition, loops, nested structures, modular programming and arrays.
PREREQUISITE: Grade XII academic mathematics.
Three lecture hours and 1.5 hours of laboratory session per week.
NOTE: Credit will be allowed for only one of CS 141 or Engineering 131. As well, CS 141 may not be taken concurrently with, or after, CS 191.
161 DIGITAL SYSTEMS
This course provides an introduction to digital systems, beginning with elementary components such as logic gates, from which are constructed components such as adders and comparators, and progressing to more complex systems such as programmable logic devices, memory and processor units. Students acquire skills in the design and analysis of combinational and sequential digital systems, CAD design and simulation tools for complex systems, and construction of digital systems based upon a modular methodology.
PREREQUISITE: CS 191 or Engineering 131, three semester hours of Mathematics, or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours and a threehour laboratory session per week
191 COMPUTER SCIENCE I
This course is an introduction to computer programming and is designed for both Computer Science majors and nonmajors. Emphasis is on problem solving and software development using a modern high level objectoriented language. Topics include: the programming process; language syntax and semantics; data types; expressions; input and output; conditionals; loops; arrays; functions/methods and text files. The course follows an “objects late” strategy, deferring indepth discussion of objectoriented concepts to Computer Science 192.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours and 1.5 hours lab per week
192 COMPUTER SCIENCE II
This course continues the development of objectoriented programming. Topics include class design; inheritance; interfaces and polymorphism; collection classes; searching and sorting; recursion; exception handling; the ModelViewController pattern; and graphical user interfaces.
PREREQUISITE: CS 191
Three lecture hours and 1.5 hours lab per week
206 WEB DEVELOPMENT AND PROGRAMMING
In this course, students learn to create websites that involve serverside scripting and database operations. While one specific scripting language is used to acquire web development and programming skills, students are exposed to a spectrum of scripting languages, enabling them to easily adapt to others.
PREREQUISITES: CS 192
Three hours per week
212 MOBILE DEVICE DEVELOPMENT  iOS
This course introduces the student to programming for mobile devices that use iOS. The course will present a study of the architecture, operating system, and programming for these devices.
PREREQUISITE: CS 192
Three lecture hours per week
213 MOBILE DEVICE DEVELOPMENT  ANDROID
This course introduces the student to programming for mobile devices that use the Android platform. The course will present a study of the architecture, operating system and programming language of these devices.
PREREQUISITE: CS 192
Three lecture hours per week
252 COMPUTER ORGANIZATION AND ARCHITECTURE
This course provides a basic understanding of the organization and architecture of modern computer systems. It examines the function and design of major hardware components both from a designer’s perspective and through assembly language programming. Topics include components and their interconnection, internal/external memory, input/output subsystems, processors, computer arithmetic, instruction sets, addressing modes, and pipelining.
PREREQUISITE: CS 192
Three hours per week
261 DATA STRUCTURES AND ALGORITHMS
This course continues the study of data structures, recursive algorithms, searching and sorting techniques, and general strategies for problem solving. It also introduces complexity analysis and complexity classes.
PREREQUISITE: CS 192 and six semester hours of Mathematics
Three lecture hours per week
262 COMPARATIVE PROGRAMMING LANGUAGES
This course examines the principal features of major types of programming languages, including procedural, logical, functional and objectoriented languages. Features include parameterpassing mechanisms, control structures, scope, and binding rules. Each language type is illustrated by considering a specific language.
PREREQUISITE: CS 261
Three lecture hours per week
271 PRACTICAL EMBEDDED SYSTEMS
This course introduces students to the concept of embedded systems architectures, the interconnection of sensors and actuators to such systems, and the usage of such platforms for data acquisition and control of automated systems. Popular microcontroller units and systemonchip platforms will be examined.
PREREQUISITES: CS 121 or CS 141 or CS 191 or ENGN 131
Three lecture hours per week
282 PROGRAMMING PRACTICES
This course introduces the student to development in the Unix/Linux environment. Topics include development tools, shell programming, common utility programs, processes, file/directory management, IDEs, testing/debugging, version control, and an introduction to software engineering.
PREREQUISITE: CS 192 or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours per week
291 COMPUTER SCIENCE III
This is the third course in the Computer Science programming sequence. It covers more advanced programming concepts in an object oriented language. It also serves as an introduction to data structures and software engineering. Topics included: the programming toolchain; threads; class generics; lists, stacks, queues and binary trees; streams and binary I/O, object serialization, networking (sockets and web interface); introduction to software engineering; relational database connectivity; and XML parsing.
PREREQUISITE: CS 192 and six hours of Mathematics
Three lecture hours and 1.5 hours lab per week
311 VIDEO GAME DESIGN
This course focuses on the process from initial idea to final design of a video game. Students will craft a game document from an original concept of their own creation and create a prototype of the game based on that document.
PREREQUISITE: CS 261
Three lecture hours per week
321 HUMANCOMPUTER INTERFACE DESIGN
This course is an introduction to the design and evaluation of software interfaces and webpages. The course focuses on usercentered design and includes topics such as user analysis and modelling, iterative prototyping, usability testing, designing for the web, internationalization and localization.
PREREQUISITES: CS 192
Three hours per week
322 INTRODUCTION TO BIOINFORMATICS
This course is an introduction to bioinformatics, with a focus on a practical guide to the analysis of data on genes and proteins. It familiarizes students with the tools and principles of contemporary bioinformatics. Students acquire a working knowledge of a variety of publicly available data and computational tools important in bioinformatics, and a grasp of the underlying principles enabling them to evaluate and use novel techniques as they arise in the future.
Crosslisted with Biology, Pathology/Microbiology, Human Biology (cf. Biology 322, VPM 885, HB 885)
PREREQUISITE: CS 261 or BIO 223 or permission of instructor. If taken as VPM 885 or HB 885  Admission to the graduate program and permission of the instructor.
Three lecture hours and a onehour laboratory session per week
Note: No student can be awarded more than one course credit among HB 885, VPM 885, CS 322 and BIO 322.
342 COMPUTER COMMUNICATIONS
This course introduces the basic principles of modern computer communication: protocols, architectures and standards. Topics include layered architectures, data transmission, error and flow control, medium access, routing, congestion control and common internet application protocols.
PREREQUISITE: CS 252 and CS 282
Three lecture hours per week
352 OPERATING SYSTEMS
This course introduces the student to the major concepts of modern operating systems. Topics covered include: process management, memory management, file systems, device management and security.
PREREQUISITE: CS 252, CS 261 and CS 282
Three lecture hours per week
361 ANALYSIS AND DESIGN OF ALGORITHMS
This course, which introduces the study of algorithm design and measures of efficiency, is a continuation of CS 261. Topics include algorithm complexity and analysis; techniques such as divide and conquer, greedy and dynamic programming; searching and sorting algorithms; graph algorithms; text processing; efficient algorithms for several common computer science problems and NPcompleteness.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
362 SOFTWARE DESIGN AND ARCHITECTURE
This course examines the principles and best practices in objectoriented (OO) software design. Topics include a review of foundational OO concepts, OO design principles, classic design patterns, and software architectures.
PREREQUISITE: CS 261
Three lecture hours per week
371 DATABASE SYSTEMS
This course introduces the fundamental concepts necessary for the design, use and implementation of database systems. Topics discussed include logical and physical organization of data, database models, design theory, data definition and manipulation languages, constraints, views, and embedding database languages in general programming languages.
PREREQUISITES: CS 261
Three lecture hours per week
384 TECHNOLOGY MANAGEMENT & ENTREPRENEURSHIP
This course provides an overview on how to start and sustain a technologyoriented company. Topics discussed will include the role of technology in society, intellectual property, patents, business plans, financial planning, sources of capital, business structure, liability, tax implications, sales, marketing, operational and human resource management. This course will be taught using problembased and experiential learning strategies with involvement from real life entrepreneurs as motivators and facilitators.
(Crosslisted with Engineering 423)
PREREQUISITE: CS 252, CS 262 and CS 282
Three lecture hours per week
406 CLOUD COMPUTING
This course examines: the critical technology trends that are enabling cloud computing, the architecture and the design of existing deployments, the services and the applications they offer, and the challenges that need to be addressed to help cloud computing to reach its full potential. The format of this course will be a mix of lectures, seminarstyle discussions, and student presentations.
PREREQUISITE: CS 206
Three lecture hours per week
411 ARTIFICIAL INTELLIGENCE AND AUTOMATED REASONING
This course introduces general problemsolving methods associated with automated reasoning and simulated intelligence. Topics include problem abstraction, state space heuristic search theory, pathfinding, flocking behaviour, knowledge representation, propositional logic, reasoning with uncertainty, machine learning and connectionism.
PREREQUISITE: CS 261
Three lecture hours per week
412 MACHINE LEARNING AND DATA MINING
Machine learning is the study of mechanisms for acquiring knowledge from large data sets. This course examines techniques for detecting patterns in sets of uncategorized data. Supervised and unsupervised learning techniques are studied, with particular application to realworld data.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
435 COMPUTER GRAPHICS PROGRAMMING
This course introduces the student to the principles and tools of applied graphics programming including graphical systems, input and interaction, object modeling, transformations, hidden surface removal, and shading and lighting models. Languages, graphics libraries and toolkits, and video game engines are introduced, as well as relevant graphics standards.
PREREQUISITE: CS 262 and MATH 261
Three lecture hours per week
436 ADVANCED COMPUTER GRAPHICS PROGRAMMING
This course builds on the computer graphics programming concepts introduced in CS 435. Students are given a deeper understanding of the components of the 3D graphics pipeline, and how they are used in modern graphical applications. Topics include advanced texture mapping, practical uses of vertex and pixel shaders, screen postprocessing, particle systems, and graphics engine design.
PREREQUISITE: CS 435
Three lecture hours per week
444 DATA SCIENCE
Data science is an interdisciplinary and emerging field where techniques from several areas are used to solve problems using data. This course provides an overview and handson training in data science, where students will learn to combine tools and techniques from computer science, statistics, data visualization and the social sciences. The course will focus on: 1) the process of moving from data collection to product, 2) tools for preparing, manipulating and analyzing data sets (big and small), 3) statistical modelling and machine learning, and 4) real world challenges.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
461 WIRELESS SENSOR NETWORKS
This course is an introduction to Wireless Sensor Networks. It includes the following topics: singlenode architecture, wireless sensor network architecture, physical layer, MAC protocols, linklayer protocols, naming and addressing, time synchronization, localization and positioning, topology control, routing protocols, transport layer, and quality of service.
PREREQUISITE: CS 252 and CS 261
Three lecture hours per week
465 VIDEOGAME ARCHITECTURE
This programmingdriven course aims to explore the various systems that comprise a typical videogame project, including event systems, state machines, rendering, scripting and AI programming. Students will implement these components throughout the course with the end goal of building a small game.
PREREQUISITE: CS 435
COREQUISITE: CS 436 (must be taken previously or concurrently)
Three lectures hours per week
472 COMPILER DESIGN
This is a first course in compiler design. The course covers: compilation phases, lexical analysis, parsing, scope rules, block structure, symbol tables, runtime heap and stack management, code generation, preprocessing, compilercompilers, and translation systems.
PREREQUISITE: CS 332
Three lecture hours per week
481 SOFTWARE ENGINEERING
This course emphasizes the theory, methods and tools employed in developing medium to largescale software which is usable, efficient, maintainable, and dependable. Project management is a major focus. Topics include traditional and agile process models, project costing, scheduling, team organization and management, requirements modelling/specification, software design, software verification and testing, and reengineering.
PREREQUISITE: 4th year standing in Computer Science
Three lecture hours per week
482 SOFTWARE SYSTEMS DEVELOPMENT PROJECT
In this course, students propose, complete and present a significant software project in a group setting using the system development skills learned in CS 481. The course applies objectoriented design principles through the use of UML. Students are encouraged to select (with the consent of the instructor) a project with a realworld client.
PREREQUISITE: CS 481 (May be taken concurrently in exceptional circumstances).
One lecture hour per week plus significant project time
483 VIDEO GAME PROGRAMMING PROJECT
In this course, students work as a group to develop a single design into a fully functioning video game. This course applies the project management skills learned in CS 481 to the development of a professional quality video game based upon a single design and prototype emerging from CS 311.
PREREQUISITE: CS 311, CS 481 and enrolment in the Computer Science with Video Game Programming major.
One lecture hour per week plus significant project time.
Semester hours of credit: 6
484 PROTOTYPE SYSTEMS DEVELOPMENT
This course is for student teams who wish to develop an early prototype of a product which they hope to pitch to an external startup accelerator program postgraduation. Student teams may be interdisciplinary, but students must register for this course (or its equivalent) within their home school/department. Entry into the course is dependent upon a pitch for the product being judged as economically viable by a team of project mentors. Pitches are made at the conclusion of CS 384.
PREREQUISITE: CS 384 and permission of the instructor
One lecture hour per week plus significant project time.
Semester hours of credit: 6
In the School of Mathematical and Computational Sciences, there are five course prefixes:
216 MATHEMATICS OF FINANCE
This first course in the mathematics of finance includes topics such as measurement of interest; annuities and perpetuities; amortization and sinking funds; rates of return; bonds and related securities; life insurance.
PREREQUISITE: Math 191
Three lecture hours plus a two hour lab per week
240 FINANCIAL MATHEMATICS & INVESTMENTS
Advanced topics of Theory of Interest as initially covered in AMS 216 including time value of money, annuities, loans, bonds, general cash flows, portfolios and immunization concepts, as well as an introduction to capital markets, analysis of equity and fixed income investments, and an introduction to derivative securities including futures, forwards, swaps and options.
PREREQUISITE: AMS 216
Three lecture hours plus a two hour lab per week
241 FINANCIAL ECONOMICS I
Introduction to mathematical techniques used to price and hedge derivative securities in modern finance. Modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Applications of derivatives in practice will also be discussed.
PREREQUISITE: AMS 240
Three lecture hours plus a two hour lab per week
251 ACTUARIAL SCIENCE I
This course will explore the future lifetime random variable, probability and survival functions, force of mortality; complete and curtate expectation of life, and Makeham and Gompertz mortality laws. Other topics will include: Life tables, characteristics of population and insurance life tables, selection, and fractional age assumptions. Life insurance payments and annuity payments: Present value random variables; expected present values; higher moments; actuarial notation, annual, 1/mthly and continuous cases, relationships between insurance and annuity functions. Premiums, expense loadings, present value of future loss random variables and distribution, net and gross cases, the equivalence principle and portfolio percentile principle will also be discussed.
PREREQUISITE: AMS 240 and STAT 321
Three lecture hours plus a two hour lab per week
286 ACTUARIAL MATHEMATICS LAB I
This lab features problemsolving sessions for the professional examination on financial mathematics of the Society of Actuaries and the Casualty Actuarial Society.
PREREQUISITE: AMS 216
Semester hours of credit: 1
294 OPTIMIZATION
An introduction to the methods and applications of linear programming. Topics include linear programming formulations, the simplex method, duality and sensitivity analysis, and integer programming basics. Applications to transportation, resource allocation and scheduling problems will be examined. Software will be used to illustrate topics and applications.
PREREQUISITE: Math 261
Three lecture hours per week
316 GAME THEORY
The course covers the fundamentals of game theory and its applications to the modeling of competition and cooperation in business, economics, biology and society. It will include twoperson games in strategic form and Nash equilibria, extensive form games, including multistage games, coalition games and the core Bayesian games, mechanism design and auctions.
PREREQUISITE: Math 192, Math 242 and Stat 222
Three lecture hours per week
331 ADVANCED CORPORATE FINANCE FOR ACTUARIES
This course covers various advanced topics in corporate finance, with emphasis on theories of corporate incentives and asymmetric information. Illustrative applications using cases are provided. Topics include: capital budgeting, real options, investment decision using Markowitz and utility theory, the Capital Asset Pricing Model, Arbitrage Pricing Theory, market efficiency and capital structure and dividend policy. Other topics may include time value of money, capital budgeting, cost of capital, security issuance, capital structure, payout policy and dividends, shortterm finance, and risk management. Where suitable, topics are treated from a mathematical and quantitative perspective.
PREREQUISITE: AMS 240 and BUS 231
Three lecture hours per week
341 FINANCIAL ECONOMICS II
This course will discuss advanced mathematical techniques used to price and hedge derivative securities in modern finance. Topics include: modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Students will also have the opportunity to apply these derivatives in practice.
PREREQUISITE: AMS 241
Three lecture hours plus a two hour lab per week
351 ACTUARIAL SCIENCE II
This course will discuss: policy values, annual, 1/mthly and continuous cases, Thiele's equation, policy alterations, modified policies and multiple state models. Other topics will include applications in life contingencies, assumptions, Kolmogorov equations, premiums, policy values, multiple decrement models, Joint Life Models, Valuation of insurance benefits on joint lives, and dependent and independent cases.
PREREQUISITE: AMS 251 and STAT 322
Three lecture hours plus a two hour lab per week
373 ADVANCED INSURANCE AND ACTUARIAL PRACTICES
This course is a study of cash flow projection methods for pricing, reserving and profit testing. Topics include: deterministic, stochastic and stress testing; pricing and risk management of embedded options in insurance products; mortality and maturity guarantees for equitylinked life insurance.
PREREQUISITE: AMS 351
Three lecture hours per week
377 COMBINATORIAL OPTIMIZATION
In this course, various algorithms will be considered, including minimum spanning tree, shortest path, maximum flow, and maximum matching. The links with linear and integer programming will also be considered, with particular attention to duality.
PREREQUISITES: Math 242 and AMS 294
Three lecture hours per week
391 MATHEMATICAL MODELLING
This course studies the process of mathematical modeling, namely, formulating a “realworld” problem in mathematical terms, solving the resulting mathematical problem, and interpreting the solution. Major topics include the modeling of optimization problems (using the techniques of linear programming), and deterministic and probabilistic dynamical processes (with models formulated as differential and difference equations). Applications are taken from science, business and other areas, according to class interest.
PREREQUISITE: Math 261 and Math 301; a statistics course is recommended.
Three lecture hours per week
408 FINANCIAL MATHEMATICS II
This course explores calculus in a stochastic environment. Topics include: random functions, derivative, chain rule, integral, integration by parts, partial derivatives, pricing forwards and options. Ito’s lemma and financial applications, HullWhite, ArtznerHeath, and BrennanSchwartz models Martingales, pricing methodology, and riskneutral probability will also be discussed.
PREREQUISITE: Math 261 and AMS 341
Three lecture hours per week
409 FINANCIAL MATHEMATICS III
This course discusses forming riskfree portfolios, the BlackScholes partial differential equation, constant dividend case, exotic options, drift adjustment, and equivalent martingale measures. Topics also include: CoxRossRubinstein, Merton and Vasicek’s models, stochastic optimization, HamiltonJacobiBellman equation, and application to American options.
PREREQUISITE: AMS 408 and STAT 322
Three lecture hours per week
454 LOSS MODELS I
This course explores models for loss severity, parametric models, effect of policy modifications, and tail behaviour. Topics also include: models for loss frequency: (a, b, 0), (a, b, 1), mixed Poisson models; compound Poisson models, Aggregate claims models: moments and moment generating function: recursion and Classical ruin theory.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
455 LOSS MODELS II
This course is a study of the mathematics of survival models and includes some examples of parametric survival models. Topics include: tabular survival models, estimates from complete and incomplete data samples, parametric survival models, and determining the optimal parameters. Maximum likelihood estimators, derivation and properties, product limit estimators, KaplanMeier and NelsonAalen, credibility theory: limited fluctuation; Bayesian; Buhlmann; BuhlmannStraub; empirical Bayes parameter estimation; statistical inference for loss models; maximum likelihood estimation; the effect of policy modifications; and model selection will also be discussed.
PREREQUISITE: AMS 454
Three lecture hours per week
458 CREDIBILITY THEORY
This course is a credibility approach to inference for heterogeneous data; classical, regression and Bayesian models; with illustrations from insurance data.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
468 NONLINEAR OPTIMIZATION
This course is a study of unconstrained optimization, optimality conditions (necessary, sufficient and KarushKuhnTucker), penalty functions, convex functions, and convex programming.
PREREQUISITE: MATH 291 and AMS 294
Three lecture hours per week
478 QUANTITATIVE RISK MANAGEMENT
This course is an introduction to financial risk management. Topics include: risk measures, modeling for multivariate distributions and copulas, market, credit and operational risk. Advanced topics in quantitative risk management will also be discussed.
PREREQUISITE: AMS 331
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
201 MAPLE TECHNOLOGY LAB
An introduction to the software package MAPLE. Topics include the basic functions and commands, mathematical problem solving using MAPLE, and programming in the internal MAPLE language.
PREREQUISITE: CS 191 AND Math 192
Two lab hours per week for 6 weeks
Semester hours of credit: 1
202 MATLAB TECHNOLOGY LAB
An introduction to the software package Matlab. Topics include the basic functions and commands, programming and problemsolving using Matlab.
PREREQUISITE: CS 191 and Math 261
Two lab hours per week for 6 weeks
Semester hours of credit: 1
203 R TECHNOLOGY LAB
An introduction to the software package R. Topics include the basic functions and commands, programming and problemsolving using R.
PREREQUISITE: CS 191, Stat 222
Two lab hours per week for 6 weeks
Semester hours of credit: 1
204 VISUAL BASIC IN EXCEL TECHNOLOGY LAB
An introduction to the software package Excel and Visual Basic in the Excel environment. Topics include the basic functions and commands, programming and problemsolving using Excel and Visual Basic.
PREREQUISITE: CS 191 and AMS 240
Two lab hours per week for 6 weeks
Semester hours of credit: 1
205 GGY AXIS TECHNOLOGY LAB
An introduction to the software package GGY AXIS. Topics include the basic functions and commands, programming and problemsolving using GGY AXIS.
PREREQUISITE: CS 191 and AMS 251
Two lab hours per week for 6 weeks
Semester hours of credit: 1
284 COOP CAREER SKILLS I
This course offers introductory career skills training to prepare coop students for their first work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 292)
PREREQUISITE: Acceptance into the Mathematical and Computational Sciences Cooperative Education Program.
Semester hours of credit: 0
285 COOP WORK TERM I
This course is a coop students’ first work term. A work term report related to a technical problem/issue within the organization where the student is working is required. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 284 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
305 TUTORING IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
Students are introduced to techniques for facilitating learning in the Mathematical and Computational Sciences, and then put these techniques into practice by mediating student group learning either in introductory Mathematical and Computational Sciences courses, Mathematical and Computational Science Help Centre or in outreach programs to High Schools.
PREREQUISITE: At least 36 semester hours of credit completed in courses in the School of Mathematical and Computational Sciences
Semester hours of credit: 1
332 THEORY OF COMPUTING
This course introduces automata theory, formal languages and computability. Topics include: finite automata; regular expressions; regular, contextfree, and contextsensitive languages; computability models; algorithmic decidable and undecidable problems.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
350 QUANTUM INFORMATION
Introduction to quantum information science; the field of studying, storing, processing and communicating information using quantum systems. Topic include quantum mechanics for Qubit Systems, foundations of Quantum Computing, algorithms, communication and cryptography.
PREREQUISITE: Math 262
Three lecture hours per week
384 COOP CAREER SKILLS II
This course offers career skills training to strengthen coop students’ readiness for their second work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 392)
PREREQUISITE: MCS 285
Semester hours of credit: 0
385 COOP WORK TERM II
This course is a coop students’ second work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 384 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
392 NUMERICAL ANALYSIS
Approximate solution of equations, various interpolative or iterative methods, especially Newton’s; convergence tests and rates of convergence; roundoff and truncation errors; propagation of error in calculations; interpolating polynomials; GaussJordan and other methods for simultaneous linear equations; inversion of matrices; determinants and eigenvalues; simultaneous nonlinear equations; evaluation of definite integrals; approximate derivatives; initialvalue ordinary differential equations; leastsquares curve fitting.
PREREQUISITE: Math 301 and CS 191 or equivalent
Three lecture hours per week
395 SPECIAL TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue special topics in Mathematical and Computational Science. Content varies from year to year.
PREREQUISITE: Permission of the instructor
Three lecture hours per week
421 PROFESSIONAL COMMUNICATION AND PRACTICE
This course aims to build students’ oral and written communications skills, and to prepare them for a professional environment. Using examples from their discipline, students will focus on such aspects as description of processes, presentation of data, extended abstracts, correct use of terminology, and sensitivity to language and tone. Discussions of topics relevant to the professional Mathematical and Computational Scientist are also a key part of the course.
PREREQUISITE: At least 36 semester hours of credit completed in the School of Mathematical and Computational Sciences
Three hours per week
442 CRYPTOGRAPHY AND CODES
This course is a study of classic and modern methods of encryption, applications to publickey ciphers, random number generators, attacks on encryption systems, error correcting codes; and computational number theory.
PREREQUISITE: Math 342
Three lecture hours per week
484 COOP CAREER SKILLS III
This course offers career skills training to strengthen coop students’ readiness for their third work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 492)
PREREQUISITE: MCS 385
Semester hours of credit: 0
485 COOP WORK TERM III
This course is a coop students’ third work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 484 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
486 COOP WORK TERM IV
This optional work term is only available to coop students in the School of Mathematical and Computational Sciences, who elect for a fourth work term. The goal is to add further value for the student, integrating classroom theory with professional skills acquired during the work term.
PREREQUISITE: MCS 485
Semester hours of credit: 0
490 HONOURS PROJECT
This course is intended to give research experience to students planning to pursue graduate studies in an area of Mathematical and Computational Sciences, or planning a career where research experience would be an asset. It provides students with the opportunity to do an independent research project on Mathematical or Computational Sciences topic, under the supervision of a faculty member. Some or all of the work may be done during the summer months.
PREREQUISITE: Acceptance to an Honours program in the School of Mathematical and Computational Sciences (see Calendar listing for entrance requirements)
Semester hours of credit: 6
491 DIRECTED STUDIES IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
These courses are designed and recommended for students in the Mathematical and Computational Sciences to encourage independent initiative and study. Reading and research will be conducted in one or more specialized areas.
(See Academic Regulation 9 for Regulations Governing Directed Studies.)
PREREQUISITE: Permission of the instructor
Three semester hours of credit
495 ADVANCED TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue advanced topics in Mathematical and Computational Sciences. Content varies from year to year but is always at a fourthyear level. Prospective students should contact the School of Mathematical and Computational Sciences for a more detailed description of any particular year’s offering.
PREREQUISITE: Permission of the instructor
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
101 ELEMENTS OF MATHEMATICS
This course provides an introduction to several mathematical topics at the university level, and is intended for students majoring in a discipline other than Mathematical and Computational Sciences, or the Natural Sciences. The course consists of four modules: (1) Sets and Logic, (2) Number Theory, (3) Geometry, (4) Mathematical Systems.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and any other 100level Mathematics course.
111 FINITE MATHEMATICS
This course introduces students to finite mathematical techniques and to mathematical models in business, life and the social sciences. The course begins with an introduction to mathematical models, types of models, and conversion of verbal models to mathematical models. Topics covered include systems of linear equations and matrices, linear inequalities and linear programming, sets, counting and probability.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit for Mathematics 111 will not be allowed if taken concurrent with or subsequent to Mathematics 261.
112 CALCULUS FOR THE MANAGERIAL, SOCIAL AND LIFE SCIENCES
This course provides an introduction to calculus for students in the managerial, social and life sciences. The main emphasis of the course is the development of techniques of differentiation and integration of algebraic, exponential and logarithmic functions. Applications of derivatives and integrals are also discussed.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours a week
NOTE: Credit will not be given jointly for this course and Math 191
191 SINGLE VARIABLE CALCULUS I
This course is an introduction to differential and integral calculus of functions of a single variable. The course is intended primarily for majors in the Mathematical and Computational Sciences, Engineering and the Physical Sciences, as well as those planning to continue with further Mathematics courses. The concepts of limits, continuity and derivatives are introduced and explored numerically, graphically and analytically. The tools of differential calculus are applied to problems in: related rates; velocity and acceleration; extrema of functions; optimization; curve sketching; and indeterminate forms. The concepts of definite and indefinite integrals are introduced, and the relation between the two integrals is discovered via the Fundamental Theorem of Calculus.
PREREQUISITE: Grade XII academic Mathematics and a passing grade on the Assessment Test.
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
192 SINGLE VARIABLE CALCULUS II
This course is a continuation of integral calculus of functions of a single variable and an introduction to sequences and series. Techniques of integration are studied, including improper integrals and numerical integration, and the tools of integral calculus are used to compute areas, volumes and arc lengths; and are applied to problems in physics and differential equations. Sequences, series, tests for convergence, Taylor series and Taylor polynomials are studied.
PREREQUISITE: Math 191
Four lecture hours and one tutorial hour per week
Semester hours of credit: 4
242 COMBINATORICS I
This course offers a survey of topics in discrete mathematics that are essential for students majoring in the Mathematical and Computational Sciences. Topics include: logic, proof techniques such as mathematical induction, recursion, counting methods, and introductory graph theory.
PREREQUISITE: Math 192
Three lecture hours per week
261 LINEAR ALGEBRA I
This course introduces some of the basic concepts and techniques of linear algebra to students of any major. The emphasis is on the interpretation and development of computational tools. Theory is explained mainly on the basis of two or threedimensional models. Topics covered are: matrices; determinants; systems of equations; vectors in two and threedimensional space including dot and cross products, lines, and planes; concepts of linear independence, basis, and dimension explained with examples; linear transformations and their matrices; eigenvectors and eigenvalues.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours per week
262 LINEAR ALGEBRA II
This course continues MATH 261 with further concepts and theory of linear algebra. Topics include vector spaces, orthogonality, GramSchmidt Process, canonical forms, spectral decompositions, inner product spaces and the projection theorem.
PREREQUISITE: Math 191, Math 261
Three lecture hours a week
272 MATHEMATICAL REASONING
This course provides students with experience in writing mathematical arguments. It covers firstorder logic, set theory, relations, and functions. The ideas and proof techniques are considered in the context of various mathematical structures such as partial orders, graphs, number systems, and finite groups.
PREREQUISITE: None
Three lecture hours per week
281 FOUNDATIONS OF GEOMETRY
This course presents an axiomatic base for Euclidean geometry and an insight into the interdependence of the various theorems and axioms of that geometry and nonEuclidean geometries. Topics include: incidence and separation properties for points, lines, planes and space; congruence properties; geometric inequalities; similarity properties; and geometric constructions.
PREREQUISITE: Six semester hours of First Year Mathematics
Three lecture hours per week
282 MATHEMATICAL PHYSICS
See Physics 282
PREREQUISITE: Math 291 and either Physics 112 or Physics 122
291 MULTIVARIABLE AND VECTOR CALCULUS
This course continues from Math 192 and is an introduction to multivariable differentiation and integration and vector calculus. Topics include parametric representation of curves; polar coordinates; vectors; dot and cross products; curves and surfaces in space; calculus of vectorvalued functions; functions of several variables; partial differentiation; directional derivatives; tangent planes; local and constrained maxima and minima; double and triple integrals; changes of variables in multiple integrals; vector fields; line and surface integrals; gradient, divergence and curl; Green’s, Stokes’ and Divergence Theorems.
PREREQUISITE: Math 192
Four lecture hours per week
Semester hours of credit: 4
301 DIFFERENTIAL EQUATIONS
This course introduces the basic theory of differential equations, considers various techniques for their solution, and provides elementary applications. Topics include linear equations; separable equations; linear independence and Wronskian; secondorder equations with constant coefficients; nonhomogeneous equations; applications of first and secondorder equations; Laplace and inverse Laplace transforms, and their application to initialvalue problems; series solutions about ordinary and singular points; and Fourier series.
PREREQUISITE: Math 192
Three lecture hours per week
331 COMPLEX VARIABLES
This is a first course in complex variables. The aim is to acquaint students with the elementary complex functions, their properties and derivatives, and with methods of integration. Topics covered include: definition and development of complex numbers as ordered pairs; geometric representation; basic formulas and inequalities involving argument and conjugates; roots of complex numbers, limit, continuity, and derivative; Cauchy Riemann conditions; harmonic functions; properties of trigonometric, hyperbolic, logarithmic, exponential, and inverse trigonometric functions; bilinear transformation; integration; Cauchy Integral Theorem and Formula; residues and poles; Laurent and Taylor’s series; and improper integrals.
PREREQUISITE: Math 291
Three lecture hours per week
342 NUMBER THEORY
This first course in number theory will include the following topics: equivalence of the principles of induction and the wellordering principle; division algorithm; positional notation and repeating decimals; greatest common divisor; Euclidean Algorithm; Fundamental Theorem of Arithmetic; Pythagorean Triplets; Prime Numbers Theorem; Mersenne and Fermat Numbers; congruences; Euler’s Phifunction; Chinese Remainder Theorem; Diophantine Equations; Theorems of Lagrange and Wilson; Quadratic Reciprocity Law of Gauss; Legendre symbol and primitive roots; perfect numbers; multiplicative number theoretic functions; Moebius inversion.
PREREQUISITE: Six semester hours of Mathematics at the 200 level or higher
Three lecture hours per week
343 COMBINATORICS II
This course continues MATH 242, with the examination of advanced counting techniques, binomial coefficients, and generating functions. Other topics include relations, partial orders, and Steiner Triple systems.
PREREQUISITE: Math 242
Three lecture hours per week
351 REAL ANALYSIS
This is a first course in real analysis. Topics include: the reals as a complete ordered field; closed and open sets; BolzanoWeierstrass and HeineBorel Theorems; Cauchy Sequences; limits and continuity; derivative; Mean Value Theorem; Riemann Integral; and the Fundamental Theorem of Calculus.
PREREQUISITE: Math 192 and Math 272
Three lecture hours per week
361 GROUP THEORY
An introduction to group theory, including: cyclic groups, symmetric groups, subgroups and normal subgroups, Lagrange's theorem, quotient groups and homomorphisms, isomorphism theorems, group actions, Sylow's theorem, simple groups, direct and semidirect products, fundamental theorem on finitely generated Abelian groups.
PREREQUISITE: Math 272
Three lecture hours per week
371 GRAPH THEORY
This course is an introduction to the ideas, methods, and applications of graph theory. Topics include graph connectivity, graph factors and factorizations, planar graphs, and colourings.
PREREQUISITE: Math 242 or Math 272
Three lecture hours per week
402 POINTSET TOPOLOGY
A first course in topology, covering some review of set theory; cardinal numbers; binary relations; metric spaces, convergence and continuity in metric spaces; topological spaces, bases, sub spaces; continuity in general; homeomorphism; product spaces; separation axioms; compactness; connectedness.
PREREQUISITE: Math 351
Three lecture hours per week
452 MEASURE THEORY AND INTEGRATION
A first course in measure theory, covering measure as a generalization of length, outer measure, sigmaalgebras, measurability, construction of measures, Lebesgue measure on the real line, measurable functions and the Lebesgue integral. Additional topics may include and convergence theorems, product measures and Fubini Theorem.
PREREQUISITE: Math 351
Three lecture hours per week
453 FUNCTIONAL ANALYSIS
This first course in functional analysis covers topics like: metric spaces, Banach spaces, function spaces, Hilbert spaces, generalized Fourier series and linear operators.
PREREQUISITE: Math 262 and Math 351
Three lecture hours per week
462 RING AND FIELD THEORY
Introduction to ring and field theory, including: polynomial rings, matrix rings, ideals and homomorphisms, quotient rings, Chinese remainder theorem, Euclidean domains, principal ideal domains, unique factorization domains, introduction to module theory, basic theory of field extensions, splitting fields and algebraic closures, finite fields, introduction to Galois theory.
PREREQUISITE: Math 361
Three lecture hours per week
471 PARTIAL DIFFERENTIAL EQUATIONS
This course is an introduction to the theory and application of partial differential equations. Topics include: firstorder equations and characteristic curves; classification of secondorder equations as parabolic, hyperbolic or elliptic; Laplace, wave and diffusion equations, and their physical origins; solution using Fourier series; and separation of variables.
PREREQUISITE: Math 291 and Math 301
Three lecture hours per week
472 DYNAMICAL SYSTEMS
This course is a study of the longterm qualitative behaviour of solutions of systems of differential or difference equations. Topics include: nonlinear systems, linearization, numerical and graphical methods, equilibria, phase space, stability, bifurcations, strange attractors, and chaos. Applications to physics, biology and other sciences are studied.
PREREQUISITE: Math 261, Math 291 and Math 301
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
221 INTRODUCTORY STATISTICS I
The main objective of this course is to introduce the basic concepts of descriptive statistics, statistical inference, and the use of statistical software such as MINITAB to students in any discipline. More time is spent on statistical inference than on descriptive statistics. Topics include frequency distributions, descriptive statistics, rules of probability, discrete and continuous probability distributions, random sampling and sampling distributions, confidence intervals, one and twotail tests of hypotheses, and correlation and linear regression.
PREREQUISITE: Grade XII academic Mathematics.
Three lecture hours per week
NOTE: Credit will not be allowed for Statistics 221 if a student has received credit for any of the following courses: Business 251, Education 481, Psychology 271 and Sociology 332.
222 INTRODUCTORY STATISTICS II
The course builds upon the knowledge developed in Introductory Statistics I and introduces students to statistical techniques commonly used in research. Topics include linear regression and multiple linear regression, residual analysis, simple ANOVA models, categorical data analysis, simple sampling models, and common distributions (including binomial, Poisson, and exponential).
PREREQUISITE: Stat 221
Three lecture hours per week
321 PROBABILITY AND MATHEMATICAL STATISTICS I
This course is an introduction to the theoretical basis of statistics for students who have completed Introductory Statistics. The study concentrates on the mathematical tools required to develop statistical methodology. Topics covered include: probability, continuous and discrete random variables, moment generating functions, multivariate probability distributions and functions of random variables.
PREREQUISITE: Math 291, and Stat 222 or permission of the instructor.
Three lecture hours per week
322 PROBABILITY AND MATHEMATICAL STATISTICS II
This course builds on the mathematical foundation developed in Statistics 321 and introduces the student to the theory of statistical inference. Topics covered include: sampling distributions and central limit theory, methods of estimation, hypothesis testing, least squares estimation of linear models, and an introduction to Bayesian inference.
PREREQUISITE: Stat 321
Three lecture hours per week
324 APPLIED REGRESSION ANALYSIS
This course builds upon the basis of inference studied in Statistics 221 and provides students with an advanced knowledge of regression techniques. Topics covered are simple and multiple linear regression techniques, matrix notation, the design matrix, model building techniques, residual analysis, and nonlinear regression.
PREREQUISITE: Stat 221 and Math 261
Three lecture hours per week
411 STATISTICAL SIMULATION
This course introduces statistical simulation, and its use as a tool to investigate stochastic phenomena and statistical methods. Topics include the building and validation of stochastic simulation models useful in computing, operations research, engineering and science; related design and estimation problems; variance reduction; and the implementation and the analysis of the results.
PREREQUISITE: Stat 322
Three lecture hours per week
424 EXPERIMENTAL DESIGN
This course builds upon the basis of inference studied in Statistics 221 and Statistics 324 to include statistical techniques commonly used in experimental studies. Students will study topics such as analysis of variance models, hypothesis testing in ANOVA models, randomization, and blocking techniques.
PREREQUISITE: Stat 324
Three lecture hours per week
428 GENERALIZED LINEAR MODELS
This course covers the basic theory, methodology and applications of generalized linear models. Topics include logistic regression, probit regression, binomial regression, Poisson regression, overdispersion, quasilikelihood, and the exponential family.
PREREQUISITE: Stat 322 and Stat 324
Three lecture hours per week
433 TIME SERIES I
This course is an introduction to Time Series methods, including: stationary models, trends and seasonality, stochastic Time Series models, autoregressive and moving average processes and an introduction to Time Series forecasting. ARIMA models. Seasonal Time Series and Spectral Analysis are also covered.
PREREQUISITE: Stat 324
Three lecture hours per week
434 TIME SERIES II
This course includes topics from Time Series Econometrics, including Maximum Likelihood and Least Squares Estimation of ARIMA Models and GARCH Models, Wavelets and Financial Models. Nonstationary Time Series, multivariate Time Series and panel cointegration analysis are also covered.
PREREQUISITE: Stat 433
Three lecture hours per week
441 STOCHASTIC PROCESSES
This course is an introduction to the branch of probability theory that deals with the analysis of systems that evolve over time. Topics include random walks, Markov chains, Poisson processes, continuous time Markov chains, birth and death processes, exponential models, and applications of Markov chains.
PREREQUISITE: Stat 322
Three lecture hours per week
455 DATA ANALYSIS AND INFERENCE
This course is an introduction to data analysis with a focus on regression. Topics include: initial examination of data, correlation, and simple and multiple regression models using least squares. Inference for regression parameters, confidence and prediction intervals, diagnostics and remedial measures interactions and dummy variables, variable selection, least squares estimation and inference for nonlinear regression will also be discussed.
PREREQUISITE: Stat 324
Three lecture hours per week
466 DATA VISUALIZATION AND MINING
This course introduces students to the statistical methods involved in visualization of high dimensional data, including interactive methods directed at exploration and assessment of structure and dependencies in data. Topics include methods for finding groups in data including cluster analysis, dimension reduction methods including multidimensional scaling, pattern recognition, and smoothing techniques.
PREREQUISITE: Math 262, Math 291 and Stat 321
Three lecture hours per week
474 MULTIVARIATE ANALYSIS
This course deals with the statistics of observation and analysis of more than one output variable. Topics include estimation and hypothesis testing for multivariate normal data, principal component analysis and factor analysis, discriminant analysis, cluster analysis, and correspondence analysis.
PREREQUISITE: Stat 324
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
141 INTRODUCTION TO COMPUTER PROGRAMMING FOR SCIENTISTS
This course is an introduction to computer programming for noncomputer science majors. Topics include problemsolving, algorithm design, data types, control structures, repetition, loops, nested structures, modular programming and arrays.
PREREQUISITE: Grade XII academic mathematics.
Three lecture hours and 1.5 hours of laboratory session per week.
NOTE: Credit will be allowed for only one of CS 141 or Engineering 131. As well, CS 141 may not be taken concurrently with, or after, CS 191.
161 DIGITAL SYSTEMS
This course provides an introduction to digital systems, beginning with elementary components such as logic gates, from which are constructed components such as adders and comparators, and progressing to more complex systems such as programmable logic devices, memory and processor units. Students acquire skills in the design and analysis of combinational and sequential digital systems, CAD design and simulation tools for complex systems, and construction of digital systems based upon a modular methodology.
PREREQUISITE: CS 191 or Engineering 131, three semester hours of Mathematics, or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours and a threehour laboratory session per week
191 COMPUTER SCIENCE I
This course is an introduction to computer programming and is designed for both Computer Science majors and nonmajors. Emphasis is on problem solving and software development using a modern high level objectoriented language. Topics include: the programming process; language syntax and semantics; data types; expressions; input and output; conditionals; loops; arrays; functions/methods and text files. The course follows an “objects late” strategy, deferring indepth discussion of objectoriented concepts to Computer Science 192.
PREREQUISITE: Grade XII academic Mathematics
Three lecture hours and 1.5 hours lab per week
192 COMPUTER SCIENCE II
This course continues the development of objectoriented programming. Topics include class design; inheritance; interfaces and polymorphism; collection classes; searching and sorting; recursion; exception handling; the ModelViewController pattern; and graphical user interfaces.
PREREQUISITE: CS 191
Three lecture hours and 1.5 hours lab per week
206 WEB DEVELOPMENT AND PROGRAMMING
In this course, students learn to create websites that involve serverside scripting and database operations. While one specific scripting language is used to acquire web development and programming skills, students are exposed to a spectrum of scripting languages, enabling them to easily adapt to others.
PREREQUISITES: CS 192
Three hours per week
212 MOBILE DEVICE DEVELOPMENT  iOS
This course introduces the student to programming for mobile devices that use iOS. The course will present a study of the architecture, operating system, and programming for these devices.
PREREQUISITE: CS 192
Three lecture hours per week
213 MOBILE DEVICE DEVELOPMENT  ANDROID
This course introduces the student to programming for mobile devices that use the Android platform. The course will present a study of the architecture, operating system and programming language of these devices.
PREREQUISITE: CS 192
Three lecture hours per week
252 COMPUTER ORGANIZATION AND ARCHITECTURE
This course provides a basic understanding of the organization and architecture of modern computer systems. It examines the function and design of major hardware components both from a designer’s perspective and through assembly language programming. Topics include components and their interconnection, internal/external memory, input/output subsystems, processors, computer arithmetic, instruction sets, addressing modes, and pipelining.
PREREQUISITE: CS 192
Three hours per week
261 DATA STRUCTURES AND ALGORITHMS
This course continues the study of data structures, recursive algorithms, searching and sorting techniques, and general strategies for problem solving. It also introduces complexity analysis and complexity classes.
PREREQUISITE: CS 192 and six semester hours of Mathematics
Three lecture hours per week
262 COMPARATIVE PROGRAMMING LANGUAGES
This course examines the principal features of major types of programming languages, including procedural, logical, functional and objectoriented languages. Features include parameterpassing mechanisms, control structures, scope, and binding rules. Each language type is illustrated by considering a specific language.
PREREQUISITE: CS 261
Three lecture hours per week
271 PRACTICAL EMBEDDED SYSTEMS
This course introduces students to the concept of embedded systems architectures, the interconnection of sensors and actuators to such systems, and the usage of such platforms for data acquisition and control of automated systems. Popular microcontroller units and systemonchip platforms will be examined.
PREREQUISITES: CS 121 or CS 141 or CS 191 or ENGN 131
Three lecture hours per week
282 PROGRAMMING PRACTICES
This course introduces the student to development in the Unix/Linux environment. Topics include development tools, shell programming, common utility programs, processes, file/directory management, IDEs, testing/debugging, version control, and an introduction to software engineering.
PREREQUISITE: CS 192 or permission of the instructor (based on completion of CS 191 with first class standing)
Three lecture hours per week
291 COMPUTER SCIENCE III
This is the third course in the Computer Science programming sequence. It covers more advanced programming concepts in an object oriented language. It also serves as an introduction to data structures and software engineering. Topics included: the programming toolchain; threads; class generics; lists, stacks, queues and binary trees; streams and binary I/O, object serialization, networking (sockets and web interface); introduction to software engineering; relational database connectivity; and XML parsing.
PREREQUISITE: CS 192 and six hours of Mathematics
Three lecture hours and 1.5 hours lab per week
311 VIDEO GAME DESIGN
This course focuses on the process from initial idea to final design of a video game. Students will craft a game document from an original concept of their own creation and create a prototype of the game based on that document.
PREREQUISITE: CS 261
Three lecture hours per week
321 HUMANCOMPUTER INTERFACE DESIGN
This course is an introduction to the design and evaluation of software interfaces and webpages. The course focuses on usercentered design and includes topics such as user analysis and modelling, iterative prototyping, usability testing, designing for the web, internationalization and localization.
PREREQUISITES: CS 192
Three hours per week
322 INTRODUCTION TO BIOINFORMATICS
This course is an introduction to bioinformatics, with a focus on a practical guide to the analysis of data on genes and proteins. It familiarizes students with the tools and principles of contemporary bioinformatics. Students acquire a working knowledge of a variety of publicly available data and computational tools important in bioinformatics, and a grasp of the underlying principles enabling them to evaluate and use novel techniques as they arise in the future.
Crosslisted with Biology, Pathology/Microbiology, Human Biology (cf. Biology 322, VPM 885, HB 885)
PREREQUISITE: CS 261 or BIO 223 or permission of instructor. If taken as VPM 885 or HB 885  Admission to the graduate program and permission of the instructor.
Three lecture hours and a onehour laboratory session per week
Note: No student can be awarded more than one course credit among HB 885, VPM 885, CS 322 and BIO 322.
342 COMPUTER COMMUNICATIONS
This course introduces the basic principles of modern computer communication: protocols, architectures and standards. Topics include layered architectures, data transmission, error and flow control, medium access, routing, congestion control and common internet application protocols.
PREREQUISITE: CS 252 and CS 282
Three lecture hours per week
352 OPERATING SYSTEMS
This course introduces the student to the major concepts of modern operating systems. Topics covered include: process management, memory management, file systems, device management and security.
PREREQUISITE: CS 252, CS 261 and CS 282
Three lecture hours per week
361 ANALYSIS AND DESIGN OF ALGORITHMS
This course, which introduces the study of algorithm design and measures of efficiency, is a continuation of CS 261. Topics include algorithm complexity and analysis; techniques such as divide and conquer, greedy and dynamic programming; searching and sorting algorithms; graph algorithms; text processing; efficient algorithms for several common computer science problems and NPcompleteness.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
362 SOFTWARE DESIGN AND ARCHITECTURE
This course examines the principles and best practices in objectoriented (OO) software design. Topics include a review of foundational OO concepts, OO design principles, classic design patterns, and software architectures.
PREREQUISITE: CS 261
Three lecture hours per week
371 DATABASE SYSTEMS
This course introduces the fundamental concepts necessary for the design, use and implementation of database systems. Topics discussed include logical and physical organization of data, database models, design theory, data definition and manipulation languages, constraints, views, and embedding database languages in general programming languages.
PREREQUISITES: CS 261
Three lecture hours per week
384 TECHNOLOGY MANAGEMENT & ENTREPRENEURSHIP
This course provides an overview on how to start and sustain a technologyoriented company. Topics discussed will include the role of technology in society, intellectual property, patents, business plans, financial planning, sources of capital, business structure, liability, tax implications, sales, marketing, operational and human resource management. This course will be taught using problembased and experiential learning strategies with involvement from real life entrepreneurs as motivators and facilitators.
(Crosslisted with Engineering 423)
PREREQUISITE: CS 252, CS 262 and CS 282
Three lecture hours per week
406 CLOUD COMPUTING
This course examines: the critical technology trends that are enabling cloud computing, the architecture and the design of existing deployments, the services and the applications they offer, and the challenges that need to be addressed to help cloud computing to reach its full potential. The format of this course will be a mix of lectures, seminarstyle discussions, and student presentations.
PREREQUISITE: CS 206
Three lecture hours per week
411 ARTIFICIAL INTELLIGENCE AND AUTOMATED REASONING
This course introduces general problemsolving methods associated with automated reasoning and simulated intelligence. Topics include problem abstraction, state space heuristic search theory, pathfinding, flocking behaviour, knowledge representation, propositional logic, reasoning with uncertainty, machine learning and connectionism.
PREREQUISITE: CS 261
Three lecture hours per week
412 MACHINE LEARNING AND DATA MINING
Machine learning is the study of mechanisms for acquiring knowledge from large data sets. This course examines techniques for detecting patterns in sets of uncategorized data. Supervised and unsupervised learning techniques are studied, with particular application to realworld data.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
435 COMPUTER GRAPHICS PROGRAMMING
This course introduces the student to the principles and tools of applied graphics programming including graphical systems, input and interaction, object modeling, transformations, hidden surface removal, and shading and lighting models. Languages, graphics libraries and toolkits, and video game engines are introduced, as well as relevant graphics standards.
PREREQUISITE: CS 262 and MATH 261
Three lecture hours per week
436 ADVANCED COMPUTER GRAPHICS PROGRAMMING
This course builds on the computer graphics programming concepts introduced in CS 435. Students are given a deeper understanding of the components of the 3D graphics pipeline, and how they are used in modern graphical applications. Topics include advanced texture mapping, practical uses of vertex and pixel shaders, screen postprocessing, particle systems, and graphics engine design.
PREREQUISITE: CS 435
Three lecture hours per week
444 DATA SCIENCE
Data science is an interdisciplinary and emerging field where techniques from several areas are used to solve problems using data. This course provides an overview and handson training in data science, where students will learn to combine tools and techniques from computer science, statistics, data visualization and the social sciences. The course will focus on: 1) the process of moving from data collection to product, 2) tools for preparing, manipulating and analyzing data sets (big and small), 3) statistical modelling and machine learning, and 4) real world challenges.
PREREQUISITE: CS 371 and STAT 221
Three lecture hours per week
461 WIRELESS SENSOR NETWORKS
This course is an introduction to Wireless Sensor Networks. It includes the following topics: singlenode architecture, wireless sensor network architecture, physical layer, MAC protocols, linklayer protocols, naming and addressing, time synchronization, localization and positioning, topology control, routing protocols, transport layer, and quality of service.
PREREQUISITE: CS 252 and CS 261
Three lecture hours per week
465 VIDEOGAME ARCHITECTURE
This programmingdriven course aims to explore the various systems that comprise a typical videogame project, including event systems, state machines, rendering, scripting and AI programming. Students will implement these components throughout the course with the end goal of building a small game.
PREREQUISITE: CS 435
COREQUISITE: CS 436 (must be taken previously or concurrently)
Three lectures hours per week
472 COMPILER DESIGN
This is a first course in compiler design. The course covers: compilation phases, lexical analysis, parsing, scope rules, block structure, symbol tables, runtime heap and stack management, code generation, preprocessing, compilercompilers, and translation systems.
PREREQUISITE: CS 332
Three lecture hours per week
481 SOFTWARE ENGINEERING
This course emphasizes the theory, methods and tools employed in developing medium to largescale software which is usable, efficient, maintainable, and dependable. Project management is a major focus. Topics include traditional and agile process models, project costing, scheduling, team organization and management, requirements modelling/specification, software design, software verification and testing, and reengineering.
PREREQUISITE: 4th year standing in Computer Science
Three lecture hours per week
482 SOFTWARE SYSTEMS DEVELOPMENT PROJECT
In this course, students propose, complete and present a significant software project in a group setting using the system development skills learned in CS 481. The course applies objectoriented design principles through the use of UML. Students are encouraged to select (with the consent of the instructor) a project with a realworld client.
PREREQUISITE: CS 481 (May be taken concurrently in exceptional circumstances).
One lecture hour per week plus significant project time
483 VIDEO GAME PROGRAMMING PROJECT
In this course, students work as a group to develop a single design into a fully functioning video game. This course applies the project management skills learned in CS 481 to the development of a professional quality video game based upon a single design and prototype emerging from CS 311.
PREREQUISITE: CS 311, CS 481 and enrolment in the Computer Science with Video Game Programming major.
One lecture hour per week plus significant project time.
Semester hours of credit: 6
484 PROTOTYPE SYSTEMS DEVELOPMENT
This course is for student teams who wish to develop an early prototype of a product which they hope to pitch to an external startup accelerator program postgraduation. Student teams may be interdisciplinary, but students must register for this course (or its equivalent) within their home school/department. Entry into the course is dependent upon a pitch for the product being judged as economically viable by a team of project mentors. Pitches are made at the conclusion of CS 384.
PREREQUISITE: CS 384 and permission of the instructor
One lecture hour per week plus significant project time.
Semester hours of credit: 6
In the School of Mathematical and Computational Sciences, there are five course prefixes:
216 MATHEMATICS OF FINANCE
This first course in the mathematics of finance includes topics such as measurement of interest; annuities and perpetuities; amortization and sinking funds; rates of return; bonds and related securities; life insurance.
PREREQUISITE: Math 191
Three lecture hours plus a two hour lab per week
240 FINANCIAL MATHEMATICS & INVESTMENTS
Advanced topics of Theory of Interest as initially covered in AMS 216 including time value of money, annuities, loans, bonds, general cash flows, portfolios and immunization concepts, as well as an introduction to capital markets, analysis of equity and fixed income investments, and an introduction to derivative securities including futures, forwards, swaps and options.
PREREQUISITE: AMS 216
Three lecture hours plus a two hour lab per week
241 FINANCIAL ECONOMICS I
Introduction to mathematical techniques used to price and hedge derivative securities in modern finance. Modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Applications of derivatives in practice will also be discussed.
PREREQUISITE: AMS 240
Three lecture hours plus a two hour lab per week
251 ACTUARIAL SCIENCE I
This course will explore the future lifetime random variable, probability and survival functions, force of mortality; complete and curtate expectation of life, and Makeham and Gompertz mortality laws. Other topics will include: Life tables, characteristics of population and insurance life tables, selection, and fractional age assumptions. Life insurance payments and annuity payments: Present value random variables; expected present values; higher moments; actuarial notation, annual, 1/mthly and continuous cases, relationships between insurance and annuity functions. Premiums, expense loadings, present value of future loss random variables and distribution, net and gross cases, the equivalence principle and portfolio percentile principle will also be discussed.
PREREQUISITE: AMS 240 and STAT 321
Three lecture hours plus a two hour lab per week
286 ACTUARIAL MATHEMATICS LAB I
This lab features problemsolving sessions for the professional examination on financial mathematics of the Society of Actuaries and the Casualty Actuarial Society.
PREREQUISITE: AMS 216
Semester hours of credit: 1
294 OPTIMIZATION
An introduction to the methods and applications of linear programming. Topics include linear programming formulations, the simplex method, duality and sensitivity analysis, and integer programming basics. Applications to transportation, resource allocation and scheduling problems will be examined. Software will be used to illustrate topics and applications.
PREREQUISITE: Math 261
Three lecture hours per week
316 GAME THEORY
The course covers the fundamentals of game theory and its applications to the modeling of competition and cooperation in business, economics, biology and society. It will include twoperson games in strategic form and Nash equilibria, extensive form games, including multistage games, coalition games and the core Bayesian games, mechanism design and auctions.
PREREQUISITE: Math 192, Math 242 and Stat 222
Three lecture hours per week
331 ADVANCED CORPORATE FINANCE FOR ACTUARIES
This course covers various advanced topics in corporate finance, with emphasis on theories of corporate incentives and asymmetric information. Illustrative applications using cases are provided. Topics include: capital budgeting, real options, investment decision using Markowitz and utility theory, the Capital Asset Pricing Model, Arbitrage Pricing Theory, market efficiency and capital structure and dividend policy. Other topics may include time value of money, capital budgeting, cost of capital, security issuance, capital structure, payout policy and dividends, shortterm finance, and risk management. Where suitable, topics are treated from a mathematical and quantitative perspective.
PREREQUISITE: AMS 240 and BUS 231
Three lecture hours per week
341 FINANCIAL ECONOMICS II
This course will discuss advanced mathematical techniques used to price and hedge derivative securities in modern finance. Topics include: modelling, analysis and computations for financial derivative products, including exotic options and swaps in all asset classes. Students will also have the opportunity to apply these derivatives in practice.
PREREQUISITE: AMS 241
Three lecture hours plus a two hour lab per week
351 ACTUARIAL SCIENCE II
This course will discuss: policy values, annual, 1/mthly and continuous cases, Thiele's equation, policy alterations, modified policies and multiple state models. Other topics will include applications in life contingencies, assumptions, Kolmogorov equations, premiums, policy values, multiple decrement models, Joint Life Models, Valuation of insurance benefits on joint lives, and dependent and independent cases.
PREREQUISITE: AMS 251 and STAT 322
Three lecture hours plus a two hour lab per week
373 ADVANCED INSURANCE AND ACTUARIAL PRACTICES
This course is a study of cash flow projection methods for pricing, reserving and profit testing. Topics include: deterministic, stochastic and stress testing; pricing and risk management of embedded options in insurance products; mortality and maturity guarantees for equitylinked life insurance.
PREREQUISITE: AMS 351
Three lecture hours per week
377 COMBINATORIAL OPTIMIZATION
In this course, various algorithms will be considered, including minimum spanning tree, shortest path, maximum flow, and maximum matching. The links with linear and integer programming will also be considered, with particular attention to duality.
PREREQUISITES: Math 242 and AMS 294
Three lecture hours per week
391 MATHEMATICAL MODELLING
This course studies the process of mathematical modeling, namely, formulating a “realworld” problem in mathematical terms, solving the resulting mathematical problem, and interpreting the solution. Major topics include the modeling of optimization problems (using the techniques of linear programming), and deterministic and probabilistic dynamical processes (with models formulated as differential and difference equations). Applications are taken from science, business and other areas, according to class interest.
PREREQUISITE: Math 261 and Math 301; a statistics course is recommended.
Three lecture hours per week
408 FINANCIAL MATHEMATICS II
This course explores calculus in a stochastic environment. Topics include: random functions, derivative, chain rule, integral, integration by parts, partial derivatives, pricing forwards and options. Ito’s lemma and financial applications, HullWhite, ArtznerHeath, and BrennanSchwartz models Martingales, pricing methodology, and riskneutral probability will also be discussed.
PREREQUISITE: Math 261 and AMS 341
Three lecture hours per week
409 FINANCIAL MATHEMATICS III
This course discusses forming riskfree portfolios, the BlackScholes partial differential equation, constant dividend case, exotic options, drift adjustment, and equivalent martingale measures. Topics also include: CoxRossRubinstein, Merton and Vasicek’s models, stochastic optimization, HamiltonJacobiBellman equation, and application to American options.
PREREQUISITE: AMS 408 and STAT 322
Three lecture hours per week
454 LOSS MODELS I
This course explores models for loss severity, parametric models, effect of policy modifications, and tail behaviour. Topics also include: models for loss frequency: (a, b, 0), (a, b, 1), mixed Poisson models; compound Poisson models, Aggregate claims models: moments and moment generating function: recursion and Classical ruin theory.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
455 LOSS MODELS II
This course is a study of the mathematics of survival models and includes some examples of parametric survival models. Topics include: tabular survival models, estimates from complete and incomplete data samples, parametric survival models, and determining the optimal parameters. Maximum likelihood estimators, derivation and properties, product limit estimators, KaplanMeier and NelsonAalen, credibility theory: limited fluctuation; Bayesian; Buhlmann; BuhlmannStraub; empirical Bayes parameter estimation; statistical inference for loss models; maximum likelihood estimation; the effect of policy modifications; and model selection will also be discussed.
PREREQUISITE: AMS 454
Three lecture hours per week
458 CREDIBILITY THEORY
This course is a credibility approach to inference for heterogeneous data; classical, regression and Bayesian models; with illustrations from insurance data.
PREREQUISITE: AMS 351 and STAT 322
Three lecture hours per week
468 NONLINEAR OPTIMIZATION
This course is a study of unconstrained optimization, optimality conditions (necessary, sufficient and KarushKuhnTucker), penalty functions, convex functions, and convex programming.
PREREQUISITE: MATH 291 and AMS 294
Three lecture hours per week
478 QUANTITATIVE RISK MANAGEMENT
This course is an introduction to financial risk management. Topics include: risk measures, modeling for multivariate distributions and copulas, market, credit and operational risk. Advanced topics in quantitative risk management will also be discussed.
PREREQUISITE: AMS 331
Three lecture hours per week
In the School of Mathematical and Computational Sciences, there are five course prefixes:
201 MAPLE TECHNOLOGY LAB
An introduction to the software package MAPLE. Topics include the basic functions and commands, mathematical problem solving using MAPLE, and programming in the internal MAPLE language.
PREREQUISITE: CS 191 AND Math 192
Two lab hours per week for 6 weeks
Semester hours of credit: 1
202 MATLAB TECHNOLOGY LAB
An introduction to the software package Matlab. Topics include the basic functions and commands, programming and problemsolving using Matlab.
PREREQUISITE: CS 191 and Math 261
Two lab hours per week for 6 weeks
Semester hours of credit: 1
203 R TECHNOLOGY LAB
An introduction to the software package R. Topics include the basic functions and commands, programming and problemsolving using R.
PREREQUISITE: CS 191, Stat 222
Two lab hours per week for 6 weeks
Semester hours of credit: 1
204 VISUAL BASIC IN EXCEL TECHNOLOGY LAB
An introduction to the software package Excel and Visual Basic in the Excel environment. Topics include the basic functions and commands, programming and problemsolving using Excel and Visual Basic.
PREREQUISITE: CS 191 and AMS 240
Two lab hours per week for 6 weeks
Semester hours of credit: 1
205 GGY AXIS TECHNOLOGY LAB
An introduction to the software package GGY AXIS. Topics include the basic functions and commands, programming and problemsolving using GGY AXIS.
PREREQUISITE: CS 191 and AMS 251
Two lab hours per week for 6 weeks
Semester hours of credit: 1
284 COOP CAREER SKILLS I
This course offers introductory career skills training to prepare coop students for their first work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 292)
PREREQUISITE: Acceptance into the Mathematical and Computational Sciences Cooperative Education Program.
Semester hours of credit: 0
285 COOP WORK TERM I
This course is a coop students’ first work term. A work term report related to a technical problem/issue within the organization where the student is working is required. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 284 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
305 TUTORING IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
Students are introduced to techniques for facilitating learning in the Mathematical and Computational Sciences, and then put these techniques into practice by mediating student group learning either in introductory Mathematical and Computational Sciences courses, Mathematical and Computational Science Help Centre or in outreach programs to High Schools.
PREREQUISITE: At least 36 semester hours of credit completed in courses in the School of Mathematical and Computational Sciences
Semester hours of credit: 1
332 THEORY OF COMPUTING
This course introduces automata theory, formal languages and computability. Topics include: finite automata; regular expressions; regular, contextfree, and contextsensitive languages; computability models; algorithmic decidable and undecidable problems.
PREREQUISITE: CS 261 and Math 242
Three lecture hours per week
350 QUANTUM INFORMATION
Introduction to quantum information science; the field of studying, storing, processing and communicating information using quantum systems. Topic include quantum mechanics for Qubit Systems, foundations of Quantum Computing, algorithms, communication and cryptography.
PREREQUISITE: Math 262
Three lecture hours per week
384 COOP CAREER SKILLS II
This course offers career skills training to strengthen coop students’ readiness for their second work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 392)
PREREQUISITE: MCS 285
Semester hours of credit: 0
385 COOP WORK TERM II
This course is a coop students’ second work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 384 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
392 NUMERICAL ANALYSIS
Approximate solution of equations, various interpolative or iterative methods, especially Newton’s; convergence tests and rates of convergence; roundoff and truncation errors; propagation of error in calculations; interpolating polynomials; GaussJordan and other methods for simultaneous linear equations; inversion of matrices; determinants and eigenvalues; simultaneous nonlinear equations; evaluation of definite integrals; approximate derivatives; initialvalue ordinary differential equations; leastsquares curve fitting.
PREREQUISITE: Math 301 and CS 191 or equivalent
Three lecture hours per week
395 SPECIAL TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue special topics in Mathematical and Computational Science. Content varies from year to year.
PREREQUISITE: Permission of the instructor
Three lecture hours per week
421 PROFESSIONAL COMMUNICATION AND PRACTICE
This course aims to build students’ oral and written communications skills, and to prepare them for a professional environment. Using examples from their discipline, students will focus on such aspects as description of processes, presentation of data, extended abstracts, correct use of terminology, and sensitivity to language and tone. Discussions of topics relevant to the professional Mathematical and Computational Scientist are also a key part of the course.
PREREQUISITE: At least 36 semester hours of credit completed in the School of Mathematical and Computational Sciences
Three hours per week
442 CRYPTOGRAPHY AND CODES
This course is a study of classic and modern methods of encryption, applications to publickey ciphers, random number generators, attacks on encryption systems, error correcting codes; and computational number theory.
PREREQUISITE: Math 342
Three lecture hours per week
484 COOP CAREER SKILLS III
This course offers career skills training to strengthen coop students’ readiness for their third work term. Students are assessed on a pass/fail basis.
Crosslisted with Business (cf. Business 492)
PREREQUISITE: MCS 385
Semester hours of credit: 0
485 COOP WORK TERM III
This course is a coop students’ third work term. Students will submit a report summarizing their work term achievements. Students are assessed on a pass/fail basis.
PREREQUISITE: MCS 484 or permission of the Academic Director of Cooperative Education.
Three semester hours of credit
486 COOP WORK TERM IV
This optional work term is only available to coop students in the School of Mathematical and Computational Sciences, who elect for a fourth work term. The goal is to add further value for the student, integrating classroom theory with professional skills acquired during the work term.
PREREQUISITE: MCS 485
Semester hours of credit: 0
490 HONOURS PROJECT
This course is intended to give research experience to students planning to pursue graduate studies in an area of Mathematical and Computational Sciences, or planning a career where research experience would be an asset. It provides students with the opportunity to do an independent research project on Mathematical or Computational Sciences topic, under the supervision of a faculty member. Some or all of the work may be done during the summer months.
PREREQUISITE: Acceptance to an Honours program in the School of Mathematical and Computational Sciences (see Calendar listing for entrance requirements)
Semester hours of credit: 6
491 DIRECTED STUDIES IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
These courses are designed and recommended for students in the Mathematical and Computational Sciences to encourage independent initiative and study. Reading and research will be conducted in one or more specialized areas.
(See Academic Regulation 9 for Regulations Governing Directed Studies.)
PREREQUISITE: Permission of the instructor
Three semester hours of credit
495 ADVANCED TOPICS IN MATHEMATICAL AND COMPUTATIONAL SCIENCES
This course provides students with an opportunity to pursue advanced topics in Mathematical and Computational Sciences. Content varies from year to year but is always at a fourthyear level. Prospective students should contact the School of Mathematical and Computational Sciences for a more detailed description of any particular year’s offering.
PREREQUISITE: Permission of the instructor
Three lecture hours per week