CMPT 340 - Discrete Structures & Computing | 2025-2026

This is a second course in the topics of pure mathematics, particularly those most commonly used in the study of computing science and related applications. It includes proof techniques, models of computation, formal languages, analysis of algorithms, trees and advanced general graph theory with applications, finite state and automata theory, encryption, and an elementary introduction to mathematical structures such as groups, rings, and fields.

CMPT 330 - Numerical Analysis | 2025-2026

This course covers numerical techniques for solving problems in applied mathematics, including error analysis, roots of equations, interpolation, numerical differentiation and integration, ordinary differential equations, matrix methods and selected topics from among: eigenvalues, approximation theory, non-linear systems, boundary-value problems, numerical solution of partial differential equations.

CMPT 166 - Introduction to Computing Science & Programming II | 2025-2026

A rigorous introduction to computing science and computer programming. Students will learn in- depth programming concepts by seeing how object oriented (OO) concepts are employed in the design and writing of code in a variety of notations. The emphasis is on the theory of OO programming and design of solutions, as well as implementation using an OO language such as Java or C++.