HHL论文第二弹(基本过程)

这篇博客主要总结一下HHL算法的基本过程,以及我在学习这个算法的过程中所产生的困惑。

解决的困惑:
1.为啥估计出来的相位是这么个写法?(想一想相位估计里面咋写来着,两者等价就推出相位了)
2.既然相位估计是算法的核心,那我增加比特数目不就好啦?(注意整体复杂度,m的取值和条件数和精读有关)
3.幅度放大过程f(x)是啥?受控旋转的作用和黑盒一样吗?是不是也将元素分成了目标元和非目标元?
4.我干嘛要进行逆相位估计?解纠缠?
5.受控旋转的过程是什么来着?

HHL算法的核心就是相位估计、受控旋转、幅度放大这几个过程,我们先介绍一下这三个知识点的基本思想。

(1)相位估计

学过线性代数的同学想必都知道特征值和特征向量的概念,在量子计算中,这两个术语照常适用,我所理解的相位估计往大的方面说就是估计特征值。但是如果用下面这种方式表示特征值的话,相位估计就是用来估计特征向量|u>它所对应的相位|ψu>。
相位估计
相位估计的具体流程:
相位估计
逆傅里叶变换
相位估计的准确性和所选取比特数目t有关,一般t的取值越大,得到的结果越精确。

(2)受控旋转

受控旋转是一个很神奇的过程,它能够实现有效量子信息从寄存器到量子态振幅的转移。之前在量子机器学习这个公众号上,作者将这个过程称作是“提取占比”,之前还不是很理解,现在想想确实是这么回事。如果再通俗的理解受控旋转的话,就相当于论文的摘要,正文相当于量子寄存器,里面存储了很多有用的信息,摘要内容就相当于量子振幅,这个振幅里面包含了我们想要的信息,如果要用到这个有用的信息,我们就不需要在从寄存器中找了,直接通过量子振幅就可以获取了。
受控旋转
受控旋转

(3)幅度放大

这个就看我之前的笔记《量子搜索算法(知晓解的个数)》吧.

(4) HHL算法基本流程

首先来一段原文提神醒脑,理解一下算法的大体思想:
HHL算法
这段内容规定了矩阵A是Hermite矩阵,我们要借助Hamiltonian simulation估计矩阵A的相位,其次我们要将|b>用矩阵A特征向量的形式表示出来。因为A是厄米特矩阵,同时是正规矩阵,所以是可以归一化表示的。以下是我对这个过程的总结:
HHL算法
所以要知晓解向量,我们就得想办法把矩阵A的特征值测量出来,具体步骤如下:
HHL算法推导
HHL电路图:
HHL算法电路图
从图中我们可以看出|x>是从寄存器|R2>输出的。其余两个寄存器的输入态都是|0>态,只是个数不一样。我们测量R3,可以测得|1>态,如果我们在进行受控旋转的时候,把我们想要得到的系数安排在了|0>态上,那么最后一步我们就不再是测量|1>态而是测量|0>态了。
我理解的逆相位估计就是将R1里面的内容解纠缠出去。
上述推理过程中出现了特征值,C,时间t0,原文中还出现了条件数K,这些数值之间存在一定的关系,并且影响着结果精确性或者是幅度放大的次数,这个我们在下一节《HHL第三弹(参数讨论)》进行分析。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值