Write algorithms and program in the new field of quantum computing. This book covers major topics such as the physical components of a quantum computer: qubits, entanglement, logic gates, circuits, and how they differ from a traditional computer. Also, Practical Quantum Computing for Developers discusses quantum computing in the cloud using IBM Q Experience including: the composer, quantum scores, experiments, circuits, simulators, real quantum devices, and more. You’ll be able to run experiments in the cloud on a real quantum device.
Furthermore, this book shows you how to do quantum programming using the QISKit (Quantum Information Software Kit), Python SDK, and other APIs such as QASM (Quantum Assembly). You’ll learn to write code using these languages and execute it against simulators (local or remote) or a real quantum computer provided by IBM’s Q Experience. Finally, you’ll learn the current quantum algorithms for entanglement, random number generation, linear search, integer factorization, and others. You’ll peak inside the inner workings of the Bell states for entanglement, Grover’s algorithm for linear search, Shor’s algorithm for integer factorization, and other algorithms in the fields of optimization, and more.
Along the way you’ll also cover game theory with the Magic Square, an example of quantum pseudo-telepathy where parties sharing entangled states can be observed to have some kind of communication between them. In this game Alice and Bob play against a referee. Quantum mechanics allows Alice and Bob to always win!
By the end of this book, you will understand how this emerging technology provides massive parallelism and significant computational speedups over classical computers, and will be prepared to program quantum computers which are expected to replace traditional computers in the data center.
You will:Use the Q Experience Composer, the first-of-its-kind web console to create visual programs/experiments and submit them to a quantum simulator or real device on the cloud
Run programs remotely using the Q Experience REST API
Write algorithms that provide superior performance over their classical counterparts
Build a Node.js REST client for authenticating, listing remote devices, querying information about quantum processors, and listing or running experiments remotely in the cloud
Create a quantum number generator: The quintessential coin flip with a quantum twist
Discover quantum teleportation: This algorithm demonstrates how the exact state of a qubit (quantum information) can be transmitted from one location to another, with the help of classical communication and quantum entanglement between the sender and receiver
Peek into single qubit operations with the classic game of Battleships with a quantum twist
Handle the counterfeit coin problem: a classic puzzle that consists of finding a counterfeit coin in a beam balance among eight coins in only two turns