彭老师在集训队说过,IMO的代数题从来不会给多余条件,每一个条件都是一级台阶,少踩一级就上不去。
他把三个条件列在草稿纸上:次数n,有限域F_q,求和条件。
然后在这三个条件之间画箭头。
从次数到有限域,箭头上面写着弗罗贝尼乌斯自同构。
从有限域到求和条件,箭头上面写着特征的正指数和。
从求和条件回到次数,箭头上面写着——
他停住了。
箭头画不回去。
求和条件里藏着一个关于n的隐含同余关系,这个关系如果不被激活,整个证明就会在第三步卡住。
他在草稿纸上把求和式展开,项一项地写出来,写满了大半页纸。
写到第十七项的时候,规律浮出来了。
求和式的值在模p意义下与n的某个函数同余。
这就是出题人藏起来的第三级台阶。
他找到了。
证明的主体用了不到四十分钟。
从弗罗贝尼乌斯自同构出发,把多项式的根在扩域中展开,用求和的同余关系反推不可约因子的次数,最后用反证法收口。
写完之后他检查了一遍,确认每一步的条件都用上了——彭老师说过,IMO的代数题,如果你有一个条件没用上,那你一定做错了。
三个条件全部用上了。
他翻到第二题。
第二题,组合几何。
题干只有五行,配了一张图——平面上一个由若干单位正方形拼成的区域,边界是一条闭合的折线,要求在区域内部放置若干个点,满足某种距离约束,并证明放置数量的最大值。
读完题的时候陆沉的嘴角微微动了一下。
不是笑,是一种确认。
这道题的内核和他在BJ集训队黑板上现场构造的那个复合图问题是同一类——表面上是几何距离约束,实质上是一个图的独立数问题。
把几何转化为图,把距离约束转化为边,把放置点的最大值转化为图的独立集大小的下界。
他在莫斯科做过一次,在BJ又做了一次。
现在是第三次。
他在草稿纸上画了一个示意图。
把区域内的所有可能放置点按照网格离散化——这一步出题人已经帮他们做好了,正方形的单位本来就是天然的网格。
然后定义图:顶点是网格点,如果两个点之间的距离违反了题目给定的约束,就在它们之间连一条边。
问题转化为:求这个图的最大独立集。
图的独立数没有通用的精确公式,但可以估计下界。
他用了图兰定理的一个变体——不是经典的禁止完全子图,而是禁止某种特定子图结构的极值问题。
这个变体是他之前在做图兰定理构造性算法时顺手推出来的,没有发表,只是记在了便签本里。
没想到在海德堡用上了。
估计出来的下界恰好等于题目要证的数值。
不是巧合,是出题人按照这个下界反推的题目。
他写完了第二题的证明。
图论转化花了三页纸,图兰变体的引理证明又花了将近两页。
整道题写下来,草稿纸用了五页,答卷纸用了三页。
写完之后他的手指微微发酸。
他把笔放下甩了甩手腕,然后拿起笔继续。
第三题。
数论。
题干是整张试卷里最长的,占据了半页纸。
定义一个关于素数分布的计数函数,给出一组复杂的参数条件,要求证明函数在参数趋于无穷时的渐近行为。
函数定义里嵌套了两个求和号,一个连乘积,还有一个分段函数——分段的条件写得极其隐蔽,藏在求和指标的取值范围里。
陆沉读完第一遍,没有找到那个隐藏的分段条件。
他读第二遍,把求和指标的每一个取值边界都在草稿纸上写出来,一个一个核对。
核对到第三个边界时他发现了——当求和指标取某些特殊值时,连乘积的项数会退化为零,而这一点在题干里完全没有明说,只用了一个“对任意m≥1”的表述轻轻带过。
如果没注意到这个退化,后面的渐近估计会把退化情形当成正常情形处理,主项系数就会多出一个因子,整个证明方向都会偏掉。
他把那个隐藏的分段条件用红笔圈出来,在旁边画了一个大大的感叹号。
彭老师说过,出题人埋陷阱的地方,就是你证明里必须单独处理的分支。
然后他开始搭渐近估计的框架。
计数函数的变量替换,求和次序的交换,主项分离,余项估计。
每一步都不难,但每一步都必须精确。
数论的渐近估计就像搭积木,中间有一块歪了,最后搭出来的房子就一定会塌。
他搭得很慢,每一块都反复确认。
写到余项估计的时候他遇到了一个选择。
余项里有一个和式,可以用两种方式处理:一种是传统的阿贝尔求和,步骤标准但余项边界会松一点;另一种是把和式拆成算术函数的狄利克雷卷积,然后用佩龙公式反演。
第二种方法的余项边界更紧,但推导复杂度高出一大截,而且需要用到复变函数里的围道积分——超出了IMO考纲,但IMO从来不禁止使用高等工具,只要你用得对。
他犹豫了大约五秒钟。
然后选了第二种。
不是因为他想炫技。
是因为第一种方法估计出来的余项边界,在参数趋于无穷时有一个边界情况会溢出,虽然溢出量很小,在大部分评分标准下不会扣分。
但他知道那个溢出在那里。
既然知道,就不能装作不知道。
他开始写佩龙公式的围道积分。
积分路径的选择,极点留数的计算,余项的分段估计。
这部分写了将近四页答卷纸,每一步的合法性都做了说明。
写完之后他把主项和余项合并,得到题目要求的渐近公式,分毫不差。
他放下笔。
四个半小时还剩下十二分钟。
他把三道题的答卷从头到尾检查了一遍。
不是查错,是查每一个可能被扣分的细节——第一题的隐含条件是否在证明里明确激活了,第二题的图转化是否说明了网格离散化不会影响距离约束的严格性,第三题的退化分段是否作为单独的分支处理了。
查完一遍,他又查了第二遍。
第二遍查到一半的时候铃声响了。
考试结束。
陆沉把试卷合上,放在桌角。
监考老师沿着每一排收卷,收到他这里时是一个头发花白的德国老教授,白胡子修剪得很整齐,和开幕式上致辞的主席有几分神似。
老教授拿起陆沉的试卷时扫了一眼答卷纸的厚度——第三题的围道积分写了四页,比其他选手厚出一截。
他的眉毛微微抬了一下,但没有说话,把试卷放进档案袋里,继续往下收。
走出考场的时候,海德堡的太阳已经升到头顶了。
七月的德国中午不算太热,阳光是一种淡淡的金色,落在教学楼的米黄色外墙上,把整栋楼照得像一块巨大的蜂蜜蛋糕。
何巍在教学楼门口的台阶上等他。
他手里拿着草稿纸,眉头皱着,看到陆沉出来,第一句话不是“你考得怎么样”,是——“第三题那个退化分段,你处理了吗?”
“处理了。”
何巍的眉头松开了一瞬,然后又皱起来。
“我处理了,但我的余项估计用的是阿贝尔求和,写到一半发现边界情况会溢出,来不及改了,只能在旁边加了一段文字说明。”
“文字说明也算分。”
“算,但肯定没有直接证出来高,”何巍把草稿纸折起来插进裤兜里,“不过那道题,就算扣我几分我也认了,出得好,一个退化分段藏得那么深,出题人是懂数论的。”
顾小北从考场里走出来,脸色有点白。
她走到台阶上坐下来,两只手撑在膝盖上,深呼吸了三次。
“第二题,图论转化我走了一半,网格离散化之后建图,但图的独立数下界估计我用的是常规的图兰定理,估计出来的界比题目要求的多了一项低阶项,我为了消掉那一项多花了将近一个小时。”
“消掉了吗?”陆沉问。
“消掉了,但第三题的时间不够了,余项估计只写了一半,”她把脸埋进胳膊里,声音闷闷的,“我第三题会做的,那道题我会做的。”
没有人说话。
台阶上安静了一会儿,然后王雪松从考场里走出来了。
他脸上没什么表情,走到台阶旁边站定,从口袋里掏出一颗大白兔奶糖,剥开糖纸塞进嘴里。
嚼了几下之后他说:“第一题,弗罗贝尼乌斯自同构,第二题,图兰变体,第三题,佩龙公式,三道题,三种工具,全在彭老师押的范围内。”