上一篇我们说过,经典比特就像墙上的灯开关,死死停在0或1。量子比特不同,它是一颗悬空的肥皂泡——飘着的时候,包纳了无数可能状态的漂亮叠加;但只要伸手一碰想看清它是什么,泡泡立刻破裂,坍缩成一滴平凡的水珠(0或者1)。那个类比很直观,可对开发者来说光有直觉不够。我们得把它映射成代码,真正写出能运行的程序。今天就接着聊:怎么给一颗肥皂泡写程序?
如果你去问物理学家如何直观看到一个量子比特的状态,他们会甩过来一个叫“布洛赫球”的数学构造,听起来吓人,其实就是个地球仪。想想我们脚下的这颗行星。普通的经典比特,就像一架只能瞬间出现在北极或南极的飞机——除了这两个极点,哪儿也去不了。但我们的量子肥皂泡呢?它能飘浮在整个球面的任意位置。
![]()
把这个球竖起来。规定北极就是经典比特的0,南极就是经典比特的1。那么当泡泡正好停在赤道上,比如飘在厄瓜多尔上空的时候,奇妙的事情就发生了——它既不是0也不是1,而是以一种完美平衡的方式同时悬在两者中间。此时如果你对这个赤道泡泡做一次测量,大自然会当着你的面抛一枚绝对公平的硬币:得到0的概率是精确的50%,得到1的概率也是精确的50%。没有一丝偏向。这个赤道态就是叠加态最纯粹的形态,也是量子计算之所以不同于经典计算的底气。
在经典编程里,如果我们想把一个0改成1,只需要用一个“非”门(NOT gate)。在量子编程中,我们用“量子门”来物理意义上旋转这个泡泡,让它沿着地球表面滑到另一个位置。所有量子门里最出名、也最重要的一个,叫“哈达玛门”(Hadamard gate),一般简写成H门。
可以把H门想象成一缕有魔力的风。如果你的泡泡乖乖停在北极(状态0),H门一吹,就能准确无误地把泡泡沿着经线往南推整整90度,恰好送到赤道上。这个不起眼的旋转,成了量子密钥分发(QKD)的基石。在QKD方案中,当爱丽丝想给鲍勃发送一串安全密码时,她并不会老老实实地传输一串0和1。相反,爱丽丝会用量子门把她的数据随机隐藏起来:有时藏在南北极方向(用Z基底),有时藏在赤道平面方向(用X基底)。于是每颗泡泡要么乖乖沿Z轴指向南极或北极,要么沿X轴躺在赤道上的某一点。鲍勃收到这些泡泡后,随机选择某个方向的“望远镜”去观察。如果两人事后公开核对各自
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.