量子计算与编程入门

第二章 量子计算基础

2.1 量子力学基础理论

量子系统

量子的第一个特性:一定会遇到不可分割的最小单位,这种最小单位,统称为量子;这种现象,被称为量子化
量子的第二个特性:跃迁
量子的第三个特性:量子叠加性
量子的第四个特性:“测量和坍缩假设”。(争议)

状态的演化

状态的演化是指量子态随时间发生变化。

态矢

若c=a+bi,则c*=a-bi


采用竖线和尖括号的组合描述一个量子态,其中每一个分量都是复数,右上角标T表示转置。这种形式表示量子态是一个矢量。右矢表示一个 n×1 的列矢量,左矢表示一个 1×n 的行矢量。如果左矢和右矢在括号内的描述相同的话,那么这两个矢量互为转置共轭

内积和外积

两能级系统

粒子的能量只会在几个分立的能级上面取值,限制取值的可能性种类为两种,这就构成了两能级系统。除了某些特殊的情况之外,这两个能级必定能找出来一个较低的,称之为基态(ground state),记为 |g〉;另一个能量较高的,称之为激发态(excited state),记为 |e〉

和经典的比特类比,常将|e〉记做|0〉,将|g〉记做|1〉,并称之为量子比特(quantum bits)。

状态的演化

量子态的演化本质上可以看作是对量子态对应的矩阵做变换,即是做矩阵的乘法。

叠加态和测量

相位、纯态和混合态

纯态就是“纯粹的量子态”,它不仅具有概率,还具有相位(也就是量子相干性)。混合态是纯态的概率性叠加,它往往失去了(部分或全部的)相位信息。

再沿着平行于XY 平面的方向,并且穿过这个点的Z 坐标,可以得到一个圆,这个圆就象征着相位的复平面;这个点在这个圆上交X 轴的角度就是单位复数的幅角。经过这个过程可以将每个纯态都与球面上的点一一对应了起来。

混合态实际上是多个纯态的经典统计概率的叠加。对于每一个纯态分量,连接球心和球面上的点,可以形成一个矢量。根据概率列表,对所有的纯态矢量进行加权平均,即可得到混合态的矢量,即得到了混合态对应的点。混合态是布洛赫球内部的点,根据混合的程度不同,矢量的长度也不同。最大混合态是球心,它意味着这里不存在任何量子叠加性。

观测量与计算基下的测量

在量子力学中常称量子比特|𝜓〉处于|0〉和|1〉的叠加态(superpositions),其中α、β都是复数(complex number),两维复向量空间的一组标准正交基(orthonormal basis)|0〉和|1〉组成一组计算基(computational basis)。

量子比特的信息不能直接获取,而是通过测量来获取量子比特的可观测的信息。可观测量在量子理论中由自伴算子(self-adjoint operators)来表征,自伴的有时也称Hermitian。

在量子力学中测量(measure)会导致坍塌,即是说测量会影响到原来的量子状态,因此量子状态的全部信息不可能通过一次测量得到。当对量子比特|𝜓〉进行测量时,仅能

当测量算子具有酉变换性质时,投影测量和一般测量等价。

投影测量

复合系统与联合测量

张量积是两个向量空间形成一个更大向量空间的运算。在量子力学中,量子的状态由希尔伯特空间(Hilbert spaces)中的单位向量来描述。

复合系统的状态演化

已知两能级的量子系统的状态是通过酉变换来实现演化的,那么复合系统的状态该如何随时间发生演化呢?复合系统可以看成是子系统的张量生成。本质上复合系统中量子态的演化也是矩阵的乘法,与单个子系统相比,只不过是多了张量积的运算。

2.2 量子程序

量子计算原理

经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门,使用量子逻辑门,有意识的使量子态发生演化,所以量子逻辑门是构成量子算法的基础。

酉变换

酉变换是一种矩阵,也是一种操作,它作用在量子态上得到的是一个新的量子态。使用 U 来表达酉矩阵,U† 表示酉矩阵的转置复共轭矩阵,二者满足运算关系 UU†=I,所以酉矩阵的转置复共轭矩阵也是一个酉矩阵,说明酉变换是一种可逆变换。

矩阵的指数函数

单位矩阵

单量子比特逻辑门

在经典计算机中,单比特逻辑门只有一种——非门(NOT gate),但是在量子计算机中,量子比特情况相对复杂,存在叠加态、相位,所以单量子比特逻辑门会有更加丰富的种类。

泡利矩阵

常见逻辑门以及含义

Hadamard (H) 门

假设,H 门作用在任意量子态|ψ〉 = 𝛼|0〉 + 𝛽|1〉上面, 得到新的量子态为:

Pauli-X 门

Pauli-Y 门

Pauli-Z 门

旋转门(rotation operators)

分别用不同的泡利矩阵作为生成元是构成RX,RY,RZ 的方法。

𝐑𝐗(𝜽) 门

𝐑𝐘(𝜽) 门

𝐑𝐙(𝜽) 门

RX,RY,RZ 意味着将量子态在布洛赫球上分别绕着X,Y,Z 轴旋转 θ 角度,所以RX,RY 能带来概率幅的变化,而RZ 只有相位的变化。那么,共同使用这三种操作能使量子态在整个布洛赫球上自由移动。

多量子比特逻辑门

不论是在经典计算还是量子计算中,两量子比特门无疑是建立量子比特之间联系的最重要桥梁。不同于经典计算中的与或非门及它们的组合,量子逻辑门要求所有的逻辑操作必须是酉变换,所以输入和输出的比特数量是相等的。在描述两量子比特门之前,必须要将之前对于单量子比特的表示方式扩展一下。联立两个量子比特或者两个以上的量子比特时,就用到复合系统中量子态演化的假设

CNOT 门

假设,CNOT 门作用分别作用在基态|ψ〉 = |00〉、|01〉、|10〉、|11〉上面, 得到新的量子态为:

由于低位比特为控制比特,高位比特为目标比特,所以当低位比特位置对应为1 时,高位比特就会被取反;当低位比特位置为0 时,不对高位比特做任何操作。

CR 门

iSWAP 门

量子线路与测量操作

量子线路是由代表量子比特演化的路线作用在量子比特上的量子逻辑门组成的。量子线路产生的效果,等同于每一个量子逻辑门依次作用在量子比特上。在真实的量子计算机上,最后要对量子系统末态进行测量操作,才能得到末态的信息,因此也把测量操作作为量子线路的一部分,测量操作有时也称为测量门。测量背后的原理就是之前讲到的投影测量。
测量操作在线路上的显示如图2.2.15:

量子计算的if 和while

所谓量子线路,从本质上是一个量子逻辑门的执行序列,它是从左至右依次执行的。即使介绍了函数调用的思想,也可以理解为这是一种简单地内联展开,即把函数中的所有逻辑门插入到调用处,自然地,可能会考虑在量子计算机的层面是否存在类似于经典计算机中的循环和分支语句。因此,就有了QIF 和QWHILE。

Ⅰ 基于测量的跳转

作为QIF 和QWHILE 的判断条件的对象,并不是量子比特,而是一个经典的信息,往往,这个经典的信息是基于测量的。在量子程序执行时,测量语句会对量子比特施加一个测量操作,之后将这个比特的测量结果保存到经典寄存器中,最后,可以根据这个经典寄存器的值,选择接下来要进行的操作。例如:

H -> q
Meas q -> c
Qif (c == Zero) H->q

这样的量子程序表示的是对q 进行Hadamard 门操作之后,测量它;如果测量的结果是0,则再做一个Hadamard 门。从这个例子可以继续延伸到Qif 可以包裹的一系列语句,而不仅仅是一个,比如:

Qif (c == Zero)
{
H->q
CNOT(q0, q1)
……
}

或者也可以设置Qelse 语句,它表示如果判断条件为非,则要执行的语句。例如:

Qif (c == Zero) CNOT(q0, q1)
Qelse CNOT(q1,q0)

再或许可以综合两个、多个量子比特的测量结果,对它们进行布尔代数运算,进行判断。另一种情况是将N 个量子比特的测量结果理解为一个N-bit 整数,之后再与其他整数进行比较。例如:

Qif (c1 == Zero && c2 == One)
{
H->q
CNOT(q0, q1)
……
}

上述规则对于QWhile 来说也是一样,比如一个随机计数的代码:

c = One
n = Zero
QWhile(c) {
H -> q
Meas q->c
n ++
}

这个程序的含义是每次对qubit 执行Hadamard 门并测量,如果测量结果为1 则继续该过程,测量结果为0 则退出循环。这表明测量得到1 的次数,每次都有1/2 的概率,给定计数器n+1,最终可以取得n 的值。重复这个实验,可以拟合出一个负指数分布。另外,QIf 和QWhile 是可以相互嵌套的,形成多层的控制流。

Ⅱ 基于量子信息的IF 和WHILE

上述的是“量子信息,经典控制”,那么有没有“量子信息,量子控制”呢?对于IF而言,答案是有的。
定义“量子信息,量子控制”过程是一组量子比特的操作,是由另一组比特的值决定的。一个最简单的例子就是CNOT 门,对于CNOT(q0,q1)而言,q1 是否执行NOT 门是由q0 的值决定的。基于量子信息的IF 的性质如下:
第一,这种控制可以叠加。如果判断变量本身处于叠加态,那么操作的比特也会出现执行/不执行逻辑门的两种分支,由此,判断变量和操作比特之间会形成纠缠态。例如:

H -> q1
CNOT q1 -> q2

此时得到的量子态是|00>+|11>,这样在CNOT 后,就把q1 这个判断变量和q2 这个操作比特纠缠了起来。
第二,控制变量和操作比特之间不能共享比特。即, CNOT(q0,q1)中控制位和目标位一定不能为相同的量子比特。
基于量子信息的IF 在实际的量子算法中使用得比较少,因此大部分量子软件开发包都没有加入这个功能。在Shor 算法和其他基于布尔运算的线路中会使用这个思想,比如对是否求模的判断,但实际中,一般是利用CNOT 门的组合来实现的。对于WHILE 而言,目前还没有找到一个合适的定义,因为量子信息不确定,那么很有可能会在WHILE 中产生无法停机的分支。以经典控制的QWhile 作为例子,如果控制变量c 是一个量子比特,那么每次都会有一个概率使得这个循环继续下去。因此,为了执行这个序列,就需要无限长的操作序列,这导致从物理上无法定义这种操作。

第三章 量子计算机硬件基础

3.1 量子芯片

略(文字性内容)

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值