  This paper surveys our recent research on quantum information processing by
nuclear magnetic resonance (NMR) spectroscopy. We begin with a geometric
introduction to the NMR of an ensemble of indistinguishable spins, and then
show how this geometric interpretation is contained within an algebra of
multispin product operators. This algebra is used throughout the rest of the
paper to demonstrate that it provides a facile framework within which to study
quantum information processing more generally. The implementation of quantum
algorithms by NMR depends upon the availability of special kinds of mixed
states, called pseudo-pure states, and we consider a number of different
methods for preparing these states, along with analyses of how they scale with
the number of spins. The quantum-mechanical nature of processes involving such
macroscopic pseudo-pure states also is a matter of debate, and in order to
discuss this issue in concrete terms we present the results of NMR experiments
which constitute a macroscopic analogue Hardy's paradox. Finally, a detailed
product operator description is given of recent NMR experiments which
demonstrate a three-bit quantum error correcting code, using field gradients to
implement a precisely-known decoherence model.
