ψQuantum PL WIKITHE LANGUAGE OF QUANTUM COMPUTATIONEN
Papers

迈向一种量子编程语言

Towards a Quantum Programming Language

Selinger 提出结合量子数据、经典控制、类型系统和超算子语义的 QPL 语言设计。

论文信息(2004,Mathematical Structures in Computer Science):Peter Selinger。DOI;作者页面

工作

本文提出 QPL(Quantum Programming Language)的设计,试图把量子程序从线路或量子图灵机层次提升到具有结构化数据、循环和递归过程的语言层次。语言区分 quantum data 与 classical control,并用类型规则约束程序构造;指称语义则把命令解释为作用在密度算子上的 superoperator,从而把程序组合与量子变换联系起来。

主要贡献

  • 给出一种带量子数据类型、经典控制、循环、递归过程和结构化数据的语言设计。
  • 以静态类型和无运行时类型错误为目标,明确程序资源和操作的合法组合。
  • 用超算子构成的指称语义描述程序行为,并讨论递归与部分计算。

局限与适用范围

QPL 是语义与语言设计成果,不等同于面向特定硬件的编译器或完整工具链。其模型主要处理理想化、有限维量子数据;噪声、门集、设备连通性、编译成本和工程运行时需要额外建模。类型安全也不自动证明某个算法的后置条件、数值精度或硬件执行正确性。

与其他工作的关系

本文把 量子伪代码约定 和 量子程序设计 中的程序表达与语义问题推进到完整语言设计。van Tonder 的 量子 Lambda 演算 提供函数式、线性相关的另一条路线;Abramsky 与 Coecke 的 范畴语义 则在更抽象的组合结构中描述协议。QPL 更强调可写的语言构造与超算子语义。

原论文

Peter Selinger, Towards a Quantum Programming Language, Mathematical Structures in Computer Science 14(4), 527–586 (2004), DOI: 10.1017/S0960129504004256. 作者页面

本词条用于学习导览。正式引用与技术细节请以文末原始文献为准。
继续阅读量子计算的 Lambda 演算→

检索馆藏