点击围观!腾讯 TAPD 助力金融行业研发提效、敏捷转型最佳实践! 了解详情
写点什么

量子编程迎重大突破!量子计算机领域第一种高级编程语言 Silq 诞生

  • 2020-06-19
  • 本文字数:2255 字

    阅读完需:约 7 分钟

量子编程迎重大突破!量子计算机领域第一种高级编程语言Silq诞生

在打造强大量子计算机方面,近期出现的一系列技术进步令人振奋。近日,苏黎世联邦理工学院的计算机科学家们又在编程语言领域取得重要突破:他们推出的“量子语言”成为第一种面向量子计算机的直观编程语言,且与传统计算机语言一样优雅、简单且安全。

第一种量子计算机直观编程语言问世

量子计算机的编程门槛已经越来越低。苏黎世联邦理工学院的计算机科学家们设计出的第一种直观编程语言,能够像传统计算机语言一样简单、可靠且安全地在量子计算机上进行编程。


ETH 安全、可靠与智能系统实验室(SRI)计算机科学教授 Martin Vechev 表示,“目前,对量子计算机进行编程仍是困扰研究人员的一大挑战。正因为如此,我们才对苏黎世理工此次在量子计算机与编程语言发展方面获得的成果感到无比振奋。”


他补充称,“我们的量子编程语言— Silq 将帮助程序员们更好地发挥量子计算机中蕴藏的潜力。对程序员们而言,Silq 代码更加紧凑、速度更快,也更直观且易于理解”。



苏黎世联邦理工学院的计算机科学家们开发出第一种量子编程语言,能够优雅、简单且安全地解决多种复杂的计算问题。


据了解,本周,Vechev 将在 PLDI 2020 编程语言大会上将 Silq 介绍给量子计算领域的其他专家。为了促进与该语言相关的讨论、采用以及进一步发展,他和他的团队还在自己的网站(silq.ethz.ch)上发布了 Silq 项目的更多详细信息。


过去十年以来,量子计算一直备受关注,业界普遍认为这些根据量子力学原理运行的计算机具有巨大的发展空间。如今,大部分研究人员也认为,量子计算机终有一天将在某些特定问题中带来远超传统计算机的处理能力。凭借着纠缠量子态基础之上,各种信息在特定时间点上的重叠情况,量子计算机在某些方面拥有无与伦比的强大算力,足以解决众多在传统计算机上无法在合理时间内解决的问题。


虽然由此衍生出的“量子霸权”理论还没有得到最终证明,但近期取得的一系列重大技术进步无疑让我们充满信心。2019 年夏末,量子计算机已经以远超顶尖经典计算机的速度解决了一个问题(虽然只是非常具体的特定问题)。


在另一方面同,对于某些特定“量子算法(即计算策略)”,其计算速度虽然已经高于经典算法,但却还无法发挥量子计算机的全部潜力。更重要的是,目前的量子计算机的错误率仍然太高,导致我们很难直接在现有量子硬件上运行这些算法。

更好表达程序员的意图

要发挥量子计算的力量,除了配合最新技术之外,还需要创造一种能够描述量子算法的编程语言。在原则上,算法可以算是解决问题的“秘方”。编程语言负责描述算法,而计算机则在语言代码的指引下完成必要的计算。


如今,量子编程语言已经与特定硬件紧密联系在一起。换句话说,之前的量子编程语言都需要精确描述底层电路的行为。但对程序员们来说,这些“硬件描述语言”既麻烦又容易出错,因为其中各项编程指令必须非常详细,用以明确描述量子算法实现过程中需要的全部细节。


Martin Vechev 表示,与现有语言相比,Silq 能够更好地发挥量子计算机中的潜力。正因为如此,Vechev 与他的团队才坚定了开发 Silq 语言的决心。



Martin Vechev, 计算机科学教授


Vechev 研究小组中负责开发监督工作的博士生 Benjamin Bichsel 表示,“Silq 是第一种直观量子编程语言,其设计目的不再围绕硬件的结构与功能展开,而更多关注程序员们在解决问题时表达出的意图 — 换言之,他们不需要了解量子计算机的基本架构与每一个实现细节。”


计算机科学家们将这种从特定计算机类型的细节中抽象得出的计算机语言,称为高级编程语言。Silq 可以说是量子计算机领域的第一种高级编程语言。高级语言将更具表现力,能够用更少的代码描述更加复杂的任务与算法。这意味着相关代码将更易于理解,也降低了程序员们的使用门槛。更重要的是,高级语言能够与多种不同计算机架构配合使用。

通过自动计算消除错误

但要论 Silq 给量子编程语言带来的最大创新贡献,还在于它消除了长期困扰量子编程的错误源问题。一切计算机都需要通过多个中间步骤以执行计算任务,而这些步骤的存在总会产生对应的中间结果(或者叫临时值)。


为了释放内存空间,传统计算机会自动删除这些值。对于这种丢弃多余临时值的操作,计算机科学家将其称为“垃圾收集”。


在量子计算机当中,由于量子纠缠态的存在,这种处理操作将更加棘手:此前计算得出的值可能与当前值发生交互,从而干扰正常计算。为此,要想在量子计算机上清除这些临时值,可能还需要一种更高级的所谓“计算撤销(uncomputation)”技术。


Bichsel 解释道,“Silq 是第一种能够自动识别并清除掉这些无用值的编程语言”。计算机科学家们之所以能够实现这项目标,靠的正是对经典编程语言的深刻理解:他们的自动算术方法将仅使用不存在任何特殊量子去处的编程命令 — 用 Vechev 与 Bichsel 的原话来描述,即“qfree”命令。


Vechev 还指出,“Silq 在量子计算机的编程优化方面带来了一项重大突破;当然,这还只是万里征途的第一步”。


目前,量子计算技术的实际应用当中仍存在着诸多悬而未决的问题,但随着直观编程语言 Silq 的出炉,Vechev 与 Bichsel 希望激励整个行业进一步开发量子编程语言,并推动新型量子算法在理论与应用方面取得新的成果。


Bichsel 总结道,“我们的四人团队历时两年取得了这项突破,其成功源自语言设计、量子物理学以及具体实现等多种不同专业知识的交相融合。如果我们的创新成果能为其他研究团队所认可并带来一点启发,那将是对我们努力的最大肯定。”


原文链接:


https://ethz.ch/en/news-and-events/eth-news/news/2020/06/the-first-intuitive-programming-language-for-quantum-computers.html


2020-06-19 12:383340
用户头像
刘燕 InfoQ高级技术编辑

发布了 1099 篇内容, 共 431.5 次阅读, 收获喜欢 1908 次。

关注

评论

发布
暂无评论
发现更多内容

这篇Kafka笔记真是写的太好了!不收藏都对不起我的眼睛

Java 程序员 后端

通过AOP和自定义注解实现请求日志收集功能

Java 程序员 后端

dart系列之:dart语言中的异常

程序那些事

flutter dart 程序那些事 11月日更

超进化!阿里腾讯大佬联合撰写亿级网关、分布式、微服务等太香了!(1)

Java 程序员 后端

软考(软件设计师)考点总结 -- 数据库技术

Java 程序员 后端

还在用 Guava Cache?它才是 Java 本地缓存之王!

Java 程序员 后端

超进化!阿里腾讯大佬联合撰写亿级网关、分布式、微服务等太香了!

Java 程序员 后端

软件设计师复习(一)

Java 程序员 后端

适合程序员表白的情话【保你脱单】(1)

Java 程序员 后端

跨年巨作!13万字!腾讯高工纯手写“JDK源码笔记”直接带你飙向实战

Java 程序员 后端

还没搞懂Java中的路径?看完这篇文章你就全懂了

Java 程序员 后端

遇到Java内存溢出(OOM)时,这样排查

Java 程序员 后端

适合程序员表白的情话【保你脱单】

Java 程序员 后端

拥有一台服务器后,我竟然这么酷?

老表

Python Linux web开发 云服务器 跟老表学云服务器

【LeetCode】环形链表 II Java题解

Albert

算法 LeetCode 11月日更

近年来面试阿里总结出360道面试题,【Java岗】(JVM

Java 程序员 后端

远景能源java后台开发实习面试题

Java 程序员 后端

【Flutter 专题】11 图解 ListView 的多种绑定方式

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

逼着面试官问了我ArrayList和LinkedList的区别,他对我彻底服了

Java 程序员 后端

Vue进阶(幺捌叁):IE9兼容性问题-数据初始化问题

No Silver Bullet

Vue 11月日更

还在傻乎乎得背MyISAM与InnoDB 的区别?一篇文章让你理解的明明白白

Java 程序员 后端

这400道面试题,决定了你去BAT还是TMD

Java 程序员 后端

金三银四助力面试-手把手轻松读懂HashMap源码

Java 程序员 后端

重走JAVA之路(五):面试又被问线程池原理?教你如何反击(1)

Java 程序员 后端

我终于知道,中国互联网是怎么弯道超车,干翻美国了!

博文视点Broadview

这六个 MySQL 死锁案例,能让你理解死锁的原因!

Java 程序员 后端

送给你一份程序员大佬整理的 HTTP 基础知识大图

Java 程序员 后端

透过根源从而探究红黑树的本质,究竟二叉树是什么神仙鬼怪?

Java 程序员 后端

超详细:常用的设计模式汇总

Java 程序员 后端

还在担心面试遇到SpringBoot,莫慌,我送你套神级pdf文档

Java 程序员 后端

重走JAVA之路(五):面试又被问线程池原理?教你如何反击

Java 程序员 后端

量子编程迎重大突破!量子计算机领域第一种高级编程语言Silq诞生_AI_Florian Meyer_InfoQ精选文章