阁楼的旧笔记本:量子计算第一课
阁楼的木地板被盛夏的梧桐叶影烙出斑驳的碎金,林小宇蹲在樟木箱旁边,指尖沾了薄薄一层灰,那本封皮磨得发毛的牛皮纸笔记本刚从箱底翻出来,封面上用蓝黑钢笔写的《量子计算研究手记 1998》还清晰,墨迹里夹着几道几乎看不见的裂痕,像是被人不小心泼过茶水,又仔细擦干净过。樟木箱里飘出来的樟脑味混着旧书的霉味,还有窗外茉莉花被风送进来的甜香,风扇吱呀转着,把外婆刚剥的莲子的清苦香吹得满屋子都是。 外婆端着冰好的莲子汤进来的时候,他
外婆端着冰好的莲子汤进来的时候,他正蹲在樟木箱旁边,指尖沾着薄灰,把那枚从笔记本里掉出来的双面硬币攥在手里,铜币被体温焐得发暖,落在掌心的重量沉得像揣了个小秘密。瓷白的汤碗搁在樟木箱边缘,凉丝丝的甜香混着莲子的清苦先漫过来,外婆的白头发在从阁楼小窗斜进来的光里闪着碎银似的光,她弯腰瞥见他手里的笔记本,眼睛一下子亮起来,像被风吹皱的湖面漾开细碎的光:“哟,你翻到这个了?我还以为它要在箱底再睡二十年呢。”
林小宇举着笔记本晃了晃,封皮上的蓝黑钢笔字被他的影子挡住了一半:“外婆,这上面写的《量子计算研究手记 1998》是你写的啊?你以前还搞过量子计算?”他去年才跟着学校机器人社团接触编程,以为量子计算是科幻电影里才会出现的东西,从来没想过教了一辈子高中数学的外婆,年轻时候居然和这种听起来就很“高大上”的东西打过交道。 外婆笑着坐下来,老木椅吱呀响了一声,她接过林小宇手里的笔记本,指腹蹭过封皮上那几道几乎看不见的茶渍,指尖的薄茧蹭得纸面沙沙响:“哪是‘搞过’啊,那时候我刚大学毕业,分到中科院的量子物理实验室,天天泡在里面,这笔记本里的东西,一半是我记的实验数据,一半是我瞎写的随笔,还有这个——”她伸手拈起林小宇掌心里的硬币,铜币在她指间翻了个面,一面刻着 neatly 的玻尔原子模型,三个电子轨道绕着中间的原子核转得灵动,另一面刻着“0”和“1”两个数字,中间连着一道像麻花似的符号,边缘磨得发亮,显然是被人摩挲了几十年的,“这是当年实验室定制的实验道具,只有我们那批人每人有一枚,当时我们管它叫‘量子硬币’。” 窗外的蝉鸣突然响了一阵,盖过了老风扇转动的吱呀声,外婆把硬币放在樟木箱的盖子上,旁边摆着半碗没喝完的莲子汤,凉气裹着甜香往上飘:“来,外婆今天不给你讲公式,就陪你玩个硬币游戏,玩完了你就知道,量子计算最核心的秘密,就藏在这枚硬币里。” 她先摸出自己日常用的钢镚,是牡丹图案的1元硬币,边齿磨得圆润:“咱们先玩你熟悉的,正常的硬币。”她把钢镚往空中一抛,硬币在空中翻了个面,“啪”地落在木箱盖上,正面朝上,“你看,普通硬币落地,要么正要么反,没有第三种可能,就像你平时用的手机、电脑里的‘比特’,本质上就是个开关,要么开是1,要么关是0,一次只能存一个状态,我们叫它‘经典比特’。” 林小宇点头,这个他知道,社团里教编程的时候提过,二进制就是0和1,所有电脑里的文字、图片、视频,本质上都是0和1的组合。外婆把钢镚又抛了一次,这次是反面,她把硬币推到他面前:“你扔三次,把结果记下来,我们算个事。” 林小宇依言扔了三次,结果是正、反、正,外婆拿过笔记本,在空白页上画了个表格:“你看,一个经典比特只有2种状态,两个经典比特就有$2^2=4$种状态,三个就是$2^3=8$种,你刚才扔三次,只能得到这8种结果里的1种,要是你要存个数字,比如3,对应的二进制是011,那剩下的000、001、010、100、101、110、111这7种状态你就用不上了,一个经典比特一次只能干一件事。” 林小宇算了算,有点咋舌:“那100个经典比特的话,能存的状态数比全宇宙的星星还多啊?”外婆笑着点头:“对,但是经典计算机一次只能用其中一种状态,就像你有一仓库的乐高块,但是一次只能拿一块出来拼,要是100个量子比特的话,一次就能把这仓库里所有的乐高块同时拿出来拼。” 她说着,拿起了那枚刻着原子模型的量子硬币:“现在玩这个特殊的。”她把硬币扣在一张白纸杯里,杯口朝下,放在木箱盖子中央,然后用手扶着杯底,在盖子上慢慢转了三圈,凉丝丝的杯壁上甚至凝了点小水珠,“现在,在你没打开杯子之前,你说这枚硬币是正还是反?” 林小宇盯着纸杯,毫不犹豫:“要么正要么反啊,只是我没看见而已,它早就定了。” 外婆摇头,眼睛亮得像藏着星星:“在量子世界里,你没打开杯子之前,它既是正面,也是反面,两种状态同时存在,这就叫量子叠加态,这枚量子硬币对应的,就是量子比特,一个量子比特可以同时是0和1,一次能存两种信息。” 林小宇一下子笑出了声:“外婆你别逗了,硬币怎么可能同时是正和反?我又不是量子物理学家,你别骗我。” “我没骗你,给你举个你肯定懂的例子。”外婆把纸杯拿开一点,硬币还在杯底扣着,“你上次在机器人社团抽盲盒,还没拆包装的时候,里面是隐藏款皮卡丘,还是普通款杰尼龟?” “都有可能啊,但是肯定是一种啊,要么是皮卡丘要么是杰尼龟,只是我没拆开不知道而已。”林小宇上周刚在社团抽了个隐藏款,到现在还放在书桌上当摆件,对抽盲盒的过程熟得不能再熟。 “对,但是你没拆之前,你知道它肯定是其中一种,这是经典的不确定——你不知道结果,但是结果早就定了。但是量子硬币不一样,没打开杯子之前,它真的‘既是正面又是反面’,不是你不知道,是它真的同时是两种状态,等你打开杯子一看,它才会变成要么正要么反,这个从‘同时两种状态’变成‘确定一种状态’的过程,我们就叫它坍缩。” 林小宇皱起眉头,还是有点转不过弯:“这怎么可能啊?硬币是有实体的啊,怎么可能同时是两种样子?” “你先别急着否定,我再给你举个例子。”外婆把纸杯重新扣好,又转了三圈,“你玩《我的世界》创造模式的时候,手里是不是可以同时拿一把钻石剑和一个牛排?” “对啊,创造模式里我还能同时拿一百个方块呢。” “那生存模式呢?” “生存模式里一次只能拿一个东西啊,拿了这个就拿不了那个。” “你看,经典比特就像生存模式,一次只能拿一个东西,要么是钻石剑(1),要么是牛排(0),量子比特就像创造模式,一次能拿好多个东西,甚至能同时拿所有东西。”外婆笑了笑,指尖敲了敲纸杯,“而且叠加态也不是只有‘正反各一半’这一种,就像你调台灯,可以调成全亮,也可以调成全灭,还能调成半亮、四分之一亮,量子比特的状态也可以‘调’,可以是70%是0、30%是1,也可以是90%是1、10%是0,就像调光开关,不是只有全开和全关两种状态,这也是叠加态的一种。” 林小宇盯着纸杯,突然想起去年物理课上老师讲的“薛定谔的猫”,那时候他觉得那个实验特别荒谬,猫怎么可能既是活的又是死的?现在听外婆这么一讲,好像突然懂了点:“哦……所以薛定谔的猫,就是没打开盒子之前,猫既是活的又是死的,不是我们不知道,是它真的同时是两种状态?” “孺子可教。”外婆笑着点头,“不过那个实验是为了讽刺当时人们对量子力学的错误理解,现实中我们不会真的拿猫做实验,但是用原子、光子这些微观粒子做实验,真的能观察到叠加态。1998年我们做实验的时候,用的就是钠原子,原子的自旋向上转我们定义为0,向下转定义为1,把原子放在强磁场里,不测量的时候,它既向上转也向下转,就是叠加态,那时候我们的装置特别简陋,要把原子冷却到零下两百多度,还要把整个装置放在真空里,不然空气分子撞一下原子,它就会立刻坍缩成确定的0或者1,就像你碰一下纸杯,硬币可能就变成确定的正或者反了。” 她说着翻开了那本旧手记,纸页已经发黄,边角磨得起了毛,她翻到1998年7月12日那一页,蓝黑钢笔写的字还带着当年的激动,有些地方的墨迹晕开了,像是写过之后不小心沾了水:“你看,这是当年我第一次观察到钠原子叠加态的记录,当时我们测试了十七次,只有三次观察到了叠加态,保持的时间最长才15微秒,就是0.000015秒,但是那天我们整个实验室的人都跳起来了,陈老师——就是合影里那个戴厚眼镜的叔叔,当时国内量子物理的带头人——还特意买了西瓜请大家吃,甜得现在我都记得。” 林小宇凑过去看,那一页的末尾还画了个歪歪扭扭的笑脸,旁边写着“小周带的西瓜超甜,下次让他再带,冷却系统还得调,不然原子老坍缩”,字里行间都是二十多岁年轻人的雀跃,和现在外婆坐在摇椅上给他讲题时的从容完全不一样。他又翻到中间夹着的那张合影,七八个年轻人站在堆满了仪器的实验室里,外婆扎着高马尾,穿白大褂,手里举着那枚量子硬币,笑得露出两颗小虎牙,旁边的陈教授扶着实验台,笑得眼睛都眯起来了,还有几个年轻人抱着记录本,脸上都是抑制不住的笑。 “那时候所有人都觉得我们是在瞎折腾。”外婆翻过合影,指尖蹭过照片上年轻的外公——那时候他还没秃顶,头发黑得发亮,站在外婆旁边,手里举着个烧杯,“说量子计算太玄乎,根本不可能实用,就像有人跟你说,你能用空气造出能跑的汽车,没人会信。但是我们就是觉得,要是能让比特同时是0和1,算力就能翻无数倍,比如算一个密码,经典计算机要试几百万次,量子计算机一次就能同时试所有可能,几下就出来了;比如算新药的分子结构,经典计算机要算好几年,量子计算机几天就能算完,要是能算准气候变化的模型,提前好几年预报台风、暴雨,能救多少人啊。” 林小宇是机器人社团的核心成员,去年社团做自动导航机器人,光是走迷宫就花了一个多月,每次比赛的时候机器人经常在岔路口选错路,要来回试好几次,最后只拿了市三等奖,他一下子就想到了用量子计算机的场景:“那要是机器人导航用量子计算的话,是不是一下子就能找到最短路,不用慢慢试了?还有上次我们做机器人搬运比赛,要是能同时算所有搬运路线的重量,是不是就不会超时了?” “对,这就是量子计算的威力,核心就是叠加态。”外婆把硬币拿起来,在手里转了个圈,铜光在光里闪了一下,“我再给你算个数,你就能明白它的算力有多夸张:1个经典比特一次只能存1个状态,2个经典比特一次存1个,3个也是存1个,n个经典比特一次还是只能存1个状态;但是1个量子比特一次能同时存2个状态,2个量子比特一次能同时存$2^2=4$个状态,3个就是$2^3=8$个,n个量子比特一次就能同时存$2^n$个状态,算力是呈指数级增长的。” 她拿过林小宇刚才扔三次硬币的钢镚,摆在桌上:“你刚才扔三次经典硬币,一次只能得到1种结果,要是我给你三枚量子硬币,你不用扔,它们本身就同时是正正正、正正反、正反正、正反反、反正正、反正反、反反正、反反反这8种状态,一次就包含了所有可能,要是算一个问题需要试这8种情况,经典计算机要扔8次硬币,量子计算机一次就够了。” 林小宇掰着手指算,10个量子比特就能同时存1024个状态,20个就是100多万,50个就是1000多万亿,100个的话是2的100次方,比全世界所有的沙滩上的沙子加起来还多,他张大了嘴:“那……那量子计算机算啥都快啊?” “也不是啥都快,比如你算1+1,经典计算机更快,因为这种简单的问题不需要叠加态。”外婆笑着点了点他的额头,“但是遇到那种需要试很多种可能性的复杂问题,比如破密码、算分子结构、做天气预报、训练人工智能模型,量子计算机的速度就是经典计算机的几百万几亿倍,很多经典计算机算几万年都算不出来的问题,量子计算机几分钟就能算出来。” 她说着把量子硬币放在手记上,铜币的原子模型面朝着林小宇:“但是你要记住,叠加态不是‘我们不知道硬币是正还是反’,普通硬币你扣在杯子里,结果早就定了,只是你没看见,这是经典的不确定性,而量子硬币没打开之前,是真的同时处于正和反的状态,不是不知道,是同时存在,这是量子世界和经典世界最本质的区别,也是量子计算能这么厉害的核心原因。” 林小宇拿着硬币在手里转,凉丝丝的铜面蹭得掌心生痒,他突然想起去年物理课上老师讲的“测不准原理”,那时候他以为那是微观粒子的bug,现在才明白,那是量子世界的规则:“那……那要是有人偷偷打开杯子看一眼,再盖上,硬币是不是就变成确定的了?” “对,这就叫测量导致坍缩。”外婆点头,“叠加态特别脆弱,只要被外界干扰,就会立刻坍缩成确定的0或者1,就像你叠好的积木塔,轻轻碰一下就倒了,这个现象我们叫‘退相干’,是现在量子计算最大的难题。你想,量子