Microsoft加入量子计算的竞争

Microsoft在Ignite大会上宣布了自己的量子计算新平台的预览版,并公开了借助近期粒子物理学方面的进展推出拓扑量子计算机的计划。

Microsoft的量子计算平台预览版将包括一个量子计算模拟器,以及一种集成在Visual Studio中的量子计算编程新语言。据Microsoft介绍,该平台的拓扑量子比特计算执行时间更长、一致性更好并且误差更小。

在Microsoft的量子计算愿景中,还包括了一个可扩展的通用拓扑量子计算机,该计算机依然处于开发的早期阶段。Microsoft的CEO Satya Nadella通过一个虚拟研讨会,深入阐明了Microsoft对量子计算的规划。研讨会的参与者是四位来自于Microsfot量子团队的成员,分别是计算机科学家Krysta Svore、数学家和拓扑量子计算先驱Michael Freedman、物理学家Charlie Marcus和Leo Kouwenhoven,他们负责构建Microsoft的拓扑量子计算机。

拓扑量子比特是支撑Microsoft量子计算机的主要理念,据Freedman介绍,它是由一种新形物质构成的。该拓扑物质所存储的信息并非本地化于一个特定的位置,而是全局存在在整个拓扑结构中。这一属性的理念可以用一个绳圈解释。绳圈上可以打结,也可以不打结。要了解绳圈上是否打结了,我们不能借助于查看绳圈的任何本地属性,而是必须要查看其整体形态,即绳圈的拓扑。

该属性背后的物理现象是电子分数化(Electron Fractionalization)。分数化是一个分解电子的过程,表现为马约拉纳费米子(Majorana Fermions)是否存在于给定地点。马约拉纳费米子中编码了电子的原始信息,并扩展到整个物质中,构成物质的全局属性。Kouwenhoven是2012年首次发现马约拉纳粒子的研究人员之一,据他介绍,马约拉纳粒子只能在非常低温的情况下观测到。它们是两个同步状态的量子叠加,一个状态是粒子存在,另一个状态是粒子不存在。全局存储信息的主要优点是防止出现本地误差。

要构建一个真正的拓扑量子计算机,一个基础步骤是让这些分数化的电子依此产生链式影响。这正是Microsoft量子芯片的基础部分,对此Marcus展示了一个原型。其中的一个挑战是找到一种能控制这种作用的方式,该方式无需测定作用过程,因为测定会破坏叠加效应。Microsoft的解决方案是基于一种工作于4K温度的低温经典计算机(Cryogenic Classical Computer),它负责控制工作于0.01K温度的量子芯片。

据Svore介绍,在低温计算机上部署了Microsoft的软件栈,其中包括了一种领域特定语言,该语言是专门为编程可扩展的量子计算机和构建量子应用而设计的。下面的代码使用Microsoft的新量子语言编写,相当于实现“Hello World!”:

operation () EPR (Qubit q1, Qubit q2) {Body {H (q1)CNOT (q1, q2)}
}
operation () Teleport (Qubit msg, Qubit here, Qubit there) {Body {EPR (here, there)CNOT (msg, here)H (msg)let m_here = H (here)if (m_here == One) {X (there)}let m_msg = H (msg)if (m_msg == One) {Z (there)}}
}
operation (Result) TeleportTest (Result msg) {Body {mutable res = Zerousing (qubits = Qubit[3]) {let msgQ = qubits[0]// 将msgQ设置为消息状态。SetQubit(msg, msgQ)Teleport (msgQ, qubits[1], qubits[2])set res = H (qubits[2])}return res}
}

新语言将完全地集成到Visual Studio中,并支持语法高亮、调试和测试。调试器将会显示系统量子状态随时间的演化情况。Visual Studio还将提供一个可具有多至30个量子比特的量子模拟器。此外,Microsoft还将提供更强大的基于Azure的模拟器,可提供多至40个量子比特。

近些年,我们已看到对量子计算领域的兴趣与日俱增,Microsoft并非这一竞技场上的首位选手。其中最应关注的是,近期IBM发布了它的16个量子比特处理器,以及称为“QISKit”的量子SDK。此外,中国的研究人员也给出了里程碑式的重要研究成果。

Microsoft量子计算平台预览版有望于今年末发布。

原文地址:http://www.infoq.com/cn/news/2017/10/microsoft-quantum-platform


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/323215.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Window系统多硬盘设置新引导盘

一、系统启动过程 电脑通电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后读取活动主分区的PBR(分区引…

【Java】jdk和eclipse下载安装

(以前忘了写这方面的安装) 附一段测试java环境的代码 public class hello {public static void main(String[] args) {System.out.println("Hello World dsadasdaSasdasd");} }jdk安装: 这里我采用不同方式 直接360软件管家搜索jd…

使用BigQuery分析GitHub上的C#代码

一年多以前,Google 在GitHub中提供了BigQuery用于查询的GitHub上的开源代码(open source code on GitHub available for querying),如果这还不够,您可以免费每月运行1TB的查询! 所以在这篇文章中&#xff0…

【博客】博客转移

最近一直在搞博客,随着博客基本转移到wordpress,总算是告一段落。 我通过各种博客搬家的方式都没能把博客转移到wordpress上,后来实在没办法,强行Gutenberg编辑器,一个一个复制粘贴到自己博客上面,总算是实…

AspectCore中的IoC容器和依赖注入

IOC模式和依赖注入是近年来非常流行的一种模式,相信大家都不陌生了,在Asp.Net Core中提供了依赖注入作为内置的基础设施,如果仍不熟悉依赖注入的读者,可以看看由我们翻译的Asp.Net Core中文文档中依赖注入的相关章节: ASP.NET Cor…

HttpClient的性能隐患

最近在进行开发过程中,基于都是接口开发,A站接口访问B接口接口来请求数据,而在这个过程中我们使用的是HttpClient这个框架,当然也是微软自己的框架,性能当前没有问题,但如果你直接使用官方的写法&#xff0…

【填坑】博客搬家造成的博客重复问题

原本我的博客数量是差不多八十几篇,昨天晚上一看,怎么变成一百三十多篇了。 惊讶之余有点不可思议,查了才发现原来有几十篇是重复的,后来删掉了一些,但还是有很多 有些也不是重复的,我从知乎发的东西也被搬…

使用acs-engine在Azure中国区部署kubernetes集群详解

1. acs-engine简介 ACS是微软在2015年12月推出的一项基于容器的云端PaaS服务。说简单点,acs-engine就是一个ARM模板生成器,用户只需要配置几个简单的参数来描述容器集群的规格,然后acs-engine将这个容器集群描述文件转化成一组ARM&#xff08…

Lyft的TypeScript实践

来自Lyft的前端工程师Mohsen Azimi介绍了Lyft向TypeScript转型的过程,说明JavaScript类型系统的重要性、为什么Lyft选择TypeScript以及他们的一些实践经验。以下内容翻译自作者的博客,查看原文TypeScript at Lyft。 在我刚刚成为JavaScript开发者的时候&…

【Python】Conda的安装

挖个坑,以后自己慢慢填:下载conda后无法使用 conda优势:conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地…

Java AIO 编程

转载自 java aio 编程 Java NIO (JSR 51)定义了Java new I/O API,提案2000年提出,2002年正式发布。 JDK 1.4起包含了相应的API实现。 JAVA NIO2 (JSR 203)定义了更多的 New I/O APIs, 提案2003提出,直到2011年才发布, 最终在JDK …

通过Swashbukle给DotNet Core Web API 增加自动文档功能

DotNet Core Web API给开发者提供了一个很好的框架来开发Restful的API。那么这些API接口该如何管理起来呢?Swagger是一个很好的选择,Swagger不需要开发者额外去维护接口文档,只要开发者的接口遵循Restful的规范,Swagger就会根据AP…

【Python】urllib爬取动漫图片

首先附上需要爬取图片的网站&#xff0c;应该算是个冷门网站&#xff0c;够练手用的了&#xff0c;我的博客图片大部分来自于这里 二次元图片网站 筛选src里的数据 用par r’<img src"[^"].jpg">可以筛选出带有里面的内容 htmldasdas <img src"…

【Python】字符串和变量拼接的写法

我的需求是改变url地址的后缀&#xff0c;其他不改&#xff0c;所以直接for循环&#xff0c;变换数字就行 也就是 字符串变量字符串 想着改变后缀就能批量爬图。但是原本的想法是错误的 for num in range(2,8):url"http://www.win4000.com/wallpaper_detail_160877_"…

【学校作业】学生数据打印

数据结构课程布置了一门c语言的结构体作业 要求&#xff1a; 五个学生&#xff0c;数据包括学号&#xff0c;姓名&#xff0c;3门课的成绩&#xff0c;从键盘输入5个学生的数据。打印出3门课总平均成绩&#xff0c;以及最高分 强迫症患者表示打印出的数据必须美观&#xff0c; …

Entity Framework Core 2.0 使用入门

一.前言 Entity Framework&#xff08;后面简称EF&#xff09;作为微软家的ORM&#xff0c;自然而然从.NET Framework延续到了.NET Core。以前我也嫌弃EF太重而不去使用它&#xff0c;但是EF Core&#xff08;Entity Framework Core&#xff09;已经做了很多性能优化&#xff0…

JavaFX中WebView的java与JS代码互相调用

java代码 package main;import javafx.application.Application; import javafx.beans.value.ObservableValue; import javafx.concurrent.Worker; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.VBox; import javafx.scene.w…

Jexus~docker与它产生了暖味

前段时间写了很多docker for .net core的文章&#xff0c;用来快速部署微服务相当给力&#xff0c;而尝到了香头的我们希望把.net frameworks的程序也使用docker来部署一下&#xff0c;那么接下来我就结果一下&#xff0c;在linux,docker上运行和部署.net frameworks应用程序的…

ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明

一.ABP的简单介绍 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点&#xff0c;它旨在成为一个通用的WEB应用程序框架和项目模板。 ASP.NET Boilerplate 基于DDD的经典分层架构思想…

【Python】Scrapy的安装与使用

scrapy的安装 不得姐网站 直接用命令 pip install scrapy 网络可能较慢&#xff0c;等等就好 另外windows环境下你还需要安装win32 我之前就是因为没有安装这个库&#xff0c;白忙活了一天&#xff0c;一直都是报错状态 pip install pypiwin32 scrapy的使用 cd到卓面或者其他…