These are the lecture notes of the master's course "Quantum Computing", taught at Chalmers University of Technology every fall since 2020, with participation of students from RWTH Aachen and Delft University of Technology. The aim of this course is to provide a theoretical overview of quantum computing, excluding specific hardware implementations. Topics covered in these notes include quantum algorithms (such as Grover's algorithm, the quantum Fourier transform, phase estimation, and Shor's algorithm), variational quantum algorithms that utilise an interplay between classical and quantum computers [such as the variational quantum eigensolver (VQE) and the quantum approximate optimisation algorithm (QAOA), among others], quantum error correction, various versions of quantum computing (such as measurement-based quantum computation, adiabatic quantum computation, and the continuous-variable approach to quantum information), the intersection of quantum computing and machine learning, and quantum complexity theory. Lectures on these topics are compiled into 12 chapters, most of which contain a few suggested exercises at the end, and interspersed with four tutorials, which provide practical exercises as well as further details. At Chalmers, the course is taught in seven weeks, with three two-hour lectures or tutorials per week. It is recommended that the students taking the course have some previous experience with quantum physics, but not strictly necessary.
These are the lecture notes of the master's course "Quantum Computing", taught at Chalmers University of Technology every fall since 2020, with participation of students from RWTH Aachen and Delft University of Technology. The aim of this course is to provide a theoretical overview of quantum computing, excluding specific hardware implementations. Topics covered in these notes include quantum algorithms (such as Grover's algorithm, the quantum Fourier transform, phase estimation, and Shor's algorithm), variational quantum algorithms that utilise an interplay between classical and quantum computers [such as the variational quantum eigensolver (VQE) and the quantum approximate optimisation algorithm (QAOA), among others], quantum error correction, various versions of quantum computing (such as measurement-based quantum computation, adiabatic quantum computation, and the continuous-variable approach to quantum information), the intersection of quantum computing and machine learning, and quantum complexity theory. Lectures on these topics are compiled into 12 chapters, most of which contain a few suggested exercises at the end, and interspersed with four tutorials, which provide practical exercises as well as further details. At Chalmers, the course is taught in seven weeks, with three two-hour lectures or tutorials per week. It is recommended that the students taking the course have some previous experience with quantum physics, but not strictly necessary.
This is a set of lecture notes suitable for a Master's course on quantum computation and information from the perspective of theoretical computer science. The first version was written in 2011, with many extensions and improvements in subsequent years. The first 10 chapters cover the circuit model and the main quantum algorithms (Deutsch-Jozsa, Simon, Shor, Hidden Subgroup Problem, Grover, quantum walks, Hamiltonian simulation and HHL). They are followed by 4 chapters about complexity, 4 chapters about distributed ("Alice and Bob") settings, a chapter about quantum machine learning, one about stabilizer states and Clifford circuits, and a final chapter about quantum error correction. Appendices A and B give a brief introduction to the required linear algebra and some other mathematical and computer science background. All chapters come with exercises, with some hints provided in Appendix C.
With the increasing rise of publicly available high level quantum computing languages, the field of Quantum Computing has reached an important milestone of separation of software from hardware. Consequently, the study of Quantum Algorithms is beginning to emerge as university courses and disciplines around the world, spanning physics, math, and computer science departments alike. As a continuation to its predecessor: "Introduction to Coding Quantum Algorithms: A Tutorial Series Using Qiskit", this tutorial series aims to help understand several of the most promising quantum algorithms to date, including Phase Estimation, Shor's, QAOA, VQE, and several others. Accompanying each algorithm's theoretical foundations are coding examples utilizing IBM's Qiskit, demonstrating the strengths and challenges of implementing each algorithm in gate-based quantum computing.
Quantum computing stands at the frontier of computational technology, offering a radical departure from classical computing paradigms. This article provides a comprehensive exploration of quantum computing fundamentals, recent technological advancements, and potential applications across various domains. Beginning with core quantum concepts such as qubits, superposition, and entanglement, the discussion progresses to address critical challenges in quantum system development, including scalability, error correction, and coherence time improvements. The article examines breakthrough algorithms including Shor's algorithm, Grover's algorithm, the Quantum Approximate Optimization Algorithm (QAOA), and the Variational Quantum Eigensolver (VQE), highlighting their theoretical advantages and experimental implementations. Applications in cryptography, optimization, materials science, and machine learning demonstrate quantum computing's transformative potential. While significant technical hurdles remain, the roadmap toward fault-tolerant quantum computing shows promising developments in qubit quality, error correction techniques, and system architecture that may enable practical quantum advantage within the coming decade.
Aimed at advanced undergraduate and graduate-level students, this textbook covers the core topics of quantum computing in a format designed for a single-semester course. It will be accessible to learners from a range of disciplines, with an understanding of linear algebra being the primary prerequisite. The textbook introduces central concepts such as quantum mechanics, the quantum circuit model, and quantum algorithms, and covers advanced subjects such as the surface code and topological quantum computation. These topics are essential for understanding the role of symmetries in error correction and the stability of quantum architectures, which situate quantum computation within the wider realm of theoretical physics. Graphical representations and exercises are included throughout the book and optional expanded materials are summarized within boxed 'Remarks'. Lecture notes have been made freely available for download from the textbook's webpage, with instructors having additional online access to selected exercise solutions.
This work presents a comprehensive and rigorous examination of quantum computing, spanning its mathematical foundations, physical principles, algorithmic developments, hardware architectures, and philosophical implications. Beginning with linear algebra over Hilbert spaces and the postulates of quantum mechanics, the manuscript develops the formal structure of quantum information theory, including qubits, entanglement, quantum channels, and noise models. The work provides in-depth treatments of the quantum circuit model, alternative computation paradigms such as measurement-based, adiabatic, and topological quantum computation, and the theoretical framework of quantum error correction, including stabilizer and surface codes. Foundational and modern quantum algorithms are analysed in detail, including Shor’s factoring algorithm, Grover’s search, variational quantum eigensolvers, QAOA, and emerging quantum machine learning approaches. Beyond algorithms and implementations, the manuscript addresses scalability challenges, fault tolerance, computational complexity limits, and the implications of quantum computing for cryptography and the extended Church–Turing thesis. The concluding sections explore philosophical questions concerning interpretation, measurement, and the relationship between computation and physical reality. This work is intended as both a reference text and a research-level synthesis for advanced students, researchers, and practitioners in quantum computing, theoretical computer science, and quantum physics.
This introduction to quantum computing from a classical programmer's perspective is meant for students and practitioners alike. Over 25 fundamental algorithms are explained with full mathematical derivations and classical code for simulation, using an open-source code base developed from the ground up in Python and C++. After presenting the basics of quantum computing, the author focuses on algorithms and the infrastructure to simulate them efficiently, beginning with quantum teleportation, superdense coding, and Deutsch-Jozsa. Coverage of advanced algorithms includes the quantum supremacy experiment, quantum Fourier transform, phase estimation, Shor's algorithm, Grover's algorithm with derivatives, quantum random walks, and the Solovay–Kitaev algorithm for gate approximation. Quantum simulation is explored with the variational quantum eigensolver, quantum approximate optimization, and the Max-Cut and Subset-Sum algorithms. The book also discusses issues around programmer productivity, quantum noise, error correction, and challenges for quantum programming languages, compilers, and tools, with a final section on compiler techniques for transpilation.