The new Qiskit Textbook beta is now available. Try it out now
Learn Quantum Computation using Qiskit

Learn Quantum Computation using Qiskit

Greetings from the Qiskit Community team! This textbook is a university quantum algorithms/computation course supplement based on Qiskit to help learn:

  1. The mathematics behind quantum algorithms
  2. Details about today's non-fault-tolerant quantum devices
  3. Writing code in Qiskit to implement quantum algorithms on IBM's cloud quantum systems

About the Textbook

This is a free digital textbook that will teach you the concepts of quantum computing while you learn to use the Qiskit SDK.

Run the Code Inline

This textbook is built on a jupyter notebook framework that allows for easy reading, but it also allows readers to edit and run the code right in the textbook. The chapters can also be opened as Jupyter notebooks in the IBM Quantum Experience, no installs required!

# Click 'try', then 'run' to see the output,
# you can change the code and run it again.
print("This code works!")
from qiskit import QuantumCircuit
qc = QuantumCircuit(2) # Create circuit with 2 qubits
qc.h(0)    # Do H-gate on q0,1) # Do CNOT on q1 controlled by q0

Learn with Real Quantum Systems

The best way to learn is by doing. Qiskit allows users to run experiments on state-of-the-art quantum devices from the comfort of their homes. The textbook teaches not only theoretical quantum computing but the experimental quantum physics that realises it.

Using the Textbook

If you're reading the textbook independently, you don't have to read it all in order, but we recommend you read chapters 1-3 first.

Curriculum Integration

The textbook can be followed as an independent course, however, it has been designed to accompany a traditional university course. The textbook shows students how to use Qiskit to experiment with quantum algorithms and hardware, and uses this to reinforce their understanding.

Use the Textbook in Your Course

If you are using the Qiskit Textbook in your course, you can join the IBM Quantum Educators Program. The Program provides:

  • The ability to reserve time for priority access to our open systems for in-class demonstrations
  • Access to additional premium systems beyond our open systems
  • Access to a 5-qubit system with full microwave control using Qiskit Pulse


If you have any questions or suggestions about the textbook or would like to incorporate it into your curriculum, please contact Frank Harkins ([email protected]). In the true spirit of open-source, any chapter contributions are welcome in this GitHub repository.


Learn Quantum Computation using Qiskit is the work of several individuals. If you use it in your work, cite it using this bib file or directly as:

Amira Abbas and Stina Andersson and Abraham Asfaw and Antonio Corcoles and Luciano Bello and Yael Ben-Haim and Mehdi Bozzo-Rey and Sergey Bravyi and Nicholas Bronn and Lauren Capelluto and Almudena Carrera Vazquez and Jack Ceroni and Richard Chen and Albert Frisch and Jay Gambetta and Shelly Garion and Leron Gil and Salvador De La Puente Gonzalez and Francis Harkins and Takashi Imamichi and Pavan Jayasinha and Hwajung Kang and Amir h. Karamlou and Robert Loredo and David McKay and Alberto Maldonado and Antonio Macaluso and Antonio Mezzacapo and Zlatko Minev and Ramis Movassagh and Giacomo Nannicini and Paul Nation and Anna Phan and Marco Pistoia and Arthur Rattew and Joachim Schaefer and Javad Shabani and John Smolin and John Stenger and Kristan Temme and Madeleine Tod and Ellinor Wanzambi and Stephen Wood and James Wootton.