量子计算(四)——超密编码与量子隐形传态

一、符号约定

1.单量子门约定

在有多个量子位的情况下,要表示“只对其中某一量子位施加单量子门”这一操作,以之前所述的数学语言来描述依然是繁琐的。例如有编号0∼2的三个量子位,对1号量子位施行泡利𝑍变换,此时整个系统被施加的量子门不得不表示为:

𝐼⊗𝑍⊗𝐼=[100000000100000000−100000000−100000000100000000100000000−100000000−1]

八阶矩阵极占位置,即使是最简便的形式 𝐼⊗𝑍⊗𝐼 也相当长。为了解决这个问题,我们使用符号 𝑍[1] 来表示上面这个八阶矩阵,即“对 1 号量子位施行 𝑍 变换”,这等价于:

𝑍[1]=𝐼[0]⋅𝑍[1]⋅𝐼[2]=𝐼⊗𝑍⊗𝐼

也就是说,在形如 Gate[𝑛] 的符号中,单量子门 Gate 后的中括号表示这个单量子门作用于第 𝑛 个量子。在这样的情况下,Gate[𝑛] 具体是多少阶的矩阵不再重要,式中的 𝐼[𝑘] 总可以省略。

表示单量子门的幂的最佳无异义方法是以括号括起后再添加指数,如 (Gate[𝑛])2。但在不足以引起混淆的情况下,可以表示为 Gate2[𝑛]。

如果同时有较多量子执行同一个量子门操作,那么可以将编号都放入中括号中,以逗号分隔,例如:

𝐻[0]𝐻[2]𝐻[4]=𝐻[0,2,4]

如果这些量子的编号连续,可以在中括号中以区间表示,例如:

𝐻[0]𝐻[1]𝐻[2]=𝐻[1∼2]

2.双量子门约定

这里的双量子门主要指的是受控门。例如受控非门 CNOT,在多量子体系中我们约定其可简写为 CNOT𝑗𝑖,其中上标表示控制位是第 𝑖 号量子,下标表示受控位是第 𝑗 号量子。

如果要表示双量子门的幂,应以括号括起后再添加指数,例如 (CNOT𝑗𝑖)2。

如果控制位或受控位有多个量子,那么在上下标中以逗号分隔,例如 C𝑈2,30,1 表示以 0,1 号量子作为控制位、2,3 号量子作为受控位。类似地允许以区间表示连续编号的量子,例如 C𝑈90∼5。


二、超密编码(Superdense Coding)

超密编码,指的是利用一个量子位可以传输两个经典比特的信息。能够这样做的理论基础是:当控制位处于叠加态时,受控非门将会输出纠缠态;反过来利用量子门可逆的特点,纠缠态也可以变成叠加态,甚至更进一步变成非叠加态。

这个量子特性的应用,需要事先准备处于贝尔纠缠态的两个量子,分别由传输的双方 𝐴 与 𝐵 持有,并分别编号为 0 和 1:

|Φ+⟩=12(|00⟩+|11⟩)

现在假设 𝐴 需要传送给 𝐵 一份两位经典比特的信息 𝑎𝑏。𝐴 显然只能操纵自己持有的 0 号量子,他根据信息 𝑎𝑏 决定对其施行 𝑍𝑎[0]𝑋𝑏[0] 操作。也就是具有四种情况:

此时要对 0 号量子施行的操作是:

𝑍0[0]𝑋0[0]=𝐼[0]𝐼[0]=𝐼

也就是不操作。于是:

𝐼[0]|Φ+⟩=12(|00⟩+|11⟩)=|Φ+⟩

此时要对 0 号量子施行的操作是 𝑋[0]。于是:

𝑋[0]|Φ+⟩=12(|10⟩+|01⟩)=|Ψ+⟩

此时要对 0 号量子施行的操作是 𝑍[0]。于是:

𝑍[0]|Φ+⟩=12(|00⟩−|11⟩)=|Φ−⟩

此时要对 0 号量子施行的操作是 𝑋[0]𝑍[0]。于是:

𝑍[0]𝑋[0]|Φ+⟩=12(−|10⟩+|01⟩)=|Ψ−⟩

显然以上四种情况,使量子系统分别转换为了四个贝尔纠缠态!而这四个贝尔纠缠态又彼此正交,在贝尔基下的测量不可能产生混淆。故此时对于 𝐵 来说,只要在 𝐴 对其持有的 0 号量子完成操作并发送给 𝐵 后,就已经实现了以一个量子位传输两个经典比特的任务。

但对于人类观察者而言只有计算基底是能够被观察到的,为此 𝐵 应再对自己持有的两个量子施加 𝐻[0]⋅CNOT10 操作以转换为计算基底。对于以上四个结果而言:

{𝐻[0]⋅CNOT10|Φ+⟩=𝐻[0]⋅12(|00⟩+|10⟩)=|00⟩𝐻[0]⋅CNOT10|Ψ+⟩=𝐻[0]⋅12(|01⟩+|11⟩)=|01⟩𝐻[0]⋅CNOT10|Φ−⟩=𝐻[0]⋅12(|00⟩−|10⟩)=|10⟩𝐻[0]⋅CNOT10|Ψ−⟩=𝐻[0]⋅12(|01⟩−|11⟩)=|11⟩

之后,𝐵 只需要测量他操作后的两个量子,就能完全确定 𝐴 想要发送的两个经典比特。在以上过程中,只有一个量子位被传输。

图 1 超密编码的量子电路图


三、量子隐形传态(Quantum Teleportation)

量子隐形传态和超密编码像是问题的两方面:超密编码是让一个量子位同时携带两位经典比特的信息;而量子隐形传态则是说,使用两个经典比特即可传递一个量子位的信息。

这个任务看起来有些不可思议:毕竟两位经典比特只能得到4种组合,在超密编码中就已经分别对应了四种贝尔纠缠态——那它怎么可能传递一个可以处于任意状态下的量子位 𝛼|0⟩+𝛽|1⟩ 呢?

完成这个任务的前提依然是传输双方 𝐴,𝐵 分别持有纠缠态 |Φ+⟩ 的 1,2 号量子。设 𝐴 要将另一量子|𝜓⟩=𝛼|0⟩+𝛽|1⟩(记为0号量子)的状态传递给𝐵,只能利用目前持有的纠缠态 0 号量子以及两位经典比特。此时三个量子的系统组合表示为:

|𝜓⟩|Φ+⟩=(𝛼|0⟩+𝛽|1⟩)⋅12(|00⟩+|11⟩)=12(𝛼|000⟩+𝛼|011⟩+𝛽|100⟩+𝛽|111⟩)

首先,𝐴 以 0 号量子作为控制位、1 号量子作为受控位通过 CNOT 门,并将 0 号量子施行哈达玛变换,也就是对量子系统施行 𝐻[0]⋅CNOT10:

𝐻[0]⋅CNOT10⋅|𝜓⟩|Φ+⟩=𝐻[0]⋅12(𝛼|000⟩+𝛼|011⟩+𝛽|110⟩+𝛽|101⟩)=12(𝛼|000⟩+𝛼|100⟩+𝛼|011⟩+𝛼|111⟩+𝛽|010⟩−𝛽|110⟩+𝛽|001⟩−𝛽|101⟩)=12𝑙{|00⟩(𝛼|0⟩+𝛽|1⟩)+|01⟩(𝛽|0⟩+𝛼|1⟩)+|10⟩(𝛼|0⟩−𝛽|1⟩)+|11⟩(−𝛽|0⟩+𝛼|1⟩)𝑟{

从上面最后一式来看,如果 𝐴 对 0,1 号量子测量,那么各有 14 的概率测量到 |00⟩,|01⟩,|10⟩,|11⟩,并且测量结果会影响到 𝐵 持有的 3 号量子的状态。显然 𝐴 可以利用两位经典比特将测量结果传送给 𝐵,而 𝐵 自然也可以根据测量结果确定自己的量子陷入哪个状态中!

此时可以确定 3 号量子处于 𝛼|0⟩+𝛽|1⟩,这正是 𝐴 想要传递的 0 号量子状态!

此时可以确定 3 号量子处于 𝛽|0⟩+𝛼|1⟩,那么 𝐵 对其持有的 3 号量子施加 𝑋 操作即可;

此时可以确定 3 号量子处于 𝛼|0⟩−𝛽|1⟩,那么施加 𝑍[3] 操作即可;

此时可以确定 3 号量子处于 −𝛽|0⟩+𝛼|1⟩,那么施加 𝑍[3]𝑋[3] 即可。

如此,即实现了量子隐形传态。

图 2 量子隐形传态的量子电路图