Languages and Representations for Quantum Computing: Stabilizers and Tensor Networks
Total Page:16
File Type:pdf, Size:1020Kb
Languages and representations for quantum computing: stabilizers and tensor networks Yipeng Huang Rutgers University October 14, 2020 1/32 Where we are in this class I Near-term quantum algorithms: QAOA, VQE. I Quantum programming languages: Cirq, Qiskit, assertions, verification. I Quantum supremacy: prototyping vs. simulation. I Quantum architectural interface: universal logical gatesets & machine native gatesets. I Quantum micro-architecture & devices. 2/32 Importance of representations in quantum intuition, programming, and simulation I Conventional quantum circuits and state vector view of QC conceals symmetries, hinders intuition. I Classical simulation of quantum computing is actually tractable for a certain subset of quantum gates. I Both the logical and native gatesets in a quantum architecture need to be universal for quantum advantage. 3/32 Several views/representations of quantum computing I Programming has several views: functional programming, procedural programming. I Physics has several views: Newtonian, Lagrangian, Hamiltonian Different views reveal different symmetries, offer different intuition. 4/32 Several views/representations of quantum computing I Schr¨odinger:state vectors and density matrices I Heisenberg: stabilizer formalism I Tensor-network I Feynman: path sums A survey of these representations of quantum computing is given in Chapter 9 of this recent book [Ding and Chong, 2020]. 5/32 Several views/representations of quantum computing I Schr¨odinger:state vectors and density matrices I Heisenberg: stabilizer formalism I Tensor-network I Feynman: path sums I Binary decision diagrams (new?) I Logical satisfiability equations (new? see 10/28/2020 seminar) 6/32 Schr¨odingerview I In Schr¨odingerquantum mechanics description, emphasis on how states evolve. I CNOT0;1(H0 ⊗ I1) j00i = 2 p1 0 p1 0 3 2 3 2 2 1 0 p1 0 p1 6 2 2 7 607 CNOT0;1 6 7 6 7 = 6 p1 0 p−1 0 7 0 4 2 2 5 4 5 0 p1 0 p−1 0 2 2 2 3 2 p1 3 2 p1 3 1 0 0 0 2 2 60 1 0 07 6 0 7 6 0 7 6 7 6 7 = 6 7 0 0 0 1 6 p1 7 6 0 7 4 5 4 2 5 4 5 0 0 1 0 p1 0 2 I The Schrodinger view requires exponential storage: A quantum computer with N qubits can be in superposition of 2N basis states, requires 2N amplitudes to fully specify state. 7/32 Heisenberg view / stabilizer formalism I In Heisenberg quantum mechanics description, emphasis on how operators evolve. I If we limit operations to the Clifford gates (a subset of quantum gates), simulation tractable in polynomial time and space. I Covers some quantum algorithms: quantum superdense coding, quantum teleportation, Deutsch-Jozsa, Bernstein-Vazirani, quantum error correction, most quantum error correction protocols. I A model for probabilistic (but not quantum) computation. 8/32 General strategy for using stabilizers to simulate quantum circuits consisting of only Clifford gates 1. Start with N qubits with initial state j0i⊗N . 2. Represent the state as its group of stabilizers. 3. When simulating the quantum circuit, decompose the Clifford gates to stabilizer gates fCNOT ; H; Pg. 4. Apply each of the stabilizer gates to the stabilizer representation. 9/32 Special places on the Bloch sphere Figure: Bloch sphere showing pole states. Source: Wikimedia. 10/32 Representing a state as its group of stabilizers I A unitary operator U stabilizes a pure state j i if U j i = j i 11/32 Representing a state as its group of stabilizers 1. I stabilizes everything. 2. −I stabilizes nothing. " # " # 0 1 p1 p1 3. X stabilizes j+i: X j+i = 2 = 2 = j+i 1 0 p1 p1 2 2 " # " # 0 1 p1 p1 4. −X stabilizes |−i: −X |−i = − 2 = 2 = |−i 1 0 p−1 p−1 2 2 " # " # 0 −i p1 p1 5. Y stabilizes j+ii: Y j+ii = 2 = 2 = j+ii i 0 pi pi 2 2 " # " # 0 −i p1 p1 6. −Y stabilizes |−ii: −Y |−ii = − 2 = 2 = |−ii i 0 p−i p−i 2 2 1 0 1 1 7. Z stabilizes j0i: Z j0i = = = j0i 0 −1 0 0 1 0 0 0 8. −Z stabilizes j1i: −Z j1i = − = = j1i 0 −1 1 1 12/32 Representing a state as its group of stabilizers In other words, 1. j0i is stabilized by fI ; Zg 2. j1i is stabilized by fI ; −Zg 3. j+i is stabilized by fI ; X g 4. |−i is stabilized by fI ; −X g 5. j+ii is stabilized by fI ; Y g 6. |−ii is stabilized by fI ; −Y g 13/32 Representing a state as its group of stabilizers 1. j0i is stabilized by fI ; Zg 2. j1i is stabilized by fI ; −Zg 3. j+i is stabilized by fI ; X g 4. |−i is stabilized by fI ; −X g 5. j+ii is stabilized by fI ; Y g 6. |−ii is stabilized by fI ; −Y g I The set of unitary matrices that stabilize j i form a group. I UyU j i = Uy j i = j i I if V j i = j i then UV j i = j i and VU j i = j i 14/32 Representing a state as its group of stabilizers 1. j0i is stabilized by fI ; Zg 2. j1i is stabilized by fI ; −Zg 3. j+i is stabilized by fI ; X g 4. |−i is stabilized by fI ; −X g 5. j+ii is stabilized by fI ; Y g 6. |−ii is stabilized by fI ; −Y g 15/32 Representing a state as its group of stabilizers For multi-qubit states, the group of stabilizers is the cartesian product of the single-qubit stabilizers I j00i = j0i ⊗ j0i is stabilized by fI ⊗ I ; I ⊗ Z; Z ⊗ I ; Z ⊗ Zg j00i+j10i j0i+j1i p = p ⊗ j0i = j+i ⊗ j0i is stabilized by I 2 2 fI ⊗ I ; I ⊗ Z; X ⊗ I ; X ⊗ Zg j00i+j11i p (which cannot be factored into a tensor product) is I 2 stabilized by fI ⊗ I ; X ⊗ X ; −Y ⊗ Y ; Z ⊗ Zg 16/32 Representing a state as its group of stabilizers For multi-qubit states, the group of stabilizers is the cartesian product of the single-qubit stabilizers I j0i ⊗ j0i is stabilized by fI ⊗ I ; I ⊗ Z; Z ⊗ I ; Z ⊗ Zg I j+i ⊗ j0i is stabilized by fI ⊗ I ; I ⊗ Z; X ⊗ I ; X ⊗ Zg The same (abelian) group properties hold. I The set of unitary matrices that stabilize j i form a group. I UyU j i = Uy j i = j i I if V j i = j i then UV j i = j i and VU j i = j i 17/32 Representing a state as its group of stabilizers Amazing fact: for any N-qubit stabilized state, only N elements needed to specify group. 1. j0i is stabilized by fI ; Zg, Z is generator 2. j1i is stabilized by fI ; −Zg, -Z is generator 3. j+i is stabilized by fI ; X g, X is generator 4. |−i is stabilized by fI ; −X g, -X is generator 5. j+ii is stabilized by fI ; Y g, Y is generator 6. |−ii is stabilized by fI ; −Y g, -Y is generator 7. j0i ⊗ j0i is stabilized by fI ⊗ I ; I ⊗ Z; Z ⊗ I ; Z ⊗ Zg, fI ⊗ Z; Z ⊗ I g is generator 8. j+i ⊗ j0i is stabilized by fI ⊗ I ; I ⊗ Z; X ⊗ I ; X ⊗ Zg, fI ⊗ Z; X ⊗ I g is generator j00i+j11i 9. p is stabilized by fI ⊗ I ; X ⊗ X ; −Y ⊗ Y ; X ⊗ Zg, 2 fX ⊗ X ; Z ⊗ Zg is generator 18/32 Representing a state as its group of stabilizers I Amazing fact: for any N-qubit stabilized state, only N elements needed to specify group|a result from abstract algebra group theory [Nielsen and Chuang, 2002, Appendix 2] I So long as the quantum circuit consists only of Clifford gates, only N elements needed to specify whole quantum state. I Contrast against 2N amplitudes needed to specify a general N-qubit quantum state vector. I For example a two-qubit states needs four amplitues fa0; a1; a2; a3g to specify quantum state j i = a0 j00i + a1 j01i + a2 j10i + a3 j11i. 19/32 General strategy for using stabilizers to simulate quantum circuits consisting of only Clifford gates 1. Start with N qubits with initial state j0i⊗N . 2. Represent the state as its group of stabilizers. 3. When simulating the quantum circuit, decompose the Clifford gates to stabilizer gates fCNOT ; H; Pg. 4. Apply each of the stabilizer gates to the stabilizer representation. 20/32 Stabilizer gates: fCNOT ; H; Pg 1. Hadamard gate: induces superpositions. 2. CNOT gate: induces entanglement. 1 0 3. Phase gate: induces complex phases. P = 0 i I Despite featuring superposition, entanglement, and complex amplitudes, is not universal for quantum computing. I We shall see that the deeply symmetrical structure of these gates prevent access to full quantum Hilbert space. 21/32 Stabilizer gates are a generator for Pauli gates (i.e., Clifford gates decompose to stabilizer gates) Pauli gates are rotations around respective axes by π. 1 0 1 0 1 0 Z = = = PP I 0 −1 0 i 0 i " 1 1 # " 1 1 # p p 1 0 p p I X = 2 2 2 2 = HZH p1 p−1 0 −1 p1 p−1 2 2 2 2 I Y = iXZ I X 2 = Y 2 = Z 2 = I I Symmetry is similar to quaternions. I With Clifford gates consisting of fCNOT ; H; P; I ; X ; Y ; Zg, sufficient to build many quantum algorithms, including: quantum superdense coding, quantum teleportation, Deutsch-Jozsa, Bernstein-Vazirani, quantum error correction, most quantum error correction protocols.