Skip to content

Grover 搜索查询复杂度

Grover search query complexity · Unstructured quantum search

以二维振幅旋转在无结构空间寻找标记项,并由 BBBV 下界刻画其平方根查询复杂度最优性。

条目类型
算法

形式陈述

x{0,1}NM1 个标记坐标,good 子空间由 xi=1|i 张成。均匀态可分解为

|s=1Ni=1N|i=sinθ|G+cosθ|B,sin2θ=MN,

其中 |G,|B 分别是标记与未标记坐标的均匀态。相位 oracle Sx=I2ΠG 翻转 good 分量,diffusion D=2|ss|I 关于 |s 反射。一次 Grover iterate

G=DSx

恰在 span{|G,|B} 中旋转 2θ。从 |s 开始做 r 次后,

Gr|s=sin((2r+1)θ)|G+cos((2r+1)θ)|B,

故成功概率为 sin2((2r+1)θ)。若 M 已知,取最接近 π/(4θ)1/2 的非负整数 r,使用

O(NM)

次查询得到常数以上成功率,属于有界误差查询上界。末端若要输出可验证见证,可再查询测得的候选坐标一次。

BBBV hybrid argument 表明,区分 0N 与任一单标记输入要达到常数成功率必须查询 Ω(N) 次;推广到 M 个标记得到 Ω(N/M) 的相应搜索尺度。因此 Grover 在无结构 oracle 模型中渐近最优。

直觉

两个反射的乘积是旋转。相位 oracle 把状态推到 |s 的另一侧,diffusion 再把它关于 |s 镜像;每轮把 good 方向的角度推进 2θ。初始 good 振幅只有 M/N,但相干旋转让振幅线性积累,成功概率则是其平方,于是查询数从经典的 N/M 降到平方根。

“同时查看所有位置”不是正确解释。每轮只得到一次黑盒相位作用,若旋转过头,good 振幅还会下降;算法必须按 θ 选择次数,或在未知 M 时采用额外策略。

例子与边界

N=8,M=1,则 sinθ=1/8。一次迭代的 good 振幅为

sin(3θ)=3sinθ4sin3θ=528,

成功概率 25/32。两次迭代使用恒等式

sin(5θ)=16sin5θ20sin3θ+5sinθ=1148,

所以成功概率为

1211280.945.

轨迹也显示迭代不是越多越好:角度继续越过 π/2 后概率会周期性下降。

M=0θ=0,所有 Grover 迭代都保持 |s;仅测量无法证明不存在标记项,候选验证只能拒绝当前候选。若 M 未知,固定按 M=1 运行会在较大 M 时 overshoot;随机选择逐步扩大的迭代次数可获得期望 O(N/M) 搜索,但要另行处理“无解”终止保证。

下界也依赖无结构 phase/bit oracle。若数据有排序、几何或哈希索引,允许的操作已不只是坐标查询;BBBV 不能阻止利用这些额外结构。查询最优也不表示 diffusion 的门复杂度或容错代价免费实现。

推论与应用

Grover 是振幅放大的均匀搜索特例:状态制备 A 是均匀叠加,good projector 由标记 oracle 给出。把二维旋转抽离后,任何初始成功率为 a 的过程都可在约 1/a 次调用尺度上放大。

搜索的 O(N) 上界与 BBBV 的 Ω(N) 下界共同说明平方根提升是该黑盒任务的终点,不是等待更巧算法消除的松常数。若声称无结构搜索为多项式对数查询,应先检查是否偷用了更强 oracle、预处理或非 uniform advice。

参考资料
  • Lov K. Grover, “A Fast Quantum Mechanical Algorithm for Database Search,” Proceedings of STOC 1996, pp. 212–219.
  • Charles H. Bennett, Ethan Bernstein, Gilles Brassard, and Umesh Vazirani, “Strengths and Weaknesses of Quantum Computing,” SIAM Journal on Computing 26(5), 1997, pp. 1510–1523.
  • Michel Boyer, Gilles Brassard, Peter Høyer, and Alain Tapp, “Tight Bounds on Quantum Searching,” Fortschritte der Physik 46, 1998, pp. 493–505.
关系图谱6 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

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