Welcome to the Quantum Information Science Kit (Qiskit for short) tutorials!
In this repository, we've put together a collection of Jupyter notebooks aimed at teaching people who want to use Qiskit for writing quantum computing programs, and executing them on one of several backends (online quantum processors, online simulators, and local simulators). The online quantum processors are the IBM Q devices.
The notebooks for these tutorials can be viewed here on GitHub. But for the full experience, you'll want to interact with them!
The easiest way to do this is using the Binder image, which lets you use the notebooks via the web. This means that you don't need to download or install anything, but it also means that you should not insert any private information into the notebooks (such as your API key). We recommend as pointed out in issue #231 that after you are done using mybinder that you regenerate your token.
Please refer to this installation guide for setting up Qiskit and the tutorials on your own machine (this is the recommended way).
We have organized the tutorials into two sections:
We've collected a core reference set of notebooks in this section outlining the features of Qiskit. We will be keeping them up to date with the latest Qiskit version, currently version 0.6.
- Basics is meant for those who are getting started.
- Terra is meant for those who want to study circuits.
- Ignis is meant for those who want to study noise.
- Aqua is meant for those who want to develop applications on NISQ computers.
Teaching quantum computing and qiskit has many different paths of learning. We love our community, and we love the contributions so keep them coming. Because Qiskit is changing so much, at the moment we cant keep this updated, but there are some great notebooks in here. See:
- Hello, Quantum World learn from the community how to write your first quantum program.
- Quantum Games, learn quantum computing by having fun.
- Quantum Information Science with Terra, learn about quantum information science with Qiskit Terra.
- Textbook Quantum Algorithms, learn Qiskit from the textbook algorithms.
- Quantum Algorithms, learn about quantum algorithms for noisy near-term devices with Qiskit Aqua.
- Teach Me Qiskit 2018, learn from the great contributions to the Teach Me Qiskit award.
To go through the tutorials, load up the index.ipynb notebook and start learning.
If you would like to contribute to the tutorials, there are a number of ways to get involved:
- Issues: Issues can be reported with GitHub issue reporting for this repository. Select
New issue
, fill in a descriptive title, and provide as much detail as is needed for the issue to be reproduced. - Notebooks: If you would like to contribute a notebook, please create a fork of the repository from the
master
branch and create a pull request for your change. Note that new notebooks should be placed in the relevant part of the Community section.
These tutorials are the work of our Qiskitters who contribute to the project at different levels.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.