抄自 Schrijver, A. (2003). Combinatorial Optimization - Polyhedra and Efficiency. Springer.
我对组合优化其实没多大兴趣,单纯想抄抄罢了。
A matroid is a tuple \((S,I)\), \(S\) is a finite set, and \(I\) is a collection of some subsets of \(S\) satisfying
- (Given \(A\in\mathcal{I}\), for all \(B\subseteq A\), we have): \(B\in\mathcal{I}\)
- (Given \(A,B\in\mathcal{I}\) satisfying \(|A|>|B|\)): there exists some \(z\in A\setminus B\) such that \(B+z\in\mathcal{I}\)
Given a matroid \(M=(S,{\mathcal I})\):
If \(A\subseteq S\), we say that \(A\) is independent when \(A\in\mathcal{I}\) (and dependent otherwise.)
Given \(B\subseteq A\subseteq S\), then \(B\) is called a base of \(A\) if:
\(B\) is an inclusion wise independent subset of \(A\), i.e., there is no \(C\in\mathcal{I}\) such that \(B\subset C\subseteq A\).
Under condition 1., we can restate condition 2. as:
All the bases of an arbitrary subset \(\bm A\) of \(\bm S\) have the same size \(\bm{ r_M(A)}\) (called the rank of \(\bm A\)).
A base of \(S\) is simply called a base, and \(r_M(S)\) is called the rank of the matroid.
A spanning set: a subset of \(S\) that contains a base as a subset.
bases = the inclusionwise minimal spanning sets = the independent spanning sets.
A circuit of a matroid: an inclusionwise minimal dependent set.
We call an element \(s\in S\) a loop if \(\{s\}\) is a circuit.
We say that \(s,t\in S\) are parallel if \(\{s,t\}\) is a circuit
the restriction of \(M=(S,\mathcal I)\) to \(S'\): \(M|S'=(S,\mathcal{I}')\), where \(\mathcal{I}'=\{A|A\subseteq S',A\in\mathcal I\}\)
we say that \(M|S'\) arises by deleting \(A\), if \(A\subseteq S\) and \(S'=S\setminus A\).
Contraction is the operation dual to deletion.
If a matroid arises from \(M\) by a series of deletions and contractions, we call it a minor of \(M\).
Theorem (Matroidal Intersection Theorem) Given matroids \(M_1=(S,\mathcal{I}_1)\) and \(M_2=(S,\mathcal{I}_2)\) with rank functions \(r_1\) and \(r_2\) respectively, then the maximum size of a set in \(\mathcal{I}_1\cap\mathcal{I}_2\) is equal to \(\min\limits_{A\subseteq S}(r_1(A)+r_2(S\setminus A))\)
Proof: Note that for any common independent set \(I\) and any \(A\subseteq S\) we have
\[|I|=|I\cap A|+|I\setminus A|\le r_1(A)+r_2(S\setminus A) \]Prove the equality by induction on \(S\)(choose \(s\in S\)) + contradiction
(..., otherwise, by induction \(\exists\;T\subseteq A\) such that \(r_1(A)>r_{M_1|U}(T)+r_{M_2\cdot U}(U\setminus T)\)
Corollary Then \(M_1\) and \(M_2\) have a common base if and only if: for all \(A\subseteq S\), \(r_1(A)+r_2(S\setminus A)\ge r_1(S)\)
Corollary The minimum size of a common spanning set of \(M_1\) and \(M_2\) is equal to \(\max\limits_{A\subseteq S}(r_1(S)-r_1(A)+r_2(S)+r_2(S\setminus A))\)
Proof: min=(r1(S)+r2(S)-max\(|B_1\cap B_2|\)) where B1 and B2 are bases of M1 and M2 respectively
Corollary (Rado's theorem) Given a matroid \(M=(S,\mathcal{I})\) with rank function \(r\) and let \(\mathcal{X}=(X_1,\cdots,X_n)\) be a family of subsets of \(S\).
Then \(\mathcal{X}\) has a transversal which is independent in \(M\) if and only if for each \(I\subseteq\{1,\cdots,n\}\)
Applications:
1.Konig's theorem
2.Proving a theorem in Ford-Fulkerson: Given \(\mathcal{X,Y}\) which are families of subsets of a finite set \(S\), then \(\mathcal{X}\) and \(\mathcal{Y}\) have a common transversal if and only if
for all subsets \(I\) and \(J\) of \(\{1,\cdots,m\}\) where \(X_I=\bigcup\limits_{i\in I} X_i\) and \(Y_J=\bigcup\limits_{j\in J} Y_j\).
3.Coloured trees: given a graph \(G\), then there exists a spanning tree with all edges coloured differently if and only if \(G-F\) has at most \(t+1\) components for any union \(F\) of \(t\) colours \((t\in\N)\).
4.Detachments
Let \(E\) be a finite collection of unordered pairs from \(S\), such that each pair is an independent set of \(M\).
Call a subset \(M\) of \(E\) a matroid matching if