量子计算之量子压缩编码(dense coding)

帅文

传统的计算机在数据传输过程中传输位数不能少于信息编码的最少bit数。比如要传输4个状态,那么最少需要两个bit来编码并传输,分别对应00、01、10、11。但是利用纠缠量子对可实现只传输一个量子就完成4个状态中一种的传递。下面就介绍实现过程。

实现步骤(以Alice 发送数据给Bob为例):

步骤1:

首先构造一组纠缠量子对,这样两个量子满足编码4个数据的要求。

利用Hadamard 门和CNOT门实现纠缠量子对:

上面的输出变为纠缠态:

 

步骤2:

将两个量子分别分配给Alice和Bob,注意这时候这对量子里面没有包含任何需要传输的编码信息,所以不要认为这时候有提前信息传递。

步骤3:

Alice开始对她持有的量子进行信息编码,使用的工具就是门变换工具I,X,Y,Z。门变换这个动作就对应着00、01、10、11四种状态。这里我们定义X变换想传输01,变换前后结果如下(这里忽略前面的归一化参数),留意一下可以发现Alice也只能操作她自己的量子,并没有改变Bob的量子状态:

|00>+|11>  ======> |10>+|01>

步骤4:

Alice 把她变换后的这个量子发送给Bob。

步骤5:

Bob使用收到的量子作为控制位对自己拥有的量子做CNOT门操作

|10>+|01>  ======> |11>+01>

从结果看,从Alice接收的bit处于量子态而Bob自己的量子已经退缩成为经典态|1>,所以可以安全的测量自己的量子。

步骤6:

对Alice的bit使用一个H门,得到一个经典的状态|0>,这个确定的状态也可以安全的测量出来。

|1>+|0>  ======> |0>

步骤7:

将步骤5和6获取的状态拼接一起Bob最终还原出一个两个bit组成的编码数据|01>,实现数据的传输。

我们可以在My first circuit - IBM Quantum 上验证这个试验,下图是验证测试的结果:

 

下面是对应的代码:

OPENQASM 2.0;

include "qelib1.inc";

qreg q[2];

creg c[2];

reset q[0];

reset q[1];

h q[0];

cx q[0],q[1];

x q[0];

measure q[1-> c[1];

h q[0];

measure q[0-> c[0];

上面传输数据的方法仅适合理论分析,实际操作过程中无法提前分配好纠缠量子对给每个人,即便能分配,保存并维持纠缠态本身就是一个难题。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值