Fall 2023
CPSC 447/547: Introduction to Quantum Computing
______________________________
Time: Mondays and Wednesdays, 11:35am - 12:50pm ET
Location: Watson Center (WTS) A30
This course will introduce the fundamental concepts in the theory and practice of quantum computation. Topics covered include information processing, quantum programming, quantum compilation, quantum algorithms, and error correction. The objective of the course is to engage students in applying fresh thinking to what computers can do – we establish an understanding of how quantum computers store and process data, and discover how they differ from conventional digital computers. Students should have taken CPSC 201 and CPSC 202 or their equivalents. Basic familiarity with discrete probability and linear algebra is recommended. Prior experience in quantum computing is useful but not required. We anticipate this course will be of interest to students working in computer science, electrical engineering, physics, or mathematics.
______________________________
Logistics
- Instructor: Yongshan Ding. Office Hour: Mondays 2:05-3PM (Zoom). Detail information is announced on Canvas.
- Course Assistants: Shifan Xu and Dantong Li. Office Hours: Tuesdays 4-5PM (in person or Zoom) and Wednesdays 3-4PM (in person or Zoom). Detail information is announced on Canvas.
- Syllabus (general information): https://www.yongshanding.com/cpsc447-f23
- Canvas (course resources): https://canvas.yale.edu
- Ed Discussion (announcement and Q&A forum): Access through Canvas
- Gradescope (assignments and grades): Access through Canvas
- Yale Course Search (registration): Link
Classes
This course will be an introduction to quantum computing and information. The lectures are divided into several modules with the following tentative topics:
- Module 1. Introduction to the Principles of Quantum Computation
- Quantum Computing – A CS Perspective
- Quantum States: Superposition for Computation
- Quantum Operations and Circuits
- Quantum Entanglement
- Quantum Teleportation
- No-cloning Theorem
- Module 2. Quantum Logic and Programming
- Quantum compiling
- Reversible Logic
- Quantum Oracles
- Module 3. Quantum Algorithms
- Deutsch-Jozsa Algorithm
- Simon's Algorithm and Period Finding
- Quantum Fourier Transform and Shor's Factoring Algorithm
- Grover’s Search Algorithm
- Module 4. Fault-Tolerant Quantum Computation
- Quantum Channels
- Quantum Error Correction with 9-Bit Shor Code
- Classical Coding Theory
- Stabilizer Formalism and CSS Code
- Topological Error Correction
Textbooks and Readings
There is no required textbook for this course. Instead, we have a list of recommended textbooks and some course readings (which will be updated and linked from the schedule below). Recommended textbooks and references:
- D&C: Quantum Computer Systems, by Ding and Chong. Free access on campus or via Yale VPN [link].
- N&C: Quantum Computation and Quantum Information, by Nielsen and Chuang.
Course Assignments
The course grade will be based on five assignments (50%), an in-class midterm exam (25%), and a final exam (25%). Assignments are due on Gradescope (Linked will be provided) at 5:00PM US Eastern Time unless otherwise indicated on the assignment. You may submit up to two days late, with a 50% penalty. Students in CPSC 547 will conduct a programming-intensive project on selected topics and give presentations in class (an additional 10%).
There will be five assignments, roughly bi-weekly. There will be written and/or programming components within each assignment.
- Assignment 1: Basics of Quantum Computation. (10% for CPSC 447, 8% for CPSC 547) · pdf · starter code
- Assignment 2: Advanced Quantum Circuits. (10% for CPSC 447, 8% for CPSC 547) · pdf · starter code
- Assignment 3: Fun with Quantum Algorithms. (10% for CPSC 447, 8% for CPSC 547)
- Assignment 4: Basics of Fault Tolerance. (10% for CPSC 447, 8% for CPSC 547)
- Assignment 5: Quantum Error Correction. (10% for CPSC 447, 8% for CPSC 547)
To facilitate learning, collaboration on the assignments is encouraged. A discussion may take place in a small group (on a whiteboard or on a scratch paper, etc.), but notes or recordings of the discussion are prohibited. All assignments should be written up on one’s own after sufficient time (i.e., at least two hours) has elapsed since any discussion. You must list all your collaborators on every assignment. If you have used external reference materials, please also note this on the assignment. The objective is to demonstrate that you can (re)create a solution on your own. It is prohibited, however, to share solutions or provide hints to other students after you have already arrived at the solution. Take a moment to familiarize yourself with Yale’s Academic Integrity Policy, if you have not done so already. If you have any questions about what does or does not constitute plagiarism, ask! Plagiarism is a serious offense and will not be treated lightly. Fortunately, it is also easy to avoid and if you are careful about giving credit where credit is due you should not run into any problems.
Exams
There are two exams in this course:
- Midterm Exam: A written midterm exam will be held in class on Monday, October 16th. (25%)
- Final Exam: A written final exam will be held in class on Wednesday, December 6th. (25%)
Project (547 Students Only)
Students in CPSC 547 will complete a course project. Details will be released on Ed.
Policies and Wellness
Engagement with the course. There are multiple ways to engage with the course both inside and outside of the classroom:
- Selected course materials (e.g., lecture recordings) will be posted on Canvas to allow students to review at their own pace.
- Hybrid office hours provide the students with flexibility in ways to reach out to the instructor and the course staff.
- Group discussions are integrated into classes to enhance student interactions.
- Students are encouraged to use Ed Discussion to ask questions after class.
Well-being. The well-being of students is important to us at Yale. We know it has been an especially challenging time for many of us over the past year or two, and the university experience can be overwhelming at times. We all rely on support as we navigate during times of struggle. If you or anyone you know are experiencing any stress, anxiety, or isolation, please consider reaching out to a friend, family member, or faculty you trust. If you have a personal emergency that might impact your work in the class, please let Yongshan know so that appropriate arrangements can be made. You may also consider some helpful resources available on campus -- The Good Life Center is the official student wellness center of Yale University and is supported by the Yale Well Initiative.
Schedule
A tentative course schedule can be found below. Please refresh page frequently for updates. All lectures are in WTS A30 unless otherwise indicated.
______________________________
Wednesday, 08/30
Lecture 1: Introduction to QC - a CS perspective · lecture note· lecture slides
Due: None
Readings: Course syllabus, D&C Ch 1
______________________________
Friday, 09/01
Lecture 2: Mathematics toolkit · lecture noteDue: Course welcome survey on Canvas
Readings: N&C Ch 2.1
______________________________
Monday, 09/04
No lecture: Labor DayDue: None
Readings: N&C Ch 2.1
______________________________
Wednesday, 09/06
Lecture 3: From bits to qubits · lecture noteDue: None
Readings: D&C Ch 2.1
______________________________
Monday, 09/11
Lecture 4: Superposition and entanglement · lecture noteDue: None
Readings: D&C Ch 2.2.1-2.2.2
______________________________
Wednesday, 09/13
Lecture 5: Quantum gates and circuits · lecture noteDue: None
Readings: D&C Ch 2.2.4
______________________________
Monday, 09/18
Lecture 6: Measurements · lecture noteDue: None
Readings: D&C Ch 2.2.4
______________________________
Wednesday, 09/20
Lecture 7: Quantum teleportation · lecture noteDue: Assignment 1 at 5:00PM ET on Gradescope
Readings: N&C Ch 1.3.7, D&C Ch 6.3.3
______________________________
Monday, 09/25
Lecture 8: Quantum compiling · lecture noteDue: None
Readings: D&C Ch 6.1-6.3
______________________________
Wednesday, 09/27
Lecture 9: Quantum compiling II · lecture noteDue: None
Readings: N&C Appendix 3
______________________________
Monday, 10/02
Lecture 10: Reversible logic and oracles · lecture noteDue: None
Readings: D&C Ch 6.4.3 and Ch 3.1
______________________________
Wednesday, 10/04
Lecture 11: Deutsch-Jozsa, Bernstein-Vazirani · lecture noteDue: Assignment 2 at 5:00PM ET on Gradescope
Readings: D&C Ch 3.2
______________________________
Monday, 10/09
Lecture 12: Simon's algorithm · lecture noteDue: Mid-Semester Feedback on Canvas
Readings: N&C Ch 5.4.3
______________________________
Wednesday, 10/11
Lecture 13: Quantum Fourier transform · lecture noteDue: None
Readings: N&C Ch 5.1
______________________________
Monday, 10/16
In class: Midterm exam at 11:35AM ETDue: None
Readings: None
______________________________
Wednesday, 10/18
No Lecture: October RecessDue: None
______________________________
Monday, 10/23
Lecture 14: RSA and Shor's factoring algorithm · lecture noteDue: None
Readings: N&C Ch 5.3.1-5.3.2
______________________________
Wednesday, 10/25
Lecture 15: Grover's search algorithm · lecture noteDue: None
Readings: N&C Ch 6.1
______________________________
Monday, 10/30
Lecture 16: Grover's search algorithm II · lecture noteDue: None
Readings: N&C Ch 6.1
______________________________
Wednesday, 11/01
Lecture 17: Basics of quantum error correctionDue: Assignment 3 at 5:00PM ET on Gradescope
Readings: D&C Ch 2.3
______________________________
Monday, 11/06
Lecture 18: Noisy quantum states and density operators · lecture noteDue: None
Readings: N&C Ch 8.3-8.4
______________________________
Wednesday, 11/08
Lecture 19: Error channels · lecture noteDue: None
Readings: N&C Ch 10.1-10.3
______________________________
Monday, 11/13
Lecture 20: Implementing quantum error correction · lecture noteDue: None
Readings: N&C Ch 10.1-10.3
______________________________
Wednesday, 11/15
Lecture 21: Classical error correcting codes · lecture noteDue: Assignment 4 at 5:00PM ET on Gradescope
Readings: N&C Ch 10.4
______________________________
Monday, 11/20
No Lecture: November recessDue: None
______________________________
Wednesday, 11/22
No Lecture: November recessDue: None
Readings: None
______________________________
Monday, 11/27
Lecture 22: Stabilizer formalism · lecture noteDue: None
Readings: N&C Ch 10.5
______________________________
Wednesday, 11/29
Lecture 23: Stabilizer Codes and Normailizers · lecture noteDue: Assignment 5 at 5:00PM ET on Gradescope
Readings: None
______________________________
Monday, 12/04
Lecture 24: Logical Operations· lecture noteDue: None
Readings: None
______________________________
Wednesday, 12/06
In class: Final exam 11:35AM ET