1 / 50

Projects on Quantum Circuits Simulation

Projects on Quantum Circuits Simulation. George F. Viamontes, Igor L. Markov, and John P. Hayes {gviamont,imarkov,jhayes}@umich.edu Advanced Computer Architecture Laboratory University of Michigan, EECS. EECS Department University of Michigan, Ann Arbor, MI 48109.

donnadavis
Télécharger la présentation

Projects on Quantum Circuits Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Projects on Quantum CircuitsSimulation George F. Viamontes, Igor L. Markov, and John P. Hayes {gviamont,imarkov,jhayes}@umich.edu Advanced Computer Architecture Laboratory University of Michigan, EECS EECS Department University of Michigan, Ann Arbor, MI 48109

  2. Quantum Approaches to Logic Circuit Synthesis and TestingThe University of Michigan: John Hayes and Igor Markov Quantum domain Parallelism Microscale Practical logic circuits Synthesis and test algorithms Classical domain Automation Scalability

  3. New Ideas • Integrated approach to both quantum and classical logic circuits • Exploit quantum methods for classical circuit synthesis and testing problems • Scalable representation of quantum circuits • Multiobjective optimization techniques that are suited to automation (CAD)

  4. Impact • Quantum approaches promise more efficient computation in critical applications. • Automation is key to large-scale quantum circuit development • Development of practical algorithms for quantum circuit synthesis and test • Use of quantum methods to improve testing and synthesis of classical circuits

  5. Ongoing Projects at U.Michigan • Simulation of quantum circuits • BDD-based QuIDDPro simulator • Simulating Grover’s algorithm • Synthesis of two-qubit circuits • Bounds for gate counts in two-qubit circuits • Quantum algorithms that improve memory usage • Quantum counters

  6. Quantum Circuit Simulation Using QuIDDs • Motivation • Need for a better way to simulate quantum circuits • Quantum Information Decision Diagram (QuIDD) • Novel data representation that usesBinary Decision Diagrams (BDD) widely used in computer-aided circuit design • Captures some exponentially-sized matrices and vectors in a form that grows polynomially with the number of qubits • Multiplies matrices and vectors in compressed form • QuIDDPro Simulator • Our QuIDD-based simulator implemented in C++ • Experiments with Grover’s algorithm demonstrate fast execution andlow memory utilization

  7. Problem • Simulation of quantum computing on a classical computer • Requires exponentially growing time and memory resources • Goal: Improve classical simulation • Their Solution: Quantum Information Decision Diagrams (QuIDDs)

  8. H H Operations on Multiple Qubits • Tensor product of operators/qubits

  9. Previous Work • Traditional array-based representations are insensitive to the values stored • Qubit-wise multiplication • 1-qubit operator and n-qubit state vector • State vector requires exponential memory • BDD techniques • Multi-valued logic for q. circuit synthesis [1] • Shor’s algorithm simulator (SHORNUF) [8]

  10. Redundancy in Quantum Computing • Matrix/vector representation of quantum gates/state vectors contains block patterns • The tensor product propagates block patterns in vectors and matrices

  11. Example of Propagated Block Patterns

  12. QuIDD Structure

  13. Data Structure that Exploits Redundancy • Binary Decision Diagrams (BDDs) exploit repeated sub-structure • BDDs have been used to simulate classical logic circuits efficiently [6,2] • Example: f = a AND b f a Assign value of 1 to variable x b Assign value of 0 to variable x 1 0

  14. BDDs in Linear Algebra • Algebraic Decision Diagrams (ADDs) treat variable nodes as matrix indices [2], also MTBDDs • ADDs encode all matrix elements aij • Input variables capture bits of iand j • Terminals represent the value of aij • CUDD implements linear algebra for ADDs (without decompression)

  15. Quantum Information Decision Diagrams (QuIDDs) • QuIDDs: an application of ADDsto quantum computing • QuIDD matrices : row (i), column (j) vars • QuIDD vectors: column vars only • Matrix-vector multiplication performed in terms of QuIDDs

  16. QuIDD Vectors f 00 01 10 11 0 + 0i 0 1 + 0i 1 Terminal value array

  17. QuIDD Data Representation f 00 01 10 11 00 01 10 11 0 1

  18. QuIDDs and ADDs • All dimensions are 2n • Row and column variables are interleaved • Terminals are integers which map into an array of complex numbers

  19. QuIDD Data Representation f R1,R0 \ C1, C0 00 01 10 11 00 01 10 11 0 1 C0 = 1, R0=0, R1=1

  20. QuIDD Operations

  21. QuIDD Operations • Based on the Apply algorithm [4,5] • Construct new QuIDDs by traversing two QuIDD operands based on variable ordering • Perform “op” when terminals reached (op is *, +, etc.) • General Form:f op g where f and g are QuIDDs, and x and y are variables in f and g, respectively:

  22. Tensor Product • Given A B • Every element of a matrix Ais multiplied by the entirematrix B • QuIDD Implementation: Use Apply • Operands are AandB • Variables of operandBare shifted • “op” is defined to be multiplication

  23. Other Operations • Matrix multiplication • Modified ADD matrix multiply algorithm [2] • Support for terminal array • Support for row/column variable ordering • Matrix addition • Call to Apply with “op” set to addition • Qubit measurement • DFS traversal or measurement operators

  24. Simulation Results

  25. QuIDDPro Simulation Results(Grover’s search algorithm) for Oracle 1 Memory Usage Runtime Blitz++ Matlab Linear Growth using QuIDDPro 15 qubits

  26. QuIDDPro Simulation of Grover’s Algorithm Memory Usage Runtime Same results for any oracle that distinguishes a unique element

  27. QuIDDPro Simulation of Grover’s Algorithm Memory Usage Runtime O(n) O(p(n)(√2)n)

  28. Number of Iterations • Use formulation from Boyer et al. [3] • Exponential runtime(even on an actual quantum computer) • Actual Quantum Computer Performance: ~ O(1.41n) time and O(n) memory

  29. Simulation Results forGrover’s Algorithm • Linear memory growth(numbers of nodes shown)

  30. Oracle 1: Runtime (s)

  31. Oracle 1: Peak Memory Usage (MB) Linear Growth using QuIDDPro

  32. Validation of Results • SANITY CHECK: Make sure that QuIDDPro achieves highest probability of measuring the item(s) to be searched using the number of iterations predicted by Boyer et al. [3]

  33. Consistency with Theory

  34. Grover Results Summary • Asymptotic performance • QuIDDPro: ~ O(1.44n) time and O(n) memory • Actual Quantum Computer • ~ O(1.41n) time and O(n) memory • Outperforms other simulation techniques • MATLAB:(2n) time and (2n) memory • Blitz++:(4n) time and (2n) memory

  35. What about errors? • Do the errors and mixed states that are encountered in practical quantum circuits cause QuIDDs to explode and lose significant performance?

  36. NIST Benchmarks • NIST offers a multitude of quantum circuit descriptions containing errors/decoherence and mixed states • NIST also offers a density matrix C++ simulator called QCSim • How does QuIDDPro compare to QCSim on these circuits?

  37. QCSim vs. QuIDDPro • dsteaneZ: 13-qubit circuit with initial mixed state that implements the Steane code to correct phase flip errors • QCSim: 287.1 seconds, 512.1MB • QuIDDPro: 0.639 seconds, 0.516 MB

  38. QCSim vs. QuIDDPro (2) • dsteaneX: 12-qubit circuit with initial mixed state that implements the Steane code to correct bit flip errors • QCSim: 53.2 seconds, 128.1MB • QuIDDPro: 0.33 seconds, 0.539 MB

  39. Complexity Analysis Results

  40. Recall the Tensor Product

  41. Key Formula • Given QuIDDs , the tensor product QuIDD contains nodes

  42. Persistent Sets • A set is persistent if and only if the set of n pair-wise products of its elements is constant (i.e. the pair-wise product n times) • Consider the tensor product of two matrices whose elements form a persistent set • The number of unique elements in the resulting matrix will be a constant with respect to the number of unique elements in the operands

  43. Relevance to QuIDDs • Tensor products with n QuIDDs whose terminals form a persistent set produce QuIDDs whose sets of terminals do not increase with n

  44. Main Results • Given a persistent set and a constant C, consider n QuIDDs with at most C nodes each and terminal values from . • The tensor product of those QuIDDs has O(n) nodes and can be computed in O(n) time. • Matrix multiplication with QuIDDs A and B as operands requires time and produces a result with nodes [2]

  45. Applied to Grover’s Algorithm • Since O(1.41n) Grover iterations are required, and thus O(1.41n) matrix multiplications, does Grover’s algorithm induce exponential memory complexity when using QuIDDs? • Answer: NO! • The internal nodes of the state vector/density matrix QuIDD are the same at the end of each Grover iteration • Runtime and memory requirements are therefore polynomial in the size of the oracle QuIDD

  46. Work in Progress:On The Power of Grover’s Algorithm • Database search with a black-box predicatep(x)=1 • Classical evaluation of p(x) on one input (queries) • Quantum (parallel) evaluation of p(x) facilitates an implementation with fewer queries • We also assume that p(x) is given as a BDD/QuIDD • BDDs are used to represent functions in practical CAD • However, a BDD is not really a black-box • BDD operations evaluate p(x) on multiple inputs at once(no quantum computation is involved) • Grover on QuIDDs: same query complexity as in the quantum case • In practice this simulation is very fast and needs little memory Non-trivial assumption

  47. Ongoing Work • Explore error/decoherence models • Simulate Shor’s algorithm • QFT and its inverse are exponential in size as QuIDDs • Other operators are linear in size as QuIDDs • QFT and its inverse are an asymptotic bottleneck • Limitations of quantum computing

  48. Relevant Work G. Viamontes, I. Markov, J. Hayes, “Improving Gate-Level Simulation of Quantum circuits,” Los Alamos Quantum Physics Archive, Sept. 2003 (quant-ph/0309060) G. Viamontes, M. Rajagopalan, I. Markov, J. Hayes, “Gate-Level Simulation of Quantum Circuits,” Asia South Pacific Design Automation Conference, pp. 295-301, January 2003 G. Viamontes, M. Rajagopalan, I. Markov, J. Hayes, ‘Gate-Level Simulation of Quantum Circuits,” 6th Intl. Conf. on Quantum Communication, Measurement, and Computing, pp. 311-314, July 2002

  49. References [1] A. N. Al-Rabadi et al., “Multiple-Valued Quantum Logic,” 11th Intl. Workshop on Post Binary ULSI, Boston, MA, May 2002. [2] R. I. Bahar et al., “Algebraic Decision Diagrams and their Applications”, In Proc. IEEE/ACM ICCAD, pp. 188-191, 1993. [3] M. Boyer et al., “Tight Bounds on Quantum Searching”, Fourth Workshop on Physics and Computation, Boston, Nov 1996. [4] R. Bryant, “Graph-Based Algorithms for Boolean Function Manipulation”, IEEE Trans. On Computers, vol. C-35, pp. 677-691, Aug 1986. [5] E. Clarke et al., “Multi-Terminal Binary Decision Diagrams and Hybrid Decision Diagrams”, In T. Sasao and M. Fujita, eds, Representations of Discrete Functions, pp. 93-108, Kluwer, 1996.

  50. References [6] C.Y. Lee, “Representation of Switching Circuits by Binary Decision Diagrams,” Bell System Technical Jour., 38:985-999, 1959. [7] D. Gottesman, “The Heisenberg Representation of Quantum Computers,” Plenary Speech at the 1998 Intl. Conf. on Group Theoretic Methods in Physics, http://xxx.lanl.gov/abs/quant-ph/9807006 [8] D. Greve, “QDD: A Quantum Computer Emulation Library,” http://home.plutonium.net/~dagreve/qdd.html

More Related