Quantum Programming handout with homeworks

This is a (more or less) self-contained resource that originated from this undergraduate quantum computing class. It is suitable to be integrated in an existing theoretical quantum computation class, e.g. in the format of one lecture together with a few accompanying homework problems. 

This resource gets you started writing quantum programs and running them on quantum devices. It uses qBraid's platform, which allows the user to write the code once, and to run it on most of the available quantum devices in the cloud (IBM, Google, Rigetti, QuEra, IonQ, Xanadu, OQC). The quantum code in this resource is written in Qiskit, but the same code can be used to run on all devices. The existing homework files can be edited, and of course you can also create new ones and easily share them with your class.

To get started:

How the platform works:

These are more or less the essentials. To learn more about the platform you can read here.

From zero to writing your first quantum program, and submitting a job to a quantum device

Homework notebooks

If you have imported the contents of this github repo correctly at the earlier step, you will see the following notebooks in your directory on the left. These homeworks involve submitting quantum jobs to various quantum devices. They assume that students have previously learnt about the relevant topics in class.

Customizing notebooks and creating your own shareable repository:

All of the notebook files are editable within qBraid Lab. You can also create new ones, as well as new folders. If you'd like to share your notebooks with your class (in the same way as you imported the notebooks for this tutorial) you can do the following: