Skip to Content

11. Matching Theory

2019-12-18·Combinatorics

Hall Theorem

  • SDR: system of Distinct Representives
    • distinct x1,x2,⋯ ,xm,xi∈Si,i=1,2,⋯ ,mx_1,x_2,\cdots,x_m,x_i\in S_i,i=1,2,\cdots,m
  • Hall's Theorem (marriage theorem): S1,S2,⋯ ,SmS_1,S_2,\cdots,S_m have a SDR   ⟺  ∀I⊆{1,2,⋯ ,m},∣⋃i∈ISi∣≥∣I∣\iff \forall I\subseteq\{1,2,\cdots,m\},|\bigcup_{i\in I}S_i|\geq|I|
  • Hall's Theorem (graph theory form): A bipartite graph G(U,V,E)G(U,V,E) has a matching of UU   ⟺  ∀S⊆U,∣N(S)∣≥∣S∣\iff\forall S\subseteq U,|N(S)|\geq|S|
    • N(S)={v∣∃u∈S,uv∈E}N(S)=\{v|\exists u\in S,uv\in E\}
    • proof: induction, divide into two cases according to critical family (∣⋃i=1kSi∣=k|\bigcup_{i=1}^kS_i|=k)

Min-Max Theorems

  • König-Egerváry theorem: in bipartite graph, min⁡\min vertex cover = max⁡\max matching
    • matchign: M⊆E,¬∃e1,e2∈MM\subseteq E,\neg\exists e_1,e_2\in M share a vertex
    • vertex cover: C⊆V,∀e∈EC\subseteq V,\forall e\in E adjacent to some v∈Cv\in C
  • König-Egerváry theorem (matrix form): For any 0-1 matrix, the maximum number of independent 1's ss equals the minimum number of rows and columns required to cover all the 1's tt
    • r≤sr\leq s
    • r≥sr\geq s: Hall Thoerem
  • Dilworth's theorem: max⁡\max size of antichain rr in poset PP == min⁡\min size ss of smallest partition of PP into chains
    • chain: totally ordered set, all pairs of elements are comparable
    • antichain: all pairs of elements are incomparable
    • r≤sr\leq s
    • r≥sr\geq s:
  • Erdős-Szekeres Theorem: A sequence of more than mnmn different real numbers must contain either an increasing subsequence of length {\displaystyle m+1}{\displaystyle m+1}, or a decreasing subsequence of length (m+1)(n+1)(m+1)(n+1).

Flow

  • Flow
    • digraph: D(V,E)D(V,E), source ss, sink tt
    • capacity: c:E→R+c:E\rightarrow\mathbb{R}^+
    • flow: f:E→R+f:E\rightarrow\mathbb{R}^+
    • constrain
      • capacity: ∀(u,v)∈E,fuv≤cuv\forall(u,v)\in E,f_{uv}\leq c_{uv}
      • conservation: ∀u∈V\{s,t},∑(w,u)∈Efwu=∑(u,v)∈Efuv\forall u\in V\backslash\{s,t\},\sum_{(w,u)\in E}f_{wu}=\sum_{(u,v)\in E}f_{uv}
    • value of flow: ∑(s,u)∈Efsu=∑(v,t)∈Efvt\sum_{(s,u)\in E}f_{su}=\sum_{(v,t)\in E}f_{vt}
  • Cut
    • same input
    • ss-ttcut: S⊂V,s∈S,t∉S,∑u∈S,v∉S,(u,v)∈EcuvS\subset V,s\in S,t\notin S,\sum_{u\in S,v\notin S,(u,v)\in E}c_{uv}
  • Flow Integrality Theorem: max integral flow = max-flow if capcities are integers
  • Max-Flow Min-Cut Theorem: max-flow = min-cut (Ford-Fulkerson 1956, Kotzig 1956)
  • Augmenting Path: s=u0u1⋯uk=ts=u_0u_1\cdots u_k=t
    • f(uiui+1)<c(uiui+1)f(u_iu_{i+1})<c(u_iu_{i+1}) if ui→ui+1u_i\rightarrow u_{i+1}
    • f(ui+1ui)>0f(u_{i+1}u_i)>0 if ui←ui+1u_i\leftarrow u_{i+1}
    • maximum flow   ⟺  \iff no augmenting path
  • Proof that max-flow = min-cut iff no augmenting path
    • Weak duality
      • ∑u:(s,u)∈Efsu=∑u∈S,v∉S,(u,v)∈Efuv−∑u∈S,v∉S,(u,v)∈Efvu\sum_{u:(s,u)\in E}f_{su}=\sum_{u\in S,v\notin S,(u,v)\in E}f_{uv}-\sum_{u\in S,v\notin S,(u,v)\in E}f_{vu}
      • flow ≤∑u∈S,v∉S,(u,v)∈Efuv≤\leq \sum_{u\in S,v\notin S,(u,v)\in E}f_{uv}\leq cut
    • no augmenting path
      • S={u∣∃augmenting path from s tou}S=\{u|\exists \text{augmenting path from } s \text{ to} u\}
      • s∈S,t∉Ss\in S,t\notin S
      • ∀u∈S,v∉S,(u,v)∈E,fuv=cuv,fvu=0\forall u\in S,v\notin S,(u,v)\in E,f_{uv}=c_{uv},f_{vu}=0
      • flow = cut
  • Menger's Theorem: undirected graph, ss-tt cut C⊂EC\subset E that removing CC disconnects s,ts,t
    • min ss-tt cut = max # of disjoint ss-tt path

Linear Programming