In May 2016, IBM launched the IBM Q Experience, with a five qubit quantum processor and matching simulator connected in a star shaped pattern, which users could only interact with through the quantum composer, with a limited set of two-qubit interactions, and a user guide that assumed background in linear algebra. In July 2016, IBM launched the IBM Q Experience community forum. In January 2017, IBM made a number of additions to the IBM Q Experience, including increasing the set of two-qubit interactions available on the five qubit quantum processor, expanding the simulator to custom topologies up to twenty qubits, and allowing users to interact with the device and simulator using quantum assembly language code. In March 2017, IBM released Qiskit to enable users to more easily write code and run experiments on the quantum processor and simulator, as well as introduced a user guide for beginners. In May 2017, IBM made an additional 16 qubit processor available on the IBM Q Experience. In January 2018, IBM launched a quantum awards program, which it hosts on the IBM Q Experience.
Quantum Composer
The Quantum Composer is a graphic user interface designed by IBM to allow users to construct various quantum algorithms or run other quantum experiments. Users may see the results of their quantum algorithms by either running it on a real quantum processor and using "units" or by using a simulator. Algorithms developed in the Quantum Composer are referred to as a "quantum score", in reference to the Quantum Composer resembling a musical sheet. The IBM Q Experience currently contains a library teaching users how to use the Quantum Composer. The library consists of two guides: Beginner's Guide, Full User Guide. There are additional tutorials about using the IBM Q Experience machines in the github repo for Qiskit accessed from qiskit.org. The composer can also be used in scripting mode, where the user can write programs in the QASM-language instead.
Example script
Below is an example in the QASM-language of a very small program, built for IBMs 5-qubit computer. The program instructs the computer to generate the state, a 3-qubit GHZ state, which can be thought of as a variant of the Bell state but with three qubits instead of just the classical two. It then measures the state, forcing it to collapse to one of the two possible outcomes. include "qelib1.inc" qreg q; // allocate 5 qubits creg c; // allocate 5 classical bits h q; // hadamard-transform qubit 0 cx q, q; // conditional pauli X-transform of qubits 0 and 1 // At this point we have a 2-qubit Bell state /sqrt cx q, q; // this expands entanglement to the 3rd qubit measure q -> c; // this measurement collapses the state measure q -> c; // qubit 1 and 2 read the same value as qubit 0 measure q -> c;
Every instruction in the QASM language is the application of a quantum gate, initialization of the chips registers to zero or measurement of these registers.
The full user guide is more in depth and analytical compared to the beginner's guide, and is recommended for those with experience in linear algebra or quantum computing. Unlike the beginners guide, the full user guide contains quantum algorithm examples, with explanations comparing quantum algorithms to their classical counterparts. Both of the Beginner and Full User Guides can be updated by anyone via the Qiskit GitHub repository.
Usage
IBM reports that there are over 80,000 users of the IBM Q Experience, who have collectively run over 3 million experiments. Many of these users are active researchers who have collectively published at least 72 academic papers using the platform. University professors are also integrating examples and experiments based on the IBM Q Experience into their educational curricula. Dr. Christine Corbett Moran, a postdoctoral fellow at the California Institute of Technology, used the IBM Q Experience while she was doing research in Antarctica. Tara Tosic, a physics student at the École Polytechnique Fédérale de Lausanne, used the IBM Q Experience while she was doing research in the Arctic. People have also used the IBM Q Experience for various non-academic purposes. One user has begun developing games using the IBM Q Experience, including one titled "quantum battleships".