A new beginner’s guide provides a thorough introduction to quantum algorithms and their implementation on existing hardware for would-be quantum programmers who are unsure how to get into the game as quantum computers proliferate and become publicly accessible.
“Writing quantum algorithms is fundamentally different from writing classical computing programs and necessitates some understanding of quantum principles and the mathematics behind them,” said Andrey Y. Lokhov, a scientist at Los Alamos National Laboratory and lead author of the recently published guide in ACM Transactions on Quantum Computing. “Our guide assists quantum programmers in getting started in a field that is sure to grow as more quantum computers with more and more qubits become commonplace.”
The guide surveys 20 quantum algorithms in concise, stand-alone sections, including well-known, foundational quantum algorithms such as Grover’s Algorithm for database searching and much more, and Shor’s Algorithm for integer factoring.
The guide then walks programmers through implementing the algorithms on IBM’s publicly available 5-qubit IBMQX4 quantum computer and others, making the real-world connection. In each case, the authors discuss the implementation results and explain the differences between the simulator and actual hardware runs.
“This article was the result of a rapid response effort by the Information Science and Technology Institute at Los Alamos, in which about 20 Lab staff members self-selected to learn about and implement a standard quantum algorithm on the IBM Q quantum system,” said Stephan Eidenbenz, a senior quantum computing scientist at Los Alamos, a co-author of the article, and the director of ISTI when work on it began.
Eidenbenz explained that the goal was to prepare the Los Alamos workforce for the quantum era by guiding those with little or no quantum computing experience all the way through the implementation of a quantum algorithm on a real-life quantum computer.
The long author list of this “crowd-sourced” overview article, which has already been heavily cited, includes these staff members, as well as a few students and well-established quantum experts, according to Eidenbenz.
The first section of the guide explains the fundamentals of quantum computer programming, including qubits and qubit systems, fundamental quantum concepts such as superposition and entanglement, and quantum measurements, before moving on to more advanced material such as unitary transformations and gates, quantum circuits, and quantum algorithms.
The IBM quantum computer section discusses the set of gates available for algorithms, the actual physical gates implemented, how the qubits are connected, and the sources of noise or errors.
Another section discusses the different types of quantum algorithms. The guide then delves into the 20 algorithms chosen, providing a problem definition, description, and steps for implementing each one on the IBM or, in a few cases, other computers.
Extensive references at the end of the guide will assist interested readers in delving deeper into quantum algorithms.