歡迎來到YuleZhang的量子計算專欄,本專欄圍繞着《量子信息與量子計算》陳漢武編展開,奉行費曼學習法,儘可能的用生動的語言和自己的理解來拆解這本書,從而不斷鞏固和進步,歡迎與我一起學習,同時也期待你寶貴的建議!
一、前言
前面我們提到過量子的疊加態、糾纏態等神奇的性質,正是因爲這些性質使得量子世界總是蒙着一層面紗,儘管已經撥開重重迷霧,仍是不得見其“素顏”。並且量子的這些狀態在量子信道上進行傳輸時,還會受到環境噪聲和自身相干性的影響,導致將要轉發的信息“面目全非”。於是類似於傳統信道的處理方式(例如海明碼糾錯等),我們在量子信道中也加入糾錯編碼,用來保證我們傳輸數據的準確和可靠性。
二、經典糾錯編碼
爲什麼不直接學量子糾錯編碼方式呢,因爲量子糾錯就是在經典糾錯的基礎之上發展過來的,只是進行了適當的拓展而已。理解了這個,相信對於量子糾錯你就已經掌握一半的內容了,下面來看一看“巨人的肩膀”是什麼樣的。
先來設想一個最簡單的場景,你要給你遠在異地的女朋友發消息。假設這個信道容易被幹擾,我們設你發1它收到0和發0收到1的概率爲,也就是說你女朋友收到正確信息的概率是。如下圖所示。
那麼爲了保證一定的容錯率,爲了你的女票能正確收到信息。我們將傳送的數據重複三次再發出去,即當你發000表示你要發0,當你發111表示你發的是1。當你女票收到信息之後,採用多數決定法解碼,如圖所示
這樣處理確實能夠糾正大部分錯誤,可也有“漏網之魚”,即當所發的數據中兩個或兩個以上的比特位都被噪聲影響時,那麼女票就完全理解錯了。這時候我們來計算一下這種情況發生的概率。兩個比特錯就是,三個比特都錯就是,設則,那麼其錯誤概率就是
可以看到通過三比特重複編碼,明顯降低了誤碼率。
三、量子糾錯編碼
下面“主角”即將出場——量子糾錯編碼,通過邏輯門操作結合上述多數決定法來實現量子糾錯。這裏要注意了!!!量子信道傳輸出現錯誤一般有以下三種情況
- 比特反轉錯誤
- 相位反轉錯誤
- 比特和相位都發生反轉錯誤
而經典的比特傳遞僅考慮比特反轉錯誤。並且,顯然第三種情況是第一種和第二種同時作用的結果,對應的糾錯也可以結合。
3.1 bit反轉信道的量子糾錯編碼
這種情形跟經典信道的反轉很類似,還是比較容易處理的。二者的顯著區別就是信道中輸入的信號變爲了。類比傳統的情況,也就是說有的概率收到的沒有發生錯誤,即原樣輸出。而有的概率在傳輸過程中發生了反轉。
咦,到了這裏停一下。量子裏面的反轉恰好可以用門來表示,也就是說有的概率使得女票得到的結果,總結起來就是下圖
同樣的我們把傳輸的信息重複三次,注意這裏使得編碼保持線性。所以就有了以下式子,實際傳輸時的內容爲
qubit | 編碼 |
---|---|
|0⟩ | |0⟩|0⟩|0⟩=|000⟩ |
|1⟩ | |1⟩|1⟩|1⟩=|111⟩ |
那麼實現信息重複的量子電路是什麼樣的呢,請看下圖
可以看到圖中有兩個控制非門,當輸入爲1時,第二位和第三位的0比特都發生反轉,也就得到了。同理當輸入爲0時,第二位和第三位的0比特不發生反轉,得到了,大功告成,這就是編碼器了。
下面考慮解碼器的功能,是不是跟傳統信道一模一樣呢(那個多數決定法)!那麼量子電路怎麼設計呢,科學家們已經幫我們解決了這個問題,其組成也是控制非門,下面來看看它的結構
可以看到,接收方添加2位qubit輔助信息,將其初始化爲,同收到的3qubit信息一同送入解碼器。若傳輸的信息沒有發生反轉,那麼經過4個控制非門演算,其狀態將順序發生如下變化
只需測量最後2位qubit,就能準確的判斷出錯誤發生的位置。其對應關係如下
當我們找出錯誤比特的位置,那麼就能通過演算反轉自動糾正錯誤了。
很顯然上述解碼過程有些抽象,下面將舉一個具體的例子來幫助理解。待發送內容爲,利用上述的編碼器編碼得到。假設在傳輸的過程中第2個qubit發生反轉錯誤,即接收方收到了。不要着急,將這段序列送入解碼器(圖4-4)。通過一系列控制非門的運算,那麼到虛線處計算的結果爲 隨後測定輔助位,以的概率測定到輔助位爲,查表發現其對應着第二位錯誤,對第二位實施即可得到正確的結果。
對於bit反轉的錯誤到這裏就結束了,總結一下就是先採用三次重複編碼器編碼,隨後傳輸,收到信息後添加輔助位送入解碼器。將解碼器的2位輔助輸出位查表,找到對應的錯誤位置,最後糾正就完美了!
3.2 位相反轉信道的量子糾錯編碼
有了上面比特反轉的基礎,我們就能迅速明確我們發送的信息將以的概率在傳輸時沒有被幹擾改變,同時也有的概率在傳輸時發生位相反轉。
到了這裏再停一下,位相反轉是不是可以用來表示呢,於是同理得到了下圖(位相反轉信道)
隨後呢,就是將輸入送入編碼器(上圖4-3),得到。將其經過位相反轉信道傳送,如果第一位qubit發生了位相反轉,即接收方收到的信息爲。對於這種情況顯然就不能用比特反轉裏的多數決定法了,它面對此類問題顯然毫無對策。
下面來回顧一下門(Hadamard變換)
H門有如下的性質
上述公式推算中,表示單位矩陣,表示比特反轉門。於是對於位相反轉錯誤可以將其轉爲比特反轉錯誤,隨後再用比特反轉信道糾錯碼就能實現糾錯,獲取正確的數據,總結如圖4-6所示。
其中虛線表示信息的不同位置,左側是發送方,中間是傳輸過程中,右側是接收方。下面來看看編碼器和解碼器的示意圖(圖4-7和圖4-8)。
相信已經非常直觀了,爲了便於理解,還是舉個例子,詳細過一遍這個過程。爲了描述方便,先用下列方法定義狀態和:
老規矩,信息經過重複碼重複三次,隨後每一個bit做門運算,就能得到以下3qubit的疊加態。
上面就是經過編碼器編碼後的結果,現在就要將這個結果發給對方啦!然鵝,在發送過程中,又有人惡意搞破壞,讓第二位qubit發生了位相反轉錯誤。想誤導你呵呵,導致對方接收到了。不過還好我們有圖4-8解碼器。先將得到的內容送入門進行運算。根據下面的運算公式我們得到經門運算的結果爲
下面就又轉化成爲bit反轉問題,將其送入圖4-4所示的解碼器再進行反轉運算就好了。總結一下,相比於bit反轉的電路,位相反轉在原有的基礎上添加了門,巧妙的將問題進行了轉化,從而最終能解開原有信息的面紗。
3.3 bit和位相同時發生反轉
有了上面的鋪墊,這種情況應該比較顯而易見了,我們的思路就是先糾正bit反轉錯誤,再將位相錯誤轉爲bit反轉錯誤,最後再次糾正bit反轉錯誤,就能得到正確信息。帶着這個思路,下面我們來看看編碼器的樣子。
門及之前的很容易理解,跟位相反轉一樣。隨後又在輸出之前每一bit添加了重複三次操作,這主要是爲了能夠直接用來糾正bit反轉錯誤。
到了這裏可能有人會問了,爲什麼最開始的三位重複qubit不能直接用來糾正bit反轉錯誤呢。還記得上面提到的位相反轉錯誤最終轉爲bit反轉錯誤嗎?因此,開始的三位重複qubit是用來給位相反轉處理後的bit反轉預留的重複碼,是留着用來完成位相錯誤糾正操作的。
下面來看看解碼器的示意圖
從圖中可以看到,與我們上述描述一致,先對每一位糾正bit錯誤,隨後直接送入4-8的位相反轉糾正電路就能成功搞定bit和位相同時發生錯誤的糾錯電路。
以上就是本次學習的主要內容,內容有一些抽象,需要反覆理解鞏固!