Bulk Spin Resonance Quantum Information Processing Yael Maguire Physics and Media Group (Prof. Neil Gershenfeld) MIT Media Lab ACAT 2000 Fermi National Accelerator Laboratory, IL 17-Oct-2000
Why should we care? By ~ 2030: transistor = 1 atom, 1 bit = 1 electron, Fab cost = GNP of the planet Scaling: time (1 ns/ft), space (DNA computers mass of the planet). Remaining resource: Hilbert Space.
Classical bit Analog “bit” Quantum qubit Bits
2 Classical Bits 2 Quantum Bits N Classical Bits –N binary values N Quantum Bits –2 N complex numbers –superposition of states –Hilbert space More Bits
correlated decay project A hidden variables? action at a distance? information travelling back in time? alternate universes (many worlds)? interconnect in Hilbert space – O(2 -N ) to O(1) BA AB Entanglement
Examples: –Shor’s algorithm (1000 bit number): O((logN) 2+ ) vs. O(exp(1.923+(logN) 1/3 (loglogN) 2/3 ) O(1 1Hz vs. O( GFLOP –Grover’s algorithm (8 TB): O( ) vs. O(N) 27 min. vs. 1 same clock speed. The Promise
What do you need to build a quantum computer? Pure States Coherence Universal Family Readout Projection Operators Circuits
Previous/Current Attempts spin chains quantum dots isolated magnetic spins trapped ions Optical photons cavity QED Coherence! Breakthroughs: Bulk thermal NMR quantum computers –quantum coherent information bulk thermal ensembles Quantum Error Correction –Correct for errors without observing. –Add extra qubits syndrome
What do you need to build a quantum computer using NMR? Pure States –effective pure states in deviation density matrix Coherence –nuclear spin isolation, 1-10s Universal Family –arbitrary rotations (RF pulses) and C-NOT (spin-spin interactions) Readout –Observable magnetization Projection Operators –Change algorithms Circuits –Multiple pulses are gates Gershenfeld, Chuang, Science (1997) Cory, Havel, Fahmy, PNAS (1997)
wave function observables pure state mixed state Hamiltonian (energy) evolution equilibrium Quantum Mechanics
~10 23 spin degrees of freedom –rapid tumbling averages inter-molecular interactions ~N effective degrees of freedom –decoherence averages off-diagonal coherences N spins I (1/2) B0B0 B1B1 Bulk Density Matrix
high temperature approximation identity can be ignored ensemble molecule deviation NMR: “reduced” density matrix Deviation Density Matrix in NMR
magnetic moment angular momentum spin precession Zeeman splitting 2 spin interaction Hamiltonian A-B Spin Hamiltonian
apply a z field: evolve in field: two spins, scalar coupling: evolution = 3 commuting operators Arbitrary single qubit operations Magnetic Field and Rotation Operators
ENDOR (1957) –electron-nuclear double resonance INEPT (1979) –insensitive nuclei enhanced by polarization transfer The Controlled-NOT Gate
Input thermal density matrix CNOT output
Ground State Preparation We want: where How? Use degrees of freedom to create an environment for computational spins. –1. Logical Labeling (Gershenfeld, Chuang) ancilla spins - submanifolds act as pure states - exponential signal –2. Spatial Labeling (Cory, Havel, Fahmy) field gradients dephase density matrix terms - exponential space –3. Temporal Labeling (Knill, Chuang, Laflamme) use randomization and averaging over set of experiments - exponential time
Algorithms - Grover’s Algorithm find x n | f(x n ) = 1, f(x m )=0 Initialize L bit registers Prepare superposition of states Apply operator that rotates phase by if f(x) = 1 Invert about average Repeat O(N 1/2 ) times Measure state
NMR Implementation Pure state preparation Superposition of all states H = R yA (90) R yB (90) - R xA (180) R xB (180) Conditional sign flip (test for both bits up) C = R zAB (270) - R zA (90) - R zB (90) Invert-about-mean M = H - R zAB (90) - R zA (90) - R zB (90) - H
Experimental Implementation of Fast Quantum Searching, I.L. Chuang, N. Gershenfeld, M. Kubinec, Physical Review Letters (80), 3408 (1998).
Quantum Error Correction 3-bit phase error correcting code - Cory et al, PRL, 81, 2152 (1998) - alanine
Quantum Simulation Feynman/Lloyd - quantum simulations more efficient on a quantum computer Waugh - average Hamiltonian theory Dynamics of truncated quantum harmonic oscillator with NMR- Samaroo et al. PRL, 82, 5381.
Scaling Issues Sensitivity vs. System resources Decoherence per gate Number of qubits
Scaling
Is it quantum? Schack, Caves, Braunstein, Linden, Popescu, … Initial conditions vs quantum evolution But, Boltzmann limit is not scalable is separable if 3.8x x x x x x x N
Polarization Enhancement - Optical Pumping Error correction as well (or phonon)
Decoherence per gate Steady state error correction C. Yannoni, M. Sherwood, L. Vandersypen, D. Miller, M. Kubinec, I. Chuang, Nuclear Magnetic Resonance Quantum Computing Using Liquid Crystal Solvents quant-ph/ , July sT 2 ( 1 H)7 s 0.2 sT 2 ( 13 C)0.3 s 1.4 sT 1 ( 1 H)19 s 2 sT 1 ( 13 C)25 s 1706 HzJ+2D J215 Hz ZLI C 1 HCl 3 solvent acetone -d6
Number of Qubits Seth Lloyd, Science, 261, 1569 (1993) - SIMD CA –D-A-B-C-A-B-C-A-B-C.... –at worst linear, but may be polylogarithmic Shulman, Vazirani (quant-ph/980460) - using SIMD CA –can distill qubits where SNR independent of system size
Our goals Develop the instrumentation and algorithms needed to manipulate information in natural systems Table-Top (size & cost) investigate scaling issues $50,000 $500,000 $5,000
Magnet Design Halbach arrays using Nd 2 Fe 14 B: 1.2T 2.0T Fermi Lab - iron is a good spatial filter
Compilation Multiplexed Add: function program = madd(cnumif0, cnumif1, enabindex, selindex, inputbits, outputbits, BOOLlowisleft) % outputbits MUST be zeros %%%%%%%%%%%%%%%%%%%%% % madd.m % Implements adding a classical number to a quantum number, mod 2^L. % If N is the thing we want to factor, then selindex says whether N-cnum is less than or % greater than B: N-cnum>b --> add cnum, else N-cnum add cnum - N + 2^L % Enabindex must all be 1, else choose the classical addend to be zero. % Edward Boyden, % INPUT % cnum classical number to be added % indices column vector of indices on which to operate % carryindex carry qubit that you're using %%%%%%%%%%%%%%%%%%%%% L = length(outputbits); %It's an L-bit adder: contains L-1 MUXFAs and 1 MUXHA if (L!=length(inputbits)) %MAKE SURE OF THIS! program = 'Something''s wrong.'; return; end; cbitsif0 = binarize(cnumif0); % BINARIZE! cbitsif1 = binarize(cnumif1); cL = length(cbitsif0); if (cL>L) Can you implement? gcc grover.c -o chloroform
Nature is a Computer IBM Dr. Isaac Chuang Dr. Nabil Amer MIT Prof. Neil Gershenfeld Prof. Seth Lloyd U.C. Berkeley Prof. Alex Pines Dr. Mark Kubinec Stanford Prof. James Harris Prof. Yoshi Yamamoto