ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

从自然数全加和到费马大定理:数论中的和式结构与数学思维

从自然数全加和到费马大定理:数论中的和式结构与数学思维 把“自然数全加和”和“费马大定理”放在同一个标题里乍看像是把一块砖和一栋楼摆在一起。可正是这块叫 n(n1)/2 的砖在我最近重读费马大定理相关资料时反复出现在各种关键推导的脚下。给这篇文章起这个名字并不是想给费马大定理找一个初等证明——那样的证明目前还不存在也不是想复述教科书上那些伟大历史而是想从一个普通数学爱好者的角度把“自然数全加和”这根线一路牵到“费马大定理”这座山的山腰看看沿途有哪些漂亮的岔路以及岔路上哪些东西是你拿纸笔就能亲手验证的。自然数全加和公式 12...n n(n1)/2是很多人接触数论的第一块基石。费马大定理则说对任意大于 2 的整数 n方程 a^n b^n c^n 没有非零整数解。一个是最简单的一次求和一个是困扰数学家三百多年的高次丢番图方程表面看八竿子打不着。但如果你把费马大定理的方程做变形、取模、因式分解会看到大量“和式”冒出来差幂展开后的等比级数和、模 p 意义下的幂和、椭圆曲线 L 函数里的无穷级数。可以说“和”才是连接这两个命题的翻译器。这篇文章适合三类人刚学完初等数论想找发散视角的学生对怀尔斯证明充满好奇但不想啃大部头的业余读者以及正在备课、想给课堂找新素材的老师。下文所有结论你都可以一边读一边用纸笔或几行代码自己验证。1. 先看清楚自然数全加和与费马大定理各自在说什么1.1 自然数全加和公式的那点老底子“自然数全加和”这个名字听起来很正式其实就是把从 1 加到 n 的和一次性算出来。小学生熟知的版本是高斯小时候的故事老师让全班算 123...100高斯很快写下 5050。他的办法在今天看来就是配对称1100101299101398101……一共有 50 组50×1015050。推广到一般情形把数列首尾配对1 和 n 成一组2 和 n-1 成一组每组和都是 n1一共有 n/2 组当 n 为偶数时所以总和是 n(n1)/2。n 为奇数时同样成立只是中间那个数单独剩下结论不变。这个公式在数论里的地位比它看起来要重要得多。毕达哥拉斯学派早就研究过三角形数1、3、6、10、15……这些数正好能排成等边三角形点阵而第 n 个三角形数就是 T_n 12...n n(n1)/2。三角形数、平方数、五边形数这些“有形数”是早期数论的核心对象现代解析数论里很多复杂的求和本质上都是在处理某种“广义三角形数”。你后面会看到费马小定理的模 p 版本里12...(p-1) 这一项会原封不动地出现而它之所以等于 p(p-1)/2靠的就是这条最基础的公式。1.2 费马大定理的“另一种读法”费马大定理的内容本身很短对任意整数 n2a^n b^n c^n 没有非零整数解。但有一个细节在多数科普里被轻轻带过而它对理解整个证明结构至关重要你只需要证明指数 n4 和 n 为奇素数这两种情况就够了。原因是这样的如果某个指数 n 有大于 1 的真因子比如 n m·k那么一旦方程 x^n y^n z^n 有解令 X x^kY y^kZ z^k就能得到 X^m Y^m Z^m说明指数 m 也会有解。换句话说“有解”这个性质会沿着指数的约化向前传递。所以只要把所有没有真因子的指数全部排除所有含因子的自然数指数也就自动被排除了。没有真因子、又不是素数的数只有 2 的幂其中 2 本身有勾股数解3²4²5²不能排除因此从 4 开始处理 2 的幂就够了。费马本人用无穷递降法证明了 n4 无解剩下的事情全部归结为奇素数指数。库默尔后来用理想数理论处理了一大批奇素数指数而怀尔斯 1995 年的证明目标也是“所有奇素数指数”。读费马大定理我建议你不要只记住结论多想想这种“约化到素数指数”的思维方式。它其实是一种逆向的“降维”把一个无穷集合的问题通过性质传递压缩到一小撮关键指数。很多看似无从下手的数论难题第一步做的都是这种事。1.3 为什么这两个命题值得放一起“再论”把自然数全加和与费马大定理放在一起不是生拉硬扯关键是“和式”这个公共结构。费马大定理的方程 a^n b^n c^n 一旦改写成 c^n - a^n b^n左边立刻可以被因式分解产生一个有限和两边再同时取模 p又会出现 k^p 与 k 的同余替换把高次幂和降成一次幂和到了怀尔斯的证明里模形式和椭圆曲线的 L 函数更是由无穷级数定义的。可以说费马大定理从“积”的角度看是一道关于乘积的方程从“和”的角度看是一连串关于和的约束而自然数全加和就是我们手里最简单、最可靠的一把“求和标尺”。打个比方费马大定理是一座高楼自然数全加和是其中的一块砖。一块砖当然盖不起高楼但如果你连砖的烧制原理都不懂你连工地都进不去。下面几章我会带你把这块砖从地上捡起来先看它怎么碎成幂和再看它怎么在模 p 世界里显灵最后看它如何以无穷级数的形态出现在怀尔斯证明的远景里。2. 从差幂展开到幂和恒等式把费马大定理翻译成求和问题2.1 几何级数求和与 c^n - a^n 的拆解现在正式开始“翻译”。把费马大定理的方程做一步移项c^n - a^n b^n左边是一个“两个 n 次幂的差”它有一个非常漂亮的因式分解c^n - a^n (c-a)(c^(n-1) c^(n-2)·a c^(n-3)·a² ... c·a^(n-2) a^(n-1))为什么成立你只要把右边展开第一个 c 乘以括号里的每一项再减去 a 乘以括号里的每一项中间那些项两两相消剩下正好是 c^n - a^n。这个过程本质上就是几何级数求和的逆向操作只是把公比换成了 c/a 的形式。这个分解值得停下来多看两眼。括号里的和式一共有 n 项每一项的“总次数”都是 n-1它们构成了一条从 c^(n-1) 平滑过渡到 a^(n-1) 的幂次链。如果你令 d c-a那么 cad括号里的项就全部变成关于 a 和 d 的多项式这本质上是在做“差量展开”。很多初等数论里对费马大定理的讨论都是从这一步开始的。举一个具体数值例子。取 a3c5n3那么 5³-3³ 125-27 98而分解给的是 (5-3)(25159) 2×49 98。你看括号里那个和 2515949正好是 7²这说明差分出来的括号有时候会天然形成某类幂。回到费马大定理的背景中我们真正关心的情况是整个乘积 (c-a)×(括号和) 要等于 b^n也就是一个纯的 n 次幂。这就在“一个差因子”和“一串幂和”之间建立了一场博弈自然数全加和的研究方法恰好适合观察这种博弈的局部规律。2.2 立方和公式撞上 x³ y³ z³继续沿着“和式”这条线深挖会遇到一个特别漂亮的恒等式它直接把自然数全加和和三次幂焊在一起1³ 2³ 3³ ... n³ (12...n)² [n(n1)/2]²就是说前 n 个自然数的立方和等于前 n 个自然数之和的平方。我当年第一次看到这个式子时愣了一下因为它把“一次和”和“三次幂和”用一种出人意料的方式等同起来了。证明其实不难用归纳法记 T_n n(n1)/2验证 T_n² - T_{n-1}² n³ 即可。展开平方差T_n² - T_{n-1}² (T_n - T_{n-1})(T_n T_{n-1})前者是 n后者代入公式后正好是 n²所以乘积为 n³。这个恒等式和费马大定理的 n3 情形放在一起看很有味道。费马大定理 n3 说的是x³y³z³ 不存在非零整数解。但与此同时连续自然数的立方和却能一个不差地凑成一个平方数。差别在哪差别在于“连续积累”和“任意挑选”。1³2³...n³ 是一整段连续自然数的立方和它由于结构恰好对齐而成为平方而费马大定理里的 x³、y³ 是任意取两个数各自的立方它们要相加得到另一个立方等于要求两个孤立的立方块完成某种“硬凑”而这种硬凑在 n≥3 时永远不会成功。连续与离散、整体与局部这种对照非常迷人也是一般教材不会专门点出来的角度。2.3 n2 时为什么能解开n≥3 时卡在哪既然费马大定理对 n2 是有解的勾股数无穷多那我们可以对照一下看 n2 和 n≥3 的本质差异在哪里。n2 时原方程是 x²y²z²写成差幂分解的形式z² - x² (z-x)(zx) y²假设 z-x 与 zx 互素那么因为它们乘积是一个平方数各自都必须是平方数。于是可以设 zx u²z-x v²解出 x(u²-v²)/2z(u²v²)/2yuv。这正是勾股数的经典构造公式需要处理奇偶性具体可加参数 m、n 写成 am²-n²b2mncm²n²。整套推导非常自然因为 2 次差幂分解后括号里只有两项而两项相乘等于平方给“各自为平方”留下了充足空间。到了 n3差幂分解变成 z³-x³ (z-x)(z²zxx²)。括号里是三项和它不再是单纯的“两项乘积”那么温和。你想让整个乘积等于一个立方 b³就必须分配好“差因子”和“括号和”各自的因子贡献。而括号里的 z²zxx² 是一个带有交叉项的和式它和纯 n 次方之间的空隙极大。欧拉证明了这种分配永远做不到。为什么做不到初等解释往往很长但直观感觉你已经能抓到幂和结构越复杂它对“恰好等于某个纯幂”的限制就越苛刻。n2 时那种“两个因子各是平方数”的宽松舞台到 n≥3 时彻底消失了。3. 模算术视角费马小定理如何把自然数全加和带进费马系3.1 费马小定理与 k^p 同余 k 背后的思路这一章我们换一个视角不看等号看同余。费马小定理说的是如果 p 是素数那么对任意整数 a都有 a^p ≡ a (mod p)。如果 a 不是 p 的倍数还可以写成 a^(p-1) ≡ 1 (mod p)。这个定理的名字和费马大定理同出一人但在证明难度上简直是两个世界。小定理可以用一个很漂亮的二项式展开归纳来证假设 a^p ≡ a 对某个 a 成立那么 (a1)^p 展开后中间那些项都带有二项式系数 C(p,k)而 C(p,k) 在 p 是素数时一定是 p 的倍数所以 (a1)^p ≡ a^p 1 ≡ a1 (mod p)。从 a0 出发归纳结论自动成立。这里的关键作用点就是“素数 p 能整除所有中间的二项式系数”。费马小定理告诉你一件事在模 p 世界里p 次幂会“降维”成一次幂。k^p 和 k 在模 p 意义下根本就是同一个数。这个性质用在全加和上会产生非常奇妙的联动。3.2 用全加和公式验证一个有趣的同余式把费马小定理和自然数全加和结合起来可以验证一个漂亮且直观的同余式。设 p 是奇素数考虑S_p 1^p 2^p 3^p ... (p-1)^p对每一项使用费马小定理k^p ≡ k (mod p)。于是立刻得到S_p ≡ 1 2 3 ... (p-1) p(p-1)/2 ≡ 0 (mod p)注意这里最后一步用到的正是自然数全加和公式。所以结论是前 p-1 个自然数的 p 次方和总能被 p 整除。你看一个看起来与“全加和”毫无关系的纯高次幂和绕了一圈后竟然精确落回了一次幂和公式的控制范围。这个结论你在纸上随便拿 p7、p11 验证都能立刻得到确认1^72^7...6^7 184564除以 7 正好整除。更进一步可以把指数从 p 换到任意 j。对 1 ≤ j ≤ p-2有Σ_{k1}^{p-1} k^j ≡ 0 (mod p)而当 j p-1 时因为每个 k^(p-1) ≡ 1所以Σ_{k1}^{p-1} k^(p-1) ≡ p-1 ≡ -1 (mod p)证明 1≤j≤p-2 的情形需要用模 p 的原根 g把集合 {1,2,...,p-1} 重新写成 {g^0, g^1, ..., g^(p-2)}于是原式变成一个等比数列求和分子是 g^(j(p-1))-1由于费马小定理 g^(p-1)≡1分子归零整个和为 0。这个结果在数论里很基础但它展示了一个重要事实自然数全加和公式不仅在第一层起作用它在整个幂和族身上都留下了控制痕迹只在指数达到 p-1 这条临界线时结果才会跳变为 -1。这个“从 0 到 -1”的跨越背后是伯努利数和模 p 结构的深层联系你以后读解析数论会一再碰到。3.3 手把手跑一个穷举验证Python 思路光看公式不过瘾建议你自己动手跑一遍。我写了两段非常短的 Python 代码不需要任何第三方库复制到任何 Python 3 环境就能运行。第一段用来验证费马大定理在特定指数下“小范围内没有解”顺便对 n2 做个对照实验def iroot(k, n): # 求不大于 k 的整数 n 次方根 x int(round(k ** (1.0 / n))) while x ** n k: x 1 while x ** n k: x - 1 return x def check_exponent(n, limit60): hits [] for a in range(1, limit): for b in range(a, limit): s a ** n b ** n c iroot(s, n) if c limit: continue if c ** n s: hits.append((a, b, c)) return hits print(n2:, check_exponent(2)) print(n3:, check_exponent(3)) print(n4:, check_exponent(4)) print(n5:, check_exponent(5))我跑出来的结果是n2 时立刻能找到 (3, 4, 5)、(5, 12, 13) 等勾股数n3、4、5 时列表为空。这说明在数值表层费马大定理的表现和它“难”的名声是一致的低指数下连一个反例的影子都看不到。第二段验证 3.2 节的同余式p 17 s1 sum(pow(k, p, p) for k in range(1, p)) % p s2 sum(pow(k, p - 1, p) for k in range(1, p)) % p print(s1) # 期望 0 print(s2) # 期望 p-1即 16这段代码里我用了 pow(k, p, p)它先算 k^p 再对 p 取模Python 处理大整数幂的效率很高所以你甚至可以换更大的素数试试。看到 s1 稳定等于 0、s2 稳定等于 p-1 的时候你会对“全加和公式在模 p 世界里无处不在”这句话有切身体感。4. 再看大定理证明的骨架和式结构藏在哪里4.1 从“无穷递降”到“模形式”证明思路的几次换轨费马大定理的证明史是一条不断换轨的历史。最早费马证明 n4 用的是无穷递降法假设有一个解就构造出一个更小的解永无止境可正整数不能无限变小于是矛盾。欧拉处理 n3 时用的也是类似的思路但复杂得多。之后索菲·热尔曼给出了一个针对一大类素数指数的漂亮条件如果 p 是奇素数且找不到满足某些整除性质的三元组那么 x^py^pz^p 就没有解。库默尔又引入理想数把“正则素数”的情形整批解决。这些早期工作有一个共同点都在跟具体的因式分解、幂和结构、整除性质较劲。到 1980 年代整体策略发生了天翻地覆的变化。弗雷提出如果 a^p b^p c^p 有解那么可以构造一条特殊的椭圆曲线后人叫它弗雷曲线形如 y² x(x-a^p)(xb^p)。这条曲线如果存在就能推出一个极其违反常规的结论它不能是模曲线。而谷山-志村猜想后来叫模性定理说有理数域上的每条半稳定椭圆曲线都是模的。两条路一撞问题就变成证明模性定理的半稳定情形。怀尔斯给出了这个证明历经七年卧薪尝胆中间甚至发现过漏洞最后和泰勒一起补上了缺口。1995 年论文发表费马大定理正式成为“费马最后定理”。这里我要提醒一句整个换轨过程中“和式”从来都没有消失。弗雷曲线的系数里有 a^p 和 b^p它们出现在常数项和一次项里验证曲线是否模的要比较它的 L 函数和某个模形式的 L 函数而所谓模形式本身就是一个带有傅里叶展开的无穷级数对象。有限幂和只是退到了后台无穷幂和登上台面。4.2 椭圆曲线、L 函数与幂和的微妙关系很多人一听到椭圆曲线和模形式就头皮发麻其实它们的核心动作依然是你熟悉的事求和。椭圆曲线 E: y² x³ ax b 定义在有理数上时你可以在模 p 意义下数一数它有多少个点记作 N_p。然后定义 a_p p - N_p这些 a_p 是被收集起来排成一个无穷级数L(E, s) a_1/1^s a_2/2^s a_3/3^s ...这就是椭圆曲线的 L 函数。而模形式这一侧同样的 L 函数可以由模形式的傅里叶系数 b_n 展开L(f, s) b_1/1^s b_2/2^s ...。模性定理说对每条半稳定椭圆曲线都能找到一个权为 2 的模形式使得两侧展开的系数完全一致。看到没有怀尔斯证明的实质是在让两个无穷级数逐项相等。这已经离“自然数全加和”很远但观察方式一脉相承有限域上的点计数本质是在数一个个有限集合的元素个数幂和 Σk^j mod p 是同一种计数动作的代数化而 L 函数则是把所有“有限计数的结果”按自然数 n 排成无穷和。从这个角度看n(n1)/2 和 L(E,s) 之间的跨度只是从一次求和到无穷求和的跨度研究对象变了底层语言没有变。4.3 这个“再论”留给普通读者的三个实操启示绕了这么一大圈我想把这次重读真正沉淀下来的东西浓缩成三条可以应用在你自己学习或研究里的操作经验。第一条拿到问题先做“翻译”。一个方程、一个恒等式、一个同余式它们之间是可以互相转化的。费马大定理在 a^nb^nc^n 的形式下像一道铁门但改写成 c^n-a^nb^n 之后差幂分解立刻给你一扇窗。以后你碰到任何看似无解的数学对象先别急着啃试试变形、换坐标系、换模往往第一步翻译就决定了能不能走通。第二条反例先行是数论研究的好习惯。我认识不少学生一上来就啃费马大定理的长篇证明连 n3、4、5 在数值表层的表现都不清楚。我自己更推荐的做法是先写个穷举脚本把答案“长什么样”看清楚。你跑完 3.3 节那段代码看到 n3 时小范围内干干净净、n2 时却处处开花才会真正感受到这个定理“难”的分量。这不是浪费时间这是在用最小的成本积累直觉。第三条重写经典命题哪怕写得不够严谨。我这次“再论”最大的收获就是把费马大定理翻译成“差幂展开后的括号和是否能成为一个纯 n 次幂”的问题。这个翻译本身不能证明什么但它帮我重新理解了定理的困难所在所有麻烦都集中在那个带有交叉项的幂和结构里。你不一定要成为专家才能“再论”你只需要肯把一个经典问题翻来覆去地拆成小和式拆到它对你不再是一句口号为止。我个人的体会是数学里那些看似高不可攀的命题脚下往往都踩着像 n(n1)/2 这样不起眼的公式。你不需要等成为专家才能重新审视它们只要肯把大问题慢慢拆成小和式就能看到不一样的风景。最后再分享一个小习惯每次遇到幂方程先把指数降到 1 或 2 试试再用模运算筛一轮很多看似神秘的结论会自己浮出来。这次从自然数全加和一路走到费马大定理走的其实就是这样一条路。
返回列表