CSCE 790:008 Schedule


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.