我遇到了一个Javascript量子模拟器,并试图编写代码(即量子电路)来实现3 qbit量子傅立叶变换。
我能得到的最接近的如下所示:
这是基于QFT的章节,来自"量子计算和量子信息"尼尔森和庄。 (电路末端的条件NOT门用于将输出位交换为正确的顺序 - QFT反转位的顺序。)
我也尝试过基于wikipedia QFT article的电路,但没有接近答案。
任何人都可以帮助纠正我的算法来计算QFT吗?
(我认为这个bug最有可能出现在我的电路中,但我想底层Javascript实现中也可能存在错误?)
答案 0 :(得分:3)
来自维基百科的电路不起作用的原因是因为所提供的相位门顺时针转动而不是逆时针转动(例如-45度而不是+45度)。维基百科上的电路(也可能是教科书)使用的是R_(pi / 2)门,但你有一个R _( - pi / 2)门。
有几种方法可以解决这个问题:
对不起,后退阶段令人困惑。 (这实际上是我的电路模拟器,我为blog post that includes a solution写的。)