BT

Your opinion matters! Please fill in the InfoQ Survey!

IBM QISKit Aims to Enable Cloud-Based Quantum Computation

| by Sergio De Simone Follow 5 Followers on Mar 11, 2017. Estimated reading time: 2 minutes |

A note to our readers: As per your request we have developed a set of features that allow you to reduce the noise, while not losing sight of anything that is important. Get email and web notifications by choosing the topics you are interested in.

The Quantum Experience team at IBM has started to open source their quantum software QISKit, writes quantum computing and information scientist Jay Gambetta. QISKit allows developers to explore IBM cloud-enabled quantum processor using Python.

IBM QISKit includes three main components:

  • The official QISKit API client, written in Python, can be installed executing pip install IBMQuantumExperience and then used like in the following example:
      api = IBMQuantumExperience("token", config)
      qasm = 'OPENQASM 2.0;
              include "qelib1.inc";
              qreg q[5];
              creg c[5];\
              h q[0];
              cx q[0],q[2];
              measure q[0] -> c[0];
              measure q[2] -> c[1];'
      device = 'simulator'
      shots = 1024
      
      api.run_experiment(qasm,
                         device,
                         shots,
                         name='My First Experiment',
                         timeout=60)
      
    

    The QISKit client can also be used in a Jupyter Notebook:

    import pip
    def install(package):
       pip.main(['install', package])
    install('IBMQuantumExperience')
    
  • A Python QISKit SDK, which includes several tools that IBM Q engineers have provided for illustrative purposes. In particular, the SDK shows how you can compose multiple jobs for complex experiments such as state tomography, randomized benchmarking, and entanglement tests.

  • The OPENQASM specification, which details the Open Quantum Assembly Language 2.0 and is a fundamental reading if you want to understand both the quantum computation model brought forward by IBM and the syntax used to express quantum experiments.

In IBM’s OPENAQSM model, a quantum computation is carried through in four steps:

  • Compilation, which transforms a textual quantum algorithm into it IR representation using a classical computer.
  • Circuit generation, which transform the IR into a set of quantum circuits, the basic blocks of a quantum program. A quantum circuit is a sequence of basic steps with no branches or process measurements. Classical control blocks can include quantum circuits and determine the overall control flow of the program based on measurements, or create new quantum circuits on the fly.
  • Execution, which takes place on a quantum computer in real-time. Here, a high-level controller processes inputs or intermediate measurements coming from the quantum circuits into a sequence of physical operations carried through by a low-level controller.
  • Post-processing, which again takes place on a classical computer, where measurements taken during the real-time quantum processing are used to create the final result.

IBM Quantum Experience aims to make it possible to connect to IBM’s quantum computer via IBM’s cloud and to experiment with or integrate quantum capability into software programs. Quantum computers differ from classical transistor-based computers where there are only two allowed states due to the use of quantum bits, which can be the superposition of multiple states. Quantum computation is touted to be able to efficiently solve problems which are not approachable using ordinary computers, in the field of integer factorization (cryptography), for the simulation of quantum physical processes, the approximation of Jones polynomials, solving Pell’s equation, and others. For some of those problems, quantum computers offer a polynomial speedup over their classical counterparts, which also implies that currently intractable (NP) problems will not convert into tractable problems thanks to quantum computing, only more approachable.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT