양자 컴퓨터 설치3
퀀텀워크의 퀀텀컴퓨터 설치 3~사이클 3의 아다마 워커~
아다마 워크가 주기 3달러 3달러에서 이루어진 것을 총괄했다. 양자 컴퓨터 설치 2 에서는 주기 크기가 2^n 달러인 경우도 소개했고, 주기 크기가 2^n 달러가 아닌 경우도 소개했다.
여기에 소개된 방법은 Efficient quantum circuit implementation of quantum walks와 같다.
Hadamard Walk 순환 3
양자보행의 간단한 설명 참고양자 컴퓨터 설치1.
이번 사고의 주기는,
이 순환 ($0001,10달러 (10진 0~2) 의 양자 보행을 정의합니다.
코인 작용소와 교환 작용소
전체적인 동력으로서
$$
W=\hat{S}\hat{C}\
$$
코인 작용소
\hat{C}=(I\otimes H)\\
\mbox{ただし}I=\sum_{x}|x\rangle\langle x|,\quad
H=\frac{1}{\sqrt{2}}\begin{bmatrix}
1&1\\1&-1
\end{bmatrix}
\hat{S}=\sum_{x}|x-1\rangle\langle x|\otimes|0\rangle\langle 0|+|x+1\rangle\langle x|\otimes|1\rangle\langle 1|
단, $x\pm1달러는 $mod3달러로 고려합니다.$$\Psi=\frac{1}{\sqrt{2}}|0\rangle\otimes|0\rangle+\frac{i}{\sqrt{2}}|0\rangle\otimes|1\rangle$$
コイン作用素
과 シフト作用素
문을 고려하면 양자보행의 시간 변화는 양자보행을 나타낼 수 있다.구체적으로 말하면
동전 제작소 $\hat{C} = I\otimes H$, 상태의 양자 비트가 $H$를 통과해야만 표시할 수 있습니다.
교환비 $\hat{S}달러,
• 상태가
0
인 경우 장소x
는 -1・상태가
1
라면 위치x
+1입문을 고려할 수 있다.
IBMQ에서 설치
이번 실복은 3qubits($q[0]q[1]q[2]$)를 사용했다.
변위 사용소 구축 (주기 3)
우리는 $n위 2진법 +1 조작과 -1 조작 알고리즘을 고려하고 싶습니다. $q[0]q[1달러에는 $11달러가 포함되어 있기 때문에 이를 잘 배제할 필요가 있습니다.
サイクル4の-1操作
$+$ 場所11と10のスイッチ
$=$ サイクル3の-1操作
양자 컴퓨터 설치1 サイクル4の+1操作
$+$ 場所11と00のスイッチ
$=$ サイクル3の+1操作
되다
순환 4의 비트레이트 + 상태 0이면 장소 11과 10 스위치 + 상태 1이면 장소 11과 00 스위치
회로 부분의 제작
양자 레지스터, 고전 레지스터 및 그것들로부터 양자 회로 설정qwqc
from qiskit import QuantumCircuit, ClassicalRegister, QuantumRegister
from qiskit import execute
from qiskit.tools.visualization import plot_histogram
q = QuantumRegister(3, 'q')
c = ClassicalRegister(2, 'c')
qwqc = QuantumCircuit(q,c)
#時間
t=1
#初期状態をセット
qwqc.h(q[2])
qwqc.s(q[2])
#時間発展
for i in range(t):
#コインオペ
qwqc.h(q[2])
#シフト
qwqc.x(q[1])
qwqc.cx(q[2],q[0])
qwqc.cx(q[1],q[0])
#-1回転の修正
qwqc.x(q[2])
qwqc.ccx(q[0],q[2],q[1])
qwqc.x(q[2])
#+1回転の修正
qwqc.ccx(q[1],q[2],q[0])
qwqc.x(q[0])
qwqc.ccx(q[0],q[2],q[1])
qwqc.x(q[0])
qwqc.ccx(q[1],q[2],q[0])
#観測
qwqc.measure(q[0],c[0])
qwqc.measure(q[1],c[1])
qwqc.draw()
t=1의 시뮬레이터 결과
from qiskit import BasicAer
backend_s=BasicAer.get_backend('qasm_simulator')
job_s = execute(qwqc, backend_s,shots=1024)
result_s = job_s.result()
counts_s = result_s.get_counts(qwqc)
plot_histogram(counts_s)
t=1의 실제 결과
from qiskit.tools.monitor import job_monitor
provider = IBMQ.get_provider(hub='ibm-q')
backend_r=provider.get_backend('ibmqx2')
job_r = execute(qwqc, backend=backend_r,shots=1024)
job_monitor(job_r)
Job Status: job has successfully runresult_r= job_r.result()
counts_r = result_r.get_counts(qwqc)
plot_histogram(counts_r)
총결산
같은 방식으로 임의의 순환 크기의 양자 보행을 실현할 수 있으며, 임의의 순환 n을 실현하기 위해 최소 $n\leq2^N 달러에 대해 방식으로 $2^N 달러의 순환을 만들 수 있으며, 스위치 수정 조작을 통해 임의의 순환이 발생할 수 있다.
Reference
이 문제에 관하여(양자 컴퓨터 설치3), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/YNUqw/items/9acf4236bb59323150ad텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)