数学の命題示しました

主に組合せ論について,読んだ本で出てきたことや,考えたことを書きます.

閉路グラフのマッチングを有限オートマトンで記述する

Viennot先生の講義動画で,組合せ論的オブジェクトを有限オートマトン全単射的に変換して,母関数を簡単に求める方法が紹介されていました.
動画では,道グラフのマッチング(その個数はフィボナッチ数)を状態数2の有限オートマトンに変換していました.

youtu.be


この記事では,同じようにして閉路グラフのマッチングを有限オートマトンに変換して母関数を求めてみます.
グラフのマッチング,および閉路グラフやそのマッチング多項式については,以前の記事を参照してください.
iwalion.hatenablog.com

有限オートマトン

この記事では,有限オートマトンとは有向グラフ上の自己交差を許す歩道のことだと思ってかまいません.
この記事ではViennot先生の動画で紹介されている次の定理を使います.証明は動画を見てください.
定理
節点数 nの有向グラフ Gと枝重み w:E(G)\to \mathbb{K}が与えられているとする.
有向グラフ上の歩道 \omegaの重み wを,それが通る枝の重みの積により定める.有向グラフの隣接行列を A=(a)_{i,j}とする.
逆行列 (I-A)^{-1}が存在すると仮定する.
このとき,節点 iから節点 jへ行く全ての歩道の重みの和 (一般には無限和)は, (I-A)^{-1} (i,j)要素で与えられる.

道グラフのマッチング

長さ n道グラフとは,節点集合 V\triangleq\{1,\ldots,n\}と枝集合 E\triangleq\{\{1,2\},\{2,3\},\ldots,\{n-1,n\}\}からなる単純無向グラフです.
長さ nの道グラフのマッチングの個数は,フィボナッチ数 F_{n+1}です.下図に長さ 4の道グラフと,そのマッチングの集合を描きました.

長さ nの道グラフのマッチングの集合は,下図 (図1)に示す状態数2の有限オートマトン G_1によって受理される長さ nの言語の集合と一対一対応します.

図1: オートマトン  G_1.有向グラフだと思ってもよい.

図1はただの有向グラフだと思ってもかまいません.その場合,図中の a,b,cは枝重みだと思ってください.グラフ理論の言葉で言うなら,節点 s_1から節点 s_1への長さ nの歩道の集合と全単射であるということです.

どんな全単射かは,下の図を見れば分かる気がします.道グラフの節点 1から節点を順に見ていきマッチングに含まれない節点ならば s_1の自己ループを通り,マッチングに含まれる節点ならば s_1\to s_2\to s_1を通ります.

フィボナッチ数の母関数

このことを使って,道グラフのマッチングの個数の母関数や,マッチング多項式の母関数を求めることができます.
ここでは,個数の母関数を求めてみます.
個数の母関数とは,無限和 \displaystyle\sum_{n\geq 0} M_nt^nのことです.但し長さ nの道グラフのマッチングの個数を M_nと書きました.
図1の有向グラフにおける枝重み a,b,cをそれぞれ a=b=c=tと定めます.
すると,先に述べた全単射から
 \displaystyle\sum_{n\geq 0} M_nt^n=\sum_{\omega\colon (s_1\to s_1)}w(\omega)
です.和の範囲 \omega\colon (s_1\to s_1)は,グラフ G_1において s_1から s_1に行く全ての歩道について和を取るという意味です.

これは,最初に書いた定理から,グラフ G_1の隣接行列を使って計算できます.グラフ G_1の隣接行列は

 A_1\triangleq
\begin{pmatrix}
w(s_1,s_1)&w(s_1,s_2)\\
w(s_2,s_1)&w(s_2,s_2)
\end{pmatrix}
=
\begin{pmatrix}
t&t\\
t&0
\end{pmatrix}
なので, (I-A)^{-1} (1,1)要素を計算すれば,
 \displaystyle\sum_{n\geq 0} M_nt^n=\frac{1}{1-t-t^2}
が分かります.

閉路グラフのマッチング

次に,同じことを閉路グラフのマッチングでやってみます.閉路グラフとそのマッチングとは,以下のようなものでした.これは n=5の例です.


閉路グラフの節点を \{1,2,\ldots,n\}とするとき,マッチングに枝 \{n,1\}が含まれているかどうかで,オートマトンの別々の部分に飛ばすようにします.
以下のようなオートマトンが得られました.

定理
 n\geq 3のとき,大きさ nの閉路グラフのマッチングの集合は,以下の有向グラフ G_2において,節点 sから節点 g_1または g_2への長さ nの歩道の集合と一対一対応する.


書くのがダルくなってきたので,なんでそうなるのかは考えてください.節点 g_1にたどり着くのが枝 \{n,1\}が含まれている場合で,節点 g_2が含まれていない場合です.

閉路グラフのマッチング多項式の母関数

有向グラフ G_2の枝重みを次のように定めます.

すると, G_2における「節点 sから,節点 g_1または g_2への長さ nの歩道の重みの和」は,閉路グラフのマッチング多項式 C_{\gamma_n}(x)になります.
さらに, G_2の隣接行列 A_2を考え,行列 (I-A_2)^{-1} (s,g_1)成分と (s,g_2)成分の和をとることで,
閉路グラフのマッチング多項式の母関数が
 \displaystyle \frac{1-t^2}{1-tx+t^2}
であることが分かります.

つまり, n\geq 3のとき,形式的冪級数 \displaystyle \frac{1-t^2}{1-tx+t^2} t^nの係数は,マッチング多項式
 C_{\gamma_n}(x)に一致します.