/qiskit-tutorial

A collection of Jupyter notebooks using QISKit

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0


QISKit Tutorials

Welcome to the Quantum Information Software 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 the QISKit for writing quantum computing programs and executing them on one of several backends (online quantum processors, online simulators, and local simulators). For the online quantum processors connects to the IBM Q Systems.

Installation and Setup

Please refer to this installation for installing and setting up QISKit and tutorials on your own machine.

You can also run the tutorials online without installation on the IBM Data Science Experience following the instructions in this notebook.


Contents

We have organized the tutorials into three sections:

Since quantum computing is so new to most users, we want to find the best Hello Quantum World program and welcome submissions here.

We've collected a core reference set of notebooks in this section. These notebooks demonstrate how to use QISKit and explore quantum information science, acting as a reference guide for QISKit. We will be keeping them up to date with QISKit updates. They are organized into the following topics:

In this first topic, we introduce you to the basic features of QISKit.

The next set of notebooks shows how you can explore some simple concepts of quantum information science.

This set of notebooks describe a few of the techniques used to characterize, verify and validate quantum systems.

Universal fault tolerant quantum computers are still many years away, notebooks in this section describe a few of the things you can do with the approximate quantum computers we have today.

This section contains notebooks describing the canonical quantum algorithms.

Here we have a few examples of quantum games. Enjoy!

This is where the rest of the tutorials are. They are not guaranteed to work with the latest version of the QISKit, but we will do our best.


Contributing

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 and 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 Appendix section. We will discuss in the Slack channel which of these should be in the Reference section.

Contributors

An alphabetical list of contributors can be found here. If you have contributed to these tutorials, please include your name there.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.