An introduction to quantum computation focused primarily on foundations, theory, and rigor, rather than specific hardware implementations or heuristic applications. We will begin with the axioms of quantum mechanics and the most common formulation of quantum computation based on quantum circuits. We will then develop the core primitives in the quantum algorithms toolkit (such as quantum Fourier transforms, phase estimation, and Trotterization/quantum simulation) and establish some elementary complexitytheoretic results (including some oracle separations, and various lower and upper bounds), as well as work through the crown jewel of quantum algorithms to date - Shor's factoring algorithm. Along the way, we will see some of the more curious aspects of quantum information facilitated by quantum entanglement (such as Grover search, quantum teleportation, superdense coding, Bell violations). The last portion of the course will develop the basic theory of quantum error-correcting codes and the fault tolerance problem.
In particular, you may want to note that I do not plan to cover quantum optimization, quantum machine learning, or post-quantum cryptography in any depth (if at all).
Required textbook (unfortunately not available online through Purdue library, but it's a classic book that is probably worth owning):
Further reading, with links to online access:
Grades will be based on homework (60%), course notes contribution (20%) and participation (20%).
All of the regularly scheduled course meetings will be recorded and made publicly available on the course Media Space channel, and possibly other places too (e.g. YouTube). If you have privacy concerns, please do let me know!
Any students with disabilities who require reasonable accommodations should please contact both me and DRC as soon as possible. There won't be any exams or anything like that, but, e.g., if the videos, course notes, or above textbooks are not accessible for some reason, I would love to be able to fix that.