Dilworth 定理

这是一个关于偏序集的定理,事实上它也可以扩展到图论,dp等中,是一个很有意思的东西

偏序集

偏序集是由集合SSS以及其上的一个偏序关系RRR定义的,记为(S,R)(S,R)(S,R)

偏序关系:

对于一个二元关系R⊂S×SR\subset S\times SRS×S,如果其满足:

  • ∀x∈S,xRx\forall x\in S,xRxxS,xRx 自反性
  • ∀x,y∈S\forall x,y\in Sx,yS,若xRyxRyxRyyRxyRxyRx,则x=yx=yx=y 反对称性
  • xRy,yRz→xRzxRy,yRz\rightarrow xRzxRy,yRzxRz 传递性
    显然自然数集NNN以及最常见的小于等于关系≤\leq,(N,≤)(N,\leq)(N,)就构成了一个偏序集
    事实上(N∗,∣)(N^*,|)(N,)也是一个偏序集,其中∣|表示正整数的整除关系

以下为了讨论方便,我们将RRR简记为≤\leq,当然它可以指代小于等于关系之外的其它关系

此外,∀x,y∈S\forall x,y\in Sx,yS,如果x≤yx\leq yxyy≤xy\leq xyx,那么我们就说它们是可比的,否则说它们是不可比

定义完了偏序集,我们可以从图上来看看它具体的样子

哈斯图(Hasse 图)

考虑一个偏序集(S,≤)(S,\leq)(S,),∀x,y∈S\forall x,y\in Sx,yS,如果x≤yx\leq yxy且不存在z S.T. x≤z≤yz\ S.T. \ x\leq z\leq yz S.T. xzy,我们称为yyy覆盖xxx,那么此时我们就连一条从xxx指向yyy的有向边,最后得到的图就称为这个偏序集(S,≤)(S,\leq)(S,)的Hasse图

比如下图是x,y,z{x,y,z}x,y,z的幂集关于包含关系得到的Hasse图
image.png|370

由于偏序关系满足了反对称性,所以Hasse图里面一定没有自环(否则就会合并成一个点),所以我们可以说Hasse图一定是一张DAG

其它偏序集的前置芝士

还是记我们要讨论的偏序集为(S,≤)(S,\leq)(S,)


偏序集中的一个全序子集。形式化地说,若集合C⊂SC\subset SCS,且∀a,b∈C\forall a,b\in Ca,bC,a,ba,ba,b是可比的,那么CCC就是SSS的一个链
链这个名字起的就很有水平,因为我们不难发现,偏序集中的一个全序子集,其在Hasse图中似乎就一定表现为一条链。比如上图中的{{x,y,z},{x,z},{x},{ϕ}}\{\{x,y,z\},\{x,z\},\{x\},\{\phi\}\}{{x,y,z},{x,z},{x},{ϕ}}就是一个全序子集,在图中刚好也表现成一条链。但我没有严格证明,这边搁置。
类似地,我们定义一个反链
反链
若集合C⊂SC\subset SCS,且∀a,b∈C\forall a,b\in Ca,bC,a,ba,ba,b是不可比的,那么CCC就是SSS的一个反链
在图上看的话,{{x},{y},{z}}\{\{x\},\{y\},\{z\}\}{{x},{y},{z}}就是一个反链

深度:
最长链大小

宽度
最长反链大小

以上两个定义也是相当的形象。因为我们不难发现,如果把Hasse图按照偏序关系从低到高排列的话,链在图中往往就是一条竖着的,而反链是横着的,由此给出如上定义

最小链划分
将集合SSS划分为最少的若干个不相交的链

最小反链划分
将集合SSS划分为最少的若干个不相交的反链

Dilworth 定理

现在可以给出Dilworth 定理的具体内容了

Lemma1 对于任意有限偏序集,其最长反链大小必等于最小链划分中链的数目
其对偶形式也成立:
Lemma2 对于任意有限偏序集,其最长链大小必等于其最小反链划分中反链的数目

以下讨论均假定偏序集有限

总结以下:
最小链划分 = 最长反链大小 = 偏序集宽度
最小反链划分 = 最长链大小 = 偏序集深度

先来证Lemma2:

记定理中的最长链大小为n,我们对n做数学归纳法
显然n=1时定理成立
若n=k时定理成立,我们来证 n=k+1时定理成立
此时偏序集中的最长链长度为k+1,我们取出集合SSS的所有极大元,组成集合MMM,显然MMM是一个反链,并且考虑S−MS-MSM,其最大链长一定为k(因为取出了所有的极大元),根据之前的归纳假设,S−MS-MSM的最小反链划分数目为 k,再加上M自己是一个反链,从而此时S的最小反链划分数为 k+1 = 最长链长度 □\square

再来看Lemma1:

考虑偏序集(S,≤)(S,\leq)(S,),记∣S∣=m|S|=mS=m,我们对m进行归纳
m=1m=1m=1时Lemma1显然成立
m=km=km=k时定理成立,我们来证m=k+1m=k+1m=k+1时定理成立:

AAA是集合SSS的一条最长反链,记为
A={a1,a2,...aw} A = \{a_1,a_2,...a_w\} A={a1,a2,...aw}
其中∣A∣=w|A|=wA=w
我们取
D(A)={x∉A∣∃α∈S,x≤a} D(A) = \{x\notin A|\exists \alpha \in S,x\leq a\} D(A)={x/A∣∃αS,xa}
U(A)={x∉A∣∃α∈S,a≤x} U(A) = \{x\notin A|\exists \alpha \in S,a\leq x\} U(A)={x/A∣∃αS,ax}
显然D(A)⋃U(A)⋃A=SD(A)\bigcup U(A)\bigcup A = SD(A)U(A)A=S

若存在最长反链AAA使得D(A),U(A)D(A),U(A)D(A),U(A)均非空:
AAASSS的最长反链,故AAA也是A⋃D(A)A\bigcup D(A)AD(A)的一个最长反链。注意到∣U(A)∣≥1|U(A)|\geq 1U(A)1,故∣A⋃D(A)∣≤k|A\bigcup D(A)|\leq kAD(A)k,从而由归纳假设,A⋃U(A)A\bigcup U(A)AU(A)可以划分为www条链c1,c2,...cwc_1,c_2,...c_wc1,c2,...cw,其中cic_ici的极大元是aia_iai.(这一点显然)
同理,A⋃D(A)A\bigcup D(A)AD(A)也可以划分为www条链d1,d2,...dwd_1,d_2,...d_wd1,d2,...dw,其中did_idi的极小元是aia_iai
从而,我们就可以将SSS划分为www条链:c1∪d1,....cw∪dwc_1\cup d_1,....c_w\cup d_wc1d1,....cwdw

若对于任意最长反链AAA,都有D(A)=ϕD(A)=\phiD(A)=ϕU(A)=ϕU(A)=\phiU(A)=ϕ
由假设,任一条反链AAA必定构成全上界或者全下界。在SSS中选一个极大元yyy,再选一个极小元xxx满足x≤yx\leq yxy,{x,y}\{x,y\}{x,y}构成一条链CCC,从而在集合S−CS-CSC中,任一条最长反链的大小为w−1w-1w1(必定去除了一个元素),从而根据归纳假设,S−CS-CSC的最小链划分数为w−1w-1w1,再加上CCC自己是一条链,故SSS的最小链划分数为www

□\square

应用举例

求一个序列的最大非递增序列长度以及其最少可以划分为多少个非递增序列

考虑由(位置,元素大小)这个二元组组成的集合,再定义一个偏序关系<<<:
a<ba<ba<b当且仅当 aaa的位置<bbb的位置且aaa的值<b<b<b的值

从而这就构成了一个偏序集(s,<)(s,<)(s,<),并且要求的分别就是集合的最长反链以及最小反链划分数
第一个问题可以直接dp即可,第二个问题,根据Dilworth 定理,实际上就是求偏序集的最长链大小,实际上也就是序列的LIS,非常妙的一个转化。

与DAG

之前说过,Hasse图就是一个DAG,而反过来,我们将DAG的点作为集合SSS的元素,将偏序关系≤\leq定义为点之间的可达性,就定义了一个偏序集(S,≤)(S,\leq)(S,)
从而DAG上的最小可重路径覆盖(要求覆盖所有点)就等价于偏序集(S,≤)(S,\leq)(S,)上的最小链覆盖

同理,将DAG上的有向边作为集合TTT的元素,将偏序关系≤′\leq'定义为边之间的可达性,就得到的另一个偏序集(T,≤′)(T,\leq')(T,)
从而DAG上的最小可重路径覆盖(要求覆盖所有)就等价于偏序集(T,≤′)(T,\leq')(T,)上的最小链覆盖

Erdős–Szekeres 定理

含至少rs+1rs+1rs+1个元素的实数序列{a}\{a\}{a}要么有一个长为r+1r+1r+1的不下降子序列,要么有一个长为s+1s+1s+1 的不上升子序列
Proof:
设序列长度为n≥rs+1n\geq rs+1nrs+1,定义偏序集{(i,ai)}i=1n\{(i,a_i)\}_{i=1}^{n}{(i,ai)}i=1n,其上的偏序关系≤\leq定义为:
(i,ai)≤(j,ai)⇔(i≤j ∧ ai≤aj) (i,a_i)\leq (j,a_i)\Leftrightarrow (i\leq j \ \wedge \ a_i\leq a_j) (i,ai)(j,ai)(ij  aiaj)
假设该偏序集的宽度≤s\leq ss,则由Dilllworth定理可知其最小链覆盖数≤s\leq ss,若这些链的长度都≤r\leq rr,则总元素数≤rs<rs+1≤n\leq rs< rs+1\leq nrs<rs+1n
矛盾。
□\square

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值