微软开源了其量子计算编程语言 Q#

栏目: 软件资讯 · 发布时间: 6年前

内容简介:在 Build 2019 会议上,微软宣布将于今年夏天在微软已经发布了其与其他已经加入量子竞赛的公司(谷歌、IBM 等等)不同,微软选择创建新的编程语言,为了与 C# 和 F# 保持一致,该语言被称为 Q#,用来

在 Build 2019 会议上,微软宣布将于今年夏天在 GitHub部分开源其量子开发 工具 包(Quantum Developer Kit) ,包括 Q# 编译器和量子模拟器。

微软已经发布了其 量子开发工具包 ,并于 2017 年底 提供给开发人员,同时还计划 开发自己的量子计算机

与其他已经加入量子竞赛的公司(谷歌、IBM 等等)不同,微软选择创建新的编程语言,为了与 C# 和 F# 保持一致,该语言被称为 Q#,用来 描述量子计算

我们的高级编程语言 Q# 旨在应对量子信息处理的挑战,它集成于一个软件栈中,可以把量子算法编译为对量子计算机的原始操作。

Q# 是特定领域的编程语言,具有原生的类型系统,除了“经典的”原始类型外,还包括量子抽象的直接表示,如量子比特(qubit)、量子运算和运算符等等。类似的,它的流控制指令,除了 for 和 repeat 循环、返回语句等等,还包括一些只能在量子操作中使用的语句。这些语句包括 using(允许获取一个量子比特)和 borrowing(允许临时访问量子比特)。

以下是一个 Q# 程序示例,该程序通过查看一个给定状态来设置一个量子比特,如果它不处于所需的状态,那么就把它翻转:

复制代码

namespace Quantum.Bell {
openMicrosoft.Quantum.Primitive;

operation Set (desired: Result, q1: Qubit) :(){
body {
letcurrent =M(q1);
if(desired != current) {
X(q1);
}
}
}
}

微软量子模拟器利用 16GB 内存可以最多模拟 30 个逻辑量子比特。微软声称,在可以使用的时候,为模拟器编写的程序可以在他们的 量子计算机 上无需修改地运行,。

在硬件方面,微软正在利用拓扑量子比特开发 拓扑量子处理器 。拓扑量子比特在其拓扑结构中全局化地存储信息,就像在字符串所发生的一样,只需要查看全局情况而不是任何局部属性,就可以判定它是否纠缠。

微软表示,其量子开发工具包的开源将主要惠及那些希望为这个不断发展领域的发展作出贡献的开发人员,以及所有那些需要使用开源软件的机构,他们可以有条件地使用 Q# 来进行他们的研究。

阅读英文原文: Microsoft Open-sources Q#, its Language for Quantum Computing


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Beginning Apache Struts

Beginning Apache Struts

Arnold Doray / Apress / 2006-02-20 / USD 44.99

Beginning Apache Struts will provide you a working knowledge of Apache Struts 1.2. This book is ideal for you Java programmers who have some JSP familiarity, but little or no prior experience with Ser......一起来看看 《Beginning Apache Struts》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器