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].
事實上, 隨著量子電腦而來的革命性改變還很多. 在通訊方
法上, 計算方法上以及測量方法上, 都會有相當的改變. 總而言
之, 在量子電腦成為事實以前, 我們還有很長的路要走. 如果量
子電腦真的成為事實. 量子力學將更加與日常生活息息相關了.