i Please note:
To view the current calendar, go to
Mathematics and Computing Science Courses
MACM 101 - Discrete Mathematics I (3)
Introduction to counting, induction, automata theory, formal reasoning, modular arithmetic. Prerequisite: BC Math 12 (or equivalent), or any of MATH 100, 150, 151, 154, 157. Quantitative/Breadth-Science.
MACM 201 - Discrete Mathematics II (3)
A continuation of MACM 101. Topics covered include graph theory, trees, inclusion-exclusion, generating functions, recurrence relations, and optimization and matching. Prerequisite: MACM 101. Quantitative.
MACM 202 - Mathematical Modeling and Computation (4)
A variety of continuous and discrete models such as difference equations, differential equations, networks, cellular automata, and fractals are introduced. Students will develop mathematical models for physical phenomena, and use the computer to simulate and analyze the models. A mathematical software package, such as Maple or Matlab, will be extensively used in a laboratory setting. Prerequisite: MATH 152 (or MATH 155 or 158), and CMPT 125 (or CMPT 101 or 104 or 126) and MATH 240 or 232 (co-requisite). Quantitative.
MACM 203 - Computing with Linear Algebra (2)
Development of computer models that analyze and illustrate applications of linear algebra. Topics include: large-scale matrix calculations, experiments with cellular automata, population models, data fitting and optimization, image analysis. Prerequisite: One of CMPT 125, 126 or 128 and one of MATH 150, 151, 154, or 157. Students in excess of 75 units may not take MACM 203 for further credit. MATH 232 or 240 (can be taken as corequisite). Quantitative.
MACM 204 - Computing with Calculus (2)
Development of computer models that analyze and illustrate applications of multi-variable calculus. Topics include: 3D visualization of curves and surfaces, disease spread models, multi-dimensional optimization and probability models. Prerequisite: One of CMPT 125, 126 or 128. Students in excess of 75 units may not take MACM 204 for further credit. MATH 251 (can be taken as a corequisite). Quantitative.
MACM 300 - Introduction to Formal Languages and Automata with Applications (3)
Languages, grammars, automata and their applications to natural and formal language processing. Prerequisite: MACM 201. Quantitative.
MACM 316 - Numerical Analysis I (3)
A presentation of the problems commonly arising in numerical analysis and scientific computing and the basic methods for their solutions. Prerequisite: MATH 152 or 155 or 158, and MATH 232 or 240, and computing experience. Quantitative.
MACM 401 - Introduction to Computer Algebra (3)
A first course in computer algebra also called symbolic computation. It covers data-structures and algorithms for mathematical objects, including polynomials, general mathematical formulae, long integer arithmetic, polynomial greatest common divisors, the Risch integration algorithm. Other topics include symbolic differentiation, simplification of formulae, and polynomial factorization. Students will learn Maple for use on assignments. Prerequisite: CMPT 307 or MATH 332 or MATH 340. Quantitative.
MACM 409 - Numerical Linear Algebra: Algorithms, Implementation and Applications (3)
Development of numerical methods for solving linear algebra problems at the heart of many scientific computing problems. Mathematical foundations for the use, implementation and analysis of the algorithms used for solving many optimization problems and differential equations. Prerequisite: MATH 251, MACM 316, programming experience. Quantitative.
MACM 416 - Numerical Analysis II (3)
The numerical solution of ordinary differential equations and elliptic, hyperbolic and parabolic partial differential equations will be considered. Prerequisite: MATH 310 and MACM 316. Quantitative.
MACM 442 - Cryptography (3)
An introduction to the subject of modern cryptography. Classical methods for cryptography and how to break them, the data encryption standard (DES), the advanced encryption standard (AES), the RSA and ElGammal public key cryptosystems, digital signatures, secure hash functions and pseudo-random number generation. Algorithms for computing with long integers including the use of probabilistic algorithms. Prerequisite: (CMPT 201 or 225) and one of (MATH 340 or 332 or 342); or CMPT 405. Students with credit for MACM 498 between Fall 2003 and Spring 2006 may not take this course for further credit. Quantitative.
MACM 498 - Special Topics in Mathematics and Computing Science (3)
Topics will vary from term to term depending on faculty availability and student interest. Prerequisite: Will be specified according to the particular topics offered under this course number.