量子计算机怎么编程,量子计算机编程(一)——QPU编程

本文介绍了《Programming Quantum Computers》一书,讲解如何在量子计算机上编程,强调其作为协处理器的角色。文章通过电路图和代码示例解释了量子比特的操作,包括量子态、H门、相位操作、COPY操作及其量子传输的安全性。还讨论了多量子比特的纠缠和受控操作,如CNOT和CPHASE门,并展示了如何利用受控操作实现量子比特的交换和远程操控。
摘要由CSDN通过智能技术生成

今天要给大家介绍的是这本书《Programming Quantum Computers —— Essential Algorithms and Code Samples》,主要讲如何在量子计算机上编程,又示例的代码可以跑 https://oreilly-qc.github.io./ ,这本书的理解方向是纯粹计算机的,连矩阵都很少涉及,一个量子计算机就像是协处理器一样,很像我们现在的GPU。

这本书一共分为三个部分,我也将分成三篇文章来写。

单量子比特

这本书中对于量子的表达方式如下circle notation:

e632caa2c3b9fb53c3eb40017dc9b4fd.png

aeb5f68f12dc0e2f4d3e7df1a1d5669a.png

蓝色圈的面积就是这个量子态测量后是这个状态的概率,中间的蓝色短线代表他们的相位,因为全局相位也观察不出来,所以一般$|0\rangle$就是朝上的。对于一个量子比特来说,重要的也就这两个,magnitude和relative phase(可能因为重要的是概率大小,所以他其实没有提amplitude其实是一个复数)。

b7d2ecab0202a06f3dfff62f6c2e33f5.png

这两个态实际上是等价的。

电路图呢,一般长这样

884d0203087f11fad47d8813d6af32ce.png

这个电路图对应的代码如下:(这个例子都可以在上面那个网站上跑起来)

qc.reset(1); // allocate one qubit

qc.write(0); // write the value zero

qc.had(); // place it into superposition of 0 and 1

var result = qc.read(); // read the result as a digital bit

第一步就是申请一个qubit,就像你要给变量分配空间一样。

第二步写0,其实写0很容易,你可以直接测量,要么0,要么1,如果结果是1的话,再做一个not操作就好;当然,你要是嫌麻烦,对于一个qubit,长时间的静置他,他也会变成0,毕竟还是基态比较稳定。

第三步就是进行一个H门的操作

第四步读,其实就是测量了

常见的作用于单量子比特操作的表达方式:

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码什么意思@font-face { font-family: 'iconfont'; src: url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), url('iconfont.ttf') format('truetype'); font-weight: normal; font-style: normal; }
05-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值