Quantum Computers
Total Page:16
File Type:pdf, Size:1020Kb
Quantum Computers ERIK LIND. PROFESSOR IN NANOELECTRONICS Erik Lind EIT, Lund University 1 Disclaimer Erik Lind EIT, Lund University 2 Quantum Computers Classical Digital Computers Why quantum computers? Basics of QM • Spin-Qubits • Optical qubits • Superconducting Qubits • Topological Qubits Erik Lind EIT, Lund University 3 Classical Computing • We build digital electronics using CMOS • Boolean Logic • Classical Bit – 0/1 (Defined as a voltage level 0/+Vdd) +vDD +vDD +vDD Inverter NAND Logic is built by connecting gates Erik Lind EIT, Lund University 4 Classical Computing • We build digital electronics using CMOS • Boolean Logic • Classical Bit – 0/1 • Very rubust! • Modern CPU – billions of transistors (logic and memory) • We can keep a logical state for years • We can easily copy a bit • Mainly through irreversible computing However – some problems are hard to solve on a classical computer Erik Lind EIT, Lund University 5 Computing Complexity Searching an unsorted list Factoring large numbers Grovers algo. – Shor’s Algorithm BQP • P – easy to solve and check on a 푛 classical computer ~O(N) • NP – easy to check – hard to solve on a classical computer ~O(2N) P P • BQP – easy to solve on a quantum computer. ~O(N) NP • BQP is larger then P • Some problems in P can be more efficiently solved by a quantum computer Simulating quantum systems Note – it is still not known if 푃 = 푁푃. It is very hard to build a quantum computer… Erik Lind EIT, Lund University 6 Basics of Quantum Mechanics A state is a vector (ray) in a complex Hilbert Space Dimension of space – possible eigenstates of the state For quantum computation – two dimensional Hilbert space ۧ↓ Example - Spin ½ particle - ȁ↑ۧ 표푟 Spin can either be ‘up’ or ‘down’ Erik Lind EIT, Lund University 7 Basics of Quantum Mechanics • A state of a system is a vector (ray) in a complex vector (Hilbert) Space. • Denoted 푥 using Dirac notation. (You can think of this as a vector in 3D space.) • Orthonormal basis vectors – various observables (Energy, position, momentum, spin direction…). • A state can be in a superposition of the basis vectors Example – the position of Example – spin of a electron 0 1 ۧ↓ an electron on a molecule ۧ↓ 0 ۧ↑ȁ 1 2 ۧ↑ȁ 5 3 2 4 4 5 3 Erik Lind EIT, Lund University 8 Basics of Quantum Mechanics Depending on the choise of basis – the state of an particle can be described using different basis vectors! 푏 푎 푛 푏1 푛 휓 = 푎1 휓 = 푎 푏1 + 푏 푏2 + 푐 푏3 + ⋯ 푎4 Ex: Difference between position and momentum eigenstates 푏4 Uncertainty relation 푥, 푝 = −푖ℏ 푎1 푏2 푎3 Coefficients 훼, 훽, 훾 are complex numbers 푏3 푎 2 State is normalized: 훼 2 + 훽 2+ 훾 2 + ⋯ = 1 Can be expressed in various bases (observables) • Energy • Position • Momentum • … Erik Lind EIT, Lund University 9 Basics of Quantum Mechanics ۧ↓ For quantum computation – effective 2D dimensional Hilbert space This is called a quantum bit (qubit, qbit) ۧ↑ȁ 휓 = 훼 0 + 훽 1 = 훼 ↑ + 훽 ↓ Example - Spin ½ particle - ȁ↑ۧ ↓ۧ : 2 dimensional Hilbert space • 훼 휓 = 훼 0 + 훽 1 훽 a anb b – two complex numbers State is normalized: 훼2 + 훽2 = 1 Matrix representation of a state Erik Lind EIT, Lund University 10 Quantum Bit – two level system Quantum system with only two distinct (energy) states • Spin ½ particle (spin) • Double quantum dot (position) 0 1 • Atom (orbitals) E2 x E1 Normalized Complex coeff. 휓 = 훼 0 + 훽 1 Bloch Sphere representation 휃 휃 훼 휓 = sin 0 + cos 푒푖휙 1 2 2 훽 Computational basis (with spins) • Spin up in z-direction For one spin ½ particle – the Bloch sphere • Spin down in z-direction represent the spatial orientation of the spin! Spin in x-direction? 1 1 푆푥 = 0 + 1 2 2 Erik Lind EIT, Lund University 11 Many qubits A Qubit A Tensor product 퐻퐴 휓 = 0 퐴 ⊗ 1 퐵 = 01 퐻퐵 B Qubit B Example: Two non-interacting qubits – product state 휓 퐴 = 훼퐴 0 퐴 + 훽퐴 1 퐴 휓 = 휓 퐴 ⊗ 휓 퐵 = 훼퐴훼퐵 00 + 훽퐴훼퐵 10 + 훼퐴훽퐵 01 + 훽퐴훽퐵 11 휓 퐵 = 훼퐵 0 퐵 + 훽퐵 1 퐵 Example: Two correlated qubits – entangled state 1 휓 = ( 10 + 01 ) This can NOT be written 2 as a product state! ۧ↓↓ N Coupled qbits requires 2푁 complex Example: General 2 qubit state numbers to describe 휓 = 훼 00 + 훽 10 +훾 01 +훿 11 ۧ↑↑N=100 : 2100 ≈ 1030 complex numbers ↑↓ۧ ȁ ۧ↑↓ȁ Erik Lind EIT, Lund University 12 Superposition of 2-bit states 1 ۧ↑↓휓 = 0 + 1 one spins – 2 states ȁ 2 1 휓 = 00 + 10 + 01 + 11 Two spins – 4 states 4 1 휓 = 000 + 001 + 010 + 100 + 011 + 110 + 101 + 111 Three spins – 8 states 8 휓 = ⋯ . 100 spin ½ : 2100 = 1030 dimensional space • There are 1080 atoms in the observable 휓 = ⋯ . 300 spin ½ : 2300 = 1090 dimensional space universe • Hilbert spaces are big! A quantum state can represent a huge number of 0’s and 1’ simultaneously! Erik Lind EIT, Lund University 13 Quantum System Dynamics A quantum system evolves in time set by the 휓(푡) = 훼(푡) 푎1 + 훽(푡) 푎2 + 훾(푡) 푎3 + ⋯ Schrödinger Equation, where H is the Hamilton operator. 푎푛 푑 푖ℏ 휓(푡) = 퐻(푡) 휓(푡) 푎4 푑푡 푝Ƹ 2 퐻 = + 푉(푥ො) Electron in potential 2푚 푎1 퐻 = −훾퐵푧휎푧 Spin in magnetic field 푎3 푎 • This give a set of coupled differential equations for 2 the coefficients a b g… • By applying an Hamiltonian to a quantum state – move the state in the Hilbert space over time. We can in this way control a quantum state. • This is deterministic and time reversible! Erik Lind EIT, Lund University 14 Measurement in Quantum Mechanics Measurement – apparatus which determines an 휓 = 훼 푎1 + 훽 푎2 + 훾 푎3 + ⋯ observable (Energy, position, Spin direction…) 푎푛 1 1 푎 휓 = ↑ + ↓ 4 2 2 푎1 50% ↑ ↓ ? 푎3 푎2 During a measurement of an observable a State collapses to an eigenstate with probability 50% 2 푃푛 = 푎푛 휓 푑 • Not deterministic and NOT time reversible! 푖ℏ 휓(푡) = 퐻(푡) 휓(푡) ? 푑푡 Erik Lind EIT, Lund University 15 Measurement of states 푁 = 100 ↔ 1030 푠푡푎푡푒푠 1 휓 = 000 … + 001 … + 010 … + 100 … + 011 … + 110 … + ⋯ 2푁 Will randomly select ONE of the states with equal probability! Gives 100 bits of information or out 1030 Direct application of quantum parallelism is not an easy task! Entangeled state 1) Separate two entangled qubits (by light years (!)) 2) Measure qubit A (will show 0 or 1 with 50%) 3) If A shows 0 퐴 - we now know that qubit B is 1 퐵 1 휓 = ( 10 + 01 ) 4) Spooky action at a distance! 2 Erik Lind EIT, Lund University 16 Single quantum Gate – Bloch Sphere rotation 휓 휓′ Quantum gates are U reversible! Let H(t) act on 휓 for some time t0. These can in general be build by applying time varying B/E field to a spin/position qbit in x,y and z direction for 휃 휃 a fixed time. 휓 = sin 0 + cos 푒푖휙 1 2 2 0 1 NOT gate p rotation around x axis 0 → 1 Matrix representation 1 0 of a operator 훼 휓 = 훼 0 + 훽 1 훽 1 1 1 1 Matrix representation Hadamard gate: 0 → 0 + 1 of a operator Matrix representation of a state 2 2 1 −1 These also work on superpositions: 휓 = 훼 0 + 훽 1 Erik Lind EIT, Lund University 17 Quantum Gate – Controlled Gate Let H(t) act on x and y for some time t0. 휓′ 푥 U 푥 푦 푈 푦 or 푦 If x=0 do nothing to qubit y If x=1 apply rotation U to qubit y CNOT Gate 휃 휃 휓 = sin 0 + cos 푒푖휙 1 2 2 If x = 0 then y=y If x = 1 then apply NOT to y • All controlled gates will be unitary • Controlled Gates also work on super positions – quantum parallelism! Erik Lind EIT, Lund University 18 Universial set of quantum gates These set of gates are ‘universal’ Can implement all logic functions NAND, NOR etc. 1 qbit gate – controlled rotation of Bloch Sphere Controlled Gates – almost anyone will do, controlled NOT (CNOT) or controlled phase CPHASE most common. 1 1 1 1 1 1 1 (퐻ȁ0ۧ ∶ = 퐻ȁ0ۧ = (ȁ0ۧ + ȁ1ۧ 2 1 −1 0 2 1 2 휓 = 훼 00 + 훽 10 +훾 01 +훿 11 훼 훽 훾 훿 Erik Lind EIT, Lund University 19 Example - Deutsch’s Algorithm 푓 푥 =? x ?f ?f ?f ?f 푥 푓 0 ≠ 푓 1 “balanced” Uf 푥 0 0 0 1 1 푦 푦⨁푓(푥) 푓 0 = 푓 1 “constant” 1 0 1 0 1 c b b c 푓(푥) takes a single bit {0,1} into a single output bit {0,1}. If we don’t know if f(x) is “balanced” or “constant” – but would like to know Classical Computer – calculate f(0) and f(1) and compare – need to evaluate f twice! The quantum circuit below can achieve this by evaluating f(x) only once! 0 퐴 H Uf H Measure qubit A 0 푓 0 = 푓 1 1 푓 0 ≠ 푓 1 1 퐵 H Erik Lind EIT, Lund University 20 General Quantum Computing x0 x0 x1 x1 x2 … x2 … … 0 f0 푥 0 → 푥 푓(푥) 0 f1 0 f2 … … 2푁−1 1 푁 1 Input register 0 + 1 = 푥 This can be done with N Hadamard gates 2 2푁/2 0 By just computing the f(x) once, f(x) is 2푁−1 1 “calculated” for all 2N values! 푥 0 → 푥 푓(푥) 30 2푁/2 N=100 – 10 speedup! 0 2푁−1 1 However, a direct measurement of x 푥 푓(푥) → 푥0 푓(푥0) 2푁/2 gives only ONE random value of f(x0)! 0 Measurement of 푥 Need clever algorithms similar to Deutsch Problem to try and extract more information from the correlation between x and f(x) Erik Lind EIT, Lund University 21 Decoherence – random Bloch sphere rotation A single qbit will couple to the environment (example for a single ½ spin) • Nuclear spins • Stray B-fields Couples through spin- • Electrical fluctuations orbit interactions • Interactions with photons • Electrical Noise This will induce random 퐻(푡) which randomly shifts around the quantum state.