机器之心报道
编辑:杜伟
研究者希望 Twist 为创建更多有助于编程人员更易面对量子计算挑战的语言铺平道路。

对量子计算机进行编程需要了解纠缠(entanglement),它是用于各种量子比特的计算乘子,可以转化为强大的能量。当两个量子比特纠缠时,一个量子比特上的行为可以改变另一个量子比特的值,即使这两个量子比特在物理上是分离的,从而引出爱因斯坦的名言「鬼魅般的超距作用」。
但是,这种能力同样导致了弱点。在编程时,如果丢弃一个量子比特时没有考虑到它与另一个量子比特的纠缠,则会破坏另一个量子比特中存储的数据,进而危及程序的正确性。
近日,MIT CSAIL 和 RLE(电子学研究实验室)的研究者在论文《Twist: Sound Reasoning for Purity and Entanglement in Quantum Programs》中创建了一种被称为 Twist 的量子计算编程语言。Twist 可以通过一种经典计算机编程人员理解的语言来描述和核实哪些数据在量子程序中被纠缠。Twist 语言引入了一种被称为纯度(purity)的概念,这种概念导致纠缠强制缺失,生成了更直观易懂的程序,并且在理想情况下 bug 更少。
举例而言,编程人员可以使用 Twist 来说明:一个程序生成的临时垃圾数据不与该程序的答案纠缠在一起,因此可以安全地丢弃这些数据。

论文一作、MIT CSAIL 编程系统组(Programming Systems Group)的博士生 Charles Yuan 表示,「通过显式地说明一个量子比特何时不得与另一个纠缠,Twist 编程语言使得开发人员可以编写更安全的量子程序。并且,因为理解量子程序需要事先了解纠缠,我们希望 Twist 为创建更多有助于编程人员更易面对量子计算独特挑战的语言铺平道路。」

对于这项工作,芝加哥大学计算机科学教授、Super.tech 首席科学家 Fred Chong 说道,「量子计算机容易出错,并且编程起来很难。通过引入程序代码中的纯度并对它进行推理,Twist 语言保证纯净代码中的量子比特无法被非代码中的比特所改变,进而朝着更容易的量子编程迈出了一大步。」
技术概览
本文中,研究者将纯度形式化为一个实现量子程序中纠缠推理的核心工具。就一个纯净的表达式而言,它的评估不受不属于它的量子比特测量结果的影响,这意味着在计算中不与任何其他表达式产生纠缠。然后,他们提出了首个以类型系统为特征的语言 ——Twist,用于对纯度做合理推理。这种类型系统使开发者可以使用类型注释识别纯净的表达式。
Twist 还引入了纯度断言操作符(assertion operator),说明量子门输出中没有纠缠。为了合理地检查这些断言,Twist 组合使用了静态分析和运行时验证。
研究者使用量子遥传(quantum teleportation)协议展示了纯度值和 Twist,以及纠缠的力量和门传送等技术的构建块。量子遥传协议通过传送两个经典信息比特,将一个量子比特中存储的信息传送到任意距离之外的接收器。下图 1 展示了一个用于遥传延迟测量变体的量子电路,它将要被传送的量子比特 q^1 作为输入。





参考链接:https://techxplore.com/news/2022-01-language-quantum.html
© THE END
转载请联系本公众号获得授权
投稿或寻求报道:content@jiqizhixin.com
原标题:《引入纯度和类型注释、捕捉编程错误,MIT推出低开销量子编程语言Twist》
评论 (0)