ψQuantum PL WIKITHE LANGUAGE OF QUANTUM COMPUTATIONEN
VOLUME V · Papers

Retromorphic Testing of Quantum Compiler Passes:量子编译器变换的回溯测试

Retromorphic Testing of Quantum Compiler Passes

提出 RetroQ 框架,结合回溯测试与 Hadamard 测试思想检查量子编译器 pass 的语义保持和结构修改。

论文信息(2026-10-08,arXiv:2610.11195):Mushahid Khan、Olivia Di Matteo。原论文

工作概述

量子编译器会把高层程序变成适合硬件执行的线路,但大型纠缠线路的正确输出通常难以直接计算,因此编译器 pass 的测试尤其困难。论文先系统分析 PennyLane、Qiskit、Cirq 和 pytket 中已有的 pass 单元测试,发现测试主要依赖程序内容断言和线路指标断言,且测试线路普遍较小、较浅。

作者据此提出一种面向编译 pass 的回溯测试方法,并实现 RetroQ。方法同时考虑待测 pass、输入测试线路和预期的 pass 行为,利用 Hadamard test 的思想检查语义是否保持,以及结构性变换是否确实发生。实验覆盖 PennyLane 与 Qiskit 的编译 pass。

主要贡献

  1. 总结四个主流量子编程框架中编译器测试的常见断言和盲点。
  2. 将 retromorphic testing 适配到量子线路变换,并把语义保持与结构修改放在同一测试协议中。
  3. 在实际框架上复现已有错误,并发现符号参数处理、交换逻辑、自伴门识别和运行时崩溃等缺陷。

局限与适用范围

RetroQ 的保证取决于测试线路、预期行为和数值判定阈值,测试发现缺陷并不等同于对所有线路完成形式化证明。实验集中于 PennyLane 和 Qiskit 的选定 pass,其他编译器、硬件噪声模型和更深线路的表现还需要单独评估。Hadamard test 相关检查也会带来额外线路和执行成本。

与其他工作的关系

论文位于量子编译验证、等价检查和软件测试的交叉处。它与 量子程序验证工具所述的符号等价检查互补:RetroQ 更强调可执行测试和 pass 的预期结构行为。与 QTestBench相比,RetroQ 的对象是编译器变换,QTestBench 的对象是大语言模型生成的测试套件;二者都指出“测试可运行”不足以说明测试有判别力。

参考

  • Khan 与 Di Matteo,Retromorphic Testing of Quantum Compiler Passes,arXiv:2610.11195,2026。
本词条用于学习导览。正式引用与技术细节请以文末原始文献为准。
继续阅读面向量子编程语言的自主代码迁移→

检索馆藏