1.目标及所需学分

✅-已修学分

📝-已规划学分

❗-待规划学分

Computer Science (Bachelor of Mathematics Honours)

  • Complete all of the following
    • Complete all the following:
      • CS136L - Tools and Techniques for Software Development (0.25)
      • CS341 - Algorithms (0.50)
      • CS350 - Operating Systems (0.50)
    • Complete 1 of the following:
      • AMATH242 - Introduction to Computational Mathematics (0.50)
      • 📝CS370 - Numerical Computation (0.50)
      • CS371 - Introduction to Computational Mathematics (0.50)
    • Complete 1 of the following:
      • CS240 - Data Structures and Data Management (0.50)
      • 📝CS240E - Data Structures and Data Management (Enriched) (0.50)
    • Complete 1 of the following:
      • CS241 - Foundations of Sequential Programs (0.50)
      • 📝CS241E - Foundations of Sequential Programs (Enriched) (0.50)
    • Complete 1 of the following:
      • CS245 - Logic and Computation (0.50)
      • 📝CS245E - Logic and Computation (Enriched) (0.50)
    • Complete 1 of the following:
      • CS246 - Object-Oriented Software Development (0.50)
      • 📝CS246E - Object-Oriented Software Development (Enriched) (0.50)
    • Complete 1 of the following:
      • 📝CS251 - Computer Organization and Design (0.50)
      • CS251E - Computer Organization and Design (Enriched) (0.50)
    • Complete 1 of the following:
      • CS360 - Introduction to the Theory of Computing (0.50)
      • CS365 - Models of Computation (0.50)
    • Complete 1 of the following:
      • MATH237 - Calculus 3 for Honours Mathematics (0.50)
      • 📝MATH247 - Calculus 3 (Advanced Level) (0.50)
    • ✅Complete 1 of the following:
      • MATH239 - Introduction to Combinatorics (0.50)
      • MATH249 - Introduction to Combinatorics (Advanced Level) (0.50)
    • Complete 1 additional CS course chosen from CS340-CS398, CS440-CS489
    • Complete 2 additional CS courses chosen from CS440-CS489.
    • Complete 3 additional courses from: ACTSC, AMATH, CO, PMATH, STAT (see Additional Constraints)
    • The following cannot be used towards this academic plan:
      • ACTSC221 - Introductory Financial Mathematics (Non-Specialist Level) (0.50)
      • CO353 - Computational Discrete Optimization (0.50)
      • CO380 - Mathematical Discovery and Invention (0.50)
      • CO480 - History of Mathematics (0.50)
    • Complete 1 additional course from the options in List 1
    • Complete a total of 5.0 units of non-math courses satisfying the Breadth and Depth Requirement listed under Graduation Requirements
  • List 1
    • Complete 1 of the following
      • Choose any of the following:
        • CO487 - Applied Cryptography (0.50)
        • CS499T - Honours Thesis (0.50)
        • STAT440 - Computational Inference (0.50)
      • Choose any course from the following: CS440-CS498, any CS course at the 600- or 700-level (see Additional Constraints)

Artificial Intelligence Specialization

  • Complete all of the following
    • Complete all the following:
      • CS486 - Introduction to Artificial Intelligence (0.50)
      • CS492 - The Social Implications of Computing (0.50)
    • Complete 1 of the following:
      • CS480 - Introduction to Machine Learning (0.50)
      • CS485 - Statistical and Computational Foundations of Machine Learning (0.50)
    • Complete 4 of the following:
      • BIOL487 - Computational Neuroscience (0.50)
      • CO367 - Nonlinear Optimization (0.50)
      • CO456 - Introduction to Game Theory (0.50)
      • CO463 - Convex Optimization and Analysis (0.50)
      • CO466 - Continuous Optimization (0.50)
      • CS452 - Real-Time Programming (0.50)
      • CS479 - Neural Networks (0.50)
      • CS480 - Introduction to Machine Learning (0.50)
      • CS484 - Computational Vision (0.50)
      • CS485 - Statistical and Computational Foundations of Machine Learning (0.50)
      • ECE380 - Analog Control Systems (0.50)
      • ECE423 - Embedded Computer Systems (0.50)
      • ECE457C - Reinforcement Learning (0.50)
      • ECE481 - Digital Control Systems (0.50)
      • ECE486 - Robot Dynamics and Control (0.50)
      • ECE488 - Multivariable Control Systems (0.50)
      • ECE495 - Autonomous Vehicles (0.50)
      • MTE544 - Autonomous Mobile Robots (0.50)
      • SE380 - Introduction to Feedback Control (0.50)
      • STAT341 - Computational Statistics and Data Analysis (0.50)
      • STAT440 - Computational Inference (0.50)
      • STAT441 - Statistical Learning - Classification (0.50)
      • STAT444 - Statistical Learning - Advanced Regression (0.50)
      • SYDE552 - Computational Neuroscience (0.50)
      • SYDE556 - Simulating Neurobiological Systems (0.50)
      • SYDE572 - Introduction to Pattern Recognition (0.50)

Combinatorics and Optimization (Bachelor of Mathematics Honours)

  • Complete all of the following
    • Complete 1 of the following:
      • CO250 - Introduction to Optimization (0.50)
      • 📝CO255 - Introduction to Optimization (Advanced Level) (0.50)
    • Complete 1 of the following:
      • CO330 - Combinatorial Enumeration (0.50)
      • CO342 - Introduction to Graph Theory (0.50)
    • Complete 1 of the following
      • Complete 1 of the following:
        • CO351 - Network Flow Theory (0.50)
        • CO353 - Computational Discrete Optimization (0.50)
        • CO367 - Nonlinear Optimization (0.50)
      • Complete all of the following
        • If CO255 is taken, the following courses can be used towards this requirement:
        • Complete 1 of the following:
          • CO450 - Combinatorial Optimization (0.50)
          • CO452 - Integer Programming (0.50)
          • CO454 - Scheduling (0.50)
          • CO456 - Introduction to Game Theory (0.50)
          • CO459 - Topics in Optimization (0.50)
          • CO463 - Convex Optimization and Analysis (0.50)
          • CO466 - Continuous Optimization (0.50)
          • CO471 - Semidefinite Optimization (0.50)
    • ✅Complete 1 of the following:
      • MATH239 - Introduction to Combinatorics (0.50)
      • MATH249 - Introduction to Combinatorics (Advanced Level) (0.50)
    • Complete 1 of the following:
      • PMATH336 - Introduction to Group Theory with Applications (0.50)
      • PMATH347 - Groups and Rings (0.50)
    • Complete 3 of the following:
      • CO330 - Combinatorial Enumeration (0.50)
      • CO331 - Coding Theory (0.50)
      • CO342 - Introduction to Graph Theory (0.50)
      • CO351 - Network Flow Theory (0.50)
      • CO353 - Computational Discrete Optimization (0.50)
      • CO367 - Nonlinear Optimization (0.50)
      • CO430 - Algebraic Enumeration (0.50)
      • CO431 - Symmetric Functions (0.50)
      • CO432 - Information Theory and Applications (0.50)
      • CO434 - Combinatorial Designs (0.50)
      • CO439 - Topics in Combinatorics (0.50)
      • CO440 - Topics in Graph Theory (0.50)
      • CO442 - Graph Theory (0.50)
      • CO444 - Algebraic Graph Theory (0.50)
      • CO446 - Matroid Theory (0.50)
      • CO450 - Combinatorial Optimization (0.50)
      • CO452 - Integer Programming (0.50)
      • CO454 - Scheduling (0.50)
      • CO456 - Introduction to Game Theory (0.50)
      • CO459 - Topics in Optimization (0.50)
      • CO463 - Convex Optimization and Analysis (0.50)
      • CO466 - Continuous Optimization (0.50)
      • CO471 - Semidefinite Optimization (0.50)
      • CO481 - Introduction to Quantum Information Processing (0.50)
      • CO485 - The Mathematics of Public-Key Cryptography (0.50)
      • CO486 - Topics in Quantum Information (0.50)
      • CO487 - Applied Cryptography (0.50)
      • CS467 - Introduction to Quantum Information Processing (0.50)
      • PHYS467 - Introduction to Quantum Information Processing (0.50)
    • Complete 2 additional courses at the 300- or 400-level from: ACTSC, AMATH, CS, MATBUS, MATH, PMATH, STAT; excluding courses cross-listed with a CO course
    • Complete 1 additional course at the 300- or 400-level from: ACTSC, AMATH, CO, CS, MATBUS, MATH, PMATH, STAT
    • Complete 3 additional courses from: ACTSC, AMATH, CO, CS, MATBUS, MATH, PMATH, STAT
    • Complete all of the following
      • Complete 3 courses from the following choices:
      • Choose any of the following:
        • CS462 - Formal Languages and Parsing (0.50)
        • CS466 - Algorithm Design and Analysis (0.50)
        • CS487 - Introduction to Symbolic Computation (0.50)
      • Complete no more than 1 from the following:
        • AMATH331 - Applied Real Analysis (0.50)
        • PMATH331 - Applied Real Analysis (0.50)
        • PMATH333 - Introduction to Real Analysis (0.50)
        • PMATH351 - Real Analysis (0.50)
      • Complete no more than 1 from the following:
        • AMATH332 - Applied Complex Analysis (0.50)
        • PMATH332 - Applied Complex Analysis (0.50)
        • PMATH352 - Complex Analysis (0.50)
      • Complete no more than 1 from the following:
        • MATH237 - Calculus 3 for Honours Mathematics (0.50)
        • 📝MATH247 - Calculus 3 (Advanced Level) (0.50)
      • Complete no more than 1 from the following:
        • PMATH334 - Introduction to Rings and Fields with Applications (0.50)
        • PMATH348 - Fields and Galois Theory (0.50)
      • Complete no more than 1 from the following:
        • PMATH340 - Elementary Number Theory (0.50)
        • PMATH440 - Analytic Number Theory (0.50)
        • PMATH441 - Algebraic Number Theory (0.50)

Pure Mathematics (Bachelor of Mathematics Honours)

  • Complete all of the following
    • Complete all the following:
      • PMATH347 - Groups and Rings (0.50)
      • PMATH348 - Fields and Galois Theory (0.50)
      • PMATH351 - Real Analysis (0.50)
      • PMATH352 - Complex Analysis (0.50)
      • PMATH450 - Lebesgue Integration and Fourier Analysis (0.50)
    • Complete 1 of the following:
      • MATH237 - Calculus 3 for Honours Mathematics (0.50)
      • 📝MATH247 - Calculus 3 (Advanced Level) (0.50)
    • ✅Complete 1 of the following:
      • MATH239 - Introduction to Combinatorics (0.50)
      • MATH249 - Introduction to Combinatorics (Advanced Level) (0.50)
    • Complete 1 of the following:
    • Complete 3 additional PMATH courses at the 400-level
    • Complete 2 additional math courses at the 400-level from the following subject codes: ACTSC, AMATH, CO, CS, MATBUS, MATH, PMATH, STAT

Bachelor of Mathematics Degree Requirements

  • Complete all of the following
    • ✅Undergraduate Communication Requirement
      • ✅Complete one of the following options:
        • ✅Complete two courses from List 1.
          • ✅EMLS101R
        • ✅Complete one course from List 1 and one course from List 2.
          • ✅EMLS103R
    • Co-operative Education Program Requirements
      • Complete a minimum of five credited work terms:
        • A minimum of three must be standard work terms.
      • Complete a minimum of five Professional Development (PD) courses:
        • ✅PD1: Must be taken in an academic term prior to the first work term.
        • 📝PD11: Must be taken during the first work term.
        • Three additional PD courses: To be taken during each work term until the requirement is complete.
          • For Computer Science (BMath) students, one of those PD courses must be PD10.
    • Additional Course Requirements
      • Complete all of the following
        • ✅Complete 1 of the following:
          • CS115 - Introduction to Computer Science 1 (0.50)
          • CS135 - Designing Functional Programs (0.50)
          • CS145 - Designing Functional Programs (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • CS116 - Introduction to Computer Science 2 (0.50)
          • CS136 - Elementary Algorithm Design and Data Abstraction (0.50)
          • CS146 - Elementary Algorithm Design and Data Abstraction (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • MATH106 - Applied Linear Algebra 1 (0.50)
          • MATH136 - Linear Algebra 1 for Honours Mathematics (0.50)
          • MATH146 - Linear Algebra 1 (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • MATH127 - Calculus 1 for the Sciences (0.50)
          • MATH137 - Calculus 1 for Honours Mathematics (0.50)
          • MATH147 - Calculus 1 (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • MATH128 - Calculus 2 for the Sciences (0.50)
          • MATH138 - Calculus 2 for Honours Mathematics (0.50)
          • MATH148 - Calculus 2 (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • MATH135 - Algebra for Honours Mathematics (0.50)
          • MATH145 - Algebra (Advanced Level) (0.50)
        • Complete 1 of the following:
          • MATH235 - Linear Algebra 2 for Honours Mathematics (0.50)
          • 📝MATH245 - Linear Algebra 2 (Advanced Level) (0.50)
        • ✅Complete 1 of the following:
          • MATH237 - Calculus 3 for Honours Mathematics (0.50)
          • MATH239 - Introduction to Combinatorics (0.50)
          • MATH247 - Calculus 3 (Advanced Level) (0.50)
          • MATH249 - Introduction to Combinatorics (Advanced Level) (0.50)
        • Complete 1 of the following:
          • STAT230 - Probability (0.50)
          • 📝STAT240 - Probability (Advanced Level) (0.50)
        • Complete 1 of the following:
          • STAT231 - Statistics (0.50)
          • 📝STAT241 - Statistics (Advanced Level) (0.50)

2.课程规划

1A (2023 Fall)

1B (2024 Winter)

WT1 (2024 Spring)

2A (2024 Fall)

2B (2025 Winter)


Hello, world!