標籤:

量子計算機強在哪裡?不是因為能存下全世界的信息 | 袁嵐峰

關注風雲之聲提升思維層次

解讀科學,洞察本質

戳穿忽悠,粉碎謠言

導讀

「一個量子比特可以同時處於0狀態和1狀態」,是什麼意思?正確的理解是:經典比特是「開關」,只有開和關兩個狀態,而量子比特是「旋鈕」,有無窮多個狀態。為什麼「n個量子比特包含2的n次方個比特的信息」?張真人,群眾請你出來解釋真武七截陣的原理!

——————————————————————————————————————

近年來,量子計算和量子通信(即「量子信息」)的成果層出不窮,吸引了公眾越來越多的注意力。一個副產品是,借量子之名碰瓷的也如雨後春筍般活躍。前兩天還有人問我所謂「量子能增程器」是不是真的,回答是:純屬子虛烏有!

心好累

碰瓷蹭熱點之所以這麼容易,是因為大多數人不明白量子科學的原理。雖然如此,像「量子能增程器」、「量子襪子」、「量子鞋墊」、「量子水」、「量子隱身衣」、「量子能量精華口服液」、「量子醫學」這樣的,還是比較容易分辨,因為一看就很不專業,壓根沒有這樣的概念。(普朗克、愛因斯坦、海森堡、薛定諤、狄拉克等人怒問:我們費這麼大勁搞出量子力學,居然只是給你們造襪子鞋墊的?)

我的內心是崩潰的

但下面這句話,用的就全是專業概念:「基於量子疊加原理,一個量子比特可以同時處於0狀態和1狀態。」

這是個超級常見的說法,你如果關心量子科技的新聞,我相信你肯定看到過類似的。但這個說法不能較真,一較真你會發現很難理解它實際說的是什麼意思:是說量子比特同時處於兩個狀態?或者迅速在兩個狀態之間切換?或者處於一個不確定的狀態?或者……時空分裂了?(腦洞開得太大,已陣亡)

量子比特迅速在兩個狀態之間切換?就像……佛山無影腳?!(動圖)

在本文中,我會告訴讀者,這句話實際講的是什麼意思,——用一種準確而且容易理解的方式。

還有一個更神的說法,看起來不僅專業而且定量,內容卻似通非通,把我這個寫過不少量子信息科普文章的人都搞糊塗了:

「一個電子可以存儲一量子比特信息。如果需要2比特來描述1量子比特,那麼需要4比特來描述2量子比特,需要16比特來描述4量子比特……」

說得明確一點就是,n個量子比特能存儲2的n次方個比特的信息。奇妙的是,說這番話的不是民科,而是2016年以來大火的《寶寶的物理學》系列的作者克里斯·費利(Chris Ferrie)博士。這是他在《寶寶的量子信息學》里寫的。

《寶寶的量子信息學》

他甚至還做了一個幽默的比喻:為了存儲我最喜歡的一個分子(咖啡因)的信息,就需要地球上所有的手機!

咖啡因分子

好好好,我們都知道你最喜歡喝咖啡了。在某種意義上,偉大的法國文學家巴爾扎克就是咖啡喝太多喝死的……

巴爾扎克

你可能在很多地方也看到過類似的說法。我嚴重懷疑這些作者看過金庸的《倚天屠龍記》,因為他們的描述就好像此書第十章《百歲壽宴摧肝腸》中武當派的「真武七截陣」:

「這七套武功分別行使,固是各有精妙之處,但若二人合力,則師兄弟相輔相成,攻守兼備,威力便即大增。若是三人同使,則比兩人同使的威力又強一倍。四人相當於八位高手,五人相當於十六位高手,六人相當於三十二位,到得七人齊施,猶如六十四位當世一流高手同時出手。」

真武七截陣

這真是太好了……唯一的問題是,我知道這個說法實際表達的肯定不是字面上的意思,因為按照字面上,壓根就不對。

這就很尷尬了

最近我諮詢了一些量子信息的一線研究者,才明白了這個「真武七截陣」在什麼意義上可以成立。當然,是類比的意義。在嚴格的意義上,它並不成立。

下面我們來從頭解釋起。

一、量子比特是什麼?

比特」是計算機科學的基本概念,指的是一個體系有且僅有兩個可能的狀態,一般用「0」和「1」來表示。典型的例子,如硬幣的正、反兩個面或者開關的開、關兩個狀態。

但在量子力學中,有一條基本原理叫做「疊加原理」:如果兩個狀態是一個體系允許出現的狀態,那麼它們的任意線性疊加也是這個體系允許出現的狀態。

現在問題來了,什麼叫做「狀態的線性疊加」?為了說清楚這一點,最方便的辦法是用一種數學符號表示量子力學中的狀態,就是在一頭豎直一頭尖的括弧「|>」中填一些表示狀態特徵的字元。這種符號是英國物理學家狄拉克發明的,稱為「狄拉克符號」。

狄拉克的名著《量子力學原理》

在量子信息中,經常把兩個基本狀態寫成|0>和|1>。而|0>和|1>的線性疊加,就是a|0> + b|1>,其中a和b是兩個數,這樣的狀態稱為「疊加態」。「線性」意味著用一個數乘以一個狀態,「疊加」意味著兩個狀態相加,「線性疊加」就是把兩個狀態各自乘以一個數後再加起來。如果你學過線性代數,恭喜你,複習的機會來了~

疊加原理說的是:如果一個體系能夠處於|0>和處於|1>,那麼它也能處於|0>和|1>的任何一個疊加態。這樣的一個體系,就是一個「量子比特」。

我們可以做一個比喻:經典比特是「開關」,只有開和關兩個狀態(0和1),而量子比特是「旋鈕」,就像收音機上調頻的旋鈕那樣,有無窮多個狀態(所有的a|0> + b|1>)。

旋鈕

現在,你明白「一個量子比特可以同時處於0狀態和1狀態」是什麼意思了吧?它實際是說,量子比特可以處於|0>和|1>的疊加態。在一個時刻只會處於一個這樣的確定的狀態,既不是同時處於兩個狀態,也不是迅速在兩個狀態之間切換,也不是處於一個不確定的狀態,更不是時空分裂。(黃飛鴻:可惜了我的佛山無影腳……)

不得不說,「同時處於0狀態和1狀態」是一個很容易令人糊塗的說法,好像禪宗的打機鋒,遠不如旋鈕的比喻清楚易懂。更糟糕的是,讀者可能會以為自己懂了,然後胡亂引申,造成更大的誤解。在科普文章中,類似這樣的令人似懂非懂的說法太多了,簡直是遍地陷阱。

絆馬索、陷馬坑、連環陷阱!(動圖,《秦時明月之萬里長城》第15集《見龍在田》)

二、量子比特和經典比特的信息量怎麼比?

了解了量子比特的概念後,你一方面會感到這是個巨大的擴展,一方面也會感到納悶:從哪裡能看出「n個量子比特包含2的n次方個比特的信息」?

張真人,群眾請你出來解釋真武七截陣的原理!

張三丰

實際上,稍微想想你就會發現,量子比特和經典比特的信息量根本不屬於同一範疇,因為前者包含的是連續變數(任意的a、b兩個數),而後者是離散變數(0或1)。你可以泛泛而言「量子比特包含的信息量比經典比特大得多」,但無法給出它們之間的定量關係,因為這就好像問:從0到1之間實數的個數,跟2相比是多少倍?回答是這個問題問得不好,因為從0到1之間的實數有無窮多個。

你是在逗我?

如果我們較真的話,甚至可以說:一個連續變數里就包含了無窮多的信息。因為我們可以把這個數寫成一個二進位的無窮位小數(例如0.10011100101……),用小數點後第一位表示第一個比特的信息,第二位表示第二個比特的信息,如此等等。無論你有多少個比特的信息,一個小數里都塞得下。因此,整座圖書館的信息,甚至全世界所有的信息,都可以放在一個量子比特里!

你也許會感到有點不對。這種存儲的思路,連量子比特都不用,只要傳統的一個旋鈕或者一把尺子就可以實現了,為什麼我們沒有這麼做呢?

這是為什麼呢?

原因在於,測量的精度是有限的。也許你可以準確地測出小數點後第一位,第二位也測得比較准,第三位就不太確定了,第四位就純粹是蒙了,第五位以及更後面的,完全沒有意義。因此,你貌似可以把任意多的信息存在一個連續變數里,但實際上取不出這麼多信息。

幻覺,都是幻覺

三、真武七截陣的意思是……

那麼,為什麼許多人言之鑿鑿地說,n個量子比特包含2的n次方個比特的信息?

要讓這句話有意義,關鍵在於:把a|0> + b|1>中的a和b這兩個係數,當作兩個比特的信息。這當然不是個嚴格的說法,因為把連續變數和離散變數混為了一談。不過只要你姑且接受這種表述,你就可以明白,他們實際想說的是,「n個量子比特包含2的n次方個係數」,這就是正確的了。

這是怎麼算出來的?

對於一個量子比特,n = 1,體系可以取的狀態是a|0> + b|1>,有a和b兩個係數,係數的個數等於2的1次方。

對於兩個量子比特,n = 2,體系可以取的狀態是……是什麼?

你也許會覺得,第一個量子比特的狀態是a1|0> + b1|1>,第一個量子比特的狀態是a2|0> + b2|1>,總共有4個係數。

錯了!按照這種方式,當你有第三個量子比特時,只是增加a3|0> + b3|1>的兩個係數,總共有6個係數。廣而言之,每個量子比特提供兩個係數,所以n個量子比特包含的係數個數就是2n,怎麼會是2的n次方呢?

真正的關鍵在於,對於多量子比特的體系,基本的描述方式並不是「第一個量子比特處於某個態,第二個量子比特處於某個態……」,而是「系統整體處於某個態」。

系統整體可以處於什麼態呢?再次回憶疊加原理(敲黑板)!是的,疊加原理對多粒子體系也適用。

敲黑板(動圖,來自作者與觀視頻團隊合作的視頻節目「科技袁人」第二集《有人覺得中國科技太弱,因為全世界除了中國只有一個國家:「外國」》)

嗶哩嗶哩有人覺得中國科技太弱,因為全世界除了中國只有一個國家:「外國」_演講?公開課_科技_bilibili_嗶哩嗶哩

所以,我們要做的就是找出多粒子體系可以處於的基本狀態,而這些多粒子基本狀態是由單粒子的|0>態和|1>態組合而成的。下面我們來看這些基本狀態。

首先,你可以讓每一個量子比特都處於自己的|0>態,這時系統整體的狀態是所有這n個|0>態的直接乘積(稱為「直積」),可以簡寫為|000…>,狄拉克符號里有n個「0」。

然後,在這個態的基礎上,你可以讓第一個量子比特變成自己的|1>態,這時系統整體的狀態是|100…>,這也是一個直積態。

然後,在|000…>的基礎上,你可以讓另一個量子比特(比如說第二個)變成自己的|1>態,這時系統整體的狀態是|010…>。這樣,你可以走遍所有的由n-1個「0」和1個「1」組成的字元串。

然後,在|000…>的基礎上,你可以讓兩個量子比特變成自己的|1>態。這樣,你可以走遍所有的由n-2個「0」和2個「1」組成的字元串。

這個過程繼續下去,最終你會把所有的量子比特都變成自己的|1>態,得到由n個「1」表示的|111…>這個態。在這個過程中,你得到了所有的由「0」和「1」組成的長度為n的字元串。

這樣的態總共有多少個呢?第一位有2種選擇,第二位也有2種選擇,一直到第n位都是2種選擇。所有這些選擇乘起來,就是2的n次方種選擇。注意是相乘,而不是相加。在高中學過排列組合、二項式定理的同學們,肯定都看明白了吧?

機智如我,早已看穿了一切

因此,n量子比特的系統有2的n次方個基本狀態。它可以處於的一般狀態,就是這2的n次方個基本狀態的線性疊加。可以寫成c(000…)|000…> + c(100…) |100…> + c(010…) |010…> + … + c(111…) |111…>,其中每一個c都是一個係數,總共有2的n次方個這樣的係數。

順便說一下,這樣的一個n粒子狀態,有可能可以表示成n個單粒子狀態的乘積,這時我們稱它為「直積態」,但更常見的是不能表示成n個單粒子狀態的乘積,這時我們稱它為「糾纏態」。作為一個簡單的例子,二粒子體系的(|00>+ |11>) / √2就是一個糾纏態。你可以試著證明一下,很容易的~

一個慈祥的微笑

是的,上面講的就是量子糾纏,就是那個你在很多文章里看到過、經常被宣傳得神乎其神的東西。其實它並不神秘,你如果想對量子糾纏獲得更深入的了解,可以參見我的文章《你完全可以理解量子信息》的第7節「第三大奧義:糾纏」(你完全可以理解量子信息(7) | 袁嵐峰)。

現在,我們終於明白「n個量子比特包含2的n次方個比特的信息」這句話實際的意思了。

張三丰:老道我也是蠻拼的!

真武七截陣沒有動圖,就給大家來一路太極拳吧(動圖)

四、這個優勢有多大用處?

用處很大,根本上,這就是量子計算機的優勢所在

具體而言,對於n個量子比特的量子計算機,一次操作就可以同時改變2的n次方個係數,相當於對n個比特的經典計算機進行2的n次方次操作。如果使用得當,這可以導致指數級的加速。這裡的關鍵在於對量子糾纏的利用,如果沒有糾纏態,只有直積態,那麼你只有2n個係數,就沒有加速可言了。

魔鬼藏在細節中,這裡的魔鬼就是「如果使用得當」。為什麼會有不得當的?因為把數據讀出來是大問題。

在量子力學中,測量是一個獨特的操作,跟非測量的過程服從不同的物理規律。不測量的時候,系統是做連續演化的,我們可以預測系統的狀態。而在測量時,系統可能會發生突變,我們可能也會失去預測能力。

對量子力學中的測量的詳細解釋,可以參見我的文章《你完全可以理解量子信息》的第6節「第二大奧義:測量」(你完全可以理解量子信息(6) | 袁嵐峰)。在這裡,我們只要明白量子力學中測量的結果可能是不確定的,就足夠了。

這意味著,雖然你一下子獲得了2的n次方次操作的結果,但當你試圖從中讀出數據的時候,又會失去大部分信息。

坑爹啊!

由此導致的結果是,量子計算機的這個優勢,需要非常巧妙的演算法才能發揮出來。只對少數特定的問題,人們才設計出了這樣的演算法。而對於大多數的問題,量子計算機還沒有表現出任何優勢。

因此,當你再看到用真武七截陣來為量子計算機做宣傳的文章時,就可以明白:他們說的只是潛力,不是一般情況。量子計算機不是普遍性地算得快,幹什麼都比經典計算機強,而是只對一些特定的問題比經典計算機算得快。

淡定,淡定

不過,這並不意味著量子計算機不堪大用。因為在目前已知的少數能發揮量子計算機優勢的問題中,就包括兩個非常重要的問題:因數分解和無結構資料庫的搜索。對這兩個問題的詳細解釋,可以參見我的文章《你完全可以理解量子信息》的第10節「量子因數分解和密碼破解」(你完全可以理解量子信息(8-10)| 袁嵐峰)和第11節「量子搜索」(你完全可以理解量子信息(11-12)| 袁嵐峰)。

因數分解的困難性是常用的密碼體系RSA的基礎,能快速分解因數就意味著能快速破解RSA。想想你的信用卡、支付寶,如果能被人快速破解,世界會變成什麼樣?(剁手黨的噩夢.jpg)無結構搜索的應用就更廣泛了,從交通流到製藥,不計其數的問題都歸結於搜索。即使找不到其他的問題,這兩個也已經足夠顯示量子計算機的重要性了。

五、如果你問的就是存儲……

最後,如果你的目標不是計算,而是單純的存儲,那麼有一個定理會讓你大跌眼鏡:從n個量子比特中能夠讀出的信息,最多就是n個經典比特!這是蘇聯和俄羅斯物理學家亞歷山大·豪爾沃(AlexanderHolevo)在1973年證明的。在這個意義上,「n個量子比特包含2的n次方個比特的信息」的說法是完全錯誤的。

豪爾沃

也就是說,單就存儲而言,量子比特沒有任何優勢。跟前面那個「一個連續變數存儲整個世界的信息」的佯謬不同,這個結論甚至都不是由於測量的誤差(即使你的測量完全精確都沒用),而是由於量子力學的基本原理。

總結一下:量子比特的優勢在於能處於兩個基本狀態的任何疊加態,但這個優勢對於存儲毫無價值,好處全都在計算上,而且只針對特定的能設計出巧妙演算法的問題。雖然有這麼多前提條件,但一旦能設計出這樣的演算法,讓真武七截陣發動,就能發揮出神奇的威力!

現在,你對這個微妙的主題,理解深入多了吧?

至少,你用不著喝那麼多咖啡了!每當讓我在茶和咖啡中選擇時,我總是毫不猶豫地選擇茶~

同志哥,請喝一杯茶

背景簡介:本文作者為袁嵐峰,中國科學技術大學化學博士,中國科學技術大學合肥微尺度物質科學國家實驗室副研究員,科技與戰略風雲學會會長,微博@中科大胡不歸,知乎@袁嵐峰(zhihu.com/people/yuan-l)。本文2018年1月10日發表於「中國科普博覽」(https://mp.weixin.qq.com/s/OEmNX-6ahov3w2eoyKx9wg)。致謝:感謝中國科學院信息工程研究所楊理研究員在科學方面的指教。

出品:科普中國

製作:中國科學技術大學袁嵐峰

監製:中國科學院計算機網路信息中心

「科普中國」是中國科協攜同社會各方利用信息化手段開展科學傳播的科學權威品牌。本文由科普中國融合創作出品,轉載請註明出處。

責任編輯:孫遠

歡迎關注風雲之聲

知乎專欄:

zhuanlan.zhihu.com/feng

一點資訊:

yidianzixun.com/home?

今日頭條:

toutiao.com/m6256575842


推薦閱讀:

科學家最新發明通用量子門,可用作光量子電腦CPU
打開量子計算機的正確姿勢,別說我沒告訴你!
量子計算機再次突破,新型量子位穩定性獲得10倍提升

TAG:量子计算机 |