Posted in: Quantum Computing

First steps towards programming a quantum computer over the cloud

Since last year, scientists, students, and the quantum computing curious have been able to explore the world’s first and only cloud-enabled quantum computing platform, the IBM Quantum Experience. They’re running well-known canonical quantum algorithms, such as two-qubit Grover’s Search, and even trying their own experiments on our IBM Cloud-hosted five-qubit quantum processor.

We designed the Quantum Experience with an approachable visual interface, called the Quantum Composer, around a commonly used quantum gate library often taught in various quantum computing textbooks and courses.

And the community, some 40,000 of whom have run in excess of 275,000 experiments on the Quantum Experience, have been asking for more. More access to the qubits. More possibilities with the experiments.

So, we’re excited to share our newest upgrade to the Quantum Experience: an application programming interface (API) to directly interact with the experiment and simulators. What’s more is that it uses a beefed-up quantum intermediate representation we call OPENQASM which supports a more complete toolset of quantum circuits, opening up more capabilities of the underlying quantum hardware for future releases.

Image of the IBM Quantum Experience on a tablet at IBM Research. The IBM Quantum Experience enables anyone to connect to IBM’s quantum processor via the IBM Cloud to run experiments. IBM released a new API (Application Program Interface) for the IBM Quantum Experience for the developer community. In the first half of 2017, IBM plans to release a full SDK (Software Development Kit) on the IBM Quantum Experience. (Connie Zhou for IBM)

Image of the IBM Quantum Experience on a tablet at IBM Research. The IBM Quantum Experience enables anyone to connect to IBM’s quantum processor via the IBM Cloud to run experiments. IBM released a new API (Application Program Interface) for the IBM Quantum Experience for the developer community. In the first half of 2017, IBM plans to release a full SDK (Software Development Kit) on the IBM Quantum Experience. (Connie Zhou for IBM)

Users will now be able to run batches of operations, using scripting languages like Python, and hence string together higher-level calculations of their returned results from the cloud-hosted IBM quantum processor. This enables the bridge towards building complex experiments and gives a framework for higher-level programming as our quantum computers expand from five qubits, towards the realm of medium-sized quantum computers of ~50-100 qubits.

By accessing an open source github repository with our API and a simple software development kit (SDK), users will have access to examples and documentation for how to program over the cloud and example scripts to learn how to develop new interfaces, compilers, and programs which might help shape the next evolution of quantum computer science. In order to enable those medium-sized quantum computers in a few years, it is imperative to begin shaping the software framework today, and we are excited to offer this community development through our Quantum Experience.

Algorithms for quantum computers need to be carefully designed to exploit the features of quantum mechanics to deliver speedups over classical algorithms. The subtlety involved in quantum algorithm design makes it challenging to apply quantum computing to real-world problems in enterprises. QC Ware is exploring how some of the quantum algorithms developed over the past 30 years (a comprehensive list is maintained by NIST) can be adapted to run on early QC prototypes, such as those being made by IBM, well before large-scale, fault-tolerant quantum computers are deployed.

—Matt Johnson, CEO of QCWare Corp., an application software company

Priming quantum computers for quantum computer science

If we had a medium-sized quantum computer today, programming such a system to explore simple applications, demonstrating a quantum advantage over classical computers for certain computational tasks, and even validating the quantum functionality of such a system are challenging tasks. This complexity necessitates a layered architecture and a hierarchy of tools.

Quantum computing needs a foundational representation of quantum circuits which we can use to communicate with the current and future versions of our hardware. To keep up with the expansion, we will soon also include an SDK that will offer several operations, like a suite of tools that compress users’ programs into something that can use a quantum computer – as well as optimize and define the interface between classical and quantum computers.

Think of this as a software upgrade before the hardware is ready. But when it is, scientists will have built on top of our foundation the tools needed to take advantage of a 50 qubit machine.

If you have explored our Quantum Experience tool, come experiment with our new interface and simple API. For those new to quantum, we offer extensive user guides and a thriving community forum to help get you started.

Academic and industry institutions can also reach out to us about our new commercialization program through our Frontiers Institute. As our quantum computing capabilities expand, so has our lab. Help us define the quantum future.

Comments

Add Comment

Your email address will not be published. Required fields are marked *

Jerry Chow & Jay Gambetta

Manager, Experimental Quantum Computing & Manager, Theory of Quantum Computing and Information