Skip to content

有界误差量子查询复杂度

Bounded-error quantum query complexity · Quantum query complexity

在每个合法输入上错误率至多为给定常数、且每条执行分支满足查询硬上限的量子 oracle 调用复杂度。

条目类型
定义

形式陈述 ​

Oracle、合法输入和两个量词 ​

采用标准比特查询约定:

Ox|i,b,w⟩=|i,b⊕xi,w⟩,i∈{1,…,n}.

其中 i 指定位置,b 是回答比特,w 是其余工作状态。把回答比特置为 |−⟩=(|0⟩−|1⟩)/2,一次调用就会把索引分量乘上 (−1)xi,得到相位查询的效果;这解释了两种常见写法的联系。

设 f:S→{0,1},其中 S⊆{0,1}n 是合法输入集合。对 0≤ε<1/2,定义

Qε(f)=min{T:存在量子算法 A,对每个 x∈S 都满足Pr[AOx=f(x)]≥1−ε,且该输入上的每条执行分支至多调用 oracle T 次}.

一个量词约束每个输入上的成功概率,另一个约束每条执行分支的查询硬上限。不能把前者换成随机输入的平均成功率,也不能把后者换成期望查询次数。允许中间测量或自适应控制时,这一区分尤其重要。

常用 Q2(f) 表示 Q1/3(f),下标 2 指有界双侧误差的传统记号,不是“错误率为 2”。当 S={0,1}n 时是全函数;否则是带承诺的偏函数。算法只对 S 中的输入承担正确性要求,但 oracle 对其他 bit 串仍是合法操作,产生的接受概率仍在 [0,1]。[1]

定义中先选择一个算法,再要求它处理所有合法输入,不能为每个 x 单独选算法。后者只需把 f(x) 写进程序就可零查询,抹掉了未知输入带来的困难。若 S 同时包含输出 0 和输出 1 的输入,任何零查询算法的输出分布与 x 无关,因而在其中一类输入上错误至少为 1/2;所以此时 Qε(f)≥1。

直觉

把“读取输入”单独计费 ​

一个长度为 n 的比特串藏在黑盒中,算法不能直接查看,只能调用 oracle 读取信息。经典查询通常指定一个位置;量子查询允许索引寄存器处于叠加态,再利用后续干涉组织这些信息。有界误差量子查询复杂度问的是:对每个合法输入都保持足够高的正确率,至少需要调用黑盒多少次?

这里统计的是查询次数,不是程序总运行时间。构造量子门、处理工作寄存器以及实现 oracle 本身可能很昂贵,但标准查询模型把与输入无关的计算放在查询成本之外。这是一种刻意隔离信息获取成本的模型。[1]

例子与边界

一个可以算清楚的承诺问题 ​

考虑 n=8,承诺输入要么全为 0,要么恰有一个 1,要求判断是哪一种。先在八个索引上制备均匀叠加,再执行一次 Grover 迭代。

当恰有一个标记位置时,令 sin⁡θ=1/8。初态在标记方向上的振幅为 sin⁡θ,一次迭代把它转成 sin⁡3θ。由三倍角公式,

sin⁡3θ=3sin⁡θ−4sin3⁡θ=528,sin2⁡3θ=2532.

测量得到候选索引后,再查询一次该位置,只有读到 1 才回答“存在”。Grover 迭代中的相位标记用一次 oracle,最后验证再用一次,总共两次查询。全零输入上永远回答“不存在”;单标记输入上以 25/32>2/3 的概率回答“存在”。因此,该承诺问题的 Q1/3 至多为 2;这个构造本身没有证明下界。

为什么不能直接宣布解决了八位的任意 OR?若有四个 1,则 θ=π/4,一次迭代后的命中概率是 sin2⁡(3π/4)=1/2,达不到 2/3。同一算法在承诺内有效,在承诺外失去保证。对任意标记数的搜索,需要合适的迭代次数选择或其他处理,而不是固定重复一次。

最后的验证查询也承担单侧错误保证:全零时,任意测得的索引都被验证否决;单标记时,只有测中标记才能接受。如果省掉验证、只把“测出了一个索引”当作存在性证据,那么全零时同样总会测出某个索引,算法就必错。因而搜索到候选位置与判定存在性是两项不同义务,查询账必须覆盖后者。

推论与应用

常数误差为什么通常不影响阶数 ​

设一个算法每次使用至多 T 次查询,对每个合法输入的错误率至多 ε<1/2。重新初始化并独立运行 k 次,最后取多数票。Hoeffding 型界给出

Pr[多数票错误]≤exp⁡(−2k(1/2−ε)2).

因此,为把错误率降至 0<δ<1/2,取

k=O(log⁡(1/δ)(1/2−ε)2)

即可,总查询硬上限为 kT。当起始和目标误差都是固定的正数且严格小于 1/2 时,额外开销只是常数倍。若起始优势 1/2−ε 随 n 缩小,这个倍数就不再是常数。

重复降低的是概率,并没有在有限次运行后把非零错误变成零。按本页的固定硬上限约定,Qε 在 ε=0 的端点对应精确量子查询复杂度 QE;有些文献把 Q0 留给另一类零误差模型,引用记号时需要区分。定义直接给出 Q1/3(f)≤QE(f),不保证两者同阶。

怎样证明查询已经足够少 ​

给出算法只证明上界;要说明最优,还得证明任何允许的算法都不能更省查询。对全函数 ORn,有 Q1/3(ORn)=Θ(n):搜索算法给出上界,量子查询下界排除更快的黑盒方法。[1]

量子查询多项式方法利用一个结构事实:T 次查询后的接受概率,在布尔输入上可写成次数至多 2T 的实多重线性多项式。如果函数无法被更低次数的多项式逐点近似,就得到查询下界。对手方法则跟踪答案不同的输入所产生状态之间的可区分性,限制一次查询能推进多少。

这些方法比较的是模型内的算法。不能把一次叠加查询理解为“测量后得到所有 n 位”,也不能把较少查询直接换算为实际设备上的同倍加速;量子优势来自对有限可读出信息的相干组织。

参考资料

[1] Ronald de Wolf,Quantum Computing: Lecture Notes,Grover 搜索、量子查询下界与广义对手界各章:oracle 模型、成功概率和查询复杂度。

[2] Robert Beals 等,Quantum Lower Bounds by Polynomials,Journal of the ACM 48(4),2001,778–797:接受概率的次数界与多项式下界方法。

关系图谱13 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

暂未标注直接上位概念。

下位 / 直接特例