Hadamard 检验(Hadamard Test)¶
English · 简体中文
类别 C3 · 模块
oracq.algorithms.common.estimation· 阶段 V2
概述¶
测量复期望值 \(\langle\psi|U|\psi\rangle\) 的实部或虚部:单探针比特经受控 \(U\) 干涉后,probe 的 Z 期望等于所选分量。该操作不执行测量;采样与概率差的经典计算由宿主完成。
接口与输入模型¶
hadamard_test(unitary, preparation=None, *, component="real")
API 入口:hadamard_test
unitary:完整酉Operation,或无信号位且alpha=1的块编码(UO,经as_block_encoding适配);带信号位或 \(\alpha\ne 1\) 的输入在生成期抛ValidationError。preparation:初态制备(SP,零输入 + 复净工作区);省略时用目标空间的零基态(basis_state(width))。component:"real"或"imag"。
返回 Operation,寄存器为 target、work、probe。模块属性:
属性 |
含义 |
|---|---|
|
|
|
|
|
|
制备宽度必须等于酉宽度,component 取值非法时生成期报错。
实现要点¶
电路为制备 \(\to\) H(probe) \(\to\) 受控 \(U\) \(\to\)(虚部分量时对 probe 施加 \(-\pi/2\) 相位)\(\to\) H(probe)。虚部读出把 \(S^\dagger\) 型相位放在受控调用之后,将正交分量旋进 Z 基。受控调用以零宽信号视图(b["work"][:0])适配 BE 接口,因此 BE 形式的输入不引入信号位。
验证方案¶
类别 C3(判定准则见 docs/development/validation-plan.md §2:输出分布等于闭式期望)。三层证据与 docs/development/validation-coverage.md 的 estimation.py 行一致:
结构:
tests/core/test_algorithm_expansion.py:AlgorithmExpansionTests的构造与属性断言。数值:
AlgorithmExpansionTests.test_hadamard_test_real_and_imaginary——单比特相位门(角度 0.6,本征值 \(e^{0.6i}\))作用在 \(|1\rangle\) 上,real/imag两个分量分别对拍 \(p(0)-p(1)=\cos 0.6\) 与 \(\sin 0.6\),places=10。绑定:模块行登记为"—"。
见证技术为精确态矢量模拟取 probe 边际分布后对拍闭式,无采样断言。
已知缺口与计划阶段¶
本算法无单独缺口;estimation.py 登记的唯一缺口属于 QAE 的置信区间声明(见振幅估计),模块整体处于阶段 V2。
相关链接¶
源码:
src/oracq/algorithms/common/estimation.pyAPI 参考:相位、振幅与重叠估计
同组页面:SWAP 检验(两态重叠的对应读出)
验证矩阵:验证覆盖矩阵
数值验证¶
tests/verification/verify_estimation.py 在真实后端上对本接口做期望值级数值验证(共 6 个案例,全部通过)。实验设计:
单比特相位门 \(U=\mathrm{diag}(1,e^{i\theta})\) 作用于 \(|1\rangle\)(\(\theta=0.6\) 与 \(-1.1\)):闭式期望 \(e^{i\theta}\)。
双比特对角幺正 \(U|x\rangle=e^{i\theta_x}|x\rangle\)(角度表 \((0.35,-0.9,1.7,0.55)\),受控全局相位实现)配
gate_state_prep复幅度制备 \(\psi=(0.5,\,0.5i,\,0.5,\,-0.5)\):期望值 \(\sum_x|\psi_x|^2 e^{i\theta_x}\) 由 math 库独立计算。后端路径:reference、rir-pysparq、adapter-pysparq、originir-ext 四条;probe 的 Z 期望 \(p(0)-p(1)\) 对照期望值实/虚部分量。
案例 |
规模 |
路径 |
指标值 |
|---|---|---|---|
相位门 \(\theta=0.6\) |
target 1 位 |
全部四条 |
real \(=0.8253356\)(\(\cos\theta\)),imag \(=0.5646425\)(\(\sin\theta\)),误差 \(\le 5.6\times10^{-16}\) |
相位门 \(\theta=-1.1\) |
target 1 位 |
全部四条 |
real \(=0.4535961\),imag \(=-0.8912074\),误差 \(\le 4.4\times10^{-16}\) |
对角幺正 + 复制备 |
target 2 位 |
全部四条 |
real \(=0.5711657\),imag \(=0.2684807\),误差 \(\le 1.1\times10^{-16}\) |
复现命令:
PYTHONPATH=src /home/agony/projects/qcfd-dev/quantum-cfd-software/.venv/bin/python tests/verification/verify_estimation.py
产物路径:out/verification/estimation.json(案例名前缀 hadamard-)。