Skip to content

定义Definition

弦图与完美消去序

Chordal graph · Triangulated graph · Perfect elimination ordering · PEO

证明无诱导长圈与完美消去序等价,线性验证候选序,并以着色和同规模团同时证明最优。

形式陈述 ​

弦性是图的性质,消去序是它的一份证书 ​

在有限简单无向图G中,一个圈的弦是连接该圈两个不相邻位置顶点的额外边。G是弦图,当且仅当每个长度至少4的圈都有弦;等价地,G没有长度至少4的诱导圈。三角形不要求再有弦。

顶点v称为单纯顶点,如果它的邻居形成团,即任意两个不同邻居都相邻。度为0或1时条件自动成立。一个顶点排列 π=(v1,…,vn) 是完美消去序,若每个vᵢ在剩余诱导图G[{vᵢ,…,vₙ}]中都单纯。写成原图邻居集合,就是

N+(vi)=N(vi)∩{vi+1,…,vn}两两相邻.

定理:有限简单无向图是弦图,当且仅当存在完美消去序。空图以空排列满足约定。定义只使用原图的边,不能在检查过程中暗中补齐缺边,再把补过的图当成原输入。[1, §§2.2–2.3]

直觉

删除时,不制造新邻接 ​

一般消去一个顶点时,剩余邻居可能需要补边才能成为团。完美消去序要求每一步的这些边原本就有。因此“完美”不是指排列唯一,也不是优化一个尚未定义的成本,而是每次删除都不需要修补局部结构。

若图有一个诱导长圈,取这个圈中最早被删除的顶点v。圈上紧邻v的两个点此时都未删除,却没有连边,否则圈不再诱导。因此v的更晚邻居不成团,任何排列都不可能是完美消去序。这证明了定理的一个方向。

极小分隔集为什么必须成团 ​

证明反方向,先取两个不相邻顶点a、b,选一个按包含关系极小的集合S⊆V{a,b},使删S后a、b处于不同连通分量A、B;若原本已不连通,可取S为空。

每个s∈S都必须在A、B中各有邻居。否则恢复s也无法从a侧穿过它到b侧,S{s}仍能分隔a、b,与极小性矛盾。假设S中有不相邻的x、y,分别在A∪{x,y}和B∪{x,y}中取最短x—y路径。两条路径各有至少两条边,内部顶点分别落在A、B。

每条最短路径内部没有弦,A、B之间没有边,x、y也不相邻。因此把两路拼起来得到诱导长圈,与弦性矛盾。故S必须是团。这里是固定端点a、b的包含极小分隔集,不是要求基数最小,也不是任意分隔集都必须成团。

从两个不相邻单纯顶点完成归纳 ​

对顶点数归纳,证明稍强的命题:非完全弦图至少有两个不相邻的单纯顶点。沿刚才的团分隔集S,考虑更小的诱导图G[A∪S]。若它完全,任取A中一点即单纯;若它不完全,归纳给出两个不相邻单纯顶点。因为S本身是团,这两点不可能都在S,至少一点在A。

A中的点在原图的全部邻居都仍位于A∪S,因此找到的单纯性也对原图成立。对B侧做同样选择,得到另一个单纯顶点,两点不相邻。完全图的任意顶点本来就单纯;诱导子图又保持弦性。于是可以反复删除单纯顶点,直到图空,所记删除次序就是完美消去序。

这个归纳证明存在性,却没有自动给出线性算法:朴素地反复枚举邻居对检查单纯性,可能很慢。实际构造由下一节的搜索完成。

例子与边界

只检查“第一个更晚邻居”是否足够 ​

给定候选排列π及每点位置pos。若N⁺(v)非空,令p(v)为其中位置最小的顶点。只检查

N+(v)∖{p(v)}⊆N(p(v)).

通过全部这些检查,当且仅当π是完美消去序。必要性直接来自更晚邻居成团。充分性自后向前归纳:p(v)的更晚邻居已经成团,而v的其他更晚邻居按位置都晚于p(v),检查又保证它们邻接p(v),所以全部落在这个已知的团中;加上p(v)后仍是团。

为避免每次重新扫p(v)的邻接表,把v按p(v)分组。逐个处理p:用数组时间戳标记N(p),再扫描该组各v的N⁺(v){p}。每份原邻接表只用于一次标记,每份更晚邻居表只用于一次检查,连同建立位置、选p和分组,共O(n+m)时间、O(n+m)存储。不存在“对每个v扫描p(v)整行”这一隐含的二次重复。

若失败,输出三元组(v,p,u):p、u均晚于v,vp、vu是边而pu不是边。它可立即证明这份排列不合格,但不能单独证明图非弦。

六点图的局部证书 ​

对边01、02、12、23、04、14、45,取π=[5,3,4,2,1,0]:

v N⁺(v) p(v)
5 4
3 2
4 1
2 1
1 0
0 空 无

只需在含两个更晚邻居的两行核01确为边;其余行至多一个邻居。注意p按π的位置取,不按顶点编号取,所以4和2两行的p都是1。

给四圈补一条边,问题已经改变 ​

四圈01、12、23、30没有完美消去序。加弦02之后,[1,3,0,2]成为合法序列:1、3的更晚邻居都是{0,2}。这证明的是新图的弦性,不是为原四圈找到了更聪明的排列。

任意给出的坏排列也不代表非弦。三点路径0—1—2的排列[1,0,2]失败,[0,2,1]却通过;辨别一张图与核验一份候选证书是不同任务。

推论与应用

从线性识别到同规模的上下界证书 ​

用字典序广度优先搜索生成σ,取π为其反序,再作上述验证。该搜索在任何弦图上都必给出完美消去序,故失败可以判定非弦;通过则由等价定理确定为弦图。在已准备邻接表的RAM口径下,两步合计O(n+m)。

给定合法π,按它的反方向作贪心顶点着色:每次为v取尚未被已着色邻居占用的最小非负颜色。已着色邻居正是N⁺(v),它们形成团,已有颜色必两两不同,因此v最多需要|N⁺(v)|+1种颜色。

另一方面,每个集合Cᵥ={v}∪N⁺(v)都是团。任意团C的最早顶点v又满足C⊆Cᵥ,因此

ω(G)=maxv|Cv|,χ(G)=ω(G).

保存最大的Cᵥ给出颜色数下界,实际合法着色给出同一个上界。空图约定两值为0。实现以颜色数组时间戳标记邻居颜色,寻找第一个空颜色最多试deg(v)+1个,全部仍O(n+m),不能每点都清空一个n长标记表。

极大团与最大团都能得到,但输出不同 ​

六点例的最优颜色数为3,一份着色按顶点0,…,5排列为[0,1,2,0,2,0],{0,1,2}是三点最大团。图的全部极大团还包括{0,1,4}、{2,3}、{4,5}:后二者只有两点,却已不能加入新顶点。

团树要求把这四个极大团全部作为节点;只保留两个最大的三点团会漏掉顶点3、5及其边。若终点只问最优颜色数,一个最大团即可;若要求完整结构,不能用这个较小输出冒充极大团清单。

直接展示非弦的圈,另计提取成本 ​

附件可选地枚举顶点v及它的一对不相邻邻居x、y,在删去v和N(v){x,y}的图中,用BFS找最短x—y路径。若存在,这条最短路径无弦,内部点又都不邻接v,于是加上v得到诱导长圈。每个诱导长圈都能由圈上一点及它两个圈邻居触发一次成功搜索。

这个简单提取器最多尝试O(n³)个三元选择,每次花O(n+m),保守时间O(n³(n+m));附件的集合成员检查按Python哈希期望成本计。它用于给小例子输出容易验真的否证,不属于前面的线性识别成本。完整正负记录及输入迁移见终结任务。

参考资料
  1. Jean R. S. Blair、Barry W. Peyton,An Introduction to Chordal Graphs and Clique Trees,ORNL/TM-12203,1992,原报告PDF,§2.2极小顶点分隔集,§2.3 Lemma 1及Theorem 2.2:单纯顶点与完美消去序等价。
  2. David Eppstein,CS 163 & CS 265, Lecture 7a,2026,讲义PDF,物理第4–8、11页:无诱导长圈、删除序及线性候选检查;最优着色由更晚邻居成团直接导出。
关系图谱6 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系