量子计算简介

量子比特、量子态叠加和量子纠缠

比特是经典量子计算和量子信息中一个基本的概念。量子计算和量子信息同样建立在类似的概念量子比特(quantum bit 或 qubit)上。 类似于经典比特可以处于 0 态或者 1 态,量子比特也有类似的态。

两个可能的量子态是 \(|0\rangle\)\(|1\rangle\), 他们类似于经典的比特 0 和 1 态。 这里的 \(|\rangle\) 是物理学家喜欢用的狄拉克符号,在后续的介绍文章中我们将默认使用这一套Dirac符号描述体系。 不同于经典比特的态信息,量子比特可以处于的状态除了 \(|0\rangle\)\(|1\rangle\),还可以处于 \(|0\rangle\)\(|1\rangle\) 的线性叠加态,在物理学上,我们称之为量子叠加态:

\[|\psi\rangle=\alpha |0\rangle +\beta |1\rangle.\]

这里 \(\alpha\)\(\beta\) 都是复数,并且 \(|\alpha|^{2}+|\beta|^2=1\)。 上面 \(|0\rangle\)\(|1\rangle\) 是我们的计算的基矢量。 数学上,可以把量子比特 在基矢量 \(|0\rangle\)\(|1\rangle\) 张成下的二维的复矢量。 为了更加直观的区分量子比特和经典比特,可以把经典比特的 0 和 1 理解为地球的南北极,如图所示,而量子比特 \(|\psi \rangle\) 则可以是部分南极部分北极组成的叠加状态,此状态具有无限多可能性。布洛赫球如下:

../images/bloch.png

考虑到要实现一个复杂的量子计算机,必然需要涉及到复杂的多体量子体系。我们用直积 \(\otimes\) 来描述两个量子体系组合成得复合量子体系,这个可以扩展到更多的量子体系。 我们以两个量子比特为例,来仔细观察这个案例。对于量子态分别为 \(|\psi_{1}\rangle\)\(|\psi_{2}\rangle\) 的两个量子比特,可以组成一个复合体系。进一步从复合体系的角度来说,有些态可以描述为 \(|\Psi\rangle=|\psi_{1}\rangle|\psi_{2}\rangle\) 的乘积态,或者展开为

\[\begin{split}|\Psi\rangle &=|\psi_{1}\rangle\otimes|\psi_{2}\rangle \\ &=\alpha_{1}\alpha_{2}|0_{1}\rangle|0_{2}\rangle +\alpha_{1}\beta_{2}|0_{1}\rangle|1_{2}\rangle+\beta_{1}\alpha_{2}|1_{1}\rangle|0_{2}\rangle+\beta_{1}\beta_{2}|1_{1}\rangle|1_{2}\rangle \\ &=\alpha_{1}\alpha_{2}|00\rangle +\alpha_{1}\beta_{2}|01\rangle +\beta_{1}\alpha_{2}|10\rangle +\beta_{1}\beta_{2}|11\rangle\end{split}\]

在这里我用下角标表示对应的量子比特,并在最后一行的约化中把直积符号 \(\otimes\) 忽略了。我们默认量子比特坐标是从左到右分别为 0,1,… 等。 这两个直积形成的态在一起的复合态 \(|\Psi\rangle\) 叫做直积态(可分离态)。 量子体系中除了这种态,还有一种不能用两个直积而生成得态,如贝尔态:

\[|\Psi_{Bell}\rangle=\frac{1}{\sqrt{2}}|00\rangle +\frac{1}{\sqrt{2}}|11\rangle\]

这样的一种态,无论如何没法分解成两个量子态的直积,我们称这样的态为量子纠缠态。量子纠缠作为重要的一种量子资源,广泛的应用在量子计算、量子通信中。

直积的运算规则,可以从如下案例感受。对于两个2*2 矩阵A 和 B来展示

\[\begin{split}\begin{matrix} A=\begin{bmatrix} A_{11} & A_{12}\\ A_{21} & A_{22} \end{bmatrix}, B=\begin{bmatrix} B_{11} & B_{12} \\ B_{21} & B_{22} \end{bmatrix} \end{matrix}\end{split}\]

了便于大家理解直积,我们将对上述知识从矩阵角度加以理解。定义量子态 \(|0\rangle=(1,0)^{T}\)\(|1\rangle=(0,1)^{T}\)。 这里 T 是转置算符。则

\[\begin{split} \begin{align} A\otimes B &=\begin{matrix} \begin{bmatrix} A_{11}B & A_{12}B\\ A_{21}B & A_{22}B \end{bmatrix} \end{matrix} \\ &=\begin{matrix} \begin{bmatrix} A_{11}*B_{11} &A_{11}*B_{12} &A_{12}*B_{11} & A_{12}*B_{12} \\ A_{11}*B_{21} &A_{11}*B_{22} &A_{12}*B_{21} & A_{12}*B_{22} \\ A_{21}*B_{11} &A_{21}*B_{12} &A_{22}*B_{11} & A_{22}*B_{12} \\ A_{21}*B_{21} &A_{21}*B_{22} &A_{22}*B_{21} & A_{22}*B_{22} \\ \end{bmatrix} \end{matrix} \end{align}\end{split}\]

基于此规则,我们稍加计算不难得到,

\[\begin{split}\begin{matrix} |00\rangle=\begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix}, |01\rangle=\begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix}, |10\rangle=\begin{bmatrix} 0 \\ 0 \\ 1 \\ 0 \end{bmatrix}, |11\rangle=\begin{bmatrix} 0 \\ 0 \\ 0 \\ 1 \end{bmatrix} \end{matrix}\end{split}\]

由此写出

\[\begin{split}\begin{matrix} |\Psi\rangle=\begin{bmatrix} \alpha_1\alpha_2 \\ \alpha_1\beta_1 \\ \beta_1\alpha_2 \\ \beta_1\beta_2 \end{bmatrix}, |\Psi_{Bell}\rangle=\begin{bmatrix} \frac{1}{\sqrt{2}} \\ 0 \\ 0 \\ \frac{1}{\sqrt{2}} \end{bmatrix} \end{matrix}\end{split}\]

量子态演化和量子门操作

在封闭体系中,一个量子态的演化可以用一个幺正变换来描述。一个 t1 时刻的量子态 \(|\psi({t1})\rangle\) 通过一个幺正算符U(unitary operator)可以变换到 \(|\psi({t1})\rangle\) ,这个幺正算符仅取决于时间t1和t2

\[|\psi(t2)\rangle=U(t1,t2) |\psi(t1)\rangle\]

再具体点说,一个封闭体系量子态的演化服从薛定谔方程,也就是

\[i\hbar\frac{d |\psi\rangle}{d t}=H |\psi\rangle.\]

在这个方程中 \(\hbar\) 是物理学中普朗克常数,H是系统的哈密顿量(Hamiltonian)。 简单来讲,一个量子体系,如果知道其初始态 \(|\psi_{t=0}\rangle\), 以及Hamiltonian,则可以通过求解薛定谔方程知晓任意时刻态 \(|\psi_{t}\rangle\) 。 一般来说,类似与经典机器初始化,单量子比特的态会初始化在 \(|0\rangle\),即系统的初始化态一般是确定的,所以最重要的事情是构建系统的的Hamiltonian。 从计算的角度,可以将Hamiltonian的演化分解成各种单比特和两比特量子们的组合。类比于经典计算机,从一些们集合(如或门,与门和非们)出发,可以通过组合,完成任意的经典计算过程。 类似的,一系列复杂的量子计算也可以通过构建对应的复杂Hamiltonian来实现,也就是可以通过分解成一系列的量子门的组合来实现量子计算。理论计算表明,可以单比特门和两比特门CNOT集合可构成任意量子计算的复杂门。

常用的单量子比特门,主要是Pauli算符 X、Y、Z 和 Hadamard 门 H,以及 \(\frac{\pi}{4}\)\(\frac{\pi}{8}\) phase gate S 和 T 门。其对应的矩阵形式为:

\[\begin{split}\begin{matrix} X=\begin{bmatrix} 0 & 1\\ 1 & 0 \\ \end{bmatrix}, Y=\begin{bmatrix} 0 & -i \\ i & 0 \end{bmatrix}, Z=\begin{bmatrix} 1 & 0 \\ 0 & -1 \\ \end{bmatrix},\\ H=\frac{1}{\sqrt{2}}\begin{bmatrix} 1 &1 \\ 1 &-1 \end{bmatrix},S=\begin{bmatrix} 1 & 0 \\ 0 & i \\ \end{bmatrix},T=\begin{bmatrix} 1 & 0 \\ 0 & e^{i\pi/4} \\ \end{bmatrix} \end{matrix}\end{split}\]

对于单比特门,我们以X门和H门为案列稍加展开。一个X门可以对态进行翻转:

\[|\psi\rangle=\alpha |0\rangle +\beta |1\rangle.\]
\[\begin{split}\begin{align} X|\psi\rangle &=\begin{matrix} \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}*\begin{bmatrix} \alpha \\ \beta \end{bmatrix} =\begin{bmatrix} \beta \\ \alpha \end{bmatrix} =\alpha|1\rangle+\beta|0\rangle \\ \end{matrix} \end{align}\end{split}\]

Hadamard门可以用于变换用来制备叠加态和变换基矢:

\[\begin{split}\begin{align} H|0 \rangle &=\begin{matrix} \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix} *\begin{bmatrix} 1 \\ 0 \end{bmatrix} =\frac{1}{\sqrt{2}} \begin{bmatrix} 1 \\ 1 \end{bmatrix} =\frac{1}{\sqrt{2}}(|0\rangle+|1\rangle )\\ \end{matrix} \end{align}\end{split}\]
\[\begin{split}\begin{align} H|1 \rangle &=\begin{matrix} \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix} *\begin{bmatrix} 1 \\ 0 \end{bmatrix} =\frac{1}{\sqrt{2}} \begin{bmatrix} 1 \\ 1 \end{bmatrix} =\frac{1}{\sqrt{2}}(|0\rangle-|1\rangle )\\ \end{matrix} \end{align}\end{split}\]

对于两比特门,我们聚焦在CNOT门上,这也就是控制翻转门。一般来说假定第一个比特是控制比特,第二位是量子比特。则当且仅当第一比特是量子态的时候,第二比特才进行翻转操作,即X操作。 CNOT门的矩阵形式为

\[\begin{split}\begin{matrix} CNOT=CX=\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix} \end{matrix}\end{split}\]

很容易验证其功能如下,

\[\begin{split}\begin{matrix} CNOT |00\rangle=\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix}*\begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix}=\begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix}=|00\rangle, \\ CNOT |01\rangle=\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix}*\begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix}=\begin{bmatrix} 0 \\ 1 \\ 0 \\ 0 \end{bmatrix}=|01\rangle, \\ CNOT |10\rangle=\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix}*\begin{bmatrix} 0 \\ 0 \\ 1 \\ 0 \end{bmatrix}=\begin{bmatrix} 0 \\ 0 \\ 0 \\ 1 \end{bmatrix}=|11\rangle, \\ CNOT |11\rangle=\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix}*\begin{bmatrix} 0 \\ 0 \\ 0 \\ 1 \end{bmatrix}=\begin{bmatrix} 0 \\ 0 \\ 1 \\ 0 \end{bmatrix}=|10\rangle \end{matrix}\end{split}\]

CNOT门在操作两比特,制备量子纠缠态方面,不可或缺。

量子线路(电路)

与经典计算机类似,为了展现一个复杂的量子计算机计算过程,我们选择展示两个典型的量子电路。 以下我们来展示Bell纠缠态的制备和量子隐形传态。

Bell纠缠态的制备

Bell态的制备需要两个qubit,假设qubit的初态为 \(\psi_{0}=|00\rangle\),

../images/bellpair_circuit.png

对Qubit1施加一个Hadamard 门操作,此时复合系统的态为

\[\begin{split}\begin{align} \psi_{1}&=\frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)|0\rangle \\ &=\frac{1}{\sqrt{2}}(|00\rangle+|10\rangle) \end{align}\end{split}\]

然后以qubit1为控制比特,qubit2为目标比特,施加CNOT门,此时系统演化为

\[\begin{align} \psi_{2} &=\frac{1}{\sqrt{2}}(|00\rangle+|11\rangle) \end{align}\]

这样,通过Hadamard 门和CNOT门,就制备了一个Bell纠缠态。通过改变初态组合,我们可以制备其他额外3中Bell态。不来验证可以通过不同组合构建如下四种对应的Bell态,

\[\begin{split}\begin{align} |00\rangle \rightarrow \Phi^{+} &=\frac{1}{\sqrt{2}}(|00\rangle+|11\rangle), \\ |10\rangle \rightarrow \Phi^{-} &=\frac{1}{\sqrt{2}}(|00\rangle-|11\rangle), \\ |01\rangle \rightarrow \phi^{+} &=\frac{1}{\sqrt{2}}(|01\rangle+|10\rangle), \\ |11\rangle \rightarrow \phi^{-} &=\frac{1}{\sqrt{2}}(|01\rangle-|10\rangle), \\ \end{align}\end{split}\]

这里用了不同符号了区分不同的Bell态。纠缠表示的是一种非局域的关联关系。 对于 \(\Phi^{+}\),理想情况下,如果 qubit1 测量结果为0,则qubit2 的态也会塌缩到0态。 如果 qubit1 测量结果为1,则qubit2也会塌缩到量子态 1 上。 在实验中,需要通过关联测量以及量子态层析来表示纠缠态。 然而随着体系增大,表达量子态的矩阵元素指数增大,重构量子态在理论和实验上都比较难以操作,所以多体复杂体系的纠缠的度量目前还是一个很值得研究的话题。

量子隐形传态

纠缠在量子体系中,作为一种资源可以用来做量子隐形传态。下面将用量子电路来展示量子隐形传态。

假设Alice位置这里有个量子态想传递给Bob。不失一般性,将这个态用Dirac符号描述为

\[|\psi\rangle_{C}=\alpha|0_{C}\rangle +\beta |1_{C}\rangle\]

协议规定Alice,Bob一开始的时候处于一个最大的Bell纠缠态。这个纠缠态可以从如下四种中,事先约定一种,

\[\begin{split}|\Phi^{+}\rangle_{AB} =\frac{1}{\sqrt{2}}(|0_{A}0_{B}\rangle+|1_{A}1_{B}\rangle),\\ |\Phi^{-}\rangle_{AB} =\frac{1}{\sqrt{2}}(|0_{A}0_{B}\rangle+|1_{A}1_{B}\rangle),\\ |\phi^{+}\rangle_{AB} =\frac{1}{\sqrt{2}}(|0_{A}1_{B}\rangle+|1_{A}0_{B}\rangle),\\ |\phi^{-}\rangle_{AB} =\frac{1}{\sqrt{2}}(|0_{A}1_{B}\rangle-|1_{A}0_{B}\rangle),\\\end{split}\]

假定,一开始Alice和Bob共享了一个最大纠缠态 \(|\Phi^{+}\rangle_{AB}\)

此时,Alice处有两个量子态,一个是将要传递的态C,一个是跟Bob的纠缠态A,而Bob目前仅拥有量子态B(也是纠缠态的一部分)。把整个体系考虑在一起则可以得到3个量子比特的符合体系可以描述为,

\[\begin{split}\begin{align} |\psi_{0}\rangle=|\psi\rangle_{AB}|\psi\rangle_{C} &=\frac{1}{\sqrt{2}}(|0_{A}0_{B}\rangle+|1_{A}1_{B}\rangle) (\alpha|0_{C}\rangle+\beta|1_{C}\rangle) \\ &=\frac{1}{\sqrt{2}}\{\alpha(|0_{A}0_{B}0_{C}\rangle + |1_{A}1_{B}0_{C}\rangle) +\beta(|0_A0_B1_C\rangle +|1_A1_B1_C\rangle)\} \end{align}\end{split}\]

进一步延伸,考虑到后续的测量是在Bell测量基下测量,可以将体系的态,以Bell态展开,利用如下关系

\[\begin{split}|00\rangle=\frac{1}{\sqrt{2}}(|\Psi^{+}\rangle+|\Psi^{-}\rangle),\\ |11\rangle=\frac{1}{\sqrt{2}}(|\Psi^{+}\rangle-|\Psi^{-}\rangle),\\ |01\rangle=\frac{1}{\sqrt{2}}(|\psi^{+}\rangle+|\psi^{-}\rangle),\\ |10\rangle=\frac{1}{\sqrt{2}}(|\psi^{+}\rangle-|\psi^{-}\rangle).\\\end{split}\]

保持Bob部分量子态B的部分不变,聚焦在Alice部分量子态A和量子态C,则体系可以写成

\[\begin{split}\begin{align} |\psi_{0}\rangle &=\frac{1}{\sqrt{2}}\{\alpha(|0_{A}0_{B}0_{C}\rangle + |1_{A}1_{B}0_{C}\rangle) +\beta(|0_A0_B1_C\rangle +|1_A1_B1_C\rangle)\} \\ &=\frac{1}{\sqrt{2}}\{\frac{\alpha}{\sqrt{2}}(|\Psi^{+}_{AC}\rangle+|\Psi^{-}_{AC}\rangle)|0_{B}\rangle + \frac{\alpha}{\sqrt{2}}(|\psi^{+}_{AC}\rangle-|\psi^{-}_{AC}\rangle)|1_{B}\rangle +\\&\qquad\frac{\beta}{\sqrt{2}} (|\psi^{+}_{AC}\rangle+|\psi^{-}_{AC}\rangle)|0_{B}\rangle +\frac{\beta}{\sqrt{2}}(|\Psi^{+}_{AC}\rangle-|\Psi^{-}_{AC}\rangle)|1_{B}\rangle \} \\ &=\frac{1}{2}\{|\Psi^{+}_{AC}\rangle(\alpha|0_B\rangle+\beta|1_B\rangle) + |\Psi^{-}_{AC}\rangle(\alpha|0_B\rangle-\beta|1_B\rangle) + \\ &\qquad |\psi^{+}_{AC}\rangle(\beta|0_B\rangle)+\alpha|1_B\rangle) + |\psi^{+}_{AC}\rangle(\beta|0_B\rangle)-\alpha|1_B\rangle)\} \end{align}\end{split}\]

这样写出来,可以看到,如果以Bell基测量,则可以从得到的Bell基的状态可以相应的Bob上的量子态B做相应的操作。 于是,我们可以Bell测量的结果和Bob对应的量子操作。

  • Alice处Bell态测量结果为 \(|\Psi^{+}_{AC}\rangle\), 则Bob态坍缩到 \(\alpha|0\rangle+\beta|1\rangle\),这个态正是要传递的态,Bob不需要做任何操作。
  • Alice处Bell态测量结果为 \(|\Psi^{-}_{AC}\rangle\), 则Bob态坍缩到 \(\alpha|0\rangle-\beta|1\rangle\),此时需要一个Z门操作,将其转为 \(\alpha|0\rangle+\beta|1\rangle\)
  • Alice处Bell态测量结果为 \(|\psi^{+}_{AC}\rangle\), 则Bob态坍缩到 \(\beta|0\rangle+\alpha|1\rangle\),此时需要一个X门操作,将其转为 \(\alpha|0\rangle+\beta|1\rangle\)
  • Alice处Bell态测量结果为 \(|\psi^{-}_{AC}\rangle\), 则Bob态坍缩到 \(\beta|0\rangle-\alpha|1\rangle\),此时先需要一个X门操作,将其转为 \(\alpha|0\rangle-\beta|1\rangle\),然后再需要一个Z门,将量子态转为 \(\alpha|0\rangle+\beta|1\rangle\)

实验中,考虑到测量纠缠态的复杂性,以及量子计算的可逆性,便施加了制备纠缠态的逆操作。也就是先施加CNOT门,然后在施加Hadamard门,这里需要注意量子比特C是控制比特,A是目标比特。 通过这样一种幺正变换,可以将纠缠态转为实验系统容易测量的0态和1态这种测量基矢。这是一一对应的映射,具体来说具有以下关系,

\[\begin{split}\begin{align} \Phi^{+}_{AC} &=\frac{1}{\sqrt{2}}(|0_A0_C\rangle+|1_A1_C\rangle) \rightarrow |0_A0_C\rangle, \\ \Phi^{-}_{AC} &=\frac{1}{\sqrt{2}}(|0_A0_C\rangle-|1_A1_C\rangle) \rightarrow |0_A1_C\rangle, \\ \phi^{+}_{AC} &=\frac{1}{\sqrt{2}}(|0_A1_C\rangle+|1_A0_C\rangle) \rightarrow |1_A0_C\rangle, \\ \phi^{-}_{AC} &=\frac{1}{\sqrt{2}}(|0_A1_C\rangle-|1_A0_C\rangle) \rightarrow |1_A1_C\rangle, \\ \end{align}\end{split}\]

量子隐形传态线路图,如下:

../images/Teleportation2.png

根据上面的一一对应关系,可以得到,

  • 当测量结果 \(|\psi\rangle=|0_{A}0_{C}\rangle\), 则无需任何操作在量子态B上,得到的就是量子态C。
  • 当测量结果 \(|\psi\rangle=|0_{A}1_{C}\rangle\), 则需要操作一个Z门在量子态B上。
  • 当测量结果 \(|\psi\rangle=|1_{A}0_{C}\rangle\), 则需要操作一个X门在量子态B上。
  • 当测量结果 \(|\psi\rangle=|1_{A}1_{C}\rangle\), 则需要先操作一个X门,然后操作一个Z门在量子态B上。

量子计算机硬件实现

量子计算和量子信息不仅仅是一套数学描述,科学家深信处理量子信息的机器应该可以在自然中创造出来。然而,实验中要实现量子线路、量子算法以及量子通信系统在工程上还有很大挑战。这里我结合自己的观点,分析目前较为主流的认为比较可靠的实现量子计算的物理系统,离子阱量子计算系统和超导量子计算系统。在这里由于这个两个系统在世界上都有大量的组在研究他们,我们将主要聚焦在一些对应的量子计算的基本要素上,我们希望感兴趣的读者可以阅读更深入更原创的介绍。

人们不禁会问,实现一个量子计算机对物理系统到底会有什么要求了?最基本的要求是要有量子比特qubit–二能级系统。为了构造一个量子计算机,除了有qubit外,还需要物理系统能长久的保持体系的量子相关的性质,不仅如此,我们还希望我们建造的量子计算机可以按照我们期望工作,换句话说是可控的量子操作或者量子演化。当然,我们还需要有高保真度的初态制备以及末态测量。归结以上几条,我们物理学界的大佬已经整理出几个必要的条件来实现普适的量子计算。

  • 高保真度的量子比特的初始化
  • 足够长的相干时间
  • 普适的量子门操作
  • 有效的量子态测量
  • 量子比特(量子体系)的可拓展性

目前,这条规则已经拓展到7条,在这里,不做详尽的展开。根据上述规则,以及从目前的科研现状来看,离子阱量子计算和超导量子计算是很有可能实现量子计算的两个典型物理平台。