理想(ideal)是出现在抽象代数(更特别地,环论)中的一类对象,其命名很有渊源。之前我只知道这个名字来源于一位数学家研究惟一分解时引入的“理想数”(该研究的思路和一般化最终形成了现代数学语言中“理想”的定义),但是具体的细节不是很明白;最近在阅读 基于格(lattice)的密码学 的内容,其中提到了环上的格(ring lattice),其中提到了理想格(环的一个子集,同时满足格和理想的要求),好奇心一发不可收拾,读了 一些数学历史故事,对“理想数”加深了认识,记录下来以飨观众。文章最后讨论了“理想数”这个翻译的不达意之处。
这篇博文的内容主要是基于上述提到了数学历史故事,其引用是:Lemmermeyer, F. Abh. Math. Semin. Univ. Hambg. (2009) 79: 165. https://doi.org/10.1007/s12188-009-0020-5
你也可以 通过 arXiv 访问被引用文章。这篇博文的历史介绍不如那篇文章详细,但希望足以讲清楚“理想数”和“理想”的关系;本文将包括大量的翻译和少许补充。本文假设读者具有基本的抽象代数知识。
一个例子
这一节是 2019 年 4 月 8 日更新的,加入了一个经典的例子。考虑在 Z[√−5] 上有如下分解
6=2×3=(1−√−5)(1+√−5),
这说明 1±√−5,2,3 都不是 Z[√−5] 里的素数,但是又不可分解。为了解决惟一分解性的问题,Kummer 扩展了 gcd(a1,...,an) 的含义,用它来表示想象中 a1,...,an∈Z[√−5] 的“最大公因数”(它们在 Z[√−5] 里面可能没有最大公因数),先不深入说这个定义的技术细节。我们知道对于普通的数 a,b,c 来说
⟹gcd(b,c)=1gcd(a,bc)=gcd(a,b)×gcd(a,c),
由于 2,3 互素、1±√−5 互素,这样一来(直观上)就可以写
2=gcd(2,6)3=gcd(3,6)1−√−51+√−5=gcd(2,1−√−5)×gcd(2,1+√−5),=gcd(3,1−√−5)×gcd(3,1+√−5),=gcd(2,1−√−5)×gcd(3,1−√−5),=gcd(2,1+√−5)×gcd(3,1+√−5),
最后,6 可以写成四个“理想素数”的乘积。
用现代的语言来说定义本身,这是 Z[√−5] 的有限子集族商一个等价关系,这里面的等价关系以及商过之后等价类的运算,都是保 Euclidean 算法的:增加或者去掉 0 是单步等价的,把一个数替换为它加上另一个数的若干倍是单步等价的,单步等价的传递闭包就是该等价关系;两个理想数相乘,是各取一个两两相乘放在一起;两个理想数的最大公因数,是各取一个两两相加放在一起。当然,作为“数”来说,这样的定义“遗忘”了符号(单位),因此只能用来做乘法——这没什么问题,毕竟引入理想数就是为了解决因数分解问题——而且,常见的一种“最大公因数”的定义本来就是会遗忘符号的(最大公因数的相伴元素仍然是最大公因数)。
用现代的观点来看这个定义,它其实是有限生成理想的等价定义。用理想的语言来说,上面的分解实际上就是理想的分解
2Z[√−5]=(2,1−√−5)(2,1+√−5),
(其他几个分解略)其中 (a,b)={xa+yb:x,y∈Z[√−5]} 是 a,b 生成的理想。
最后,不是说对任何一个环引入了理想数(或者理想)就彻底解决了惟一分解问题:只有 Dedekind 整环才有理想的惟一分解,而比如 Z[√−3] 就不是一个 Dedekind 整环。
Kummer 的理想数
令 λ 是一个奇素数,α 是 λ 次本原单位根(一个复数,满足 αλ=1 且 αk≠1 对 k=1,...,λ−1),则环 Z[α] 中的元素可以写成 α 的小于 λ 次的整系数多项式
f(α)=a0+a1α+⋯+aλ−1αλ−1,
其中 a0,...,aλ−1∈Z。
考虑 Z[α]=⟨α⟩ 的自同构,因为是单生成环,只需要指定生成元 α 的像,显然只能是一个本原单位根,所以它的所有自同构是 σk:α↦αk,其中 k=1,...,λ−1(注意 λ 是素数)。
考虑 f(α) 的同构像,它们是 f(αk),其中 k=1,...,λ−1。把它们相乘得到 f(α) 的范数
N(f(α))=k=1∏λ−1f(αk),
该范数在任意自同构下不动,是一个整数。
注解:这个“范数”没有度量的意义。实际上 f(αk) 叫做 f(α) 相对于 σk 的 共轭。这类似于 C=R[x]/(x2+1) 的自同构 z↦z¯。考虑任意一个无零因子环的自同构群的有限子群自然作用于(acts on)该环,一个元素的所有像的乘积非零当且仅当自己非零,且该乘积在该子群下不动。另一个经典的例子是考虑 Q[√2],其中 p+q√2 的共轭是 p−q√2,范数是 p2−2q2。
Kummer 在一篇文章中如此介绍定义“理想数”的动机:
假设 p=λn+1 是一个素数,且在 Z[α] 上具有素因子,也就是
p=N(f(α)).
如果 f(α) 是一个复数且是 p 的素因子(在 Z[α] 中的素因子),则它具有这样的性质:如果我们用 ξλ≡1modp 的一个解 ξ 代入 α,就会得到(一个正确的等式)f(ξ)≡0modp。
这里我需要加一个注解:从现代的观点看,如果 p 在 Z[α] 上是合数,假使它的一个素因子是 f(α)∉Z,则 p 一定具有该元素所有同构像作为素因子;这是因为同构保持素性和整除性,而 p 在所有的自同构下都不动。因此,p 若是合数,则它具有 N(f(α)) 作为因子,这个范数不能是 ±1,因为范数是 ±1 的元素是单位而不是素数;将自同态 σ0:α↦1 作用于这个范数,可以看出它一定是非负的,所以只能是 p。
Kummer 接着提到:
如果(复)素数 f(α) 是复数 Φ(α) 的因子,则我们有 Φ(ξ)≡0modp。反过来,若 Φ(ξ)≡0modp 且 p 在 Z[α] 上可以分裂为 λ−1 个素数相乘,则 Φ(α) 具有素因子 f(α)。然而 Φ(ξ)≡0modp 是否成立和 p 是否能分解为 λ−1 个素数相乘无关。因此,我们可以改换思路,用这作为定义:我们说 Φ(α) 含有 和 α=ξ 相关联的 p 的“理想素因子”作为因子,当且仅当 Φ(ξ)≡0modp。
这里我要再加一段注解:这里的思想是非常深刻的。我先解释这段可能有些拗口的话的含义,再介绍我学习数学时类似的想法。
这句话:
然而 Φ(ξ)≡0modp 是否成立和 p 是否能分解为 λ−1 个素数相乘无关。
是说前面的同余等式本身的 sense 已经是 well grounded,直接把它看成多项式求值即可,它 sense 的成立不依赖于“理想素数 f(α)”的存在。
用一个更加初级的例子理解,如果我们考虑两个 n 阶有理数矩阵 A,B,则 A,B 相似当且仅当 A,B 具有相同的 Jordan 标准形。值得注意的是 A,B 作为有理数矩阵不一定具有 Jordan 标准形(例如它的有理数特征值个数不够),只有将它放到特征多项式的分裂域上考虑,才有 Jordan 标准形一说。熟知的是矩阵相似和域无关——两个矩阵相似,当且仅当它们的初等因子组/不变因子组/行列式因子相同。因此,我们改一种说法,不去考虑扩域什么的,而是如此定义:说两个矩阵 A,B 具有相同的 Jordan 标准形,当且仅当它们相似。这里,被定义的短语是“具有相同的 Jordan 标准形”,我们不去考虑“Jordan 标准形”是什么,而是根据相似与否定义是否是“相同的 Jordan 标准形”。
上面这个初级的例子再进一步考虑的话,可以把一个矩阵的 Jordan 标准形定义成该矩阵在相似关系下的等价类。这定义当然和我们熟知的 Jordan 标准形不同,但是它对于让短语“具有相同的 Jordan 标准形”具有“实在”的含义是有帮助的。应该如此理解这样一个窘迫的定义:这是一个不知道 Jordan 标准形的人尽全力给出的一个定义。同样,Kummer 对于“理想素数”的定义也是这样的,只不过在他的时期,数学界上对于“同构说法”的接受程度还不高。
好,接下来说一个我学习数学的时候的这种“先想象、后用想象去定义”想法:
Baby Rudin 里使用 Q 的 Dedekind 分割定义 R。若 X⊆Q 满足:
- X≠∅,X≠Q
- 对任意 x∈X,y∈Q,y<x 有 y∈X
- 对任意 x∈X 存在 y∈Q,y>x 使 y∈X
则说 X 是一个实数,所有实数的集合记作 R(后面各种定义略)。
应该如何理解这个定义呢?我是这么想的:先利用高中数学的幼稚想法假想“实数”的存在,对于一个实数 x,考虑 X=(−∞,x)∩Q,这个集合不依赖于“实数”的存在,而且不同的 x 会对应不同的 X(为什么?因为假想的“实数理论”里有 supX=x),因此我们现在改换想法,用不带“实数”的语言描述想象中的 (−∞,x)∩Q 这个集合,然后把它定义成“实数”。
这里也是相同的想法,Kummer 利用同余等式定义什么叫做“含有 blahblah 的‘理想素因子’”,然而这个“理想素因子”对于 Kummer 还是一个不知道存不存在的东西。
Jacobi 映射 ϕ:α↦ξmodp 满足性质 ϕ(f(α))=f(ξ)≡0modp,因此如果在 Z[α] 中有 f(α)∣Φ(α),则有 Φ(α)=f(α)g(α),同时用 ϕ 作用就有
Φ(ξ)=ϕ(Φ(α))=ϕ(f(α))ϕ(g(α))=f(ξ)g(ξ)≡0modp.
Kummer 发现无论 f(α) 是否存在都不影响 Φ(ξ)≡0modp ——只要盖住中间分解因数的部分,直接让 Jacobi 映射作用在 Φ(α) 上即可。因此 Kummer 对每个 Jacobi 映射 α↦ξmodp 都关联一个“理想素数”。
Lemmermeyer 指出:如果是今天的数学工作者,即使没有“理想”的概念,也可以毫不犹豫地直接把 Jacobi 映射定义为“理想素数”,但这样的用语对于当时的数学家来说还比较难接受。
Kummer 的新定义没有止步于此,提供“理想素数”的动机场景和由此产生的(有些拗口的)定义有三个问题:
- 数的局限性:Jacobi 映射只能提供 nλ+1 形式的素数的“理想因数”
- 次数难定性:我们可以谈论一个整数具有某个素因子的次数(该素数在标准分解中指数部分是多少),对于“理想素数”,如何确定 Z[α] 中一个复数具有该“理想素数”的次数呢?
- 完备性:如何知道已经找到了所有的“理想素数”?
其他部分我就不细说了。在现代数学语言中,Kummer 的“理想数”可以用“理想”来代替,实际上每个 Kummer 的“理想数”就对应素理想因子分解(ideal factorization)pZ[α]=I1⋯Iλ−1 中的一个素理想。
几点议论
首先可以明确的是,Kummer 的“理想数”是 Kummer 假想存在的复数。本篇博文里的“理想素数”就是“类似‘素数’的‘理想数’”,“理想因数”就是“是‘因子’的‘理想数’”,“理想素因子”当然就是“是‘因子’的‘理想素数’”。这里大量使用引号,是因为这些“数”并不存在(至少不自然)——生活在现代的我们已经知道,这个东西更自然的提法是“理想”。
其次,从“理想数”到“理想”的过程,我觉得是数学研究的积累带来的数学语言上的进步。做研究基本上是两件事情——提出问题、解决问题。其中提出问题就要给出定义,一种合适的语言框架对这一步很有帮助。
最后,我最开始想写这篇博文的目的是论证“理想”是一个不好的翻译。当然,这篇文章的思考价值已经不仅仅是论证“理想”这个翻译好不好了,但还是要提一下。如果你 follow 了我上面的想法,不难看出 ideale complexe Zahlen 翻译为“理想(复)数”是不达意的。
根据《现代汉语词典》,“理想”有两个义项:
- 对未来事物的想象或希望(多指有根据的、合理的,跟空想、幻想不同)
- 符合希望的;使人满意的
从数学研究的角度考虑,如果 Kummer 不是对自己的研究特别痴迷、视若子嗣,应该用不上第一个义项;数学是隽永的(虽然数学语言、数学工具是进化的),也说不上“未来”。第二个义项勉强可以用,但是稍后的对比就会发现不足。
德语形容词 ideal 等同于英语形容词 ideal,其义项是:
- Satisfying one’s conception of what is perfect; most suitable.
- [attributive] Existing only in the imagination; desirable or perfect but not likely to become a reality.
- Representing an abstract or hypothetical optimum.
第一个义项等于汉语“理想”的第二个义项,然而在这里应该取第二个义项(非子项),第二个义项要求 not like to become a reality,不完全贴合汉语的第一个义项。
实际上,从上文可以看出,Kummer 想要表达的是 imaginary 才对!只是“虚数”这个词已经被用掉了,所以才从 imaginary 变成了 ideal。意义上更准确的翻译是“想象数”“设想数”或者“假想数”。
环论中的 ideal 可以粗略地想成是倍数的集合(这对于 PID 是完全正确的想法),从 number 的角度来说,这统一了 non-ideal number(实际存在的复数)和 ideal number(Kummer 的“理想数”)。当然,无论怎么翻译,放到环论中的 ideal 都还是比较难有一个“直观”的汉语名字。
请启用 JavaScript 来查看由 Disqus 驱动的评论。