Adventures in Computer Science pp 119-133 | Cite as

# Feynman’s Quantum Computer Machine

## Abstract

In order to analyze Feynman’s universal quantum computer architecture, we start by defining a special kind of matrix that can be used to represent elementary operations such as identity and negation. We next use these matrices to find the matrix representation of important logic gates such as CN and CCN. We also briefly refer, from this new perspective, to other reversible logic gates, such as FO, EX and the Fredkin gate. More complicated problems such as the Half Adder and the full adder are revisited. This background provides the basis for tackling the design of a quantum computer. Like Feynman, we define complex operations by means of the product of elementary operations in their matrix representation. To represent the entire process, we define the corresponding Hamiltonian, which, given quantum mechanical restrictions, has to be Hermitian. To control the computation, we define a position counter register for the program. Altogether, this yields a non-trivial architecture. To explain how this machine works we use an example that is discussed in depth from three different points of view. We conclude with some thoughts on how to initialize the system and how to recognize when the computer has completed computation.