量子计算 -- 单量子位门与CNOT门的通用性
在 量子计算 [2] 里提到过任意一个多量子位门都可以由单量子位门和CNOT组合得到. 这里给出证明推理过程. 其实是之前忘记了 (

分解任意多量子位门到2级酉操作
定义只对两个态进行变换的操作为2级酉操作, 以下都为合理的2级酉操作
不难知道, 对于任意多量子位门 U, 利用矩阵的初等变换可以有一组初等矩阵 V 使得:, 这时有:
, 因为初等矩阵只对两个向量分量进行操作, 同时 U 是酉的, 也就是说 V 是2级酉操作, 一个多量子位门最多可以分解为
个2级酉操作. 详细分解过程可以参考<线性代数>里面的矩阵初等变换.

分解2级酉操作到单量子位门和n控制单量子位门
设想可以使用一个n控制单量子位门得到2级酉操作. 但2级酉操作里被操作的两个态是任意的, 而n控制单量子位门规定被操作的态必须在同一个量子位上. 这时候可以使用n控制X门对态进行转移, 使得需要操作的两个态移动到同一个量子位上.
假设需要对 和
进行2级酉操作, 可以把
转移到
, 再对最低位量子位进行n控制单量子位门, 最后把态的位置复原. 以下用一个简单的例子演示如何转移态:


分解n控制单量子位门到CNOT和单控制单量子位门
虽然之前好像没有明确地指出过, 这里还是着重地说一下, 控制位门可以写为

针对2控制位门, 根据运算 , 那么可以分解为:
, 因为 U 是酉的, 所以必定存在 V 使得 VV=U. 分解后的电路如下

类似地, 3控制位门的分解为: 得到

对于任意n控制位门, 有:

分解单控制单量子位门到单量子位门和 CNOT
对于任意单量子位门 U, 存在实数 使得
. 证明过程在文章底部, 这个操作称作 Z-Y分解, 这种分解在Bloch球上是十分直观的.
定义三个单量子位门: , 不难知道有以下关系
, 这个操作称为 ABC分解. 根据ABC分解的性质可以对任意单控制单量子位门分解:


Qcircuit 不能用矩阵作位门的名称, 所以这里就徒手画图了 (

经过以上步骤的分解, 任意多量子位门都可以分解为单量子位门和CNOT. 当然证明单量子位门和CNOT门的通用性还是差了很多细节, 但是我这个人就是不注重细节的 (
量子计算系列的专栏大概近期内都不会有更新了, 最近在忙光追, TODO list 里面还有量子力学, 相对论和流体模拟之类难啃的东西. 不过也说不定哪天就滚回来更量子计算了, 随缘, 随缘好吧

Z-Y分解的证明
设单量子位门为 .
根据酉矩阵的性质1 设
, 再根据性质2
得到
, 因为性质3
可以设
.
如此得到: , 由性质2得
. 设
. 得到
最后得到 aaa