Book Image

Quantum Computing in Practice with Qiskit® and IBM Quantum Experience®

By : Hassi Norlen
5 (1)
Book Image

Quantum Computing in Practice with Qiskit® and IBM Quantum Experience®

5 (1)
By: Hassi Norlen

Overview of this book

IBM Quantum Experience® is a leading platform for programming quantum computers and implementing quantum solutions directly on the cloud. This book will help you get up to speed with programming quantum computers and provide solutions to the most common problems and challenges. You’ll start with a high-level overview of IBM Quantum Experience® and Qiskit®, where you will perform the installation while writing some basic quantum programs. This introduction puts less emphasis on the theoretical framework and more emphasis on recent developments such as Shor’s algorithm and Grover’s algorithm. Next, you’ll delve into Qiskit®, a quantum information science toolkit, and its constituent packages such as Terra, Aer, Ignis, and Aqua. You’ll cover these packages in detail, exploring their benefits and use cases. Later, you’ll discover various quantum gates that Qiskit® offers and even deconstruct a quantum program with their help, before going on to compare Noisy Intermediate-Scale Quantum (NISQ) and Universal Fault-Tolerant quantum computing using simulators and actual hardware. Finally, you’ll explore quantum algorithms and understand how they differ from classical algorithms, along with learning how to use pre-packaged algorithms in Qiskit® Aqua. By the end of this quantum computing book, you’ll be able to build and execute your own quantum programs using IBM Quantum Experience® and Qiskit® with Python.
Table of Contents (12 chapters)

What this book covers

This cookbook is a problem-solution- and exploration-based approach to understanding the nuances of programming quantum computers with the help of IBM Quantum Experience®, Qiskit®, and Python.

Chapter 1, Preparing Your Environment, walks you through how to install Qiskit® as a Python 3.5 extension on your local workstation. You'll also register with IBM Quantum Experience®, get your API key, and grab the sample code.

Chapter 2, Quantum Computing and Qubits with Python, shows how to use Python to code simple scripts to walk you through the concept of bits and qubits and how quantum gates work without Qiskit® or IBM Quantum Experience®.

Chapter 3, IBM Quantum Experience® – Quantum Drag and Drop, looks at IBM Quantum Experience®, IBM Quantum's online, cloud-based drag-and-drop tool for programming quantum computers. Here you will code a simple program and learn how to move between Qiskit® and IBM Quantum Experience®.

Chapter 4, Starting at the Ground Level with Terra, explores a set of basic quantum programs, or circuits, to examine fundamental concepts such as probabilistic computing, superposition, entanglement, and more. We will also run our first programs on an actual physical IBM quantum computer.

Chapter 5, Touring the IBM Quantum® Hardware with Qiskit®, looks at the IBM Quantum® backends, exploring various physical aspects that impact the results of your quantum programs.

Chapter 6, Understanding the Qiskit® Gate Library, gives an overview of the quantum gates that are offered out of the box with Qiskit® to see what they do to your qubits. We take a look at the universal quantum gates from which all other quantum gates are built, and also expand from one-qubit gates, to the two-, three-, and more qubit gates needed for more advanced quantum circuits.

Chapter 7, Simulating Quantum Computers with Aer, helps you run your circuits on a collection of simulators that you can use locally or in the cloud. You can even set your simulators up to mimic the behavior of an IBM Quantum® backend, to test your circuits under realistic conditions on your local machine.

Chapter 8, Cleaning Up Your Quantum Act with Ignis, explains how to clean up your measurement results by understanding how our qubits behave, and looks at how we can correct for noise by using noise mitigation circuits such as the Shor code.

Chapter 9, Grover's Search Algorithm, builds Grover's search algorithm, a quadratic speedup of classical search algorithms. We will use a unique quantum tool, quantum phase kickback. We build several different versions of the algorithm to run on both simulators and IBM Quantum® backends.

Chapter 10, Getting to Know Algorithms with Aqua, uses premade Qiskit Aqua versions of two of the most well-known quantum algorithms: Grover's search algorithm and Shor's factoring algorithm. We also take a quick tour of the Qiskit Aqua algorithm library.