弦图的完美消除序列可应用于用高斯消去法求解稀疏正定线性方程组的研究,并且弦图的完美消除序列在多个学科均有应用。本文主要研究弦图的子类——k树的完美消除序列,首先证明了k树的完美消除序列可以通过k度点来刻画。其次证明了k树Tk(n)的节点按照完美消除序列排序后满足:1)
弦图的完美消除序列可应用于用高斯消去法求解稀疏正定线性方程组的研究,并且弦图的完美消除序列在多个学科均有应用。本文主要研究弦图的子类——k树的完美消除序列,首先证明了k树的完美消除序列可以通过k度点来刻画。其次证明了k树的节点按照完美消除序列排序后满足:1);2)。最后证明了k树完美消除序列与k树构造过程之间以互逆的方式一一对应。此外,本文也将前述证明应用于k树的识别,给出了相应的算法。
k树,弦图,完美消除序列,k树的识别
Lei Wang, Weihua Yang*
College of Mathematics, Taiyuan University of Technology, Taiyuan Shanxi
Received: Nov. 26th, 2022; accepted: Dec. 21st, 2022; published: Dec. 29th, 2022
The perfect elimination orderings of chordal graphs can be applied to the study of solving sparse positive definite systems of linear equations by Gaussian elimination method, and the perfect elimination orderings of chordal graphs is applied in many disciplines. In this paper, we mainly study the perfect elimination orderings of k-trees, a subclass of chordal graphs. First, we prove that the perfect elimination orderings of k-trees can be characterized by vertices with k degrees. Secondly, it is proved that the vertices of k-trees which are sorted according to the perfect elimination orderings satisfy: 1); 2). Finally, this paper proves that the perfect elimination orderings of k-trees corresponds to the construction process of k-trees in a reciprocal way. In addition, this paper also applies the above proofs to the recognition of k-trees and gives the corresponding algorithm.
Keywords:k-Trees, Chordal Graphs, Perfect Elimination Orderings, Recognition of k-Trees
Copyright © 2022 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
弦图自20世纪50年代产生于稀疏线性系统的研究中,其历史与半定优化的历史有重要关联。Parter S曾将图的“弦化1”与求解线性方程组的高斯消去法对应起来,由图“弦化”的复杂性来估计求解线性方程组的复杂性 [
近年来,大量学者发现以弦图为研究对象时,图论问题会变得更加容易解决,于是,学者们开始在弦图上讨论图论中的组合问题:最大团、最大独立集、k着色等;同时,基于弦图结构的研究也获得了一些进展,Rouzbahani Malayeri M已经证明了弦图的二项式边理想的正则性上界 [
k树是弦图的一个特殊子类,同时k树作为树这一概念的扩展,可以作为很多图论问题的模型,而k树本身的特殊结构在约束满足问题,组合问题等问题上存在多项式时间算法。目前对于k树的研究主要集中于部分k树(树宽由k限定的图),Telle J A已经将部分k树上的算法设计应用于顶点划分问题,得到了以树宽为时间复杂性参数的算法 [
本文启发于Rose D J在文献 [
定理1 任取k树
定理2 任取k树
1)
2)
定理2给出了k树完美消除序列的特点,k树
定理3 k树
定理3给出了k树的完美消除序列与构造过程之间的关系。根据定理3的结论,可以从完美消除序列的角度去分析k树的构造过程,可以通过刻画k树的完美消除序列来刻画k树的构造过程,也可以通过计算k树完美消除序列的个数来计算k树构造过程的个数。
本文用
一个双射
定义1 [
对于图
定理4 [
本文用 A d j ( x i ) 表示节点 x i 在图G中相邻节点(简称邻节点)的集合,用 d ( x i ) = | A d j ( x i ) | 表示节点 x i 在图G中邻节点的个数,并称其为度。用 M A d j ( x i ) = A d j ( x i ) ∩ { x j } j = i + 1 n 表示节点 x i 在图G中的单调相邻节点(简称单调邻节点)的集合。在图 G = ( X , E ) 中,对任意节点 x ∈ X ,其邻节点集合 A d j ( x ) 里不相邻的成对节点的集合,表示为 D ( x ) = { { y , z } | y , z ∈ A d j ( x ) , y ∉ A d j ( z ) } ,并称为亏数,而满足 D ( x ) = ∅ 的节点x被称为单纯点。相应的,其单调邻节点集合 M A d j ( x ) 里不相邻的成对节点的集合,表示为 M D ( x ) = { { y , z } | y , z ∈ M A d j ( x ) , y ∉ A d j ( z ) } ,并称为单调亏数。
定义2 [
定理5 [
下面给出本文的中心——k树的定义。
定义3 [
1) k个节点的k树是k个节点的完全图;
2) 给定任意n个节点的k树 T k ( n ) ,可以通过连接第 n + 1 个节点与 T k ( n ) 中某个k团的所有节点,得到 n + 1 个节点的k树 T k ( n + 1 ) 。
(由k树的递归定义可知,每一个k树都有一个k团作为初始状态,该k团被称为k树的初始团。)
定理6 [
1) 图G是连通图;
2) 图G有一个k团但没有 k + 2 团;
3) 图G的每一个极小 a , b 割都是一个k团。
为了讨论k树的完美消除序列,本文先证明了关于k树和完美消除序列的几个引理。引理2的证明过程对k树的结构有一个初步的分析。引理3进一步分析了完美消除序列在k树上的特点。
引理1一个完全图的任意序列都是其完美消除序列。
证 任取完全图 G = ( X , E ) ,其中 | X | = n ,任取X的序列 α ,由 α 标记X为 { x i } i = 1 n ,易知 M A d j ( x i ) = { x j } j = i + 1 n ,于是 M A d j ( x i ) 是个团,从而 M D ( x i ) = ∅ ,故 α 是完全图G的完美消除序列。由 α 的任意性,引理得证。
引理2 k树是弦图。
证 任取n个节点的k树 T k ( n ) = ( X , E ) ,令 T k ( k ) , T k ( k + 1 ) , ⋯ , T k ( n ) 表示 T k ( n ) 的构造过程,由 T k ( n ) 的构造过程标记X为 { x i } i = 1 n ,其中 T k ( k ) = { x i } i = 1 k 是k树的初始团, x i ( i > k ) 代表构造 T k ( i ) 时在 T k ( i − 1 ) 上添加的节点,令 V i ( i > k ) 表示节点 x i 连接的 T k ( i − 1 ) 中的k团,且 y i = x n + 1 − i ( i = 1 , 2 , ⋯ , n ) ,则有
M A d j ( y i ) = A d j ( y i ) ∩ { y j } j = i + 1 n = A d j ( x n + 1 − i ) ∩ { x j } j = 1 n − i = { { x j } j = 1 n − i ( n + 1 − i ≤ k ) V n + 1 − i ( n + 1 − i > k ) .
易知 M A d j ( y i ) 是团,从而 M D ( y i ) = ∅ ,由定义2可知 { y i } i = 1 n 对应的序列就是k树 T k ( n ) 的完美消除序列,由定理5可知k树是弦图。
引理3在节点个数大于k的k树中,一个节点是单纯点当且仅当它的度为k。
证 任取k树 T k ( n ) ( n > k ) ,当 n = k + 1 时,易知 T k ( k + 1 ) 是个完全图,其节点均为k度,同时均为单纯点,命题成立。下面对 n > k + 1 时的情况进行证明。
设k树 T k ( n ) = ( X , E ) ,由 T k ( n ) 的构造过程标记X为 { x i } i = 1 n ,其中 { x i } i = 1 k 是k树的初始团,由构造过程可知 { x i } i = 1 k + 1 也是个团。令 V i ( k + 2 ≤ i ≤ n ) 表示引入 x i 时,与 x i 相连接的k团。下面将X分为 { x i } i = 1 k + 1 和 { x i } i = k + 2 n 分别进行讨论。在 { x i } i = 1 k + 1 里,已知 { x i } i = 1 k + 1 是个团,由 T k ( n ) 的构造过程可知,设节点 x p 是 { x i } i = 1 k + 1
里的k度点,则 x p 一定不含于后续连接团,即 x p ∉ ∪ i = k + 2 n V i (因为 { x i } i = 1 k + 1 是个团, x p 至少有k个邻节点,
若 x p 含于后续连接团,则其度一定大于k),于是有 A d j ( x p ) = { x i } i = 1 k + 1 − { x p } ,易知 A d j ( x p ) 是个团,从而 D ( x p ) = ∅ 。在 { x i } i = k + 2 n 里, { x i } i = k + 2 n 里的节点在引入时就已经连接了一个k团,设节点 x q 是 { x i } i = k + 2 n 里
度为k的节点,则 x q 一定不含于后续连接团,即 x q ∉ ∪ i = q + 1 n V i ,于是有 A d j ( x q ) = V q ,而 V q 是引入 x q 时, x q
所连接的k团,于是 D ( x q ) = ∅ 。综上, T k ( n ) 中的k度点x均满足 D ( x ) = ∅ ,均为单纯点。
反之,由 T k ( n ) 的构造过程易知 T k ( n ) 的任意节点x均满足 d ( x ) ≥ k (因为 T k ( n ) 的节点集合由构造过程排序后,前 k + 1 个节点本身构成了一个 k + 1 团,它们的度至少为k,后 n − k − 1 个节点,在引入的时候就已经与一个k团相连接,它们的度也至少为k)。假设存在度大于k的单纯点y,那么 { y } ∪ A d j ( y ) 是个团,且 | { y } ∪ A d j ( y ) | > k + 1 ,这与定理6中k树没有 k + 2 团的性质相矛盾,所以 T k ( n ) 中单纯点的度均为k。
综上,引理得证。
引理4任意节点个数大于k的k树去掉一个k度点还是k树。
证 任取k树 T k ( n ) ( n > k ) 。当 n = k + 1 时,易知 T k ( k + 1 ) 是个完全图,其节点的度均为k, T k ( k + 1 ) 去掉一个k度点后,变为k个节点的完全图,依旧是k树,命题成立。当 n > k + 1 时,设k树 T k ( n ) = ( X , E ) ,由 T k ( n ) 的构造过程标记X为 { x i } i = 1 n ,其中 { x i } i = 1 k 是k树的初始团,由构造过程可知 { x i } i = 1 k + 1 也是个团。令 V i ( k + 2 ≤ i ≤ n ) 表示引入 x i 时,与 x i 相连接的k团。这里任取 T k ( n ) 中的k度点x,由引理3可知 D ( x ) = ∅ , A d j ( x ) 是一个k团。令 G = [ T k ( n ) ] x ,下面证明图G有以下三个性质:
1) 假设G不连通,则易知G的不连通是由于节点x的删除导致的,所以 A d j ( x ) 里至少有两个节点不连通。而 A d j ( x ) 是一个k团,里面的节点两两相连,与假设矛盾,所以图G是连通图;
2) 由引理3可知 { x i } i = 1 k + 1 里的k度点不出现在后续连接团里,而 V k + 2 ⊂ { x i } i = 1 k + 1 ,所以连接团 V k + 2 里没有k度点,即 x ∉ V k + 2 ,从而G有k大小的团 V k + 2 ,图G是k树 T k ( n ) 删除节点x得到的,而 T k ( n ) 作为k树不包含 k + 2 大小的团,故G没有 k + 2 大小的团;
3) 由割和叶的定义可知,G是相对于割团 A d j ( x ) 的叶,由定理4可知G中任意一个极小 a , b 割也是 T k ( n ) 中的极小 a , b 割,而 T k ( n ) 是k树,由定理6可知, T k ( n ) 中的极小 a , b 割均为k团,从而G中的极小 a , b 割也均为k团。
于是,由定理6可知图G是k树。
综上,引理得证。
定理1的证明 任取k树 T k ( n ) = ( X , E ) 。当 n = k 时, T k ( n ) = T k ( k ) 是k个节点的k树,此时 T k ( k ) 是一个完全图,由引理1可知, T k ( k ) 里节点的任意序列都是其完美消除序列,命题成立。
当 n = k + 1 时, T k ( n ) = T k ( k + 1 ) 是 k + 1 个节点的k树,由k树的构造过程可知,此时 T k ( k + 1 ) 的节点集合X是一个 k + 1 团,且每个节点的度均为k,任选一个k度点删除,得到一个k团,可以按任意顺序删除这k个节点。这 k + 1 个节点的删除顺序就是其完美消除序列,命题成立。
假设 n = l ( l ≥ k + 2 ) 时,命题成立。则当 n = l + 1 时, T k ( n ) = T k ( l + 1 ) , | X | = l + 1 ,任取 T k ( l + 1 ) 里的k度点x,由引理3可知 D ( x ) = ∅ ,由引理4可知 [ T k ( l + 1 ) ] x 是l个节点的k树,于是由假设可知, [ T k ( l + 1 ) ] x 可以通过迭代地删除k度点,直至剩余k个节点,最后按任意顺序删除这k个节点的方式标记 X − { x } 为 { y i } i = 1 l ,且 { y i } i = 1 l 对应的序列就是 [ T k ( l + 1 ) ] x 的完美消除序列,满足 M D ( y i ) = ∅ 。这里标记 x = x 1 ,标记 y i = x i + 1 ( 1 ≤ i ≤ l ) ,则 X = { x i } i = 1 l + 1 ,且有1) M D ( x i ) = M D ( x ) = D ( x ) = ∅ ( i = 1 ) ;2) M D ( x i ) = M D ( y i − 1 ) = ∅ ( 2 ≤ i ≤ l + 1 ) 。由定义2, { x i } i = 1 l + 1 所对应的序列就可以作为 T k ( l + 1 ) 的完美消除序列。由k度点x选择的任意性和 { y i } i = 1 l 序列的构造过程,命题成立。
综上,定理得证。
定理2的证明 首先,设 x i 满足1) 2),则按照序列 α 对 T k ( n ) 的节点进行删除时,因为前 n − k 个节点满足 | M A d j ( x i ) | = k ,所以每个节点都是作为k度点被删除的,满足定理1中k度点的删除方式,后k个节点的删除也满足定理1中任意顺序的删除方式,于是由定理1可知 α 是 T k ( n ) 的完美消除序列。
反之,设 α 是 T k ( n ) 的完美消除序列,当 n = k 时, n − k = 0 , T k ( n ) = T k ( k ) 是完全图, { x i } i = 1 k 是一
个团,对任意 x i 有 M A d j ( x i ) = { x j } j = i + 1 k ,即 i > 0 时, | M A d j ( x i ) | = k − i ,命题成立。
当 n = k + 1 时, n − k = 1 , T k ( n ) = T k ( k + 1 ) ,由k树的递归构造可知, T k ( k + 1 ) 是完全图, { x i } i = 1 k + 1 是
一个团,对任意 x i 有 M A d j ( x i ) = { x j } j = i + 1 k + 1 ,则有:a) | M A d j ( x i ) | = k + 1 − i = k + 1 − 1 = k ( i = 1 ) ;b) | M A d j ( x i ) | = k + 1 − i ( i > 1 ) 。命题成立。
假设 n = l ( l ≥ k + 2 ) 时命题成立。当 n = l + 1 时, n − k = l + 1 − k , T k ( n ) = T k ( l + 1 ) , α 标记X为 { x i } i = 1 l + 1 ,则 D ( x 1 ) = M D ( x 1 ) = ∅ , x 1 是单纯点,由引理3可知, x 1 是k度点。令 G = [ T k ( l + 1 ) ] x 1 ,则 X − { x 1 } 是图G的节点集合,且由引理4及 x 1 是k度点可知G是k树,令 y i = x i + 1 ( i = 1 , 2 , ⋯ , l ) ,标记 X − { x 1 } 为 { y i } i = 1 l ,则 M D ( y i ) = M D ( x i + 1 ) = ∅ ,故 { y i } i = 1 l 对应的序列是G的完美消除序列,而G的节点个数为l,则由假设有:(a) | M A d j ( y i ) | = k ( i ≤ l − k ) ;(b) | M A d j ( y i ) | = l − i ( i > l − k ) 。对于 { x i } i = 1 l + 1 来讲, i ≤ l + 1 − k 时, i − 1 ≤ l − k ,有
| M A d j ( x i ) | = { | M A d j ( y i − 1 ) | = k ( i ≥ 2 ) | M A d j ( x 1 ) | = | A d j ( x 1 ) | = k ( i = 1 ) } = k .
i > l + 1 − k 时, i − 1 > l − k ,有
| M A d j ( x i ) | = | M A d j ( y i − 1 ) | = l − ( i − 1 ) = l + 1 − i .
命题成立。
综上,定理得证。
一般来说,k树的构造是从k个节点的完全图开始的,本文为了使k树的完美消除序列与构造过程之间的关系有一个更清晰的表达,定义k树的构造从第一个节点开始,下面给出k树构造过程的定义。
定义4对于k树 T k ( n ) = ( X , E ) ,取 β : { 1 , 2 , ⋯ , n } ↔ X 是一个双射,且根据 β 标记X为 { x i } i = 1 n ,通过以下递归步骤:
1) i ≤ k 时,分别连接 x i 与 x j ( j < i ) ,使 { x j } j = 1 i 成为一个团;
2) i > k 时,找 { x j } j = 1 i − 1 中的一个k团 V i ,使 x i 与 V i 中的每一个节点连接。
得到图G,若 G = T k ( n ) ,则称 β 是 T k ( n ) 的一个构造过程。
(注意,这里的递归步骤也可以看作是 T k ( n ) 边集的一个表达)
定理3的证明令A是 T k ( n ) 的所有完美消除序列的集合, ∀ α ∈ A 是 T k ( n ) 的一个完美消除序列( α : { 1 , 2 , ⋯ , n } ↔ X 是一个双射)。令B是 T k ( n ) 的所有构造过程的集合, ∀ β ∈ B 是 T k ( n ) 的一个构造过程。令 ψ 是A到B的一个映射,满足对 ∀ i ∈ { 1 , 2 , ⋯ , n } , ∀ α ∈ A ,有 ψ ( α ) ( i ) = α ( n + 1 − i ) ,即如果将 α 看作对X的排序,则 ψ ( α ) 是相对于 α 的对X的一个逆排序。下面证明 ψ 是一个双射。
∀ α ∈ A , α 标记X为 { x i } i = 1 n ,令 β = ψ ( α ) , β 标记X为 { y i } i = 1 n ,由 ψ 的定义可知 y i = x n + 1 − i ( i = 1 , 2 , ⋯ , n ) ,由 α 是 T k ( n ) 的完美消除序列可知:(1) i ≤ n − k 时, x i 与 { x j } j = i + 1 n 中的一个k团的每一个节点均连接;(2) i > n − k 时, { x j } j = i n 是团。相应地, β 作为 α 的逆序序列,满足:1) n + 1 − i ≥ k + 1 时, y n + 1 − i 与 { y j } j = 1 n − i 中的一个k团的每一个节点均连接(即 p ≥ k + 1 ( p > k ) 时, y p 与 { y j } j = 1 p − 1 中的一个k团的每一个节点均连接);2) n + 1 − i < k + 1 时, { y j } j = 1 n + 1 − i 是团(即 p < k + 1 ( p ≤ k ) 时, { y j } j = 1 p 是团)。由定义4可知 β 是 T k ( n ) 的一个构造过程,从而有 β = ψ ( α ) ∈ B 。
∀ β ∈ B , β 标记X为 { y i } i = 1 n ,令 α : { 1 , 2 , ⋯ , n } ↔ X 标记X为 { x i } i = 1 n ,使得X满足 x i = y n + 1 − i ( i = 1 , 2 , ⋯ , n ) ,由 α 的定义可知 α 与 β 互为逆序序列。由 β 是 T k ( n ) 的构造过程可知:1) i ≤ k 时, y i 与 y j ( j < i ) 相连接, { y j } j = 1 i 是团;2) i > k 时, y i 与 { y j } j = 1 i − 1 中的一个k团的每一个节点均连接。相应地, α 作为 β 的逆序序列满足:1) n + 1 − i ≥ n + 1 − k 时, x n + 1 − i 与 x j ( j > n + 1 − i ) 相连接, { x j } j = n + 1 − i n 是团(即 p ≥ n + 1 − k ( p > n − k ) 时, x p 与 x j ( j > p ) 相连接, { x j } j = p n 是团);2) n + 1 − i < n + 1 − k 时, x n + 1 − i 与 { x j } j = n + 1 − i + 1 n 中的一个k团的每一个节点均连接(即 p < n + 1 − k ( p ≤ n − k ) 时, x p 与 { x j } j = p + 1 n 中的一个k团的每一个节点均连接)。由定理2可知, α 是 T k ( n ) 的一个完美消除序列,从而, ∀ β ∈ B , ∃ α ∈ A 使得 ψ ( α ) = β 。
由 ψ 的定义, ψ 将一个序列映射为它的逆序序列,所以对 ∀ α 1 ≠ α 2 ,有 ψ ( α 1 ) ≠ ψ ( α 2 ) 。
综上,定理得证。
k树识别算法是在弦图识别算法的基础上实现的,先介绍一个弦图识别的算法——MCS (max cardinality search,最大基数搜索)算法 [
Algorithm 1. Max-cardinality-search algorithm
算法1. MCS算法
根据k树完美消除序列和构造过程之间一一对应的关系,并且结合k树完美消除序列有关k度点的独特性,给出一个k树的识别算法——先将输入图识别为弦图后,根据其完美消除序列标记其点集,检查是否满足定理2中的结果来确认输入图是否为k树(算法2)。
Algorithm 2. k-trees’ recognition algorithm
算法2. k树的识别算法
本文从k树的递归构造方式入手,证明了作为弦图子类的k树,其完美消除序列具有独特性,可以通过k度点的迭代删除来刻画,k度点的识别相对于单纯点的识别也更加便利。同时,在k树完美消除序列的研究过程中,进一步发现其与k树构造过程之间的关系,k树的每一个完美消除序列都与它的一个构造过程以互为逆序序列的方式一一对应。最后,本文也将k树完美消除序列的独特性应用于k树的识别中,给出了一个k树的识别算法。此外,k树作为有特殊结构的弦图子类,在以弦图为模型的各类问题上会展现更好的性能,后续可以进一步研究。
王 蕾,杨卫华. k树的完美消除序列Perfect Elimination Orderings of k-Trees[J]. 应用数学进展, 2022, 11(12): 9017-9025. https://doi.org/10.12677/AAM.2022.1112951
https://doi.org/10.1137/1003021
https://doi.org/10.1016/0022-247X(70)90282-9
https://doi.org/10.1007/s13348-020-00293-3
https://doi.org/10.1007/978-3-031-15914-5_3
https://doi.org/10.1007/s10878-012-9482-y
https://doi.org/10.1016/j.dam.2004.06.008
https://doi.org/10.1137/S0895480194275825
https://doi.org/10.1016/0012-365X(74)90042-9
https://doi.org/10.1007/3-540-36379-3_1