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
qc.cx(0,1) # Do CNOT on q1 controlled by q0
qc.measure_all()
qc.draw()

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

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 textbook in your course, please contact Abraham Asfaw ([email protected]) so you can get special access to IBM quantum devices.

Course Map

The Qiskit textbook covers a wide range of materials, not all of which can be covered in a single course. You can use the guide below to tailor the textbook materials to fit your goals. Bear in mind that this is only a suggested way to use the textbook.

Textbook Credits

Contact

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.

Contributors

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:

Abraham Asfaw, Luciano Bello, Yael Ben-Haim, Sergey Bravyi, Lauren Capelluto, Almudena Carrera Vazquez, Jack Ceroni, Richard Chen, Albert Frisch, Jay Gambetta, Shelly Garion, Leron Gil, Salvador De La Puente Gonzalez, Francis Harkins, Takashi Imamichi, David McKay, Antonio Mezzacapo, Zlatko Minev, Ramis Movassagh, Giacomo Nannicni, Paul Nation, Anna Phan, Marco Pistoia, Arthur Rattew, Joachim Schaefer, Javad Shabani, John Smolin, Kristan Temme, Madeleine Tod, Stephen Wood, James Wootton.