量子計算基礎——矩陣語言

技術背景

量子計算作為一種新的計算框架,採用了以超導、離子阱等物理體系的新語言來描述我們傳統中所理解的矩陣運算。不同於傳統電腦中的比特(經典比特)表示方法,量子計算的基本單元被稱為量子比特。我們可以通過一個布洛赫球的模型來理解二者的區別:

傳統比特用高電平和低電平來表示一個經典比特的1態和0態,分別對應於布洛赫球模型的南極點和北極點。這是經典比特所能夠表示的資訊,相當於球表面的兩個點,而一個量子比特所能夠表示的資訊,是整個球的表面(球體內部的點在特定體系下也能夠取到,一般我們只取球的表面來表示量子比特的資訊)。除了兩個極點所表示的資訊,與經典比特所表示的資訊一致之外,其他的布洛赫球表面的點,表示的是量子力學中所特有的疊加態。也就是說,一個量子比特不僅僅可以表示0態和1態,還可以用一個概率分布來表示0態和1態的疊加態:\(qstate=P(state=0)\cdot\bold{0}+P(state=1)\cdot\bold{1}\)

除了通過疊加態擴展了表示空間之外,量子計算還可以通過量子糾纏的特性,來製造非矩陣乘積態。舉個比較通俗的例子來說,如果我們拋兩枚硬幣到地上,得到的結果,就是兩個硬幣各自狀態的矩陣乘積態:\([正面,反面]\otimes[正面,反面]=[正面正面,正面反面,反面正面,反面反面]\),換句話說,兩個硬幣之間是獨立的。而量子糾纏,就可以使得我們能夠得到\([正面正面,反面反面]\)這樣的結果集合,也就是將二者綁定。也正是對量子疊加和量子糾纏這兩個重要量子特性的應用,使得量子電腦相比於傳統電腦能夠表現出性能上的極大優勢,這種優勢被稱為Quantum Supremacy/Quantum Advantage,也就是量子優越性。同時,量子計算也被認為是打破傳統半導體的摩爾定律或者指數牆的最有力工具。

量子比特與量子操作

前面我們提到,量子比特可以表示為0態和1態的一個疊加態,那麼就不能用一個元素來表示了,我們可以一個量子態表述為:

\[\left|\psi\right>=\left[
\begin{matrix}
p_0\\
p_1
\end{matrix}
\right]
\]

因為\(p_0\)\(p_1\)分別表示的是取得0態與1態的概率,那麼從線性疊加的角度來考慮,我們必須把0態和1態定義成矢量形式(基矢)的狄拉克符號:

\[\left|0\right>=\left[
\begin{matrix}
1\\0
\end{matrix}
\right],\left|1\right>=\left[
\begin{matrix}
0\\1
\end{matrix}
\right]
\]

基於這兩個基矢,我們可以重寫單量子比特的量子態的形式:

\[\left|\psi\right>=p_0\left|0\right>+p_1\left|1\right>
\]

通常情況下,如果是一個歸一化的量子態(純態),有:

\[p_0^2+p_1^2=1
\]

這同時也告訴我們,\(p_0\)的本質意義其實是取得0態的概率的開根號(也就是概率幅),並非取得0態的概率,這個表述可能會導致一些疑惑,但是這樣也是為了告訴大家疊加態與概率的關係。。表示完單量子比特的資訊,我們同樣可以推理一下多量子比特資訊的表示,比如兩量子比特和三量子比特的量子態表示:

\[\left|\psi\right>=p_{00}\left|00\right>+p_{01}\left|01\right>+p_{10}\left|10\right>+p_{11}\left|11\right>\\
\left|\psi\right>=p_{000}\left|000\right>+p_{001}\left|001\right>+p_{010}\left|010\right>+p_{011}\left|011\right>+p_{100}\left|100\right>+p_{101}\left|101\right>+p_{110}\left|110\right>+p_{111}\left|111\right>
\]

從這個表示形式中,我們也可以看出,一個\(n\)量子比特的量子電腦所能夠表示的資訊,是\(2^n\)的空間,是指數級別上升的。所以一般認為,當量子電腦發展到50個完美量子比特以上時,就會真正意義上的實現量子優越性。

這裡插一段話,講述一個不太經常被提到的,雖然不是很難,但是有可能讓人感到迷惑的問題:給定的布洛赫球,實際上有三個坐標軸,為什麼所表述的資訊是\(2^n\),而不是\(3^n\)次方?我們再回顧一下單量子比特的表達形式:

\[\left|\psi\right>=p_0\left|0\right>+p_1\left|1\right>=(p_{x0}+ip_{y0})\left|0\right>+(p_{x1}+ip_{y1})\left|1\right>
\]

公式中的\(i\)表示虛數單位,而這兩個複數中所附帶的相位,就是那一條缺失的坐標軸。但是,為什麼這一個維度被「忽略」了呢?這一點其實跟硬體實現有關,在後面我們要提到的量子測量的模組中,一般只針對一個軸進行測量,製造坍縮的量子態,這就使得實際上只有兩個軸向的操作會影響到最終的結果。但是我們又必須同時具備這三個軸,因為最終用於執行量子測量的軸,有可能是三個軸的某個疊加的位置(比如x=y=z這條直線)。

在完成了量子比特的定義之後,我們需要定義一些基礎的量子比特的操作,就類似於經典比特的邏輯門操作(與門、非門、與或門等等)。先從單個量子比特開始,我們首先回顧一下單位矩陣三個泡利矩陣

\[\sigma^I=\left(
\begin{array}{1}
1 & 0\\
0 & 1
\end{array}
\right),
\sigma^X=\left(
\begin{array}{1}
0 & 1\\
1 & 0
\end{array}
\right),
\sigma^Y=\left(
\begin{array}{1}
0 & -i\\
i & 0
\end{array}
\right),
\sigma^Z=\left(
\begin{array}{1}
1 & 0\\
0 & -1
\end{array}
\right)
\]

單位矩陣我們都可以理解,就是保持量子態不變。而通過這些基礎的泡利矩陣,我們可以用\(R^{-i\theta M},M=\sigma^X,\sigma^Y,\sigma^Z\)去構造一些列繞\(X,Y,Z\)軸旋轉的單比特旋轉矩陣。我們可以把這些旋轉矩陣的形式列出來,首先回顧一下指數矩陣的泰勒級數展開:

\[e^{A}=\sum^{\infty}_{k=0}\frac{1}{k!}A^{k}
\]

將矩陣\(-i\theta M\)代入其中可以得到:

\[R_M(\theta)=e^{-i\theta\sigma^M}=cos\left(\frac{\theta}{2}\right)\sigma^I-isin\left(\frac{\theta}{2}\right)M,M\in\left(\sigma^X,\sigma^Y,\sigma^Z\right)
\]

這便得到了將量子比特繞三個繞XYZ軸旋轉的旋轉矩陣。特殊地,在很多演算法中都會使用到這樣的一個單量子比特操作:Hadamard門,其定義為:

\[H=\frac{\sqrt{2}}{2}(\sigma^X+\sigma^Z)
\]

一般很少被提到,Hadamard門操作的幾何意義,就是將一個量子比特繞X-Z的角平分線旋轉180度。另外還有相位角量子門操作的形式:

\[P(\theta)=\left(
\begin{matrix}
1&0\\
0&e^{i\theta}
\end{matrix}
\right)
\]

當相位角取得\(\pi\)時,相位角等價於\(\sigma^Z\)。而相位門跟\(e^{-i\theta \sigma^Z}\)的不同之處在於,\(e^{-i\theta \sigma^Z}\)是分別對0態和1態的相位進行旋轉,最後再進行疊加,而相位門是固定了0態的位置而旋轉1態的相位,最終再進行疊加。從量子態上來看,二者實際上是等價的:

\[\begin{align*}
\left|\psi\right>&=e^{i\phi_1}cos\frac{\theta}{2}\left| 0\right>+e^{i\phi_2}sin\frac{\theta}{2}\left| 1\right>\\
&=e^{i\phi_1}(cos\frac{\theta}{2}\left| 0\right>+e^{i(\phi_2-\phi_1)}sin\frac{\theta}{2}\left| 1\right>)\\
&=cos\frac{\theta}{2}\left| 0\right>+e^{i(\phi_2-\phi_1)}sin\frac{\theta}{2}\left| 1\right>\\
&=\bold{\psi}(cos\phi sin\theta,sin\phi sin\theta, cos\theta)
\end{align*}
\]

根據以上的單比特門,加上一個雙比特門,理論上就可以構成任意比特數的等效量子邏輯門,一般常用的兩比特量子邏輯門是CNOT門,也叫CX門,其矩陣形式如下所示:

\[CX=\left|0\right>\left<0\right|\cdot I+\left|1\right>\left<1\right|\cdot \sigma^X=\left(
\begin{array}{1}
1 & 0 & 0 & 0\\
0 & 1 & 0 & 0\\
0 & 0 & 0 & 1\\
0 & 0 & 1 & 0
\end{array}
\right)
\]

通過Hadamard門與CX門,就可以構建一個兩比特的糾纏態:Bell State,我們可以用IBM的Composer(參考鏈接3)來演示一下:

從左下角的概率分布結果,我們就可以了解到最終的量子態為:\(\frac{\sqrt{2}}{2}\left|00\right>+\frac{\sqrt{2}}{2}\left|11\right>\),這一點也可以從量子邏輯門操作來進行簡單的分析,首先看下第一個量子比特作用Hadamard門的結果:

\[H\left|0\right>=\frac{\sqrt{2}}{2}\left(
\begin{matrix}
1&1\\
1&-1
\end{matrix}
\right)\left(
\begin{matrix}
1\\
0
\end{matrix}
\right)=\left(
\begin{matrix}
\frac{\sqrt{2}}{2}\\
\frac{\sqrt{2}}{2}
\end{matrix}
\right)
\]

此時兩個量子比特沒有作用過兩比特門,因此還是矩陣乘積態:

\[\left|\psi_H\right>=\left(
\begin{matrix}
\frac{\sqrt{2}}{2}\\
\frac{\sqrt{2}}{2}
\end{matrix}
\right)\otimes\left(
\begin{matrix}
1\\
0
\end{matrix}
\right)=
\left(
\begin{matrix}
\frac{\sqrt{2}}{2}\\
0\\
\frac{\sqrt{2}}{2}\\
0
\end{matrix}
\right)
\]

此時再作用一個CX門,得到最終的量子態:

\[\left|\psi_{final}\right>=CX\left|\psi_H\right>=\left(
\begin{array}{1}
1 & 0 & 0 & 0\\
0 & 1 & 0 & 0\\
0 & 0 & 0 & 1\\
0 & 0 & 1 & 0
\end{array}
\right)\left(
\begin{matrix}
\frac{\sqrt{2}}{2}\\
0\\
\frac{\sqrt{2}}{2}\\
0
\end{matrix}
\right)=
\left(
\begin{matrix}
\frac{\sqrt{2}}{2}\\
0\\
0\\
\frac{\sqrt{2}}{2}
\end{matrix}
\right)
\]

這樣,就完成了一個完全糾纏態的製備。製備完成後,對其中的任意一個量子比特進行測量,如果得到的結果是0態,那麼另一個量子比特結果必然也是0態。除了CX門,還有另外一個有可能被經常使用到的兩比特量子門是Swap門,顧名思義,就是交換兩個量子比特的資訊,其矩陣形式為:

\[Swap=\left(
\begin{array}{1}
1 & 0 & 0 & 0\\
0 & 0 & 1 & 0\\
0 & 1 & 0 & 0\\
0 & 0 & 0 & 1
\end{array}
\right)
\]

從矩陣元素上就可以看出其物理影像,Swap的本質操作是交換作用的兩個量子比特的概率幅,因為\(\left|00\right>\)\(\left|11\right>\)態本身就具備對稱關係,因此只需要交換\(\left|01\right>\)\(\left|10\right>\)這兩個量子態的振幅即可,因此只有矩陣中間的兩個元素進行了交換。

總結概要

量子計算是一門當下非常火熱的技術,拋開個別企業對量子計算的過分吹噓不談,其本身是一門非常有意義的跨學科研究領域。本文僅從非物理科班專業的角度——用矩陣的語言去描述量子計算的基礎單元和基礎操作,包含量子態的含義、單比特量子門操作以及兩比特量子門操作的矩陣形式。並且附帶一定的物理影像,這一點其實非常重要,如果不斷的推導公式,最終有可能迷失了其物理影像,這就脫離了我們做研究的初衷。

版權聲明

本文首發鏈接為://www.cnblogs.com/dechinphy/p/quantum-base.html

作者ID:DechinPhy

更多原著文章請參考://www.cnblogs.com/dechinphy/

打賞專用鏈接://www.cnblogs.com/dechinphy/gallery/image/379634.html

騰訊雲專欄同步://cloud.tencent.com/developer/column/91958

參考文獻

  1. Quantum Computational Chemistry. Sam McArdle, Suguru Endo and other co-authors.
  2. The Basics of Quantum Computing for Chemists. Daniel Claudino.
  3. //quantum-computing.ibm.com/composer/
  4. //www.quantum-inspire.com/kbase/rz-gate/