[关闭]
@RunZhi 2017-09-12T04:50:12.000000Z 字数 5508 阅读 1318

量子计算1:量子比特

量子计算


本文作为文艺青年斌头老师的教师节礼物,记于2017/9/10

0. 前言

本文主要给出量子比特的相关定义,不会对其进行直观解释。本文也会提出部分其他的量子计算知识,比如测量、量子电路等,但这些描述主要为了帮助描述量子比特,所以缺乏一定的严谨性。更多内容可继续参考“量子计算”系列文章。

初入量子计算,最重要的是什么?对概念的熟悉胜于直观的理解。后面有FAQ,有一定的参考价值。

1. 表达

经典计算机中,运算的最小单位是比特。我们称其为经典比特。而在量子计算机中,运算的最小单位也有对应物:量子比特。我们在研究经典计算机的理论的时候,常常把比特作为一种抽象的数学对象,并不考虑实现。当然,学过数字逻辑电路的人一般会了解经典比特如何实现。而在研究量子计算的时候,我们也会把量子比特(有时也称为量子态)看做是一种抽象的数学对象,在研究时暂不考虑实现。当然在实践中,会有其物理对应物进行实现。

经典比特的表达很简单,一个单经典比特只有两种状态:。而量子比特相对特殊,其有一种通用的表达:Dirac notation:


一个单量子比特由如下定义:

其中:被称为computational basis state。一个单量子比特是这两个量子比特的一个线性组合,在量子计算中这种线性组合常称为叠加态

更细化一点,我们常用线性代数来描述量子计算。我们常常把一个单量子比特看做是在(二维复空间)的一个向量.其中,是该空间的两个单位正交基.因此单量子比特就是二维复空间的一个单位向量。一般情况下,我们会令


那么

上述的常常可以对应于经典比特的,然而由上面的定义可以看出,一个量子比特可以有无穷种状态。

2. 多量子比特

经典计算机下,多比特就是一个0,1比特串。比如说,0000就是一个四比特的经典比特。而量子计算下,多量子比特和经典情况的表达有所类似也有所不同。比如就是一个四比特的量子比特。乍看之下似乎就是比经典比特多了一个符号,然而其隐藏的数学意义大有不同。请参考 多量子比特与tensor product(未完成)。

一个二位的量子比特表达为:

在二位量子比特的情况下,computational basis state有四个(以后简称为基本态)。他们要求是标准正交基,张成的空间对应着。二位量子比特就是这四个基本态的叠加态。当然,还要求。在记号上,常常可以把写成

n比特量子态下也有类似定义,它会个基本态,从(n个0)到(n个1),n比特的量子比特就是这个基本态的线性组合(叠加态)。一般我们会把基本态所带的线性组合系数(如式(2)中,前的)称为量级(magnitude)它会影响测量的结果(后面会简述何为测量)。

一个自然的问题是,量子计算比经典计算好在哪里?从多量子比特的表达上可以初窥一点量子计算的强大:一个n比特的量子态,能够"包含"个经典比特的信息(把对应为经典比特串"0...0")。比如,简单考虑的情况:


一个单量子比特,包含了两种信息0,1的"叠加"。然而,如何从这样的“叠加”中提取相应的信息呢?这就需要对量子比特进行测量

3. 测量

(本部分的描述缺乏一定的严谨性,更多详细内容请参考 测量(未完成)。)

要从一个比特中获得信息。我们需要对其进行测量。而在经典比特中,当我们写一下一个单比特,它的状态就已经定下来:非0即1,这相当于不用测量。(当然在实现中还是要测量:根据电平高低决定0或1)而量子比特有无穷种状态(它是基本态的线性叠加,而其线性叠加系数取值(量级)有无穷多种),那么对一个量子比特进行测量会得到什么?

回顾到单量子比特:

我们说对该量子比特进行测量,并不是测出。而实际上,测量并不能让我们了解该量子比特处于什么状态(因为对的未知)。

很不严谨地讲,对该量子比特进行测量,只会得到两种结果:"0","1"。其中,测得0的概率是,测得1的概率是。(注意到)也就是说,量级对应着其测量结果的概率。

根据"基"的测量

(以下的描述不算很不严谨,算挺不严谨)

一个很自然的问题是,为什么对测量会得到结果0或1?实际上,此处"0"和"1"只是标明两种状态,两个不同的结果。实际上,当我们进行测量时,还需要指明测量对应的基,上面的描述是基于基的测量。比如说,我令:

注意,这里的+,-都是记号。容易验证是一组标准正交基。我们可以把(1)式重写成:

如果我们根据基进行测量,那么我们会以的概率得到结果"+",以得到结果"-"。

注意,在dirac notation里面的0、1、+、-都是记号,表明不同的状态。

例子:薛定谔的猫

薛定谔的猫的故事请自行搜索。看完该故事,我们可以定义一个单比特量子态出来:

当我们打开盒子,这就相当于对量子态进行测量,选取的"基"是,测量结果以一半的概率是“生”,一半的概率是“死”。

注意,一只猫当然不可能处于既死又活的状态。薛定谔提出该“故事”有其特殊的科学历史背景,详情请自行搜索。

量子崩塌

有一定计算机科学基础和了解大数定律的同学,可能会想:如果我不断地对测量,比如说,测量10000次,如果得到结果为0的次数为5000,得到结果为1的次数为5000,那么我不就可以认为了吗?也就是说我可以测出一个量子比特究竟处于何种状态。

但实际上,这样是不行的,当我们对一个量子态进行测量,我们得到了相应的输出结果,与此同时我们也破坏了该量子态,使其崩塌的值会被改变。一个量子态测量后会受到什么样的崩塌取决于进行了什么样的测量,具体参考 测量(未完成)。但总之,我们是无法通过测量知道量子究竟处于何种状态。

4. Bloch sphere

表达一个单量子比特的时候,往往可以使用Bloch sphere。在操作单量子比特的时候,使用Bloch sphere也能得到直观上的理解。

,我们可以重写为:


()

由(2)式,引出Bloch sphere:
Bloch sphere

并没有在图中体现出来,这是因为不具有观测效应,即它的值并不影响结果"0"和结果"1"的测量概率。
角意味着量子态在之间的偏差(实际上应该说为两种不同状态之间的偏差),他决定了两种结果的出现概率。而由于考虑到量级会是虚数,因此要考虑上

可以看出,一个单比特量子态,就对应着这个球面上的某一个点,显然这个球面上有无数个点,即单比特量子态有无穷多个。当我对这个量子态进行测量后,这个量子态就会从原本的地方“跳跃”到球面上的另外一个地方(被改变)。

一个很自然的问题是:为什么(2)式里要取?这和这个图有关,当的时候,量子态应该是在这个球的“赤道”上,它处于的"中间态",两个基本态对应的量级应该是,而如果不取而是取,那么此时,

夹角的值并不影响测量得到0或1的概率。如果把x-z平面理解为实数平面的话,那么加上y轴就为整个空间引入了复数。而这个在某种意义上,可以度量量子态和x-z平面的夹角。当不等于0的时候说明量级是复数。比如说考虑如下量子态:


,将上式可重写为:

此时。这个量子态所在的位置应为y轴与球面相交所在位置。

有一点要注意的是,不能因为这个图而得到结论:。在考虑这个图的时候,我们应放下之前所说的"是一组的标准正交基",而是要把视角切换为分别是量子态的“两极”,而分别衡量量子态与两极在三维空间下的夹角关系。

5. 量子电路

(未完成)

后语 & FAQ

讲了这么多,迷糊了这么久,究竟什么值得记住?

  1. 量子比特的表达:
    • dirac notation
    • 单量子比特有无穷多种状态
    • n比特量子态是个computational basis state的线性叠加,这种线性叠加称为叠加态
  2. 测量:
    • 测量结果具有概率性,概率取决于量级,量级不可测。
    • 测量后会崩塌
  3. Bloch sphere:
    • 一种“直观”的单量子比特表达,球面上的点和单量子比特的状态一一对应
    • 的夹角是
    • 注意中的

FAQ(还在完成中...)

  1. 一头雾水怎么办?
    参考上面所说的,记住要记的。提具体的问题。
  2. 对“直观”不公平之处在于,直观可帮助概念被理解被熟悉,而不是替代概念。
    或者应该说:直观一时找不到没关系,首重概念熟悉度。
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注