はむ。日記

離散数学とか解析学とかアニメについてつぶやきます。

マッチング

単純無向グラフ G=(V,E)を考える。

[Def](マッチング)

 M \subseteq Eのどの2辺も互いに隣接しないとき、 M Gのマッチングという。

マッチング Mに属する辺の両端点は Mでマッチングされているという。

 vがマッチング Mに属する辺の端点のとき、 M vを飽和しているといい、 v M飽和点という。

 Gの全ての点が M飽和点のときマッチング Mは完全マッチングという。

 |M^{'} |>|M|となるマッチング M^{'}が存在しないとき、 Mを最大マッチングという。

 

[Def](交互道)

 M Gのマッチングとする。

 Mに関する交互道とは Gにおける道 v_{0}-...-v_{k}(k \geqq1) Mの辺と E \setminus Mの辺が交互に現れるもの。

 

[Def](増加道)

  Mに関する増加道とは、 Mに関する交互道 v_{0}-...-v_{k}(k \geqq1) v_{0} v_{k} M非飽和なものである。

 

 [Thm](Berge,1957)

 M \subseteq E Gの最大マッチング \Leftrightarrow  Mに関する増加道が存在しない。

[証明]

( \Rightarrow)

対偶:

 Mに関する増加道が存在 \Rightarrow Mは最大マッチングでない

を示す。

 Mに関する増加道があると仮定し、 v_{0}-v_{1}-...-v_{2m+1}を増加道とする。

 v_{1}v_{2},...,v_{2m-1}v_{2m} Mの辺であり、これらを Mから取り除き、新たに辺v_{0}v_{1},...,v_{2m}v_{2m+1}を加えたものを M^{'}とする。

このとき交互道の定義から M^{'}がマッチングであることがすぐにわかる。

さらに |M^{'}| = |M|+1から Mが最大マッチングでないことがわかる。

( \Leftarrow)

対偶:

 Mが最大マッチングでない \Rightarrow Mに関する増加道が存在

を示す。

 M Gの最大マッチングでないとする。

 M^{'} Gの最大マッチングとする。

つまり |M^{'}| >|M|が成り立つ。

グラフ H = (V,M△M^{'})を考える。(△は対称差であり M△M^{'}=(M\cup M^{'})\setminus (M \cap M^{'}))

このとき Hの各点の次数は高々2である。

よって Hの各連結成分は孤立点か M M^{'}の辺を交互にとる偶サイクルか M M^{'}の辺が交互に現れる道である。

偶サイクルにおいてそれに含まれる Mの辺の数と M^{'}の辺の数は等しい。

 |M^{'}| >|M|より、( Mの辺の数)<( M^{'}の辺の数)を満たす Hの道 Pが存在する。このとき Pの始まりも終わりも M^{'}の辺になる。

つまり Pの始点と終点は Hでは M^{'}飽和であるが、 Gでは M非飽和である。

よって P G Mに関する増加道である。■