1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 2 Algorithm “Improved classical simulation of quantum 3 Appendix circuits dominated by Clifford gates” Presented by Patrick Rall Publication by Sergey Bravyi and David Gosset on Jan 29, 2016 October 14, 2016 1/20
� � Model of Computation 1 Introduction Model of Computation Gottesmann-Knill � Output Theorem Magic States Input 2 Algorithm Prep 3 Appendix Time Evolution: U Trash | 0 � Ancillas | 0 � | 0 � m ◮ System: input qubits + ancilla qubits = n qubits ◮ Hilbert space: C 2 n - exponentially large ◮ Intuition: Quantum computation efficiently calculates matrix multiplication U | Ψ in � 2/20
Model of Computation: Output Probabilities 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 2 Algorithm ◮ Simplification: assume input state | 0 ⊗ n � 3 Appendix ◮ Measure output qubit: some probability distribution ◮ Goal: sample from this distribution � 0 ⊗ n � � c x = � x | U P x = | c x | 2 = � 0 ⊗ n � � U † | x �� x | U � � 0 ⊗ n � ◮ Here | x �� x | is a projector onto an output state 3/20
Classical simulation: na¨ ıve approach 1 Introduction Model of Computation Gottesmann-Knill Theorem ◮ Given U = U m ... U 3 U 2 U 1 , calculate P x : Magic States 2 Algorithm 0 ⊗ n � � U † 1 U † 2 ... U † � 0 ⊗ n � � � P x = m | x �� x | U m ... U 2 U 1 3 Appendix ◮ Calculate m matrix multiplications in C 2 n ıve runtime: m (2 n ) ω , best known 1 ω = 2 . 3737 ◮ Na¨ Interpretation ◮ Exponential in n : always intractable for large enough n ◮ Getting rid of exponentiality? Would imply: Quantum computing = Classical computing ◮ Algorithm ‘moves’ exponent in n to other parameter 4/20 1 Coppersmith-Winograd algorithm
Stabilizer States 1 Introduction Model of ◮ D. Gottesman (1998): “The Heisenberg Representation Computation Gottesmann-Knill Theorem of Quantum Computers” 2 Magic States 2 Algorithm ◮ Consider an Abelian subgroup G ⊂ P n with − I �∈ G . 3 Appendix ◮ Def: | φ � is stabilized by G if P | φ � = | φ � , ∀ P ∈ G . ◮ Def: | φ � is a stabilizer state if stabilized by some G ◮ Clifford gates map stabilizer states to stabilizer states ◮ Example: G = � X ⊗ X , Z ⊗ Z � ⊂ P 2 ◮ Unique stabilizer state: | φ � = | 00 � + | 11 � √ 2 ◮ Degrees of freedom: G defined by k stabilizer generators stabilizes 2 n − k states. 5/20 2 https://arxiv.org/abs/quant-ph/9807006v1
The Gottesmann-Knill Theorem 1 Introduction ◮ Stabilizer projector: project onto space stabilized by G Model of Computation Gottesmann-Knill Theorem 1 + P Magic States � Π G = 2 Algorithm 2 P ∈ G 3 Appendix ◮ Clifford gates can act on stabilizer projectors: act on each generator of G ◮ Want to calculate: � U † 1 U † 0 ⊗ n � 2 ... U † � � 0 ⊗ n � � P x = m | x �� x | U m ... U 2 U 1 ◮ What if U i ∈ C n ? Then, given | x �� x | = Π x : � U † 1 U † 0 ⊗ n � � � 0 ⊗ n � � P x = 2 ... Π G m ( x ) ... U 2 U 1 � U † 0 ⊗ n � � � 0 ⊗ n � 0 ⊗ n � � � 0 ⊗ n � � � = 1 Π G 2 ( x ) U 1 = � Π G ( x ) ◮ Result: can calculate circuit in polynomial time! 6/20
Clifford + T: A universal gate set 1 Introduction Model of Computation Gottesmann-Knill Theorem ◮ Circuits composed of Cliffords, i.e. H , S , CNOT , can be Magic States 2 Algorithm simulated efficiently 3 Appendix ◮ { H , S , CNOT } acting on stabilizer states only is not universal ◮ Mathematical fact ◮ Otherwise: quantum computing = classical computing ◮ Add the T gate to obtain universal gate set: � 1 � 0 T = e i π/ 4 0 ◮ Problem: T gate hard to simulate classically ◮ Incidentally: T gate also hard to build in experiment 7/20
Gadgetization with Magic States 1 Introduction Model of Computation Gottesmann-Knill Theorem ◮ Consider a ‘magic state’: Magic States 2 Algorithm 1 3 Appendix ( | 0 � + e i π/ 4 | 1 � ) | A � = √ 2 ◮ Use | A � as a resource to write T in terms of Cliffords: = • T S | A � ◮ Measurement destroys magic state in the process. ◮ Input to circuit was | 0 ⊗ n � , now is | 0 ⊗ n A ⊗ t � . ◮ t = number of T gates in circuit 8/20
Converting the problem 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 2 Algorithm | 0 ⊗ n � Arbitrary U | 0 ⊗ n � 3 Appendix Clifford V Converted to → | A ⊗ t � The challenge ◮ Before: non-Clifford circuit with T gates ◮ After: non-stabilizer ‘magic’ resource state | A ⊗ t � 9/20
Algorithm Goal 1 Introduction Model of ◮ Goal: Sample from probability distribution Computation Gottesmann-Knill Theorem Magic States 0 ⊗ n � � U † Π X U � 0 ⊗ n � � � P x = 2 Algorithm 3 Appendix ◮ Gadgetize non-Clifford unitary U to Clifford V with ‘magic’ resource state | A ⊗ t � = • T S | A � ◮ How to deal with measurement? Post-select measurement outcomes into string y . Calculate: P x = � A ⊗ t 0 ⊗ n | V † (Π x ⊗ Π y ) V | 0 ⊗ n A ⊗ t � � A ⊗ t 0 ⊗ n | V † ( I ⊗ Π y ) V | 0 ⊗ n A ⊗ t � ◮ Works for any y ! 10/20
Concept: Stabilizer Rank χ 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States ◮ Remaining problem: non-stabilizer state | A ⊗ t � 2 Algorithm ◮ Write as a linear combination of χ stabilizer states | φ a � 3 Appendix χ � � � A ⊗ t � ≈ z a | φ a � = | Ψ � a ◮ 2 t stabilizer states: Na¨ ıve upper bound χ ≤ 2 t � A ⊗ 2 � ◮ Clever trick 1: Recognize that � is a sum of two stabilizer states. Divide | A ⊗ t � into pairs: χ ≤ 2 t / 2 ◮ Clever trick 2 (see appendix): Achieve χ ∼ O (2 0 . 23 t ). Authors conjecture that this is optimal. 11/20
Summary Calculation 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 0 ⊗ n � � U † Π x U � 0 ⊗ n � � � P x = 2 Algorithm 3 Appendix = � A ⊗ t 0 ⊗ n | V † (Π x ⊗ Π y ) V | 0 ⊗ n A ⊗ t � � A ⊗ t 0 ⊗ n | V † ( I ⊗ Π y ) V | 0 ⊗ n A ⊗ t � � A ⊗ t | Π ¯ G ( x , y ) | A ⊗ t � = � A ⊗ t 0 ⊗ n | Π G ( x , y ) | 0 ⊗ n A ⊗ t � � A ⊗ t 0 ⊗ n | Π H ( y ) | 0 ⊗ n A ⊗ t � = 1 � ¯ 2 u A ⊗ t � � Π H ( y ) | A ⊗ t � G ( x , y ) | A ⊗ t �| 2 G ( x , y ) | Ψ �| 2 | Π ¯ | Π ¯ = 1 H ( y ) | A ⊗ t �| 2 ≈ 1 2 u | Π ¯ 2 u | Π ¯ H ( y ) | Ψ �| 2 G ( x , y ) | Ψ �| 2 and | Π ¯ ◮ Calculation boils down to | Π ¯ H ( y ) | Ψ �| 2 ◮ Approx. requires random y , rather than arbitrary y 12/20
The Algorithm 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 1. Choose random y , evaluate projectors Π ¯ G ( x , y ) , Π ¯ H ( y ) 2 Algorithm 2. Compute | A ⊗ t � ≈ � χ a z a | φ a � = | Ψ � 3 Appendix such that |� A ⊗ t | Ψ �| 2 ≥ 1 − δ , where | φ a � are stabilizer states, χ = O (2 0 . 23 t δ − 1 ) 2 2 � � � � 3. Evaluate inner products � Π ¯ G ( x , y ) | Ψ � and � Π ¯ H ( y ) | Ψ � � � � � � � 2 2 χ χ � � � � | Π | Ψ �| 2 = � � � � � � � Π z a | φ a � = z a Π | φ a � � � � � � � � � a � � a � 4. Compute distribution P x =0 , P x =1 = 1 − P x =0 , and sample from distribution. 13/20
Runtime 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States ◮ Sample from output distribution for a string x : 2 Algorithm 3 Appendix poly( n , m ) + 2 0 . 23 t t 3 w 4 ◮ Exponential: number of T gates t ◮ Polynomial: n qubits, width m circuit ◮ Length of output string | x | = w ◮ Projector Π x has 2 w generators: w 4 via trick (appendix) ◮ Exponential part is highly parallelizable ◮ Each term in � χ a z a Π | φ a � can be calculated independently 14/20
Conclusions, next steps 1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 2 Algorithm Implementation 3 Appendix ◮ MATLAB implementation by Bravyi, Gosset ◮ Hidden shift algorithm on a laptop ◮ 40 qubits, 50 T gates ◮ Python+C implementation by Iskren Vankov, me ◮ Upcoming: CUDA implementation? New concept: Stabilizer Rank ◮ How to decompose arbitrary | Ψ � into stabilizer states? ıve runtime O ( m 2 n ) to O ( m 2 α n ) for α < 1? ◮ Improve na¨ 15/20
1 Introduction Model of Computation Gottesmann-Knill Theorem Magic States 2 Algorithm Appendix 3 Appendix ◮ Alexei Kitaev’s Stabilizer Toolkit ◮ Sampling larger bitstrings x ◮ Stabilizer decomposition of | A ⊗ t � ◮ Computing inner products in O ( χ ) rather than O ( χ 2 ) 16/20
Recommend
More recommend