paperbot · PL 论文追踪

全部论文 待读 收藏

P2 QbC: Quantum Correctness by Construction

QbC:通过构造实现量子正确性
OOPSLA 9(OOPSLA1)2025匹配度 2/10 · 论文研究量子程序的形式化精化与正确性构造,属于形式化方法与程序合成,但与用户核心关注的静态分析、LLM/Agent 与程序分析交叉、浮点程序分析、贝叶斯程序分析等方向没有直接交集;仅在广义的“形式化验证/程序构造”上与 AI→PL 有微弱关联。引用 3 inbox
Anurudh Peduri, Ina Schaefer, Michael Walter
crossref: 2026-09-10

AI 速览

一句话:提出 QbC 方法,用前后置条件与可靠完备的精化规则从规约构造正确的量子程序。

量子算法快速发展且日益复杂,量子程序正确性成为重要问题。已有工作多采用量子 Hoare 逻辑等证明系统进行事后验证,即先实现程序再验证。本文提出 Quantum Correctness by Construction(QbC),从规约出发构造量子程序并同时保证正确性。方法使用前置条件和后置条件描述程序性质,并为量子 while 语言提出可靠且完备的精化规则,支持从规约逐步构造程序。作者通过为若干惯用量子问题与模式构造程序来验证 QbC,发现该方法能自然引导推导程序细节并凸显关键设计选择,有望支持量子算法与软件的设计和分类。

问题
量子算法日益复杂,如何保证量子程序正确性成为关键;已有方法多为先实现再验证的事后验证。
方法
使用前后置条件描述程序性质,并为量子 while 语言提出可靠且完备的精化规则,从规约出发逐步构造程序。
评估
通过为若干惯用量子问题与模式构造量子程序来验证 QbC,并考察其能否自然导出程序细节与关键设计选择。
原文摘要(Abstract)

Thanks to the rapid progress and growing complexity of quantum algorithms, correctness of quantum programs has become a major concern. Pioneering research over the past years has proposed various approaches to formally verify quantum programs using proof systems such as quantum Hoare logic. All these prior approaches are post-hoc: one first implements a program and only then verifies its correctness. Here we propose Quantum Correctness by Construction (QbC) : an approach to constructing quantum programs from their specification in a way that ensures correctness. We use pre- and postconditions to specify program properties, and propose sound and complete refinement rules for constructing programs in a quantum while language from their specification. We validate QbC by constructing quantum programs for idiomatic problems and patterns. We find that the approach naturally suggests how to derive program details, highlighting key design choices along the way. As such, we believe that QbC can play a role in supporting the design and taxonomization of quantum algorithms and software.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3213,
  title = {QbC: Quantum Correctness by Construction},
  author = {Anurudh Peduri and Ina Schaefer and Michael Walter},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {OOPSLA1},
  year = {2025},
  doi = {10.1145/3720433}
}