CS 498QC: Introduction to Quantum Computing
(Fall 2023)

Course Information

Instructors: Makrand Sinha (msinha@illinois.edu) and Dakshita Khurana (dakshita@illinois.edu)

Credits: 3/4

TA: Ruta Jawale (jawale2@illinois.edu)

Time: Tuesdays and Thursdays 3:30 - 4:45 pm

Location: 3101 Sidney Lu Mechanical Engineering Building

Office Hours: Dakshita (Thursday 1-2pm on zoom), Ruta (Tuesday 2-3pm in Siebel 4102) or by appointment

Discussion Forum: Ed Discussion. You will automatically be enrolled based on your @illinois.edu email. All course announcenments, policies, discussions and homeworks will be available only on Ed Discussion. Instead of sending emails, students are encouraged to send direct messages to the course staff via the chat feature on Ed Discussion. If you sign up late, please send an email to msinha@illinois.edu to be enrolled in Ed Discussion and Gradescope.

Homework Submission: Gradescope

Course Description

This course aims to introduce the principles of quantum computing, laying a solid foundation for further advanced courses or research in quantum information. We will tentatively cover the following topics:

This course will take a theoretical computer science perspective on quantum computing. A background in quantum physics is not required, although it can be helpful.


This will be a challenging theory course and a solid understanding of linear algebra, discrete math, probability theory, and algorithms and models of computation is important. In particular, a good background and comfort in the topics covered in CS 374 will be assumed.

Tentative Schedule (subject to changes)

Date Topic Notes Additional Resources
08/22 Overview of the field, what is a qubit? slides, notes linear algebra review
08/24 Single-qubit states, measurements,
braket notation
notes Ryan O' Donnell's lecture
08/29 Measurements (contd), global vs relative phase,
Elitzur-Vaidman tester, quantum operations
notes Ryan's lecture
08/31 Elitzur-Vaidman tester (contd),
multi-qubit systems
notes Ryan's Lectures on Elitzur-Vaidman puzzle and multi-qubit systems
09/05 Multi-qubit systems (contd),
quantum circuits, entanglement
notes Ryan's Lecture on quantum circuits and entanglement
09/07 Partial measurements, EPR paradox notes Ryan's Lecture
09/12 Bell's theorem, CHSH game notes Ryan's Lecture
09/14 No-cloning, teleporation notes Ryan's Lecture
09/19 Holevo's Theorem, basics of quantum computation notes Ryan's Lecture on basics of quantum computation
09/21 Uncomputing garbage, universal gate sets,
Deutsch's algorithm
notes Ryan's Lecture on Uncomputing Garbage and Henry Yuen's Lecture on Universal gate sets and Deutsch's algorithm
09/26 Programming quantum algorithms, Simon's problem demo,
Ryan's Lecture on Simon's problem
09/28 Simon's problem (contd), Quantum Fourier Transform notes Ryan's Lecture on Quantum Fourier Transform
10/03 Period finding modulo N notes Chapter 20 in Scott's lecture notes
10/05 RSA and Shor's factoring algorithm notes Chapters 19-21 in Scott's lecture notes
10/10 No class (Project Proposals)    
10/12 No class (Project Proposals)    
10/17 Grover's search algorithm notes Ryan's Lecture on Grover Search
10/19 Grover's search wrap-up notes Ryan's Lecture on Grover Search
10/24 Lower bounds on search notes Chapter 2 in Dorit's notes
10/26 Mixed states notes Ryan's Lecture on Mixed States 
10/31 Quantum cryptography - I: Wiesner encodings, money notes Chapter 8 in Scott's lecture note
11/02 Quantum cryptography - II: Quantum Key Distribution notes Lectures 10, 11, 12 here
11/07 Quantum error correction - I notes Chapter 20 in Scott's lecture notes
11/09 Quantum error correction - II notes Chapter 20 in Scott's lecture notes
11/14 Quantum tomography, quantum advantage notes  
11/16 Hamiltonians, quantum complexity notes Chapters 9 and 13 in Ronald de Wolf's Lecture Notes
11/21 Fall break    
11/23 Fall break    
11/28 Final Review sample  
11/30 Project Presentations    
12/05 Project Presentations    

Additional Resources

Grading Policy