Skip to content

从有限同余到 p-adic 根数证书 ​

本终点把四种输出接起来:系数赋值排除哪些根,有限乘积认证哪些因子,指定球中如何得到唯一极限,以及无限尾部何时不会破坏有限精度结论。每份有限计算都附上把它推广到无限精度的理由。

返回学习路线。所需接口是Newton多边形、互素因子提升、强Hensel条件和闭球零点界。

任务一:一份三次式的全部基域根 ​

在 Q3 上研究

f(X)=X3−X2−3X+30.

要求先给可能根赋值,再把模3的两块因子提升到 38,最后证明 Q3 中根的确切数目。答案必须分清:有限因子同余、完整 Z3 因子,以及扩域根。

斜率只留下单位候选 ​

系数点是 (0,1),(1,1),(2,0),(3,0)。下凸折线有两条边:斜率 −1/2、长度2,以及斜率0、长度1。因此基域非零根的赋值只能是0;1/2 不是 Q3× 的赋值。常数不为零,也排除了零根。

模3分解为 X2(X−1)。两块互素,尽管第一块本身有重因子。余数1是简单根,所以至少存在一个三进单位根 ρ≡1(mod3)。

提升与完整乘积证书 ​

逐位因子提升到 38=6561 得

g8=X2+1836X+375,h8=X+4724.

直接乘开,不仅检查某几个代入值,而是核对所有系数:

(1)f−g8h8=−6561(X2+1322X+270).

所以这是一份完整的模 6561 因子证书。一次因子给 ρ≡−4724≡1837(mod6561);二次因子的系数也符合

1836≡ρ−1,375≡ρ2−ρ−3(mod6561).

有限同余本身还不是精确分解。互素提升的每层唯一性使这些系数相容,完备性给极限,因而在 Z3[X] 中真正有

(2)f=(X−ρ)(X2+(ρ−1)X+ρ2−ρ−3).

为什么不会漏掉另两个基域根 ​

逐位提升的前两层给 ρ≡1(mod9)。于是

v3(ρ−1)≥2,ρ2−ρ−3≡−3(mod9).

二次因子的常数项赋值恰为1,首项赋值0,中间点高于连接它们的线段。它的唯一边斜率为 −1/2。任何非平凡因子的次数必须被斜率分母2整除,故这个二次式在 Q3 上不可约。

因此 f 在 Q3 中恰有一个根 ρ,不是三个。若在一个已带延拓赋值的分裂域中讨论,另外两个根的赋值为 1/2,各自计入长度为2的那条边;这个扩域陈述没有改变基域根数。

任务二:四个有限根,只有两条无限分支 ​

在 Q2 中解 x2=17,求出全部模 212 根,并说明哪些有限余类可一直延续。不能仅因某层出现四个根,就宣布有四个二进根。

从重剩余根启动 ​

取 a=1。有

v2(a2−17)=4>2v2(2a)=2.

强Hensel给唯一 α≡1(mod4),且 v2(α−1)=3。取 a=−1 得另一个根 −α≡3(mod4)。任一根的赋值由 2v2(x)=v2(17)=0 确定为0,二次式至多有两个根,所以已穷尽 Q2 中的解。

Newton迭代从1给

1,9,499,1889441.

最后一个近似的误差赋值为17。因此可用奇数441的模逆元直接取前12位:

(3)α≡1889⋅441−1≡1769(mod4096),−α≡2327(mod4096).

这两个平方减17分别为 764⋅4096 和 1322⋅4096。在这一层,完整四根表为

(4)279,1769,2327,3817.

另外两数分别是 2327+2048 与 1769+2048 的标准模4096代表。

用因式分解证明所有层的四根公式 ​

对奇数 x,在 Z2 中写

x2−17=(x−α)(x+α).

两因子的差 2α 赋值恰为1,所以它们的赋值一项恰为1、另一项至少为2。对 n≥3,乘积被 2n 整除,当且仅当

x≡α(mod2n−1)或x≡−α(mod2n−1).

这两个模 2n−1 类各有两个模 2n 代表,且彼此不同,故恰好四根。在第 n 层,只有与 ±α 模 2n 相同的两个余类能向下一层提升;每个各有两个有限子余类,其中又只有一个可继续无限延续。其余两类下一层即终止。

所以式(4)中的279与3817虽通过模4096平方检验,却不能提升到模8192根。1769与2327可提升,而无限相容性最终仍只留下两根。有限根数和无限分支数在这个例子中确实不同。

任务三:一个无限尾部在哪一位改变根 ​

改研究闭单位球上的级数

(5)F(X)=f(X)+∑n≥43n2Xn.

要求证明 Z3 内恰一个根 β,比较它与任务一的 ρ,并算到模 318。无穷尾部不能被当成“数值太小就忽略”;每次省略都必须附一个整除界。

从三根上界收紧到一根 ​

系数趋零保证闭单位球上一致收敛。整体最后最大系数指标是3,Strassmann先给至多三根。模3为 X2(X−1),所以只需考虑0、1两个余类。

若 x∈3Z3,常数30赋值1,其余项赋值至少2,无法抵消;余类0没有根。余类2在模3就不是根。对剩下的余类1,写 x=1+3y 并除以3:

(6)f(1+3Y)3=9−2Y+6Y2+9Y3.

无限尾部的第 j 项系数是

∑n≥max(4,j)3n2+j−1(nj).

它们全部可被 315 整除。因此新级数只有一次项系数是单位,最后最大指标为1,在这个余类至多有一根。整系数受限级数的Taylor余项证明允许从模3简单根1应用逐位提升,给出存在性。合起来,整个 Z3 中恰有一个根 β。

精确比较两根,而不是只比较残差小 ​

ρ 是单位,且 f(ρ)=0。所以

F(ρ)=316ρ4+325ρ5+⋯

第一项严格领先,赋值恰为16。又有 F′(ρ)≡f′(ρ)≡1(mod3)。简单根的精确误差结论因此给

(7)v3(β−ρ)=16.

两根的前16个三进数字相同,第16号数字(从0号计)第一次不同。这里没有把残差赋值自动当成根误差;相等性使用了导数为单位及唯一球中的根识别。

有限查询怎样带着尾部保证 ​

计算模 3B 的 F(x) 时,x∈Z3 使第 n 项赋值至少 n2。因此只需保留 n2<B 的项。特别当 B=18 时,无限尾部仅保留 316x4;从 n=5 起的所有项都被 325 整除。

逐位求得

(8)ρ≡244635283(mod318),β≡72448399(mod318),ρ≡β≡29401678(mod316).

两个模 318 代表的差恰为

72448399−244635283=−4⋅316,

与式(7)吻合。公开程序分别验证 f(ρ)≡0 与 f(β)+316β4≡0(mod318),并记录每一步唯一新位。这里的唯一根结论范围是 Z3;并没有用闭球定理直接数整个 Q3 的根。

任务四:给错误证书找到具体失败处 ​

以下四份断言各缺什么?需要给能直接复算的拒绝理由。

  1. “Newton多边形只有一条边,所以多项式不可约。”取 (X2−3)2,唯一边斜率为 −1/2、长度4,但它已经写成两个二次因子的乘积。分母约束只要求每个因子次数被2整除。只有该分母等于整个次数时,才能据此直接排除非平凡因子。

  2. “模3分成 X⋅X,照互素公式也能提升。”对 X2−3,两块的最大公因子是 X,不存在所需Bézout逆元;赋值条件 2v3(x)=1 又直接排除 Q3 根,所以不可能有两份一次因子提升。换成 X2−9,(X−3)(X+3) 和交换顺序又给不同有序提升,说明缺少互素性也可导致非唯一。

  3. “已经看到很长的零系数尾巴,因此常数1之后不会再有根。”常数级数1与 1−XM+1 的前 M+1 个系数相同,后者却有根1。两者都满足系数趋零。缺少一个控制所有后续系数的有效尾界,有限前缀不能认证最后最大指标。

  4. “强Hensel的误差商给出的较大闭球也唯一。”对 p=3、f=X2−324、a=9,m=5>2s=4。正确球 v3(x−9)>2 只含根 −18;较大球 |x−9|3≤1/3 同时含 18 与 −18。根误差 m−s=3、有效精度 m−2s=1、唯一球阈值 s=2 是三个不同量,各有各的用途。

复算入口 ​

下载标准库精确程序与固定结果。程序只用整数和Fraction作判定,可通过 --output 指定独立输出位置;普通模式与 Python 的 -O 模式结果相同。

有限检查涵盖完整因子系数、带权端点和斜率并集、不同素数与次数的互素提升、Newton残差赋值、有限余类的终止/延续、可证尾截断与Strassmann除根系数。任意精度及一般零点数的结论来自正文中的证明,不来自有限枚举的次数。