问一个五岁小孩"直线是一维的、平面是二维的",他会觉得你多此一问;问一个学完第 3 章的学生"曲线簇的维数怎么严格定义",答案就不再显然——曲线被拧弯、被嵌进高维空间后,"长短宽窄"的视觉直觉全部失效。维数需要与图像无关的代数定义,而且最好有好几种、彼此互相印证。本节给出三种口径,验证它们在所有标准例子上给出同一个数,再交付一条日常最好用的经验法则。
维数:对仿射簇 V,以下三种定义等价。其一(链长口径):k[V] 中严格递增素理想链的最大长度。其二(函数域口径):函数域 k(V) 在 k 上的超越次数。其三(消元口径):把 V 投影到坐标子空间,能单射保信息的最大坐标数。V 的维数记作 dim V。
未定术语之前,先用"参数个数"校准一下体感。圆 x²+y²=1 上的点由参数 t ↦ (cos t, sin t) 或有理参数化生成——一个参数,一维。A³ 中的球面 x²+y²+z²=1 仍是一个方程,但要确定球面上一点,两个自由度就够——二维。整个 A³ 三个自由度——三维。原点零个自由度——零维。规律初见端倪:**每加一个独立方程,自由变量少一个**。这条体感将在第三节变成可计算的"期待维数法则"。

链长口径把"维数"换成"素理想能叠多高"。以 A³ 为例:⟨0⟩ ⊂ ⟨x⟩ ⊂ ⟨x,y⟩ ⊂ ⟨x,y,z⟩ 是一条长度为 3 的严格素链,且再叠不上去,故 dim A³ = 3。圆的坐标环 k[x,y]/(x²+y²−1) 里:⟨0⟩ ⊂ ⟨x−a, y−b⟩(每个点一个极大理想),长度 1 封顶,维数 1。链长口径的好处是与第 1 章字典无缝衔接——理想搭塔,几何上就是"点 ⊂ 曲线 ⊂ 曲面"的层层包住。
函数域口径数超越次数。圆的函数域 k(x)[y]/(y²+x²−1)——y 满足系数在 k(x) 中的二次方程,是代数元,不添超越性,故超越次数 1,dim = 1。双曲线的函数域 k(x),超越次数 1。球面函数域超越次数 2。第 3 章辛苦建起的函数域在此兑现价值:维数是双有理不变量——双有理等价的簇维数必相同,函数域一查便知。两种口径互为 backup:链长便于在商环里直接读,超越次数便于在双有理等价类里认亲。
日常计算用经验法则就够:n 维空间里 m 个"足够独立"的方程,解集期待维数为 n − m。它由克鲁尔主理想定理支撑:单个非零方程的零点集每个不可约分支维数恰为 n−1("至多降一"严格成立,"恰好降一"要求方程非零因子)。配上第 1 章的消元思想,还能算法化地求维数:消去一个变元,方程组少一维,逐层消元后剩下的变元个数就是维数——这正是"投影到坐标子空间"口径的操作版。Singular 里 dimension(std(I)) 一行就是这条口径的机器化,7.2 节实跑。
一个必须警惕的例外已在图中标注:方程不独立时维数偏高。x·z=0 与 (x−1)·z=0 联立,两式的公共因子 z 让解集是整张超平面 z=0,期待维数 1 实际维数 2。判定独立性要用素分解(把 √I 分解成素理想的交),机器同样代劳。
例一(可约簇取最大):A³ 中联立 xz=0 与 yz=0。整理:z=0 给出整张平面;或者 x=y=0 给出整条 z 轴。解集是"平面 ∪ 直线",两个分支维数分别为 2 与 1,簇的维数取最大值 2。这道题纠正两个直觉偏差:其一,两个一次方程的联立未必降两维——方程不独立(都含因子 z)时只降一维;其二,"维数"属于整个簇时取各分支之最,而"每一点的局部维数"可以在平面附近是 2、在直线(去掉交线)附近是 1——全局维数与局部维数的关系,是后续课程的正式议题。
例二(参数式与隐式的维数握手):空间曲线 (t, t², t³)(挠三次曲线)藏在 A³ 里。参数口径:一个参数,一维。隐式口径:它恰是 V(y−x², z−x³)——两个方程、三维空间、期待维数 3−2=1,对上。消元口径:从 y=x²、z=x³ 中消 t 消不动(t=x 本来就在),说明它"投影不降维"。三条口径报同一个数,谁也没骗谁。**参数化(从 t 造点)与隐式化(造方程围点)互为逆操作**,格罗布纳基的消元在两者之间摆渡——7.2 节会真的摆一次。
问一:为什么有限点集是零维,而不是"维数等于点的个数"?答:维数度量"连续自由度",不度量数量。十个孤立点与一个孤立点,自由度都是零——每一点都钉死了,没有可连续移动的方向。数量是另一门学问(相交计数、第 4.2 节的贝祖账),两套账本别混记。
问二:射影平面 P² 的维数是多少?答:2。齐次坐标 (X:Y:Z) 有三个坐标、一条"倍数视为相同"的等价约束,自由度 3−1=2。一般公式:Pⁿ 的维数恰为 n。它与仿射平面的维数相同——射影化补点不升维,补的是"边界"不是"厚度",这条直觉在第 4.2 节数贝祖账时能防止把无穷远点数重。
问三:把基域从复数换成实数、再换成有限域,维数变吗?答:不变。维数是方程组与理想的属性,链长与超越次数的算法对任何基域照跑;变化的只是"点有多少、图能不能画"——复数域点最全、实数域次之、有限域点有限。维数管结构,域管点数,分工划清后,很多"域变了结论变不变"的困惑自动消散。
拿抛物线 y = x² 当考卷,把三种口径各答一遍。直觉口径:一个参数 t 拉出全部点 (t, t²),自由度一,维数 1。链长口径:坐标环 k[x](把 y 换成 x² 后曲线的函数全由 x 生成),素链 ⟨0⟩ ⊂ ⟨x⟩ 到顶,长度 1。函数域口径:k(x),超越次数 1。三票一致。再把消元口径补上:抛物线投影到 x 轴(忘掉 y 坐标),映射是一一对应,投影不降维,保住的最大坐标数是 1。四票全过,这道题就算"焊死"了——日后遇到拿不准维数的簇,照这个四票流程逐项跑,分歧点往往是新定理藏身处。顺带记一条边界约定:空集的维数按惯例记 −1(比点还"低一层"),它只在"方程组彻底矛盾"时出现,比如 V(x, x−1)。
三个易错点。其一,维数是"局部不变"与"最大分支口径"的混合体:可约簇的维数取各分支最大者,xy=0(两轴十字)维数是 1 而不是"0 加 0"。其二,"零点集有限"不等于"维数是零点个数":维数只看有限与否,点的个数是另一门学问(它是次数论与计数几何的主题)。其三,超越次数在扩域时不稳定,函数域口径要求基域固定为 k,别在扩大数域后还引用旧数值。
本节在知识体系里的位置:尺子校准完毕。"一般直线与曲线交几个点"现在有资格定义曲线的次数——下一节把它升级为贝祖定理,全册第一枚重磅定理落袋。