Quantum computing is a new paradigm of computing that comes from an idea proposed, in the 1980s, by the Nobel Prize winning physicist Richard Feynman. Based on the principles of quantum mechanics, such as the superposition and entanglement of particles, Feynman proposed that a new type of device, called a quantum computer, could exist. Based on this idea, much research in subsequent years has served to develop the theory of quantum computing, a particularly notable landmark along the way being the 1994 publication of a polynomial-time algorithm for finding the prime factors of an integer using a quantum computer. (Shor’s algorithm, running on such a quantum computer, would of course make many present-day security protocols based on the RSA algorithm effectively useless.) The jury appears to still be out on the question of whether practical, significant applications of quantum computing will become widely available in the near future, though there have recently been claims that “quantum supremacy,” that is, the fact that a quantum computer has solved a problem that is intractable for conventional computers, has occurred.

Until relatively recently, the literature on quantum computing has been mostly scattered, with researchers or practitioners being obliged to pore over a diverse set of primary sources (mostly research papers) to learn even the basic concepts. This has in turn meant that quantum computing has perhaps not been as widely included in academic curricula as would be expected given its putative importance. In recent years, however, there is a determined and successful effort by some scientists to collect and organize the important ideas about quantum computing from the many research papers and to then present the same neatly in monographs that are more easily approached by students and others. The present book also takes its place in such a context, as a collection of 15 chapters on various topics in quantum computing that will appeal to those interested in the field.

Part 1, “Foundations,” as the title
suggests, starts with “Superposition, Entanglement and Reversibility” to briefly summarize the basic physics involved, such as Schrödinger’s equation. The other three chapters in this part are “A Brief History of Quantum Computing,” “Qubits, Operators and Measurement,” and “Complexity Theory.”

Part 2, “Hardware and Applications,” starts with chapter 5, “Building a Quantum Computer,” and has five more chapters that deal primarily with the practical (that is, programming) aspects of working with quantum computers. For practitioners in particular, chapters 6, “Development Libraries of Quantum Computer Programming,” and 10, “Applications and Quantum Supremacy,” are perhaps of greatest interest--not only in this part, but in the book as a whole.

Part 3, “Toolkit,” has three chapters on mathematical tools and then two short chapters that could have been appendices (“Dirac Notation” and “Table of Quantum Operators and Core Circuits”).

This well-put-together book is a valuable addition to the literature in the field. My one quibble would be about the lack of problem sets or other instructional resources, which makes the book difficult for use in university settings. Yes, the author gives a small number of student exercises for the first few chapters on a GitHub page (these are not found in the book itself), but any instructor wishing to teach from this book will have to put in some work to come up with such exercises, or will have to rely on other sources for the same.

More reviews about this item: Amazon