人人可懂的量子计算(txt+pdf+epub+mobi电子书下载)


发布时间:2020-09-13 05:38:26

点击下载

作者:(美)克里斯·伯恩哈特(Chris Bernhardt)

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

人人可懂的量子计算

人人可懂的量子计算试读:

前言

本书的目的是介绍量子计算,使得任何一个熟悉高中数学知识和愿意投入一点时间的人都能理解。我们将会学习量子比特、量子纠缠、量子隐形传态和量子算法,以及其他量子相关的主题。我们的目标不是对这些概念给出一些不明确的想法,而是使它们清晰明了。

量子计算经常出现在新闻中:中国通过隐形传态将一个量子比特从地球传送到一颗卫星上;Shor算法使我们目前的加密方法面临风险;量子密钥分发将使加密再次变得安全;Grover算法将加速数据检索。但这一切究竟意味着什么?这一切是如何运作的?所有这些都将在本书中得到解释。

不使用数学能做到这一点吗?如果我们想真正了解发生了什么,那就需要使用数学。量子力学的基本思想往往与直觉相悖。试图用文字来描述这些是行不通的,因为我们在日常生活中对它们没有经验。更糟糕的是,文字描述常常给人留下这样的印象:我们貌似理解了一些东西,而实际上我们还没有理解。好消息是,我们并不需要引入太多的数学知识。作为一名数学家,我的职责是尽可能地简化数学(坚持绝对的本质)并给出基本的例子来说明它的用法与含义。也就是说,这本书可能包含你以前从未见过的数学概念,而且和所有的数学知识一样,新的概念一开始可能看起来很奇怪。重要的是不要忽略这些例子,而且要仔细阅读计算的每一步。

量子计算是量子物理与计算机科学的完美融合,将20世纪物理学中一些最令人惊叹的观点融入一种全新的计算思维方式中。量子计算的基本单位是量子比特。我们将看到什么是量子比特以及测量量子比特时会发生什么。一个经典比特要么是0,要么是1。如果是0,我们测量它,得到0;如果是1,我们测量它,得到1。在这两种情况下,比特都保持不变。量子比特的情况则完全不同。一个量子比特可能是无限多个状态中的某一个——0和1的叠加态,但是当我们测量它时,和经典情况一样,我们只得到两个值中的一个——0或1。测量会改变量子比特,一个简单的数学模型可以精确地描述这一切。

量子比特还可能纠缠。当我们对其中一个进行测量时,会影响另一个的状态。这是我们在日常生活中没有经历过的,但我们的数学模型完美地描述了这种现象。

这三个概念——叠加、测量和纠缠——是量子力学的核心。一旦我们理解了这些概念,就能知道如何在计算中使用它们。这正体现了人类的聪明才智。

数学家通常认为:证明是美丽的,而且经常包含意想不到的见解。对于我们将要讨论的许多主题,我有完全相同的看法。贝尔定理、量子隐形传态和超密编码,这些都是珍宝。纠错线路和Grover算法更是相当惊人的。

读完本书,你应该理解了量子计算的基本概念,并会看到一些巧妙而漂亮的结构。同时,你还将认识到量子计算和经典计算并不是两个截然不同的学科。量子计算是计算的一种更基本的形式——任何经典计算机可以计算的都可以在量子计算机上计算。计算的基本单位是量子比特,而不是比特。从本质上讲,计算就是量子计算。

最后应该强调的是,本书是关于量子计算理论的介绍。它是关于软件的,而不是硬件的。虽然我们在某些地方简要地提到了硬件,偶尔也会讨论如何在物理上纠缠量子比特,但这些只是题外话。这本书讲的不是如何构建量子计算机,而是如何使用量子计算机。

以下是对这本书内容的简要描述。

第1章。经典计算的基本单位是比特。比特可以表示为处于两种可能状态之一的任何东西,标准例子是一个可以打开或关闭的电子开关。量子计算的基本单位是量子比特。这可以用电子的自旋或光子的偏振来表示,但自旋和偏振的性质对我们来说并不像开关打开或关闭那样熟悉。

我们先来看看自旋的基本性质。从奥托·斯特恩(Otto Stern)和瓦尔特·格拉赫(Walther Gerlach)的经典实验开始,他们在实验中研究了银原子的磁性。我们可以看到在不同方向上测量自旋会发生什么。测量会影响量子比特的状态。我们还会解释与测量相关的随机性。

该章的结论是,类似于自旋的实验可以用偏振滤光片和自然光来完成。

第2章。量子计算基于线性代数。幸运的是,我们只需要一小部分概念。该章介绍我们需要的线性代数知识,并说明在后面的章节中如何使用这些知识。

我们将介绍向量、矩阵、如何计算向量的长度以及如何判断两个向量是否垂直。首先介绍向量的初等运算,然后介绍矩阵是如何同时进行这些运算的。

起初这些知识的作用并不明显,但确实有用。线性代数是量子计算的基础。由于本书其余部分使用了这里介绍的数学知识,因此需要仔细阅读。

第3章。该章介绍前两章是如何联系在一起的。线性代数给出了自旋或偏振的数学模型,这使我们能够定义量子比特,并准确地描述测量时会发生什么。

接下来书中举了几个在不同方向上测量量子比特的例子。最后介绍量子密码学,并描述BB84协议。

第4章。该章描述两个量子比特纠缠的含义。使用文字很难描述纠缠,与之相对,使用数学描述则很简单。张量积是一种新的数学思想,这是将单量子比特组合成多量子比特最简单的方法。

虽然纠缠的数学描述很直观,但我们在日常生活中并不会接触到。当测量一对纠缠量子比特中的某一个时,会影响另一个。阿尔伯特·爱因斯坦(Albert Einstenin)不喜欢这种现象,并称之为“幽灵般的超距作用”。我们会看几个例子。

该章最后指出,我们不能使用纠缠来实现超光速通信。

第5章。我们看看爱因斯坦对纠缠的担忧,以及隐变量理论能否保持定域实在性。我们研究贝尔不等式的数学原理——这是一个显著的结果,它提供了一种实验方法来确定爱因斯坦的论点是否正确。虽然贝尔当时认为爱因斯坦的观点可能会被证明是正确的,但是爱因斯坦的观点是错误的。

阿图尔·埃克特(Artur Ekert)意识到,测试贝尔不等式的装置还可以用于生成密码学中使用的安全密钥,并同时测试是否存在窃听者。在该章的最后,我们描述了这种加密协议。

第6章。该章从计算的标准主题开始:比特、门和逻辑。然后简要地介绍可逆计算和爱德华·弗雷德金(Edward Fredkin)的想法。我们证明了Fredkin门和Toffoli门都是通用的——你可以仅使用Fredkin门(或Toffoli门)来构建一台完整的计算机。最后介绍Fredkin的台球计算机。尽管这并不是书中余下内容真正需要的,但它十足的独创性值得介绍。

这台计算机是由相互碰撞的球和很多墙组成的。它使人联想起粒子之间的相互作用。这激发了理查德·费曼(Richard Feynman)对量子计算的兴趣,费曼写了该领域最早的一些论文。

第7章。该章开始学习使用量子电路进行量子计算,并定义了量子门。我们将看到量子门如何作用于量子比特,并意识到我们一直在使用这种思想。我们只需要改变观点:不再认为正交矩阵作用于测量装置,而是作用于量子比特。我们还证明了一些有关超密编码、量子隐形传态、克隆和纠错的惊人结果。

第8章。这可能是最具挑战性的一章。我们会看到一些量子算法,并看到它们与经典算法相比计算的速度有多快。为了讨论算法的速度,我们需要引入复杂性理论中的思想。我们定义了查询复杂性后,就开始学习三个量子算法,并证明它们的查询复杂性比经典算法的更低。

量子算法揭示了正在解决的问题的基本结构,它不仅仅是量子并行的思想——把输入放进所有可能状态的叠加中。该章介绍了最后一部分数学知识——矩阵的Kronecker积。实际上,这部分知识的困难源于我们正在以一种全新的方式进行计算,而我们并没有使用这些新思想来解决问题的经验。

第9章。最后一章着眼于量子计算将对生活带来的影响。我们首先简要描述两个重要的算法,一个是彼得·肖(Peter Shor)发明的,另一个是洛夫·格鲁弗(Lov Grover)发明的。

Shor算法提供了一种将大数分解为质因数的方法。这似乎并不重要,但我们的互联网安全依赖于分解质因数是个难以解决的问题。能够分解大质数的乘积威胁到我们当前计算机之间的安全交易。可能还要等一段时间,我们才能拥有足够强大的量子计算机来分解目前正在使用的这些大数,但这一威胁是真实存在的,而且它已经迫使我们思考如何重新设计计算机之间的安全对话方式。

Grover算法适用于特殊类型的数据检索。我们展示了它是如何在一个小样例中工作的,并说明了它是如何在一般情况下工作的。Grover算法和Shor算法都很重要,不仅因为它们可以解决问题,还因为它们引入了新思想。这些基本思想正在被纳入新一代算法中。

学习算法之后,我们转个话题,简要地看一下如何使用量子计算来模拟量子过程。究其本质,化学就是量子力学。经典计算化学的工作原理是利用量子力学方程,并用经典计算机进行模拟。这些模拟是近似的,忽略了细节。这种方法在很多情况下都很有效,但在某些情况下就行不通了。在这种情况下,你需要这些细节,而量子计算机应该能够提供。

该章还简要地介绍了实际机器的构建。这是一个快速发展的领域,第一批机器正在出售,“云”上甚至有一台人人都可以免费使用的机器。看来我们很快就会进入量子霸权时代。(我们会解释这意味着什么。)

本书的结论是,量子计算不是一种新型的计算,而是对计算本质的发现。致谢

我非常感谢许多人对本书出版提供的帮助。Mart Coleman、Steve LeMay、Dan Ryan、Chris Staecker和三位匿名审稿人非常仔细地阅读了各版原稿,他们的建议和修正使这本书得到了极大的改进。我还要感谢Marie Lee和她在MIT出版社的团队,感谢他们所有人的支持和努力,将一份粗略的提案变成了这本书。第1章 自旋

所有的计算都包括三个过程,首先输入数据,然后根据一定的规则对输入进行操作,最后输出结果。对于经典计算来说,比特是数据的基本单位。对于量子计算来说,这个基本单位是量子比特(quantum bit)——通常缩写为qubit。

一个经典比特对应于两个选项中的一个。任何处于两种状态之一的事物都可以表示成一个比特。稍后我们将看到各种各样的例子,其中包括逻辑语句的真假,开关打开或关闭,甚至台球的存在或不存在。

就像一个比特一样,一个量子比特包括这两种状态,但与比特不同的是,它也可以是这两种状态的组合。这是什么意思?两种状态的组合到底是什么?能代表量子比特的物理对象是什么?开关在量子计算中的类似物是什么?

量子比特可以用电子的自旋或光子的偏振来表示。尽管这是真的,但似乎没有特别的帮助,因为我们大多数人都不了解电子的自旋和光子的偏振,更不用说体验过。让我们从自旋和偏振的基本介绍开始。为此,我们引入奥托·斯特恩(Otto Stern)和瓦尔特·格拉赫(Walther Gerlach)在银原子自旋上所做的基础实验。

1922年,尼尔斯·玻尔(Niels Bohr)的行星模型描述了当时人们对原子的理解。在这个模型中,原子是由一个原子核和环绕它的电子组成的,其中原子核带正电荷,电子带负电荷。电子轨道是圆形的,且被限制在一定的半径内。最内层轨道最多可以包含2个电子。一旦这层轨道被填满,电子就会开始填下一层轨道,第二层轨道最多可以容纳8个电子。银原子有47个电子,其中2个在最内层轨道上,下一层轨道上有8个,然后在第三层和第四层都有18个电子。这使得在最外层轨道上留下了1个孤电子。

现在,在圆形轨道上运动的电子产生磁场。内层轨道上的电子是成对的,其中一个电子朝着与另一个电子相反的方向旋转,从而使它们的磁场相互抵消。然而,最外层轨道上的单个电子产生的磁场不会被其他电子抵消。这意味着,原子作为一个整体,可以看作一个既有南极又有北极的小磁体。

Stern和Gerlach设计了一个实验来测试这些磁体的南北轴取向是任意的还是特定的。他们发射一束银原子穿过一对磁体,如图1.1所示。磁体的V形设计使得南磁体的作用比北磁体更强。如果银原子是一个顶部为北、底部为南的磁体,它就会被装置的两个磁体所吸引,由于南磁体作用更强,所以粒子向上偏转。同样,如果银原子是一个顶部为南、底部为北的磁体,它会被装置的两个磁体所排斥,由于南磁体作用更强,所以粒子向下偏转。

通过该装置后,原子被收集在屏幕上。图1.1 Stern-Gerlach装置

从经典的观点来看,原子的磁极可以朝任何方向。如果它们是水平的,就不会发生偏转,而且一般来说,偏转的大小与原子的磁轴和水平轴的夹角相对应,当原子磁轴与水平轴垂直时,会发生最大偏转。

如果经典观点是正确的,当我们发射大量的银原子通过装置时,应该在屏幕上看到有一条从顶部到底部的连续的线。但Stern和Gerlach并没有发现这条线。当他们看屏幕时,发现只有两个点:一个在最上面,另一个在最下面。所有的原子都表现得像垂直排列的小条形磁体,并且都没有其他的方向。为什么会这样呢?

在开始更详细地分析发生了什么之前,我们把注意力从原子转移到电子上。不仅原子本身像小磁体一样,其组成部分也如此。在讨论量子计算机时,我们经常会讨论电子及其自旋。以银原子为例,如果[1]你在垂直方向上测量自旋,会发现电子要么向北偏转,要么向南偏转。同样,就像银原子一样,你会发现电子是小磁体,它们的南北极在垂直方向上完全对齐,并且都没有其他的方向。

实际上,你不能用Stern-Gerlach装置来测量自由电子的自旋,正如我们所展示的那样,因为电子带负电荷,磁场使移动的带电粒子偏转。也就是说,下面的图展示了在不同方向上测量自旋的结果。假设你是粒子源,磁体放置在你和这本书之间,图中的点表示电子的偏转方向。图1.2a显示了电子的偏转;图1.2b把电子描绘成磁体,并标出了南北两极。我们把这种情况描述为电子的自旋N在垂直方向上。图1.3显示了另一种可能性,电子的自旋S在垂直方向上。图1.2 电子的自旋N在垂直方向上图1.3 电子的自旋S在垂直方向上

为了理解偏转,由于南磁体的作用比北磁体更强,所以要计算偏转的方向,你只需要考虑南磁体的作用。如果电子的北极靠近南磁体,那么它就会被吸引,并向南磁体方向偏转。如果电子的南极靠近南磁体,那么它就会被排斥,并向北磁体方向偏转。

当然,垂直方向没有什么特别的。例如,我们可以把磁体旋转90°。电子仍然会朝北磁体或南磁体方向偏转。在这种情况下,电子表现为南北极在水平方向上对齐的磁体,如图1.4和图1.5所示。图1.4 电子的自旋N在90°方向上图1.5 电子的自旋S在90°方向上

在接下来的章节中,我们将要以不同的角度旋转磁体。我们会沿顺时针方向测量角度,0°表示垂直向上方向,θ表示与垂直向上方向的夹角。图1.6描述了一个自旋N在θ方向上的电子。图1.6 电子的自旋N在θ方向上

有时自旋被描述为向上、向下、向左或向右。我们描述电子的自旋N在0°方向上,这似乎有些烦琐,但是明确的。特别是当我们将装置旋转180°时,可以避免使用向上、向下等术语的一些缺陷。例如,图1.7中所示的两种情况都表示电子的自旋N在0°方向上,或者自旋S在180°方向上。图1.7 电子的自旋N在0°方向上

在我们继续学习电子自旋之前,先暂停一下,看看我们将会在多个地方用到的一个类比。[1] 我们将继续使用自旋这个术语,因为它是标准术语。但我们只是在确定磁体磁极的轴。1.1 量子钟

想象一下,你有一个在标准位置上标记着小时的钟,上面也有一个指针。然而,你不能看钟,你只能向它问问题。你想知道指针指向哪个方向,所以你可能想问“指针指向哪个方向”这个简单的问题。但这是不允许的。你只允许问指针是否指向钟面上的特定数字。例如,你可以问,指针是否指向12,或者你可以问它是否指向4。如果这是一个普通的时钟,你必须非常幸运才能得到一个肯定的答案。大多数时候,指针会指向一个完全不同的方向。但是量子钟不像普通的时钟。它要么回答“是”,要么告诉你指针指向的方向和你问的方向正好相反。例如,我们问指针是否指向12,它会告诉我们它是指向12还是指向6。如果我们问指针是否指向4,它会告诉我们它指向4,或者指向10。这是一种非常奇怪的状态,但它与电子自旋完全相似。

正如我们所说,电子自旋将会激发定义量子比特的想法。如果要做计算,我们需要理解控制自旋测量的规则。我们首先考虑当测量不止一次时会发生什么。1.2 同一方向的测量

测量是可重复的。如果我们重复完全相同的测量,就会得到完全相同的结果。例如,为了测量在垂直方向上的电子自旋,我们在第一个装置后面放置另外两个装置,重复完全相同的实验。其中一个放置在适当的位置以捕获在第一个装置向上偏转的电子,另一个用来捕获向下偏转的电子。通过第一个装置向上偏转的电子被第二个装置向上偏转,通过第一个装置向下偏转的电子被第二个装置向下偏转。这意味着,如果最初测到电子的自旋N在0°方向上,那么当我们重复实验时,该电子的自旋N仍在0°方向上。同样,如果最初测到电子的自旋S在0°方向上,那么当我们重复实验时,该电子的自旋S仍在0°方向上。与我们的钟类比,如果反复问指针是否指向12,我们会得到同样的答案:要么总是指向12,要么总是指向6。

当然,在垂直方向上测量没有什么特别的。如果我们θ方向上测量,然后在该方向重复测量,我们每次都将获得相同的结果。我们最终会得到一串完全由N组成的字符串或一串完全由S组成的字符串。

接下来要考虑的是如果不重复同样的测量会发生什么。例如,如果先垂直测量,然后水平测量,会发生什么?1.3 不同方向的测量

我们首先在垂直方向上测量电子的自旋,然后在水平方向上测量。我们发送电子流通过第一个探测器——测量在垂直方向上的自旋。和之前一样,我们在第一个探测器后面的适当位置还放置了两个探测器,捕获来自第一个探测器的电子。不同之处在于,这两个探测器都旋转了90°,且在水平方向上测量自旋。

首先,我们来看看通过第一个探测器向上偏转的电子——它们的自旋N在0°方向上。当它们通过第二个探测器时,我们发现:其中一半电子的自旋N在90°方向上,另一半的自旋S在90°方向上。南北自旋的序列在90°方向上是完全随机的。若一个电子的自旋N在0°方向上,当我们在90°方向上再次测量它时,无法判断它是自旋S还是自旋N。同样的结果也适用于第一个探测器显示的自旋S在垂直方向上的电子——恰好一半电子的自旋N在水平方向上,另一半的自旋S在水平方向上。同样,N和S的序列是完全随机的。

量子钟也有类似的问题,询问指针是否指向12,然后询问它是否指向3。如果我们有大量的钟,且都问这两个问题,第二个问题的答案将是随机的:一半的钟会说指针指向3,另一半会说指向9。第一个问题的答案与第二个问题的答案无关。

最后,我们来看看当进行三次测量时会发生什么。我们先垂直测量,然后水平测量,再垂直测量。考虑来自第一个探测器的电子,它们的自旋N在0°方向上。我们知道当在90°方向上测量自旋时,它们中的一半是自旋N,另一半是自旋S。我们将把注意力放在前两次测量都是自旋N的电子上。对于第三次测量,测量垂直方向上的自旋。我们发现:恰好有一半电子的自旋N在0°方向上,另一半的自旋S在0°方向上。再一次,N和S的序列是完全随机的。当我们再次在垂直方向上测量时,电子最初的自旋N与它是否仍是自旋N无关。

我们能从这些结果中得出三个重要的结论。

第一,如果我们一直重复同样的问题,会得到完全相同的答案。这意味着,有时候我们会得到明确的答案,并不是每个问题都会得到随机答案。

第二,随机性似乎确实存在。如果我们问一系列问题,最终的结果可能是随机的。

第三,测量会影响结果。我们看到,如果我们问三次同样的问题,会得到三次完全相同的答案。但是,如果第一个和第三个问题是相同的,而第二个问题是不同的,那么第一个和第三个问题的答案不一定相同。例如,如果连续问三次指针是否指向12,我们每次都得到相同的答案;但如果我们首先问它是否指向12,然后再问它是否指向3,最后问它是否指向12,第一个和第三个问题的答案不一定是相同的。这两种情况之间的唯一区别是第二个问题,所以这个问题必定会影响接下来的问题的结果。我们将从测量开始,对这些观测做更多的介绍。1.4 测量

在经典力学中,我们考虑将球抛向空中的路径,而且路径可以用微积分来计算。但是为了进行计算,我们需要知道一些特定的量,比如球的质量和初速度。如何测量这些量并不是理论的一部分,我们只假设这些是已知的。隐含的假设是,测量的行为对问题并不重要——进行测量不会影响正在建模的系统。对于一个球被抛向空中的例子,这是合理的。例如,我们可以用雷达枪测量它的初速度。这涉及从球上反弹光子,尽管反弹光子会对球产生影响,但这可以忽略不计。这是经典力学的基本原理:测量会影响被研究的对象,但可以设计实验,使测量的效果可忽略不计。

在量子力学中,我们经常考虑像原子或电子这样的微小粒子。在这里,反弹光子对它们的影响不再是可以忽略的了。为了执行一些测量,我们必须与系统交互。这些相互作用会扰乱系统,所以我们不能再忽视它们。测量成为理论的基本组成部分似乎并不令人惊讶,但令人惊讶的是如何做到这一点。例如,考虑这样一种情况:我们首先在垂直方向上测量电子的自旋,然后在水平方向上测量。我们已经看到,经过第一个探测器后,恰好有一半电子的自旋N在0°方向上,当用第二个探测器测量后,电子的自旋N在90°方向上。似乎磁体的强度对结果有一定的影响。也许它们的强度相当大,使电子的磁轴扭曲,与测量装置的磁场对齐。如果用较弱的磁体,扭曲会减小,我们可能会得到不同的结果。然而,我们并不是用这样的方式将测量纳入理论的。我们将看到,模型没有考虑测量的“强度”。相反,无论测量是如何进行的,真正对系统产生影响的是测量的实际过程。稍后我们将描述量子力学中测量自旋的数学模型。每次进行测量时,我们都会看到系统以某些规定的方式发生变化。这些规定的方式取决于测量的类型,而不是测量的强度。

将测量纳入理论是经典力学和量子力学的区别之一,而另一个区别是随机性。1.5 随机性

量子力学涉及随机性。例如,如果我们首先在垂直方向测量电子的自旋,然后在水平方向测量,并记录第二个测量装置的测量结果,我们会得到由N或S组成的一串字符串。这个自旋序列是完全随机的,例如,它可能看起来像NSSNNNSS…。

抛一枚均匀硬币是一个经典实验,它可以产生两个符号的随机序列,且每个符号出现的概率为二分之一。如果我们抛一个均匀的硬币,可能会得到序列HTTHHHTT…。尽管这两个例子产生了相似的结果,但在这两个理论中,对随机性的解释有很大的不同。

抛硬币是经典力学描述的事情,可以用微积分来建模。要计算硬币是正面朝上还是反面朝上,首先需要仔细测量初始条件:硬币的重量、离地高度、拇指对硬币的撞击力、拇指撞击硬币的准确位置、硬币的位置等。考虑到所有这些值,这个理论会告诉我们硬币是正面还是反面朝上。这没有包含真随机性。抛硬币似乎是随机的,因为每次抛硬币的初始条件都略有不同。这些微小的变化可以将结果由正面变为反面,反之亦然。在经典力学中没有真随机性,只有对初始条件的敏感依赖——输入的微小变化可以被放大,并产生完全不同的结果。量子力学中关于随机性的基本观点是不同的:随机性就是真随机性。

正如我们看到的,从两个方向的自旋测量中得到的序列NSSNNNSS…,其被认为是真随机的。抛硬币得到的序列HTTHHHTT…,这看起来是随机的,但是物理的经典定律是确定的,如果我们能以无限的精度进行测量,这种明显的随机性就会消失。

在这个阶段,人们自然会对此提出质疑。爱因斯坦当然不喜欢这样的解释,他有句名言:上帝不会掷骰子。难道就没有更深层次的理论吗?如果我们知道更多关于电子初始构型的信息,难道最终的结果不是随机的而是完全确定的?难道不存在隐变量吗?一旦我们知道了这些变量的值,明显的随机性就会消失吗?接下来,我们会介绍真随机性中用到的数学理论,之后再考虑这些问题。我们将描述一个巧妙的实验来区分隐变量和真随机性假设。这个实验已经做过好几次了。结果表明:随机性是真随机的,没有简单的隐变量理论可以消除它。

我们在这一章的开头就提到,量子比特可以用电子的自旋或光子的偏振来表示。我们将展示自旋的模型和偏振是如何联系在一起的。1.6 光子与偏振

人们常说,我们没有意识到奇怪的量子现象,是因为它们只发生在非常小的尺度上,而且这些现象在我们日常生活中并不明显。这是有一定道理的,但是有一类完全类似于测量电子自旋的实验,只需要很少的仪器就可以完成。它与偏振光有关。

要做这类实验,你需要三个线性偏振膜方块。首先取两个方块,把一个放在另一个的前面。保持一个方块固定,另一个可做90°旋转。当这对滤光片沿同一个方向排列时,你会发现光线能通过滤光片,但当其中一个滤光片旋转90°时,光线会被完全阻挡。这并不特别令人兴奋。现在旋转两个滤光片,使光线无法通过。然后取第三个滤光片,旋转45°,并在另外两个滤光片之间滑动。令人惊讶的是,没有光通过原来两个滤光片重叠的区域,但是在三个滤光片重叠的区域有光通过。

几年前我听说过这个用三个滤光片做的实验。我问一位物理学家朋友是否有偏振片,他邀请我去他的实验室,那里有一大卷偏振片。他切下一块给了我,我用剪刀把它剪成三片大约一平方英寸的方块,然后做了这个实验,结果成功了!这个实验如此简单,却又如此令人惊讶。从那以后,我一直把这三个方块放在钱包里。

在测量偏振时,我们发现光子在两个垂直的方向上是偏振的,这两个方向都垂直于光子的运动方向。偏振方块通过在其中一个方向上偏振的光子,而吸收在另一个方向上偏振的光子。偏振方块对应于Stern-Gerlach装置。发射光通过方块可以被认为是一种测量。与自旋一样,有两种可能的结果:要么偏振方向与方块的方向直接对齐,在这种情况下,光子通过;要么偏振方向与方块的方向垂直,在这种情况下,光子被吸收。

我们首先假设方块在垂直方向上,这样它就可以通过垂直偏振的光子,且吸收水平偏振的光子,然后考虑一些与我们描述的电子自旋相对应的实验。

首先,假设我们有两个方向相同的方块,那么它们都通过垂直偏振的光子。如果我们单独看这些方块,它们看起来是灰色的,这是意料之中的,它们都吸收水平偏振的光子。如果我们把其中一个方块滑动到另一个方块上,则变化很小。两个方块重叠时通过的光子数与不重叠时通过的光子数大约是相同的,如图1.8所示。

现在我们将其中一个方块旋转90°。假设我们看到的不是在光泽表面上的反射光,而是可能来自电脑屏幕的光。但在正常的光线条件下,水平偏振的光子的比例等于垂直偏振的光子的比例,且两个方块看起来都是灰色的。我们重叠这些方块并重复实验。

这一次没有光子通过重叠区域,如图1.9所示。图1.8 两个方向相同的线性偏振方块图1.9 两个方向不同的线性偏振方块

第三个实验是把第三个偏振片旋转45°。在正常的光照条件下,当我们旋转方块时,什么都不会发生,它保持同样的灰色。现在,我们把这个方块滑动到另外两个方块之间,其中一个在垂直方向上,另一个在水平方向上。正如我们之前提到的,这个结果既令人惊讶又不直观:一些光穿过三个方块的重叠区域(如图1.10所示)。这些偏振方块有时被称为滤光片,但很明显,它们的作用方式与传统滤光片的作用方式不同,穿过三个滤光片的光比穿过两个滤光片的光多!

我们将对上述情形做一个简述。稍后我们将看到描述自旋和偏振的数学模型。图1.10 三个方向不同的线性偏振方块

回顾一下量子钟,我们可以问指针是否指向12,或者问指针是否指向6。我们从这两个问题中得到的信息是指针所指的数字是12还是6,但是“是/否”的答案是相反的。对于偏振方块,通过旋转90°而不是180°来提出类似的问题。我们得到的信息是一样的。不同之处在于,如果答案是肯定的,光子就会通过滤光片,我们可以对它进行更多的测量。但如果答案是否定的,滤光片就会吸收光子,所以我们不能问更多的问题。

前两个实验只涉及两个偏振片,且告诉我们完全相同的事情:重复测量时,会得到相同的结果。在这两个实验中,我们在垂直和水平方向上测量了两次偏振。在这些实验中,通过第一个滤光片的光子具有垂直方向。第一个实验中,第二个滤光片也有垂直方向,我们问了两次同样的问题,“光子是垂直偏振的吗?”我们得到了两次“是”的答案。在第二个实验中,第二个问题变成了“光子是水平偏振的吗?”得到的答案是“否”。两个实验都给了我们相同的信息,但是第二个实验中第二个问题的否定答案意味着光子被吸收了。因此,与第一个实验不同,它不能作进一步的提问。

在第三个实验中,滤光片旋转了45°,现在在45°和135°的方向上测量偏振。我们知道穿过第一个滤光片的光子是垂直偏振的。当用第二个滤光片测量时,发现一半的光子是45°偏振的,另一半是135°偏振的。45°偏振的光子穿过滤光片,其余的光子被吸收。第三个滤光片再次在垂直和水平方向上测量偏振,进入的光子是45°偏振的。当在垂直和水平方向上测量时,一半的光子是垂直偏振的,另一半是水平偏振的。滤光片吸收垂直偏振的光子,并让那些水平偏振的光子穿过。1.7 小结

我们在这一章的开头说过,经典比特可以用日常物品来表示,比如开关打开或关闭,但量子比特通常用电子的自旋或光子的偏振来表示。对我们来说,自旋和偏振并不那么熟悉,它们的性质与经典的自旋和偏振截然不同。

要测量自旋,首先要选择一个方向,然后沿该方向测量。自旋是量子化的:当被测量时,它只给出两个可能的答案,而不是一个连续的范围。我们可以用经典比特给这些结果赋值。例如,如果我们得到N,可以把它看成0;如果得到S,把它看成1。这正是我们从量子计算中得到答案的方法。计算的最后一步是测量,结果将是两种情况之一,可以解释为0或1。虽然实际的计算涉及量子比特,但最终的答案将是用经典比特来表示的。

我们刚刚开始学习,所以能做的很有限。然而,我们可以生成二进制的随机字符串。生成N和S的随机字符串的实验可以改写为0和1的字符串。因此,首先在垂直方向上测量电子的自旋,然后在水平方向上测量,得到一个由0和1组成的随机串。这可能是我们能用量子比特做的最简单的事情,但令人惊讶的是,这是经典计算机做不到的。经典计算机是确定的,它们可以计算通过了各种随机性测试的字符串,但这些字符串是伪随机的,而不是真随机的——它们是由某个确定的函数计算出来的,如果你知道这个函数和初始种子输入,就可以计算出完全相同的字符串。没有经典算法可以生成真随机的字符串。因此,我们已经看到量子计算比经典计算有优势。

在开始描述其他量子计算之前,我们需要建立一个精确的数学模型来描述在不同的方向上测量自旋时发生了什么。我们将在下一章开始学习线性代数——与向量相关的代数。第2章 线性代数

量子力学基于线性代数,一般性理论使用无穷维向量空间。幸运的是,我们只需要有限维就可以描述自旋和偏振,这样一来事情就变得简单多了。事实上,我们只需要很少的工具,在本章的最后会列出一个表单。本章的剩余部分将会解释如何使用这些工具以及这些计算的含义。文中有很多例子,很有必要仔细地学习它们。这里介绍的数学知识对于后面的内容是必不可少的。和很多数学一样,第一次见到会觉得很复杂,练习之后它将几乎成为你的第二本能。实际使用的计算只涉及数字的加法、乘法,偶尔会涉及平方根和三角函数计算。

我们将会使用保罗·狄拉克(Paul Dirac)符号,保罗·狄拉克是量子力学的创始人之一,他的符号在量子力学和量子计算中被广泛使用。这种符号在这些学科以外并没有被广泛使用,你将会惊讶地看到它是多么优雅和有用。

不过,首先将简短地介绍一下我们将要使用的数字,那就是实数——我们非常熟悉的标准十进制数字。几乎所有其他关于量子计算的书都使用复数——涉及-1的平方根,所以首先来解释一下为什么我们不打算使用复数。2.1 复数与实数

实数可以直接使用,而复数更加复杂。为了讨论这些数字,我们将不得不讨论其模量并解释为什么必须使用共轭。复数对于我们将要做的事情并不是必需的,而且它只会增加另一种层面上的困难。你一定会问,那为什么其他书籍都使用复数呢?什么是复数能做而实数做不了的呢?让我来简单地回答一下这些问题。

回想之前我们从不同的角度测量一个电子的自旋,这些角度全在同一个平面上,而我们生活在一个三维的世界。我们将测量自旋和使用量子钟做对比,只能询问由二维平面旋转的指针所决定的方向。如果使用三维空间,我们的类比就不再是表盘,而是一个绕着中心旋转的指针所指向的球面。例如,如果我们询问指针是否指向纽约,答案要么是指向纽约,要么是指向纽约正对面的点。在三维空间中自旋的模型使用复数,然而接下来我们将看到的涉及量子比特的计算只需要在二维平面测量自旋。因此尽管使用实数描述不如复数强大,但这正是我们需要的。

复数提供了一种优雅的方式将三角函数和指数函数联系起来。在本书的后面我们将看到Shor算法,不使用复数将难以解释这个算法。这个算法还需要连分数、数论的结果以及素数判别算法的运行速度。如果我们想要讲清楚Shor算法的全部细节,需要在数学复杂性和知识层面上有巨大提升。因此,我们只会描述算法的基础思想,并解释它们是如何组合起来的。同样,我们的描述只使用实数。

因此对于我们将要做的事情,复数不是必需的。但是如果阅读本书后,你想要继续学习量子计算,对于更多的高级主题,复数是必需的。

现在已经解释了为什么要使用实数,我们将开始学习向量和矩阵。2.2 向量

一个向量就是一个数字列表,向量的维度就是列表中数字的个数。如果列表是竖直书写的,称为列向量或者ket;如果列表是水平书写的,称为行向量或者bra。组成向量的数字通常被称为元素。为了更好地说明,这里有一个三维的ket和一个四维的bra:

ket和bra的名字来源于保罗·狄拉克,他同时引入了两种向量的符号:一个名为v的ket记作|v〉;一个名为w的bra记作〈w|。所以我们可以写成

之后将会看到使用两种不同的符号来环绕名字以及尖括号朝向的原因,不过现在重要的是记住ket表示列向量而bra表示行向量。2.3 向量的图解

二维或三维的向量可以画作箭头。我们将使用这个例子。(在接下来的内容中我们会经常使用ket作为示例,不过如果你喜欢可以替换成bra。)在这个例子中,第一个元素3表示从起点到终点x轴的改变量,第二个元素1表示从起点到终点y轴的改变量。我们可以用任意起点画出这个向量——如果选择(a,b)作为起点,那么终点的坐标将是(a+3,b+1)。注意,如果起点选择在原点,那么终点的坐标就是向量中的元素。这是很方便的,我们经常把向量画在这个位置。图2.1显示了同一个ket以不同起点的表示。图2.1 同一ket画在不同位置2.4 向量的长度

向量的长度是指从起点到终点的距离,这个距离是所有元素平方和的平方根。(这来自毕达哥拉斯定理。)我们将|a〉的长度记作||a〉|,所以对于,有。更一般的情a1况是,如果,那么。

长度为1的向量称作单位向量,之后,我们将会看到量子比特被表示为单位向量。2.5 标量乘法

我们可以将一个向量乘以一个数字。(在线性代数中,数字通常被称作标量。标量乘法就是指乘以一个数字,就是把向量中的每个元素乘以这个数字。)例如,将向量乘以一个数字c得到。

可以直接验证,一个向量乘以一个正数c就是把它的长度乘以c。我们可以使用这个事实得到任意长度的指向同一方向的向量。特别地,我们经常想要得到一个指向某个非零向量方向的单位向量。给定任意非零向量|a〉,它的长度是||a〉|,如果将|a〉乘以其长度的倒数,我们就获得了一个单位向量。例如,如果,那么。如果令

那么

因此,|u〉就是和|a〉具有相同方向的单位向量。2.6 向量加法

给定两个相同类型的向量(同时是bra或者ket)并且它们具有相同的维度,我们可以将它们相加得到一个相同类型和维度的新向量。新向量的第一个元素就是两个向量第一个元素的和,第二个元素就是两个向量第二个元素的和,等等。例如,如果。

向量加法的图解经常被称作向量加法的平行四边形法则。如果向量|b〉的起点选取为向量|a〉的终点,那么从|a〉的起点到|b〉的终点的向量就是|a+b〉,这画出来是一个三角形。

我们可以交换|a〉和|b〉的角色,将|a〉的起点选取为|b〉的终点,那么从|b〉的起点到|a〉的终点的向量就是|b+a〉。同样,这也给出了一个三角形。我们知道|a+b〉=|b+a〉,所以如果我们画出|a+b〉和|b+a〉的三角形构造,那么这两个向量拥有相同的起点和终点,这两个三角形拼在一起是一个平行四边形,并且该平行四边形的对角线表示|a+b〉和|b+a〉。图2.2说明了这个法则,其中,因此。2.7 正交向量

图2.2帮助我们可视化了一些向量加法的基本性质,其中最重要的来自毕达哥拉斯定理。我们知道,如果a、b和c表示一个三角形三222条边的长度,那么a+b=c当且仅当这个三角形是一个直角三角形。22图像告诉我们,两个向量|a〉和|b〉是垂直的当且仅当||a〉|+||b〉|=||a

2+b〉|。图2.2 向量加法的平行四边形法则

单词“正交”和垂直的含义相同,并且经常用于线性代数中。我们可以重新表述我们的发现:两个向量|a〉和|b〉是正交的当且仅当||222a〉|+||b〉|=||a+b〉|。2.8 bra-ket内积

如果我们有一个bra和一个ket并且它们的维度相同,可以将它们相乘(bra在左边,ket在右边)得到一个数字。假设〈a|和|b〉都是n维的:

我们使用连接表示乘积,这意味着我们将它们紧挨着写在一起,中间没有任何符号。所以这个乘积写作〈a||b〉。通过挤压,竖线重合在一起得到〈a|b〉,这才是我们将使用的符号。bra-ket乘积的定义如下:

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载