quantum computing for dummies
play

Quantum computing for dummies Carlos Cotrini ETH Z urich - PowerPoint PPT Presentation

Quantum computing for dummies Carlos Cotrini ETH Z urich ccarlos@inf.ethz.ch September 14, 2019 Carlos Cotrini (ETH Z urich) QC for dummies September 14, 2019 1 / 48 What is quantum computing? From Wikipedia: Quantum computing is


  1. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  2. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  3. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  4. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 (0 , 2 , 0 , 2 ) √ √ Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  5. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 1 1 (0 , 2 , 0 , 2 ) 0 0 √ √ 2 2 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  6. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 1 1 (0 , 2 , 0 , 2 ) 0 0 √ √ 2 2 1 2 , 1 2 , 1 (0 , √ 2 ) Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  7. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 1 1 (0 , 2 , 0 , 2 ) 0 0 √ √ 2 2 1 2 , 1 2 , 1 1 1 1 (0 , √ 2 ) 0 2 4 4 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  8. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 1 1 (0 , 2 , 0 , 2 ) 0 0 √ √ 2 2 1 2 , 1 2 , 1 1 1 1 (0 , √ 2 ) 0 2 4 4 (1 , 0 , 0 , 0) Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  9. Qubit arrays What is a qubit array of length n ? ( a 0 , a 1 , . . . , a N − 1 ) ∈ C N , with N = 2 n and | a x | 2 = 1. � such that x | a x | 2 is the probability, that after observing the qubit array, we get x . Examples: Qubit array P (00) P (01) P (10) P (11) 1 1 1 1 (0 , 2 , 0 , 2 ) 0 0 √ √ 2 2 1 2 , 1 2 , 1 1 1 1 (0 , √ 2 ) 0 2 4 4 (1 , 0 , 0 , 0) 1 0 0 0 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 11 / 48

  10. Qubit arrays More examples: √ (1 / 2 , 0 , 0 , 1 / 2 , 0 , 0 , 0 , 1 / 2) is a qubit array that, when observed, yields 000 with prob 1 / 4, 011 with prob 1 / 4, and 111 with probability 1 / 2. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 12 / 48

  11. Qubit arrays More examples: √ (1 / 2 , 0 , 0 , 1 / 2 , 0 , 0 , 0 , 1 / 2) is a qubit array that, when observed, yields 000 with prob 1 / 4, 011 with prob 1 / 4, and 111 with probability 1 / 2. √ √ √ √ √ √ √ √ (1 / 8 , 1 / 8 , 1 / 8 , 1 / 8 , 1 / 8 , 1 / 8 , 1 / 8 , 1 / 8) is a qubit array that, when observed, yields any bit array of length 3 with equal probability. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 12 / 48

  12. Qubit arrays | a 0 | 2 000 �→ a 000 �→ a 0 �→ | a 1 | 2 001 �→ �→ �→ a 001 a 1 | a 2 | 2 010 �→ a 010 �→ a 2 �→ | a 3 | 2 011 �→ a 011 �→ a 3 �→ | a 4 | 2 100 �→ �→ �→ a 100 a 4 | a 5 | 2 101 �→ �→ �→ a 101 a 5 | a 6 | 2 110 �→ a 110 �→ a 6 �→ | a 7 | 2 111 �→ a 111 �→ a 7 �→ Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 13 / 48

  13. A qubit array of length n is a storage unit with n bits of capacity. A qubit array is not a data structure containing all bit arrays in 2 n “physically” different locations. All 2 n bit arrays are in the “physical” storage unit with n bits of capacity, coexisting in superposition. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 14 / 48

  14. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  15. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  16. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: | 10 � = (0 , 0 , 1 , 0). Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  17. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: | 10 � = (0 , 0 , 1 , 0). | 011 � = (0 , 0 , 0 , 1 , 0 , 0 , 0 , 0). Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  18. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: | 10 � = (0 , 0 , 1 , 0). | 011 � = (0 , 0 , 0 , 1 , 0 , 0 , 0 , 0). | 0000 � = (1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0). Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  19. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: | 10 � = (0 , 0 , 1 , 0). | 011 � = (0 , 0 , 0 , 1 , 0 , 0 , 0 , 0). | 0000 � = (1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0). Definition B n := {| x � | x ∈ { 0 , 1 } n } . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  20. Qubit arrays are vectors in C N For x ∈ { 0 , 1 } n , let | x � be the qubit array with all entries equal zero except the x -th, which is 1. Examples: | 10 � = (0 , 0 , 1 , 0). | 011 � = (0 , 0 , 0 , 1 , 0 , 0 , 0 , 0). | 0000 � = (1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0). Definition B n := {| x � | x ∈ { 0 , 1 } n } . Example: B 2 = {| 00 � , | 01 � , | 10 � , | 11 �} . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 15 / 48

  21. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  22. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  23. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . ( a 0 , a 1 , . . . , a N ) is | ψ � ’s vector representation . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  24. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . ( a 0 , a 1 , . . . , a N ) is | ψ � ’s vector representation . Examples: Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  25. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . ( a 0 , a 1 , . . . , a N ) is | ψ � ’s vector representation . Examples: � � 1 2 , − 1 1 1 1 1 = 2 (1 , 0) − 2 (0 , 1) = 2 | 0 � − 2 | 1 � . √ √ √ √ √ √ 2 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  26. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . ( a 0 , a 1 , . . . , a N ) is | ψ � ’s vector representation . Examples: � � 1 2 , − 1 1 1 1 1 = 2 (1 , 0) − 2 (0 , 1) = 2 | 0 � − 2 | 1 � . √ √ √ √ √ √ 2 � � 1 2 , − 1 1 1 1 1 0 , 2 , 0 = 2 (0 , 1 , 0 , 0) − 2 (0 , 0 , 1 , 0) = 2 | 01 � − 2 | 10 � . √ √ √ √ √ √ Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  27. B n is a basis Let | ψ � = ( a 0 , a 1 , . . . , a N − 1 ), then � | ψ � = a x | x � . x ∈{ 0 , 1 } n � x ∈{ 0 , 1 } n a x | x � is | ψ � ’s algebraic representation . ( a 0 , a 1 , . . . , a N ) is | ψ � ’s vector representation . Examples: � � 1 2 , − 1 1 1 1 1 = 2 (1 , 0) − 2 (0 , 1) = 2 | 0 � − 2 | 1 � . √ √ √ √ √ √ 2 � � 1 2 , − 1 1 1 1 1 0 , 2 , 0 = 2 (0 , 1 , 0 , 0) − 2 (0 , 0 , 1 , 0) = 2 | 01 � − 2 | 10 � . √ √ √ √ √ √ (0 , 0 , 0 , 0 , 0 , 0 , 0 , − 1) = − (0 , 0 , 0 , 0 , 0 , 0 , 0 , 1) = − | 111 � . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 16 / 48

  28. Measurements A measurement operator receives as input a qubit array � x a x | x � and outputs x with probability | a x | 2 . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 17 / 48

  29. Measurements A measurement operator receives as input a qubit array � x a x | x � and outputs x with probability | a x | 2 . Examples: √ Measuring − 1 2 | 1 � yields 1 with probability 3 3 2 | 0 � − 4 . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 17 / 48

  30. Measurements A measurement operator receives as input a qubit array � x a x | x � and outputs x with probability | a x | 2 . Examples: √ Measuring − 1 2 | 1 � yields 1 with probability 3 3 2 | 0 � − 4 . Measuring | 1 � yields 1 with probability 1. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 17 / 48

  31. Measurements A measurement operator receives as input a qubit array � x a x | x � and outputs x with probability | a x | 2 . Examples: √ Measuring − 1 2 | 1 � yields 1 with probability 3 3 2 | 0 � − 4 . Measuring | 1 � yields 1 with probability 1. Observation After measuring a qubit array, all its uncertainty is lost. Measuring again gives the same result. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 17 / 48

  32. Quantum gates A quantum gate is a unitary transformation G : C N → C N . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 18 / 48

  33. Quantum gates A quantum gate is a unitary transformation G : C N → C N . For now, the most important thing to know about unitary transformations is that they are linear : �� � � G a x | x � = a x G | x � . x x Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 18 / 48

  34. Quantum gates A quantum gate is a unitary transformation G : C N → C N . For now, the most important thing to know about unitary transformations is that they are linear : �� � � G a x | x � = a x G | x � . x x Example: � 1 2 | 00 � − 1 2 | 10 � − 1 � = 1 2 G | 00 � − 1 2 G | 10 � − 1 √ √ G | 11 � G | 11 � . 2 2 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 18 / 48

  35. Quantum gates A quantum gate is a unitary transformation G : C N → C N . For now, the most important thing to know about unitary transformations is that they are linear : �� � � G a x | x � = a x G | x � . x x Example: � 1 2 | 00 � − 1 2 | 10 � − 1 � = 1 2 G | 00 � − 1 2 G | 10 � − 1 √ √ G | 11 � G | 11 � . 2 2 To compute G | ψ � , you only need to know how G works on B n . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 18 / 48

  36. Popular quantum gates Hadamard gate. Emulation gate. Reflection gate. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 19 / 48

  37. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  38. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: H | 0 � = Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  39. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  40. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 H | 01 � = Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  41. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 H | 01 � = 1 2 | 00 � Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  42. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 H | 01 � = 1 2 | 00 � − 1 2 | 01 � Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  43. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 H | 01 � = 1 2 | 00 � − 1 2 | 01 � + 1 2 | 10 � Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  44. Quantum gate example: Hadamard gate For | x � ∈ B n , ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n where x ⊤ y := � i ≤ n x [ i ] y [ i ] is the classical inner product. Example: 1 | 0 � + 1 H | 0 � = √ √ | 1 � . 2 2 H | 01 � = 1 2 | 00 � − 1 2 | 01 � + 1 2 | 10 � − 1 2 | 11 � . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 20 / 48

  45. Quantum gate example: Hadamard gate ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n In particular, H | 00 . . . 0 � = Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 21 / 48

  46. Quantum gate example: Hadamard gate ( − 1) x ⊤ y � H | x � := √ | y � , 2 n y ∈{ 0 , 1 } n In particular, 1 � √ H | 00 . . . 0 � = 2 n | y � =: | ? � . y ∈{ 0 , 1 } n Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 21 / 48

  47. Quantum gate example: Hadamard gate In general, for any qubit array | ψ � = � x a x | x � , �� � H | ψ � = H a x | x � x Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 22 / 48

  48. Quantum gate example: Hadamard gate In general, for any qubit array | ψ � = � x a x | x � , �� � H | ψ � = H a x | x � x � = a x H | x � x a x ( − 1) x ⊤ y � = √ | y � 2 n x , y �� a x ( − 1) x ⊤ y � � = √ | y � . 2 n y x Applying the Hadamard gate takes constant time! It is not that the gate computes H | x � , for each x ! Remember that all bit arrays x are in superposition ! Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 22 / 48

  49. Quantum gate example: Emulation gate If f : { 0 , 1 } n → { 0 , 1 } is a Boolean circuit, then U f | x � := ( − 1) f ( x ) | x � . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 23 / 48

  50. Quantum gate example: Emulation gate If f : { 0 , 1 } n → { 0 , 1 } is a Boolean circuit, then U f | x � := ( − 1) f ( x ) | x � . In general, for any qubit array | ψ � , �� � a x ( − 1) f ( x ) | x � . � U f | ψ � = U f a x | x � = x x Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 23 / 48

  51. Quantum gate example: Emulation gate If f : { 0 , 1 } n → { 0 , 1 } is a Boolean circuit, then U f | x � := ( − 1) f ( x ) | x � . In general, for any qubit array | ψ � , �� � a x ( − 1) f ( x ) | x � . � U f | ψ � = U f a x | x � = x x If computing f ( x ) takes O ( K )-time, then computing U f | ψ � also takes O ( K )-time. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 23 / 48

  52. Quantum gate example: Reflection gate � | 00 . . . 0 � if x = 00 . . . 0 and F | x � − | x � otherwise. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 24 / 48

  53. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  54. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. How much you need to compute f ’s table? Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  55. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. How much you need to compute f ’s table? Memory Time Energy O (2 n ) O (2 n K ( n )) O (2 n K ( n )) Classical Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  56. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. How much you need to compute f ’s table? Memory Time Energy O (2 n ) O (2 n K ( n )) O (2 n K ( n )) Classical Parallel (2 n cores) O (2 n ) O (2 n K ( n )) O ( K ( n )) Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  57. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. How much you need to compute f ’s table? Memory Time Energy O (2 n ) O (2 n K ( n )) O (2 n K ( n )) Classical Parallel (2 n cores) O (2 n ) O (2 n K ( n )) O ( K ( n )) Quantum O ( n ) O ( K ( n )) O ( K ( n )) Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  58. Classical vs parallel vs quantum computation f : { 0 , 1 } n → { 0 , 1 } . Suppose that computing f ( x ) takes O ( K ( n ))-time. How much you need to compute f ’s table? Memory Time Energy O (2 n ) O (2 n K ( n )) O (2 n K ( n )) Classical Parallel (2 n cores) O (2 n ) O (2 n K ( n )) O ( K ( n )) Quantum O ( n ) O ( K ( n )) O ( K ( n )) * Constants may vary substantially. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 25 / 48

  59. Quantum computing for dummies Carlos Cotrini ETH Z¨ urich ccarlos@inf.ethz.ch September 14, 2019 Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 26 / 48

  60. The Deutsch-Jozsa algorithm And now... a problem that can be solved in linear time by a classical computer, but in constant time by a quantum computer! A bit array of length 2 n is balanced if exactly half of its entries are zero. A bit array is constant if all its entries are zero. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 27 / 48

  61. The Deutsch-Jozsa algorithm And now... a problem that can be solved in linear time by a classical computer, but in constant time by a quantum computer! A bit array of length 2 n is balanced if exactly half of its entries are zero. A bit array is constant if all its entries are zero. The problem Given a bit array f of length 2 n , known to be balanced or constant, decide if it is balanced. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 27 / 48

  62. The Deutsch-Jozsa algorithm And now... a problem that can be solved in linear time by a classical computer, but in constant time by a quantum computer! A bit array of length 2 n is balanced if exactly half of its entries are zero. A bit array is constant if all its entries are zero. The problem Given a bit array f of length 2 n , known to be balanced or constant, decide if it is balanced. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 27 / 48

  63. The Deutsch-Jozsa algorithm And now... a problem that can be solved in linear time by a classical computer, but in constant time by a quantum computer! A bit array of length 2 n is balanced if exactly half of its entries are zero. A bit array is constant if all its entries are zero. The problem Given a bit array f of length 2 n , known to be balanced or constant, decide if it is balanced. Executing this circuit requires only just one call to U f . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 27 / 48

  64. Exercises Observe that | 0 � = | 00 ... 0 � . Recall that ( − 1) x ⊤ y U f | x � := ( − 1) f ( x ) | x � . � H | x � := √ | y � . 2 n y ∈{ 0 , 1 } n We now show why this circuit decides if f is balanced or constant. Show that   ( − 1) z ⊤ y + f ( y ) � ψ ′ � � �  | z � . � = HU f H | 00 . . . 0 � = √  2 n z ∈{ 0 , 1 } n y ∈{ 0 , 1 } n After we measure | ψ ′ � , what is the probability that we get 00 . . . 0 if f is balanced? What is the probability of getting 00 . . . 0 if f is constant? Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 28 / 48

  65. Agenda 1 Background in linear algebra. Linear transformations. Matrix representations. Unitary transformations. 2 Grover’s algorithm. Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 29 / 48

  66. Searching with a quantum computer The problem Given a function f : { 0 , 1 } n → { 0 , 1 } , find an element x ∈ { 0 , 1 } n such that f ( x ) = 1. We call such an element a solution of f . Carlos Cotrini (ETH Z¨ urich) QC for dummies September 14, 2019 30 / 48

Recommend


More recommend