现代函数式编程语言理论使用单子来编码计算副作用和副上下文,超越了基本的程序逻辑。尽管量子计算本质上具有副作用(如量子测量)和上下文依赖性(如混合辅助状态),但这种单子范式很少应用于量子编程语言。在这里,我们系统地分析了由格罗滕迪克的“操作动机瑜伽”诱导的参数化模块谱类别上的(共)单子——目前专门针对 HC 模块,并进一步针对集合索引复向量空间,如配套文章 [EoS] 中所述。将索引向量空间解释为由量子测量结果参数化的备选量子态空间集合,如 Proto-Quipper 语义中所述,我们发现这些(共)单子为函数式量子编程提供了一种全面的自然语言,具有经典控制和将量子测量结果“动态提升”回经典上下文的功能。最后,我们指出了一种领域特定的量子编程语言 ( QS ),它以透明的 do 符号表示这些一元量子效应,可嵌入到最近构建的线性同伦类型理论 ( LHoTT ) 中,后者可解释为参数化的模块谱。一旦嵌入 LHoTT ,它应该可以实现形式可验证的通用量子编程,具有线性量子类型、经典控制、动态提升,尤其是拓扑效应(如配套文章 [TQP] 中所述)。
主要关键词