moving forward a non search based synthesis method
play

Moving Forward: A Non-Search Based Synthesis Method towards - PowerPoint PPT Presentation

Moving Forward: A Non-Search Based Synthesis Method towards Efficient CNOT-Based Quantum Circuit Synthesis Algorithms Mehdi Saeedi, Morteza Saheb Zamani, Mehdi Sedighi Email: {msaeedi, szamani, msedighi}@ aut.ac.ir Quantum Design Automation


  1. Moving Forward: A Non-Search Based Synthesis Method towards Efficient CNOT-Based Quantum Circuit Synthesis Algorithms Mehdi Saeedi, Morteza Saheb Zamani, Mehdi Sedighi Email: {msaeedi, szamani, msedighi}@ aut.ac.ir Quantum Design Automation Lab, Computer Engineering Department Amirkabir University of Technology Tehran, Iran ASPDAC 2008 1

  2. Outline Introduction  Basic Concept  Previous Work  Synthesis Algorithm (MOSAIC)  Experimental Results  Future Works  Conclusions  2

  3. Quantum Computing  The fundamental limits of CMOS technology  The enormous amount of required processing power for future applications  New computational models  Quantum computing 3

  4. Synthesis  Quantum information processing is in the preliminary state  No mature synthesis method for quantum circuit synthesis has been proposed yet  A systematic algorithm for Boolean reversible circuit synthesis 4

  5. Boolean Reversible Functions AND  n-input, n-output, a 0 a 1 a 2 f 0 f 1 f 2 F  Unique output 0 0 0 0 0 0 0 assignment 0 0 1 0 0 1 1  Example: a 3-input, 3- 0 1 0 0 1 0 2 output function 0 1 1 1 1 1 7 (0,1,2,7,4,5,6,3) 1 0 0 1 0 0 4 1 0 1 1 0 1 5 1 1 0 1 1 0 6 1 1 1 0 1 1 3 5

  6. Power dissipation  Landauer’s paper  Every lost bit causes an energy loss  When a computer erases a bit of information, the amount of energy dissipated into the environment is at least k B Tln2  Bennett’s paper  To avoid power dissipation in a circuit, the circuit must be built with reversible gates 6

  7. Applications of reversible circuits  Low power CMOS design  Reversible 4-bit adder  “A reversible carry-look-ahead adder using control gates”, Integration, the VLSI Journal , vol. 33, pp. 89-104, 2002  384 transistors with no power rails  Optical computing  Quantum computing  Each unitary quantum gate is intrinsically reversible 7

  8. Basic Concept  Reversible gate  Various reversible gates  CNOT-based gates  NOT, CNOT, C 2 NOT (Toffoli), …  Generalized Toffoli gate  Positive controls  Negative controls 8

  9. Matrix representation  An n-qubit gate has a unitary 2 n ×2 n matrix, QMatrix, describing its functionality.  The QMatrix of an n-qubit quantum circuit is well-formed if it has the following two conditions:  Matrix elements can only be zeros or ones.  Each column or row has exactly one element with a value of 1.  CNOT-based quantum circuits & Boolean reversible circuits have well-formed QMatrices 9

  10. Reversible Circuits High-level Description Synthesis Gate-level circuits Physical Implementation 10

  11. Synthesis Algorithms Categories  Transformation-based algorithms [12]- [15]  Used to improve the cost of circuit  Applied on the results of other algorithms  Usually use templates to optimize a circuit 11

  12. Synthesis Algorithms Categories (Cnt’d)  Constructive algorithms [6], [7], [17], [18]  Construct a circuit from a given specification (i.e. truth table, PPRM expansion, decision diagrams, …)  The resulted cost may not be optimized  The time complexity of the algorithm may be too high 12

  13. The Proposed Algorithm  Definition: L k QTranslation  The application of a k-qubit gate with matrix G on a quantum circuit with a QMatrix M  The result of using an L k QTranslation is the same as multiplication of M by G, i.e. MG  The result of using an L k QTranslation is also well-formed 13

  14. The Proposed Algorithm  Definition: Quantum pair (QPair i,j )  Two rows form a quantum pair (QPair i,j ) if the numbers i and j differ in only one bit position  Definition: C k QPair  The 2 k rows of a QMatrix the row numbers of which have the same value on their n-k bit locations form a single group called C k QPair 14

  15. The Goal of the Algorithm  The goal of MOSAIC is to decompose a given QMatrix into several elementary QMatrices of CNOT-based gates efficiently.  By generating a set of ordered L k QTranslation  When applied to the QMatrix M, generates an identity matrix I 15

  16. Applying an L k QTranslation  Lemma 1 and Lemma 2 explain the results of using an L k QTranslation on a given QMatrix M 16

  17. The MOSAIC Algorithm if the r th row is not marked as visited Select the c th column of if the b th bits of r and c the given QMatrix are not equal set r to be the c row number which has a find the number p which value of 1 differs with r in its b th bit 17

  18. The MOSAIC Algorithm mark the p th and r th rows set q to be the column number of row p which as visited has a value of 1 Repeat the previous if q != p and p >= r steps for all columns and exchange the locations all bits until M has been of the p th and r th rows changed to identity matrix 18

  19. Example (1)  b=0;c=0   0 1 0 0 0 0 0 0    r=7 (111) 0 0 1 0 0 0 0 0    p=110 (6)   0 0 0 1 0 0 0 0  q=7   0 0 0 0 1 0 0 0    {7,6}   0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0  Brown box: c   0 0 0 0 0 0 0 1  Green Box: p       1 0 0 0 0 0 0 0 19

  20. Example (2)  b=0;c=1   0 1 0 0 0 0 0 0    r=0 (000) 0 0 1 0 0 0 0 0    p=001 (1)   0 0 0 1 0 0 0 0  q=2   0 0 0 0 1 0 0 0    {0,1}   0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 20

  21. Example (3)  b=0;c=2   0 1 0 0 0 0 0 0    r=1 (visited) 0 0 1 0 0 0 0 0     0 0 0 1 0 0 0 0   0 0 0 0 1 0 0 0     0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 21

  22. Example (4)  b=0;c=3   0 1 0 0 0 0 0 0    r=2 (010) 0 0 1 0 0 0 0 0    p=011 (3)   0 0 0 1 0 0 0 0  q=4   0 0 0 0 1 0 0 0    {2,3}   0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 22

  23. Example (5)  b=0;c=4   0 1 0 0 0 0 0 0    r=3 (visited) 0 0 1 0 0 0 0 0     0 0 0 1 0 0 0 0   0 0 0 0 1 0 0 0     0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 23

  24. Example (6)  b=0;c=5   0 1 0 0 0 0 0 0    r=4 (100) 0 0 1 0 0 0 0 0    p=101 (5)   0 0 0 1 0 0 0 0  q=6   0 0 0 0 1 0 0 0    {4,5}   0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 24

  25. Example (7)  b=0;c=6   0 1 0 0 0 0 0 0    r=5 (visited) 0 0 1 0 0 0 0 0     0 0 0 1 0 0 0 0   0 0 0 0 1 0 0 0     0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0 25

  26. Example (8)  b=0;c=7   0 1 0 0 0 0 0 0    r=6 (visited) 0 0 1 0 0 0 0 0     0 0 0 1 0 0 0 0   0 0 0 0 1 0 0 0     0 0 0 0 0 1 0 0     0 0 0 0 0 0 1 0   0 0 0 0 0 0 0 1       1 0 0 0 0 0 0 0  {0,1,2,3,4,5,6,7} 26

  27. Example (After the first step)   0 0 1 0 0 0 0 0   0 1 0 0 0 0 0 0     0 0 0 0 1 0 0 0   0 0 0 1 0 0 0 0   Right   0 0 0 0 0 0 1 0 locations     0 0 0 0 0 1 0 0   1 0 0 0 0 0 0 0       0 0 0 0 0 0 0 1 27

  28. After the last step  Each row exchange   1 0 0 0 0 0 0 0   corresponds to a gate 0 1 0 0 0 0 0 0   (Lemma1 and Lemma 2)   0 0 1 0 0 0 0 0   0 0 0 1 0 0 0 0     0 0 0 0 1 0 0 0     0 0 0 0 0 1 0 0   0 0 0 0 0 0 1 0       0 0 0 0 0 0 0 1 28

  29. The Algorithm Convergence  Theorem 1: The MOSIC algorithm will converge to a possible implementation after several steps 29

  30. The Time Complexity  Assumption: At most h gates are needed  Search-based method  n  2 n-1 gates must be evaluated to select the best possible gates at each step           1 2 3 n 1 n 1 2 ( ... ) 2 C C n C C n   n n n 1 n 1  O(n  2 n ) h gates should be evaluated  The MOSAIC algorithm needs O(h×2 n ) steps to reach a result 30

Recommend


More recommend