閉路グラフのマッチングを有限オートマトンで記述する
Viennot先生の講義動画で,組合せ論的オブジェクトを有限オートマトンへ全単射的に変換して,母関数を簡単に求める方法が紹介されていました.
動画では,道グラフのマッチング(その個数はフィボナッチ数)を状態数2の有限オートマトンに変換していました.
この記事では,同じようにして閉路グラフのマッチングを有限オートマトンに変換して母関数を求めてみます.
グラフのマッチング,および閉路グラフやそのマッチング多項式については,以前の記事を参照してください.
iwalion.hatenablog.com
有限オートマトン
この記事では,有限オートマトンとは有向グラフ上の自己交差を許す歩道のことだと思ってかまいません.
この記事ではViennot先生の動画で紹介されている次の定理を使います.証明は動画を見てください.
定理
節点数の有向グラフと枝重みが与えられているとする.
有向グラフ上の歩道の重みを,それが通る枝の重みの積により定める.有向グラフの隣接行列をとする.
逆行列が存在すると仮定する.
このとき,節点から節点へ行く全ての歩道の重みの和 (一般には無限和)は,の要素で与えられる.
道グラフのマッチング
長さの道グラフとは,節点集合と枝集合からなる単純無向グラフです.
長さの道グラフのマッチングの個数は,フィボナッチ数です.下図に長さの道グラフと,そのマッチングの集合を描きました.
長さの道グラフのマッチングの集合は,下図 (図1)に示す状態数2の有限オートマトンによって受理される長さの言語の集合と一対一対応します.
図1はただの有向グラフだと思ってもかまいません.その場合,図中のは枝重みだと思ってください.グラフ理論の言葉で言うなら,節点から節点への長さの歩道の集合と全単射であるということです.
どんな全単射かは,下の図を見れば分かる気がします.道グラフの節点から節点を順に見ていきマッチングに含まれない節点ならばの自己ループを通り,マッチングに含まれる節点ならばを通ります.