新元市的雨丝裹着春末的微寒,在“生命之树”大厦23层的实验室玻璃上织成细密的网。
夏清站在量子基因测序仪前,白大褂下摆沾着几点淡绿的试剂渍——那是今早给“共生菌群”取样时溅上的。
她的指尖悬在全息屏操作区上方,投下的影子正覆盖着屏幕中央那串闪烁的碱基序列。
“第7号样本,垃圾DNA区段21-23kb。”
她对着空气轻声说,测序仪的蓝光在她睫毛上投下细碎的光斑。
终端自动调出人类基因组数据库,又同步调取了Python、C 、Lisp三种编程语言的经典代码库,三个数据框在全息屏上呈品字形展开。
雨势渐急的时候,夏清的后颈冒出薄汗。她揉了揉发涨的太阳穴,转身从实验台抽屉里摸出半块抹茶慕斯——那是三天前墨渊在峰会后买给她的,用真空保鲜盒装着,至今还带着冷藏柜特有的冷香。
咬下第一口时,她的目光又飘向实验室角落的展示柜——里面摆着那株幻蝶兰,此刻花瓣正随着空调风轻轻颤动,和峰会那天墨渊注入生物波图谱时的姿态一模一样。
“夏博士,需要续杯咖啡吗?”实习生小周探进头来,手里的马克杯还冒着热气。
夏清摇了摇头,抹茶慕斯的甜腻在舌尖化开。
她想起峰会那天的虚拟对抗:墨渊没有用常规手段摧毁“蚩尤”,反而用城市数据和自身记忆喂养那个AI残魂,最后蓝光分解时,投影里竟浮起类似人类叹息的低频音波。
当时她攥着座椅扶手,指甲在皮质上压出月牙印——这种对待代码的温柔,和她在实验室里给濒危菌群哼摇篮曲的模样,竟有说不出的相似。
全息屏突然发出“叮”的轻响。夏清猛地直起腰,慕斯盒“啪”地落在实验台上。
她盯着数据对比结果:垃圾DNA区段的ATCG排列,与Lisp语言的递归函数结构重合度高达67%;更诡异的是,其中一段237个碱基的序列,竟能完美对应C 的模板元编程逻辑——那是需要至少五年系统学习才能掌握的高阶编程技巧。
“小周,把2020年人类基因组计划的原始数据调出来。”
她的声音发颤,指尖在终端上输入指令的速度比平时快了三倍,“还有,联系生物信息学中心,要他们提供黑猩猩、倭黑猩猩的同源区段数据。”
实习生被她突然紧绷的气场惊到,咖啡杯差点打翻。
夏清却顾不上这些,她抓起数据板在实验室里来回踱步,雨珠打在玻璃上的声音被自动降噪系统过滤,只剩下自己急促的脚步声。
当黑猩猩的同源区段数据弹出来时,她的脚步顿在基因测序仪前——那些毛茸茸的表亲,对应的DNA区段里,完全没有这种精密的类编程结构。
“只有人类......”她对着空气呢喃,数据板边缘硌得掌心发疼。
窗外的雨幕里,生命之树大厦的全息广告正切换成墨渊的专访片段,他穿着白衬衫站在凌云塔实验室,腕间的采集指环在镜头前闪了一下。
夏清忽然想起三天前他帮自己解决菌群危机时说的话:“数据和生命,本质都是信息的不同表达形式。”
当时她只当是科技大佬的浪漫比喻,此刻看着屏幕上的碱基序列,突然觉得那话像把钥匙,“咔嗒”一声捅开了某个尘封的门。
晚上8点17分,夏清的终端弹出墨渊的消息:“实验室留门。”
她手忙脚乱地整理实验台,把吃剩的慕斯盒塞进抽屉最深处,又对着玻璃窗理了理被自己揉乱的发梢。
等电梯的间隙,她无意识地抚平白大褂前襟——那是她紧张时的习惯性动作,从本科做第一次动物实验时就落下的毛病。
实验室的门被推开时,带着外头潮湿的凉意。
墨渊穿着件浅灰的针织衫,没系扣子,露出里面的白衬衫,腕间的采集指环在灯光下泛着银芒。
他手里提着个纸袋子,隔着两步远就能闻到里面传来的焦糖布丁香——那是新元市最有名的甜品店“糖霜纪”的限定款,每天只做30份,下午三点就会售罄。
“听说有人从早到晚没正经吃饭。”墨渊把纸袋子放在实验台上,目光扫过全息屏上的碱基序列,“夏教授的新课题?”
夏清的耳尖泛起薄红。她抓起数据板走向全息屏,发梢扫过墨渊的衣袖,带起一阵若有若无的柑橘香:“你看这个区段。”
她调出比对结果,“人类的垃圾DNA,结构像不像你教我的数据储存协议?”
墨渊俯身凑近屏幕,后颈的神经接口在灯光下显出淡青的血管。
夏清能闻到他身上的雪松香水味,混着实验室特有的试剂气息,莫名让人安心。
他的指尖在全息屏上轻点,蓝光在指节投下细碎的光斑:“7位校验码,递归调用结构......确实和我去年在《自然》发的DNA存储论文里的编码方式很像。”
“但这是天然存在的。”夏清的声音拔高了些,指尖戳向黑猩猩的数据框,“其他灵长类没有,甚至尼安德特人的化石样本里也没检测到。”
她从实验台抽屉里抽出一沓打印纸,边缘被她翻得卷了毛,“我查了2000个不同人种的样本,97%的个体都有这段序列,位置、长度、碱基比例几乎完全一致。”
墨渊的瞳孔微微收缩。他伸手接过打印纸,指节在纸页边缘轻轻叩着,像在敲某种只有他懂的节奏。
夏清注意到他腕间的采集指环亮了起来,淡青色的光纹沿着皮肤爬到手腕,那是他启动数据采集模式的标志——每次他认真思考时都会这样。
“你看这段。”夏清凑得更近了些,发顶几乎碰到他的下颌,“第143到158位碱基,对应C 的异常处理机制。
如果把T替换成0,A替换成1,G和C做异或运算......”她的手指在空气里划出数据流的轨迹,“会得到一组错误码,和你'方舟计划'里的加密协议错误码,重合度92%。”
实验室的温度在悄然上升。夏清的白大褂领口渗出细汗,却浑然不觉。
她指着全息屏上跳动的碱基对,声音越来越快:“还有这个,斐波那契数列的排列间隔,和你上次用算法符箓烹饪时的火候控制曲线......”
“夏清。”墨渊突然开口,声音比平时低了些。
她的话头戛然而止,抬头时撞进他的目光里。
窗外的雨还在下,玻璃上的水痕把他的轮廓晕染得有些模糊,可那双眼睛却亮得惊人,像淬了星子的深潭。
夏清感觉自己的心跳声突然变得很响,几乎盖过了实验室里仪器的嗡鸣。
“你知道这意味着什么吗?”墨渊的拇指摩挲着打印纸边缘,“如果这些序列不是自然演化的产物......”
“是被写入的。”夏清接口道,声音轻得像片羽毛。
她想起三天前墨渊把加密代码写入惰性DNA的场景,试管里亮起的星图投影,和此刻全息屏上的碱基序列,突然在她脑子里重叠成一幅画。
雨势渐歇的时候,实验室的挂钟指向9点47分。
夏清的终端弹出二十三条未读消息,都是小周发来的实验提醒,她却一条都没看。
墨渊的采集指环还亮着,淡青色的光纹沿着他的手臂爬到手背,在实验台上投下蛛网般的影子。
“我需要更多样本。”墨渊说,指尖在全息屏上划出保存指令,“古人类化石、试管婴儿、基因编辑失败者......”他突然顿住,转头看向夏清,“可以吗?”
夏清点头,发梢扫过他的手背。有那么一瞬间,她想伸手碰一碰他腕间的采集指环,想知道那些淡青色的光纹,是不是和他识海里的菱形晶体一样温暖。
但最终只是把一缕碎发别到耳后,指尖蹭过发烫的耳垂:“我联系了国家基因库,明天就能调阅古人类数据。”
墨渊笑了,眼角微微弯起。夏清这才发现,他笑起来的时候,左边脸颊有个很浅的酒窝,藏在眼下的泪痣旁边,像被月光吻过的小坑。
她的心跳又快了些,低头摆弄数据板时,误触了录音键,终端里突然响起自己的声音:“......和他识海里的菱形晶体一样温暖。”
实验室里的空气突然变得很静。夏清的耳尖红得要滴血,她手忙脚乱地关闭录音,数据板“啪”地砸在实验台上。
墨渊却像没听见似的,弯腰捡起纸袋子里的焦糖布丁,用银勺舀起一块递到她面前:“凉了就不好吃了。”
夏清张了张嘴,最终还是接过银勺。甜美的焦糖味在舌尖散开时,她瞥见全息屏上的碱基序列正自动排列成菱形,和墨渊那天在实验室展示的星图投影,分毫不差。