Lecture date |
Topics |
Notes |
Jan 9 |
Syllabus, bit, qubit, and single qubit gates |
Lecture note |
Jan 11 |
Two qubit states, bell states, two qubit gates, Clifford gate set, Clifford+T |
Lecture note, Gottesman's paper on Gottesman-Knill Theorem, Nielsen and Chuang (Chapter 4.5) covers universal quantum gates in details, Nielsen and Chuang (Chapter 10.5.1-10.5.4) also covers Gottesman-Knill Theorem. Homework 1 is available here. |
Jan 16 |
Teleportation circuit, delay measurement principle, constructing Toffoli gate |
Lecture note, the construction of Toffoli gate is based on Selinger's paper. |
Jan 18 |
Constructing Toffoli gate, T-gate via T-state, measurement and discard |
Lecture note, Bravyi and Kitaev's
paper on magic
state distillation. |
Jan 23 |
Simple types, lambda expressions, simply typed lambda calculus |
Lecture note.
History of Church-Turing thesis from wiki, the
"Church definition of "effectively calculable"" section mentions Church's work on lambda calculus related computability.
Related reading: Chapter 1-2 from Selinger's book "Lecture Notes on the Lambda Calculus".
|
Jan 25 |
Unit type, Empty type and Sum type, Curry-Howard correspondence |
Lecture note.
A proof of type preservation is available from Chapter 9.2-9.4
in Benjamin Pierce's book "Types and Programming language" (There is an online version from UofSC's library),
and the normalization proof is in Chapter 12 of the same book.
Related reading: Chapter 6 from Selinger's book "Lecture Notes on the Lambda Calculus".
Homework 2 is available here.
|
Jan 30 |
Programming Computable Functions (PCF), programming with fixpoints |
Lecture note.
Related reading: Chapter 11.1-11.3. from Selinger's book "Lecture Notes on the Lambda Calculus".
|
Feb 1 |
Linear typing rules, Parameter contexts, linear function type, tensor product type |
Lecture note.
|
Feb 6 |
Adding unitary operations, initialization and measurement, evaluation rules |
Lecture note.
|
Feb 8 |
Evaluation rules (continued), examples of a bell state and its measurement |
Lecture note.
|
Feb 13 |
Haskell 101, simply typed lambda calculus in Haskell |
Haskell program, command line log.
Recommended reading: Learn You a Haskell for Great Good!
|
Feb 15 |
Quipper 101, bell state, bell measurement, teleportation in Quipper |
Program file.
Quipper documentation is available here.
Recommended readings: An Introduction to Quantum Programming in Quipper,
Quipper: A scalable quantum programming language.
Homework 3 is available here.
|
Feb 20 |
Multi-qubits teleportation, GHZ states, with-computed pattern |
Program file.
|
Feb 22 |
Bit addition, carry and 2-bit addition discussion |
Program file and Short note.
|
Feb 27 |
Bit addition with linearly many ancillas |
Program file. Related reading: A new quantum ripple-carry addition circuit by Cuccaro et. al. 2004.
|
Feb 29 |
QFT addition |
Lecture note. Related reading: Addition on a Quantum Computer by Thomas G. Draper.
Homework 4 is available here.
|
March 12 |
QFT addition in Quipper |
Program file.
|
March 14 |
Qiskit 101 |
Program file 1,
Program file 2. Qiskit documentation
is available here.
|
March 19 |
Toffoli construction in Qiskit |
Program file.
|
March 21 |
Phase kickback, reflection about mean |
Lecture note.
Related reading: A fast quantum mechanical algorithm for database search by Lov K. Grover.
|
March 26 |
Flip and reflection in Python, construction of the reflection-about-mean circuit |
Lecture note, Python program.
Related reading: An Introduction to Quantum Computing (Chapter 8.2) by Kaye, Laflamme and Mosca. Freely available online via
UofSc library. Homework 5 is available from here.
|
March 28 |
N-fold controlled not, an example of Grover's algorithm in Qiskit |
Program file.
|
April 2 |
ZX-diagram 101: spiders and structural maps |
Lecture note.
Related reading: Interacting Quantum Observables: Categorical Algebra and Diagrammatics by Bob Coecke and Ross Duncan,
ZX-calculus for the working quantum computer scientist by John van de Wetering.
|
April 4 |
ZX-diagram 102: spiders fusion, pi-copy and state-copy |
Lecture note.
|
April 9 |
ZX-diagram 103: bialgebra rule |
Lecture note.
|
April 11 |
ZX-diagram 104: Phase gadgets and application of bialgebra rules |
Lecture note.
|
April 16 |
Pauli groups, stabilizer states and stabilizers |
Lecture note.
Related reading: Nielsen and Chuang (Chapter 10.5.1-10.5.3) covers stabilizer formalism in details.
|