Quantum Computation

7413109d6b743ed235de850d7372f421?s=47 N@N
March 09, 2014

Quantum Computation

カーネル/VM探検隊@関西 6で発表した内容です.
※追記:特にアルゴリズムなどにいくつか誤りが含まれています(時間等の都合で訂正の予定は今の所なし).

7413109d6b743ed235de850d7372f421?s=128

N@N

March 09, 2014
Tweet

Transcript

  1. None
  2. • • • • • •

  3. • • • • •

  4. ? © 2009- TopeconHeroes

  5. • • • •

  6. • • • = ℎ ℎ

  7. • • 

  8. • • • 

  9. • • • •

  10. • •

  11. • • • • •

  12. • • •

  13. • • •

  14. • •  •

  15. • •  • 0 = 1 0 1 =

    0 1 • 2
  16. • = 0 0 + 1 1 • 2 •

    2 −1 =0 = 1 • = 1 2 0 + 1 2 1 0 1 • 0 1
  17. • = 1 2 00 + 01 + 10 +

    11 = 1 2 00 + 10 + 1 2 11 • 00 = 0 ⊗ 0 •
  18. = 1 2 0 + 1 2 1 ⊗ ⊗

    ⋯ ⊗ = 1 2 0 + 1 2 1 = 1 2 2 0 ⊗ 0 ⊗ ⋯ ⊗ 0 + ⋯ + 1 ⊗ 1 ⊗ ⋯ ⊗ 1 = 1 2 2 00 ⋯ 0 + ⋯ + 11 ⋯ 1 • 2
  19. • 2 

  20. • • •

  21. None
  22. • • 0 0 + 1 1 → 0 ′

    0 + 1 ′ 1 0 1 = 0 ′ 1 ′ •
  23. • • • • • = 1 2 1 1

    1 −1
  24. 0 = 1 2 1 1 1 −1 1 0

    = 1 2 0 + 1 1 2 0 + 1 = 1 2 1 1 1 −1 1 2 0 + 1 = 1 2 1 1 1 −1 1 0 + 0 1 = 1 2 1 1 1 −1 1 1 = 1 2 2 0 = 1 0 = 0
  25. 1 = 1 2 1 1 1 −1 0 1

    = 1 2 0 − 1 1 2 0 − 1 = 1 2 1 1 1 −1 1 2 0 − 1 = 1 2 1 1 1 −1 1 0 + 0 −1 = 1 2 1 1 1 −1 1 −1 = 1 2 0 2 = 0 1 = 1
  26. • • • 1 = 1 0 0 1 0

    0 0 0 0 0 0 0 0 1 1 0 = ⨁ ′ ′ a ′ ′ 0 0 0 0 0 1 0 1 1 0 1 1 1 1 1 0
  27. = 1 2 0 + 1 ∶ = 0 ∶

    = 1 2 0 0 + 1 0 ′ = 1 2 0 + 1 ′ = 1 2 0 0 + 1 1
  28. • = 1 2 0 0 + 1 0 •

    ′ = 1 2 0 0 + 1 1 • • ′ 
  29. • • 

  30. • •

  31. H H | a 0 > | b 0 >

    | c 0 > | c 1 >
  32. • 1 0 1 + 1 = 1 = 1

    0 1 = 1100 0 1 = 1101 •
  33. • 0 1 = 1 1 0 0 + 1

    2 0 1 + 1 3 1 0 + 1 4 1 1 0 1 = 0000 + 0100 + 1000 + 1100 0 1 = 0000 + 0110 + 1010 + 1101 •
  34. • •

  35. • • • • 2 → •

  36. • •

  37. • • •

  38. • • • •

  39. • • • 2100 = 1.26765 × 1030 2014 257885161

    − 1 1742
  40. • • • •

  41. • •

  42. qureg x1[2]; // 2-qubit quantum register x1 qureg x2[2]; //

    2-qubit quantum register x2 H(x1); // Hadamard operation on x1 H(x2[1]); // Hadamard operation on the first qubit of the register x2 •
  43. operator diffuse (qureg q) { H(q); // Hadamard Transform Not(q);

    // Invert q CPhase(pi, q); // Rotate if q=1111.. !Not(q); // undo inversion !H(q); // undo Hadamard Transform }
  44. None
  45. None
  46. None
  47. • •

  48. None
  49. None
  50. •  • 

  51. •  •  •

  52. None
  53. None
  54. None
  55. • • •