七、经典纠错码与量子纠错码的数学描述
本文主要讲述经典纠错编码和量子纠错编码所涉及的数学知识,通过一些数学理论来描述纠错码的原理。
1.抽象代数
代数运算
假定对于集合 A A A 中的任意元素 a a a 与集合 B B B 中的任意元素 b b b ,按照某一法则可以与某一集合 C C C 中唯一确定的元素 c c c 对应,则称这个法则为 A、B 到 C 的一个(二元)运算,如果 A = B = C A=B=C A=B=C 则称 A 在运算 “ ∗ ” “*” “∗” 下是封闭的。
在二元运算 “ ∗ ” “*” “∗” 下,若对于 A 的任意两个元素 a a a 和 b b b , a ∗ b = b ∗ a a*b=b*a a∗b=b∗a 成立,则称 A 是 可交换的 。若对于 A 的任意 3 个元素 a 、 b 、 c a、b、c a、b、c 在 “ ∗ ” “*” “∗” 下, a ∗ ( b ∗ c ) = ( a ∗ b ) ∗ c a*(b*c)=(a*b)*c a∗(b∗c)=(a∗b)∗c 成立,则称 A 是可结合的。
对于通常意义下的加法或乘法,我们就可以分别记为 a + b a+b a+b 或 a ⋅ b a\cdot b a⋅b ,整数集合中的加法和乘法都是可交换的和可结合的,因此整数集合是可交换和可结合的。
代数系统
如果一个集合 A 具有满足某些法则的代数运算,就称集合 A 为 代数系统 。群、环、域就是三个基本的代数系统。
-
群
满足以下四个条件的非空集合 G G G 称为 群:- G G G 在 “ ∗ ” “*” “∗” 之下是 封闭的,即对每一个元素 a ∈ G a\in G a∈G , b ∈ G b\in G b∈G ,则有唯一确定的元素 c = a ∗ b c=a*b c=a∗b ,且 c ∈ G c\in G c∈G。
- G G G 在 “ ∗ ” “*” “∗” 之下是 可结合的。即对任意元素 a 、 b 、 c , a ∈ G , b ∈ G , c ∈ G a、b、c,a\in G,b\in G ,c\in G a、b、c,a∈G,b∈G,c∈G ,有 a ∗ ( b ∗ c ) = ( a ∗ b ) ∗ c a*(b*c)=(a*b)*c a∗(b∗c)=(a∗b)∗c 。
- 在 G G G 中有一个元素 e e e (单位元),对任一 a ∈ G a\in G a∈G ,满足 a ∗ e = e ∗ a = a a*e=e*a=a a∗e=e∗a=a 。
- 在 G G G 中对任一 a ∈ G a\in G a∈G ,都有一个 a − 1 ∈ G a^{-1}\in G a−1∈G (逆元),满足 a ∗ a − 1 = a − 1 ∗ a = e a*a^{-1}=a^{-1}*a=e a∗a−1=a−1∗a=e 。
如果一个群在 “ ∗ ” “*” “∗” 之下是可交换的,则称 G G G 为 交换群 或 阿贝尔群 ,特别在加法之下,交换群称为 加法群。
若 G G G 的非空子集 H H H 对于 G G G 的运算也组成一个群,则称 H H H 为 G G G 的一个 子群 。非空子集 H H H 是 G G G 的子群的充要条件是:若 a ∈ H , b ∈ H , 则 a b − 1 ∈ H a\in H ,b\in H ,则\ \ ab^{-1}\in H a∈H,b∈H,则 ab−1∈H 。
一个元 a a a 的一切乘幂 a 0 = e , a , a 2 , ⋯ a^0=e,a,a^2,\cdots a0=e,a,a2,⋯ 的全体组成一个群,称为 循环群 ,循环群是交换群。
设 H H H 是群 G G G 的一个子群,若对每个元 g ∈ G g\in G g∈G,有 g H = H g gH=Hg gH=Hg ( g H gH gH 表示 g g g 与 H H H 中以切元素的乘积) ,即 g H g − 1 = H gHg^{-1}=H gHg−1=H 则称 H H H 为 G G G 的一个 不变子群(或正规子群) , g H gH gH 和 H g Hg Hg 分别称为 G G G 对 H H H 含元素 g g g 的左陪集和右陪集,因此含同一元素的不变子群的左陪集和右陪集市重合的。把陪集堪称元素时,一切陪集构成一个群,称为 G G G 对 H H H 的 商群,记作 G H \frac{G}{H} HG。
-
环
一个非空集 R R R 有加法和乘法两个二元运算,若满足以下条件,就称 R R R 为一个环。- R R R 是一个 加法群。
- 对于乘法满足 结合律。即对任何
a
、
b
、
c
,
a
∈
R
,
b
∈
R
,
c
∈
R
a、b、c,a\in R,b\in R,c\in R
a、b、c,a∈R,b∈R,c∈R,有
a ( b c ) = ( a b ) c a(bc)=(ab)c a(bc)=(ab)c - 对于加法和乘法满足 左、右分配律。即对任何
a
、
b
、
c
,
a
∈
R
,
b
∈
R
,
c
∈
R
a、b、c,a\in R,b\in R,c\in R
a、b、c,a∈R,b∈R,c∈R,有
a ( b + c ) = a b + a c , ( b + c ) a = b a + c a a(b+c)=ab+ac,(b+c)a=ba+ca a(b+c)=ab+ac,(b+c)a=ba+ca
一个环如果满足乘法的交换律 a b = b a ab=ba ab=ba ,则称 R R R 为 交换环。
-
域
一个具有单位元的交换环 R R R ,若至少含有一个非零元,并且每个非零元 a a a 恒有逆 a − 1 a^{-1} a−1 ,则称 R R R 为一个 域。
2.从数学角度看经典代数纠错码
在数字通信中,信息用有限个离散数字位表示,每个位(bit)是有限集合 S S S 中的元素。若 S S S 有 m m m 个元素 ( m ≥ 2 ) (m\geq 2) (m≥2) ,可以取 S S S 为整数模 m m m 的同余类 0 ‾ , 1 ‾ , ⋯ , m − 1 ‾ \overline{0},\overline{1},\cdots,\overline{m-1} 0,1,⋯,m−1 形成的环,表示成 Z m Z_m Zm 。这时 Z m Z_m Zm 中有加减乘运算,从而可以使用数论工具。当 m = p m=p m=p 是某个素数 p p p 的方幂时,通常取 S S S 为 q = p q=p q=p 元有限域,表示成 F q F_q Fq ,这时可以对 F q F_q Fq 中的元素进行四则运算,使用有限域和有限域理论的一系列代数性质。
这里我们只讨论 q q q 元有限域 F q F_q Fq 上的经典纠错码。在通信领域我们最常使用 q = 2 q=2 q=2 的情形,即最简单的二元域 F 2 = { 0 , 1 } F_2=\{0,1\} F2={0,1} ,其中 1 + 1 = 0 1+1=0 1+1=0 ,其余运算都是自然的。
对于每个正整数 k k k ,以 F q k F_q^k Fqk 表示有限域 F q F_q Fq 上的 k k k 维向量空间,其中元素是长为 k k k 的向量: v = ( v 1 , v 2 , ⋯ , v k ) ( v ∈ F q ) v=(v_1,v_2,\cdots,v_k) (v\in F_q) v=(v1,v2,⋯,vk)(v∈Fq) 。这样的向量共有 q k q^k qk 个,用来表示不同的信息。
一般的, q k q^k qk 个信息可以用 F q F_q Fq 上长度为 k k k 的向量来表示。但是用这种方式是不能纠错的,因为每个向量都表示一种信息,如果某个 bit 发生了错误,会被解码成其他的信息,从而导致出错。
为了使通信系统有纠错能力,办法是:将 q k q^k qk 个信息用比 k k k 长的向量来表示,取 n > k n>k n>k , q k q^k qk 个信息用 F q n F_q^n Fqn 中 q n q^n qn 个向量当中的一部分向量( q k q^k qk 个)来表示,它们形成 F q n F_q^n Fqn 的一个 q k q^k qk 元子集 S S S 。 S S S 中向量代表信息,而其余 q n − q k q^n-q^k qn−qk 个向量是没有意义的。
F n q F_n^q Fnq 中有这么多向量,我们应该选择哪些来表达信息呢?一个好的 S S S 应该能够在信道产生少数几位错误 ε \varepsilon ε 时,让接收到的 y = x + ε y=x+\varepsilon y=x+ε 不属于 S S S ,所以接收方能够检查出错误,更进一步可以检查出错误发生在哪。
有了上面的理解,我们给出数学的形式化的定义:
F n q F_n^q Fnq 中每个子集 S S S 都叫做一个纠错码。 S S S 中的元素,即向量称为 码字 , n n n 叫做 S S S 的 码长, K = ∣ S ∣ K=|S| K=∣S∣ 表示 码字个数( S S S 中元素的个数,即可以表示的信息个数), k = log q K k=\log_q^K k=logqK 叫做 信息的位数 ,它表示没有经过编码的原信息由几位码元组成。
对于
u
=
(
u
1
,
⋯
,
u
n
)
∈
F
q
n
,
v
=
(
v
1
,
⋯
,
v
n
)
∈
F
q
n
u=(u_1,\cdots,u_n)\in F_q^n,v=(v_1,\cdots,v_n)\in F_q^n
u=(u1,⋯,un)∈Fqn,v=(v1,⋯,vn)∈Fqn ,定义向量
u
u
u 的 汉明权 (Hamming weight) 为非零分量
u
i
u_i
ui 的个数:
w
H
(
u
)
=
#
{
i
∣
1
≤
i
≤
n
,
u
i
≠
0
}
w_H(u)=\#\{i|1\leq i \leq n, u_i \neq0 \}
wH(u)=#{i∣1≤i≤n,ui=0}
而向量
u
u
u 和
v
v
v 的 汉明距离
d
H
(
u
,
v
)
d_H(u,v)
dH(u,v) 为它们相异位的个数:
d
H
(
u
,
v
)
=
#
{
i
∣
1
≤
i
≤
n
,
u
i
≠
v
i
}
=
w
H
(
u
−
v
)
d_H(u,v)=\#\{ i|1\leq i \leq n ,u_i \neq v_i \}=w_H(u-v)
dH(u,v)=#{i∣1≤i≤n,ui=vi}=wH(u−v)
容易验证,Hamming 距离对于 u , v , w ∈ F q n u,v,w\in F_q^n u,v,w∈Fqn 满足以下的性质:
- d H ( u , v ) ≥ 0 d_H(u,v) \geq 0 dH(u,v)≥0 ,并且当 u = v u=v u=v 时 d H ( u , v ) = 0 d_H(u,v)=0 dH(u,v)=0
- d H ( u , v ) = d H ( v , u ) d_H(u,v) = d_H(v,u) dH(u,v)=dH(v,u) (对称性)
- d H ( u , w ) ≤ d H ( u , v ) + d H ( u , w ) d_H(u,w) \leq d_H(u,v) + d_H(u,w) dH(u,w)≤dH(u,v)+dH(u,w)
对于码长为
n
n
n 的
q
q
q 元码
S
S
S (即
S
S
S 为
F
q
n
F_q^n
Fqn 的非空子集合),
S
S
S 的最小距离
d
=
d
(
S
)
d=d(S)
d=d(S) 定义为
S
S
S 中任意两个不同码字之间 Hamming 距离的最小值,即:
d
=
d
(
S
)
=
m
i
n
{
d
H
(
u
,
v
)
∣
u
,
v
∈
S
,
u
≠
v
}
d=d(S)=min\{d_H(u,v)|u,v\in S,u\neq v\}
d=d(S)=min{dH(u,v)∣u,v∈S,u=v}
定理:
若 d d d 为码 S S S 的最小距离,则码 S S S 可用来检查小于等于 d − 1 d-1 d−1 位错误,也可以纠正小于等于 [ d − 1 2 ] \left[ \begin{matrix} \frac{d-1}{2} \end{matrix} \right] [2d−1] 位错误,即取不大于 d − 1 2 \frac{d-1}{2} 2d−1 的整数。
该定理表明了码 S S S 的最小距离 d d d 可以用来反应该码的纠错能力
对于一个 q q q 元(即 F q F_q Fq 上)纠错码 S S S 码长 n n n 、码字数 K K K 和最小距离 d d d 是三个基本参数,这个码可以表示成 ( n , K , d ) (n,K,d) (n,K,d) 。又因为 k = log q K k=\log_q^K k=logqK ,所以该码还可以表示成 [ n , k , d ] [n,k,d] [n,k,d] 。
由于 k < n k<n k<n ,如果不考虑纠错,一个信息用 k k k 位向量传送即可。现在为了有纠错能力,改用 n 位向量来传送,用 k n \frac{k}{n} nk 来表示纠错码的效率。因此,我们是在损失效率之下得到了纠错功能,一个好的纠错码就是指有大的 k n \frac{k}{n} nk (高效率) 和大的 d d d (纠错性能强) 。
不同的纠错码的效率不同,对不同的纠错码进行解码时也会有效率的高低,好的纠错码可以快速地解码,在工程中使用时要选择编码和解码效率都足够高的方式。为了寻求性能好的纠错码和好的译码算法,我们要研究 F q n F_q^n Fqn 的一些特殊的子集合 S S S ,即将 S S S 加上某些代数结构,从而可以使用更多的代数工具。一个自然的想法时考虑 F q n F_q^n Fqn 的 F q F_q Fq 向量子空间。
F
q
n
F_q^n
Fqn 的一个
F
q
F_q
Fq 向量子空间
C
C
C 称作是码长为
n
n
n 的
q
q
q 元线性码。设
k
k
k 是向量子空间
C
C
C 的维数 (
1
≤
k
≤
n
1\leq k\leq n
1≤k≤n),则
C
C
C 存在一组基
u
1
,
⋯
,
u
k
u_1,\cdots,u_k
u1,⋯,uk ,其中:
u
i
=
(
a
i
1
,
⋯
,
a
i
n
)
(
i
≤
i
≤
k
)
(
a
i
j
∈
F
q
)
u_i=(a_{i1},\cdots,a_{in})(i \leq i \leq k)(a_{ij} \in F_q)
ui=(ai1,⋯,ain)(i≤i≤k)(aij∈Fq)
而
C
C
C 中每个码字都可以唯一的表示为它们的线性组合:
c
=
b
1
u
1
+
⋯
+
b
k
u
k
(
b
i
∈
F
q
)
c=b_1u_1+\cdots+b_ku_k(b_i \in F_q)
c=b1u1+⋯+bkuk(bi∈Fq)
向量空间的维数 k k k 就是原信息的位数。
以
u
1
,
⋯
,
u
k
u_1,\cdots,u_k
u1,⋯,uk 为行的矩阵
G
=
[
u
1
u
2
⋮
u
k
]
=
[
a
11
a
12
⋯
a
1
n
⋯
⋯
⋯
⋯
a
k
1
a
k
2
⋯
a
k
n
]
G=\left[ \begin{matrix} u_1 \\ u_2 \\ \vdots \\ u_k \end{matrix} \right]= \left[ \begin{matrix} a_{11} & a_{12} & \cdots & a_{1n} \\ \cdots & \cdots & \cdots & \cdots \\ a_{k1} & a_{k2} & \cdots & a_{kn} \\ \end{matrix} \right]
G=⎣⎢⎢⎢⎡u1u2⋮uk⎦⎥⎥⎥⎤=⎣⎡a11⋯ak1a12⋯ak2⋯⋯⋯a1n⋯akn⎦⎤
称作线性码 C C C 的一个生成矩阵。这时 F q F_q Fq 上的一个 k k k 行 n n n 列矩阵,并且矩阵 G G G 的秩为 k k k 。
对于每个
c
∈
F
q
n
c\in F_q^n
c∈Fqn ,
c
c
c 是码字(
c
∈
F
q
n
c\in F_q^n
c∈Fqn)
⇔
c
=
b
1
u
1
+
⋯
+
b
k
u
k
\Leftrightarrow c=b_1u_1+\cdots+b_ku_k
⇔c=b1u1+⋯+bkuk
⇔
c
=
(
b
1
+
b
2
+
⋯
+
b
k
)
[
u
1
u
2
⋮
u
k
]
=
(
b
1
+
b
2
+
⋯
+
b
k
)
G
\Leftrightarrow c=(b_1+b_2+\cdots+b_k) \left[ \begin{matrix} u_1 \\ u_2 \\ \vdots \\ u_k \\ \end{matrix} \right] = (b_1+b_2+\cdots+b_k)G
⇔c=(b1+b2+⋯+bk)⎣⎢⎢⎢⎡u1u2⋮uk⎦⎥⎥⎥⎤=(b1+b2+⋯+bk)G
K = q k K=q^k K=qk 个信息本来可以用 F q k F_q^k Fqk 中长为 k 的向量 ( b 1 , b 2 , ⋯ , b k ) (b_1,b_2,\cdots,b_k) (b1,b2,⋯,bk) 表示,现在为了有纠错能力,将每个 ( b 1 , b 2 , ⋯ , b k ) (b_1,b_2,\cdots,b_k) (b1,b2,⋯,bk) 改用 F q k F_q^k Fqk 中长为 n n n 的向量 c = ( b 1 , b 2 , ⋯ , b k ) G c=(b_1,b_2,\cdots,b_k)G c=(b1,b2,⋯,bk)G 。这称为 纠错编码 ,所以对于线性码,纠错编码相当于乘以生成矩阵 G G G 。
从线性代数我们可以知道,
F
q
n
F_q^n
Fqn 的一个
k
k
k 维线性子空间还可以看成是变量
x
1
∼
x
n
x_1 \sim x_n
x1∼xn 在
F
q
F_q
Fq 上(即系数属于
F
q
F_q
Fq)
n
−
k
n-k
n−k 个齐次线性方程组
{
b
11
x
1
+
b
12
x
2
+
⋯
+
b
1
n
x
n
=
0
b
21
x
1
+
b
22
x
2
+
⋯
+
b
2
n
x
n
=
0
⋯
b
n
−
k
,
1
x
1
+
b
n
−
k
,
2
x
2
+
⋯
+
b
n
−
k
,
n
x
n
=
0
\left\{ \begin{aligned} &b_{11}x_1+b_{12}x_2+\cdots+b_{1n}x_n =0 \\ &b_{21}x_1+b_{22}x_2+\cdots+b_{2n}x_n =0 \\ &\cdots \\ &b_{n-k,1}x_1+b_{n-k,2}x_2+\cdots+b_{n-k,n}x_n =0 \end{aligned} \right.
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧b11x1+b12x2+⋯+b1nxn=0b21x1+b22x2+⋯+b2nxn=0⋯bn−k,1x1+bn−k,2x2+⋯+bn−k,nxn=0
的解空间。其中系数矩阵
H
=
(
b
i
j
)
1
≤
i
≤
n
−
k
,
1
≤
j
≤
n
H=(b_{ij})_{1\leq i \leq n-k,1\leq j \leq n}
H=(bij)1≤i≤n−k,1≤j≤n
是
F
q
F_q
Fq 上
n
−
k
n-k
n−k 行
n
n
n 列的矩阵,并且
H
H
H 的秩为
n
−
k
n-k
n−k 。
H
H
H 叫做线性码
C
C
C 的一个校验矩阵。上面的其次方程可以写为
H
[
x
1
x
2
⋮
x
n
]
=
H
x
T
=
0
∈
F
n
n
−
k
H\left[ \begin{matrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{matrix} \right]= Hx^T=0 \in F_n^{n-k}
H⎣⎢⎢⎢⎡x1x2⋮xn⎦⎥⎥⎥⎤=HxT=0∈Fnn−k
其中
x
=
(
x
1
,
⋯
,
x
n
)
x=(x_1,\cdots,x_n)
x=(x1,⋯,xn) ,
x
T
x^T
xT 表示向量
x
x
x 的转置。所以对每个
v
∈
F
q
n
v\in F_q^n
v∈Fqn
v
∈
C
⇔
H
v
T
=
0
v\in C \Leftrightarrow Hv^T=0
v∈C⇔HvT=0
也就是说利用校验矩阵乘以 v T v^T vT 可以判断 v v v 是否为码字。即线性码的检错问题只需要简单地乘以校验码即可:若收到 y y y ,而 H y T ≠ 0 Hy^T\neq 0 HyT=0 ,则 y y y 不属于 C C C ,从而判断信道产生错误。
校验矩阵 H H H 还能用来决定线性码的最小距离。
定理:
设 C C C 是参数 [ n , k , d ] [n,k,d] [n,k,d] 的 q q q 元线性码,则
C C C 的最小距离 d d d 等于 C C C 中非零码字 Hamming 权的最小值
d = m i n { w H ( c ) ∣ 0 ≠ c ∈ C } d=min\{ w_H(c)|0 \neq c\in C\} d=min{wH(c)∣0=c∈C}将 C C C 的校验矩阵 H H H 写成 n n n 个列向量
H = [ v 1 v 2 ⋯ v n ] , v j = [ b 1 , j v 2 , j ⋮ v n , j ] ∈ F q n − k H=\left[ \begin{matrix} v_1 & v_2 & \cdots & v_n \end{matrix} \right], v_j= \left[ \begin{matrix} b_{1,j} \\ v_{2,j} \\ \vdots \\ v_{n,j} \end{matrix} \right] \in F_q^{n-k} H=[v1v2⋯vn],vj=⎣⎢⎢⎢⎡b1,jv2,j⋮vn,j⎦⎥⎥⎥⎤∈Fqn−k则线性码 C C C 的最小距离 d d d 是满足以下两个条件的正整数 d d d
(i) H H H 中任意 d − 1 d-1 d−1 个不同的列向量都是在 F q F_q Fq 内线性无关的
(ii)存在 H H H 中 d d d 个不同的列向量,它们是在 F q F_q Fq 内线性无相关的
那么我们如何判断一个纠错码的好坏呢?在三个基本参数 n 、 k 、 d n、k、d n、k、d 之间有互相制约的关系。这些关系用不等式来刻画,称作是 纠错码的界 。使不等式达到等式的码就是某种意义上的最优码。下面是经典纠错码的 3 个最著名的界。
定理 :
若存在参数为 [ n , k , d ] [n,k,d] [n,k,d] 的 q q q 元纠错码,则
(i)(Hamming 界)
q n − k ≥ ∑ i = 0 [ d − 1 2 ] ( q − 1 ) i ( n i ) q^{n-k}\geq \sum_{i=0}^{[\frac{d-1}{2}]}(q-1)^i \left( \begin{matrix} n \\ i \end{matrix} \right) qn−k≥i=0∑[2d−1](q−1)i(ni)其中 ( n i ) \left( \begin{matrix} n \\ i \end{matrix} \right) (ni) 表示从 n n n 个物体中取 i i i 个的组合。
(ii)(Singleton 界) n ≥ k + d − 1 n\geq k+d-1 n≥k+d−1
(Gilber - Varshamov 界) 设 1 ≤ d ≤ n , 2 ≤ K ≤ q n 1 \leq d \leq n,2 \leq K \leq q^n 1≤d≤n,2≤K≤qn , q q q 为素数幂。如果
( k − 1 ) ( ∑ i = 1 d − 1 ( q − 1 ) i ( n i ) ) < q n (k-1) \left( \begin{matrix} \sum_{i=1}^{d-1}(q-1)^i \left( \begin{matrix} n \\ i\end{matrix} \right) \end{matrix} \right)<q^n (k−1)(∑i=1d−1(q−1)i(ni))<qn则必存在参数为 ( n , K , d ) (n,K,d) (n,K,d) 的 q q q 元纠错码。
3.量子纠错码的概念
一个量子位 (qubit) 是二维复向量空间
C
2
C^2
C2 中的非零向量,量子物理中把
C
2
C^2
C2 的一组基表示成
∣
0
⟩
|0\rangle
∣0⟩ 和
∣
1
⟩
|1\rangle
∣1⟩ ,所以一个量子位为
∣
φ
⟩
=
α
∣
0
⟩
+
β
∣
1
⟩
(
α
∈
C
,
β
∈
C
,
(
α
,
β
)
≠
(
0
,
0
)
)
|\varphi\rangle=\alpha|0\rangle+\beta|1\rangle \ \ \ \ (\alpha\in C,\beta\in C,(\alpha,\beta)\neq (0,0))
∣φ⟩=α∣0⟩+β∣1⟩ (α∈C,β∈C,(α,β)=(0,0))
由于
∣
0
⟩
|0\rangle
∣0⟩ 和
∣
1
⟩
|1\rangle
∣1⟩ 表示两个基态,我们可以将量子态写成矩阵的形式
∣
φ
⟩
=
[
α
β
]
|\varphi\rangle= \left[ \begin{matrix} \alpha \\ \beta \end{matrix} \right]
∣φ⟩=[αβ]
而多量子系统的整体状态可以表示为
∣
a
1
⟩
⊗
∣
a
2
⟩
⊗
⋯
⊗
∣
a
n
⟩
,
(
a
i
∈
{
0
,
1
}
=
F
2
,
(
1
≤
i
≤
n
)
)
|a_1\rangle\otimes|a_2\rangle\otimes\cdots\otimes|a_n\rangle , (a_i\in \{0,1\}=F_2,(1\leq i \leq n))
∣a1⟩⊗∣a2⟩⊗⋯⊗∣an⟩,(ai∈{0,1}=F2,(1≤i≤n))
a
i
a_i
ai 表示第
i
i
i 个量子的状态。同理,我们也可以用矩阵的形式表示该状态,对于每个量子状态是一个二维矩矢量,要想表示 n 个 qubit 的状态,我们需要一个
2
n
2^n
2n 维的矢量,一个
2
n
2^n
2n 维的矢量可以用一组
2
n
2^n
2n 个互相正交的基矢来表示,这些基矢的 复线性组合 就可以表示整体的状态了,它们构成了一个
2
n
2^n
2n 维的复向量空间,
2
n
2^n
2n 维的复向量空间有一组基
∣
a
1
⟩
⊗
∣
a
2
⟩
⊗
⋯
⊗
∣
a
n
⟩
,
(
a
i
∈
{
0
,
1
}
=
F
2
,
(
1
≤
i
≤
n
)
)
|a_1\rangle\otimes|a_2\rangle\otimes\cdots\otimes|a_n\rangle,\ \ \ (a_i\in\{0,1\}=F_2,(1\leq i\leq n)\ )
∣a1⟩⊗∣a2⟩⊗⋯⊗∣an⟩, (ai∈{0,1}=F2,(1≤i≤n) )
这个表示向量空间中的基矢的向量也可以简单记成
∣
a
1
a
2
⋯
a
n
⟩
=
∣
a
⟩
|a_1a_2\cdots a_n\rangle=|a\rangle
∣a1a2⋯an⟩=∣a⟩ ,其中
a
=
(
a
1
,
a
2
,
⋯
,
a
n
)
∈
F
2
n
a=(a_1,a_2,\cdots,a_n)\in F_2^n
a=(a1,a2,⋯,an)∈F2n 。所以对于一个多量子系统整体的量子状态
∣
φ
⟩
|\varphi\rangle
∣φ⟩ 是它们的线性组合
∣
φ
⟩
=
∑
(
a
1
,
a
2
,
⋯
,
a
n
)
∈
F
2
c
(
a
1
,
a
2
,
⋯
,
a
n
)
∣
a
1
a
2
⋯
a
n
⟩
=
∑
(
a
1
,
a
2
,
⋯
,
a
n
)
∈
F
2
c
(
a
)
∣
a
⟩
|\varphi\rangle= \sum_{(a_1,a_2,\cdots,a_n)\in F_2} c(a_1,a_2,\cdots,a_n)|a_1a_2\cdots a_n\rangle= \sum_{(a_1,a_2,\cdots,a_n)\in F_2}c(a)|a\rangle
∣φ⟩=(a1,a2,⋯,an)∈F2∑c(a1,a2,⋯,an)∣a1a2⋯an⟩=(a1,a2,⋯,an)∈F2∑c(a)∣a⟩
其中 c ( a 1 , a 2 , ⋯ , a n ) = c ( a ) ∈ C c(a_1,a_2,\cdots,a_n)=c(a)\in C c(a1,a2,⋯,an)=c(a)∈C (不全为零)。
我们定义对于
2
n
2^n
2n 维复向量空间中的两个矢量
∣
v
⟩
=
∑
a
c
(
a
)
∣
a
⟩
,
∣
u
⟩
=
∑
a
d
(
a
)
∣
a
⟩
|v\rangle = \sum_a c(a)|a\rangle,|u\rangle=\sum_a d(a)|a\rangle
∣v⟩=a∑c(a)∣a⟩,∣u⟩=a∑d(a)∣a⟩
它们的厄米特内积为
⟨
v
∣
u
⟩
=
∑
a
∈
F
2
n
c
(
a
)
‾
d
(
a
)
∈
C
\langle v|u \rangle=\sum_{a\in F_2^n} \overline{c(a)}d(a) \in C
⟨v∣u⟩=a∈F2n∑c(a)d(a)∈C
其中 c ( a ) ‾ \overline{c(a)} c(a) 表示复数 c ( a ) c(a) c(a) 的共轭复数。
在量子物理中:
- 彼此相差一个非零复数因子的两个非零向量看成是同一个量子态。即若 ∣ v ⟩ = α ∣ u ⟩ |v\rangle = \alpha|u\rangle ∣v⟩=α∣u⟩ ,其中 α \alpha α 是非零复数,则 ∣ v ⟩ |v\rangle ∣v⟩ 和 ∣ u ⟩ |u\rangle ∣u⟩ 为同一个量子态。
- ∣ v ⟩ |v\rangle ∣v⟩ 和 ∣ u ⟩ |u\rangle ∣u⟩ 是完全可区分的,是指 ⟨ v ∣ u ⟩ = 0 \langle v|u \rangle=0 ⟨v∣u⟩=0 (正交)
V = ( C 2 ) ⊗ n = C 2 n V=(C^2)^{\otimes n}=C^{2n} V=(C2)⊗n=C2n 中每个复向量子空间 Q Q Q 都叫做一个 量子码 ,可以用来编码原量子信息。 n n n 叫做 Q Q Q 的 码长 , Q Q Q 的维数记为 K = d i m Q K=dim Q K=dimQ ,而令 k = log 2 K k=\log_2K k=log2K 。由 1 ≤ K ≤ 2 n 1\leq K \leq 2^n 1≤K≤2n 可知 0 ≤ k ≤ n 0\leq k \leq n 0≤k≤n 。
在经典的数字通信中,信息 x = ( x 1 , ⋯ , x n ) x=(x_1,\cdots,x_n) x=(x1,⋯,xn) 和错误 ε = ( ε 1 , ⋯ , ε n ) \varepsilon=(\varepsilon_1,\cdots,\varepsilon_n) ε=(ε1,⋯,εn) 都是 F q n F_q^n Fqn 中的向量,错误 ε \varepsilon ε 对信息 x x x 的作用是相加: y = x + ϵ y=x+\epsilon y=x+ϵ 。在量子通信中,信息是 V V V 中非零向量 ∣ v ⟩ |v\rangle ∣v⟩ ,而错误是复空间 V V V 上的 酉算子 e e e , e e e 在 V V V 上的作用是线性变换 e ∣ v ⟩ e|v\rangle e∣v⟩。
每个 qubit 为
∣
φ
⟩
=
α
∣
0
⟩
+
β
∣
1
⟩
|\varphi\rangle = \alpha |0\rangle +\beta|1\rangle
∣φ⟩=α∣0⟩+β∣1⟩ ,根据 P . Shor 的简化,只需要考虑 3 中错误作用,它们的矩阵表示为 3 个 Pauli 矩阵:
σ
x
=
[
0
1
1
0
]
,
σ
z
=
[
1
0
0
−
1
]
,
σ
z
=
i
σ
x
σ
z
=
[
0
−
i
i
0
]
(
i
=
−
1
)
\sigma_x= \left[ \begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix} \right], \sigma_z= \left[ \begin{matrix} 1 & 0 \\ 0 & -1 \end{matrix} \right], \sigma_z= i\sigma_x\sigma_z=\left[ \begin{matrix} 0 & -i \\ i & 0 \end{matrix} \right](i=\sqrt{-1})
σx=[0110],σz=[100−1],σz=iσxσz=[0i−i0](i=−1)
在复空间
V
=
C
2
⊗
C
2
⊗
⋯
⊗
C
2
=
(
C
2
)
⊗
n
V=C^2 \otimes C^2 \otimes\cdots \otimes C^2=(C^2)^{\otimes n}
V=C2⊗C2⊗⋯⊗C2=(C2)⊗n 上的错误作用有形式
e
=
i
λ
w
1
⊗
⋯
⊗
w
n
e=i^\lambda w_1\otimes \cdots \otimes w_n
e=iλw1⊗⋯⊗wn
其中 0 ≤ λ ≤ 3 , w 1 ∈ { I 2 , σ x , σ y , σ z } 0\leq \lambda \leq 3 ,w_1\in \{I_2,\sigma_x,\sigma_y,\sigma_z\} 0≤λ≤3,w1∈{I2,σx,σy,σz} , I 2 = [ 1 0 0 1 ] I_2=\left[ \begin{matrix} 1 & 0 \\ 0 & 1 \end{matrix} \right] I2=[1001]表示无错误。
e
e
e 在基向量
∣
a
⟩
=
∣
a
2
⟩
⊗
∣
a
2
⟩
⊗
⋯
⊗
∣
a
n
⟩
(
a
=
(
a
1
,
a
2
,
⋯
,
a
n
)
∈
F
2
n
)
|a\rangle=|a_2\rangle\otimes|a_2\rangle\otimes\cdots\otimes|a_n\rangle \ \ \ \ (a=(a_1,a_2,\cdots,a_n)\in F_2^n)
∣a⟩=∣a2⟩⊗∣a2⟩⊗⋯⊗∣an⟩ (a=(a1,a2,⋯,an)∈F2n)
上的作用是按分量作用:
e
∣
a
⟩
=
i
λ
(
w
1
∣
a
1
⟩
)
⊗
(
w
2
∣
a
2
⟩
)
⊗
⋯
⊗
(
w
n
∣
a
n
⟩
)
e|a\rangle=i^\lambda(w_1|a_1\rangle)\otimes(w_2|a_2\rangle) \otimes\cdots\otimes(w_n|a_n\rangle)
e∣a⟩=iλ(w1∣a1⟩)⊗(w2∣a2⟩)⊗⋯⊗(wn∣an⟩)
由于
e
e
e 是酉算子,所以
e
e
e 在任意量子态
∣
φ
⟩
=
∑
a
∈
F
2
n
c
(
a
)
∣
a
⟩
|\varphi\rangle=\sum_{a\in F_2^n}c(a)|a\rangle
∣φ⟩=a∈F2n∑c(a)∣a⟩
上的作用为
e
∣
φ
⟩
=
∑
a
∈
F
2
n
c
(
a
)
e
∣
a
⟩
e|\varphi\rangle=\sum_{a\in F_2^n}c(a) e |a\rangle
e∣φ⟩=a∈F2n∑c(a)e∣a⟩
例如,当
n
=
2
n=2
n=2 时,对于
e
=
σ
x
⊗
σ
y
,
∣
φ
⟩
=
α
∣
00
⟩
+
β
∣
10
⟩
e=\sigma_x\otimes\sigma_y,|\varphi\rangle=\alpha|00\rangle+\beta|10\rangle
e=σx⊗σy,∣φ⟩=α∣00⟩+β∣10⟩ ,则
e
∣
φ
⟩
=
(
σ
x
⊗
σ
y
)
(
α
∣
0
⟩
⊗
∣
0
⟩
+
β
∣
1
⟩
⊗
∣
0
⟩
)
=
α
(
σ
x
∣
0
⟩
⊗
σ
y
∣
0
⟩
)
+
β
(
σ
x
∣
1
⟩
⊗
σ
y
∣
0
⟩
)
=
α
∣
1
⟩
⊗
i
∣
1
⟩
+
β
∣
0
⟩
⊗
i
∣
1
⟩
=
α
i
∣
11
⟩
+
β
i
∣
01
⟩
\begin{aligned} e|\varphi\rangle & = (\sigma_x\otimes \sigma_y)(\alpha|0\rangle \otimes |0\rangle+\beta|1\rangle \otimes |0\rangle) \\ & =\alpha(\sigma_x |0\rangle \otimes \sigma_y |0\rangle) + \beta(\sigma_x|1\rangle \otimes \sigma_y|0\rangle) \\ &=\alpha|1\rangle \otimes i |1\rangle+\beta |0\rangle \otimes i |1\rangle \\ & =\alpha i |11\rangle + \beta i |01\rangle \end{aligned}
e∣φ⟩=(σx⊗σy)(α∣0⟩⊗∣0⟩+β∣1⟩⊗∣0⟩)=α(σx∣0⟩⊗σy∣0⟩)+β(σx∣1⟩⊗σy∣0⟩)=α∣1⟩⊗i∣1⟩+β∣0⟩⊗i∣1⟩=αi∣11⟩+βi∣01⟩
所有错误算子组成的集合
E
=
E
n
E=E_n
E=En
E
n
=
{
i
λ
w
1
⊗
w
2
⊗
⋯
⊗
w
n
∣
0
≤
λ
≤
3
,
w
i
∈
{
I
2
,
σ
x
,
σ
y
,
σ
z
}
(
1
≤
i
≤
n
)
}
E_n=\{ i^{\lambda}w_1 \otimes w_2 \otimes \cdots \otimes w_n | \ 0\leq \lambda \leq 3 , w_i \in \{ I_2,\sigma_x,\sigma_y,\sigma_z \} (1 \leq i \leq n) \}
En={iλw1⊗w2⊗⋯⊗wn∣ 0≤λ≤3,wi∈{I2,σx,σy,σz}(1≤i≤n)}
形成一个乘法群,其中
e
=
i
λ
w
1
⊗
⋯
⊗
w
n
e=i^\lambda w_1\otimes \cdots \otimes w_n
e=iλw1⊗⋯⊗wn 和
e
′
=
i
λ
′
w
1
′
⊗
⋯
⊗
w
n
′
e'=i^{\lambda'} w_1'\otimes \cdots \otimes w_n'
e′=iλ′w1′⊗⋯⊗wn′ 的乘法(即两种错误同时发生时的表示方法)定义为
e
e
′
=
i
λ
+
λ
′
(
w
1
w
1
′
)
⊗
⋯
⊗
(
w
n
w
n
′
)
ee'=i^{\lambda+\lambda'}(w_1w_1')\otimes \cdots \otimes(w_nw_n')
ee′=iλ+λ′(w1w1′)⊗⋯⊗(wnwn′)
例如,当
n
=
2
n=2
n=2 时,对于
e
=
I
2
⊗
σ
x
e=I_2 \otimes \sigma_x
e=I2⊗σx 和
e
′
=
σ
y
⊗
σ
x
e'=\sigma_y \otimes \sigma_x
e′=σy⊗σx ,有
e
e
′
=
σ
y
⊗
σ
x
σ
z
=
−
i
σ
y
⊗
σ
y
=
i
3
σ
y
⊗
σ
y
e
′
e
=
σ
y
⊗
σ
z
σ
x
=
i
σ
y
⊗
σ
y
\begin{aligned} & ee'=\sigma_y \otimes \sigma_x \sigma_z=-i \sigma_y \otimes \sigma_y= i^3 \sigma_y \otimes\sigma_y \\ & e'e=\sigma_y \otimes \sigma_z \sigma_x= i \sigma_y \otimes\sigma_y \end{aligned}
ee′=σy⊗σxσz=−iσy⊗σy=i3σy⊗σye′e=σy⊗σzσx=iσy⊗σy
所以
E
n
E_n
En 不是交换群。容易看出,对任何
e
e
e ,
e
′
∈
E
n
e' \in E_n
e′∈En ,均有
e
e
′
=
e
′
e
ee'=e'e
ee′=e′e 或
e
e
′
=
−
e
′
e
ee'=-e'e
ee′=−e′e ,
e
2
=
±
I
2
,
∣
E
n
∣
=
4
n
=
1
e^2=\pm I_2,|E_n|=4^{n=1}
e2=±I2,∣En∣=4n=1,所以
E
n
E_n
En 是
4
n
+
1
4^{n+1}
4n+1 阶(元素个数)非交换群。这个群的中心为 4 元群:
C
(
E
)
=
{
i
λ
=
i
λ
I
i
⊗
⋯
⊗
I
2
0
≤
λ
≤
3
}
C(E)=\{ i^\lambda = i^\lambda I_i \otimes \cdots \otimes I_2 \ 0 \leq \lambda \leq 3\}
C(E)={iλ=iλIi⊗⋯⊗I2 0≤λ≤3}
而商群
E
n
‾
=
E
n
C
(
E
)
,
(
∣
E
n
‾
∣
=
∣
E
n
∣
4
=
4
n
)
\overline{E_n}=\frac{E_n}{C(E)},(|\overline{E_n}|=\frac{|E_n|}{4}=4^n)
En=C(E)En,(∣En∣=4∣En∣=4n)
中元素和群
E
E
E 中元素有关系
e
‾
2
=
I
2
,
e
e
‾
′
=
e
‾
′
e
‾
,
(
由
于
−
1
∈
C
(
E
n
)
)
\overline{e}^2=I_2,\overline{ee}'=\overline{e}'\overline{e} ,(由于 -1 \in C(E_n))
e2=I2,ee′=e′e,(由于−1∈C(En))
所以 E n ‾ \overline{E_n} En 是 4 n 4^n 4n 阶交换群,并且每个元素的平方均为 1 ,从而它应当是个 2 n 2n 2n 个 2 阶循环群的直积,于是同构于 F 2 n F_2^n F2n 的加法群。
为了进一步弄清非交换群
E
n
E_n
En 的结构,Calderbank 等人引入一种新的符号。将错误算子
e
=
i
λ
w
1
⊗
⋯
⊗
w
n
w
i
∈
{
I
2
,
σ
x
,
σ
y
,
σ
z
}
e=i^\lambda w_1\otimes \cdots \otimes w_n \ \ \ \ \ w_i \in \{I_2,\sigma_x,\sigma_y,\sigma_z\}
e=iλw1⊗⋯⊗wn wi∈{I2,σx,σy,σz}
表示成
e
=
i
λ
X
(
a
)
Z
(
b
)
a
=
(
a
1
,
⋯
,
a
n
)
∈
F
2
n
,
b
=
(
b
1
,
⋯
,
b
n
)
∈
F
2
n
e=i^\lambda X(a)Z(b) \ \ \ \ \ a=(a_1,\cdots,a_n)\in F_2^n ,b=(b1,\cdots,b_n) \in F_2^n
e=iλX(a)Z(b) a=(a1,⋯,an)∈F2n,b=(b1,⋯,bn)∈F2n
其中:
( a i , b i ) = { ( 0 , 0 ) w i = I 2 ( 1 , 0 ) w i = σ x ( 0 , 1 ) w i = σ z ( 1 , 1 ) w i = σ y ( 1 ≤ i ≤ n ) (a_i,b_i)= \left\{ \begin{aligned} &(0,0) & w_i=I_2 \\ &(1,0) & w_i=\sigma_x \\ &(0,1) & w_i=\sigma_z \\ &(1,1) & w_i=\sigma_y \end{aligned} \right. \ \ \ \ \ (1 \leq i \leq n) (ai,bi)=⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧(0,0)(1,0)(0,1)(1,1)wi=I2wi=σxwi=σzwi=σy (1≤i≤n)
例如, e = i σ y ⊗ I 2 ⊗ σ x = i X ( 101 ) Z ( 100 ) e=i\sigma_y\otimes I_2 \otimes \sigma_x=iX(101)Z(100) e=iσy⊗I2⊗σx=iX(101)Z(100)。
则
X
(
A
)
X(A)
X(A) 和
Z
(
b
)
Z(b)
Z(b) 在
V
=
C
2
⊗
C
2
⊗
⋯
⊗
C
2
V=C^2\otimes C^2\otimes \cdots \otimes C^2
V=C2⊗C2⊗⋯⊗C2 的基元上作用
∣
v
⟩
=
∣
v
1
,
⋯
,
v
n
⟩
(
v
=
(
v
1
,
⋯
,
v
n
)
∈
F
2
n
)
|v\rangle=|v_1,\cdots,v_n\rangle (v=(v_1,\cdots,v_n)\in F_2^n)
∣v⟩=∣v1,⋯,vn⟩(v=(v1,⋯,vn)∈F2n)
X
(
a
)
∣
v
⟩
=
∣
a
+
v
⟩
,
Z
(
b
)
=
∣
v
⟩
=
(
−
1
)
b
⋅
v
∣
v
⟩
X(a)|v\rangle=|a+v\rangle,Z(b)=|v\rangle=(-1)^{b \cdot v}|v\rangle
X(a)∣v⟩=∣a+v⟩,Z(b)=∣v⟩=(−1)b⋅v∣v⟩
其中
b
⋅
v
=
∑
i
=
0
n
b
i
v
i
∈
F
2
b\cdot v =\sum_{i=0}^n b_i v_i \in F_2
b⋅v=i=0∑nbivi∈F2
为 F 2 F_2 F2 中通常的内积。
对于
E
n
E_n
En 中两个错误算子
e
=
i
λ
X
(
a
)
Z
(
b
)
e=i^\lambda X(a)Z(b)
e=iλX(a)Z(b) 和
e
′
=
i
λ
′
X
(
a
′
)
Z
(
b
′
)
e'=i^{\lambda '} X(a')Z(b')
e′=iλ′X(a′)Z(b′),
e
e
′
=
(
−
1
)
a
⋅
b
′
+
a
′
⋅
b
e
′
e
ee'=(-1)^{a\cdot b'+a' \cdot b}e'e
ee′=(−1)a⋅b′+a′⋅be′e
可以看出,当
a
⋅
b
′
+
a
′
⋅
b
=
0
a\cdot b'+a' \cdot b=0
a⋅b′+a′⋅b=0 时
e
e
e 和
e
′
e'
e′ 是可交换的。
对于
F
2
2
n
F_2^{2n}
F22n 中的向量
u
=
⟨
a
∣
b
⟩
u=\langle a |b \rangle
u=⟨a∣b⟩ 和
u
′
=
⟨
a
′
∣
b
′
⟩
(
a
,
a
′
,
b
,
b
′
∈
F
2
n
)
u'=\langle a' | b' \rangle (a,a',b,b' \in F_2^n)
u′=⟨a′∣b′⟩(a,a′,b,b′∈F2n) ,
n
n
n 和
u
′
u'
u′的 辛内积 定义为
(
u
,
u
′
)
s
=
a
⋅
b
′
+
a
′
⋅
b
=
(
a
b
)
[
0
I
n
I
n
0
]
[
a
′
b
′
]
=
∑
(
a
i
b
i
′
+
a
i
′
b
i
)
∈
F
2
(u,u')_s=a \cdot b' + a' \cdot b= \left( \begin{matrix} a & b \end{matrix} \right) \left[ \begin{matrix} 0 & I_n \\ I_n & 0 \end{matrix} \right] \left[ \begin{matrix} a' \\ b' \end{matrix} \right]= \sum(a_ib_i'+a_i'b_i) \in F_2
(u,u′)s=a⋅b′+a′⋅b=(ab)[0InIn0][a′b′]=∑(aibi′+ai′bi)∈F2
当
(
u
,
u
′
)
=
0
(u,u')=0
(u,u′)=0 时,称
u
u
u 和
u
′
u'
u′ 是 辛正交 的。对于
F
2
2
n
F_2^{2n}
F22n 的每个向量子空间
C
C
C ,
(
C
s
⊥
)
=
{
u
∈
F
2
2
n
∣
(
u
,
c
)
s
=
0
,
∀
c
∈
C
}
(C_s^\bot)=\{u \in F_2^{2n} \ | \ (u,c)_s=0, \forall c \in C \}
(Cs⊥)={u∈F22n ∣ (u,c)s=0,∀c∈C}
也是
F
2
2
n
F_2^2n
F22n 的向量子空间,叫做
C
C
C 的 辛对偶子空间 。如果
C
⊆
(
C
s
⊥
)
C \subseteq (C_s^\bot)
C⊆(Cs⊥) (即
C
C
C 中任何两个向量均辛正交),称
C
C
C 为
F
2
2
n
F_2^{2n}
F22n 的 辛自正交子空间 。由线性代数可以知道:
d
i
m
C
+
d
i
m
(
C
)
s
⊥
=
2
n
dim C+dim(C)_s^\bot = 2n
dimC+dim(C)s⊥=2n
对于 E n E_n En 中两个错误算子 e = i λ X ( a ) Z ( b ) e=i^\lambda X(a)Z(b) e=iλX(a)Z(b) 和 e ′ = i λ ′ X ( a ′ ) Z ( b ′ ) e'=i^{\lambda '} X(a')Z(b') e′=iλ′X(a′)Z(b′),则 e ‾ = ⟨ a ∣ b ⟩ , e ‾ ′ = ⟨ a ′ ∣ b ′ ⟩ \overline{e}=\langle a|b\rangle,\overline{e}'=\langle a'|b'\rangle e=⟨a∣b⟩,e′=⟨a′∣b′⟩ ,又因为当 a ⋅ b ′ + a ′ ⋅ b = 0 a\cdot b'+a' \cdot b=0 a⋅b′+a′⋅b=0 时 e e e 和 e ′ e' e′ 是可交换的,所以有以下重要的结论:
定理:
当且仅当 G G G 在 E ‾ n = F 2 2 n \overline{E}_n=F_2^{2n} En=F22n 中的象 G ‾ \overline{G} G 是辛正交子空间时, E n E_n En 的子群 G G G 是交换群。
这个结果在构造量子码时起到了重要作用。
对于一个错误算子
e
=
i
λ
w
1
⊗
w
2
⊗
⋯
⊗
w
n
∈
E
n
e=i^\lambda w_1\otimes w_2 \otimes \cdots \otimes w_n \in E_n
e=iλw1⊗w2⊗⋯⊗wn∈En ,当
w
i
∈
I
2
w_i \in I_2
wi∈I2 时,表示第
i
i
i 个量子位没有错误作用。而当
w
i
=
σ
x
,
σ
x
,
σ
y
w_i = \sigma_x ,\sigma_x,\sigma_y
wi=σx,σx,σy 时,表示第
i
i
i 个量子位有错误作用。我们用
w
Q
(
e
)
w_Q(e)
wQ(e) 表示
e
e
e 中有错误作用的量子位个数,叫做
e
e
e 的量子权,即
w
Q
(
e
)
=
#
{
i
∣
1
≤
i
≤
n
,
w
i
≠
I
2
}
w_Q(e)=\#\{ i | 1 \leq i \leq n,w_i \neq I_2\}
wQ(e)=#{i∣1≤i≤n,wi=I2}
如果
e
=
i
λ
X
(
a
)
Z
(
b
)
a
=
(
a
1
,
⋯
,
a
n
)
∈
F
2
n
,
b
=
(
b
1
,
⋯
,
b
n
)
∈
F
2
n
e=i^\lambda X(a)Z(b) \ \ \ \ \ a=(a_1,\cdots,a_n)\in F_2^n ,b=(b1,\cdots,b_n) \in F_2^n
e=iλX(a)Z(b) a=(a1,⋯,an)∈F2n,b=(b1,⋯,bn)∈F2n,当且仅当
(
a
i
,
b
i
)
=
(
0
,
0
)
(a_i,b_i)=(0,0)
(ai,bi)=(0,0) 时
w
i
=
I
2
w_i=I_2
wi=I2 ,因此
w
Q
(
e
)
=
#
{
i
∣
1
≤
i
≤
n
,
(
a
i
,
b
i
)
≠
(
0
,
0
)
}
w_Q(e)=\#\{ i | 1 \leq i \leq n,(a_i,b_i) \neq (0,0)\}
wQ(e)=#{i∣1≤i≤n,(ai,bi)=(0,0)}
由于
e
‾
=
⟨
a
∣
b
⟩
∈
F
2
2
n
\overline{e}=\langle a|b\rangle \in F_2^{2n}
e=⟨a∣b⟩∈F22n,在
F
2
2
n
F_2^{2n}
F22n 中引入与经典 Hamming 权不同的量子权:
w
Q
⟨
a
∣
b
⟩
=
w
Q
(
e
‾
)
=
#
{
i
∣
1
≤
i
≤
n
,
(
a
i
,
b
i
)
≠
(
0
,
0
)
}
w_Q\langle a|b\rangle=w_Q(\overline{e})=\#\{ i | 1 \leq i \leq n,(a_i,b_i) \neq (0,0)\}
wQ⟨a∣b⟩=wQ(e)=#{i∣1≤i≤n,(ai,bi)=(0,0)}
则 w Q ( e ) = w Q ( e ‾ ) w_Q(e)=w_Q(\overline{e}) wQ(e)=wQ(e)
定义错误作用群的子集合(对于
0
≤
l
≤
n
0 \leq l \leq n
0≤l≤n)
E
n
(
l
)
=
{
e
∈
E
n
∣
w
Q
(
e
)
≤
l
}
E_n(l)=\{e\in E_n | w_Q(e) \leq l\}
En(l)={e∈En∣wQ(e)≤l}
E ‾ n ( l ) = { e ‾ ∈ E ‾ n ∣ w Q ( e ‾ ) ≤ l } \overline{E}_n(l)=\{\overline{e}\in \overline{E}_n | w_Q(\overline{e}) \leq l\} En(l)={e∈En∣wQ(e)≤l}
则
E
n
(
l
)
=
4
∗
∑
i
=
0
l
3
′
(
n
i
)
,
E
‾
(
l
)
=
1
4
E
n
(
l
)
E_n(l)=4*\sum_{i=0}^l3' \left( \begin{matrix} n \\ i \end{matrix} \right) ,\overline{E}(l)=\frac{1}{4}E_n(l)
En(l)=4∗i=0∑l3′(ni),E(l)=41En(l)
设 Q Q Q 是码长为 n n n 的量子吗(即 Q Q Q 为 C 2 n C^{2n} C2n 中的一个复向量子空间),称 Q Q Q 可以纠正小于 l l l 位错误,是指对任何 ( e , e ′ ) ∈ E n ( l ) (e,e') \in E_n(l) (e,e′)∈En(l) 和 ( ∣ v ⟩ , ∣ v ′ ⟩ ) ∈ Q (|v\rangle ,|v'\rangle) \in Q (∣v⟩,∣v′⟩)∈Q ,如果 ⟨ v ∣ v ′ ⟩ = 0 \langle v| v'\rangle=0 ⟨v∣v′⟩=0 ,则 ⟨ v ∣ e e ′ ∣ v ′ ⟩ = 0 \langle v| ee' |v'\rangle=0 ⟨v∣ee′∣v′⟩=0 。
量子码 Q Q Q 的最小距离 d = d ( Q ) d=d(Q) d=d(Q) 是满足下面性质的最大正整数 d d d: 对于 ∣ v ⟩ |v\rangle ∣v⟩ 和 ∣ v ′ ⟩ ∈ Q |v'\rangle \in Q ∣v′⟩∈Q,如果 ⟨ v ∣ v ′ ⟩ = 0 \langle v| v'\rangle=0 ⟨v∣v′⟩=0,则对于每个 e ∈ E n ( d − 1 ) e \in E_n(d-1) e∈En(d−1) ,均有 ⟨ v ∣ e ∣ v ′ ⟩ = 0 \langle v| e |v'\rangle=0 ⟨v∣e∣v′⟩=0 。
显然,有不等式 w H ( e e ’ ) ≤ w H ( e ) + w H ( e ′ ) w_H(ee’) \leq w_H(e)+w_H(e') wH(ee’)≤wH(e)+wH(e′) ,便可得到与经典情形类似的量子纠错码基本结果:
定理 :
最小距离为 d d d 的量子码 Q Q Q 可以纠正 ≤ [ d − 1 2 ] \leq \left[ \begin{matrix} \frac{d-1}{2} \end{matrix} \right] ≤[2d−1] 个量子位的错误。
同样,我们也可以用量子码 Q Q Q 的 3 个基本参数 :码长 n n n ,维数 K K K (或用 k = log 2 K k=\log_2K k=log2K),和最小距离 d d d 来将这个量子码表示位 ( ( n , K , d ) ) ((n,K,d)) ((n,K,d)) (或 [ [ n , k , d ] ] [[n,k,d]] [[n,k,d]])。好的量子码也是要求 k n \frac{k}{n} nk 和 k k k 很大,它们之间也有一些界:
定理
若存在参数为 [ n , k , d ] [n,k,d] [n,k,d] 的 q q q 元纠错码,则
(i)(量子 Hamming 界) :Q是纯量子码,则
2 n − k ≥ ∑ i = 0 [ d − 1 2 ] ( 3 ) i ( n i ) 2^{n-k}\geq \sum_{i=0}^{ [\frac{d-1}{2}]} (3)^i \left( \begin{matrix} n \\ i \end{matrix} \right) 2n−k≥i=0∑[2d−1](3)i(ni)其中 ( n i ) \left( \begin{matrix} n \\ i \end{matrix} \right) (ni) 表示从 n n n 个物体中取 i i i 个的组合。
(ii)(量子 Singleton 界) : 若 d ≤ n 2 − 1 d\leq\frac{n}{2}-1 d≤2n−1 ,则 n ≥ k + 2 d − 2 n \geq k+2d-2 n≥k+2d−2
(量子 Gilber - Varshamov 界) :如果 2 n − k ≥ 1 2n-k \geq1 2n−k≥1 , 1 ≤ d ≤ n 1 \leq d \leq n 1≤d≤n ,并且
2 n − k − 1 ≥ ∑ i = 0 [ d − 1 2 ] ( 3 ) i ( n i ) 2^{n-k}-1 \geq \sum_{i=0}^{ [\frac{d-1}{2}]} (3)^i \left( \begin{matrix} n \\ i \end{matrix} \right) 2n−k−1≥i=0∑[2d−1](3)i(ni)则必存在参数为 [ [ n , k , d ] ] [[n,k,d]] [[n,k,d]] 的量子码。
纯量子码是指对 E ‾ n ( d − 1 ) \overline{E}_n(d-1) En(d−1) 中元素 e ‾ ≠ I 2 \overline{e} \neq I_2 e=I2 和任意 ∣ v ⟩ , ∣ v ′ ⟩ ∈ Q |v\rangle,|v'\rangle \in Q ∣v⟩,∣v′⟩∈Q ,均有 ⟨ v ∣ e ∣ v ′ ⟩ = 0 \langle v| e |v'\rangle=0 ⟨v∣e∣v′⟩=0。
一个量子码
Q
=
[
[
n
,
k
,
d
]
]
Q=[[n,k,d]]
Q=[[n,k,d]] 叫做是
M
D
S
MDS
MDS 码,是指它达到量子 Singleton 界,即
n
=
k
+
2
d
−
2
n=k+2d-2
n=k+2d−2 。如果
Q
Q
Q 是纯量子码并且达到量子 Hamming 界,即
2
n
−
k
≥
∑
i
=
0
[
d
−
1
2
]
(
3
)
i
(
n
i
)
2^{n-k}\geq \sum_{i=0}^{ [\frac{d-1}{2}]} (3)^i \left( \begin{matrix} n \\ i \end{matrix} \right)
2n−k≥i=0∑[2d−1](3)i(ni)
则 Q Q Q 叫做是 完全量子码。
4.CRSS 量子码构建的数学描述
这里介绍 Calderbamk,Rains,Shor 和 Sloane 在 1998 年提出的一种构造量子码的系统方法,他们的结果如下:
定理 :
设 C C C 是 F 2 2 n F_2^{2n} F22n 中的辛自交线性码(即 C C C 为 F 2 2 n F_2^{2n} F22n 的线性子空间并且 C ⊆ ( C ) s ⊥ C \subseteq(C)_s^\bot C⊆(C)s⊥), d i m C = n − k ( 0 ≤ k ≤ n ) dimC=n-k(0 \leq k \leq n) dimC=n−k(0≤k≤n),则存在参数 [ [ n , k , d ] ] [[n,k,d]] [[n,k,d]] 的量子码,其中
d ≥ m i n { w Q ( c ) ∣ c ∈ ( C ) s ⊥ ) C } d \geq min\{ w_Q(c) \ \ |\ \ \ c\in \frac{(C)_s^\bot)}{C} \} d≥min{wQ(c) ∣ c∈C(C)s⊥)}
定理:
如果存在参数为 [ n , k , d ] [n,k,d] [n,k,d] 的二元线性码 C C C ,并且 C ⊃ ( C ) ⊥ C \supset (C)^\bot C⊃(C)⊥ ,这里 C ⊥ C^\bot C⊥ 是经典纠错码中 C C C 对于通常内积 ( u , v ) = ∑ i = 1 n u i v i (u,v)=\sum_{i=1}^n u_i v_i (u,v)=∑i=1nuivi 的对偶码。则存在参数为 [ [ n , 2 k − n , d ] ] [[n,2k-n,d]] [[n,2k−n,d]] 的量子码。
定理 :
如果存在二元线性码 C 1 C_1 C1 和 C 2 C_2 C2 ,参数分别为 [ n , k 1 , d 1 ] [n,k_1,d_1] [n,k1,d1] 和 [ n , k 2 , d 2 ] [n,k_2,d_2] [n,k2,d2] ,并且 C 1 ⊥ ⊆ C 2 C_1^\bot \subseteq C_2 C1⊥⊆C2 (于是 n − k 1 ≤ k 2 n-k_1\leq k_2 n−k1≤k2,即 n ≤ k 1 + k 2 n \leq k_1 + k_2 n≤k1+k2 ),则存在参数为 [ [ n , k 1 + k 2 − n , m i n { d 1 , d 2 } ] ] [[n,k_1+k_2-n,min\{d_1,d_2 \}]] [[n,k1+k2−n,min{d1,d2}]] 的量子码。
定理:
设 C C C 和 C ′ C' C′ 分别是参数 [ n , k , d ] [n,k,d] [n,k,d] 和 [ n , k ’ , d ‘ ] [n,k’,d‘] [n,k’,d‘] 的二元线性码,并且 C ⊥ ⊆ C ⊆ C ′ C^ \bot \subseteq C \subseteq C' C⊥⊆C⊆C′ (于是 k ′ ≥ k ≥ n − k k' \geq k \geq n-k k′≥k≥n−k )。如果 k ′ ≥ k + 2 k' \geq k+2 k′≥k+2 ,则存在参数 [ [ n , k + k ′ − n , m i n { d , 3 2 d ′ } ] ] [[n, k+k'-n, min\{ d, \frac{3}{2} d' \} ]] [[n,k+k′−n,min{d,23d′}]] 的量子码。
上面四个定理建立了经典二元线性码和量子码之间的联系,从而人们可以借助于经典二元线性码的已知成果构造出丰富的量子纠错码。