こんにちは、ロダンです。今回は、最近注目されている新しい組み合わせ論の道具、「蛇グラフ」について紹介したいと思います。このグラフは正方形を名前の通り蛇のように連ねた図形であり、元々は団代数の団変数を計算するためにProppによってその原型が導入され、Musiker-SchifflerやMusiker-Schiffler-Williams1Musiker-Schiffler-Williams2によってその理論が整備された概念です(Proppの出版は2020年ですが、プレプリントは2005年から存在しています)。近年では団代数の文脈を離れ純粋な組み合わせ論的な対象としても注目されているので、この機会に定義とその性質を簡単に紹介したいと思います。
蛇グラフの定義
さっそく定義をしていきましょう。次の符号付きタイルと呼ばれる2種類のタイルを並べていくことを考えます。
符号付きタイル
以下のルールにしたがってタイルを並べていきます。
- 最初のタイルは図1中の左のタイルを使う。
- 最初に置いたタイルの上か右のどちらかに、1辺を共有するようにして次の符号付きタイルを置く。
- タイル同士の辺を共有している部分の符号は一致しているようにする。
この操作を有限回繰り返してできた図形、あるいはその符号を忘れたグラフのことを蛇グラフと呼びます。例えば図2の左の図はタイルをルールにしたがって並べたものであり、右の図はその符号を取り除いた蛇グラフです。
蛇グラフ
蛇グラフを構成する際、次のタイルを直前のタイルの上か右のどちらかに置く選択をしますが、これは言い換えれば直前のタイルのとのどちらを次のタイルと共有するかを選択しているということです。したがって、蛇グラフの形は内部にある符号を左下から順に列挙した列で制御されているといえます。例えば図2で与えられているタイルたちの内部にある符号を左下から順に列挙するととなっていますが、逆に符号列を指定すると、この列をタイルたちの内部の符号として持つような蛇グラフは図2で与えられているものに一意的に決まります。この「一意的」は回転操作や鏡映操作による差を考慮していませんが、例えば符号列の符号をすべて反転させたから蛇グラフを作ると、これはから作られる蛇グラフと鏡映の関係にあります(図3)。
鏡映の蛇グラフ
したがって、実は蛇グラフの「形」だけを制御するためには、符号列の情報よりももう少し弱く、「符号とが何回連続で続いているか」という情報を与える有限数列だけがあればOKです。この場合だと、数列が蛇グラフの形を制御しているといえます。
ということで、この蛇グラフを数列に付随する蛇グラフとして定義…したいところですが、そうはしません。ここでは、符号列の最初と最後に符号を付け加えた符号列(ただし)から定まる数列で図2の蛇グラフを定めます。すなわち、4つの数列のすべての数列に対して、これに付随する蛇グラフを図2で与えられるグラフとして定義します。数列が先に与えられている形で述べると、次のような定義になります。
有限な数列(ただし)が与えられたとき、
- ならば、が回連続で続いた後が回続き、またが回続き…となるような符号列 (ただしであり、)を考える。内部の符号を左下から順に列挙した符号列がになるような蛇グラフを、数列に付随する蛇グラフとよび、とかく。
- ならば、2つの頂点とその間を結ぶ辺からなるグラフを考え、これを数列に付随する蛇グラフと呼び、とかく。
- ならば、図1の左のタイル1つからなるグラフを考え、これを数列に付随する蛇グラフと呼び、とかく。
(2)と(3)は数列から蛇グラフが作れない場合の例外処理です。この定義によれば、はすべて図2の蛇グラフ(を合同変換したもの)を指します。なぜこのようなまわりくどい定義をするのかについては一旦置いておいて、この蛇グラフを使って何をするのかについて踏み込んでいくことにしましょう。
蛇グラフの完全マッチングの個数
この記事では、与えられたグラフを、その頂点集合と辺集合を使ってのように表すとします。以下、蛇グラフの各タイルの角の全体集合を頂点集合、角を結ぶ辺全体を辺集合とします。組み合わせ論において、グラフが与えられた時にまず考えたいのはその完全マッチングでしょう(私の偏見かもしれませんが)。
グラフが与えられたとき、の部分集合であって次の条件を満たすものをの完全マッチングという:の任意の元に対して、あるの元が一意的に存在して、の端点の1つがとなる。
グラフの形状によってはこの完全マッチングが存在しないようなグラフもあります(例えば頂点が奇数個の連結なグラフ)が、蛇グラフではそのようなことは起こりません。また、完全マッチングは1種類とは限りません。たとえば、には以下の13種類の完全マッチングが存在します(赤で示した辺が完全マッチングに属する辺を指しています)。
完全マッチング一覧
特にこの完全マッチングの個数に注目します。一般にグラフが与えられたとき、その完全マッチングの個数がいくつかを数えるのは難しい問題です。一番安直なのは図4のように重複なくすべて列挙することだと思いますが、手作業でやろうとするとグラフが大きい場合に重複してないかどうかの確認がかなり面倒になると思います。わたしは図4程度の全列挙でももう2度とやりたくありません。
もしこの個数が計算で簡単に求められるのであれば嬉しいわけですが、実はグラフが蛇グラフの場合はそれができるのです。蛇グラフの完全マッチングの個数をで表すことにします。また、で連分数
を表すことにします。このとき、以下の定理が成り立ちます。
[1, Theorem 3.4]
以下の等式が成立する:
なお、右辺は既約分数となる。ただし、と定義する。
定理1によれば、の完全マッチングの個数を知りたければ連分数を計算してその分子を見ればいいようです。実際に計算して見るととなり、その分子は確かに直接完全マッチングを全列挙して確かめたに一致していることがわかります。蛇グラフを定義する時にわざわざ内部の符号ではなくその両端に符号を付け足した数列と対応させた理由の1つはここにあります。
…すごくないですか?僕はこれを知ったときめちゃくちゃ驚きました。完全マッチングの数なんてそう簡単に数え上げられるものじゃないように見えるのですが、連分数を使ってこんなあっさり計算できてしまうんです。ちなみに、この性質から連分数に関して例えば次のようなことがわかります。
定理1
- 連分数とを既約分数表示したときの分子は等しい。
- 連分数とを既約分数表示したときの分子は等しい。
- 連分数とを既約分数表示したときの分子は等しい。
いずれも、前者と後者の数列から同じ形の蛇グラフを与えることと定理1を使って示すことができます(もちろん蛇グラフを使わずに直接的に証明することもできます)。
これらの話だけでもだいぶ面白いと僕は思っていますが、まだ話は続きます。
蛇グラフと平方和
前節の定理により蛇グラフの完全マッチングの数を簡単に計算できるようになったわけですが、まだ「蛇グラフの完全マッチングの数を知ることでなんの役に立つのか」という部分に言及していないので、ここからはその話をしていくことにします。本稿のこれ以降の話についてはCanakci-Schiffler2により詳しいことが書いてあります。
まず、蛇グラフの完全マッチングの数について、次の定理が成り立つことが知られています。
この定理は蛇グラフの完全マッチングの数え方を工夫することで証明することができます。一般の場合で書くと証明が長くなるので、ここでは数列がのときののケースに沿って大体の証明方針を与えることで納得してもらうことにします。
まず、の完全マッチングのうちの左2つのタイルの完全マッチングとと右4つのタイルの完全マッチングに分離できるケースを考えます。例えば、以下の完全マッチングはそのような例です。
分離される例
この完全マッチングに含まれる辺(赤い太線)は、赤い2つのタイルの完全マッチングまたは青い4つのタイルの完全マッチングの辺としてもみれることがわかると思います。このタイプの完全マッチングは、赤いタイルの図形が、青いタイルの図形がとしてみれることから、全部で個あることがわかります。では、これ以外の完全マッチングは全部でいくつあるでしょうか?そのような完全マッチングは、少なくとも図6中の白いタイルの上下の辺の少なくともどちらかを含んでいなければなりません。実は、どちらかの辺を含んでいるときはもう片方も含んでいないと完全マッチングにならないことがわかります(チェックしてみましょう)。加えて、少なくとも図7に赤で示されるような辺は全て含んでいなければなりません。
含まれていなければいけない辺
したがって、図7のケースでは同図中の赤いタイルと青いタイルにおける完全マッチングが決まれば全体の完全マッチングが決定されることになり、その完全マッチングの数はで与えられます。以上で、
が示されました。一般のケースでも、の値との値に応じて図6の白いタイルにあたるタイルを決定し、同様の議論で証明することが可能です。
定理2は、特にかつであるようなが取れるケースが興味深いです。これが成り立つ例としては数列に対してが偶数で、かつが回文的である場合が代表的です。ここで、数列が回文的であるとは、数列が逆から読んでも同じ数列になること、すなわち任意のに対してであることを意味します。この場合、とすることで
かつ
となります。これをまとめると、以下が成り立つことがわかります。
定理2
数列について、が偶数かつが回文的であるとき、
が成立する。
定理1からとが互いに素であることに注意してください。例えば、は次のようなグラフになります。
このとき、なので定理1からですが、この数はであり、定理2の系からと互いに素な2つの数の平方和でかけます。
マルコフ数への応用
マルコフ数は、蛇グラフの完全マッチングに現れる数の典型例です。私の記事をいろいろ読んでくださっている人からするとまたその話かよと思われるかもしれませんが、今一度マルコフ数について復習しておきましょう。マルコフ数とは、マルコフ方程式
の正整数解に現れる正整数のことを指します。例えばはこの方程式の正整数解なので、はマルコフ数です。まず、これらの数たちがある蛇グラフの完全マッチングの数になることを説明します。
この記事
や
この記事
でも実質的に全く同じ話をしていますが、この記事でも改めて紹介します。
正の既約分数をとり、固定します。まず、傾きがの線分を軸と軸を固定した平面上にとります。ここで、この線分の端点はどちらも整数格子点上にあって、はそれ以外の整数格子点を通らないようなものとします。そして、整数格子点を頂点に持つ長さ1の正方形であってが通るものを全て取り出し、その全ての正方形の左上から右下にかけて対角線を引きます。ここまでで、例えばのときは下図のような図形が描けています。
のプレ蛇グラフ
この図形のことを、のプレ蛇グラフといいます。次に、このプレ蛇グラフの各パーツに次のルールで符号を配置します。まず、線分に左下から右上方向への向きを定めておきます。
プレ蛇グラフを分割する各直角三角形に対して、
- 次の条件を満たす直角三角形にを配置する(図10を参照)。
- 線分が左下の端点を共有している直角三角形
- の進行方向の向かって左側が四角形に分割されるような直角三角形
を配置する三角形
- 次の条件を満たす直角三角形にを配置する(図11を参照)。
- 線分が右上の端点を共有している直角三角形
- の進行方向の向かって右側が四角形に分割されるような直角三角形
を配置する三角形
以上のルールに従ってのプレ蛇グラフに符号を配置すると次のような図を得ます。
符号つきプレ蛇グラフ
この符号を、線分が左下から右上に向かって通る順番に並べます。たとえば、の例ではです。この符号列、もしくはここから定まる有限数列から蛇グラフを構成します。この蛇グラフをと書くことにしましょう。の例ではです。ここで、での完全マッチングの数を表すとすると、次の定理が成立します。
[6, Theorem 7.1]
既約分数に対して、はマルコフ数である。また逆に、を除く全てのマルコフ数に対してとなるような既約分数が存在する。
実際、の完全マッチングの個数を計算してみると、なのでですが、一方ではマルコフ方程式の解なのでこれは確かにマルコフ数です。なお、定理3においてとなるような既約分数が一意的かどうかは未解決です(マルコフ予想)。
また、の構成方法から次が成立します。
任意の既約分数に対して、であるとき、は偶数かつは回文的である。
さらに命題4と定理2系から、次が従います。
任意のマルコフ数に対して、互いに素なの組が存在してと表すことができる。
例えばに対応するマルコフ数を考えると、この数を完全マッチングの数として持つ回文的な蛇グラフとしてが取れるので、となって確かに互いに素な2つの数の平方和としてとることができます。これは以前記事を書いた
マルコフ数が互いに素な整数の2乗和でかけることの証明
における定理1の別証明になっています。
あちらの記事の定理1ではがを含むマルコフトリプルの取り方に依存していますが、こちらのは既約分数の取り方に依存しています。を1つ与えると、が分数として大きさが2番目であるようなファレイトリプルがとれ(ファレイトリプルの定義は
この記事
を参照)、さらにそれに対応するマルコフ方程式の解をとることができます。が2番目の大きさであるようなファレイトリプルの取り方はに対して一意的なので、も一意に決まり、さらにが成立するのですが、としたときに、この定理5で与えられると別記事の定理1で与えられるが同じものになるかどうかはわかっていません。最後にこれを問題としてぶん投げて今回の締めとしたいと思います。
こっち
の定理1と今回の定理5で与えられているは同じものであるか?
おわりに
結局最後はいつものようにマルコフ数の話になってしまいましたが、この蛇グラフという概念はまだまだ発展途上の概念であり、いろんな問題が転がっているように思います。これを機にいろんな人にいろんな問題を考えてほしいなと思っています。ここまで読んでいただき、ありがとうございました。
おまけ
参考文献を整理してて思ったけど、蛇グラフの研究におけるPropp以外のどの論文をあたっても絶対に著者欄に名前があるSchiffler先生が化け物すぎる。