funkd0ct0r

Pac-Man

May 31st, 2020
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. include "qelib1.inc";
  2. qreg q[16];
  3. creg c[16];
  4. creg fire[1];
  5.  
  6. gate paddle1 qubit
  7. {
  8. U(0,0,pi/-1) qubit;
  9. }
  10. gate paddle2 qubit
  11. {
  12. U(0,0,pi/7) qubit;
  13. }
  14. gate redbutton wire
  15. {
  16. x wire;
  17. }
  18. gate quantumteleportation source, destination, up, left
  19. {
  20. h up;
  21. cx up,destination;
  22. cx source,up;
  23. h destination;
  24. h source;
  25. cx source,destination;
  26. z left;
  27. h destination;
  28. h source;
  29. cx up,destination;
  30. x left;
  31. h source;
  32. }
  33.  
  34.  
  35.  
  36. //player 1
  37. U(pi/2, 0, 0) q[1];
  38. cx q[1],q[0];
  39.  
  40. //player 2
  41. U(pi/2, 0, 0) q[3];
  42. cx q[3],q[2];
  43.  
  44. //power pellet
  45. U(0, 0, 0) q[4];
  46. U(pi, 0, 0) q[5];
  47. U(0, 0, 0) q[6];
  48. U(pi, 0, 0) q[7];
  49.  
  50. paddle1 q[0];
  51. paddle1 q[1];
  52. U(0,pi/4,0) q[0]; // \ )
  53. U(0,3*pi/4,0) q[1]; // / )
  54.  
  55. paddle2 q[2];
  56. paddle2 q[3];
  57. U(pi,pi/4,0) q[2]; // \ /
  58. U(pi,3*pi/4,0) q[3]; // (___)
  59.  
  60. redbutton q[15];
  61. measure q[15] -> fire[0];
  62.  
  63. if(fire==0)
  64. measure q[0] -> c[0];
  65. if(fire==0)
  66. measure q[1] -> c[1];
  67.  
  68. if(fire==1)
  69. quantumteleportation q[0], q[8], q[10],q[11];
  70. if(fire==1)
  71. quantumteleportation q[1], q[9], q[12],q[13];
  72.  
  73. measure q[2] -> c[2];
  74. measure q[3] -> c[3];
  75.  
  76. measure q[4] -> c[4];
  77. measure q[5] -> c[5];
  78. measure q[6] -> c[6];
  79. measure q[7] -> c[7];
  80.  
  81. measure q[8] -> c[8];
  82. measure q[9] -> c[9];
Advertisement
Add Comment
Please, Sign In to add comment