1 量子计算机与量子编程
1.1 量子计算机
Quantum computing is computing using quantum-mechanical phenomena, such as superposition and entanglement. A quantum computer is a device that performs quantum computing.
所谓量子计算即利用量子力学现象来进行计算,例如量子叠加和量子纠缠。量子计算机是一种执行量子计算的设备。
1.2 量子编程语言
Quantum programming is the process of assembling sequences of instructions, called quantum programs, that are capable of running on a quantum computer. Quantum programming languages help express quantum algorithms using high-level constructs.
量子编程是一种能够在量子计算机上运行的指令序列,称为量子程序。量子编程语言有助于使用高级结构来表达量子算法。
1.3 量子编程语言种类
量子编程语言包括命令式量子编程语言、函数式量子编程语言和多范式量子编程语言三类。命令式量子编程语言有 QCL、Quantum pseudocode、Q|SI>、Q language、qGCL、QMASM;函数式量子编程语言有 QFC 和 QPL、QML、LIQUi|>、Quantum lambda calculi、Quipper;而下面我们要介绍的 Q# 就属于多范式量子编程语言。
2 搭建量子编程环境
量子计算机真正可以使用还有较长一段时间,目前还没有成熟的量子编程环境和编译工具,微软算是在该领域发力比较早的公司。在本月11日发布了一个量子开发工具包的免费预览版,本文将介绍使用微软量子开发工具包(Microsoft Quantum Development Kit,简称为 QDK)在 Visual Studio 中进行 Q# 量子编程。
2.1 量子开发工具包介绍
在今天9月下旬的 Ignite 大会上,微软将量子计算列为三大关键技术之一(另外两项为人工智能和虚拟现实),这三项关键技术将会改变我们所知道的科技行业。该公司还宣布计划在今年晚些时候发布量子计算机的新编程语言。
2017年即将结束,微软也如期推出了免费的 Quantum 开发套件预览版,该套件包括量子计算模拟器,Q# 编程语言(发音为“Q Sharp”)以及其他资源。
微软量子开发工具包预览版提供了一个完整的开发和仿真环境,其中包含了以下组件:Q# 语言和编译器、Q# 标准库、本地量子机模拟器、量子计算机跟踪模拟器、Visual Studio 扩展。
微软也正在制作一套全面的开发文档,以及库和示例程序,为人们提供所需要的背景知识,了解量子系统的独特之处,比如量子隐形传态。