钻石引理

本文要介绍的内容看起来颇有点趣味数学的味道,实际上在数学中许多地方都可以找到它的身影。在很多地方,人们总是不自觉地使用着它。如果你有一双透亮的眼睛,就会发现那些讨厌复杂的论述其实都归结为一个简单的事实:钻石引理。

说明钻石引理的最好的例子是 1986 年 IMO 的一道试题:

设 $G$ 是一个有限图,有 $n$ 个顶点。$f:V\rightarrow\mathbb{R}$ 是定义在顶点集上的实值函数。考虑这样一个游戏:

1. 任选一个满足 $f(v)<0$ 的顶点 $v$;

2. 对每个与 $v$ 相邻的顶点 $u$,将 $f(u)$ 的值减少为 $f(u)+f(v)$,然后把 $f(v)$ 的值改成 $-f(v)$;

3. 重复步骤 1。

如果某个时刻对所有的顶点 $v$,$f(v)$ 的值都变成非负的,则玩家获胜。

现在假设从某个初始状态 $f$ 开始,我可以经过 $N$ 次操作以后把所有的 $f(v)$ 都变成非负的,然后让你也来玩这个游戏,也是从同样的初始状态 $f$ 开始,但是你不知道我是怎么做到的。问题是:你能否找到一个获胜的策略呢?你最快需要用几次操作?

理解了这个问题,你就理解了钻石引理。

我们用归纳法(对 $N$ 归纳)证明:只要你每次都随意选择一个 $f(v)<0$ 的顶点 $v$,然后按照规则重新给顶点赋值,那么你一定也在 $N$ 步之后将所有顶点的值都变成非负的。

$N=0$ 的情形是显然的(初始时刻所有顶点值都非负,不需要任何操作)。

$N=1$ 的情形也不难证,这个时候必然只有唯一的一个顶点 $v$ 的值 $f(v)$ 是负的,因此让你来玩的话你和我的操作是一样的。

假设结论对 $<N$ 时成立。来看 $N$ 的情形:

这个时候让你我的太太也来加入这个游戏(没有太太也不要紧,这只是个假设,为了便于叙述)。假设我第一步选取的是顶点 $v$ 而你第一步选取的是顶点 $u$。

如果 $v,u$ 不相邻,则让我的太太第一步选择 $v$ 而第二步选择 $u$,你的太太第一步选择 $u$ 而第二步选择 $v$。$v,u$ 不相邻这个条件保证了她俩在这两次不同的操作后会到达相同的状态。

比较我和我太太,我俩第一步的操作相同,由归纳假设她可以再经过 $N-1$ 次操作获胜。

比较两位女士,她俩前两步结束后到达相同的状态,而我的太太可以再经过 $N-2$ 次操作获胜,因此由归纳假设你的太太也可以获胜;最后比较你和你的太太,你俩的第一步是相同的,而已证她再经过 $N-1$ 次操作是可以获胜的,因此由归纳假设你的第一步结束后也是可以获胜的,也还需要 $N-1$ 次操作。

如果 $v,u$ 是相邻的,则让我的太大前三次操作为 $(v,u,v)$;让你的太太前三次操作为 $(u,v,u)$,你可以验证这两种不同的操作会使得她俩又到达相同的状态。重复前面的论证即可。

证明的关键在哪里?关键在于从同一个状态出发的两个不同操作,总是可以再经过若干次操作在另一个状态处相遇,这就是所谓的钻石条件:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

再来看一个代数学中大家都非常熟悉的例子:Jordan - Hölder 定理。

对于不同的代数对象 Jordan - Hölder 定理的版本也不同,但是本质是一样的。这里我们举个模的例子。

定理:设 $M$ 是某个环 $R$ 上的左 $R-$ 模,满足子模的升链和降链条件(ACC and DCC),则存在一列子模 $\{M_i\}$ 满足

\[(0)\subset M_1\subset\cdots\subset M_p=M.\]

且每个商模 $M_{i}/M_{i-1}$ 都是单模。这样的一个序列叫做 $M$ 的一个合成列。合成列在如下的意义下是唯一的:如果

\[(0)\subset M‘_1\subset\cdots\subset M‘_q=M.\]

是另一合成列,则集合 $\{M_{i}/M_{i-1},1\leq i\leq p\}$ 与 $\{M‘_j/M‘_{j-1},1\leq j\leq q\}$ 可以建立一一对应,使得对应的两个商模是同构的。

考虑这样的图 $G$:$G$ 的顶点集为 $M$ 的所有子模,如果两个子模 $M_1,M_2$ 满足 $M_1\supset M_2$ 而且 $M_1/M_2$ 是单模,则在它们之间连一条有向边 $M_1\rightarrow M_2$。由模同态基本定理,你可以很容易验证得到的图是满足钻石引理的:

于是我们发现 Jordan - Hölder 定理的情形跟前面的问题几乎一模一样:假设某一个合成列的长度是 $p$,则所有合成列的长度都是 $p$。这下你应该知道怎么论证了吧?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

设 $A$ 是域 $k$ 上的含单位元的结合代数,其结构由一组生成元 $X$ 和生成关系 $S$ 决定。我们的问题是:$A$ 中的元素是否总存在某种标准表示形式?

把问题说的具体点,设 $X$ 是一个字母集,$X$ 生成的自由半群记作 $\langle X\rangle$,$\langle X\rangle$ 中的元素叫做单项式。$\langle X\rangle$ 在域 $k$ 上的(有限)线性组合生成一个自由结合代数 $k\langle X\rangle$。

设 $S$ 是一组形如 $\sigma=(W_\sigma,f_\sigma)$ 的有序对组成的集合,这里 $W_\sigma\in\langle X\rangle$ 而 $f_\sigma\in k\langle X\rangle$。$S$ 叫做约化关系,意思就是每当在一个单项式中出现 $W_\sigma$ 时,我们就用 $f_\sigma$ 代替它。

举个例子:在两个变元的多项式环 $k[x,y]$ 中,定义 $S=\{(y^2,xy)\}$,则 $y^3$ 有两种可能的约化:$y\cdot y^2\rightarrow yxy$ 和 $y^2\cdot y\rightarrow xy^2\rightarrow x^2y$。

这里你发现,前面的说法 "每当在一个单项式中出现 $W_\sigma$ 时,就用 $f_\sigma$ 代替它" 是有歧义的:当出现多个可以用 $\sigma$ 约化的位置的时候,该怎么定义呢?

解决的方法很简单,把每一种可能的约化看做不同的约化即可。设 $\sigma\in S$,$A,B\in\langle X\rangle$。定义 $r_{A\sigma B}$ 为保持其它所有单项式不动,而把 $AW_\sigma B$ 变成 $Af_\sigma B$ 的 $k-$ 线性变换。于是上面的例子中的两种约化分别是 $r_{1y^2y}$ 和 $r_{yy^21}$。

如果一个多项式 $g\in k\langle X\rangle$ 的每个单项式不包含任何的 $W_\sigma,\sigma\in S$,就称 $g$ 是不可约的,即 $g$ 已经是标准形式。不难证明(但是确实需要证明)所有不可约元构成 $k\langle X\rangle$ 的一个 $k-$ 子模,记作 $k\langle X\rangle_{irr}$。

从定义上说清楚了什么是约化,我们接下来就想知道:是否每个元素 $a\in A$ 都可以经过有限次约化以后变成某种标准形式?

这里有两个问题需要解决:

【有限性问题】约化步骤是不是总可以在有限步内结束?会不会在约化的过程中,不断地出现可以继续约化的单项式,导致约化过程永不停止?

【唯一性问题】同一个元素 $a\in A$ 在不同的约化下的结果相同吗?在前面的例子中,$y^3$ 可以约化为 $yxy$,也可以约化为 $x^2y$,因此约化结果不是唯一的。

解决有限性问题的办法是给 $\langle X\rangle$ 引入一个偏序 $\preceq$,这个偏序要满足两个条件。我们首先要求它满足与约化系 $S$ 和 $\langle X\rangle$ 的相容性条件: $f_\sigma$ 中的每个单项式在这个偏序下都是严格小于 $W_\sigma$ 的。以及若 $B,B‘\in\langle X\rangle$,则

\[B< B‘\Rightarrow ABC< AB‘C,\quad \forall A,C\in\langle X\rangle.\]

这样一来,每次用 $r_{A\sigma B}$ 去约化 $AW_\sigma B$ 以后,产生的新的单项式在偏序下都是严格小于 $AW_\sigma B$ 的,这就排除了在约化过程中以前已经被消掉的项又 "冒出来" 的可能性。

我们还要求这个降链满足 DCC 条件:即 $\langle X\rangle$ 中不存在任何无穷递降的序列

\[ A>B>C>\cdots\]

这样一来,一方面每次约化会 "降低" 单项式,另一方面又不会无穷地 "降低" 下去,从而不会出现约化永不终止的现象。(你可以很容易给出一个严格的证明)

最后我们还剩下约化唯一性的问题,这正是钻石引理再次大显身手的地方。

首先我们先说明,在约化过程中有两种可能导致歧义的情况:

1. 【重合歧义】设 $\sigma,\tau\in S$,$A,B,C\in\langle X\rangle-\{1\}$,使得 $W_\sigma=AB$,$W_\tau=BC$, 则称 $(\sigma,\tau,A,B,C)$ 是一个重合歧义,这个时候可以将其约化为 $f_\sigma C$,也可以将其约化为 $Af_\tau$。这个重合歧义称作可消除的,如果它满足如下的钻石条件:存在一列约化 $r=r_1r_2\cdots$ 和另一列约化(必然都只有有限步) $r‘=r‘_1r‘_2\cdots$ 使得 $r(f_\sigma C)=r‘(Af_\tau)$。

2. 【嵌入歧义】设 $\sigma\ne\tau\in S$,$A,B,C\in\langle X\rangle$,使得 $W_\sigma=B$,$W_\tau=ABC$, 则称 $(\sigma,\tau,A,B,C)$ 是一个嵌入歧义,这个时候可以将其约化为 $Af_\sigma C$,也可以将其约化为 $f_\tau$。同理这个重合歧义称作可消除的,如果存在一列约化 $r=r_1r_2\cdots$ 和另一列约化 $r‘=r‘_1r‘_2\cdots$ 使得 $r(Af_\sigma C)=r‘(f_\tau)$。

重合歧义和嵌入歧义统称为歧义。

你能理解这里面钻石条件的作用吗? 如果你理解了文章开始的那道 IMO 试题,以及 Jordan - Hölder 定理的例子,相信你会觉得下面的定理是显然的事情:

定理【Bergman】:设 $S$ 是自由结合代数 $k\langle X\rangle$ 上的一个约化系,$\preceq$ 是 $\langle X\rangle$ 上的偏序,满足相容性条件和 DCC 条件,则下面三点是等价的:

1. $S$ 中所有的歧义都是可消除的;

2. $k\langle X\rangle$ 中任何元素都可以唯一地约化为某个不可约元;

3. $k\langle X\rangle=k\langle X\rangle_{irr}\oplus I$,其中 $I$ 是所有形如 $W_\sigma-f_\sigma$ 的元素生成的双边理想。

我推荐你阅读 Bergman 的论文,实际上 Bergman 证明的更多,他证明了一个与 1 等价但是更容易验证的命题:所有歧义可消除当且仅当所有歧义关于偏序 $\preceq$ 可消除,我们来介绍这个结论。

设 $A$ 是 $\langle X\rangle$ 中任一元素,令 $I_A$ 为所有形如 $B(W_\sigma-f_\sigma)C$ 生成的 $k-$ 子模,其中 $BW_\sigma C<A$。$I_A$ 的含义就是,如果我们对单项式 $A$ 约化的话,就是每次加上或者减去 $I_A$ 中的元素。

一个重合歧义 $(\sigma,\tau,A,B,C)$ 称作关于偏序 $\preceq$ 可消除的,如果有 $f_\sigma C-Af_\tau\in I_{ABC}$。类似地一个嵌入歧义 $(\sigma,\tau,A,B,C)$ 称作关于偏序 $\preceq$ 可消除的,如果有 $Af_\sigma C-f_\tau\in I_{ABC}$。

定理:下面两条是等价的:

1. 所有歧义可消除;

2. 所有歧义关于偏序 $\preceq$ 可消除。

看起来这个定义怪怪的,其实它说的事情很简单:钻石条件(即歧义可消除)是说,当我们从一个有重合歧义的单项式 $ABC$ 出发,约化为 $W_\sigma C$ 或者 $Af_\tau$ 的话,可以分别对二者继续约化使得它们到达某个相同的(中间)结果 $f$。而这里(歧义相对于 $\preceq$ 可消除)是说,我们其实不需要一个严格定向的路径 $W_\sigma C\rightarrow f$,$Af_\tau\rightarrow f$,只要有一个(非严格定向)的路径连接 $W_\sigma C$ 和 $Af_\tau$,而且这条路径 "保持在 $ABC$ 下方即可" (即经过所有的所有顶点包含的单项式在 $\preceq$ 下严格小于 $ABC$)。

你需要注意的是,对单个歧义 $(\sigma,\tau,A,B,C)$,可消除与关于 $\preceq$ 可消除是不等价的,后者更弱。但是所有歧义关于 $\preceq$ 可消除与所有歧义可消除是等价的。

如果你对上面的分析还有疑惑(包括证明),可以去念 Bergman 的原文。(其实证明自己完成也不难)

最初使我注意到钻石引理的是李代数中的 Poincare - Birkhoff - Witt 定理。

定理:设 $\mathfrak{g}$ 是域 $k$ 上的李代数,一组基为 $X$,这里 $X$ 是一个全序集合。则泛包络代数 $U(\mathfrak{g})$ 的一组基为 $xy\cdots z$。这里 $x,y,\ldots,z\in X$ 且 $x\preceq y\preceq\cdots\preceq z$。(这样的单项式叫做标准单项式)

PBW 定理关键的部分是证明所有 "标准多项式" 是线性无关的,即证明约化的唯一性,这就只要验证所有的歧义是关于某个偏序可消除的。细节仍然留给 Bergman 的论文。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

钻石引理还有很多出现的地方,你能列举几个吗?

参考文献

the diamond lemma for ring theory, Bergman, Advances in Mathermatics 1978. 下载

时间: 2024-08-10 01:52:19

钻石引理的相关文章

Aztec 钻石问题:Spider Move

这篇文章里要介绍的是非常精彩的 Aztec 钻石模型.我觉得这是一个可以进入 "数学天书" 的问题,它的表述简单而初等,但是却与计数组合学中许多最深刻美妙的问题有着千丝万缕的联系,当然它还有一个令人拍案叫绝的解法.所有这些不能不让我把它写出来和大家分享. 那么什么是 Aztec 钻石模型呢?很简单:依次把 $2,4,\cdots,2n$ 个方格摞在一起,然后关于 $x$ 轴对称地反射过去,得到的图形就叫 $n$ 阶 Aztec 钻石图 $AZ_n$:Aztec 钻石图的一个多米诺骨牌覆

[ Perl 6 ] 被取代的钻石操作符(&lt;&gt;)

[ Perl 6 ] 被取代的钻石操作符(<>) There is more than one way to do it. Perl 5中,如果要逐行读取一个文件的内容,你可能会写出下面的代码 while (<>) { chomp; print "It was $_ that I saw.\n"; } $ perl myscript.pl in 但是在Perl 6中,钻石操作符<>已经不再被支持,现在可以用下面的代码来完成上面的功能 for line

钢铁少女 无限钻石安卓版下载 和 源代码部署成功

本文中所有资料.资源文件仅供技术学习.研究之用,请必须在24小时内删除所下载文件,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担.本文中的网游信息.网游源代码资源均来自互联网,非本站开发.如有侵犯您的合法权益请来信告之,我们会在三个工作日内予以清除.<钢铁少女>(战舰少女2.0)的源代码部署成功,欢迎试玩. 无限钻石安卓版下载 http://pan.baidu.com/s/1i4hfG9J客户端源代码 http://pan.baidu.com/s/1o74CgjS服务器

hdu 5868 2016 ACM/ICPC Asia Regional Dalian Online 1001 (burnside引理 polya定理)

Different Circle Permutation Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 208    Accepted Submission(s): 101 Problem Description You may not know this but it's a fact that Xinghai Square is

钻石国际娱乐www.jd666999.com

缅甸人民有福了<政府计划建设18万套经济适用房> (2016-06-15 01:24:24) 转载▼ 标签: 缅甸钻石国际 公司电话17787327171 缅甸钻石国际建设部消息,6月7日,内比都建设部举行新闻发布会称,将在全国范围内建设1000万缅币及以下的经济适用房18万套左右,项目将从仰光开始,计划在仰光建设8000套左右. 建设规划 城乡与住房管理司总司长吴敏腾称,项目将在北部德贡新城区和莱达雅镇区开始建设,计划在两年内建成.目前,工程师们正在制作经济适用房的建设图纸,城乡与住房管理司

干货分享:MySQL之化险为夷的【钻石】抢购风暴

抢购钻石不稀奇,稀奇的是有钱赚不到,事情发生在2015年5月20日,大好的日子自然少不了商家的参与.即可为您还原现场,解决思路献给各位,请欣赏Show Time,everybody~ 1.优化起因及工作准备 2014年5月20日下午三点四十接到对方不愿意透漏姓名的“王大锤”领导的电话,对方火急火燎的仅提供了网站访问慢一条信息,当时博主那个心里一万只XX奔腾而过,俗话说的好,酒肉穿肠过,拿人钱财必替人消灾. 对博主来说网站访问慢,首先不能乱了阵脚,先想到的就是看web.先看静态,如果静态ok就看动

bzoj1004: [HNOI2008]Cards Burnside引理+01背包

三维01背包算出在每一个置换下不变的染色方案数,Burnside引理计算答案. PS:数据太水所以只算恒等置换也是可以过的. #include<bits/stdc++.h> using namespace std; int n,m,p,x,y,z; bool u[61]; int f[21][21][21],s[61],v[61]; int power(int u,int v){ int d=1; for(;v;v>>=1){ if(v&1) d=d*u%p; u=u*u%

三言两语说shader(九)钻石

这次的目标是绘制一颗闪闪发光的钻石,追求效果是越接近真实越好. 先说说为此我这几天干了些什么. 1.看了stalendp blog里那篇<钻石效果>后头的参考文献 最有价值的就是ATI在2004年GDC上作的演讲,题目就叫Drawing a Diamond.但是由于只有ppt,所以很难重现工程深入学习.思路大概是预备了一张折射CubeMap,一张带模拟色散的反射CubeMap,最后再加上耀斑混合而成. 2.试验了一些简单的镜面反射 非实时的CubeMap反射最简单没什么好说的,需要注意的是要做

c++ 钻石继承

在C++中,什么叫做钻石问题(也可以叫菱形继承问题),怎么避免它? 下面的图表可以用来解释钻石问题. 假设我们有类B和类C,它们都继承了相同的类A.另外我们还有类D,类D通过多重继承机制继承了类B和类C.因为上述图表的形状类似于钻石(或者菱形),因此这个问题被形象地称为钻石问题(菱形继承问题).现在,我们将上面的图表翻译成具体的代码: [cpp] view plaincopy /* Animal类对应于图表的类A */ class Animal { /* ... */ }; // 基类 { in