Quantum Computation and Quantum Information

by | 2021-03-14

Back story: New articles about Google achieving “quantum supremacy”. Got me interested in understanding quantum computing. I have a Ph.D. in physics and worked for 40 years doing computer software, so I should be able to understand this stuff… Right?

TODO: Link to the google paper.

Simple summary of what “quantum supremacy” means. Google built a chip with 53 qubits, with programmable gates between each qubit and 4 nearest neighbours. They then configured the chip to perform some recursive boolean-algebra calculations. They then compared the answers and performance of the chip to traditional computers. Conclusion was that the answers agreed and performance was orders of magnitude faster on the quantum chip. Hence, “supremacy”.

My usual approach to learning is to find some recommended books on the topic. The classic textbook is by Nielsen & Chuang:

TODO: Add picture of cover.

The quantum physics used in the book uses Dirac’s “bra-ket” notation. That is not the notation I was taught in university. In undergrad (at McGill), we used Schroedinger’s equations. In grad school (at MIT), Feynman diagrams were emphasized. I do own a copy of Dirac’s QM book (4th edition) that uses the bra-ket notation. I picked it up when I was at MIT and I probably read it there. Re-read it to understand the basics of the physics in Nielsen & Chuang.

Computing in N&S: The computing in N&S is not done in a programming language, or even in a machine language. It’s done with logic gates. That’s how a chip designer (e.g., at Intel or ARM) designs the circuitry that implements machine language instructions. I’ve worked with firmware engineers (at Marconi) who used similar techniques to design FPGA’s and custom ASIC’s.

Computation algorithms in N&S: In computer science, there are approaches used for evaluating the performance of algorithms and how they scale. E.g., a “Bubble Sort” has performance O(N^2) and a “Heap Sort” has performance O(N log N). A lot of the theoretical analysis of quantum computers is done using these approaches. This type of thinking is used at the “Systems Design” level for large applications, but most software developers do not need to know these approaches.

TODO: Opinion on the book. Say I stalled halfway through it.

Other references: