1. 量子电脑
有朝一日,量子电脑真的能成为事实,除了速度快以外, 它还能
做到许多, 当前电脑做不到的事. 目前, 量子电脑已经由「史前时
代」进入了「实验时代」了. 人们在找寻更多适用於量子电脑的计
算法则, 以能充分发挥量子电脑的功效.虽然, 我们还不知道量子电
脑的研究何时才会变成工程问题, 但是, 目前的成就已足使每个人
振奋了.
读过费因曼(R. P. Feynman) 的故事的人都知道, 他也曾应聘至
某电脑公司去设计电脑.物理学家怎麽也设计起电脑来了? 原来当电
脑越作越小, 速度越来越快, 量子力学的效应就不能不考虑了. 五十
年来几乎每隔两年电脑的速度就加快了一倍. 大家可以想想, 身边的
个人电脑从十几年前的苹果二号电脑到现在的586就是一个例子. 但是
这个趋势会继续下去吗? 总有一天路会走到尽头, 无论如何快, 讯号
传递的速度不会快於光速. 无论积体电路做得如何小, 总不会小过原
子. 当这一天来临时, 怎麽办? 这个世界将变成什样子?
其实, 几十年前 IBM 公司的 R.Landauer 及 C. H. Bennett 就
已经在考虑这个问题了. 他们要问的问题是, 到底电路元件最小可以
做到多小? 计算过程中最少要花多少能量? 电脑无论如何也该遵守物
理定律. 例如热力学就告诉我们, 一个引擎的效率有一定的极限, 那
麽对於量子电脑, 是否也有某些物理极限存在呢?
80年代初期, P. Benioff 告诉我们, 原则上量子电脑是可行的.
後来有英国的 D. Deutsch 及美国, 以色列等的其它一些人也做过一
些研究. 不过 80 年代中期, 这股热潮却又衰退了, 主要原因是他们
研究的量子电脑「非常的抽象」. 讨论的问题总是例如贝尔不等式,
多世界诠释 (many-worlds interpretation),EPR 悖论···等等.
而且迹象显示. 量子电脑很容易出错, 确不容易修正. 不过费因曼却
认为, 量子电脑仍有研究的价值, 可能可以用来模拟其它的量子系统
但是, 它能以更高的速度解其它的数学问吗?
过去三年来, 情况有所改观. 1993 年 S. Lloyd 找到了一堆可
以作为量子电脑的系统. P. W. Shor 更告诉我们, 量子电脑可以做
因数分解一个传统电脑中重要却又困难的问题. 而且它计算所需的
时间只与该数的对数成多项式关系. 这是传统电脑所作不到的. 这
个结果令人振奋, 大家讨论的重点已经实际到例如 H. F. Chau 及
F. Wilczek讨论如何设计逻辑元件[1]及 B. Schumacher 讨论量子
编码及资料压缩, 传输之类的了. [2]
2. 量子信息
信息, 本来就是离散的东西了, 但是这与「量子信息」还是不
太一样. 在一般的电脑里, 我们用电位的高低代表「零」与「壹」
进而组成各种信息. 在量子电脑里, 我们用原子的能阶来代表信息
的「零」与「壹」. 用氢原子的基态表示「零」 (记为 | 0 > ),
激发态表示「壹」( 记为 | 1 > ). 一个位元的量子信息称为qubit
可以是这两个状态的线性组合, 代表该位元在某一瞬间的状态. 这
种状态, 我们称为同调态 (co- herent states). 如此一串氢原子
就可以组成各种信息了.
但是, 要组成一个电脑, 要能处理这些信息, 还需要一些逻辑
元件来进行运算. 要能读入运算单元进行处理, 再输出储存. 因此,
一个量子电脑必须
1944年诺贝尔物理奖得主 I. I. Rabi 最早告诉我们如何将
信息写入量子系统. 以氢原子为例吧, 假设这个氢原子原本是处於
基态, 能量为 E0. 要写入一个位元为「零」的信息不必做任何处
理. 要写入一个位元为「壹」的信息, 则可用适当频率之雷射将原
子激发至 E1 的能阶, 如果原子本来就在激发态, 这个雷射就会使
它放出光子变成基态.
其实电子并不是说跳就跳上去的, 它还是「慢慢」的跳上去的.
这点用物质的波动性质来看就清楚了, 电子就像是个在荡秋千的小
孩, 外面的雷射光, 就像在推这个小孩的大人, 如果他推的频率正
确, 小孩就会越荡越高, 直到这个电子的能量等於这两个能阶的能
量差 E1 - E0, 电子就跳上去了. 因为, 电子所在的状态, 可以
用基态的波函数及激发态的波函数的线性组合来表示. 当电子能量
越来越高, 激发态所对应的振幅也就越来越大, 如果这个雷射光只
作用了一半的时间, 电子就在一个由基态及激发态各半所组成的状
态. 这就是量子电脑与传统电脑不同的地方. 任何时候 | 0 > 与
| 1 > 同时存在, 只是比例不尽相同而已, 也正因为这点, 量子电
脑可以做到传统电脑做不到的事.
读与写是一样的原理, 但是所使用的雷射光频率是足以使 E1
能阶的电子跳跃到一个更高却不稳定的能态 E2. 如果原子本来在
E1 能阶, 电子会跳到 E2 能阶, 但随即又跳回 E1 能阶且放出光
子如果原子本来在 E0 能阶, 由於能量不合电子则不会转移. 如果
是在上述的「中间状态」, 则它被读为「零」与读为「壹」的机率
各半.
3. 量子运算
电子元件一般可分为线性, 例如电阻及电容, 及非线性. 如
二极体及电晶体两种. 线性元件直接改变输入的讯号, 非线性元件
却会使多个讯号交互作用. 例如扩大机之所以能调整声音的音调
高低音完全是由非线性元件电晶体所造成. 音调的改变是由输入
的音乐讯号及旋纽上的控制讯号综合而来的.
电脑中逻辑运算是由 AND OR XOR NOT 及COPY 几个基本
动作所组成. 除後二者为线性元件外, 均为非线性元件.
A.Ekert D. Deutsch 及 E. Barenco 与 S. Lloyd 分别告诉我们
一个量子电脑只要能做 NOT 及任和其它一种非线性运算, 就可以
达成全部的运算功能了 [3]. 因此要找到可以制作量子电脑的物理
现象并不难. 而且 C. H. Bennett 告诉我们, 如果量子电脑是以
「可逆逻辑元件」组成的话, 那麽计算所需之最小能量将与计算之
复杂度无关.
其实全功能的量子元件早在 50 年代末期用粒子自旋制造的二
位元量子逻辑元件就已经存在了. 但是因为他们当时并不是想制
造量子逻辑元件, 所以他们称之为双共振(double resonance)
他们用的是氢原子的电子自旋及其质子自旋. 只有当电子自旋为
「壹」时才将质子自旋 翻转. 这就是Controlled-NOT. 他们已可
做到 NOT 及 COPY. 後来, E. Barenco D.DiVincenzo T.
Sleator及H. Weinfurter也证明, 如果能将电子及质子之自旋只
翻转一半就可做到 AND 其它可以作为量子电脑元件的东西. 例
如盐的晶体有两种离子各带一个自旋, 聚合链的电子态, 马荷-
然德干涉仪 (Mach-Zehnder interferometer) 也都可以 [4]
这些逻辑元件只要连起来就可做成量子电脑了. 但是怎麽连
呢? 在传统电脑里是用金属线, 它传递的其实是电压讯号. 但是
要连接这些量子电脑的双共振闸可就难了. 总不能把原子拆开来
取出自旋再原封不动的装回去吧. 不过研究人员也已经想出好方
法了. 例如光纤或空气中的光子都可以作为传递自旋信息的媒介.
加州理工学院的 H.Kimble 则设法运用共振腔增强光子与空腔间
之交互作用使得输入输出管道间的传输更有效. 这样做成的电脑
不但快, 而且不容易受外界的干扰而出错. 不过它还是有一些
Landauer 早就预见的问题. 尤其是所有元件间的光程, 必须精
确到几分之一个所使用的光波波长.
4. 量子运算
茵斯不鲁克 (Innsbruck) 大学的 T. Pellizzari, S. A.
Gardiner, J. I. Cirac 及 P. Zoller 等人最近也想出了 用阱
中原子的日曼基 态(Zeeman ground state) 能阶来做量子运算.
如此可将外界的干扰减低到只有在运算时才会发生. [5,6] 要处
理这个信息前, 必须先将之传到一个暂存器去. 美国国家标准局
的 D.Wineland 就试制过一个这样的电脑. [7] 但是现在能处理
的信息大概都是几十到几百个位元而已.
不过即使只是一个位元的量子电脑, 也能做到一般电脑做不
到的事. 在「自然」状态下去读取一个量子电脑的状态, 有一半
的机率可以读到「零」, 一半的机率可以读到「壹」. 这可是最
好的随机变数. 一般电脑里的随机变数其实都是假的(pseudo-
random number). 根据一定的公式算出来的东西怎可能是「随
机」变数呢?
假如现在有一个拥有两个位元的量子电脑. 我们想要从一个
位元将信息抄到另一个位元. 如果本来要抄的状态是 | 0 > 或
者 | 1 >都没有问题, 抄过去都是和原来一模一样. 当然抄的时
候我们必须用一个雷射光先去读第一个位元的信息, 再去写第二
个位元的信息. 但是当第一个位元是一个介於 | 0 > 与 | 1 >
间的状态时问题就来了. 量子力学告诉我们, 任何一个测量都会
把这样的一个状态变成 | 0 > 或变成 | 1 >. 因此抄过去以後,
两个都变成|0> 或者两个都变成 |1>. 当然有一些信息就在这个
读取的过程中遗失了. 一个本来就不确定的状态是不能复制也不
能观测而不干扰它的. 这个现象是量子电脑特有的, 叫做不可移
植性 (nonclonability).
当有两个以上的位元时, 还会产生所谓的缠结态
(entangled states), 例如 | 0 1 > - | 1 0 > 这种既不属於
| 0 > 也不属於 | 0 > 的状态也是量子电脑所特有的.
5. 量子电脑
前面所说的逻辑元件, 每一个都可以用一个么正矩阵 (uni-
tary matrix)来代表. 因此所谓的「量子计算」就是将系统的
同调态做么正转换. 当位元数目增加後, 我们就可用它来模拟任
何量子系统. 甚至包含系统与环境的交互作用. 费因曼早已注意
到, 一般电脑若要模拟量子系统所需的时间会随系统大小成指数
增长. 然而量子电脑模拟所需的时间只与系统大小成正比. 一个
40位元的量子电脑在百步之内所能模拟的量子系统, 一般电脑要
可能需要 10^12 位元花上数年的时间. 费因曼告诉我们, 用量
子电脑来即时 (real time) 模拟量子系统. 在理论上是可能的,
只要设计个能平行处理的量子电脑就可以了. 但是若想用古典电
脑来即时模拟量子系统却是理论上也行不通的.
量子电脑怎能做到这麽快呢? 原来它的每一个位元都是同时
有「零」同时也有「壹」存在而叠加在一起的. 因此从起始值开
始, 它就是同时代表了所有可能的的状态. 所有可能的情况都一
次算掉了, 这就是Deutsch 所称的量子平行处理 (quantum
parallelism).
量子平行处理听起来很奇怪吗? 想一想声波的例子, 如果
「零」与「壹」各代表某个频率的声波, 那麽一个同调态就是
一个和声了. 正如和声听起来和各别的单音不同, 这种组成之量
子态亦然. 但是无论是和声或同调态, 两个波都会互相干涉. 量
子电脑就好像交响乐演奏一样. 您听到的是和声, 而不是单独的
乐器 Shor 就是利用这种「和声」的特性来做因数分解. 他告诉
我们, 因数分解的结果会像交响乐团的各个乐器各有自己的音域
而分出来. 目前无论是电脑中银行中或者军事上, 传递讯息所用
的密码都是利用到传统电脑无法在有限的时间内找出一个做为
「钥匙」的大质数. 有了量子电脑後, 这一切就要改观了, 量子
电脑可以在短时间内找到这个「钥匙」. 但是大家也不必担心,
如果真有那一天, 我们也不会再用古典的方法传递信息. 如果用
量子方法传递密码. 对手要想半途窃听几乎是不可能的. 事实上
人们已经在日内瓦湖底建了一个 23 公里长的此种通讯光纤[8].
再一个问题是错误更正. 量子电脑无论是对系统的时间振幅
相位的要求均很严格. 当一个系统的状态与它的环境状态缠结在
一起时. 错误就会发生了. 量子电脑必需「和声」不受外界的干
扰而「走音」(decoherence) 我们必须在「走音」之前完成计算
这也是与古典电脑不同的地方. 以前一个计算能否完成, 全视使
用者所拥有的电脑记忆体及电脑时间而定. 现在, 则是要看这个
同调态的寿命了.
古典的错误更正方法, 都是要测量每个位元後才知道它们是
否有错, 但是量子电脑不可采用这个方法, 因为测量的结果更会
使同调态「走音」. 因此我们必需另想它法. 对於同调态最严格
的要求是, 整个系统不能有一个位元「走音」. 不过Shor告诉我
们, 它的因数分解方法在「走音」不太严重时仍然可用. 一种更
正错误的方法是, 同时做好几个相同的计算, 不断对某些状态做
比较. 但是我们并不清楚这种方法的实际效率, 而且这也和错误
的种类有关 [9].
事实上, 随著量子电脑而来的革命性改变还很多. 在通讯方
法上, 计算方法上以及测量方法上, 都会有相当的改变. 总而言
之, 在量子电脑成为事实以前, 我们还有很长的路要走. 如果量
子电脑真的成为事实. 量子力学将更加与日常生活息息相关了.