拟阵理论选学

ByDaiRuiChen007

1. 拟阵的定义

1a. 拟阵的定义

拟阵(Matroid)M=(E,I),其中 IE 的某些子集构成的集合,其中 I 中的元素一般也被称为独立集。

M=(E,I) 需要满足如下公理才能被称为拟阵:

  • 非空性:I
  • 遗传性:II,JIJI
  • 交换性:A,BI|A|<|B|xBA 使得 A{x}I

1b. 常见拟阵

均匀拟阵(Uniform Matroid):E={1,2,,n}II|I|k,容易验证该矩阵具有遗传性和交换性。

图拟阵(Graphic Matroid):E 是图的边集,II 当且仅当 I 中无环,即 I 是图中所有森林构成的集合,下证该拟阵满足拟阵公理:

首先 I 的子集一定也是森林,因此遗传性显然成立。

然后考虑交换性:考虑 |A|<|B| 且不存在这样的 x,那么 B 中的每条边一定只能连接 A 中相同连通块中的点,此时一定有 |B||A|,故交换性也成立。

向量拟阵(Vector Matroid):E 为若干向量,II 当且仅当 I 中向量线性无关,根据线性代数的只是可以证明拟阵公理成立。

常规拟阵(Regular Matroid):在任何域上都能通过 Vector Matroid 表示的拟阵,对于图拟阵,我们可以对第 i 条边取 xi,ui=1,xi,vi=1 从而表示。

任何 Regular Matroid 都能通过行列式计算 |I| 的大小,在图拟阵上,这就是矩阵树定理。




2. 拟阵的基

2a. 拟阵基的定义

拟阵的基(Basis)是 I 中极大的若干独立集,即 SISS 都有 SI,记所有的基构成的集合为 B

一个性质是一个拟阵所有的基大小都相等,否则取 I,JB|I|>|J|,可以根据矩阵交换性找到 x 使得 J+xI,从而违背 J 的极大性。

2b. 拟阵基公理

拟阵的基 B 满足如下两条公理:

  • 非空性:|B|>0
  • 基交换性:X,YB,XYxXY,yYX 使得 Xx+yB

下证任意拟阵 M=(E,I) 的基都满足如下公理:

首先非空性是显然成立的。

其次对于基交换性,可以考虑 A=XxY 两个独立集,根据拟阵交换性知道存在 yYA 使得 A+yI

又因为 xXY,因此 YX=Y(YX)=Y(YA)=YA,因此此时的 y 即为所求。

2c. 拟阵的基定义

事实上拟阵 M 可以由 EB 定义得到,即已知任何一个满足上述基公理的集合 B,都能唯一确定一个拟阵 M=(E,B) 使得 M 的基恰好是 B

首先证明满足基公理的 B 中的每个元素大小一定都相等:

一个显然的事实是 X,YB,一定不存在 YX,即 B 中没有元素有真子集关系,否则 YX=,必然违背基交换性。

反证法考虑 X,YB|X|<|Y|,由于基交换性,我们可以取 xXY,yYX,使得 X=Xx+yB

此时 |X|=|X|<|Y|,且 XY 严格减小,因此可以不断递归直到 |XY|=0,此时即有 XY,导出矛盾,因此原命题成立。

可以猜测通过 (E,B) 构造出来的拟阵 M=(E,I) 应该满足 I={XXB,BB},即 B 中元素的子集并,以下给出证明:

先证明 M=(E,I) 是一个拟阵:首先根据定义,很自然的有遗传性和非空性,因此我们只要证明交换性即可。

我们考虑证明以下两个条件不可能同时发生:

  1. A,BI|A|<|B|
  2. bBA,总有 A+bI

那么反证法,我们进一步证明:总存在一组 A,B,在满足条件 (1),(2) 的基础上,还能满足下述的条件 (3):

  1. aAB,总有 B+aI

对于一组满足 (1),(2) 的 A,B,假设 aAB 使得 B+aI,那么我们令 B=B+a,此时条件 (1) 仍然满足,条件 (2) 由于仍然有 BA=BA,也是成立的。

因此不断递归下去,|B| 的大小不可能无限增长,因此必然在某个时刻存在这样的 A,B 同时满足条件 (1),(2),(3)。

进一步还能找到一个同时满足条件 (1),(2),(3),(4) 的 A,B,其中条件 (4) 是:

  1. BB

可以调整,由于 BB,因此一定有 x 使得 x+BI,此时考察 A+x

  • A+xIxA,取 A=A+x,B=B+x

    首先条件 (1) 显然满足。

    由于 BA=BA,那么 A+b=A+b+xI,因此条件 (2) 满足。

    由于 AB=AB,因此 B+a=B+a+xI,因此条件 (3) 满足。

  • 否则取 A=A,B=B+x

    条件 (1) 显然满足。

    由于 BA=BA+x,那么 bx 时一定有 A+bI,又因为 A+xI,因此条件 (2) 满足。

    由于 AB=AB,因此 B+a=B+a+xI,因此条件 (3) 满足。

那么对于满足条件 (1),(2),(3),(4) 的 A,B,根据定义可以找到一个 C 使得 AC=A+CB,由于 |A|<|B| 因此 |C|>0

此时如果 CB,那么取 bCB,那么 A+bIbBA,已经导出矛盾。

否则我们可以根据基交换性,删除一个 C 中元素再加入一个 B(A+C) 中元素,得到 C 使得 AC=,A+CB,CB,从而导出矛盾,故原命题得证。

然后我们还要证明这样的 M=(E,I) 可以被 (E,B) 唯一生成,且其基恰为 B

先证明基为 B,这是显然的,因为根据定义 |I| 中取到极大的元素一定恰好是 B 中全体元素。

其次不可能存在两个拟阵被这样的 B 生成,首先这两个拟阵的极大元素集合都一样是 B,根据遗传性,I 中必然包含且只能包含 B 中元素的子集,因此这样的 I 唯一。

因此我们可以任取一个满足拟阵基公理的 B,通过 M=(E,B) 来定义一个拟阵。




3. 拟阵的秩函数

3a. 秩函数的定义

拟阵的秩函数(rank function)r(A) 是一个 2EN 的函数,定义域是 E 的幂集,定义为 r(A)=max{|X|XA,XI},即 A 中的最大独立子集。

3b. 秩函数公理

  • 边际性(Binary Marginal):r()=0r(A+x)r(A){0,1}
  • 次模性(Submodular):AB,xBr(B+x)r(B)r(A+x)r(A)

下证任意拟阵 M=(E,I) 都满足如下公理:

边际性较为显然,如果 r(A+x)r(A)>1,取 r(A+x) 的最大独立子集 IIIxI|Ix|>r(A)IxA,导出矛盾。

然后证次模性:我们只需要证明 r(B+x)r(B)=1r(A+x)r(A)=1

事实上我们可以证明:r(B+x)r(B)=1 时,IB,II 都有 I+xI

根据拟阵交换性,我们首先可以找到一个 JB|J|=r(B)IJ,即一个 B 的最大独立子集包含 I

由于 |J|<r(B+x),我们还能进一步通过拟阵交换性构造 J+yB+x,且 J+yI

由于 I+xJ+y,因此根据拟阵遗传性有 I+xI

根据上面的结论,取出 A 的最大独立子集 UU+xI,因此 r(A+x)|U+x|=r(A)+1,再运用边际性即得 r(B+x)r(B)=1r(A+x)r(A)=1

事实上,次模性也常常被写作另一种形式:r(AB)+r(AB)r(A)+r(B),下证这两种定义形式是等价的:

先考虑推出这种形式:由于 AB=AB+AB+BA,根据次模性不断在 AAB 的基础上加入 BA 的元素,得到 r(B)r(AB)r(AB)r(A),原命题得证。

然后考虑根据这种形式推出原公理:注意到 (A+x)B=B+x,(A+x)B=A,那么有 r(A+x)+r(B)r(B+x)+r(A),同样得证。

3c. 拟阵的秩函数定义

对于任意的 2EN 的映射 r(A) 如果满足秩函数公理,那么可以通过 (E,r) 唯一确定一个拟阵 M 使得 M 的秩函数恰好是 r

先考虑如何求出拟阵 M=(E,I),显然 I={Ir(I)=|I|},那么我们就要证明这个拟阵满足拟阵公理:

根据边际性,若 A+xI,那么 r(A)r(A+x)1=|A|,因此 AI

然后证明交换性,对于 A,BI 满足 |A|<|B|,我们要找到一个 xBA 使得 A+xI

不妨反证法,设 xBA 都有 A+xI,即 r(A+x)=r(A)

那么根据边际性,取 x,yBAr(A+x+y)r(A+x)r(A+y)r(A)=0,那么 r(A+x+y)=r(A)

不断递推最终能得到 r(B)=r(A),与 |B|>|A| 矛盾,故交换性成立。

然后我们要证明 r 就是这个拟阵 M=(E,I) 的秩函数:

设该拟阵的秩函数为 rank(A),我们要证明 rank(A)=r(A),取出 A 的最大独立子集 I

根据定义 rank(A)=|I|,接下来要证明 r(A)=|I|

首由于 I 是最大独立子集,那么 xAI 都有 r(I+x)=r(I)

那么根据次模性,任取 x,yAI 都有 r(I+x+y)r(I+x)r(I+y)r(I)=0,因此 r(I+x+y)=r(I)

不断递推有 r(A)=r(I)=|I|=rank(A)

那么我们知道可以通过任意满足秩函数公理的的 2EN 函数 r(A) 定义拟阵 M=(E,r)




4. 拟阵上的最大权独立集

4a. 贪心算法

E 中元素有权值,集合权值 w(A) 定义为每个元素权值和。

拟阵上的最大权独立集就是 max{w(I)II}

做法就是把元素按权值从大到小排序,维护集合 A,每个元素 x 如果 A+xI 就加入,否则不加入。

在图拟阵上,这就是常见的 Kruskal 最小生成树算法。

4b. 算法正确性证明

我们要证明这个算法的正确性。

首先根据拟阵交换性,最优解和贪心解一定都是拟阵的一组基,否则可以继续加元素。

因此我们只要考虑两个解大小相同的情况。

设贪心解为 A={a1,a2,,ak,ak+1,,ak+m}

设最优解为 B={a1,a2,,ak,bk+1,,bk+m}

其中元素按权值大小从大到小排列且 w(bk+1)w(ak+1)

显然 m>1 否则必有 w(A)w(B)

此时取 A1={a1,a2,,ak,ak+1},由于 |A1|<|B| 那么通过拟阵交换性可以找到 bBA1={bk+1,bk+2,,bk+m} 使得 A1+bI,记为 A2,同理求出 A3,A4,,Am

此时 Am 等于 A1 并上 BA={bk+1,bk+2,,bk+m} 中的 m1 个元素,由于 w(Ak+1) 大于等于 BA 中所有元素。

因此 Am 必然也是一组最优解,而 |AmA|=k+1 此时两个集合并大小变大,不断调整最终会得到某个 B 使得 |BA|=k+m,此时 A=B 也是最优解,故原命题得证。




5. 对偶拟阵

5a. 对偶拟阵的定义

对偶拟阵(Dual Matroid)由一个拟阵 M=(E,B)(根据基定义表示)定义:其对偶拟阵 M=(E,B),其中 B={BBB}

5b. 对偶拟阵性质的证明

首先我们要证明 M 是一个拟阵:

M=(E,I),其中 IB 所有元素的子集并。

我们考虑拟阵的秩函数定义,求 M 的秩函数 r(A)

那么:

r(A)=maxBB{|AB|}=maxBB{|AB|+|B||E|}=maxBB{|AB|}|E|+r(E)=maxBB{|A|+|B||AB|}r(E)=|A|minBB{|AB|}=|A|minBB{|B||AB|}=|A|r(E)+r(A)

验证一下秩函数的边际性:r(A+x)r(A)=1(r(A)r(A+x)){0,1}

秩函数的次模性:r(B+x)r(B)=1r(B)=r(B+x),此时 r(A)r(A+x)r(B)r(B+x)=0

因此 r(A)=r(A+x) 从而 r(A+x)r(A)=1r(A)+r(A+x)=1

因此我们验证了 M 的秩函数满足拟阵秩函数公理,从而 M=(E,r) 是拟阵。

5c. 对偶拟阵的应用

比较经典的对偶拟阵是图拟阵的对偶(Co-Graphic Matroid),分析一下发现这个拟阵的基是所有生成树的补,那么拟阵的所有元素都满足:删除后原图联通,即该拟阵是原图割集的补集。

图对偶拟阵可以用来求图上是否有两棵不相交的生成树:只要判断图拟阵和对偶图拟阵的交中是否含有大小 n1 的边集即可。

这个算法可以求解 Shannon's Switching Game:

A 和 B 轮流在图上删除/保留边,两人操作过的边不能操作,如果某一时刻 B 保留的边形成生成树那么 B 获胜。

这个游戏后手的必胜条件就是图中有两棵边不交的生成树。




6. 拟阵的环

6a. 拟阵环的定义

拟阵中的一个环(Circuit)被定义为一个极小的非独立子集,即 C 是环当且仅当 CICC 都有 CI

在图拟阵上,环就是图上的环。

6b. 拟阵环的性质

拟阵环具有如下性质:

  • 环的大小不是固定的。从图拟阵中就容易构造出例子。

  • 不存在两个环有包含关系。根据定义,这是显然的。

  • AI 当且仅当存在环 C 使得 CA

    首先根据拟阵的遗传性,CA 说明 AI

    然后对于一个非独立集 A,若 A 不是环,那么必定能找到一个 BA 使得 BI,不断重复,最终停止时一定能找到一个环作为 A 的子集。

6c. 唯一环定理

唯一环定理(Unique Circuit Thereom)描述的是:对于任意 (A,x) 满足 AIA+xI,都能证明 A+x 中只有恰好一个环,记为 C(A,x),下面给出证明:

根据推论,显然 A+x 中不可能无环。

我们只需证明不存在两个环 C1,C2 满足 C1C2C1,C2A+x

由于 C1C2 且根据推论 C1,C2 之间无包含关系,因此我们可以取 eC1C2

此时根据环的极小性定义,C1eI

然后根据拟阵交换性,我们可以逐步向 C1e 中加入 A 的元素,因此存在 BA+xBIC1eB|B|=|A|

不妨假设 A+xB=f,那么考虑 f 的性质:

  • 首先 f=e 时由于 eC1C2,此时 fC2 从而 C2B,与 BI 矛盾。
  • 否则 fe,此时由于 C1eB,因此 fC1 从而 C1B,与 BI 矛盾。

从而推出矛盾,故原结论成立。

唯一环定理的一个推论就是 yC(A,x) 当且仅当 A+xyI

先证明 yC(A,x)A+xyI

因为 C(A,x)A+x 中唯一环,因此 C(A,x) 必不被 A+xy 包含,故 A+xyI

然后证明 A+xI,A+xyIyC(A,x)

首先 AI,A+xI 推出 C(A,x) 存在,如果 yC(A,x) 那么 C(A,x)A+xy,则 A+xyI

因此 yC(A,x)A+xyI

6d. 拟阵的增广路

对于一个 AI,假设存在互异元素序列 (a1,b1,a2,b2,,ak,bk),那么 Aa1+b1a2+b2ak+bkI 在如下条件满足时成立:

  • i[1,k]:A+biI
  • i[1,k],j[1,i1]:ajC(A,bi)
  • i[1,k]:aiC(A,bi)

下面给出证明:

考虑归纳法,对于 k=1 的情况就是唯一环定理的推论。

然后我们考虑从 k1 次操作之后得到的独立集 Ak1I 推出 Ak1ak+bkI

首先,我们记 S=C(A,bk)bk,由于 a1ak1C(A,bk),由此推出 SAk1

因此 S+bkAk1+bk,因此 C(Ak1,bk)=S+bk=C(A,bk)

那么 akC(Ak1,bk),显然有 Ak1ak+bkI




7. 拟阵交

7a. 拟阵交问题

给定两个拟阵 M1=(E,I1),M2=(E,I2),定义拟阵交为 I1I2 中的最大元素,即 max{|I|II1,II2}

7b. 拟阵交的求法

维护答案 A,初始 A=,每轮增广使得 |A| 变大 1

按如下方式建立一张有向二分图 GA

  • 左部点包含所有 A 中元素,和虚拟源汇点 S,T
  • 右部点包含所有 A 中元素。
  • xA,如果 A+xI1,那么连接 Sx
  • xA,如果 A+xI2,那么连接 xT
  • xA,yA,如果 Ay+xI1,那么连接 yx
  • xA,yA,如果 Ay+xI2,那么连接 xy

GA 中找到 ST 的最短路,把路径上所有点在 A 中的状态取反,作为新的 A

不断增广直到 GA 中不存在 ST 的道路,此时 A 即为一个最大拟阵交。

r=max(r1(E),r2(E)),那么每次建立的 GA 点数 O(|E|),边数 O(r|E|),增广轮次 O(r)

时间复杂度 O(r2|E|)

7c. 拟阵交算法正确性证明

首先我们来验证,每轮增广结束后,A 都是 I1I2 中的元素:

设该增广路为 Sb0a1b1akbkT,其中 aiA,biA

I=S+b0,我们用拟阵增广路的判定来证明 Ia1+b1a2+b2ak+bkI1

我们先说明 xA,A+xI1,一定有 C1(A,x)=C1(I,x),由于 II1,I+xI1,因此 C1(I,x) 存在,又因为 C1(A,x)I+x,根据唯一环定理,C1(A,x) 也是 I+x 中的唯一环,即 C1(A,x)=C1(I,x)

  • i[1,k],满足 I+biI1

    反证法,假设存在 I+biI1,那么 A+biI1,因此 GA 中包含边 Sbi,那么我们直接取增广路 Sbiai+1bi+1akbkT 可以得到一条更短的增广路,与当前增广路最短性矛盾。

  • i[1,k],j[1,i1],满足 ajC1(I,bi)

    反证法,假设存在 ajC1(I,bi),那么 ajC1(I,bi)=C1(A,bi),因此 Aaj+biI1,因此 ajbiGA 中,把原增广路中 ajbjaj+1bi 的部分替换成 ajbi 一定更优,与当前增广路的最短性矛盾。

  • i[1,k],满足 aiC1(I,bi)

    由于 aibiGA 中,因此 Aai+biI1,那么 aiC1(I,bi)=C1(A,bi)

因此 Ia1+b1a2+b2ak+bkI1,反向考虑整条增广路,类似可证 (A+bk)ak+bk1a1+b0I2

综上,我们得到每次增广后的 A 依然属于 I1I2

7d. 拟阵交算法最优性证明

其次我们验证:当该算法停止时,A 一定是一个大小最大的拟阵交。

为了证明 A 的极优性,我们需要一定的放缩:II1I2 都有 |I|min{r1(S)+r2(S)SE}

这是因为 ISI1|IS|r1(S),同理 |IS|r2(S),因此原式成立。

然后我们只需要找到一个 U 使得 r1(U)+r2(U)|A|,那么我们就能说明 |A|I1I2 中最大元素。

我们取 R 为当前 GAS 出发可达的点,U=R,我们能够证明 |AR|r2(R)|AR|r1(R)

先证明 |AR|r2(R)

反证法,假设 r2(R)>|AR|,那么 RI2 中的最大独立集一定至少包含一个 AR 的点,那么根据拟阵的交换性,我们能够从 AR 开始调整,找到一个 yRA 使得 AR+yI2

如果 A+yI2,那么存在一条边 yT,而 yR,那么就存在一条 ST 的增广路,所以一定有 A+yI2

然后考虑 C2(A,y),由于 AR+yI2,因此 AR+y 不包含 C2(A,y),所以至少存在一个 xAR 使得 xC2(A,y)

那么此时 Ax+yI2,存在一条 yx 的边,与 xR 导出矛盾。

对于 |AR|r1(R) 的证明也是类似的,故存在 U 使得 r1(U)+r2(U)|A|

因此 |A|=max{|I|II1I2}

综上所述,我们证明了这个算法一定能求出 I1I2 中最大的一个元素。

7e. 带权拟阵交

E 中每个元素赋权值 w(x),定义 w(I)=xIw(x),求 max{w(I)II1I2}

我们在构造 GA 的时候给每个点赋权值,若 xA 则权值为 w(x),否则赋权值为 w(x),每次增广的时候优先选择权值和最小的增广路,如果有多条则选择经过点数最少的一条进行增广。

时间复杂度 O(r2|E|2),其中 r=max(r1(E),r2(E))

7f. 拟阵交的应用

  • 带限制 MST

    给定若干条特殊边,要求特殊边不能选择超过 k 条,求 MST。

    建立两个拟阵,一个是图拟阵,另一个是特殊边 k 的边集的集合,求带权拟阵交。

  • 最小树形图

    给定一张有向图,求出以 x 为根的最小外向树。

    建立两个拟阵,第一个表示除 x 外每个点入度 1 的边集,第二个表示将图看成无向图后没有环,求带权拟阵交。

  • Colorful Tree

    给定带权无向图,每条边有 [1,n1] 之间的颜色,要求每种边恰选一条,求 MST。

    建立两个拟阵,一个是图拟阵,另一个是每种颜色至多选一条的边集,求带权拟阵交。

7g. 多个拟阵的交

>2 个的拟阵的交中的最大元素是 NP-Complete 的,具体的,我们可以把哈密尔顿路径问题归约到该问题上:

哈密尔顿问题是指:给定一张有向图 G=(V,E),找到一条 st 的简单路径经过 |V| 个点,接下来把这个问题归约到 3 拟阵交上。

  • 第一个拟阵:定义为将图看成无向图后没有环。
  • 第二个拟阵:定义为除 s 之外所有点入度 1
  • 第三个拟阵:定义为除 t 之外所有点出度 1

答案就是这三个拟阵的交中的最大元素,哈密尔顿路存在当且仅当该元素大小为 |V|1




8. 拟阵并与拟阵划分问题

8a. 拟阵并的定义

定义两个拟阵 (E,I1),(E,I2),那么他们的拟阵并 (E,I) 定义为:I={I1I2I1I1,I2I2},记为 I=I1I2

接下来证明 (E,I) 确实是一个拟阵:

拟阵的遗传性根据 I1,I2 的遗传性显然得证,那么只需证明拟阵的交换性。

对于两个集合 A,BI,且 |B|>|A|,我们要找到 xBA 使得 A+xI

先设 A=A1+A2,B=B1+B2,其中 A1,B1I1,A2,B2I2A1A2=B1B2=

由于 |A1|+|A2|<|B1|+|B2|,那么 |A1|<|B1||A2|<|B2| 中至少有一条成立,不妨设 |A1|<|B1|

根据拟阵 (E,I1) 的交换性,取 xB1A1 使得 A1+xI1,若 xA2 那么 x 即为所求。

否则 xA2,我们把 xA2 中移动到 A1 中,此时 xA1,B1,得到 |A1B1|+|A2B2| 严格增大,故这样的调整不可能无限持续,因此我们总能找到一个合法的 x

8b. 拟阵并问题

给定 k 个拟阵 (E,I1)(E,Ik),定义拟阵 (E,I) 使得 I=I1I2Ik,其中拟阵并的定义如上所述,求 I 中的最大元素。

首先我们可以证明 II 当且仅当存在 I1Ik,满足任意 IpIpI=I1+I2+Ik 且任意两个集合无交,这可以通过拟阵的遗传性调整得到。

然后我们可以把 I 中的元素有这样的形式表示:定义 F=E×{1,2,,k}={(x,i)xE,i[1,k]}

那么 I=I1++Ik 的一种分解方式可以对应到 F 中的一个子集,J={(x,i)xIi},且 |J|=|I|

因此求最大的 I 可以转成求最大的 J

Jp={x(x,p)J},即 J 在第 p 列上的元素,J 可以用拟阵交定义:

  • 定义第一个拟阵 J1={Ji[1,k]:JiIi},即第 i 列上的元素在 Ii 中。
  • 定义第二个拟阵 J2={J1i<jk:JiJj=},即任意两列上的元素无交。

因此最大的 I 可以通过最大的 J 表示,而最大的 J 可以用 J1J2 的拟阵交定义。

接下来我们验证 (F,J1),(F,J2) 为拟阵:

首先考虑 J1,由于每列独立,那么遗传性是显然的,而交换性就找某一列上的拟阵使得 |Ai|>|Bi|,用 Ii 的交换性调整即可。

然后考虑 J2,显然有遗传性,而交换性直接找到 A 中有元素且 B 中没有元素的一行即可。

因此 (F,J1),(F,J2) 都是拟阵。

那么通过定义新拟阵的拟阵交,我们就把 k 拟阵并归约到拟阵交上了。

8c. 拟阵并定理

拟阵并定理(Matroid Union Theorem)指的是:

给定拟阵 (E,I1)(E,Ik),(E,I),I=I1Ik,设他们的秩函数为 r1(A)rk(A),r(A),那么有:

r(E)=minAE{|A|+i=1kri(A)}

下面给出证明:

先说明 II,AE,都有:|I||A|+i=1kri(A)

考虑把 I 写成 I1++Ik,其中集合两两无交,那么 |I|=|IA|+i=1k|I1A||A|+i=1kri(A),因此我们只要找到一组 I,A 使得等号成立即可。

类似解决 k 拟阵并问题的过程,构造辅助拟阵 (F,J1),(F,J2),设对应的秩函数为 r1(A),r2(A)

我们先证明关于 r1(A)r2(A) 的两个小结论:

  • r1(A)=i=1kri(Ai),因为 A 中每一列都独立。
  • r2(A)=|A1A2Ak|,因为 A 中只包含这些行,且每行都可以选一个元素。

那么根据拟阵交定理的结论,r(E)=max{|J|JJ1J2}=minA{r1(A)+r2(A)}

设右式为在 U 处取到极小值,那么取 R=U1U2Uk

此时 r1(U)=i=1kri(Ui)i=1kri(R)r2(U)=|U1U2Uk|=|U1U2Uk|=|R|

因此 r(E)=r1(U)+r2(U)i=1kri(R)+|R|,因此此时的 R 即可取到等号。

r(E)=minAE{|A|+i=1kri(A)} 成立。

8d. 拟阵覆盖问题

给定 M=(E,I),最小化 k 使得存在 I1IkIE=I1Ik

这个问题是多项式可解的,具体算法可以参考这个链接:Link

但是最小的 k 可以直接算出:kmin=maxS|S|r(S),证明如下:

我们定义拟阵 I1=I2==Ik=I,取 J=I1Ik,记 J 的秩函数为 r(A)

那么 k 合法的充要条件是 EJ,即 r(E)=|E|,根据拟阵并定理:r(E)=minAE|A|+k×r(A)

那么 minAEk×r(A)|A|=0,即 AE:k×r(A)|A|,因此最小的 k 至少是 maxS|S|r(S)

充分性可以逆推,k=maxS|S|r(S) 时可以导出 minAEk×r(A)|A|=0r(E)=E,那么这个 k 就是合法的。

因此我们可以直接算出最小拟阵覆盖的大小。

posted @   DaiRuiChen007  阅读(271)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
点击右上角即可分享
微信分享提示