Quantum computations are intimately connected with unitary operators. This article shows that standard techniques from numerical linear algebra can be used to represent quantum computations as sequences of simple quantum operations, called quantum Givens operators, on single quantum bits.
Quantum computing (QC) is an exciting new technology that completes the text with an application that relies heavily on the mathematics of linear algebra. There is more to explain than the conversion of common matrix notation into Dirac bra-ket notation. There is also the bizarre world of quantum physics that is inspiring a range of quantum information technologies. Qubits and their entangled superposition states are introduced to show that the “quantum advantage” stems from qubits storing exponentially more information that can be processed at exponentially faster rates. The process of preparing, modifying, and measuring qubit states is explained. Linear algebra skills are exercised by representing QC coding through the application of unitary operators to qubit states. QC algorithms are designed by diagramming quantum circuits, casting those circuits into sequences of operators applied to qubit states, and converting the operators into matrix forms. These are the tools of QC. Several algorithms that demonstrate a range of computational tasks from simple arithmetic through quantum Fourier analysis complete the chapter.
We present a new algorithm for reducing an arbitrary unitary matrix U into a sequence of elementary operations (operations such as controlled-nots and qubit rotations). Such a sequence of operations can be used to manipulate an array of quantum bits (i.e., a quantum computer). Our algorithm applies recursively a mathematical technique called the CS Decomposition to build a binary tree of matrices whose product, in some order, equals the original matrix U. We show that the Fast Fourier Transform (FFT) algorithm is a special case of our algorithm. We report on a C++ program called "Qubiter" that implements the ideas of this paper. Qubiter(PATENT PENDING) source code is publicly available.