CMPT 476/776: Introduction to Quantum Algorithms (Spring 2026)
Quantum computing is a computational paradigm which utilizes quantum mechanical effects at the physical level to process information. By using these quantum effects we can solve certain problems faster than the best known classical methods, such as factorizing integers, simulating quantum mechanical systems, and solving some linear systems. Since the advent of such algorithms in the 90's, researchers in computing science, mathematics, physics, chemistry, engineering, and other fields have been attempting to not only build quantum computers but also to understand their power.
This course offers an introductory treatment to the field of quantum information and computation with an emphasis on algorithms. We will examine how these quantum algorithms work, as well as their implications on computational complexity and issues and techniques relating to their physical realization.
Updates
- Jan. 25 - Assignment 2 posted, due Thurs Feb. 5th at 11:59 on crowdmark. Starter code for coding problem is here.
- Jan. 22 - Assignment 0 solutions posted.
- Jan. 18 - Assignment 1 correction --- q3.3 should be |0> + e^{-ipi/4}|1> instead of |0> + e^{ipi/4}|1>. The pdf has been updated with the correction.
- Jan. 9 - Assignment 1 posted, due Thurs 22nd at 11:59pm on crowdmark.
- Jan. 8 - Assignment 0 posted (not graded, for review of prerequisites).
- Jan. 5 - Page created.
Course information
| Instructor: |
Matt Amy |
| Email: |
matt_amy at sfu.ca |
| Office: |
TASC1 9429 |
| TAs: |
Kevin Ye (yekeviny at sfu.ca) |
|
Sara Babaee Khanehsar (sara_babaee_khanehsar at sfu.ca) |
| Classes: |
We 1:30-2:20 (C 9002) |
|
Fr 12:30-2:20 (AQ 3149) |
| Office hours: |
WeFr 2:20-3:30 - Matt (outside of classroom or TASC1 9429) |
|
Tues 4:00-5:00 - Sara (ASB 9814) |
|
Thurs 3:30-4:30 - Kevin (ASB 9814) |
| Materials: |
Course notes (posted to the schedule) |
| Discussion forum: |
https://piazza.com/sfu.ca/spring2026/cmpt476/home |
Tentative schedule
| Date |
Topic(s) |
Materials |
Additional references |
| Jan. 7 |
Introduction to course & QC |
Lecture 1 |
KLM §1.1, §1.2, §1.6 |
| Jan. 9 |
Classical, probabilistic, and quantum circuits |
Lecture 2, Lecture 3 |
KLM §1.3, §1.4, §2.1, §2.2, §3.1, §3.4 |
| Jan. 14 |
Quantum state evolution |
Lecture 4 |
KLM §2.3, §3.2 |
| Jan. 16 |
More about qubit states |
Lecture 5, Lecture 6 |
|
| Jan. 21 |
Composite systems |
Lecture 6 |
KLM §2.6, §3.3 |
| Jan. 23 |
Spooky Action at a Distance |
Lecture 7, Lecture 8 |
KLM §3.4 |
| Jan. 28 |
More measurements |
Lecture 9 |
KLM §3.4 cont., §3.5 |
| Jan. 30 |
Mixed states and Density matrices |
Lecture 9 cont. |
KLM §3.5 cont. |
| Feb. 4 |
Superdense coding and Bell basis measurements |
Lecture 11 |
KLM §5.1 |
| Feb. 6 |
<Quantum teleportation and the No-Cloning theorem |
Lecture 12 |
KLM §5.2 |
| Feb. 11 |
|
|
|
| Feb. 13 |
|
|
|
| Feb. 18-20 |
No class - reading week |
|
|
| Feb. 25 |
|
|
|
| Feb. 27 |
|
|
|
| Mar. 4 |
|
|
|
| Mar. 6 |
|
|
|
| Mar. 11 |
|
|
|
| Mar. 13 |
|
|
|
| Mar. 18 |
|
|
|
| Mar. 20 |
|
|
|
| Mar. 25 |
|
|
|
| Mar. 27 |
|
|
|
| Apr. 1 |
|
|
|
| Apr. 3 |
No class - Good Friday |
|
|
| Apr. 8 |
|
|
|
| Apr. 10 |
|
|
|
Topics
- Quantum mechanics
- Quantum information
- Gate-model quantum computation
- Key quantum algorithms
- Quantum error correction and Fault Tolerance
- Physical realization of quantum computation
- Additional topics such as hybrid algorithms and NISQ (noisy, intermediate-scale quantum) computing, as per class interest
Prerequisites
As quantum computing is an interdiscplinary field involving computer science, mathematics, and physics, the only formal requirements are satisfactory performance in linear algebra, which the course will rely upon heavily. Experience with topics such as algorithms, complexity, abstract algebra, and quantum mechanics will all be assets, but are not required. It is expected that students will encounter some topics with which they have very little familiarity.
Course goals
By the end of this course, students should understand the basic model of quantum information and computation, key quantum protocols and algorithms, and leave with a broad knowledge of how such algorithms are implemented and what the primary challenges in doing so are, from their high-level mathematical expression down to the physical realization.
Evaluation
- 50% final exam
- 25% midterm exam
- 25% assignments
Tentative dates
- Assignment 0 (Solutions) (Not graded) (out Jan. 7).
- Assignment 1 due Jan. 22 (out Jan. 9)
- Assignment 2 (starter code) due Feb. 5 (out Jan. 23)
- Midterm exam Feb. 27th (in class)
- Assignment 3 due Mar. 12 (out Feb. 27)
- Assignment 4 due Mar. 26 (out Mar. 13)
- Assignment 5 due Apr. 9 (out Mar. 27)
Additional resources
Introductory quantum computing materials
We will mostly be following Kaye, Laflamme, and Mosca's
An Introduction to Quantum Computing (KLM), but it is not required. Mermin's
Quantum Computer Science is of a very similar flavour and freely available in the form of lecture notes
here.
Other great resources:
- Richard Josza's lecture notes (Very comprehensive with extensive introduction to the basics)
- Ashley Montanaro's lecture notes (Short and sweet but assumes some basic knowledge of quantum information)
- John Preskill's lecture notes (Good fault tolerance reference, Physics oriented)
- Ronald de Wolf's lecture notes (Haven't read but I've heard good things about)
- Nielsen & Chuang, Quantum Information and Computation (Classic reference textbook for quantum computation)
Practice problems
Many students find additional exercises helpful for this course. Below are links to publicly available problem sets from other instructor's courses. Note that I haven't gone through all the problem sets myself so they may be more or less relevant --- the list is largely predicated on the assumption that undergraduate introductory quantum computing courses cover generally similar material to this one.
Previous offerings