量子傅里叶变换及其应用
1. 量子傅里叶变换(QFT)和逆量子傅里叶变换(IQFT)的量子电路
量子计算机上基于量子门实现的傅里叶变换及其逆变换,与经典快速傅里叶变换(FFT)的高效实现相对应。借助量子并行性和干涉特性,量子傅里叶变换(QFT)只需少量指令就能完成,比经典 FFT 快指数倍。QFT 所需的操作(基本量子门)数量随量子比特(二进制位)数量呈二次增长,而 FFT 所需的操作(加法和减法)数量随二进制位数呈指数增长。
以下是 QFT 和 IQFT 电路的实现代码:
def qft(qc, targets, swap=True):
for j in range(len(targets))[::-1]:
qc.h(targets[j])
for k in range(j)[::-1]:
qc.cp(pi * 2.0 ** (k - j), targets[j], targets[k])
if swap:
qc.mswap(targets)
def iqft(qc, targets, swap=True):
for j in range(len(targets))[::-1]:
qc.h(targets[j])
for k in range(j)[::-1]:
qc.cp(-pi * 2 ** (k - j), targets[j], targets[k])
if swap:
qc.mswap(targets)
class QFT(Qua
超级会员免费看
订阅专栏 解锁全文
1827

被折叠的 条评论
为什么被折叠?



