PyQPanda入门-量子计算入门

入门

数学基础

设$|0\rangle=[1,0]^T,|1\rangle=[0,1]^T$为$\mathbb C^2$的一组基,则一个量子比特可表示为$|\psi\rangle=\alpha|0\rangle+\beta|1\rangle$。其中$\alpha,\beta\in\mathbb C$,称为振幅,满足归一化条件$|\alpha|^2+|\beta|^2=1$。将任意单量子比特量子态写作$\displaystyle|\psi\rangle=\cos\left(\dfrac{\theta}{2}\right)|0\rangle+e^{i\varphi}\sin\left(\dfrac{\theta}{2}\right)|1\rangle$,对应布洛赫球上一点$\psi(\cos\varphi\sin\theta,\sin\varphi\sin\theta,\cos\theta)$。布洛赫球的北极为$|0\rangle$,南极为$|1\rangle$。

对于多量子比特,例如两个量子比特可能有4个状态$|00\rangle,|01\rangle,|10\rangle,|11\rangle$,对应有4个振幅,表示为$|\psi\rangle=a_{00}|00\rangle+a_{01}|01\rangle+a_{10}|10\rangle+a_{11}|11\rangle$。其中$a_{00},a_{01},a_{10},a_{11}\in\mathbb C$,且$|a_{00}|^2+|a_{01}|^2+|a_{10}|^2+|a_{11}|^2=1$。

对于一个由多个量子比特组成的系统,量子态可表示为$\displaystyle|\psi\rangle=\sum_{i=0}^{2^n-1}a_i|i\rangle$,其中$n$为量子比特数,$a_i$为振幅,且$\displaystyle\sum_{i=0}^{2^n-1}|a_i|^2=1$。

描述量子态的向量称为态矢,分为左矢和右矢,分别为$\langle\psi|=[a_1^*,a_2^*,\cdots,a_n^*]$和$|\psi\rangle=[a_1,a_2,\cdots,a_n]^T$。态矢中每个元素都是复数,内外积分别定义为$\displaystyle\langle\alpha|\beta\rangle=\sum_{i=1}^na_i^*b_i$和$|\alpha\rangle\langle\beta|=\left[a_ib_j^*\right]_{n\times n}$。

拥有两个或以上的量子比特的量子系统通常被称为复合物理系统,复合物理系统的状态空间由子物理系统状态空间的张量积生成。量子状态由希尔伯特空间中的单位向量来描述,设$H_1$和$H_2$分别为$m$维和$n$维的希尔伯特空间,$H_1$和$H_2$的张量积可形成一个$m\times n$维希尔伯特空间$H=H_1\otimes H_2$。

张量积对应的矩阵运算为克罗内克乘积,设矩阵$A_{m\times n}$和$B_{s\times t}$,有:
$$
A\otimes B=\left[
\begin{matrix}
a_{11}B&a_{12}B&\cdots&a_{1n}B\\
a_{21}B&a_{22}B&\cdots&a_{2n}B\\
\vdots&\vdots&\ddots&\vdots\\
a_{m1}B&a_{m2}B&\cdots&a_{mn}B
\end{matrix}
\right]_{ms\times nt}
$$
设矩阵$A,B,C,D$以及常数$c\in\mathbb C$,满足运算规律:
$$
\begin{cases}
A\otimes(B+C)=A\otimes B+A\otimes C,\\
(B+C)\otimes A=B\otimes A+C\otimes A,\\
c(A\otimes B)=cA\otimes B=A\otimes cB,\\
(A\otimes B)(C\otimes D)=AC\otimes BD
\end{cases}
$$
例如二维希尔伯特空间$H_1,H_2$均有一组标准正交基${|0\rangle,|1\rangle}$,那么$H=H_1\otimes H_2$的标准正交基为${|00\rangle=|0\rangle\otimes|0\rangle=[1,0,0,0]^T,|01\rangle=|0\rangle\otimes|1\rangle=[0,0,1,0]^T,|10\rangle=[0,1,0,0]^T,|11\rangle=[0,0,0,1]^T}$。若有被$1$到$n$标记的系统,第$i$个系统状态为$|\psi_i\rangle$,那么生成的整个系统联合状态为$\displaystyle\bigotimes_{i=1}^n|\psi_i\rangle$。

设量子态$|\psi\rangle\in H_1\otimes H_2$,若$\not\exists\alpha\in H_1\lor\beta\in H_2$,使得$|\psi\rangle=|\alpha\rangle\otimes|\beta\rangle$,则称$|\psi\rangle$是纠缠的,否则称$|\psi\rangle$不处于纠缠态。如$\dfrac{1}{\sqrt 2}(|00\rangle+|11\rangle)$是纠缠态,而$\dfrac{1}{\sqrt 2}(|00\rangle+|01\rangle)=|0\rangle\otimes\dfrac{1}{\sqrt 2}(|0\rangle+|1\rangle)$是非纠缠态。最大叠加态(或称均衡叠加态)是指系数相等且包含所有基向量的叠加态。

单量子比特逻辑门

设$U$为酉矩阵,满足$UU^{\dagger}=I$。$|\psi_2\rangle=U|\psi_1\rangle$表示状态的演化。量子计算中各种形式的酉矩阵被称为量子逻辑门。

泡利矩阵

泡利矩阵也称自选矩阵,有Pauli-X门、Pauli-Y门和Pauli-Z门,分别简称X、Y和Z门。矩阵形式为:
$$
X=\sigma_x=\left[
\begin{matrix}
0&1\\
1&0
\end{matrix}
\right],Y=\sigma_y=\left[
\begin{matrix}
1&-i\\
i&0
\end{matrix}
\right],Z=\sigma_z=\left[
\begin{matrix}
1&0\\
0&-1
\end{matrix}
\right]
$$
可知X门相当于非门,将$|0\rangle\mapsto|1\rangle,|1\rangle\mapsto|0\rangle$。Y门作用相当于绕布洛赫球Y轴旋转角度$\pi$,Z门作用相当于绕Z轴旋转角度$\pi$。

H门

矩阵形式为$H=\dfrac{1}{\sqrt 2}\left[\begin{matrix}1&1\\1&-1\end{matrix}\right]$,常用表达式如下:
$$
\begin{align}
&H|0\rangle=\dfrac{1}{\sqrt 2}|0\rangle+\dfrac{1}{\sqrt 2}|1\rangle=|+\rangle,\\
&H|1\rangle=\dfrac{1}{\sqrt 2}|0\rangle-\dfrac{1}{\sqrt 2}|1\rangle=|-\rangle,\\
&H^{\otimes2}|00\rangle=\dfrac{1}{2}|00\rangle+\dfrac{1}{2}|01\rangle+\dfrac{1}{2}|10\rangle+\dfrac{1}{2}|11\rangle,\\
&H^{\otimes n}|00\cdots0\rangle=\left(\dfrac{1}{\sqrt 2}|0\rangle+\dfrac{1}{\sqrt 2}|1\rangle\right)^{\otimes n}=\dfrac{1}{\sqrt{2^n}}\left(\sum_{i=0}^{2^n-1}|i\rangle\right),\\
&H|x\rangle=\dfrac{1}{\sqrt2}|0\rangle+(-1)^n\dfrac{1}{\sqrt2}|1\rangle=\dfrac{1}{\sqrt2}\sum_{z=0}^1(-1)^{xz}|z\rangle,\\
&H^{\otimes n}|x_1\cdots x_n\rangle=\bigotimes_j\left(\dfrac{1}{\sqrt 2}\sum_{z_j=0}^1(-1)^{x_jz_j}|z_j\rangle\right)=\dfrac{1}{\sqrt{2^n}}\sum_{z_1,z_2,\cdots,z_n=0}^1(-1)^{\sum_jx_jz_j}|z_1z_2\cdots z_n\rangle
\end{align}
$$

旋转门

设$x\in\mathbb R,A^2=I$,则有$\exp(ixA)=(\cos x)I+i(\sin x)A$。旋转门有RX门、RY门和RZ门三种形式。
$$
\begin{align}
&\operatorname{RX}(\theta)=e^{-i\frac{\theta X}{2}}=\cos\left(\dfrac{\theta}{2}\right)I-i\sin\left(\dfrac{\theta}{2}\right)X=\left[
\begin{matrix}
\cos\left(\dfrac{\theta}{2}\right)&-i\sin\left(\dfrac{\theta}{2}\right)\\
-i\sin\left(\dfrac{\theta}{2}\right)&\cos\left(\dfrac{\theta}{2}\right)
\end{matrix}
\right],\\
&\operatorname{RY}(\theta)=e^{-i\frac{\theta Y}{2}}=\cos\left(\dfrac{\theta}{2}\right)I-i\sin\left(\dfrac{\theta}{2}\right)Y=\left[
\begin{matrix}
\cos\left(\dfrac{\theta}{2}\right)&-\sin\left(\dfrac{\theta}{2}\right)\\
\sin\left(\dfrac{\theta}{2}\right)&\cos\left(\dfrac{\theta}{2}\right)
\end{matrix}
\right],\\
&\operatorname{RZ}(\theta)=e^{-i\frac{\theta Z}{2}}=\cos\left(\dfrac{\theta}{2}\right)I-i\sin\left(\dfrac{\theta}{2}\right)Z=\left[
\begin{matrix}
e^{-i\frac{\theta}{2}}&0\\
0&e^{i\frac{\theta}{2}}
\end{matrix}
\right]
\end{align}
$$

总结

上述单比特门可以统一表示为:
$$
\operatorname{R}_{\phi}(\theta)=\left[
\begin{matrix}
\cos\left(\dfrac{\theta}{2}\right)&-i\sin\left(\dfrac{\theta}{2}\right)e^{-i\phi}\\
-i\sin\left(\dfrac{\theta}{2}\right)e^{i\phi}&\cos\left(\dfrac{\theta}{2}\right)
\end{matrix}
\right]
$$
通过控制$\theta$和$\phi$取值和矩阵变换,$\operatorname{R}_{\phi}(\theta)$可转为以上所有单比特门形式。如当$\theta=\phi=\dfrac{\pi}{2}$时$\operatorname{R}_{\phi}(\theta)$作两行交换即为H门。

对于单量子比特的任意酉算符$U$,均有ZYZ分解。存在$\alpha,\beta,\gamma,\delta$,使得$U=e^{i\alpha}\operatorname{RZ}(\beta)\operatorname{RY}(\gamma)\operatorname{RZ}(\delta)$。

除上面常用门外,单比特门还有相位门(S门)和$\dfrac{\pi}{8}$门(T门),矩阵形式分别为$S=\left[\begin{matrix}1&0\\0&1\end{matrix}\right]$和$T=\left[\begin{matrix}1&0\\0&e^{i\frac{\pi}{4}}\end{matrix}\right]$。