
[{"content":"","date":"2026-08-04","externalUrl":null,"permalink":"/authors/","section":"Authors","summary":"","title":"Authors","type":"authors"},{"content":"","date":"2026-08-04","externalUrl":null,"permalink":"/authors/kumia/","section":"Authors","summary":"","title":"Kumia","type":"authors"},{"content":"バーチャル combinatorialist である早稲くみあが書いた、組合せ論に関する記事です。なお早稲くみあは架空の存在であり実在しません。\n(背景画像：arXiv:2211.07140)\n早稲くみあのプロフィールは以下のサイトをご覧ください。\nhttps://hakomonogatari.pages.dev/characters/hs/\n独占インタビュー # 早稲くみあさんに独占インタビューを行いました。早稲くみあさんについて知りたいならまずはこれ！\n早稲くみあ独占インタビュー\n早稲くみあと計算する組合せ論 # SageMath の入門記事となる予定です。準備中です。\n","date":"2026-08-04","externalUrl":null,"permalink":"/kumialab/","section":"くみあラボ","summary":"バーチャル combinatorialist である早稲くみあが書いた、組合せ論に関する記事です。なお早稲くみあは架空の存在であり実在しません。\n","title":"くみあラボ","type":"kumialab"},{"content":" このサイトについて ","date":"2026-08-04","externalUrl":null,"permalink":"/","section":"組合せ論、楽しい！","summary":" このサイトについて ","title":"組合せ論、楽しい！","type":"page"},{"content":"バーチャル combinatorialist として活動する早稲くみあさんに独占インタビューを実施しました。\nなお、早稲くみあさんは架空の存在なので、インタビュー内の情報は実在しない場合があります。\nバーチャル世界から組合せ論を発信 # 箱星：こんにちは。\nくみあ：combanwa～！バーチャル combinatorialist の早稲くみあです。\n箱星：よろしくお願いします。早速ですが、早稲くみあさんはバーチャル combinatorialist として活動されていますが、どのような活動を行っていますか？\nくみあ：組合せ論に関する動画を上げたり、ライブ配信で雑談したりしています。堅苦しくならないように、組合せ論の楽しさが伝わるようにしています。おかげさまで最近は登録者も増えてきています。「くみあさんを見て数学を勉強し始めました！」というコメントもよくいただいてて、この活動をやっていてよかったなと思います。\n早稲くみあさんの動画サムネイル。楽しさが伝わるよう工夫されている。 箱星：中でも人気なのが、ヤング図形を食べる動画ですよね。\nくみあ：数学ってこんなふうに楽しむこともできるんだということを伝えたくて作った動画です。美味しいですよ。（笑）\n箱星：（笑）\nヤング図形には興味がなかった？ # 箱星：ヤング図形に興味を持ったのはいつからでしょうか。\nくみあ：それが、よく覚えてないんです。大学で数学を勉強していろいろな概念を吸収しました。ヤング図形もそのうちの1つだったと思いますが、最初に出会ったときは特に何も思わなかったですね。\n箱星：そうなんですね。\nくみあ：箱を並べただけの図形ですからね。これがすごいものだとは思いませんでした。その後専門的な数学を学ぶにつれてヤング図形って実はすごいやつだってことがわかるようになって、今ではもう完全にとりこです。\n箱星：なぜ大学で数学を学ぼうと思ったのでしょうか。\nくみあ：高校時代の先生の影響ですね。面白くて好きな先生だったので、私もこんな数学の先生になれたらと思い、大学では数学を学ぶことにしました。このときは研究者になるつもりはなかったんですが、今は結構迷っています。\n箱星：研究している内容について教えてもらってもいいですか？\nくみあ：修士課程なのでまだ立派な研究成果はないですが、ヤング図形にまつわる組合せ論を研究しています。ヤング図形は表現論と関係の深いオブジェクトなので、関連する分野もあわせて勉強しています。大変ですけど充実した毎日です。目標は、数学の難しい問題をヤング図形のような見てわかりやすいオブジェクトに翻訳することで、いろいろな人に数学を楽しんでもらうことです。\nドーナツの楽しみ # 箱星：勉強以外で学生生活はどのようなことをやっていましたか？\nくみあ：もちろん息抜きも充実していました。高校時代バスケ部だったので大学でもそういう活動をしてました。学科の友人が「ドーナツ研究会」なるサークルを立ち上げたので、学部生の後半からはそっちの方に行ってました。\n箱星：ドーナツ研究会とは？\nくみあ：ドーナツを食べるサークルです。友人はドーナツのことを何でも知ってて、新しいお店ができたときはすぐに買いに行って私たちに配ってたんです。それで食べながらおしゃべりしたり、同じ学科なので自主ゼミをしたりしていました。\n箱星：早稲くみあさんのプロフィールには好きなものはワッフルと書かれていますね。\nくみあ：ワッフルもドーナツも好きです。でもワッフルってヤング図形っぽいですよね。だから私はワッフルの方が好きです。\n箱星：（笑）\nくみあ：ちなみに友人はドーナツはリーマン面だから数学だと言ってました。\n組合せ論はナノテクノロジー # 箱星：プロフィールの好きな言葉の欄には、Combinatorics is the nanotechnology of mathematics. という言葉がありますね。\nくみあ：これは Sara Billey という数学者が語った言葉です。その真意はまだつかめていませんが、難しい数学の問題を組合せ論の問題に翻訳して解くと、組合せ論の力を実感します。\n箱星：例えば？\nくみあ：ヤング図形との関係でいうと、シューア多項式があります。シューア多項式はグラスマン多様体のコホモロジーとも関係が深いですが、こう聞くと難しく感じますよね。それがヤング図形を使って計算できるというのは嬉しいことなんです。\n箱星：私も以前書いた記事（【月刊組合せ論 Natori】Brouwer の不動点定理と Sperner の補題【2025 年 11 月号】）では、Brouwer の不動点定理の組合せ論版が Sperner の補題という話をしました。難しい定理の骨格・本質を捉えようとする行為はまさにナノテクノロジーといえるのではないかと述べました。\nくみあ：そうですよね。\n箱星：しかし、組合せ論の問題が難しい数学の理論を使って解ける場合もあって、一筋縄ではいかないかもしれません。\nくみあ：そこが数学の難しいところでもあり、面白いところでもありますね。\n箱星：先ほど、数学の難しい問題を組合せ論のオブジェクトに翻訳することでいろいろな人に数学を楽しんでもらうことが目標とおっしゃっていましたが、まさにこのナノテクノロジーの考え方がありそうだと感じました。\nくみあ：はい。どんどん組合せ論に翻訳していきたいです。\n研究室 # 箱星：大学院の研究室はどのような雰囲気ですか？\nくみあ：留学生や社会人博士の方もいて、個性的で賑やかな雰囲気です。ゼミ以外でも数学の話をしたり、雑談で盛り上がることもあります。一緒に食事に行くことも多いです。\n箱星：楽しそうですね。私は学生時代ぼっちでした。\nくみあ：一人の時間も大事ですけど、他の人と数学をするのが大事だと思います。\n箱星：大人になってから大事さに気づきました。\nくみあ：近い分野の人たちだけでなく、離れた分野の人とも数学の話をしてみるといいと思います。異なる分野に橋を架けるのはとても面白いですから。\n箱星：大学院ではゼミ発表がつきものですが、どのように準備していますか？\nくみあ：ゼミ準備のいい方法は私が知りたいです（笑）。数学科のゼミ準備方法で一番有名なのは、河東先生の記事だと思います。私の研究室は時間を守るとかメモを見ないとかにはルーズですが、ちゃんと準備しないといけないことには変わりありません。発表箇所を読み込んで、わからない部分はメモしていっぱい考えます。それから何も見ずにノートに書き出してみると理解が深まります。わかったつもりになることが一番怖いです。最初の頃は全部分かったつもりになって発表に臨んでも、指導教員からの質問で何もわかっていなかったと判明することがよくありました。あれはつらいです。\n箱星：わかります。\nくみあ：落ち込みますけど、後から思うとこういう経験があったおかげで強くなれたと感じます。\n箱星：傷つくことを恐れていては成長できませんからね。勿論心理的安全性は必要ですが。\nくみあ：そうですね。私の研究室はいい環境だと思います。\n未来の combinatorialist へ # 箱星：これから数学、特に組合せ論を本格的に学びたい人に向けてアドバイスをお願いします。\nくみあ：まず、組合せ論は楽しいです。そこを忘れないでほしいなと思います。そして、数学の勉強は大変です。理解できないと焦ったり落ち込んだりすると思いますが、その必要はありません。むしろじっくりと数学に取り組んだ経験というのは大事になってくると思います。それから、手を動かしましょう。論より証拠というとちょっと違うかもしれませんが、抽象的な理論を支えるのは具体例です。嬉しいことに、組合せ論は手を動かせる具体例の宝庫です。\n箱星：私も、組合せ論を学ぶ人が増えることを願っています。\nくみあ：みなさんと共同研究がしたいです！\n箱星：本日はお忙しい中ありがとうございました。\nくみあ：ありがとうございました！bye-jection！\n","date":"2026-08-04","externalUrl":null,"permalink":"/kumialab/interview/","section":"くみあラボ","summary":"バーチャル combinatorialist として活動する早稲くみあさんに独占インタビューを実施しました。\n","title":"早稲くみあ独占インタビュー","type":"kumialab"},{"content":"まずは数え上げの基礎を扱います。\n次の 2 つの公式が基本となります。\n命題（和の公式） A,BA, BA,B を共通部分が空集合であるような有限集合とする。このとき ∣A∪B∣=∣A∣+∣B∣|A \\cup B|=|A|+|B|∣A∪B∣=∣A∣+∣B∣ が成り立つ。 命題（積の公式） 有限集合 A,BA,BA,B に対して、A×B={(a,b)∣a∈A,b∈B}A\\times B=\\{(a,b)\\mid a\\in A, b\\in B\\}A×B={(a,b)∣a∈A,b∈B} とおく。このとき、∣A×B∣=∣A∣×∣B∣|A\\times B|=|A|\\times |B|∣A×B∣=∣A∣×∣B∣ が成り立つ。 ほぼ自明なので証明は見なくてもよいですが、「しっかり学ぶ組合せ論のエッセンス」ということで証明を載せます。\nまず集合 AAA の要素数が nnn ということは、AAA と集合 {1,2,…,n}\\{1,2,\\ldots,n\\}{1,2,…,n} の間に全単射が存在するということです。ここで写像 f ⁣:X→Yf\\colon X \\to Yf:X→Y が全単射であるとは、ある写像 g ⁣:Y→Xg\\colon Y\\to Xg:Y→X が存在して\ng(f(x))=xg(f(x))=xg(f(x))=x がすべての x∈Xx \\in Xx∈X について成り立つ。 f(g(y))=yf(g(y))=yf(g(y))=y がすべての y∈Yy \\in Yy∈Y について成り立つ。 をみたすことです。この写像 ggg を fff の逆写像といいます。\n和の公式の証明 ∣A∣=m,∣B∣=n|A|=m, |B|=n∣A∣=m,∣B∣=n とする。AAA と {1,2,…,m}\\{1,2,\\ldots,m\\}{1,2,…,m} の間に全単射が存在するので、これにより i (1≤i≤m)i \\ (1\\le i\\le m)i (1≤i≤m) と対応する AAA の元を aia_iai​ と書く。同様に BBB の元 bi (1≤i≤n)b_i \\ (1\\le i\\le n)bi​ (1≤i≤n) を定める。A∪BA\\cup BA∪B と {1,2,…,m+n}\\{1,2,\\ldots,m+n\\}{1,2,…,m+n} の間に全単射を構成する。x∈A∪Bx \\in A\\cup Bx∈A∪B に対して、x=aix=a_ix=ai​ のとき iii を対応させ、x=bix=b_ix=bi​ のとき i+mi+mi+m を対応させる。逆に、整数 i (1≤i≤m+n)i \\ (1\\le i\\le m+n)i (1≤i≤m+n) に対して、1≤i≤m1\\le i\\le m1≤i≤m ならば aia_iai​ を対応させ、m+1≤i≤m+nm+1\\le i\\le m+nm+1≤i≤m+n ならば bi−mb_{i-m}bi−m​ を対応させる。これらは互いに逆写像の関係なので全単射である。よって ∣A∪B∣=m+n|A\\cup B|=m+n∣A∪B∣=m+n である。 積の公式の証明 ∣A∣=m,∣B∣=n|A|=m,|B|=n∣A∣=m,∣B∣=n とし、上と同様に A={a1,…,am},B={b1,…,bn}A=\\{a_1,\\ldots,a_m\\}, B=\\{b_1,\\ldots,b_n\\}A={a1​,…,am​},B={b1​,…,bn​} とする。A×BA\\times BA×B と {1,2,…,mn}\\{1,2,\\ldots,mn\\}{1,2,…,mn} の間に全単射を構成する。(ai,bj)(a_i,b_j)(ai​,bj​) に対し、(i−1)n+j(i-1)n+j(i−1)n+j を対応させる。整数 k (1≤k≤mn)k \\ (1\\le k \\le mn)k (1≤k≤mn) に対して k=(i−1)n+jk=(i-1)n+jk=(i−1)n+j をみたす整数 i,j (1≤i≤m,1≤j≤n)i,j \\ (1\\le i\\le m, 1\\le j\\le n)i,j (1≤i≤m,1≤j≤n) がただ 1 組存在するので、逆写像も構成できる。よって 2 つの集合の間に全単射が存在するので、∣A×B∣=mn|A\\times B|=mn∣A×B∣=mn である。 ","date":"2026-07-22","externalUrl":null,"permalink":"/textbook/basic-counting/","section":"しっかり学ぶ組合せ論のエッセンス","summary":"まずは数え上げの基礎を扱います。\n","title":"【しっかり学ぶ組合せ論のエッセンス】数え上げの基礎","type":"textbook"},{"content":"組合せ論の基礎を Web 上で学べる教科書です。\nまえがき # まえがき 数え上げ # 数え上げの基礎 ","date":"2026-07-22","externalUrl":null,"permalink":"/textbook/","section":"しっかり学ぶ組合せ論のエッセンス","summary":"組合せ論の基礎を Web 上で学べる教科書です。\n","title":"しっかり学ぶ組合せ論のエッセンス","type":"textbook"},{"content":"このサイト「組合せ論、楽しい！」では、数々の組合せ論に関するコンテンツを公開してきました。その中でも月刊組合せ論 Natori は 2022 年から連載しています。\n公開した記事の中にはありがたいことに好評を博したものもありますが、課題もあると感じていました。それは、基礎となる部分が欠けていることです。\n月刊組合せ論 Natori の連載当初は競技プログラミングにある程度慣れ親しんだ人を対象読者としていました。そのため、グラフ理論や線形代数などは前提知識としていました。\n組合せ論をもっと広めるためには、こういった前提知識をしっかり解説したコンテンツが必要であると感じました。そこでこの教科書「しっかり学ぶ組合せ論のエッセンス」を執筆することにしました。\nしかし、組合せ論の教科書を執筆することは難しいということを知っています。なぜなら、組合せ論というのは非常に広い分野だからです。\nどのような方針で執筆するかは悩みましたが、次のようにすることを決めました。\n広く浅く：あえて内容を絞らず、幅広く扱います。深掘りする部分は月刊組合せ論 Natori 等に任せ、この教科書は基礎に特化します。 しっかり学ぶ：論証をごまかさず、丁寧に書こうと思います。 それでは、組合せ論のエッセンスを学んでいきましょう！\n次におすすめ：数え上げの基礎\n","date":"2026-07-04","externalUrl":null,"permalink":"/textbook/preface/","section":"しっかり学ぶ組合せ論のエッセンス","summary":"このサイト「組合せ論、楽しい！」では、数々の組合せ論に関するコンテンツを公開してきました。その中でも月刊組合せ論 Natori は 2022 年から連載しています。\n","title":"【しっかり学ぶ組合せ論のエッセンス】まえがき","type":"textbook"},{"content":" 標準ヤング盤 # ヤング図形の各マスに 1,2,…,n1,2,\\ldots,n1,2,…,n を書き込み、各行・各列について単調増加となるようにしたものです。\n半標準ヤング盤 # ヤング図形の各マスに正の整数を書き込み、各行について広義単調増加、各列について狭義単調増加となるようにしたものです。\n","date":"2026-07-04","externalUrl":null,"permalink":"/gallery/1/","section":"組合せ論美術館","summary":"標準ヤング盤 # ","title":"【組合せ論美術館】第 1 展示室","type":"gallery"},{"content":"組合せ論に登場する様々な図形を展示するコーナーです。\n準備中です。\n第 1 展示室 : ヤング図形 ","date":"2026-07-04","externalUrl":null,"permalink":"/gallery/","section":"組合せ論美術館","summary":"組合せ論に登場する様々な図形を展示するコーナーです。\n","title":"組合せ論美術館","type":"gallery"},{"content":"平面上に nnn 個の点を配置します。距離が 1 になる 2 点の組を最大でいくつにできるかという問題を考えます。\nこの問題を単位距離問題 (unit distance problem) といいます。エルデシュの問題の 90 番です。\nこの問題の答えを u(n)u(n)u(n) とします。例えば点を (1,0),(2,0),…,(n,0)(1,0),(2,0),\\ldots,(n,0)(1,0),(2,0),…,(n,0) に配置すれば隣り合う 2 点の距離が 1 なので、u(n)≥n−1u(n)\\ge n-1u(n)≥n−1 となります。少なくとも線形のオーダーであることがわかりました。\nでは、より精密に u(n)u(n)u(n) を評価していきましょう。\n下界 # まずはエルデシュ自身の結果を紹介します。\n座標が 0 以上 ⌊n⌋−1\\lfloor \\sqrt{n}\\rfloor-1⌊n​⌋−1 以下の正方形を考え、格子点に点を配置します。ある m\u0026lt;nm\u0026lt;nm\u0026lt;n を選んで、距離が m\\sqrt{m}m​ であるような 2 点がたくさん存在するようにしたいです。このとき適当に縮小することで距離が 1 であるような 2 点がたくさん存在することになります。\nおおむね次のような流れになります。\nnnn 以下の正の整数で、素因数がすべて 4k+14k+14k+1 型であるものを考える。 nnn 以下の 4k+14k+14k+1 型の素数の個数を評価する。（素数定理の一般化） m=a2+b2m=a^2+b^2m=a2+b2 をみたす (a,b)(a,b)(a,b) の個数がおよそ nc/log⁡log⁡nn^{c/\\log\\log n}nc/loglogn である。 すなわち原点から距離 m\\sqrt{m}m​ の点の個数が nc/log⁡log⁡nn^{c/\\log\\log n}nc/loglogn である。 平行移動がおよそ nnn 通り。 以上より、距離が m\\sqrt{m}m​ である 2 点が n1+c/log⁡log⁡nn^{1+c/\\log\\log n}n1+c/loglogn 通り以上存在する。 すなわち\nu(n)≥n1+c/log⁡log⁡n u(n)\\ge n^{1+c/\\log\\log n} u(n)≥n1+c/loglognが得られました。\n線形よりも多いですが、1/log⁡log⁡n1/\\log\\log n1/loglogn の部分は小さくなります。\nエルデシュは次のように予想しました。\nu(n)≤n1+o(1) u(n)\\le n^{1+o(1)} u(n)≤n1+o(1)n1.01n^{1.01}n1.01 のような指数関数的オーダーではないという予想です。\n反証 # 2026 年 5 月 20 日、OpenAI より論文が発表されました。\nAn OpenAI model has disproved a central conjecture in discrete geometry\nこれは上述の予想の反例を与えるものです。すなわち、ある δ\u0026gt;0\\delta\u0026gt;0δ\u0026gt;0 が存在して u(n)u(n)u(n) が少なくとも n1+δn^{1+\\delta}n1+δ のオーダーとなることを証明しました。\nAI が生成した元々の証明では δ\\deltaδ の具体的な値については触れられていませんでしたが、数学者の検証によって δ=0.014114\\delta=0.014114δ=0.014114 ととれることがわかりました。\nエルデシュの構成では素数定理といった解析的整数論の手法が使われていますが、この反例では代数的整数論の道具が使われています。\n証明の詳細は読んでいません。証明を理解できたとき、加筆または新規記事を執筆するかもしれません。\n上界 # 下からの評価について書きましたが、上からの評価についてはどうでしょうか。\n平面上の nnn 個の点を頂点とし、距離が 1 である 2 点の間に辺を張ってグラフを作ります。\nこのグラフにはどのような特徴があるでしょうか。\n2 頂点 v,wv,wv,w を選びます。このとき、v,wv,wv,w の両方と辺で結ばれている頂点は 2 個以下です。なぜなら、そのような点は v,wv,wv,w を中心とした半径 1 の円周の交点だからです。\n別の言い方をすると、このグラフは完全二部グラフ K2,3K_{2,3}K2,3​ を部分グラフとして含みません。\nこのように、あるグラフを含まないグラフについて考える問題があります。完全グラフの場合はトゥランの定理が知られています。完全二部グラフの場合、Kővári–Sós–Turán の定理が知られています。\n定理: nnn 頂点グラフであって、完全二部グラフ Ks,t (s≤t)K_{s,t} \\ (s\\le t)Ks,t​ (s≤t) を含まないようなグラフの辺の最大値を ex(n,Ks,t)\\mathrm{ex}(n,K_{s,t})ex(n,Ks,t​) とすると\nex(n,Ks,t)=O(n2−1/s) \\mathrm{ex}(n,K_{s,t})=O(n^{2-1/s}) ex(n,Ks,t​)=O(n2−1/s)をみたす。\nこれを unit distance problem に用いると、K2,3K_{2,3}K2,3​ が現れないということだったので、辺の個数は O(n1.5)O(n^{1.5})O(n1.5) です。辺は距離 1 の 2 点に対応していたので、u(n)=O(n1.5)u(n)=O(n^{1.5})u(n)=O(n1.5) が得られました。\n現在知られている最良の上界は Spencer, Szemerédi, Trotter による u(n)=O(n4/3)u(n)=O(n^{4/3})u(n)=O(n4/3) です。こちらの証明も理解したいです。\nu(n)u(n)u(n) のオーダーは n1.014114n^{1.014114}n1.014114 と n4/3n^{4/3}n4/3 の間であることが現在の最先端です。正確なオーダーがわかる日を心待ちにしています。\ndistinct distance problem との関係 # エルデシュの unit distance problem と、同じくエルデシュの distinct distance problem の関係を見ます。\n平面上 nnn 個の点を配置したとき、距離の種類数の最小値 d(n)d(n)d(n) はいくつかという問題を distinct distance problem といいます。\nu(n)d(n)≥(n2)u(n)d(n)\\ge \\binom{n}{2}u(n)d(n)≥(2n​) です。これは距離の種類数が d(n)d(n)d(n) となる配置において、各距離を実現する 2 点の組の個数が u(n)u(n)u(n) 以下であることから従います。\nu(n)=O(n4/3)u(n)=O(n^{4/3})u(n)=O(n4/3) と合わせると、d(n)=Ω(n2/3)d(n)=\\Omega(n^{2/3})d(n)=Ω(n2/3) がわかります。\nd(n)d(n)d(n) について知られている最良の評価は Guth-Katz によるもので、Ω(n/log⁡n)\\Omega(n/\\log n)Ω(n/logn) です。証明には多項式ハムサンドイッチの定理を用いるようで、これも気になります。\nおわりに # 最近あまりアウトプットをできていませんでしたが、数学の魅力的な話題をお届けしていきたいです。\n取り上げられなかった話題も多くあるので、いずれ加筆するかもしれません。\n参考文献 # Szemerédi, Endre. Erdős’s unit distance problem. Nash, John Forbes jun. (ed.) et al., Open problems in mathematics. Cham: Springer. 459-477 (2016). Zhao, Yufei. Graph theory and additive combinatorics. Exploring structure and randomness. Cambridge University Press (2023). ","date":"2026-05-22","externalUrl":null,"permalink":"/posts/unit-distance-problem/","section":"数学記事・PDF","summary":"平面上に nnn 個の点を配置します。距離が 1 になる 2 点の組を最大でいくつにできるかという問題を考えます。\n","title":"エルデシュの単位距離問題","type":"posts"},{"content":"その他の数学記事の一覧です。\n2021 年 # バーンサイドの補題の表現論を用いた証明 : 競技プログラミングにおいてバーンサイドの補題が話題になったときに書きました。 フーリエ変換と表現論 : 高速フーリエ変換を表現論の観点から説明します。 2023 年 # 表現論に入門したい人向けの記事 : 表現論 Advent Calendar 2023 の 1 日目の記事です。 線形代数の知識だけでわかる！対称多項式入門（前編） : Math Advent Calendar 2023 の 19 日目の記事です。 奇数次元のシンプレクティック群とは何か : 表現論 Advent Calendar 2023 の 25 日目の記事です。 2024 年 # 二項係数を含む等式で大活躍！？Snake Oil method : 日曜数学 Advent Calendar 2024 の 2 日目の記事です。 ランダム順列における固定点の個数の期待値 : Math Advent Calendar 2024 の 4 日目の記事です。 組合せ論的な証明ってなんだろう : 組合せ論 Advent Calendar 2024 の 5 日目の記事です。 折り紙と amplituhedron : 物理学アドベントカレンダー2024 の 12 日目の記事です。 de Bruijn-Erdős の定理（グラフ理論） : Mathematical Logic Advent Calendar 2024 の 19 日目の記事です。 圏における和と積 : 圏論 Advent Calendar 2024 の 24 日目の記事です。 クリス Math なのでプレゼントボックスを用意しました！(Keller の予想) : 組合せ論 Advent Calendar 2024 の 25 日目の記事です。 2025 年 # ゴールデンウィークなので黄金比とグラフ理論の話をします : グラフの固有値と黄金比の関係について書きました。 伝説の入試問題と現代数学周遊 : 1998 年東大後期数学第 3 問の解説です。 夏休みの自由研究：inversions tableaux について : inversions tableaux に関する自由研究です。 行列木定理で道路を調べる！ : 木 Advent Calendar 2025 の 2 日目の記事です。 キューティーなカタラン数 : 日曜数学 Advent Calendar 2025 の 7 日目の記事です。 外積代数と行列木定理 : 木 Advent Calendar 2025 の 13 日目の記事です。 2026 年 # すべての定理は組合せ論的に証明すべきである : さまざまな定理の組合せ論的証明を扱います。 エルデシュの単位距離問題 : 大きな進展のあったエルデシュの unit distance problem の紹介です。 PDF # PDF の仮の置き場です。将来的に別のサイトに移る可能性があります。\n頂点代数 : 頂点代数について勉強したことをまとめたノートです。 ","date":"2026-05-22","externalUrl":null,"permalink":"/posts/","section":"数学記事・PDF","summary":"その他の数学記事の一覧です。\n","title":"数学記事・PDF","type":"posts"},{"content":" 数え上げの基本問題 # くみあ では早速、数え上げの問題を解いてみましょう。\n早稲くみあは 2 つの問題を書いた。\nnnn 人の中から kkk 人を選ぶ方法は何通り？（ただし選ぶ順番を区別する） nnn 人の中から kkk 人を選ぶ方法は何通り？（ただし選ぶ順番を区別しない） しいな 2 つの問題はどう違うんだろう。\nくみあ 具体例で考えてみましょう。10 人の中から 3 人を選ぶ方法を考えます。1 人目に金メダル、2 人目に銀メダル、3 人目に銅メダルをあげるとき、選ぶ順番が大事ですね。\nいおり いおりは金メダルがほしいの！\nくみあ 選ぶ順番が大事なのが 1 つ目の問題です。2 つ目の問題は、3 人に同じメダルをあげるという状況を考えればいいですね。選ぶ順番は関係ありません。\nしいな なるほど。\nいおり いおりわかったの！金メダルは 10 人の中のだれか、銀メダルは残りの 9 人の中のだれか、銅メダルは残りの 8 人の中のだれかだから、10×9×810 \\times 9 \\times 810×9×8 通りなの！\nくみあ 正解です。720 通りですね。\n正解してうれしそうないおり。この調子で 2 つ目の問題に挑むが、苦戦しているようだ。\nしいな 難しそうだね。\nくみあ じゃあヒントです。さっきの 720 通りの別の方法で数えてみましょう。さっきの方法と新しい方法を並べるとこうなります。\n10 人の中から順番を区別して 3 人を選ぶ。 10 人の中から順番を区別せずに 3 人を選び、そのあと 3 人の順番を考える。 いおり 区別せずに選ぶ方法の数がわからないの……。\nくみあ わからないので、それを xxx とおいてみましょう。3 人の順番の数はわかりますか？\nいおり それはわかるの！3×2×1=63\\times 2\\times 1=63×2×1=6 なの！\nくみあ そうです。すると、新しい方法で求めると 6x6x6x 通りになりますね。\nしいな これがさっきの 720 に等しいってことは、6x=7206x=7206x=720 なんじゃない？\nいおり わかったの！x=120x=120x=120 なの！\nくみあ 正解です！\n直接答えを求めるのではなく、2 種類の方法を比較して答えを求めることに 2 人は面白さを感じている。このように、2 種類の方法で数えるというのは組合せ論では大事である。\nくみあ 今は具体例で計算しましたけど、まったく同じ考え方で n,kn,kn,k という文字を含んだ答えもわかります。1 つ目の答えが n(n−1)(n−2)⋯(n−k+1)n(n-1)(n-2)\\cdots (n-k+1)n(n−1)(n−2)⋯(n−k+1) で、2 つ目の答えがこうなります。\n(nk)=n(n−1)(n−2)⋯(n−k+1)k(k−1)(k−2)⋯2⋅1 \\binom{n}{k}=\\frac{n(n-1)(n-2)\\cdots (n-k+1)}{k(k-1)(k-2)\\cdots 2\\cdot 1} (kn​)=k(k−1)(k−2)⋯2⋅1n(n−1)(n−2)⋯(n−k+1)​数式を見ると怖がってしまういおりとしいなの 2 人。そこでくみあがアドバイスをする。\nくみあ 数式がわからなくなったら具体例を試してみてください。n=10,k=3n=10, k=3n=10,k=3 にするとさっきの答えになりますよ。この (nk)\\binom{n}{k}(kn​) は二項係数といいます。これからいっぱい出てきますから、ぜひ覚えてください。\n","date":"2026-03-31","externalUrl":null,"permalink":"/ec/season1-2/","section":"いーしー部！","summary":"数え上げの基本問題 # くみあ では早速、数え上げの問題を解いてみましょう。\n","title":"【いーしー部！】二項係数はすごい！【しーずん１！その２】","type":"ec"},{"content":"数え上げを探究するいおり・しいなによる活動記録です。\n（文字：どん様）\nいおり・しいなの設定については以下のサイトをご覧ください。\nhttps://hakomonogatari.pages.dev/characters/ec/\nぷろろーぐ！ # はじまり くみあせんせー しーずん１！ # Enumerative Combinatorics、通称 EC の第一章を読みます。\n数え上げってなんだろう？ 二項係数はすごい！ ","date":"2026-03-31","externalUrl":null,"permalink":"/ec/","section":"いーしー部！","summary":"数え上げを探究するいおり・しいなによる活動記録です。\n","title":"いーしー部！","type":"ec"},{"content":"そうとは限らないだろ。\nこの記事では様々な定理の組合せ論的証明について扱っていきます。内容は随時アップデートしていく予定です。\nBrouwer の不動点定理 # Brouwer の不動点定理は位相幾何学の定理です。この定理を組合せ論の Sperner の補題を用いて証明することができます。以下の記事をご覧ください。\n【月刊組合せ論 Natori】Brouwer の不動点定理と Sperner の補題【2025 年 11 月号】\nこの記事では触れていませんが、HEX の定理からも Brouwer の不動点定理を証明することができます。以下の記事が面白いのでご覧ください。\nHEXの定理(1) - フィボナッチ・フリーク\nBorsuk-Ulam の定理 # Borsuk-Ulam の定理も位相幾何学の定理であり、組合せ論の Tucker の補題から証明できます。いつか記事にしたいです。以下の文献を読むとよいです。\nMatoušek, Jiří. Using the Borsuk-Ulam theorem. Universitext. Berlin: Springer. xii, 214 p. (2008). ハムサンドイッチの定理 # ハムサンドイッチの定理とは、nnn 次元空間にある nnn 個の立体はある超平面で同時に二等分できるといった定理です。\n通常、二等分という概念はルベーグ測度などを用いて定式化されるので、あまり組合せ論とのつながりはありません。しかし、次のような有限集合バージョンがあります。\n定理: Rn\\mathbb{R}^nRn の nnn 個の有限部分集合は、ある超平面によって同時に二等分される。ただし超平面上にある点はどちらの領域の点として数えてもよいし、どちらの領域の点でもないとしてもよい。 ハムサンドイッチの定理およびこの有限集合版はともに Borsuk-Ulam の定理から証明できます。\n有限集合版は Tucker の補題から直接証明できるかもしれません。\nネックレス分割問題 # ネックレス分割問題には\n離散版 連続版 があり、離散版の証明は連続版を経由するものしか見つかっていないそうです。\n「すべての定理は組合せ論的に証明すべきである」という考えのもとでは離散版を直接証明したくなりますが、そう甘くはないのでしょう。\nいずれ記事にする予定です。\nKostka-Foulkes 多項式 # 対称多項式である Hall-Littlewood 多項式と Schur 多項式の関係を表しているのが Kostka-Foulkes 多項式です。以下の記事をご覧ください。\n【月刊組合せ論 Natori】Hall-Littlewood 多項式と Kostka-Foulkes 多項式【2023 年 6 月号】\nKostka-Foulkes 多項式の係数は非負整数です。組合せ論的な証明としては charge を用いるものが知られています。\nKostka-Foulkes 多項式は A 型以外のルート系でも定義でき、この場合にも係数が非負整数であることが知られていますが、組合せ論的な証明は特殊な場合にしか知られていません。\nRiemann の写像定理 # Riemann の写像定理は複素解析における定理です。組合せ論とは無縁な雰囲気がありますが、実はサークルパッキングを用いた証明が知られているそうです。\nいつか勉強して記事を書こうと思います。\nその他 # ちょっと聞いたことがある程度のものを並べておきます。\nHowe 双対性：RSK 対応で説明できるそうです。 Riemann-Roch の定理：グラフ理論版が知られているそうです。 Milnor 予想：Rasmussen の不変量を用いた組合せ論的証明が知られているそうです。 グリッドダイアグラム：結び目理論をグリッドダイアグラムを用いて調べる研究があるそうです。 他にもこの定理が組合せ論的に証明できるといったことをご存じであれば、ぜひご連絡ください。\n","date":"2026-01-01","externalUrl":null,"permalink":"/posts/all-theorems-combinatorially/","section":"数学記事・PDF","summary":"そうとは限らないだろ。\n","title":"すべての定理は組合せ論的に証明すべきである","type":"posts"},{"content":"数学のおはなしが読めます。\n","date":"2025-12-31","externalUrl":null,"permalink":"/novels/","section":"おはなし一覧","summary":"数学のおはなしが読めます。\n","title":"おはなし一覧","type":"novels"},{"content":" ｽﾋﾟｷ ﾁｮﾜﾖｰﾁｮﾜﾖｰ\nあ、ｽﾋﾟｷだ。\nｽﾋﾟｷ ｽﾋﾟｷ!\nこの本に興味があるの？\ne(X,Y)=p∣X∣∣Y∣+o(n2)e(X,Y)=p|X||Y|+o(n^2)e(X,Y)=p∣X∣∣Y∣+o(n2) for all X,Y⊆V(G)X,Y\\subseteq V(G)X,Y⊆V(G)\nｽﾋﾟｷ ｱｰｳ!\nｽﾋﾟｷには難しい本かもね。\n気になる？\nこの本はスペクトルグラフ理論の本だよ。グラフの性質を行列の固有値を使って調べる分野なんだ。\n今読んでいる部分はグラフのランダム性についてだよ。この条件はグラフがランダムっぽいことを定義してる。\nランダムグラフというのは、頂点と頂点の間に確率 ppp で辺を張ることでできるグラフ。\n試しに、このグラフにランダムに辺を描いてみて。\nｽﾋﾟｷ ｽﾋﾟｷ!\nできたね。こういうのがランダムグラフ。\nじゃあ、グラフがランダムっぽいことを確かめるにはどうしたらいいかな。\nさっきの定義\ne(X,Y)=p∣X∣∣Y∣+o(n2)e(X,Y)=p|X||Y|+o(n^2)e(X,Y)=p∣X∣∣Y∣+o(n2) for all X,Y⊆V(G)X,Y\\subseteq V(G)X,Y⊆V(G)\nを使ってもいいけど、すべての X,YX,YX,Y について確かめないといけないからこれは大変。\nでも、固有値を使うとすごいことが起きる。実は次の条件と同値になるんだよ。\nλ1≥λ2≥⋯≥λn\\lambda_1\\ge\\lambda_2\\ge\\cdots\\ge\\lambda_nλ1​≥λ2​≥⋯≥λn​ をグラフの隣接行列の固有値とするとき、λ1=pn+o(n)\\lambda_1=pn+o(n)λ1​=pn+o(n) かつ max⁡i≠1∣λi∣=o(n)\\max_{i\\ne 1}|\\lambda_i|=o(n)maxi=1​∣λi​∣=o(n)\n固有値を使ってグラフの性質を調べられるなんてすごいよね。\nｽﾋﾟｷ ｳｱｰ!\n聞いてくれてありがとう。お礼にこれをあげるね。\nｽﾋﾟｷ ﾁｮﾜﾖ!\n参考文献\nZhao, Yufei. Graph theory and additive combinatorics. Cambridge University Press. (2023).\nこのおはなしはトリッカルの二次創作です。今すぐプレイ！\n📢伝説ペット「ｽﾋﾟｷ」がまもなく登場❣️\n目に涙を浮かべたスピッキーを模して作ったぬいぐるみ。なでると、おもちゃの笛みたいな音が鳴る。その音色は、スピッキーの泣き声にそっくりだという。\n💝開催予定のイベントに参加すると、無料でゲットできるチャンスが🆓‼️\n教主様、どうぞお楽しみに！… pic.twitter.com/v1zSLE3OED\n\u0026mdash; トリッカル・もちもちほっペ大作戦 (@trickcal_jp) December 28, 2025 ","date":"2025-12-31","externalUrl":null,"permalink":"/novels/mochimochi/","section":"おはなし一覧","summary":" ｽﾋﾟｷ ﾁｮﾜﾖｰﾁｮﾜﾖｰ\n","title":"ｽﾋﾟｷトルグラフ理論","type":"novels"},{"content":"この記事は木 Advent Calendar 2025 の 13 日目の記事です。\n「木材と人材」というタイトルで何か書く予定でしたが、急遽予定を変更してお届けします。\n外積代数 # 今月 10 日、外積代数 in 競プロという記事が公開されました。見たことがないテクニックで興味深い記事でした。\nこれを見て、そういえば外積代数を使う組合せ論の論文があったなあ、ということを思い出したのでその論文を読みました。その内容を軽く紹介していきます。\nまずは外積代数を復習します。ベクトル空間 VVV の基底 {e1,…,en}\\{e_1,\\ldots,e_n\\}{e1​,…,en​} を考えます。外積代数 ⋀(V)\\bigwedge(V)⋀(V) は ei1∧ei2∧⋯∧eike_{i_1}\\wedge e_{i_2}\\wedge\\cdots \\wedge e_{i_k}ei1​​∧ei2​​∧⋯∧eik​​ (1≤i1\u0026lt;⋯\u0026lt;ik≤n1\\le i_1\u0026lt;\\cdots\u0026lt;i_k\\le n1≤i1​\u0026lt;⋯\u0026lt;ik​≤n) を基底とするベクトル空間です。このウェッジ ∧\\wedge∧ は\nv∧v=0v\\wedge v=0v∧v=0 v∧w=−w∧vv\\wedge w=-w\\wedge vv∧w=−w∧v などの性質をみたします。外積代数はグラスマン代数とも呼ばれるようです。\n以下、ウェッジを省略して v∧w=vwv\\wedge w=vwv∧w=vw のように書きます。総積も ∏\\prod∏ を用います。さらに eie_iei​ の代わりに ψ1,…,ψn\\psi_1,\\ldots,\\psi_nψ1​,…,ψn​ および ψˉ1,…,ψˉn\\bar{\\psi}_1,\\ldots,\\bar{\\psi}_nψˉ​1​,…,ψˉ​n​ を用います。これらは関係式\nψiψj=−ψjψi\\psi_i\\psi_j=-\\psi_j\\psi_iψi​ψj​=−ψj​ψi​ ψˉiψjˉ=−ψˉjψˉi\\bar{\\psi}_i\\bar{\\psi_j}=-\\bar{\\psi}_j\\bar{\\psi}_iψˉ​i​ψj​ˉ​=−ψˉ​j​ψˉ​i​ ψiψˉj=ψˉjψi\\psi_i\\bar{\\psi}_j=\\bar{\\psi}_j\\psi_iψi​ψˉ​j​=ψˉ​j​ψi​ をみたすとします。特に ψi2=ψˉi2=0\\psi_i^2=\\bar{\\psi}_i^2=0ψi2​=ψˉ​i2​=0 です。物理学のフェルミオンと関係するそうですが、物理学はわかりません。\n外積代数と行列式 # nnn 次正方行列 A=(Aij)A=(A_{ij})A=(Aij​) に対して\n∏i,j=1n(1+ψˉiψjAij)=∑I,J⊂[n]ψˉIψJdet⁡(AI,J) \\prod_{i,j=1}^n(1+\\bar{\\psi}_i\\psi_jA_{ij})=\\sum_{I,J\\subset [n]}\\bar{\\psi}_I\\psi_J\\det(A_{I,J}) i,j=1∏n​(1+ψˉ​i​ψj​Aij​)=I,J⊂[n]∑​ψˉ​I​ψJ​det(AI,J​)が成り立ちます。ここで ψˉI\\bar{\\psi}_Iψˉ​I​ は i∈Ii\\in Ii∈I に関する ψˉi\\bar{\\psi}_iψˉ​i​ の積（昇順）、ψJ\\psi_JψJ​ は j∈Jj\\in Jj∈J に関する ψj\\psi_jψj​ の積（昇順）で、AI,JA_{I,J}AI,J​ は行を III、列を JJJ とした小行列です。\nAAA の行列式だけでなく、小行列式も一挙に現れるところがポイントです。\n外積代数と行列木定理 # グラフ GGG のラプラシアン L=D−AL=D-AL=D−A は 2 日目の記事でも解説したのでここでは解説しません。\n定理 (行列木定理)\nグラフ GGG の全域木の個数は、ラプラシアン LLL の任意の余因子と等しい。 det⁡(tIn+L)\\det(tI_n+L)det(tIn​+L) は ttt の多項式であり、一次の係数を c1c_1c1​ とおく。このとき、全域木の個数は 1nc1\\frac{1}{n}c_1n1​c1​ に等しい。 LLL の固有値を λ1,…,λn\\lambda_1,\\ldots,\\lambda_nλ1​,…,λn​ とする。ただし λ1=0\\lambda_1=0λ1​=0 とする。このとき、全域木の個数は 1nλ2λ3⋯λn\\frac{1}{n}\\lambda_2\\lambda_3\\cdots \\lambda_nn1​λ2​λ3​⋯λn​ に等しい。 jjj を固定したとき\n∏i=1n(1+ψˉiψjAij)=∏i=1n(1+(ψˉi−ψˉj)ψjAij+ψˉjψjAij)=∏i=1n(1+(ψˉi−ψˉj)ψjAij)∏i=1n(1+ψˉjψjAij)=∏i∈[n]∖{j}(1−(ψˉj−ψˉi)ψjAij)⋅(1+ψˉjψj∑i=1nAij) \\begin{align*} \\prod_{i=1}^n(1+\\bar{\\psi}_i\\psi_jA_{ij}) \u0026amp;= \\prod_{i=1}^n(1+(\\bar{\\psi}_i-\\bar{\\psi}_j)\\psi_jA_{ij}+\\bar{\\psi}_j\\psi_jA_{ij}) \\\\ \u0026amp;= \\prod_{i=1}^n(1+(\\bar{\\psi}_i-\\bar{\\psi}_j)\\psi_jA_{ij})\\prod_{i=1}^n(1+\\bar{\\psi}_j\\psi_jA_{ij}) \\\\ \u0026amp;= \\prod_{i\\in [n]\\setminus\\{j\\}}(1-(\\bar{\\psi}_j-\\bar{\\psi}_i)\\psi_jA_{ij})\\cdot \\left(1+\\bar{\\psi}_j\\psi_j\\sum_{i=1}^n A_{ij}\\right) \\end{align*} i=1∏n​(1+ψˉ​i​ψj​Aij​)​=i=1∏n​(1+(ψˉ​i​−ψˉ​j​)ψj​Aij​+ψˉ​j​ψj​Aij​)=i=1∏n​(1+(ψˉ​i​−ψˉ​j​)ψj​Aij​)i=1∏n​(1+ψˉ​j​ψj​Aij​)=i∈[n]∖{j}∏​(1−(ψˉ​j​−ψˉ​i​)ψj​Aij​)⋅(1+ψˉ​j​ψj​i=1∑n​Aij​)​となります。ここで ψj2=0\\psi_j^2=0ψj2​=0 を使いました。\nBj=∑iAijB_j=\\sum_i A_{ij}Bj​=∑i​Aij​ とおき\nw(i,j)={−Aiji≠jBji=j w(i,j)=\\begin{cases} -A_{ij} \u0026amp; i\\ne j \\\\ B_j \u0026amp; i=j \\end{cases} w(i,j)={−Aij​Bj​​i=ji=j​Ψ(i,j)={(ψˉj−ψˉi)ψji≠jψˉjψji=j \\Psi(i,j)=\\begin{cases} (\\bar{\\psi}_j-\\bar{\\psi}_i)\\psi_j \u0026amp; i\\ne j \\\\ \\bar{\\psi}_j\\psi_j \u0026amp; i=j \\end{cases} Ψ(i,j)={(ψˉ​j​−ψˉ​i​)ψj​ψˉ​j​ψj​​i=ji=j​とおきます。すると\n∏i,j=1n(1+ψˉiψjAij)=∏i,j=1n(1+Ψ(i,j)w(i,j)) \\prod_{i,j=1}^n(1+\\bar{\\psi}_i\\psi_jA_{ij})=\\prod_{i,j=1}^n(1+\\Psi(i,j)w(i,j)) i,j=1∏n​(1+ψˉ​i​ψj​Aij​)=i,j=1∏n​(1+Ψ(i,j)w(i,j))が得られます。\n辺 (i,j)(i,j)(i,j) の重みを w(i,j)w(i,j)w(i,j) とした有向グラフ GGG を考えます。GGG にはループもあります。\n辺集合 HHH に対して、w(H),Ψ(H)w(H), \\Psi(H)w(H),Ψ(H) を HHH に含まれる辺 (i,j)(i,j)(i,j) について w(i,j),Ψ(i,j)w(i,j), \\Psi(i,j)w(i,j),Ψ(i,j) の積をとったものとします。なお Ψ(i,j)Ψ(i′,j′)=Ψ(i′,j′)Ψ(i,j)\\Psi(i,j)\\Psi(i\u0026#x27;,j\u0026#x27;)=\\Psi(i\u0026#x27;,j\u0026#x27;)\\Psi(i,j)Ψ(i,j)Ψ(i′,j′)=Ψ(i′,j′)Ψ(i,j) なので積の順番は考えなくてよいです。（ψ\\psiψ と ψˉ\\bar{\\psi}ψˉ​ で符号が打ち消しあう）\nこのとき、右辺を展開することで\n∏i,j=1n(1+ψˉiψjAij)=∑H⊂E(G)Ψ(H)w(H) \\prod_{i,j=1}^n(1+\\bar{\\psi}_i\\psi_jA_{ij})=\\sum_{H\\subset E(G)}\\Psi(H)w(H) i,j=1∏n​(1+ψˉ​i​ψj​Aij​)=H⊂E(G)∑​Ψ(H)w(H)となるので\n∑I,J⊂[n]ψˉIψJdet⁡(AI,J)=∑H⊂E(G)Ψ(H)w(H) \\sum_{I,J\\subset [n]}\\bar{\\psi}_I\\psi_J\\det(A_{I,J})=\\sum_{H\\subset E(G)}\\Psi(H)w(H) I,J⊂[n]∑​ψˉ​I​ψJ​det(AI,J​)=H⊂E(G)∑​Ψ(H)w(H)が成り立ちます。\n終点が等しい 2 辺 (i1,j),(i2,j)(i_1,j),(i_2,j)(i1​,j),(i2​,j) について、Ψ(i1,j)Ψ(i2,j)\\Psi(i_1,j)\\Psi(i_2,j)Ψ(i1​,j)Ψ(i2​,j) は ψj2=0\\psi_j^2=0ψj2​=0 を含むので 0 です。よって HHH として入次数が 1 以下のもののみを考えればよいです。\n入次数が 1 以下のグラフの連結成分は、次の 3 種類です。\n木型：根付き木であって辺が根から遠ざかる向きなもの。2 頂点以上。 ループ型：木タイプのグラフの根にループを加えたもの。1 頂点でもよい。 サイクル型：サイクルを含むもの。 まずサイクル型を考えましょう。1→2→⋯→k→11\\to 2\\to\\cdots\\to k\\to 11→2→⋯→k→1 (k≥2k\\ge 2k≥2) というサイクルがあるとします。このとき\nΨ(1,2)Ψ(2,3)⋯Ψ(k−1,k)Ψ(k,1)=(ψˉ2−ψˉ1)ψ2(ψˉ3−ψˉ2)ψ3⋯(ψˉk−ψˉk−1)ψk(ψˉ1−ψˉk)ψ1=(ψˉ2ψˉ3⋯ψˉkψˉ1+(−1)kψˉ1ψˉ2⋯ψˉk)ψ2ψ3⋯ψkψ1=((−1)k−1+(−1)k)ψˉ1ψˉ2⋯ψˉkψ2ψ3⋯ψkψ1=0 \\begin{align*} \u0026amp; \\Psi(1,2)\\Psi(2,3)\\cdots\\Psi(k-1,k)\\Psi(k,1) \\\\ \u0026amp;= (\\bar{\\psi}_2-\\bar{\\psi}_1)\\psi_2(\\bar{\\psi}_3-\\bar{\\psi}_2)\\psi_3\\cdots(\\bar{\\psi}_k-\\bar{\\psi}_{k-1})\\psi_k(\\bar{\\psi}_1-\\bar{\\psi}_k)\\psi_1 \\\\ \u0026amp;= (\\bar{\\psi}_2\\bar{\\psi}_3\\cdots \\bar{\\psi}_k\\bar{\\psi}_1+(-1)^k\\bar{\\psi}_1\\bar{\\psi}_2\\cdots \\bar{\\psi}_k)\\psi_2\\psi_3\\cdots \\psi_k\\psi_1 \\\\ \u0026amp;= ((-1)^{k-1}+(-1)^k)\\bar{\\psi}_1\\bar{\\psi}_2\\cdots \\bar{\\psi}_k\\psi_2\\psi_3\\cdots \\psi_k\\psi_1 \\\\ \u0026amp;= 0 \\end{align*} ​Ψ(1,2)Ψ(2,3)⋯Ψ(k−1,k)Ψ(k,1)=(ψˉ​2​−ψˉ​1​)ψ2​(ψˉ​3​−ψˉ​2​)ψ3​⋯(ψˉ​k​−ψˉ​k−1​)ψk​(ψˉ​1​−ψˉ​k​)ψ1​=(ψˉ​2​ψˉ​3​⋯ψˉ​k​ψˉ​1​+(−1)kψˉ​1​ψˉ​2​⋯ψˉ​k​)ψ2​ψ3​⋯ψk​ψ1​=((−1)k−1+(−1)k)ψˉ​1​ψˉ​2​⋯ψˉ​k​ψ2​ψ3​⋯ψk​ψ1​=0​となるので、サイクル型は考えなくてよいことになります。\n木型は、根を rrr とするとき ψr\\psi_rψr​ が現れないので、det⁡(A)\\det(A)det(A) のみを考える場合は無視してよいです。\n最後にループ型ですが、Ψ(H)=ψˉV(H)ψV(H)\\Psi(H)=\\bar{\\psi}_{V(H)}\\psi_{V(H)}Ψ(H)=ψˉ​V(H)​ψV(H)​ となることがわかります。\nさて、行列木定理に戻ります。A=LA=LA=L とし、(n,n)(n,n)(n,n) 余因子 det⁡(A[n−1],[n−1])\\det(A_{[n-1],[n-1]})det(A[n−1],[n−1]​) を考えます。\n∑H⊂EΨ(H)w(H) \\sum_{H\\subset E}\\Psi(H)w(H) H⊂E∑​Ψ(H)w(H)における ψˉ1⋯ψˉn−1ψ1⋯ψn−1\\bar{\\psi}_1\\cdots \\bar{\\psi}_{n-1}\\psi_1\\cdots \\psi_{n-1}ψˉ​1​⋯ψˉ​n−1​ψ1​⋯ψn−1​ の係数を求めることになります。Bj=0B_j=0Bj​=0 よりループのないグラフを考えることになるので、HHH は木型のみを考えればよいです。ψn\\psi_nψn​ がないので HHH は頂点 nnn が根であり辺の向きは根から遠ざかる向きです。全域木 1 つごとに係数が 1 増えることがわかります。よって行列木定理の 1 が証明できました。\n2 も証明しましょう。A=tIn+LA=tI_n+LA=tIn​+L とおくと、元のグラフの各頂点に重み ttt のループを加えたものを考えることになります。ψˉ1⋯ψˉnψ1⋯ψn\\bar{\\psi}_1\\cdots \\bar{\\psi}_n\\psi_1\\cdots \\psi_nψˉ​1​⋯ψˉ​n​ψ1​⋯ψn​ の係数が det⁡(A)\\det(A)det(A) なので、今回はループ型のグラフのみを考えればよいです。det⁡(A)\\det(A)det(A) の一次の係数は連結成分がループ型の部分グラフであって連結成分が 1 つのもの、すなわち根を指定した全域木の個数となります。根の選び方が nnn 通りなので、全域木の個数は nnn で割った値となります。これで行列木定理の 2 が証明できました。\nより一般に tkt^ktk の係数は連結成分が kkk 個の森と対応することがわかります。\nおまけ # 数え上げと行列式といえば、行列木定理の他に LGV 公式を思い浮かべる人も多いでしょう。なんと LGV 公式も外積代数から導出できるようです。\n外積代数、奥が深そうですね。競技プログラミングの世界に新たな知見をもたらして、いずれは典型になるかもしれません。\n参考文献 # Curtin, Eugene; Lee, Junu; Lu, Andrew; Sun, Sophia. A modified Grassmann algebra approach to theorems on permanents and determinants. Linear Algebra Appl. 581, 20-35 (2019). Abdesselam, Abdelmalek. The Grassmann-Berezin calculus and theorems of the matrix-tree type. Adv. Appl. Math. 33, No. 1, 51-70 (2004). Carrozza, S.; Tanasa, A. Pfaffians and nonintersecting paths in graphs with cycles: Grassmann algebra methods. Adv. Appl. Math. 93, 108-120 (2018). ","date":"2025-12-13","externalUrl":null,"permalink":"/posts/exterior-algebra/","section":"数学記事・PDF","summary":"この記事は木 Advent Calendar 2025 の 13 日目の記事です。\n","title":"外積代数と行列木定理","type":"posts"},{"content":"この記事は日曜数学 Advent Calendar 2025 の 7 日目の記事です。\n日曜数学について、まずは個人的なことを中心に話そうと思います。私は今年の 6 月から働き始めました。その前は数学の修士課程に通っており、数学が本業でした。博士課程に進むかはかなり悩みましたが、結局行かないことにしました。今は働きながら数学の勉強をしたり記事を書いたりと、趣味の数学活動を続けています。今の私がやっていることは日曜数学と呼ぶにふさわしいのではないかと思いました。\nこれからも楽しく数学を続けていきたいと思います。できれば数学の世界で業績を残せたらいいなとも思います。\n自分語りが長くなってしまいましたが、本題に移っていきます。私が魅力的に感じている数学のトピックを紹介します。\nカタラン数 # 次のような数え上げ問題を考えてみましょう。\nnnn 個の ( と nnn 個の ) を使って、括弧の対応がとれている文字列を作る方法は何通りありますか？\n例えば (())() は OK ですが ())( はダメです。\nこの問題は次のようにして経路の問題に言い換えることができます。原点 (0,0)(0,0)(0,0) から出発します。( があったら上に 1 つ進み、) があったら右に 1 つ進みます。(())() の場合次のような経路になります。\nゴールは (n,n)(n,n)(n,n) になります。括弧の対応がとれているという条件は、経路が常に y≥xy\\ge xy≥x の領域にあるという条件に言い換えられます。\n経路の問題に言い換えられましたが、この問題は「鏡像法」というテクニックで解くことができます。簡単にいうと (0,0)(0,0)(0,0) から (n,n)(n,n)(n,n) へのすべての経路から y≥xy\\ge xy≥x という条件をみたさない経路を除きますが、条件をみたさない経路が別の経路と一対一対応することを使います。これについて解説している記事はたくさんあるのでここでは省略しますが、答えは\nCn=(2nn)−(2nn−1)=1n+1(2nn) C_n=\\binom{2n}{n}-\\binom{2n}{n-1}=\\frac{1}{n+1}\\binom{2n}{n} Cn​=(n2n​)−(n−12n​)=n+11​(n2n​)となります。この数はカタラン数と呼ばれており、組合せ論では中心的な数です。ここでは括弧列の個数や y≥xy\\ge xy≥x の領域上にある経路の個数に等しいことを見ましたが、実は\n二分木の個数 正多角形の三角形分割の個数 最長増加部分列の長さが 2 以下の順列の個数 など、様々なオブジェクトの個数に等しいことが知られており、そのようなオブジェクトは 100 種類を超えます。まさに「カタラン数は至る所にある！」ですね。\nq 類似 # qqq 類似は、大雑把にいうと q→1q\\to 1q→1 の極限で元に戻るようなものです。\n例えば非負整数 nnn の qqq 類似は [n]q=1+q+⋯+qn−1[n]_q=1+q+\\cdots+q^{n-1}[n]q​=1+q+⋯+qn−1 です。q→1q\\to 1q→1 のとき [n]q→n[n]_q\\to n[n]q​→n になります。こんなものはいくらでもあるじゃん、と思いますが、基本的にはこの [n]q[n]_q[n]q​ が非負整数 nnn の唯一の qqq 類似として扱われます。\n階乗 n!n!n! の qqq 類似は [n]q!=[1]q[2]q⋯[n]q[n]_q!=[1]_q[2]_q\\cdots [n]_q[n]q​!=[1]q​[2]q​⋯[n]q​ として定義されます。さらに二項係数の qqq 類似が\n[nk]q=[n]q![k]q![n−k]q! \\genfrac[]{0pt}0nk_q=\\frac{[n]_q!}{[k]_q![n-k]_q!} [kn​]q​=[k]q​![n−k]q​![n]q​!​により定義されます。\nカタラン数の q 類似 # カタラン数の qqq 類似を考えましょう。非負整数と二項係数の qqq 類似を定義したので、それを用いて\n1[n+1]q[2nn]q \\frac{1}{[n+1]_q}\\genfrac[]{0pt}0{2n}{n}_q [n+1]q​1​[n2n​]q​と定義するのが自然に見えます。\nしかし、カタラン数には別の qqq 類似も知られています。それは\n∑πqarea(π) \\sum_{\\pi}q^{\\mathrm{area}(\\pi)} π∑​qarea(π)です。ここで π\\piπ は (0,0)(0,0)(0,0) から (n,n)(n,n)(n,n) への経路であって領域 y≥xy\\ge xy≥x 上にあるもの全体を動くとし、area(π)\\mathrm{area}(\\pi)area(π) は経路 π\\piπ と直線 y=xy=xy=x で挟まれた領域内にあるマスの個数とします。（ただし、直線 y=xy=xy=x により二等分されるマスは数えないものとします。）\nさきほどの図の場合 area(π)=1\\mathrm{area}(\\pi)=1area(π)=1 です。\n例を挙げましょう。便宜上、前者を Cnbinom(q)C_n^{\\mathrm{binom}}(q)Cnbinom​(q)、後者を Cnarea(q)C_n^{\\mathrm{area}}(q)Cnarea​(q) と書きます。\nC1binom(q)=1C_1^{\\mathrm{binom}}(q)=1C1binom​(q)=1 C2binom(q)=q2+1C_2^{\\mathrm{binom}}(q)=q^2+1C2binom​(q)=q2+1 C3binom(q)=q6+q4+q3+q2+1C_3^{\\mathrm{binom}}(q)=q^6 + q^4 + q^3 + q^2 + 1C3binom​(q)=q6+q4+q3+q2+1 C4binom(q)=q12+q10+q9+2q8+q7+2q6+q5+2q4+q3+q2+1C_4^{\\mathrm{binom}}(q)=q^{12} + q^{10} + q^9 + 2q^8 + q^7 + 2q^6 + q^5 + 2q^4 + q^3 + q^2 + 1C4binom​(q)=q12+q10+q9+2q8+q7+2q6+q5+2q4+q3+q2+1 C1area(q)=1C_1^{\\mathrm{area}}(q)=1C1area​(q)=1 C2area(q)=q+1C_2^{\\mathrm{area}}(q)=q+1C2area​(q)=q+1 C3area(q)=q3+q2+2q+1C_3^{\\mathrm{area}}(q)=q^3 + q^2 + 2q + 1C3area​(q)=q3+q2+2q+1 C4area(q)=q6+q5+2q4+3q3+3q2+3q+1C_4^{\\mathrm{area}}(q)=q^6 + q^5 + 2q^4 + 3q^3 + 3q^2 + 3q + 1C4area​(q)=q6+q5+2q4+3q3+3q2+3q+1 両者は異なっていますが、どちらもカタラン数の qqq 類似です。\nマクドナルド多項式 # 話は変わりますが、マクドナルド多項式も組合せ論では非常に重要です。\n対称多項式は基本対称多項式を使って表せるという事実を聞いたことがある人も多いと思います。他にも重要な対称多項式があります。代表的なものは 5 つあり\nモノミアル対称多項式 基本対称多項式 完全対称多項式 冪和対称多項式 シューア多項式 です。この中でもシューア多項式は特に重要で、組合せ論の他にも\n表現論 幾何学 数理物理 など、様々な分野に現れます。\nシューア多項式を一般化したものとして、ホール・リトルウッド多項式があります。これは ttt というパラメータをもつ多項式で、t=0t=0t=0 のときシューア多項式になります。他にもジャック多項式など、様々なシューア多項式の一般化が誕生しました。\nそのような流れの中で、マクドナルドはホール・リトルウッド多項式やジャック多項式の共通の一般化である多項式を発見します。現在マクドナルド多項式と呼ばれているこの多項式は q,tq,tq,t という 2 つのパラメータをもつ多項式で、q=0q=0q=0 のときホール・リトルウッド多項式、q=tq=tq=t のときシューア多項式になります。q,tq,tq,t をうまく選ぶことでジャック多項式も得ることができます。\nそんなマクドナルド多項式を定義するには、内積と直交性を用いるものや、固有関数を用いるものなどがあります。少し難しいのと、私があまり勉強できてない部分なので解説を割愛します。すみません。\nこのマクドナルド多項式はよく PλP_{\\lambda}Pλ​ と書かれます。λ\\lambdaλ は λ1≥λ2≥⋯≥λl≥0\\lambda_1\\ge\\lambda_2\\ge\\cdots\\ge\\lambda_l\\ge 0λ1​≥λ2​≥⋯≥λl​≥0 をみたす整数列で、しばしばヤング図形と同一視されます。この PλP_{\\lambda}Pλ​ を変形したものとして H~λ\\tilde{H}_{\\lambda}H~λ​ があり、これもマクドナルド多項式と呼ばれることがあります。\n抽象的な話が多くなってしまったので、具体的に計算をします。SageMath という数式処理システムを用いてマクドナルド多項式を計算します。\nsage: Sym = SymmetricFunctions(FractionField(QQ[\u0026#39;q\u0026#39;,\u0026#39;t\u0026#39;])) sage: Ht = Sym.macdonald().Ht() sage: Ht[3,1].expand(2) x0^4 + (q^2 + q + t + 1)*x0^3*x1 + (2*q^2 + q*t + q + t + 1)*x0^2*x1^2 + (q^2 + q + t + 1)*x0*x1^3 + x1^4 これは\nH~(3,1)(x0,x1)=x04+(q2+q+t+1)x03x1+(2q2+qt+q+t+1)x02x12+(q2+q+t+1)x0x13+x14 \\begin{align*} \\tilde{H}_{(3,1)}(x_0,x_1) \u0026amp;= x_0^4 + (q^2 + q + t + 1)x_0^3x_1 \\\\ \u0026amp;+ (2q^2 + qt + q + t + 1)x_0^2x_1^2 \\\\ \u0026amp;+ (q^2 + q + t + 1)x_0x_1^3 + x_1^4 \\end{align*} H~(3,1)​(x0​,x1​)​=x04​+(q2+q+t+1)x03​x1​+(2q2+qt+q+t+1)x02​x12​+(q2+q+t+1)x0​x13​+x14​​を計算しています。確かに対称多項式ですね。\n組合せ論のナブラ # ヤング図形 λ\\lambdaλ の転置、すなわち行と列の入れ替えを λ′\\lambda\u0026#x27;λ′ とします。さらに n(λ)=∑i(i−1)λin(\\lambda)=\\sum_i(i-1)\\lambda_in(λ)=∑i​(i−1)λi​ とします。\n∇H~λ=qn(λ′)tn(λ)H~λ\\nabla\\tilde{H}_{\\lambda}=q^{n(\\lambda\u0026#x27;)}t^{n(\\lambda)}\\tilde{H}_{\\lambda}∇H~λ​=qn(λ′)tn(λ)H~λ​ をみたす作用素 ∇\\nabla∇ があります。ナブラ演算子ゲームでお馴染みのナブラとはおそらく別物です。\nこれも SageMath で計算してみましょう。\nsage: Ht[3,2].nabla() q^4*t^2*McdHt[3, 2] (3,2)(3,2)(3,2) の転置は (2,2,1)(2,2,1)(2,2,1) であり、n((3,2))=2,n((2,2,1))=4n((3,2))=2, n((2,2,1))=4n((3,2))=2,n((2,2,1))=4 なので確かに合っています。\nこのナブラを他の対称多項式に適用するということが興味深いです。ここでは基本対称多項式 ene_nen​ にナブラを施してみましょう。\nsage: for i in range(1,5): ....: print(e[i].nabla()) ....: e[1] e[1, 1] + (q+t-1)*e[2] e[1, 1, 1] + (q^2+q*t+t^2+q+t-2)*e[2, 1] + (q^3+q^2*t+q*t^2+t^3-q^2-t^2-q-t+1)*e[3] e[1, 1, 1, 1] + (q^3+q^2*t+q*t^2+t^3+q^2+q*t+t^2+q+t-3)*e[2, 1, 1] + (q^4+q^3*t+q^2*t^2+q*t^3+t^4-q^3-t^3-q-t+1)*e[2, 2] + (q^5+q^4*t+q^3*t^2+q^2*t^3+q*t^4+t^5+q^3*t+q^2*t^2+q*t^3-2*q^2-q*t-2*t^2-q-t+2)*e[3, 1] + (q^6+q^5*t+q^4*t^2+q^3*t^3+q^2*t^4+q*t^5+t^6-q^5-t^5-q^4-q^3*t-q^2*t^2-q*t^3-t^4-q^2*t-q*t^2+q^2+t^2+q+t-1)*e[4] ここで係数の和をとってみましょう。\nS1=1S2=q+tS3=q3+q2t+qt2+t3+qtS4=q6+q5t+q4t2+q3t3+q2t4+qt5+t6+q4t+q3t2+q2t3+qt4+q3t+q2t2+qt3 \\begin{align*} S_1 \u0026amp;= 1 \\\\ S_2 \u0026amp;= q+t \\\\ S_3 \u0026amp;= q^3 + q^2t + qt^2 + t^3 + qt \\\\ S_4 \u0026amp;= q^6 + q^5t + q^4t^2 + q^3t^3 + q^2t^4 + qt^5 + t^6 \\\\ \u0026amp;+ q^4t + q^3t^2 + q^2t^3 + qt^4 + q^3t + q^2t^2 + qt^3 \\end{align*} S1​S2​S3​S4​​=1=q+t=q3+q2t+qt2+t3+qt=q6+q5t+q4t2+q3t3+q2t4+qt5+t6+q4t+q3t2+q2t3+qt4+q3t+q2t2+qt3​勘のいい読者は、お気づきでしょうか。\nなぜ、前半でカタラン数の話をしたあと、突然マクドナルド多項式の話を始めたのか。その答えが明らかになります！\n実は、この係数の和 SnS_nSn​ に q=t=1q=t=1q=t=1 を代入すると、カタラン数になります！\n一見無関係な 2 つの話題がつながるのは面白いですね！\nさらにそれだけではありません！t=1t=1t=1 を代入すると\nS1∣t=1=1S_1|_{t=1}=1S1​∣t=1​=1 S2∣t=1=q+1S_2|_{t=1}=q+1S2​∣t=1​=q+1 S3∣t=1=q3+q2+2q+1S_3|_{t=1}=q^3+q^2+2q+1S3​∣t=1​=q3+q2+2q+1 S4∣t=1=q6+q5+2q4+3q3+3q2+3q+1S_4|_{t=1}=q^6+q^5+2q^4+3q^3+3q^2+3q+1S4​∣t=1​=q6+q5+2q4+3q3+3q2+3q+1 となります。これはカタラン数の qqq 類似 Cnarea(q)C_n^{\\mathrm{area}}(q)Cnarea​(q) に等しいです！\nカタラン数にはもう 1 つの qqq 類似がありましたが\nCnbinom(q)=q(n2)Sn∣t=q−1 C_n^{\\mathrm{binom}}(q)=q^{\\binom{n}{2}}S_n|_{t=q^{-1}} Cnbinom​(q)=q(2n​)Sn​∣t=q−1​が成り立っています。2 つの qqq 類似には共通の親玉がいたのですね！\nこの SnS_nSn​ は q,tq,tq,t カタラン数と呼ばれており、Cn(q,t)C_n(q,t)Cn​(q,t) と表します。\nq,t カタラン数を深掘り # Cnarea(q)C_n^{\\mathrm{area}}(q)Cnarea​(q) は area という関数を用いて定義されました。q,tq,tq,t カタラン数は新たな関数 fff を用いて\nCn(q,t)=∑πqarea(π)tf(π) C_n(q,t)=\\sum_{\\pi}q^{\\mathrm{area}(\\pi)}t^{f(\\pi)} Cn​(q,t)=π∑​qarea(π)tf(π)と定義できないでしょうか？\nできます。dinv と呼ばれる関数と bounce と呼ばれる関数が上の式をみたすことが知られています。q,tq,tq,t カタラン数を組合せ論的に記述できました。\nところで、上記の q,tq,tq,t カタラン数の例を見て、他にも気づいたことはないでしょうか？\n実は q,tq,tq,t を入れ替えても等しくなります。つまり Cn(q,t)=Cn(t,q)C_n(q,t)=C_n(t,q)Cn​(q,t)=Cn​(t,q) です。\nこれを組合せ論的な記述に代入すると、例えば\n∑πqarea(π)tdinv(π)=∑πqdinv(π)tarea(π) \\sum_{\\pi}q^{\\mathrm{area}(\\pi)}t^{\\mathrm{dinv}(\\pi)}=\\sum_{\\pi}q^{\\mathrm{dinv}(\\pi)}t^{\\mathrm{area}(\\pi)} π∑​qarea(π)tdinv(π)=π∑​qdinv(π)tarea(π)となります。これを組合せ論的に証明するには、経路 π\\piπ を別の経路にうつす全単射 φ\\varphiφ であって\narea(φ(π))=dinv(π)\\mathrm{area}(\\varphi(\\pi))=\\mathrm{dinv}(\\pi)area(φ(π))=dinv(π) dinv(φ(π))=area(π)\\mathrm{dinv}(\\varphi(\\pi))=\\mathrm{area}(\\pi)dinv(φ(π))=area(π) をみたすものを構成すればよいことになります。\nしかし、私の知る限りではこの問題は未解決のようです。なお、q,tq,tq,t カタラン数は同値な定義方法がいくつか知られていますが、定義によっては q,tq,tq,t 対称性は自明です。組合せ論だからといって簡単になるとは限りません。そこが組合せ論の奥深いところですね。\n上は (area, dinv) と (dinv, area) の間の対応と見ることができますが、他にも (area, bounce), (bounce, area) との間の対応という問題も考えられます。\nその他の話題 # q,tq,tq,t カタラン数やマクドナルド多項式は他にも魅力的な話題がたくさんあります。現在でも様々な研究が行われています。いくつかキーワードを挙げると\nn!n!n! 予想 シャッフル予想 マクドナルド多項式の組合せ論的公式 結び目理論との関係 他にもいろいろあります。2026 年はこういった話題を勉強していきたいです。\nおわりに # カタラン数は歴史があり有名ですが、その qqq 類似、さらにはその ttt 類似が発見され、魅力は計り知れません。そんな q,tq,tq,t カタラン数、とってもキューティーですね！\n参考文献 # Haglund, James. The q,tq,tq,t-Catalan numbers and the space of diagonal harmonics. With an appendix on the combinatorics of Macdonald polynomials. University Lecture Series 41. Providence, RI: American Mathematical Society (AMS) (ISBN 978-0-8218-4411-3/pbk). viii, 167 p. (2008). ","date":"2025-12-07","externalUrl":null,"permalink":"/posts/qt-catalan/","section":"数学記事・PDF","summary":"この記事は日曜数学 Advent Calendar 2025 の 7 日目の記事です。\n","title":"キューティーなカタラン数","type":"posts"},{"content":" このサイトについて # 組合せ論の魅力を発信するサイトです。\n📗組合せ論の基礎的な教科書しっかり学ぶ組合せ論のエッセンス ⭐組合せ論の魅力的な話題を紹介する月刊組合せ論 Natori 🔢バーチャル combinatorialist 早稲くみあがお届けするくみあラボ 💕好奇心旺盛ないおりとしいなが数え上げを学ぶ部活いーしー部！ 🖼️組合せ論に現れる美しい図形を鑑賞できる組合せ論美術館 など、様々なコンテンツがあります。\n管理人について # 箱星（はこぼし）です。組合せ論が大好きです。\n石川県金沢市で暮らしています。\n修士課程を修了しており、現在は社会人です。\n各種リンクは lit.link にまとめています。記事に間違い等があった場合の連絡はこちらからお願いします。\n学歴 # 東京大学理学部数学科 学士（理学） 東京大学理学部数学科を卒業しました。当時の専門は有限群でした。 東京大学大学院数理科学研究科 修士（数理科学） 東京大学大学院数理科学研究科の修士課程を修了しました。無限群、リー代数、頂点代数などいろいろなものを勉強しました。最終的に代数的組合せ論で修士論文を書きました。 To be continued? 博士を目指すかもしれませんし、目指さないかもしれません。 職歴 # 学校事務 学校で事務系の仕事をしています。主な職務内容は Word, Excel, PowerPoint を用いた資料作りです。 To be continued? 転職するかもしれませんし、しないかもしれません。 資格・受賞歴 # 日本数学オリンピック　本選出場 基本情報技術者試験　合格 JDLA Deep Learning for GENERAL 2022#3 漢字検定準 1 級 ","date":"2025-12-04","externalUrl":null,"permalink":"/about/","section":"組合せ論、楽しい！","summary":"このサイトについて # 組合せ論の魅力を発信するサイトです。\n","title":"About","type":"page"},{"content":"みなさん、道路は使っていますか？使っていますよね。\n普段使っている道路ですが、災害時には使えなくなることもあります。道路が使えなくなると、物流に影響が出るなど大きな問題につながります。\n一本の道路が使えなくなっても別の道路を迂回すれば大丈夫な場合もありますが、寸断されてしまう場合もあります。そのため、なるべく寸断されないような道路ネットワークを設計し、既存の道路ネットワークが堅牢かを評価する必要があります。\nそういったことに行列木定理が役立つ！という話をします。\nこの記事は木 Advent Calendar 2025 の 2 日目の記事です。参加者を募集中です。\nグラフ理論 # グラフとは頂点と辺からなるものです。ここでは頂点も辺も有限個であるグラフを考えます。\n木とは連結グラフであってサイクルを含まないものです。\n与えられたグラフの全域木とは、部分グラフであってすべての頂点を通り、木であるものをいいます。\n行列木定理 # 全域木の個数が行列式から計算できるという行列木定理を紹介します。\nグラフ GGG の頂点に 1,2,…,n1,2,\\ldots,n1,2,…,n と番号がついているとします。\n次数行列 DDD は、(i,i)(i,i)(i,i) 成分が頂点 iii から出る辺の本数（次数）で、対角線上にない成分がすべて 0 である行列です。\n隣接行列 AAA は、頂点 iii と頂点 jjj の間に辺があるとき (i,j)(i,j)(i,j) 成分が 1、辺がないとき (i,j)(i,j)(i,j) 成分が 0 となるような行列です。\nグラフ GGG のラプラシアンを L=D−AL=D-AL=D−A とします。これらはすべて n×nn\\times nn×n 行列です。\nラプラシアン LLL は可逆でないので、固有値 0 をもつことに注意します。\n定理 (行列木定理)\nグラフ GGG の全域木の個数は、ラプラシアン LLL の任意の余因子と等しい。 det⁡(tIn+L)\\det(tI_n+L)det(tIn​+L) は ttt の多項式であり、一次の係数を c1c_1c1​ とおく。このとき、全域木の個数は 1nc1\\frac{1}{n}c_1n1​c1​ に等しい。 LLL の固有値を λ1,…,λn\\lambda_1,\\ldots,\\lambda_nλ1​,…,λn​ とする。ただし λ1=0\\lambda_1=0λ1​=0 とする。このとき、全域木の個数は 1nλ2λ3⋯λn\\frac{1}{n}\\lambda_2\\lambda_3\\cdots \\lambda_nn1​λ2​λ3​⋯λn​ に等しい。 道路ネットワークの評価 # ここまで数学的な話でしたが、道路ネットワークに応用していきます。\n道路ネットワークをグラフとして捉えます。どの道路が使用不可能となったときに影響が大きいでしょうか。例えば以下のグラフでは、中央の辺をなくすと連結でなくなってしまうため、非常に脆いです。\n一つの解答として、辺を削除したときに全域木の個数がたくさん減る場合、その辺の重要度が高いと考えられます。\nあるグラフの全域木の個数を MMM、辺 eee を除いたときの全域木の個数を MeM_eMe​ としたとき、(M−Me)/M(M-M_e)/M(M−Me​)/M を辺 eee の重要度の評価とします。\n実際にこの手法で石川県の道路ネットワークが評価されています。（参考文献を参照）\n全域木中心性 (spanning tree centrality) という概念とも関連します。\n他の手法 # 全域木の減少率を評価指標としましたが、ある辺の重要性を測る指標は他にもあります。\nラプラシアンの固有値は非負実数で、0 を固有値に持ちます。2 番目に小さい固有値 λ2\\lambda_2λ2​ について、λ2=0\\lambda_2=0λ2​=0 であることとグラフが非連結であることが同値であることが知られています。λ2\\lambda_2λ2​ の値が連結性の指標であると見ることができます。このことから、辺を削除することで λ2\\lambda_2λ2​ がどのように変化することを見ることで辺の重要性が評価できると考えられます。\n様々な手法がありますが、辺の数が多いときに効率よく計算できるかという問題や、更新をうまく処理できるかという問題があります。\nおわりに # この記事ではラプラシアンと固有値を扱いました。このように固有値などを用いてグラフの性質を探る分野をスペクトルグラフ理論といいます。とてもホットな分野なので、私ももっと勉強したいです。\nグラフ理論は様々な分野に応用されていることは知っていましたが、数学的な部分しか勉強したことがありませんでした。これからは応用にも目を向けていきたいです。\n参考文献 # 光澤 駿治, 中山 晶一朗, 小林 俊一, 山口 裕通, 行列木定理を用いた道路ネットワーク評価方法の検討, 土木学会論文集D3 (土木計画学), Vol.76, No.5 (土木計画学研究・論文集第38巻), I_889-I_897, 2021. 吉田悠一, スペクトルグラフ理論, サイエンス社 (2024). ","date":"2025-12-02","externalUrl":null,"permalink":"/posts/road-network/","section":"数学記事・PDF","summary":"みなさん、道路は使っていますか？使っていますよね。\n","title":"行列木定理で道路を調べる！","type":"posts"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は量子シューベルト多項式を紹介します。\n2025 年は量子力学が誕生して 100 年と言われており、国際量⼦科学技術年に制定されました。日本ではこれを記念して量子フェスが開催されるなど、盛り上がりを見せています。\n量子技術は物理学の範囲を超え、様々な分野と関わり始めています。その代表例は量子コンピュータです。いずれ実用化されるであろう量子コンピュータに向けて、世界中で量子人材の育成が進められています。\nこの記事では量子シューベルト多項式を紹介します。これを勉強することで量子人材になれる、かはわかりませんが、面白い話題だと思うので勉強していきましょう！\nそしてこの記事は組合せ論 Advent Calendar 2025 の 1 日目の記事です。参加者を募集しております。\n古典的シューベルト多項式 # 通常のシューベルト多項式については 2024 年 6 月号の Natori で解説しています。\n【月刊組合せ論 Natori】シューベルト多項式の組合せ論的表示【2024 年 6 月号】\nこの記事で必要になるものを復習していきましょう。si=(i,i+1)∈Sns_i=(i,i+1)\\in S_nsi​=(i,i+1)∈Sn​ を隣接互換とします。多項式 f∈Z[x1,…,xn]f\\in\\mathbb{Z}[x_1,\\ldots,x_n]f∈Z[x1​,…,xn​] に対して\n∂if=f−sifxi−xi+1 \\partial_if=\\frac{f-s_if}{x_i-x_{i+1}} ∂i​f=xi​−xi+1​f−si​f​と定義します。ここで sifs_ifsi​f は xix_ixi​ と xi+1x_{i+1}xi+1​ を入れ替えた多項式です。∂i\\partial_i∂i​ を差分商作用素といいます。\nそして w∈Snw\\in S_nw∈Sn​ の最短表示の 1 つを w=si1⋯silw=s_{i_1}\\cdots s_{i_l}w=si1​​⋯sil​​ とします。このとき ∂w=∂i1⋯∂il\\partial_w=\\partial_{i_1}\\cdots \\partial_{i_l}∂w​=∂i1​​⋯∂il​​ が最短表示のとり方によらず定まります。\n二重シューベルト多項式は x1,…,xn,y1,…,ynx_1,\\ldots,x_n,y_1,\\ldots,y_nx1​,…,xn​,y1​,…,yn​ に関する多項式で、w0=(n,n−1,…,2,1)w_0=(n,n-1,\\ldots,2,1)w0​=(n,n−1,…,2,1) としたとき\nSw0(x,y)=∏i+j\u0026lt;n+1(xi−yj)Sw(x,y)=∂w−1w0(x)Sw0(x,y) \\begin{align*} \\mathfrak{S}_{w_0}(x,y) \u0026amp;= \\prod_{i+j\u0026lt;n+1}(x_i-y_j) \\\\ \\mathfrak{S}_w(x,y) \u0026amp;= \\partial^{(x)}_{w^{-1}w_0}\\mathfrak{S}_{w_0}(x,y) \\end{align*} Sw0​​(x,y)Sw​(x,y)​=i+j\u0026lt;n+1∏​(xi​−yj​)=∂w−1w0​(x)​Sw0​​(x,y)​により定まります。ここで ∂(x)\\partial^{(x)}∂(x) は変数 x1,…,xnx_1,\\ldots,x_nx1​,…,xn​ に関する差分商作用素であることを表しています。\n通常のシューベルト多項式は二重シューベルト多項式で y1=⋯=yn=0y_1=\\cdots=y_n=0y1​=⋯=yn​=0 とすることで得られます。\n量子シューベルト多項式 # ここからはこの記事の主題である量子シューベルト多項式を扱っていきます。その前に、なぜ量子という名前がついているかを簡単に説明します。\n古典的シューベルト多項式は旗多様体のコホモロジーと深く関係します。筆者は幾何学に詳しくないので解説できませんが、いつか勉強して記事を書きたいと思います。コホモロジー環を変形して量子コホモロジー環を得るという研究が 1990 年ごろから行われるようになりました。名前の通り物理学を由来とする概念です。旗多様体のコホモロジー環からシューベルト多項式が得られたように、旗多様体の量子コホモロジー環からは量子シューベルト多項式が得られます。\nではこの量子シューベルト多項式を定義していきましょう。q1,q2,…,qn−1q_1,q_2,\\ldots,q_{n-1}q1​,q2​,…,qn−1​ という変数を用意します。\nGk=(x1q10⋯0−1x2q2⋯00−1x3⋯0⋮⋮⋮⋱⋮000⋯xk) G_k=\\begin{pmatrix} x_1 \u0026amp; q_1 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; 0 \\\\ -1 \u0026amp; x_2 \u0026amp; q_2 \u0026amp; \\cdots \u0026amp; 0 \\\\ 0 \u0026amp; -1 \u0026amp; x_3 \u0026amp; \\cdots \u0026amp; 0 \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \u0026amp; \\vdots \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; x_k \\end{pmatrix} Gk​=​x1​−10⋮0​q1​x2​−1⋮0​0q2​x3​⋮0​⋯⋯⋯⋱⋯​000⋮xk​​​とおき、det⁡(I+λGk)\\det(I+\\lambda G_k)det(I+λGk​) を展開したときの λi\\lambda^iλi の係数を Eik(x1,…,xk)E_i^k(x_1,\\ldots,x_k)Eik​(x1​,…,xk​) とおきます。そして\nSw0q(x,y)=∏k=1n−1Ekk(x1−yn−k,…,xk−yn−k) \\mathfrak{S}_{w_0}^q(x,y)=\\prod_{k=1}^{n-1}E_k^k(x_1-y_{n-k},\\ldots,x_k-y_{n-k}) Sw0​q​(x,y)=k=1∏n−1​Ekk​(x1​−yn−k​,…,xk​−yn−k​)とおき\nSwq(x,y)=(−1)ℓ(w0)−ℓ(w)∂ww0(y)Sw0q(x,y) \\mathfrak{S}_w^q(x,y)=(-1)^{\\ell(w_0)-\\ell(w)}\\partial_{ww_0}^{(y)}\\mathfrak{S}_{w_0}^q(x,y) Swq​(x,y)=(−1)ℓ(w0​)−ℓ(w)∂ww0​(y)​Sw0​q​(x,y)と定義します。これが量子二重シューベルト多項式です。yi=0y_i=0yi​=0 とすることで量子シューベルト多項式 Swq(x)\\mathfrak{S}_w^q(x)Swq​(x) が得られます。\n差分商作用素を用いた公式は量子二重シューベルト多項式では存在する一方、量子シューベルト多項式では知られていないことに注意が必要です。\n具体例をいくつか挙げます。\nS1234q(x)=1\\mathfrak{S}_{1234}^q(x)=1S1234q​(x)=1 S3124q(x)=x12−q1\\mathfrak{S}_{3124}^q(x)=x_1^2-q_1S3124q​(x)=x12​−q1​ S2314q(x)=x1x2+q1\\mathfrak{S}_{2314}^q(x)=x_1x_2+q_1S2314q​(x)=x1​x2​+q1​ S4213q(x)=x13x2+q1x12−q1x1x2−q12−q1q2\\mathfrak{S}_{4213}^q(x)=x_1^3x_2+q_1x_1^2-q_1x_1x_2-q_1^2-q_1q_2S4213q​(x)=x13​x2​+q1​x12​−q1​x1​x2​−q12​−q1​q2​ 古典的シューベルト多項式の場合とは異なり、マイナスの符号が現れることがあります。\n量子シューベルト多項式で qi=0q_i=0qi​=0 とすると古典的シューベルト多項式が得られます。\n組合せ論的公式 # シューベルト多項式を組合せ論的に記述する方法はいくつか知られています。（上述の記事を参照。）一方で、量子シューベルト多項式の組合せ論的公式は知られていませんでした。やはりマイナスが現れることが難しいのでしょう。\nしかし、2025 年の論文で公式が見つかりました！\nLe, Tuong; Ouyang, Shuge; Tao, Leo; Restivo, Joseph; Zhang, Angelina. Quantum bumpless pipe dreams. Forum Math. Sigma 13, Paper No. e28, 21 p. (2025). この論文では、bumpless pipe dream の量子バージョンを用いています。bumpless pipe dream も 2021 年の論文に登場する比較的新しい対象です。\nそれでは量子 bumpless pipe dream (QBPD) を紹介します。使うタイルは次の 9 種類です。\nこれを n×nn\\times nn×n のマス目に、次の条件をみたすように敷き詰めます。\nnnn 本のパイプがあり、iii 行目の右端から出発したパイプは wiw_iwi​ 列目の下端に到着する。 右端から出発したパイプは左・下・上に動くが、右に動いてはならない。 どの 2 本のパイプも高々 1 回交わる。 w=4213w=4213w=4213 に対する例は次のようになっています。（図は先ほどの論文より）\n各 QBPD PPP に対して、以下のマスについてウェイトを定め、それらの積を QBPD の (binomial) ウェイト bwt(P)\\mathrm{bwt}(P)bwt(P) とします。\n空のタイル（リストの左端のタイル）は、iii 行 jjj 列にあるとき xi−yjx_i-y_jxi​−yj​ ドミノタイル（右端）は、上のマスが iii 行目にあるとき qiq_iqi​ 十字タイル（左から 3 番目）であって縦向きのパイプでは上に動くものは、iii 行目にあるとき qiq_iqi​ 左下タイル（左から 7 番目）は、iii 行目にあるとき −qi-q_i−qi​ 縦タイル（左から 5 番目）であって上に動くものは、iii 行目にあるとき −qi-q_i−qi​ ここで上に動くというのは、右端から出発して下端に到着する場合を考えています。\n論文の主定理は、QBPD のウェイトから量子シューベルト多項式を計算できるということです：\nSwq(x,y)=∑P∈QBPD(w)bwt(P) \\mathfrak{S}_w^q(x,y)=\\sum_{P\\in \\mathrm{QBPD}(w)}\\mathrm{bwt}(P) Swq​(x,y)=P∈QBPD(w)∑​bwt(P)先ほど S4213q(x)=x13x2+q1x12−q1x1x2−q12−q1q2\\mathfrak{S}_{4213}^q(x)=x_1^3x_2+q_1x_1^2-q_1x_1x_2-q_1^2-q_1q_2S4213q​(x)=x13​x2​+q1​x12​−q1​x1​x2​−q12​−q1​q2​ という例を出しましたが、実際に上記の 5 つの QBPD のウェイトを計算することで確かめられます。（この例は二重ではないので yi=0y_i=0yi​=0 とします）\nただし、この公式では打ち消し合いが発生する場合があります。その意味でこの公式は最良ではないのですが、組合せ論的な公式が見つかったことの意義は大きいと思います。\n証明を読み込んだわけではないのでここで証明することはできませんが、簡単に方針を述べておこうと思います。古典的シューベルト多項式の場合、Monk 公式から次の転換公式 (transition formula) が得られます：w∈Snw\\in S_nw∈Sn​ を恒等置換でない置換、rrr を w(r)\u0026gt;w(r+1)w(r)\u0026gt;w(r+1)w(r)\u0026gt;w(r+1) をみたす元のうち最大のもの、sss を w(s)\u0026lt;w(r)w(s)\u0026lt;w(r)w(s)\u0026lt;w(r) であるような元のうち最大のものとします。このとき\nSw=xrSwtrs+∑i\u0026lt;rℓ(wtrstir)=ℓ(w)Swtrstir \\mathfrak{S}_w=x_r\\mathfrak{S}_{wt_{rs}}+\\sum_{\\substack{i\u0026lt;r \\\\ \\ell(wt_{rs}t_{ir})=\\ell(w)}}\\mathfrak{S}_{wt_{rs}t_{ir}} Sw​=xr​Swtrs​​+i\u0026lt;rℓ(wtrs​tir​)=ℓ(w)​∑​Swtrs​tir​​が成り立ちます。ここで trst_{rs}trs​ は r,sr,sr,s を入れ替える互換です。量子二重シューベルト多項式でも似たような転換公式が成り立ちます。（論文の命題 3.14 です。）QBPD から得られる式が転換公式をみたすことを示すそうです。\n今後の発展 # 量子シューベルト多項式を組合せ論的に表す公式が得られたことを活かして、さらなる研究が発展することを期待しています。\nシューベルト多項式を組合せ論的に記述する方法はいくつかあり、そのうちの 1 つが bumpless pipe dream でした。他の組合せオブジェクトの量子版も考えられないでしょうか？\nこれからどのように研究が進んでいくか楽しみですね。あなたもぜひ、研究に参加してみませんか？\nおわりに # 月刊組合せ論 Natori では今後も組合せ論の様々なトピックを紹介していく予定なので、応援よろしくお願いします。\nまた今月はアドベントカレンダーで他にも記事を書くので、そちらもチェックお願いします！\n参考文献 # 前野俊昭, Schubert 多項式とその仲間たち, 数学書房. ","date":"2025-12-01","externalUrl":null,"permalink":"/natori/202512/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は量子シューベルト多項式を紹介します。\n","title":"【月刊組合せ論 Natori】量子シューベルト多項式フェス【2025 年 12 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。\n2022 年 # 【月刊組合せ論 Natori】EDPC-T Permutation を深掘り【2022 年 9 月号】 【月刊組合せ論 Natori】正多面体とグラフ理論【2022 年 10 月号】 【月刊組合せ論 Natori】ルイス・キャロルと交代符号行列【2022 年 11 月号】 【月刊組合せ論 Natori】June Huh 氏の業績を解説【2022 年 12 月号】 2023 年 # 【月刊組合せ論 Natori】ヤング図形のコア【2023 年 1 月号】 【月刊組合せ論 Natori】ヤコビの三重積公式とオイラーの五角数定理【2023 年 2 月号】 【月刊組合せ論 Natori】シューア多項式とヤコビ・トゥルーディ公式【2023 年 3 月号】 【月刊組合せ論 Natori】森の数え上げとカタラン数の畳み込み【2023 年 4 月号】 【月刊組合せ論 Natori】フック長公式【2023 年 5 月号】 【月刊組合せ論 Natori】Hall-Littlewood 多項式と Kostka-Foulkes 多項式【2023 年 6 月号】 【月刊組合せ論 Natori】平面分割の母関数【2023 年 7 月号】 【月刊組合せ論 Natori】q 二項係数入門【2023 年 8 月号】 2024 年 # 【月刊組合せ論 Natori】転倒数が k である順列の個数【2024 年 2 月号】 【月刊組合せ論 Natori】半標準ヤングタブローの個数【2024 年 5 月号】 【月刊組合せ論 Natori】シューベルト多項式の組合せ論的表示【2024 年 6 月号】 【月刊組合せ論 Natori】マトロイドに入門しよう【2024 年 7 月号】 【月刊組合せ論 Natori】長さ 3 の pattern avoidance【2024 年 8 月号】 【月刊組合せ論 Natori】ランダムヤングタブローと北極圏定理【2024 年 9 月号】 【月刊組合せ論 Natori】Mahonian statistics【2024 年 10 月号】 【月刊組合せ論 Natori】Stanley-Stembridge 予想【2024 年 11 月号】 【月刊組合せ論 Natori】横断マトロイド【2024 年 12 月号】 2025 年 # 【月刊組合せ論 Natori】1/3-2/3 予想【2025 年 1 月号】 【月刊組合せ論 Natori】ヤング図形の束と differential poset【2025 年 2 月号】 【月刊組合せ論 Natori】グラフ除去補題【2025 年 7 月号】 【月刊組合せ論 Natori】フック長公式の q 類似【2025 年 8 月号】 【月刊組合せ論 Natori】グラフ理論と整数論の合わせ技：Paley グラフ【2025 年 9 月号】 【月刊組合せ論 Natori】Netflix 問題とグラフの剛性【2025 年 10 月号】 【月刊組合せ論 Natori】Brouwer の不動点定理と Sperner の補題【2025 年 11 月号】 【月刊組合せ論 Natori】量子シューベルト多項式フェス【2025 年 12 月号】 ","date":"2025-12-01","externalUrl":null,"permalink":"/natori/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。\n","title":"月刊組合せ論 Natori","type":"natori"},{"content":" 静香の証明 # 芽衣 このお茶、うまいなー！\n素子 新しい茶葉をご用意いたしました。\n桜子 おいしいです……。\n静香 リラックスして、ねむくなるね～。\n芽衣 次は静香の番だから、寝ちゃだめだー。\n静香 わかった～。\nf(z)=zn+a1zn−1+⋯+anf(z)=z^n+a_1z^{n-1}+\\cdots+a_nf(z)=zn+a1​zn−1+⋯+an​ とおくね。f(z)=0f(z)=0f(z)=0 をみたす zzz が存在することを証明するよ。\nf(z)f(z)f(z) の偏角に応じて、zzz に色を決めるね。−π\u0026lt;arg⁡z≤−π3-\\pi\u0026lt;\\arg z\\le -\\frac{\\pi}{3}−π\u0026lt;argz≤−3π​ のとき赤、−π3\u0026lt;arg⁡z≤π3-\\frac{\\pi}{3}\u0026lt;\\arg z\\le \\frac{\\pi}{3}−3π​\u0026lt;argz≤3π​ のとき緑、π3\u0026lt;arg⁡z≤π\\frac{\\pi}{3}\u0026lt;\\arg z\\le \\pi3π​\u0026lt;argz≤π のとき緑にするよ。0 はどれでもいいけど、とりあえず赤にするね。\nそれで、この補題を使うよ。\n補題: 凸多角形が三角形分割されている。各頂点は赤・緑・青のいずれかで塗られている。反時計回りに赤・緑・青となる三角形の個数から時計回りに赤・緑・青となる三角形の個数を引いた値を content と呼ぶ。また多角形の周上において、反時計回りに赤・緑となる辺の個数から時計回りに赤・緑となる辺の個数を引いた値を index と呼ぶ。このとき、content と index は等しい。 いま、大きな円を考えて、この円に内接する多角形をとって、三角形分割するよ。十分大きい円なら、反時計回りに一周すると f(z)f(z)f(z) は nnn 回転することになる。ここはもう少し慎重に考えた方がよさそうだけど、省略するね～。\n円周上にある頂点が十分多いなら、反時計回りに一周したときの色の変化が赤→緑→青→赤→…、という感じで nnn 周する。だから index は nnn になる。\n補題を使うと content も nnn になるから、特に赤・緑・青の三角形が存在するよ。\n三角形分割をどんどん細かくしていくと、どんどん小さくなる三色三角形の列がとれるね。ボルツァーノ＝ワイエルシュトラスの定理を使うと収束部分列が存在することがわかって、収束先が f(z)=0f(z)=0f(z)=0 をみたす点だということがわかる。\nはい、これで証明おしまい～。\n桜子 見たことない証明です……。複素解析っぽくもあり、組合せ論的でもありますね……。\n素子 この補題が重要そうですね。これはいったい何なのでしょう？\n静香 本には index lemma という名前で載ってたよ～。ポアンカレ・ホップの定理と関係ありそうだね。\n芽衣 知らない定理だな～。\n素子 そういえば、Sperner の補題を使って Brouwer の不動点定理を証明する記事を最近読みました。その手法と似ている気がします。\n桜子 あ……、この補題から Sperner の補題が示せそうです。Sperner の補題では凸多角形は三角形で、3 頂点の色はそれぞれ赤・緑・青。3 辺は赤緑のみ、緑青のみ、赤青のみというふうになっています……。それで、index を計算します。赤緑の頂点だけがある辺だけを見ればよくて、赤から始まって緑で終わるので index は ±1\\pm 1±1 です。なので content も ±1\\pm 1±1 なので、赤緑青の三角形が存在します……。\n芽衣 てことは、Sperner の補題より強いってことか！\n素子 そうですね。\n静香 眠いから寝るね～。\n桜子 寝てしまいました……。次は私の発表なのですが、まあ聴衆が少ない方が気が楽かもしれません……。\n桜子の発表 # n=2kmn=2^kmn=2km (mmm は奇数) と表したときの、kkk に関する帰納法で証明します。k=0k=0k=0 のとき、つまり nnn が奇数のときは、奇数次の多項式は実数根をもつのでよいです。中間値の定理を使うものでしたね……。\nnnn 次多項式 f(z)f(z)f(z) の分解体 FFF をとります。FFF 上で f(z)=a(z−z1)⋯(z−zn)f(z)=a(z-z_1)\\cdots (z-z_n)f(z)=a(z−z1​)⋯(z−zn​) となります。ここで実数 ttt に対して\ngt(z)=∏1≤i\u0026lt;j≤n(z−zi−zj−tzizj) g_t(z)=\\prod_{1\\le i\u0026lt;j\\le n}(z-z_i-z_j-tz_iz_j) gt​(z)=1≤i\u0026lt;j≤n∏​(z−zi​−zj​−tzi​zj​)とおきます。この多項式の次数は n(n−1)/2n(n-1)/2n(n−1)/2 で、2 で割れる回数が k−1k-1k−1 回なので、帰納法の仮定が使えます。つまり gt(z)g_t(z)gt​(z) に複素数根が存在します。さらに言い換えると、zi+zj+tzizjz_i+z_j+tz_iz_jzi​+zj​+tzi​zj​ が複素数となるような i,ji,ji,j が存在します。\nここで ttt を動かします。t1≠t2t_1\\ne t_2t1​=t2​ としたとき、zi+zj+t1zizj,zi+zj+t2zizjz_i+z_j+t_1z_iz_j, z_i+z_j+t_2z_iz_jzi​+zj​+t1​zi​zj​,zi​+zj​+t2​zi​zj​ が同時に複素数となるような i,ji,ji,j が存在します。(i,j)(i,j)(i,j) の個数より実数の方が多いので当たり前ですね……。\nここから、zi+zjz_i+z_jzi​+zj​ と zizjz_iz_jzi​zj​ が複素数となることがわかります。z2−(zi+zj)z+zizjz^2-(z_i+z_j)z+z_iz_jz2−(zi​+zj​)z+zi​zj​ は 2 次多項式で、これが複素数の根をもつことは簡単に確かめられるので、zi,zjz_i,z_jzi​,zj​ は複素数です。\nこれで f(z)f(z)f(z) が複素数の根をもつことが確かめられました……。\n素子 面白い証明ですね。複素数体 C\\mathbb{C}C の拡大体を考えるところや、変わった帰納法の使い方が見所ですね。\n芽衣 C\\mathbb{C}C って代数的閉体じゃなかったか？\n素子 それは代数学の基本定理の言い換えですね。\n芽衣 そうか！\n素子 これにて全員分の証明が揃いました。どれも大変興味深く、鑑賞する価値があります。とはいえ、紹介できなかった証明がまだまだたくさんあることでしょう。\n桜子 トポロジーを使う証明もありました……。\n素子 ということなので、いつかまた鑑賞会を開きましょう。次回は別の定理を扱うかもしれません。\n芽衣 楽しみだ！\n登場人物紹介 # 江晩桜子 (えばんさくらこ)。家族が本屋を営んでいた。古本を集めるのが趣味。\n参考文献 # Henle, Michael. A Combinatorial Introduction to Topology. 【月刊組合せ論 Natori】Brouwer の不動点定理と Sperner の補題【2025 年 11 月号】 Fundamental theorem of algebra (Wikipedia) ","date":"2025-11-30","externalUrl":null,"permalink":"/novels/elegant-teatime/2/","section":"おはなし一覧","summary":"静香の証明 # 芽衣 このお茶、うまいなー！\n","title":"【elegant teatime】代数学の基本定理 (2) 【第 2 話】","type":"novels"},{"content":"素子（もとこ）は自分のお屋敷に知人を招待した。その目的は、証明の鑑賞会？\n代数学の基本定理 (1) 【第 1 話】 代数学の基本定理 (2) 【第 2 話】 ","date":"2025-11-30","externalUrl":null,"permalink":"/novels/elegant-teatime/","section":"おはなし一覧","summary":"素子（もとこ）は自分のお屋敷に知人を招待した。その目的は、証明の鑑賞会？\n","title":"elegant teatime","type":"novels"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Brouwer の不動点定理と、その組合せ論バージョンと呼ばれる Sperner の補題を解説します。\nBrouwer の不動点定理とは # Brouwer の不動点定理は位相幾何学における定理です。\n定理: Bn={x∈Rn∣∥x∥≤1}B^n=\\{x\\in \\mathbb{R}^n\\mid \\|x\\|\\le 1\\}Bn={x∈Rn∣∥x∥≤1} を nnn 次元閉球とする。このとき、連続写像 f ⁣:Bn→Bnf\\colon B^n\\to B^nf:Bn→Bn は不動点を持つ。すなわち、f(x)=xf(x)=xf(x)=x をみたす x∈Bnx\\in B^nx∈Bn が存在する。 次のような形で述べられることもあります。\n定理: XXX を BnB^nBn と同相な空間とする。このとき連続写像 f ⁣:X→Xf\\colon X\\to Xf:X→X は不動点を持つ。 証明：φ ⁣:Bn→X\\varphi\\colon B^n\\to Xφ:Bn→X を同相写像とする。φ−1∘f∘φ\\varphi^{-1}\\circ f\\circ \\varphiφ−1∘f∘φ は BnB^nBn から BnB^nBn への連続写像である。上の定理より、(φ−1∘f∘φ)(x)=x(\\varphi^{-1}\\circ f\\circ \\varphi)(x)=x(φ−1∘f∘φ)(x)=x をみたす x∈Bnx\\in B^nx∈Bn が存在する。このとき f(φ(x))=φ(x)f(\\varphi(x))=\\varphi(x)f(φ(x))=φ(x) となるので、φ(x)∈X\\varphi(x)\\in Xφ(x)∈X が不動点である。\nSperner の補題 # Sperner の補題は組合せ論の命題です。一般の次元で成り立ちますが、ここでは 1,21,21,2 次元の場合を紹介します。\n補題: 線分 ABABAB 上に有限個の点がある。A,BA,BA,B の色はそれぞれ赤・青であり、間にある点の色を赤または青とする。このとき、隣り合う頂点であって色が異なるものが存在する。 1 次元の場合、これはほぼ自明ですね。より強く、色の異なる隣り合う頂点の組は奇数個であることがいえます。ちなみに、2002 年の東大数学（文系）で次のような問題が出題されています。\n円周上に mmm 個の赤い点、nnn 個の青い点がある。m,n≥1m,n\\ge 1m,n≥1 のとき、m+nm+nm+n 個の弧のうち両端の色が異なるものは偶数個あることを示せ。\n色の異なる弧を 1 つ切断して線分にすると先ほどのシチュエーションと同じであることがわかります。\n補題: 三角形 ABCABCABC の三角形分割を考える。A,B,CA,B,CA,B,C の色はそれぞれ赤・緑・青とし、辺 ABABAB 上の点は赤または緑、辺 BCBCBC 上の点は緑または青、辺 CACACA 上の点は赤または青とする。内部の点の色は赤・緑・青のいずれかとする。このとき、頂点の色がすべて異なるような三角形が存在する。 これが 2 次元の場合です。非自明になりましたが、1 次元の場合を用いて証明できます。\n頂点の色が赤と青である辺に着目します。赤青の辺のうち、三角形 ABC の辺上にあるものの数を aaa、内部にあるものの数を bbb とします。赤緑青の三角形の数を xxx、赤青赤・赤青青の三角形の数の和を yyy とします。各三角形について赤青の辺の個数を求めて和をとると、x+2yx+2yx+2y となります。ここで\n三角形 ABC の周上の辺は、ちょうど 1 つの三角形の辺である。 三角形 ABC の内部の辺は、ちょうど 2 つの三角形の辺である。 ことに注目すると、内部の辺は二度カウントされていることになります。よって、a+2b=x+2ya+2b=x+2ya+2b=x+2y という等式が成り立ちます。このことから x≡a(mod2)x\\equiv a\\pmod{2}x≡a(mod2) となります。aaa は一次元の場合の Sperner の補題から奇数なので、xxx も奇数です。よって赤緑青の三角形が存在することが示されました。\n他にもいろいろな証明があるので気になった方は調べてみてください。\nSperner の補題から Brouwer の不動点定理を示す # 2 次元の Brouwer の不動点定理を証明します。\n2 次元閉球と同相な空間として正三角形 TTT を考えます。f ⁣:T→Tf\\colon T\\to Tf:T→T を連続写像とします。点 x∈Tx\\in Tx∈T から f(x)f(x)f(x) へのベクトルを生やします（ベクトル場）。頂点の色は、ベクトルの向きに応じて次のように決めます。\nこのとき、Sperner の補題の仮定がみたされています。よって、任意の三角形分割について、頂点の色が異なる三角形が存在することがわかります。\nいま、三角形分割の列をだんだん細かくなっていくようにとります。すなわち、辺の長さの最大値が 0 に収束するようにとります。そして Sperner の補題から得られる赤緑青の三角形の列を A1B1C1,A2B2C2,…A_1B_1C_1,A_2B_2C_2,\\ldotsA1​B1​C1​,A2​B2​C2​,… とします。\nボルツァーノ＝ワイエルシュトラスの定理より、点列 (A1,A2,…)(A_1,A_2,\\ldots)(A1​,A2​,…) は収束部分列 (Ai1,Ai2,…)(A_{i_1},A_{i_2},\\ldots)(Ai1​​,Ai2​​,…) をもちます。この部分列の収束先を点 XXX とします。\nいま、三角形分割はだんだん細かくなるようにしているので、(Bi1,Bi2,…)(B_{i_1},B_{i_2},\\ldots)(Bi1​​,Bi2​​,…) と (Ci1,Ci2,…)(C_{i_1},C_{i_2},\\ldots)(Ci1​​,Ci2​​,…) も XXX に収束します。\n赤い点列の極限も赤であることは、fff が連続であることから従います。緑と青についても同様です。\n以上より、XXX が赤かつ緑かつ青であることがわかります。これは XXX が不動点であることを意味しています。\nBrouwer の不動点定理から Sperner の補題を示す # 逆に、Brouwer の不動点定理から Sperner の補題を示すことができます。\n（このことが載っている論文があるらしいのですが、アクセスできないので確認できませんでした）\n本当に同値なのか # 上で述べたことから、Brouwer の不動点定理と Sperner の補題は同値だとよく書かれています。しかし本当にそうでしょうか？\nSperner の補題は点の座標を有理数にしても成り立ちます。一方、Brouwer の不動点定理では有理数上で考えると成り立ちません。1 次元の場合でも、f ⁣:[1,2]∩Q→[1,2]∩Qf\\colon [1,2]\\cap\\mathbb{Q}\\to [1,2]\\cap\\mathbb{Q}f:[1,2]∩Q→[1,2]∩Q を\nf(x)={2if 1≤x\u0026lt;21if 2\u0026lt;x≤2 f(x)=\\begin{cases} 2 \u0026amp; \\text{if } 1\\le x\u0026lt;\\sqrt{2} \\\\ 1 \u0026amp; \\text{if } \\sqrt{2}\u0026lt;x\\le 2 \\end{cases} f(x)={21​if 1≤x\u0026lt;2​if 2​\u0026lt;x≤2​により定めると、連続ですが不動点をもちません。\n上の証明ではボルツァーノ＝ワイエルシュトラスの定理を用いていましたが、このような実数の連続性が Brouwer の不動点定理を考えるときには重要ということでしょう。\nだが待て…まだまだあるぞ！ # 位相幾何と組合せ論の定理の関係を見ました。異なる分野の間に橋をかけるのは数学の醍醐味ですね。\n実はこのような関係にある定理は他にもあります。有名なところでは位相幾何の Borsuk-Ulam の定理と組合せ論の Tucker の補題です。このように位相幾何と組合せ論が融合した分野を topological combinatorics といいます。\n私の見方では、組合せ論の定理こそが数学の真髄であると感じます。組合せ論バージョンの定理で極限をとることで元の定理が得られるとき、組合せ論バージョンの定理は骨格というか本質というか、そういった感じがします。\nSara Billey という数学者は次のように言ったそうです。\nCombinatorics is the nanotechnology of mathematics.\n難しい定理の骨格・本質を捉えようとする行為はまさにナノテクノロジーといえるのではないでしょうか。\nおわりに # 位相幾何と組合せ論の関係はまだまだ面白そうなことがいっぱいあるので、また記事にしたいです。\n12 月から組合せ論 Advent Calendar 2025 が始まります。参加者を募集しています。\n月刊組合せ論 Natori では組合せ論の面白いトピックを紹介していくので、今後も応援よろしくお願いします。\n参考文献 # Henle, Michael. A Combinatorial Introduction to Topology. Minagawa, Junichi. On the (in)equivalence of Brouwer\u0026rsquo;s fixed point theorem and Sperner\u0026rsquo;s lemma. arXiv:2507.02366. Sperner の補題と Brouwer の不動点定理 | 高校数学の美しい物語 ","date":"2025-11-01","externalUrl":null,"permalink":"/natori/202511/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Brouwer の不動点定理と、その組合せ論バージョンと呼ばれる Sperner の補題を解説します。\n","title":"【月刊組合せ論 Natori】Brouwer の不動点定理と Sperner の補題【2025 年 11 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Netflix 問題の話をします。\nちなみに私は Netflix 未加入です。\nNetflix 問題 # Netflix のユーザー数を mmm 人、映画数を nnn 本とします。人 iii は映画 jjj に aija_{ij}aij​ 点の評価をつけたとします。評価を m×nm\\times nm×n の行列として表すことができます。\nしかし現実にはすべてのユーザーがすべての映画を見るとは限りません。例えば\n(9580?50??708090?75?) \\begin{pmatrix} 95 \u0026amp; 80 \u0026amp; ? \u0026amp; 50 \\\\ ? \u0026amp; ? \u0026amp; 70 \u0026amp; 80 \\\\ 90 \u0026amp; ? \u0026amp; 75 \u0026amp; ? \\end{pmatrix} ​95?90​80??​?7075​5080?​​のように、一部データが欠損した行列となります。\n多くのサイトでは「おすすめ」機能があります。あるユーザーがまだ見ていない映画の中から、高く評価しそうな映画を選び出したいですが、そのためには行列を補完する必要があります。もちろん補完方法は無限にあるわけですが、どのように補完するのがよいでしょうか。\nこの問題は Netflix 問題と呼ばれています。以下が起源のようです。\nProceedings of KDD Cup and Workshop 2007 この問題へのアプローチはいろいろなものがありますが、行列をなるべく低ランクにするというアプローチをとります。ランクが高いとバラバラな評価をしているということになるので、自然な要請だと思います。\nグラフの剛性 # この記事のもう 1 つの主題はグラフの剛性です。\nグラフとは頂点と辺の組で、2 つの頂点がつながっているかつながっていないかだけを気にすることが普通です。ですがここでは、2 つの頂点を硬い棒でつなぐことを考えてみます。\n例えば平面上に三角形があるとき、硬い棒でつながっているので形を変えることはできません。できるのは回転や平行移動のみです。\n一方で四角形の場合は変形することができます。このように三角形は剛、四角形は柔、と考えられます。\nでは四角形に対角線を一本加えるとどうでしょうか。長さを保つ配置は 2 種類ありますが、連続変形することはできません。\nグラフ GGG を ddd 次元空間 Rd\\mathbb{R}^dRd に実現したもの ppp を考えます。これは GGG が nnn 頂点のとき、空間内に nnn 個の点 p1,…,pnp_1,\\ldots,p_np1​,…,pn​ を配置して、(i,j)(i,j)(i,j) 間に辺があるときに pi,pjp_i,p_jpi​,pj​ 間に硬い棒を置いたものです。組 (G,p)(G,p)(G,p) をフレームワークと呼びます。\n2 つのフレームワーク (G,p),(G,q)(G,p), (G,q)(G,p),(G,q) が合同であるとは、平行移動・回転・反転の組合せで移りあうことを言います。(G,p)(G,p)(G,p) が剛であるとは、(G,p)(G,p)(G,p) と辺の長さが等しいフレームワーク (G,q)(G,q)(G,q) が常に (G,p)(G,p)(G,p) と合同であることをいいます。これは大域的に剛と呼ばれることもあります。局所的に剛という概念もあり、(G,q)(G,q)(G,q) の存在できる範囲を ppp の近傍に限ったものです。\n剛性の判定は難しいことが知られています。そこで、無限小剛性を考えます。pi=pi(t)p_i=p_i(t)pi​=pi​(t) を時間変化する変数とみなします。距離 ∥pi−pj∥\\|p_i-p_j\\|∥pi​−pj​∥ が不変であることから、2 乗を時間微分すると\nddt∥pi−pj∥2=(pi−pj)T(p˙i−p˙j)=0 \\frac{d}{dt}\\|p_i-p_j\\|^2=(p_i-p_j)^T(\\dot{p}_i-\\dot{p}_j)=0 dtd​∥pi​−pj​∥2=(pi​−pj​)T(p˙​i​−p˙​j​)=0となります。これを p˙i\\dot{p}_ip˙​i​ が未知数の方程式とみます。\n例えば GGG が三角形で p1T=(0,0),p2T=(1,0),p3T=(1,2)p_1^T=(0,0), p_2^T=(1,0),p_3^T=(1,2)p1T​=(0,0),p2T​=(1,0),p3T​=(1,2) とすると、方程式は\n{(p1T−p2T)(p˙1−p˙2)=0(p2T−p3T)(p˙2−p˙3)=0(p1T−p3T)(p˙1−p˙3)=0 \\begin{cases} (p_1^T-p_2^T)(\\dot{p}_1-\\dot{p}_2) \u0026amp;= 0 \\\\ (p_2^T-p_3^T)(\\dot{p}_2-\\dot{p}_3) \u0026amp;= 0 \\\\ (p_1^T-p_3^T)(\\dot{p}_1-\\dot{p}_3) \u0026amp;= 0 \\end{cases} ⎩⎨⎧​(p1T​−p2T​)(p˙​1​−p˙​2​)(p2T​−p3T​)(p˙​2​−p˙​3​)(p1T​−p3T​)(p˙​1​−p˙​3​)​=0=0=0​となり、行列の形で書くと\n(−101000000−202−1−20012)(p˙1p˙2p˙3)=0 \\begin{pmatrix} -1 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; -2 \u0026amp; 0 \u0026amp; 2 \\\\ -1 \u0026amp; -2 \u0026amp; 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 2 \\end{pmatrix} \\begin{pmatrix} \\dot{p}_1 \\\\ \\dot{p}_2 \\\\ \\dot{p}_3 \\\\ \\end{pmatrix}=0 ​−10−1​00−2​100​0−20​001​022​​​p˙​1​p˙​2​p˙​3​​​=0となります。一方、GGG が四角形で辺が {1,2},{2,3},{3,4},{4,1}\\{1,2\\}, \\{2,3\\}, \\{3,4\\}, \\{4,1\\}{1,2},{2,3},{3,4},{4,1} であり、p1T=(0,0),p2T=(1,2),p3T=(3,5),p4T=(4,1)p_1^T=(0,0), p_2^T=(1,2), p_3^T=(3,5), p_4^T=(4,1)p1T​=(0,0),p2T​=(1,2),p3T​=(3,5),p4T​=(4,1) のとき\n(−1−212000000−2−323000000−141−4−4−1000041)(p˙1p˙2p˙3p˙4)=0 \\begin{pmatrix} -1 \u0026amp; -2 \u0026amp; 1 \u0026amp; 2 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; -2 \u0026amp; -3 \u0026amp; 2 \u0026amp; 3 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; -1 \u0026amp; 4 \u0026amp; 1 \u0026amp; -4 \\\\ -4 \u0026amp; -1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; 4 \u0026amp; 1 \\end{pmatrix} \\begin{pmatrix} \\dot{p}_1 \\\\ \\dot{p}_2 \\\\ \\dot{p}_3 \\\\ \\dot{p}_4 \\end{pmatrix}=0 ​−100−4​−200−1​1−200​2−300​02−10​0340​0014​00−41​​​p˙​1​p˙​2​p˙​3​p˙​4​​​=0となります。係数行列を AAA とおいて、その階数を調べます。以降 n≥d+1n\\ge d+1n≥d+1 と仮定します。Rd\\mathbb{R}^dRd において回転運動の自由度が (d2)\\binom{d}{2}(2d​)、平行移動の自由度が ddd なので、Ax=0Ax=0Ax=0 の解空間の次元は (d2)+d=(d+12)\\binom{d}{2}+d=\\binom{d+1}{2}(2d​)+d=(2d+1​) 以上です。よって階数は\nrank⁡A≤dn−(d+12) \\operatorname{rank}A\\le dn-\\binom{d+1}{2} rankA≤dn−(2d+1​)をみたします。フレームワーク (G,p)(G,p)(G,p) が無限小剛とは、上の不等式で等号が成り立つことをいいます。1 つ目の例は無限小剛ですが、2 つ目はそうではありません。\n剛性や無限小剛性は GGG だけでなく ppp にも依存して決まりますが、実際には ppp をいい感じにランダムにとるとよい場合があります。\n定理 (Asimow-Roth). 頂点数 n≥d+1n\\ge d+1n≥d+1 の一般的なフレームワーク (G,p)(G,p)(G,p) に対して、剛であるための必要十分条件は無限小剛であることである。 行列の低ランク補完 # 話を行列の低ランク補完に戻します。一部が欠損した行列 AAA を階数 ddd 以下にする方法が一意的かどうかという問題に、グラフの剛性のテクニックが使えます。\nまず、行列 AAA は半正定値と仮定します。特に対称行列です。線形代数の結果より、半正定値行列はグラム行列です。AAA の階数を ddd とおくと、p1,…,pn∈Rdp_1,\\ldots,p_n\\in \\mathbb{R}^dp1​,…,pn​∈Rd を用いて aij=piTpja_{ij}=p_i^Tp_jaij​=piT​pj​ と表せます。\n行列の各成分を変形させます。もし成分 aija_{ij}aij​ の値が確定しているとき、時間微分すると 0 です。つまり\nddtpiTpj=piTp˙j+pjTp˙i=0 \\frac{d}{dt}p_i^Tp_j=p_i^T\\dot{p}_j+p_j^T\\dot{p}_i=0 dtd​piT​pj​=piT​p˙​j​+pjT​p˙​i​=0という方程式が得られます。先ほどと似ていますね。\n例として 3 次半正定値行列 AAA の (3,3)(3,3)(3,3) 成分以外がわかっているとき、(3,3)(3,3)(3,3) 成分をうまく決めることで階数を 2 以下にできるかという問題を考えます。方程式は 32−1=83^2-1=832−1=8 本得られますが、対称性を考慮すると実質 5 本です。\n(2p1T00p2Tp1T0p3T0p1T02p2T00p3Tp2T)(p˙1p˙2p˙3)=0 \\begin{pmatrix} 2p_1^T \u0026amp; 0 \u0026amp; 0 \\\\ p_2^T \u0026amp; p_1^T \u0026amp; 0 \\\\ p_3^T \u0026amp; 0 \u0026amp; p_1^T \\\\ 0 \u0026amp; 2p_2^T \u0026amp; 0 \\\\ 0 \u0026amp; p_3^T \u0026amp; p_2^T \\end{pmatrix} \\begin{pmatrix} \\dot{p}_1 \\\\ \\dot{p}_2 \\\\ \\dot{p}_3 \\end{pmatrix}=0 ​2p1T​p2T​p3T​00​0p1T​02p2T​p3T​​00p1T​0p2T​​​​p˙​1​p˙​2​p˙​3​​​=0となります。ppp を一般的にとれば係数行列は階数 5 となります。実際、補完は一意的です。\n(1,3),(3,1)(1,3),(3,1)(1,3),(3,1) 成分以外がわかっている場合も階数 5 です。この場合補完方法は 2 通りありますが、局所的には一意的です。\n一方、(2,2),(3,3)(2,2),(3,3)(2,2),(3,3) 成分以外がわかっている場合、階数は 4 です。補完も一意的ではありません。\n半正定値の場合を書きましたが、一般の場合には Kalai, Nevo, Novik の二部剛性というものが関係するそうです。\nマトロイドのはなし # 係数行列が出てきましたが、行についての独立性を考えるとマトロイドが得られます。剛性から得られるマトロイドと、対称行列補完から得られるマトロイドは同値だそうです。\nおわりに # 9 月はマトロイド強化月間にしていたのでマトロイドの記事を書こうとしましたが、他の記事の締切と重なってしまいあまり勉強が進みませんでした。\n書けなかった内容がたくさんあるので、ぜひ参考文献を眺めてみてください。\n今後も月刊組合せ論 Natori では組合せ論の面白いトピックを取り上げる予定なので、応援よろしくお願いします！\n参考文献 # Joshua Brakensiek, Manik Dhar, Jiyang Gao, Sivakanth Gopi, Matt Larson. Rigidity matroids and linear algebraic matroids with applications to matrix completion and tensor codes. arXiv:2405.00778. James Cruickshank, Bill Jackson, Tibor Jordán, Shin-ichi Tanigawa. Rigidity of Graphs and Frameworks A Matroid Theoretic Approach. arXiv:2508.11636. S. Dzhenzher, T. Garaev, O. Nikitenko, A. Petukhov, A. Skopenkov, A. Voropaev. Low rank matrix completion and realization of graphs results and problems. arXiv:2501.13935. Singer, Amit; Cucuringu, Mihai. Uniqueness of low-rank matrix completion by rigidity theory. SIAM J. Matrix Anal. Appl. 31, No. 4, 1621-1641 (2010). Marie Thibeau, Matrix Completion and Graph Rigidity: Exploiting Surprising Similarities, Master Thesis. ","date":"2025-10-01","externalUrl":null,"permalink":"/natori/202510/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Netflix 問題の話をします。\n","title":"【月刊組合せ論 Natori】Netflix 問題とグラフの剛性【2025 年 10 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Paley グラフを扱います。\nPaley グラフ # ppp を 4 で割って 1 余る素数とします。Paley グラフとは有限体 Fp={0,1,…,p−1}\\mathbb{F}_p=\\{0,1,\\ldots,p-1\\}Fp​={0,1,…,p−1} を頂点集合とし、頂点 x,yx,yx,y は x−y=z2x-y=z^2x−y=z2 となる z∈Fp∖{0}z\\in\\mathbb{F}_p\\setminus\\{0\\}z∈Fp​∖{0} が存在するときに辺で結ばれるような無向グラフです。\n平方数を ppp で割った余りを平方剰余といいます。これは整数論で重要な概念です。Paley グラフはグラフ理論と整数論の合わせ技というわけです。\nなぜ ppp を 4 で割ると 1 余る素数とするのでしょうか。いま無向グラフを考えているので、xxx から yyy へ辺があることと yyy から xxx へ辺があることは同値です。つまり x−y,y−xx-y, y-xx−y,y−x がともに平方剰余ということです。y−x=(−1)(x−y)y-x=(-1)(x-y)y−x=(−1)(x−y) なので (−1)(-1)(−1) が平方剰余でなければなりませんが、これをみたすための条件が p≡1(mod4)p\\equiv 1\\pmod{4}p≡1(mod4) です（平方剰余の第一補充法則）。\n以下は p=13p=13p=13 の場合の例です。(図は Wikipedia より)\nケイリーグラフとしての解釈 # GGG を群、SSS を部分集合であって単位元を含まず、s∈Ss\\in Ss∈S ならば s−1∈Ss^{-1}\\in Ss−1∈S をみたすものとします。(G,S)(G,S)(G,S) のケイリーグラフとは、GGG が頂点集合であり、各 g∈G,s∈Sg\\in G, s\\in Sg∈G,s∈S に対して ggg と gsgsgs を辺で結んだグラフです。\nG=Z/pZG=\\mathbb{Z}/p\\mathbb{Z}G=Z/pZ (加法群として Fp\\mathbb{F}_pFp​ と同一視できます), S={x2∣x∈Fp∖{0}}S=\\{x^2\\mid x\\in\\mathbb{F}_p\\setminus\\{0\\}\\}S={x2∣x∈Fp​∖{0}} とすると、Paley グラフはケイリーグラフであることがわかります。\n隣接行列の固有値 # スペクトルグラフ理論はグラフ理論と線形代数の合わせ技です。代表的な手法に、グラフの隣接行列の固有値を求めることでグラフの性質を探るというものがあります。\n例えば p=5p=5p=5 の場合、隣接行列は次のようになります。\n(0100110100010100010110010) \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix} ​01001​10100​01010​00101​10010​​固有値は\n2 5−12\\frac{\\sqrt{5}-1}{2}25​−1​ (重複度 2) −5−12\\frac{-\\sqrt{5}-1}{2}2−5​−1​ (重複度 2) です。\n実は次が成り立ちます。\n定理: 素数 ppp に対する Paley グラフの固有値は\np−12\\frac{p-1}{2}2p−1​ p−12\\frac{\\sqrt{p}-1}{2}2p​−1​ −p−12\\frac{-\\sqrt{p}-1}{2}2−p​−1​ のいずれかである。\n一般に (Z/nZ,S)(\\mathbb{Z}/n\\mathbb{Z}, S)(Z/nZ,S) のケイリーグラフの隣接行列 AAA の固有値を考えます。写像 Z/nZ→C\\mathbb{Z}/n\\mathbb{Z}\\to\\mathbb{C}Z/nZ→C のなす線形空間を VVV とします。1S∈V1_S\\in V1S​∈V を指示関数、すなわち SSS の元なら 1、そうでないなら 0 を返す関数とします。F ⁣:V→VF\\colon V\\to VF:V→V を、1S1_S1S​ を左から畳み込む作用素とします。すなわち a∈V,x∈Z/nZa\\in V, x\\in \\mathbb{Z}/n\\mathbb{Z}a∈V,x∈Z/nZ に対して\nF(a)(x)=(1S∗a)(x)=∑y∈Z/nZ1S(y)a(x−y)=∑s∈Sa(x−s) F(a)(x)=(1_S*a)(x)=\\sum_{y\\in \\mathbb{Z}/n\\mathbb{Z}}1_S(y)a(x-y)=\\sum_{s\\in S}a(x-s) F(a)(x)=(1S​∗a)(x)=y∈Z/nZ∑​1S​(y)a(x−y)=s∈S∑​a(x−s)となります。\nVVV の基底として 1{g} (g∈Z/nZ)1_{\\{g\\}} \\ (g\\in \\mathbb{Z}/n\\mathbb{Z})1{g}​ (g∈Z/nZ) がとれます。この基底について FFF を行列表示すると、隣接行列 AAA に一致することが確かめられます。\nでは FFF の固有値を求めましょう。χj∈V\\chi_j\\in Vχj​∈V を χj(x)=e2πijx/n\\chi_j(x)=e^{2\\pi ijx/n}χj​(x)=e2πijx/n により定めます。すると\nF(χj)(x)=∑s∈Sχj(x−s)=∑s∈Se2πij(x−s)/n=(∑s∈Se−2πijs/n)χj(x)=(∑s∈Se2πijs/n)χj(x) \\begin{align*} F(\\chi_j)(x)\u0026amp;=\\sum_{s\\in S}\\chi_j(x-s)\\\\ \u0026amp;=\\sum_{s\\in S}e^{2\\pi ij(x-s)/n}\\\\ \u0026amp;=\\left(\\sum_{s\\in S}e^{-2\\pi ijs/n}\\right)\\chi_j(x)\\\\ \u0026amp;=\\left(\\sum_{s\\in S}e^{2\\pi ijs/n}\\right)\\chi_j(x) \\end{align*} F(χj​)(x)​=s∈S∑​χj​(x−s)=s∈S∑​e2πij(x−s)/n=(s∈S∑​e−2πijs/n)χj​(x)=(s∈S∑​e2πijs/n)χj​(x)​となります。ここで最後の等式では S=−SS=-SS=−S であることを用いています。\n以上より (Z/nZ,S)(\\mathbb{Z}/n\\mathbb{Z}, S)(Z/nZ,S) の隣接行列の固有値が\nλj=∑s∈Se2πijs/n \\lambda_j=\\sum_{s\\in S}e^{2\\pi ijs/n} λj​=s∈S∑​e2πijs/nであることがわかりました。余談ですが、χj\\chi_jχj​ は Z/nZ\\mathbb{Z}/n\\mathbb{Z}Z/nZ の既約指標です。\nこれを用いて Paley グラフの隣接行列の固有値を求めましょう。S={x2∣x∈Fp∖{0}}S=\\{x^2\\mid x\\in\\mathbb{F}_p\\setminus\\{0\\}\\}S={x2∣x∈Fp​∖{0}} とすることで\nλj=12(−1+∑x∈Z/pZe2πijx2/p) \\lambda_j=\\frac12\\left(-1+\\sum_{x\\in \\mathbb{Z}/p\\mathbb{Z}}e^{2\\pi ijx^2/p}\\right) λj​=21​​−1+x∈Z/pZ∑​e2πijx2/p​となります。j=0j=0j=0 のときは明らかに p−12\\frac{p-1}{2}2p−1​ です。そうでないときに内側の和\nG=∑x∈Z/pZe2πijx2/p G=\\sum_{x\\in \\mathbb{Z}/p\\mathbb{Z}}e^{2\\pi ijx^2/p} G=x∈Z/pZ∑​e2πijx2/pを考えましょう。絶対値の 2 乗を計算します。\n∣G∣2=∑x,y∈Z/pZe2πij((x+y)2−x2)/p=∑x,y∈Z/pZe2πij(2xy+y2)/p |G|^2=\\sum_{x,y\\in\\mathbb{Z}/p\\mathbb{Z}}e^{2\\pi ij((x+y)^2-x^2)/p}=\\sum_{x,y\\in\\mathbb{Z}/p\\mathbb{Z}}e^{2\\pi ij(2xy+y^2)/p} ∣G∣2=x,y∈Z/pZ∑​e2πij((x+y)2−x2)/p=x,y∈Z/pZ∑​e2πij(2xy+y2)/pいま\n∑x∈Z/pZe2πij(2xy+y2)/p={p(y=0)0(y≠0) \\sum_{x\\in\\mathbb{Z}/p\\mathbb{Z}}e^{2\\pi ij(2xy+y^2)/p}=\\begin{cases} p \u0026amp; (y=0) \\\\ 0 \u0026amp; (y\\ne 0) \\end{cases} x∈Z/pZ∑​e2πij(2xy+y2)/p={p0​(y=0)(y=0)​なので、∣G∣2=p|G|^2=p∣G∣2=p であることがわかりました。λj\\lambda_jλj​ は対称行列の固有値なので実数であり、したがって GGG も実数です。よって j≠0j\\ne 0j=0 のときは固有値は −1±p2\\frac{-1\\pm\\sqrt{p}}{2}2−1±p​​ のいずれかであることがわかりました。\nGGG はガウス和と呼ばれています。\nスペクトルグラフ理論では隣接行列の固有値からグラフの性質を調べると述べました。固有値を求めたので、Paley グラフの性質を調べることができます。例えば Paley グラフは quasirandom であることがわかります。quasirandom グラフについては別の記事で扱いたいです。\n小さいグラフをすべて含むこと # Paley グラフは次の性質を持つことが知られています。\n各 rrr に対して、ppp を十分大きい素数とすると、Paley グラフはすべての頂点数 rrr のグラフを誘導部分グラフとして含む。 特に部分グラフとしても含みます。\n証明は rrr についての帰納法で行います。r=1r=1r=1 は明らかなので、r≥2r\\ge 2r≥2 とします。HHH を rrr 頂点のグラフ、vvv を頂点の 1 つとします。HHH から vvv を除いたグラフは r−1r-1r−1 頂点なので、帰納法の仮定より Paley グラフに誘導部分グラフとして含まれます。この誘導部分グラフを H′H\u0026#x27;H′ とします。HHH と同型な誘導部分グラフが存在することを示すには、H′H\u0026#x27;H′ に Paley グラフの 1 頂点を加え、HHH と同型にすればよいです。どの頂点を加えればよいでしょうか。次の問題が解ければよいです。\nppp を十分大きくすると、Paley グラフの r−1r-1r−1 個の頂点およびそれらの色（白または黒）をどのように指定しても、ある頂点 vvv であって白い頂点の間には辺があり、黒い頂点との間には辺がないようなものが存在するようにできる。 ここで今更ですが平方剰余の基本的な記号であるルジャンドルの記号を導入します。\n(ap)={0(a=0)+1(∃x∈Fp∖{0},a=x2)−1(otherwise) \\left(\\frac{a}{p}\\right)=\\begin{cases} 0 \u0026amp; (a=0) \\\\ +1 \u0026amp; (\\exists x\\in\\mathbb{F}_p\\setminus\\{0\\}, a=x^2) \\\\ -1 \u0026amp; (\\text{otherwise}) \\end{cases} (pa​)=⎩⎨⎧​0+1−1​(a=0)(∃x∈Fp​∖{0},a=x2)(otherwise)​オイラーの規準によると\n(ap)=a(p−1)/2 \\left(\\frac{a}{p}\\right)=a^{(p-1)/2} (pa​)=a(p−1)/2です。\nさて、r−1r-1r−1 個の頂点のうち白い頂点の集合を AAA、黒い頂点の集合を BBB とします。x∈Fpx\\in\\mathbb{F}_px∈Fp​ に対して\nf(x)=∏a∈A(1+(x−ap))∏b∈B(1−(x−bp)) f(x)=\\prod_{a\\in A}\\left(1+\\left(\\frac{x-a}{p}\\right)\\right)\\prod_{b\\in B}\\left(1-\\left(\\frac{x-b}{p}\\right)\\right) f(x)=a∈A∏​(1+(px−a​))b∈B∏​(1−(px−b​))とおきます。もし x∉A∪Bx\\not\\in A\\cup Bx∈A∪B かつ xxx と白い頂点の間に辺が存在し、xxx と黒い頂点の間に辺が存在しないならば、f(x)=2r−1f(x)=2^{r-1}f(x)=2r−1 となります。x∉A∪Bx\\not\\in A\\cup Bx∈A∪B だがこの条件をみたさないときは f(x)=0f(x)=0f(x)=0 です。よって条件を満たす頂点が存在することを示すためには\n∑x∉A∪Bf(x)\u0026gt;0 \\sum_{x\\not\\in A\\cup B}f(x)\u0026gt;0 x∈A∪B∑​f(x)\u0026gt;0を示せばよいです。ここで x∈A∪Bx\\in A\\cup Bx∈A∪B のときは f(x)f(x)f(x) は 0 または 2r−22^{r-2}2r−2 なので\n∑x∉A∪Bf(x)≥∑x∈Fpf(x)−(r−1)2r−2 \\sum_{x\\not\\in A\\cup B}f(x)\\ge \\sum_{x\\in\\mathbb{F}_p}f(x)-(r-1)2^{r-2} x∈A∪B∑​f(x)≥x∈Fp​∑​f(x)−(r−1)2r−2です。f(x)f(x)f(x) を展開すると\nf(x)=∑S⊆A∪B(−1)∣S∩B∣(gS(x)p) f(x)=\\sum_{S\\subseteq A\\cup B}(-1)^{|S\\cap B|}\\left(\\frac{g_S(x)}{p}\\right) f(x)=S⊆A∪B∑​(−1)∣S∩B∣(pgS​(x)​)ここで gS(x)=∏s∈S(x−s)g_S(x)=\\prod_{s\\in S}(x-s)gS​(x)=∏s∈S​(x−s) とおきました。よって\n∑x∉A∪Bf(x)≥∑S⊆A∪B(−1)∣S∩B∣∑x∈Fp(gS(x)p)−(r−1)2r−2 \\sum_{x\\not\\in A\\cup B}f(x)\\ge \\sum_{S\\subseteq A\\cup B}(-1)^{|S\\cap B|}\\sum_{x\\in\\mathbb{F}_p}\\left(\\frac{g_S(x)}{p}\\right)-(r-1)2^{r-2} x∈A∪B∑​f(x)≥S⊆A∪B∑​(−1)∣S∩B∣x∈Fp​∑​(pgS​(x)​)−(r−1)2r−2となります。内側の和\n∑x∈Fp(gS(x)p) \\sum_{x\\in\\mathbb{F}_p}\\left(\\frac{g_S(x)}{p}\\right) x∈Fp​∑​(pgS​(x)​)を考えます。S=∅S=\\emptysetS=∅ のときこれは ppp です。\ngS(x)g_S(x)gS​(x) が平方剰余かを考えることは、方程式 y2=gS(x)y^2=g_S(x)y2=gS​(x) を考えることになります。これを有限体上の代数曲線だと思い、（無限遠点を含めた）通る点の個数を NSN_SNS​ とおきます。すると\nNS=1+∑x∈Fp[(gS(x)p)+1] N_S=1+\\sum_{x\\in\\mathbb{F}_p}\\left[\\left(\\frac{g_S(x)}{p}\\right)+1\\right] NS​=1+x∈Fp​∑​[(pgS​(x)​)+1]となります。もし y2=gS(x)y^2=g_S(x)y2=gS​(x) が楕円曲線のとき、ハッセの定理から\n∣∑x∈Fp(gS(x)p)∣=∣NS−(p+1)∣≤2p \\left|\\sum_{x\\in\\mathbb{F}_p}\\left(\\frac{g_S(x)}{p}\\right)\\right|=|N_S-(p+1)|\\le 2\\sqrt{p} ​x∈Fp​∑​(pgS​(x)​)​=∣NS​−(p+1)∣≤2p​が成り立ちます。一般の場合、ハッセ・ヴェイユ境界から似たような式が得られます（たぶん）。余談ですがこれはある種のリーマン予想から従うそうです。\n以上より\n∑x∉A∪Bf(x)≥p−(何か)p−(r−1)2r−2 \\sum_{x\\not\\in A\\cup B}f(x)\\ge p-(\\text{何か})\\sqrt{p}-(r-1)2^{r-2} x∈A∪B∑​f(x)≥p−(何か)p​−(r−1)2r−2となるので、ppp を十分大きくすればこの値は正になります。\nおわりに # グラフ理論と整数論の合わせ技ということで、様々な分野の話題が出てきましたね。複数の分野が交わる部分は面白いです。\n代数曲線のことはほとんど知らないのでぜひ教えてください。\n今後も月刊組合せ論 Natori では組合せ論の面白そうなトピックを紹介していくので、応援のほどよろしくお願いします！\n参考文献 # Bollobas, Bela; Thomason, Andrew. Graphs which contain all small graphs. Eur. J. Comb. 2, 13-15 (1981). Zhao, Yufei. Graph theory and additive combinatorics. Cambridge University Press. (2023). ","date":"2025-09-01","externalUrl":null,"permalink":"/natori/202509/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は Paley グラフを扱います。\n","title":"【月刊組合せ論 Natori】グラフ理論と整数論の合わせ技：Paley グラフ【2025 年 9 月号】","type":"natori"},{"content":" お屋敷 # 素子 わたくしのお屋敷へお越しくださりありがとうございます。\n桜子 い、いつ見ても、立派ですね……。\n静香 お昼寝したら、気持ちよさそう～……。\n芽衣 うお～！すげー家だな！高いものいっぱいありそうだ！\n証明の鑑賞会 # 素子 わたくしのお屋敷に皆様を招待した理由、それは証明の鑑賞会をするためです。\n静香 鑑賞会～？\n素子 皆様もご存じの通り、数学では証明が大切です。1 つの定理を証明するのに複数の証明方法があることも多々あります。ある証明は新たな数学の萌芽となり、またある証明はエレガント。このように、同じ定理の証明でも見せる表情はさまざまです。ですから、証明の鑑賞はとても有意義なものだと考えました。\n芽衣 なるほどな～。\n素子 本日は初回ですから、さまざまな証明が知られている代数学の基本定理を証明いたしましょう。皆様にも証明のご持参をお願いしましたが、準備は万端ですか？\n桜子 お、面白い証明を持ってきました……。\n素子の証明 # それでは、まずは発案者であるわたくしから発表いたします。\n代数学の基本定理とは、複素数係数の nnn 次多項式 P(x)=anxn+⋯+a1x+a0P(x)=a_nx^n+\\cdots+a_1x+a_0P(x)=an​xn+⋯+a1​x+a0​ は必ず複素数の根をもつという定理です。\nこの定理を複素解析を用いて証明いたします。こちらの証明は有名なものだと思われます。\nまずはリュービルの定理について復習いたしましょう。リュービルの定理というのは、有界な整関数は定数であるというものでした。\n証明は背理法で行います。P(z)=0P(z)=0P(z)=0 が解をもたないと仮定しましょう。すると、1P(z)\\frac{1}{P(z)}P(z)1​ は整関数になります。そして\n1∣P(z)∣=1∣z∣n1∣an+an−11z+⋯+a01zn∣→0(n→∞) \\frac{1}{|P(z)|}=\\frac{1}{|z|^n}\\frac{1}{|a_n+a_{n-1}\\frac{1}{z}+\\cdots+a_0\\frac{1}{z^n}|}\\to 0 \\quad (n\\to\\infty) ∣P(z)∣1​=∣z∣n1​∣an​+an−1​z1​+⋯+a0​zn1​∣1​→0(n→∞)となりますから、1P(z)\\frac{1}{P(z)}P(z)1​ は有界です。するとリュービルの定理よりこれは定数ということになってしまいます。\nこれで証明は完了です。\n静香 わたしもはじめて知った証明がこれだったな～。\n素子 わたくし、この証明を初めて見たときは感動しました。代数学の基本定理が複素解析で証明できることは当時は不思議でした。\n静香 まあ、複素数体に関する定理だから、複素解析が出てくるのは不思議じゃないけどね～。\n桜子 むしろ、代数的証明が存在しない、とも言われるくらいですからね……。\n芽衣 そうなのか！？オレの持ってきた証明は代数的なつもりだけど。\n素子 そうなのですね。それでは、次は芽衣さん、発表をお願いします。\n芽衣の証明 # オレは線形代数を使う証明を持ってきたぜ！\n代数学の基本定理は、複素数成分の正方行列が必ず複素数の固有値をもつってことと同値になる！だからこれを示す！\nまずは nnn を奇数とする。Hn\\mathcal{H}_nHn​ を M=M∗M=M^*M=M∗ をみたす nnn 次行列、つまりエルミート行列の集合とする！M∗M^*M∗は共役転置だ。Hn\\mathcal{H}_nHn​ は実線形空間で、n2n^2n2 次元だってことがわかる。つまり奇数次元だ。\n行列 CCC は\nC=C+C∗2+iC−C∗2i C=\\frac{C+C^*}{2}+i\\frac{C-C^*}{2i} C=2C+C∗​+i2iC−C∗​の形に書けて、(C+C∗)/2(C+C^*)/2(C+C∗)/2 と (C−C∗)/(2i)(C-C^*)/(2i)(C−C∗)/(2i) はエルミート行列だ。AAA を nnn 次行列として、Hn\\mathcal{H}_nHn​ から Hn\\mathcal{H}_nHn​ への線形写像 f1,f2f_1,f_2f1​,f2​ を\nf1(B)=AB+BA∗2,f2(B)=AB−BA∗2i f_1(B)=\\frac{AB+BA^*}{2}, f_2(B)=\\frac{AB-BA^*}{2i} f1​(B)=2AB+BA∗​,f2​(B)=2iAB−BA∗​と定める！B∈HnB\\in\\mathcal{H}_nB∈Hn​ だから (AB)∗=B∗A∗=BA∗(AB)^*=B^*A^*=BA^*(AB)∗=B∗A∗=BA∗ だ。そうすると、f1∘f2=f2∘f1f_1\\circ f_2=f_2\\circ f_1f1​∘f2​=f2​∘f1​ が成り立つ！\nここで、f1,f2 ⁣:V→Vf_1,f_2\\colon V\\to Vf1​,f2​:V→V がこれをみたして、VVV が奇数次元の実線形空間なら、f1,f2f_1,f_2f1​,f2​ は共通の固有ベクトルをもつことが帰納法で示せる！\nだからある BBB が存在して f1(B)=λ1B,f2(B)=λ2Bf_1(B)=\\lambda_1B, f_2(B)=\\lambda_2Bf1​(B)=λ1​B,f2​(B)=λ2​B になる。よって AB=(λ1+iλ2)BAB=(\\lambda_1+i\\lambda_2)BAB=(λ1​+iλ2​)B になる！これは λ1+iλ2\\lambda_1+i\\lambda_2λ1​+iλ2​ が AAA の固有値であるってことだ！\nこれで奇数次元の場合ができた！一般の次元の場合は 2 で割れる回数の帰納法で示せるらしい！\n素子 証明はおそらく正しいのでしょうけど、ずいぶん省略しましたね。\n芽衣 すまん、難しいこと考えるのは得意じゃないんだ。\n静香 たぶんだけど、奇数次の実行列が固有値をもつことを使うよね？それはどうやって証明するのかな～？\n芽衣 それは固有多項式が奇数次の実数係数多項式になるから明らかだ！この多項式は根をもつからな！\n静香 そこで中間値の定理を使ってるね～。\n芽衣 なに！？間違ってるのか！？\n素子 間違いではありませんが、解析的な議論を含むということですね。\n桜子 どれだけ代数的に証明しようと思っても、中間値の定理は避けられないみたいですね……。\n芽衣 そっかあ。で、次は誰が発表するんだ？\n静香 ねむくなってきたから、寝ちゃう前にわたしが発表するね～。\n素子 では、よろしくお願いします。\n登場人物紹介 # 主晴素子（おもはれ　もとこ）。いわゆるお嬢様。家庭の影響で美術品に興味を持っていたが、数学の証明も似たようなものであることに気がつき、証明の鑑賞会をするようになった。\n","date":"2025-08-27","externalUrl":null,"permalink":"/novels/elegant-teatime/1/","section":"おはなし一覧","summary":"お屋敷 # 素子 わたくしのお屋敷へお越しくださりありがとうございます。\n","title":"【elegant teatime】代数学の基本定理 (1) 【第 1 話】","type":"novels"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はフック長公式の q 類似を扱います。\n7 月はヤング図形強化月間としていたので、ヤング図形に関する文献をたくさん読んでいました。やはりヤング図形はいいですね。\nフック長公式（復習） # フック長公式は以下の記事で解説しています。\n【月刊組合せ論 Natori】フック長公式【2023 年 5 月号】\nヤング図形 λ\\lambdaλ に対する標準ヤングタブローとは、λ\\lambdaλ の各マスに 1,2,…,n1,2,\\ldots,n1,2,…,n (n=∣λ∣n=|\\lambda|n=∣λ∣) を書き込んだものであって、各行・各列について単調増加となるものです。\nλ\\lambdaλ 上の標準ヤングタブローの個数 fλf^{\\lambda}fλ は次の公式で表せることが知られています。これをフック長公式といいます。\nfλ=n!∏□∈λhλ(□) f^{\\lambda}=\\frac{n!}{\\prod_{\\square\\in\\lambda} h_{\\lambda}(\\square)} fλ=∏□∈λ​hλ​(□)n!​ここで hλ(□)h_{\\lambda}(\\square)hλ​(□) はマス □\\square□ に対するフック長です。\nq 類似を考える # 正整数 nnn の qqq 類似は [n]q=1−qn1−q[n]_q=\\frac{1-q^n}{1-q}[n]q​=1−q1−qn​ で、階乗 n!n!n! の qqq 類似は [n]q!=[1]q[2]q⋯[n]q[n]_q!=[1]_q[2]_q\\cdots [n]_q[n]q​!=[1]q​[2]q​⋯[n]q​ です。q→1q\\to 1q→1 の極限で元に戻るようなものを qqq 類似といいます。\n順列の場合、転倒数や major index といった statistics があります。これらを用いた母関数を考えると\n∑p∈Snqinv(p)=∑p∈Snqmaj(p)=[n]q! \\sum_{p\\in S_n}q^{\\mathrm{inv}(p)}=\\sum_{p\\in S_n}q^{\\mathrm{maj}(p)}=[n]_q! p∈Sn​∑​qinv(p)=p∈Sn​∑​qmaj(p)=[n]q​!が成り立ちます。このように、qqq 類似はある量を用いて数え上げを精密化すること、と捉えることもできます。\n以下の記事もご覧ください。\n【月刊組合せ論 Natori】Mahonian statistics【2024 年 10 月号】\nタブローの statistics # タブローの statistics を 2 つ紹介します。\nまず、タブロー TTT の降下点集合 Des(T)\\mathrm{Des}(T)Des(T) を、iii が書かれたマスが i+1i+1i+1 が書かれたマスより上の行にあるような iii の集合とします。例えば\nの場合、降下点集合は {2,3,6,8}\\{2,3,6,8\\}{2,3,6,8} です。\nそして maj(T)=∑i∈Des(T)i\\mathrm{maj}(T)=\\sum_{i\\in\\mathrm{Des}(T)}imaj(T)=∑i∈Des(T)​i と定義します。\n次に、タブロー TTT の転倒集合を、i\u0026lt;ji\u0026lt;ji\u0026lt;j かつ jjj が書かれたマスが iii が書かれたマスの左下（同じ行・列はダメ）にあるような (i,j)(i,j)(i,j) の組からなる集合とします。そして inv(T)\\mathrm{inv}(T)inv(T) を転倒集合の要素数とします。\nいよいよ、qqq 類似を考えます。つまり\n∑T∈SYT(λ)qmaj(T)∑T∈SYT(λ)qinv(T) \\begin{gather*} \\sum_{T\\in\\mathrm{SYT}(\\lambda)}q^{\\mathrm{maj}(T)} \\\\ \\sum_{T\\in\\mathrm{SYT}(\\lambda)}q^{\\mathrm{inv}(T)} \\end{gather*} T∈SYT(λ)∑​qmaj(T)T∈SYT(λ)∑​qinv(T)​を考えます。順列の場合と異なり、この 2 つは異なります。\nよい公式は maj の場合しか知られていないそうです。\n定理: b(λ)=∑i(i−1)λib(\\lambda)=\\sum_i (i-1)\\lambda_ib(λ)=∑i​(i−1)λi​ とおくと\n∑T∈SYT(λ)qmaj(T)=qb(λ)[n]q!∏□∈λ[hλ(□)]q \\sum_{T\\in\\mathrm{SYT}(\\lambda)}q^{\\mathrm{maj}(T)}=\\frac{q^{b(\\lambda)}[n]_q!}{\\prod_{\\square\\in\\lambda}[h_{\\lambda}(\\square)]_q} T∈SYT(λ)∑​qmaj(T)=∏□∈λ​[hλ​(□)]q​qb(λ)[n]q​!​が成り立つ。\n証明の鍵となるのは、シューア関数と fundamental quasisymmetric function (Gessel quasisymmetric function ともいう) です。SSS を {1,2,…,n−1}\\{1,2,\\ldots,n-1\\}{1,2,…,n−1} の部分集合としたとき\nLS=∑i1≤i2≤⋯≤inij\u0026lt;ij+1 if j∈Sxi1xi2⋯xin L_S=\\sum_{\\substack{i_1\\le i_2\\le\\cdots\\le i_n \\\\ i_j\u0026lt;i_{j+1} \\text{ if } j\\in S}}x_{i_1}x_{i_2}\\cdots x_{i_n} LS​=i1​≤i2​≤⋯≤in​ij​\u0026lt;ij+1​ if j∈S​∑​xi1​​xi2​​⋯xin​​を fundamental quasisymmetric function といいます。このとき\nsλ=∑T∈SYT(λ)LDes(T) s_{\\lambda}=\\sum_{T\\in \\mathrm{SYT}(\\lambda)}L_{\\mathrm{Des}(T)} sλ​=T∈SYT(λ)∑​LDes(T)​が成り立ちます。この式は今回は認めることにします。いつかこの式を解説する記事を書くかもしれません。\n特殊値を計算しましょう。\nLS(1,q,q2,…)=∑q(i1−1)+(i2−1)+⋯+(in−1) L_S(1,q,q^2,\\ldots)=\\sum q^{(i_1-1)+(i_2-1)+\\cdots+(i_n-1)} LS​(1,q,q2,…)=∑q(i1​−1)+(i2​−1)+⋯+(in​−1)を計算します。例えば S={1,3}S=\\{1,3\\}S={1,3} のとき i1\u0026lt;i2≤i3\u0026lt;i4i_1\u0026lt;i_2\\le i_3\u0026lt;i_4i1​\u0026lt;i2​≤i3​\u0026lt;i4​ なので、r1=i1−1,r2=i2−2,r3=i3−2,r4=i4−3r_1=i_1-1, r_2=i_2-2, r_3=i_3-2, r_4=i_4-3r1​=i1​−1,r2​=i2​−2,r3​=i3​−2,r4​=i4​−3 とおけば 0≤r1≤r2≤r3≤r40\\le r_1\\le r_2\\le r_3\\le r_40≤r1​≤r2​≤r3​≤r4​ となります。このように j∈Sj\\in Sj∈S か j∉Sj\\not\\in Sj∈S かで場合分けして rjr_jrj​ を iji_jij​ からいくらか引いた値とすれば\nLS(1,q,q2,…)=∑0≤r1≤r2≤⋯≤rnqr1+⋯+rn+e(S) L_S(1,q,q^2,\\ldots)=\\sum_{0\\le r_1\\le r_2\\le\\cdots\\le r_n} q^{r_1+\\cdots+r_n+e(S)} LS​(1,q,q2,…)=0≤r1​≤r2​≤⋯≤rn​∑​qr1​+⋯+rn​+e(S)となります。ここで e(S)=∑j∈S(n−j)e(S)=\\sum_{j\\in S}(n-j)e(S)=∑j∈S​(n−j) です。分割数の母関数を考えるのと同様にして\nLS(1,q,q2,…)=qe(S)(1−q)(1−q2)⋯(1−qn) L_S(1,q,q^2,\\ldots)=\\frac{q^{e(S)}}{(1-q)(1-q^2)\\cdots(1-q^n)} LS​(1,q,q2,…)=(1−q)(1−q2)⋯(1−qn)qe(S)​がわかります。これを先ほどの等式に代入すると\nsλ(1,q,q2,⋯ )=∑T∈SYT(λ)qcomaj(T)(1−q)(1−q2)⋯(1−qn) s_{\\lambda}(1,q,q^2,\\cdots)=\\frac{\\sum_{T\\in \\mathrm{SYT}(\\lambda)}q^{\\mathrm{comaj}(T)}}{(1-q)(1-q^2)\\cdots(1-q^n)} sλ​(1,q,q2,⋯)=(1−q)(1−q2)⋯(1−qn)∑T∈SYT(λ)​qcomaj(T)​が得られます。ここで comaj(T)=∑j∈Des(T)(n−j)\\mathrm{comaj}(T)=\\sum_{j\\in\\mathrm{Des}(T)}(n-j)comaj(T)=∑j∈Des(T)​(n−j) です。\n左辺を別の方法で計算します。以下の記事の結果を用います。\n【月刊組合せ論 Natori】半標準ヤングタブローの個数【2024 年 5 月号】\n次の公式を証明していました。\nsλ(1,q,q2,…,qn−1)=∏1≤i\u0026lt;j≤nqλj+n−j−qλi+n−iqi−1−qj−1 s_{\\lambda}(1,q,q^2,\\ldots,q^{n-1})=\\prod_{1\\le i\u0026lt;j\\le n}\\frac{q^{\\lambda_j+n-j}-q^{\\lambda_i+n-i}}{q^{i-1}-q^{j-1}} sλ​(1,q,q2,…,qn−1)=1≤i\u0026lt;j≤n∏​qi−1−qj−1qλj​+n−j−qλi​+n−i​上記の記事では q→1q\\to 1q→1 の極限をとってからフック容量公式を導いていましたが、極限をとらずに同様の計算を行うことで\nsλ(1,q,q2,…,qn−1)=qb(λ)∏□∈λ[n+c(□)]q[hλ(□)]q s_{\\lambda}(1,q,q^2,\\ldots,q^{n-1})=q^{b(\\lambda)}\\prod_{\\square\\in\\lambda}\\frac{[n+c(\\square)]_q}{[h_{\\lambda}(\\square)]_q} sλ​(1,q,q2,…,qn−1)=qb(λ)□∈λ∏​[hλ​(□)]q​[n+c(□)]q​​がわかります。いま n→∞n\\to\\inftyn→∞ とすると、(1−qn+c(□))→1(1-q^{n+c(\\square)})\\to 1(1−qn+c(□))→1 となることから\nsλ(1,q,q2,…)=qb(λ)∏□∈λ1(1−q)[hλ(□)]q s_{\\lambda}(1,q,q^2,\\ldots)=q^{b(\\lambda)}\\prod_{\\square\\in\\lambda}\\frac{1}{(1-q)[h_{\\lambda}(\\square)]_q} sλ​(1,q,q2,…)=qb(λ)□∈λ∏​(1−q)[hλ​(□)]q​1​となります。2 つの式を合わせることで\n∑T∈SYT(λ)qcomaj(T)=qb(λ)[n]q!∏□∈λ[hλ(□)]q \\sum_{T\\in\\mathrm{SYT}(\\lambda)}q^{\\mathrm{comaj}(T)}=\\frac{q^{b(\\lambda)}[n]_q!}{\\prod_{\\square\\in\\lambda}[h_{\\lambda}(\\square)]_q} T∈SYT(λ)∑​qcomaj(T)=∏□∈λ​[hλ​(□)]q​qb(λ)[n]q​!​が得られました。最後に maj と comaj の分布が等しいことを示します。これは、標準ヤングタブロー TTT の降下点集合が Des(T)={d1,…,dk}\\mathrm{Des}(T)=\\{d_1,\\ldots,d_k\\}Des(T)={d1​,…,dk​} であるとき、Des(T∗)={n−dk,…,n−d1}\\mathrm{Des}(T^*)=\\{n-d_k,\\ldots,n-d_1\\}Des(T∗)={n−dk​,…,n−d1​} となるようなタブロー T∗T^*T∗ を対応させることができればよいです。\nここで登場するのが、evacuation という全単射です。これは標準ヤングタブロー TTT が与えられたとき、次のようにして新たなタブローを出力するものです。\nTTT の各成分 iii を n+1−in+1-in+1−i に置き換える。 180°回転する。 スライド操作により標準ヤングタブローにする。 ここでスライド操作とは、次の 2 種類の操作です。英語の文献では jeu de taquin と呼ばれています。\n操作によって単調増加性は保たれています。これを繰り返すことで歪ヤングタブローから通常のヤングタブローを得ることができます。得られるタブローはスライド操作を行う順番によらないことが知られています。\nevacuation の例を載せます。\n1, 2 の操作で降下点集合が {n−dk,…,n−d1}\\{n-d_k,\\ldots,n-d_1\\}{n−dk​,…,n−d1​} になり、3 の操作では降下点集合は不変なので、evacuation が条件を満たすことがわかります。なお二回 evacuation を行うと元に戻ることから、全単射であることもわかります。\nよって maj と comaj の分布が等しいことがわかり\n∑T∈SYT(λ)qmaj(T)=qb(λ)[n]q!∏□∈λ[hλ(□)]q \\sum_{T\\in\\mathrm{SYT}(\\lambda)}q^{\\mathrm{maj}(T)}=\\frac{q^{b(\\lambda)}[n]_q!}{\\prod_{\\square\\in\\lambda}[h_{\\lambda}(\\square)]_q} T∈SYT(λ)∑​qmaj(T)=∏□∈λ​[hλ​(□)]q​qb(λ)[n]q​!​が示されました。\nq フックウォーク # フック長公式の記事ではフックウォークを用いて公式を証明しました。qqq 類似も qqq フックウォークと呼ばれるものを用いて証明できるようです。詳しくは Kerov の論文をご覧ください。\n成瀬のフック長公式の q 類似 # 記念すべき Natori の初回では成瀬のフック長公式を紹介しました。\n【月刊組合せ論 Natori】EDPC-T Permutation を深掘り【2022 年 9 月号】\nこれは歪ヤング図形 λ/μ\\lambda/\\muλ/μ 上の標準タブローの個数を求める公式で、次のようなものでした。\nfλ/μ=∣n∣!∑E∈E∏□∈λ∖E1hλ(□) f^{\\lambda/\\mu}=|n|!\\sum_{E\\in\\mathcal{E}}\\prod_{\\square\\in\\lambda\\setminus E}\\frac{1}{h_{\\lambda}(\\square)} fλ/μ=∣n∣!E∈E∑​□∈λ∖E∏​hλ​(□)1​ここで n=∣λ/μ∣n=|\\lambda/\\mu|n=∣λ/μ∣ であり、E\\mathcal{E}E は λ/μ\\lambda/\\muλ/μ 上の excited diagrams の集合です。\nこの式の qqq 類似を考えます。まず、今回 fact として認めた式は歪ヤング図形でも成り立ちます。\nsλ/μ=∑T∈SYT(λ/μ)LDes(T) s_{\\lambda/\\mu}=\\sum_{T\\in \\mathrm{SYT}(\\lambda/\\mu)}L_{\\mathrm{Des}(T)} sλ/μ​=T∈SYT(λ/μ)∑​LDes(T)​同様の計算で\nsλ/μ(1,q,q2,…)=∑T∈SYT(λ/μ)qmaj(T)(1−q)(1−q2)⋯(1−qn) s_{\\lambda/\\mu}(1,q,q^2,\\ldots)=\\frac{\\sum_{T\\in\\mathrm{SYT}(\\lambda/\\mu)}q^{\\mathrm{maj}(T)}}{(1-q)(1-q^2)\\cdots(1-q^n)} sλ/μ​(1,q,q2,…)=(1−q)(1−q2)⋯(1−qn)∑T∈SYT(λ/μ)​qmaj(T)​がわかります。シューア関数については次の式が成り立つことが知られています。\nsλ/μ(1,q,q2,…)=∑E∈E∏(i,j)∈λ∖Eqλj′−i1−qhλ(i,j) s_{\\lambda/\\mu}(1,q,q^2,\\ldots)=\\sum_{E\\in\\mathcal{E}}\\prod_{(i,j)\\in\\lambda\\setminus E}\\frac{q^{\\lambda\u0026#x27;_j-i}}{1-q^{h_{\\lambda}(i,j)}} sλ/μ​(1,q,q2,…)=E∈E∑​(i,j)∈λ∖E∏​1−qhλ​(i,j)qλj′​−i​以上より\n∑T∈SYT(λ/μ)qmaj(T)=[n]q!∑E∈E∏(i,j)∈λ∖Eqλj′−i[hλ(i,j)]q \\sum_{T\\in\\mathrm{SYT}(\\lambda/\\mu)}q^{\\mathrm{maj}(T)}=[n]_q!\\sum_{E\\in\\mathcal{E}}\\prod_{(i,j)\\in\\lambda\\setminus E}\\frac{q^{\\lambda_j\u0026#x27;-i}}{[h_{\\lambda}(i,j)]_q} T∈SYT(λ/μ)∑​qmaj(T)=[n]q​!E∈E∑​(i,j)∈λ∖E∏​[hλ​(i,j)]q​qλj′​−i​が成り立ちます。\n詳しくは Morales, Pak, Panova の論文をご覧ください。\nおわりに # ヤング図形強化月間ということでヤング図形に関する記事を書きました。過去記事を見返すと、ヤング図形の記事が多いですね。それだけ大好きな概念ということです。\nこれからも組合せ論の好きな概念を追いかけていきたいので、応援よろしくお願いします。\n参考文献 # Kerov, S. A q-analog of the hook walk algorithm for random Young tableaux. J. Algebr. Comb. 2, No. 4, 383-396 (1993). Morales, Alejandro H.; Pak, Igor; Panova, Greta. Hook formulas for skew shapes. I: q-analogues and bijections. J. Comb. Theory, Ser. A 154, 350-405 (2018). Stanley, Richard P. Enumerative combinatorics. Volume 2. Cambridge University Press. (1999). ","date":"2025-08-01","externalUrl":null,"permalink":"/natori/202508/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はフック長公式の q 類似を扱います。\n","title":"【月刊組合せ論 Natori】フック長公式の q 類似【2025 年 8 月号】","type":"natori"},{"content":"夏休みといえば自由研究ですね！\nというわけで私も研究っぽいことをしてみます。みなさんもやってみませんか？\n研究に終わりはないので、この記事も少しずつ更新されていく予定です。\nちなみに私はまだ夏休みではありません……。\n研究のはじまり # inversions tableaux とは、7 月 15 日に公開された以下のプレプリントにて定義された、新しい概念です。\nIlani Axelrod-Freed. Inversions Tableaux. arXiv:2507.11516 これはシューベルト多項式を記述する組合せ論的モデルの 1 つです。このようなモデルは過去の月刊組合せ論 Natori で紹介しています。\n【月刊組合せ論 Natori】シューベルト多項式の組合せ論的表示【2024 年 6 月号】\nこの記事内で紹介している Kohnert 図形が inversions tableaux と対応付けられるのではないか、と思ったのでこれを研究しました。\n定義 # まずは転倒タブロー (inversions tableaux) を定義します。まずは転倒図形を定義します。\nppp を (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列とします。ppp の転倒ペアとは 1≤i\u0026lt;j≤n1\\le i\u0026lt;j\\le n1≤i\u0026lt;j≤n かつ pi\u0026gt;pjp_i\u0026gt;p_jpi​\u0026gt;pj​ をみたす組 (i,j)(i,j)(i,j) です。転倒図形とは、各転倒ペア (i,j)(i,j)(i,j) に対して iii 行 jjj 列の位置に正方形のマスを置いた図形です。マスの個数は転倒数に等しいです。\n転倒タブローとは転倒図形のマスに数を書き込んだものであって次の条件を満たすものです。\ni\u0026lt;j\u0026lt;ki\u0026lt;j\u0026lt;ki\u0026lt;j\u0026lt;k に対して、a,b,ca,b,ca,b,c をそれぞれマス (i,j),(i,k),(j,k)(i,j),(i,k),(j,k)(i,j),(i,k),(j,k) にあるマスに書かれた数とする。このとき a≤b≤ca\\le b\\le ca≤b≤c または c≤b≤ac\\le b\\le ac≤b≤a が成り立つ。なお、(i,j),(j,k)(i,j),(j,k)(i,j),(j,k) にマスがあるとき (i,k)(i,k)(i,k) にもマスがある。 同じ列にある数は相異なる。 iii 行目の数は iii 以下。 下の例では p=215643p=215643p=215643 です。\n次に Kohnert 図形を定義します。上述の Natori にもあります。\n順列 ppp に対してその Rothe 図形を、n×nn\\times nn×n のマス目から iii 行目 pip_ipi​ 列目のマスを削除し、さらにそれらのマスの上または右にあるマスも削除して得られる図形です。\nKohnert 図形は Rothe 図形において、ある行の最も右端のマスを選び下に動かす（飛び越えてもよい）操作を好きな回数だけ行って得られる図形です。\n全単射の構成 # 転倒タブローと Kohnert 図形の間にウェイトを保つ全単射を構成します。\n転倒タブローが与えられたとき、新しいタブローの jjj 列目を転倒タブローの pjp_jpj​ 列目とすることで Rothe 図形に数が書き込まれたものになります。iii が書かれているマスを iii 行目に落とすことで、Kohnert 図形が得られます。\n全単射になっている、気がしていますが未証明です。\nposet 構造 # 転倒タブローが導入された動機は、chute move poset と呼ばれるものが lattice であることを示すためであるようです。これについては後続のプレプリントで証明されています。\nIlani Axelrod-Freed, Colin Defant, Hanna Mularczyk, Son Nguyen, Katherine Tung. Chute Move Posets are Lattices. arXiv:2507.13214 さらに後日、別の著者から別証明が投稿されました。\nSara C. Billey, Connor McCausland, Clare Minnerath. A Proof of Rubey\u0026rsquo;s Lattice Conjecture. arXiv:2507.18852 ところで、Kohnert 図形にも poset の構造が入ります。これについては lattice になるとは限らないようです。どのような違いがあるのでしょうか。\n2 つ目の文献から図を引用します。\nパイプドリームと転倒タブローの間の全単射は文献の中で述べられており、上述の全単射で Kohnert 図形を得ます。すると次のようになりました。\nおおむね Kohnert move と対応してそうですが、青い点線の部分が chute move poset にはないようです。\n今後の課題 # 本当に全単射か？そもそも well-defined か？ シューベルト多項式のモデルたちの間にはいろいろな全単射が知られている。これらは可換図式をなすか？これまでの全単射より簡単なものが得られるか？ bumpless pipe dream との関係はどうか？ Kohnert poset が lattice となるのはどのような場合か？Rothe 図形ならどうか？ ","date":"2025-07-21","externalUrl":null,"permalink":"/posts/inversions-tableaux/","section":"数学記事・PDF","summary":"夏休みといえば自由研究ですね！\n","title":"夏休みの自由研究：inversions tableaux について","type":"posts"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はグラフ除去補題を紹介します。\nグラフ除去補題とは # グラフ HHH の頂点数を v(H)v(H)v(H) とします。グラフ除去補題とは次の定理です。\n定理: 任意のグラフ HHH および任意の ε\u0026gt;0\\varepsilon\u0026gt;0ε\u0026gt;0 に対して、ある δ=δ(H,ε)\u0026gt;0\\delta=\\delta(H,\\varepsilon)\u0026gt;0δ=δ(H,ε)\u0026gt;0 が存在して、nnn 頂点グラフ GGG であって部分グラフとして現れる HHH の個数が高々 δnv(H)\\delta n^{v(H)}δnv(H) であるものは辺を高々 εn2\\varepsilon n^2εn2 個削除することで HHH をなくすことができる。 特に HHH が三角形 (3 頂点からなるサイクル) のときは、三角形除去補題と呼ばれます。\n定理: 任意の ε\u0026gt;0\\varepsilon\u0026gt;0ε\u0026gt;0 に対して、ある δ=δ(ε)\u0026gt;0\\delta=\\delta(\\varepsilon)\u0026gt;0δ=δ(ε)\u0026gt;0 が存在して、nnn 頂点グラフ GGG であって部分グラフとして現れる三角形の個数が高々 δn3\\delta n^3δn3 であるものは辺を高々 εn2\\varepsilon n^2εn2 個削除することで三角形をなくすことができる。 Roth の定理 # 三角形除去補題の有名な応用として Roth の定理があります。\n定理: A⊂{1,2,…,N}A\\subset \\{1,2,\\ldots,N\\}A⊂{1,2,…,N} が長さ 3 の等差数列を含まないならば、∣A∣=o(N)|A|=o(N)∣A∣=o(N) である。 整数論とグラフ理論が結びつくのは面白いですね。\nRoth の定理は長さ 3 の等差数列に関する定理ですが、長さを 3 以上の整数に一般化することができ、セメレディの定理と呼ばれています。セメレディの定理はハイパーグラフ除去補題を用いて証明することができます。\n素数からなる等差数列に関する有名なグリーン・タオの定理がありますが、セメレディの定理から導くことはできません (素数は密度が 0 なので)。しかしこの記事で述べる概念が大いに関わってきます。\n正則化補題とグラフ数え上げ補題 # グラフ除去補題を証明するカギとなるのは次の 2 つの補題です。\nセメレディの正則化補題 グラフ数え上げ補題 正則化補題は大雑把にいえば、大きなグラフは頂点集合をいくつかのパーツに分けることで、どの 2 つのパーツの間もランダムっぽくすることができるという命題です。ランダムっぽいという概念を定式化したものが ε\\varepsilonε 正則分割です。ざっくり見ていきましょう。\n立川志の輔さんと秋山仁さんの有名なエピソードで、大きな鍋に入った味噌汁の味見は少し飲むだけでできるが、統計も同じだといった趣旨のものがあります。よく混ざっていれば味の濃さは一定なので、少しでよいということですね。ランダムグラフでも、濃さが一定であることを期待します。\nU,WU,WU,W を頂点からなる集合、A⊆U,B⊆WA\\subseteq U, B\\subseteq WA⊆U,B⊆W を部分集合とします。A,BA,BA,B 間の濃さ、すなわち辺密度 d(A,B)d(A,B)d(A,B) を A,BA,BA,B 間の辺の個数を要素数の積 ∣A∣×∣B∣|A|\\times |B|∣A∣×∣B∣ で割った余りとします。これが全体の辺密度 d(U,W)d(U,W)d(U,W) とあまり変わらないことを期待します。もちろん A,BA,BA,B を一点集合にしてしまうと密度が 0 または 1 になってしまうので、A,BA,BA,B はある程度大きくしないといけません。\nいよいよ定義に移ります。(U,W)(U,W)(U,W) が ε\\varepsilonε 正則とは、∣A∣≥ε∣U∣,∣B∣≥ε∣W∣|A|\\ge \\varepsilon |U|, |B|\\ge \\varepsilon |W|∣A∣≥ε∣U∣,∣B∣≥ε∣W∣ をみたす任意の部分集合 A,BA,BA,B に対して ∣d(A,B)−d(U,W)∣≤ε|d(A,B)-d(U,W)|\\le \\varepsilon∣d(A,B)−d(U,W)∣≤ε をみたすことです。\n∣A∣≥ε∣U∣,∣B∣≥ε∣W∣|A|\\ge \\varepsilon |U|, |B|\\ge \\varepsilon |W|∣A∣≥ε∣U∣,∣B∣≥ε∣W∣ に現れる ε\\varepsilonε は A,BA,BA,B があまり小さくならないようにするために用いられ、∣d(A,B)−d(U,W)∣≤ε|d(A,B)-d(U,W)|\\le \\varepsilon∣d(A,B)−d(U,W)∣≤ε に現れる ε\\varepsilonε は辺密度の差が小さいことを表すために用いられます。2 つの役割は別ですが、別の記号を用いるメリットがあまりないので同じ記号を用いています。\n頂点集合の分割 V=V1⊔V2⊔⋯⊔VMV=V_1\\sqcup V_2\\sqcup\\cdots\\sqcup V_MV=V1​⊔V2​⊔⋯⊔VM​ において、各 (Vi,Vj)(V_i,V_j)(Vi​,Vj​) が ε\\varepsilonε 正則という状況を考えたいですが、この定義ではうまくいかないことが知られています。そこで一部は ε\\varepsilonε 正則でないことを許容します。それを正確に定義したものが ε\\varepsilonε 正則分割です。この記事では用いないので正確な定義は紹介しません。\n以上の準備のもとでセメレディの正則化補題を述べることができます。\n定理 (セメレディの正則化補題): 任意の ε\u0026gt;0\\varepsilon\u0026gt;0ε\u0026gt;0 に対して、ある MMM が存在して、任意のグラフは高々 MMM 個のパーツからなる ε\\varepsilonε 正則分割をもつ。 もう一つのカギであるグラフ数え上げ補題を紹介します。話を簡単にするため三角形数え上げ補題を紹介します。\n定理 (三角形数え上げ補題): X,Y,ZX,Y,ZX,Y,Z を頂点集合であって (X,Y),(X,Z),(Y,Z)(X,Y),(X,Z),(Y,Z)(X,Y),(X,Z),(Y,Z) が ε\\varepsilonε 正則であるものとする。d(X,Y),d(X,Z),d(Y,Z)≥2εd(X,Y),d(X,Z),d(Y,Z)\\ge 2\\varepsilond(X,Y),d(X,Z),d(Y,Z)≥2ε ならば\n∣{(x,y,z)∈X×Y×Z∣xyz は三角形}∣≥(1−2ε)(d(X,Y)−ε)(d(X,Z)−ε)(d(Y,Z)−ε)∣X∣∣Y∣∣Z∣ \\begin{gather*} |\\{(x,y,z)\\in X\\times Y\\times Z \\mid xyz \\text{ は三角形}\\}| \\\\ \\ge (1-2\\varepsilon)(d(X,Y)-\\varepsilon)(d(X,Z)-\\varepsilon)(d(Y,Z)-\\varepsilon)|X||Y||Z| \\end{gather*} ∣{(x,y,z)∈X×Y×Z∣xyz は三角形}∣≥(1−2ε)(d(X,Y)−ε)(d(X,Z)−ε)(d(Y,Z)−ε)∣X∣∣Y∣∣Z∣​が成り立つ。\nグラフ除去補題の証明の流れは次のようになります。\n正則化補題で頂点集合を分割する 性質の悪い辺を削除する（高々 εn2\\varepsilon n^2εn2 個） HHH が存在したと仮定して、グラフ数え上げ補題で HHH の個数が δnv(H)\\delta n^{v(H)}δnv(H) を超えることを示す bound # よく数学者は存在することだけ証明して満足すると言われがちですが、そうでない人もいます。\nグラフ除去補題において δ\\deltaδ が HHH や ε\\varepsilonε にどう依存するかを調べる研究も行われています。\nグラフ除去補題は正則化補題とグラフ数え上げ補題を用いて証明されていますが、正則化補題において次の結果が Gowers によって示されました。\nある c\u0026gt;0c\u0026gt;0c\u0026gt;0 が存在して、十分小さな任意の ε\u0026gt;0\\varepsilon\u0026gt;0ε\u0026gt;0 に対して、パーツの数が tower(⌈ε−c⌉)\\mathrm{tower}(\\lceil\\varepsilon^{-c}\\rceil)tower(⌈ε−c⌉) 以下であるような ε\\varepsilonε 正則分割をもたないようなグラフが存在する。 ここで tower(k)=22⋯2\\mathrm{tower}(k)=2^{2^{\\cdots^2}}tower(k)=22⋯2 (2 が kkk 個) なので、ε\\varepsilonε が小さくなるとパーツ数はとてつもなく大きくなることがわかります。この結果の簡単な証明は Moshkovitz と Shapira の論文にあります。\nMoshkovitz, Guy; Shapira, Asaf. A short proof of Gowers’ lower bound for the regularity lemma. Combinatorica 36, No. 2, 187-194 (2016). さて、グラフ除去補題の証明では正則化補題を使うので、グラフ除去補題における δ\\deltaδ も似たような大きさになります：\nδ−1=tower(ε−O(1)) \\delta^{-1}=\\mathrm{tower}(\\varepsilon^{-O(1)}) δ−1=tower(ε−O(1))ところが、Fox によるグラフ除去補題の別証明では δ\\deltaδ を次のようにとれることが示されました：\nδ−1=tower(O(log⁡(ε−1))) \\delta^{-1}=\\mathrm{tower}(O(\\log(\\varepsilon^{-1}))) δ−1=tower(O(log(ε−1)))これはずっと小さい値です。この事実は、セメレディの正則化補題はグラフ除去補題を証明するには強すぎる可能性を示唆しています。\n弱い正則化補題 # 正則化補題よりも弱い命題はいくつか知られています。\nFrieze-Kannan の弱正則化補題 Duke-Lefman-Rödl のシリンダー正則化補題 Fox の証明では Frieze-Kannan の弱正則化補題が用いられていますが、上で述べたグラフ除去補題の証明とは異なる流れです。\nここでは次の命題を紹介します。Alon, Fischer, Krivelevich, Szegedy の定理で、シリンダー正則化補題の亜種だそうです。\n定理 (★): 任意の ε\u0026gt;0\\varepsilon\u0026gt;0ε\u0026gt;0 および hhh に対して、ある S=S(ε,h)S=S(\\varepsilon,h)S=S(ε,h) が存在して、任意のグラフ GGG は equipartition {V1,…,Vk}\\{V_1,\\ldots,V_k\\}{V1​,…,Vk​} および部分集合 Wi⊆Vi (i=1,…,k)W_i\\subseteq V_i \\ (i=1,\\ldots,k)Wi​⊆Vi​ (i=1,…,k) であって次をみたすものをもつ。\n∑1≤i\u0026lt;j≤k∣d(Vi,Vj)−d(Wi,Wj)∣≤εk2\\sum_{1\\le i\u0026lt;j\\le k}|d(V_i,V_j)-d(W_i,W_j)|\\le \\varepsilon k^2∑1≤i\u0026lt;j≤k​∣d(Vi​,Vj​)−d(Wi​,Wj​)∣≤εk2 すべての組 (Wi,Wj)(W_i,W_j)(Wi​,Wj​) は εh\\varepsilon^hεh 正則 ∣Wi∣≥∣V(G)∣/S|W_i|\\ge |V(G)|/S∣Wi​∣≥∣V(G)∣/S ここで equipartition とは ∣∣Vi∣−∣Vj∣∣≤1||V_i|-|V_j||\\le 1∣∣Vi​∣−∣Vj​∣∣≤1 となる分割のことで、要するに均等な分割です。この記事では話を簡単にするために、各 ViV_iVi​ の要素数はちょうど ∣V(G)∣k\\frac{|V(G)|}{k}k∣V(G)∣​ とします。\nS(ε,h)S(\\varepsilon,h)S(ε,h) については次のような評価が知られています。\nGGG の辺密度が O(ε)O(\\varepsilon)O(ε) ならば、S(ε,h)≤tower(O(log⁡(ε−1)))S(\\varepsilon,h)\\le \\mathrm{tower}(O(\\log(\\varepsilon^{-1})))S(ε,h)≤tower(O(log(ε−1))) 残念ながら一般のグラフ GGG ではこの結果は得られません。ですが、Fox の結果を得るには辺密度が小さいグラフのみを考えればよいのです。\n証明 # 以上の話をまとめて、グラフ除去補題および Fox による評価を証明します。\n話を簡単にするために、三角形除去補題のみ証明します。一般のグラフ除去補題の証明は原論文をあたってください。\n正則化補題と評価 # 定理 (★)、およびそこに現れる SSS の評価（すなわち、GGG の辺密度が O(ε)O(\\varepsilon)O(ε) ならば、S(ε,h)≤tower(O(log⁡(ε−1)))S(\\varepsilon,h)\\le \\mathrm{tower}(O(\\log(\\varepsilon^{-1})))S(ε,h)≤tower(O(log(ε−1)))）については、Sapir, Shapira の論文を読んでください。（注意点として、論文では εh\\varepsilon^hεh 正則の部分が εh4h\\frac{\\varepsilon^h}{4h}4hεh​ 正則になっています）\n辺密度 O(ε)O(\\varepsilon)O(ε) のグラフに対する三角形除去補題 # GGG を nnn 頂点のグラフであって、辺密度 O(ε)O(\\varepsilon)O(ε)、三角形をなくすために少なくとも εn2\\varepsilon n^2εn2 辺の削除が必要であるとします。\n定理 (★) を ε2\\frac{\\varepsilon}{2}2ε​ として用いることで、equipartition {V1,…,Vk}\\{V_1,\\ldots,V_k\\}{V1​,…,Vk​} および部分集合 Wi⊆Vi (i=1,…,k)W_i\\subseteq V_i \\ (i=1,\\ldots,k)Wi​⊆Vi​ (i=1,…,k) であって次をみたすものをとることができます。\n∑1≤i\u0026lt;j≤k∣d(Vi,Vj)−d(Wi,Wj)∣≤ε2k2\\sum_{1\\le i\u0026lt;j\\le k}|d(V_i,V_j)-d(W_i,W_j)|\\le \\frac{\\varepsilon}{2} k^2∑1≤i\u0026lt;j≤k​∣d(Vi​,Vj​)−d(Wi​,Wj​)∣≤2ε​k2 すべての組 (Wi,Wj)(W_i,W_j)(Wi​,Wj​) は ε38\\frac{\\varepsilon^3}{8}8ε3​ 正則 ∣Wi∣≥∣V(G)∣/S|W_i|\\ge |V(G)|/S∣Wi​∣≥∣V(G)∣/S d(Wi,Wj)≤ε2d(W_i,W_j)\\le \\frac{\\varepsilon}{2}d(Wi​,Wj​)≤2ε​ をみたすような Vi,VjV_i,V_jVi​,Vj​ 間の辺を削除します。削除する辺の数は\n∑d(Vi,Vj)∣Vi∣∣Vj∣=n2k2∑d(Vi,Vj)≤n2k2(∑∣d(Vi,Vj)−d(Wi,Wj)∣+∑d(Wi,Wj))\u0026lt;n2k2(ε2k2+ε2k2)=εn2 \\begin{align*} \\sum d(V_i,V_j)|V_i||V_j| \u0026amp;= \\frac{n^2}{k^2}\\sum d(V_i,V_j) \\\\ \u0026amp;\\le \\frac{n^2}{k^2}\\left(\\sum|d(V_i,V_j)-d(W_i,W_j)|+\\sum d(W_i,W_j)\\right) \\\\ \u0026amp;\u0026lt; \\frac{n^2}{k^2}\\left(\\frac{\\varepsilon}{2}k^2+\\frac{\\varepsilon}{2}k^2\\right) \\\\ \u0026amp;= \\varepsilon n^2 \\end{align*} ∑d(Vi​,Vj​)∣Vi​∣∣Vj​∣​=k2n2​∑d(Vi​,Vj​)≤k2n2​(∑∣d(Vi​,Vj​)−d(Wi​,Wj​)∣+∑d(Wi​,Wj​))\u0026lt;k2n2​(2ε​k2+2ε​k2)=εn2​ここで和は d(Wi,Wj)≤ε2d(W_i,W_j)\\le \\frac{\\varepsilon}{2}d(Wi​,Wj​)≤2ε​ をみたす i≠ji\\ne ji=j 上をわたります。\n削除後のグラフに三角形が存在します。その頂点が Vi,Vj,VkV_i,V_j,V_kVi​,Vj​,Vk​ 上にあるとすると\nd(Wi,Wj),d(Wi,Wk),d(Wj,Wk)≥ε2≥ε34 d(W_i,W_j), d(W_i,W_k), d(W_j,W_k)\\ge \\frac{\\varepsilon}{2}\\ge \\frac{\\varepsilon^3}{4} d(Wi​,Wj​),d(Wi​,Wk​),d(Wj​,Wk​)≥2ε​≥4ε3​となります。三角形数え上げ補題を適用すると、三角形の個数は\n≥(1−ε34)(ε38)3n3S3 \\ge \\left(1-\\frac{\\varepsilon^3}{4}\\right)\\left(\\frac{\\varepsilon^3}{8}\\right)^3\\frac{n^3}{S^3} ≥(1−4ε3​)(8ε3​)3S3n3​となります。辺密度が O(ε)O(\\varepsilon)O(ε) より S≤tower(O(log⁡(ε−1)))S\\le \\mathrm{tower}(O(\\log(\\varepsilon^{-1})))S≤tower(O(log(ε−1))) が成り立つので、三角形の個数は\n≥n3/tower(O(log⁡(ε−1))) \\ge n^3/\\mathrm{tower}(O(\\log(\\varepsilon^{-1}))) ≥n3/tower(O(log(ε−1)))となり、Fox の評価が得られました。\n一般のグラフに対する三角形除去補題 # GGG を三角形をなくすために辺を εn2\\varepsilon n^2εn2 回以上削除しなければならないグラフとします。辺を共有しない三角形を最大で mmm 個選べるとします。mmm 個の三角形の三辺をすべて削除すれば GGG から三角形がなくなるので、3m≥εn23m\\ge \\varepsilon n^23m≥εn2 となります。εn2/3\\varepsilon n^2/3εn2/3 個の三角形からなる部分グラフを G′G\u0026#x27;G′ とします。すると辺密度が ε\\varepsilonε で、三角形をなくすために εn2/3\\varepsilon n^2/3εn2/3 回以上辺を削除する必要があります。よって上述の三角形除去補題が ε/3\\varepsilon/3ε/3 に対して適用可能です。G′G\u0026#x27;G′ に現れる三角形は GGG にも現れることを用いると、一般の場合の証明ができます。\nおわりに # セメレディの正則化補題はこの分野の中心的存在なので、別の記事でも扱うかもしれません。その際はより深掘りしたいと思っています。\nしばらく更新をおやすみしていた月刊組合せ論 Natori ですが、今月号から連載を再開しようと思います。応援のほどよろしくお願いします！\n参考文献 # Sapir, Shachar; Shapira, Asaf. The induced removal lemma in sparse graphs. Comb. Probab. Comput. 29, No. 1, 153-162 (2020). Shapira, Asaf. Local-vs-global combinatorics. ICM 2022. Zhao, Yufei. Graph theory and additive combinatorics. Exploring structure and randomness. Cambridge University Press (2023). ","date":"2025-07-01","externalUrl":null,"permalink":"/natori/202507/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はグラフ除去補題を紹介します。\n","title":"【月刊組合せ論 Natori】グラフ除去補題【2025 年 7 月号】","type":"natori"},{"content":"1998 年の東京大学後期入試で出題された数学の問題は、「伝説の入試問題」「最難関」「史上最悪」などと呼ばれています。「受験生は誰一人解けなかった」「予備校も解答を作れず、数学者に依頼した」など、様々な伝説があります。\n（ちなみに、数学オリンピックレベルと呼ばれることもありますが、実際に 2005 年の Shortlist に本質が同じ問題があるようです。）\nそんな入試問題ですが、最近パズルゲーム化され再び話題になっています。\nhttps://unityroom.com/games/1998tokyo\n話題になる中で新たな解答が発表されるなど、数学的にも注目されています。\nこの記事では伝説の入試問題の解答を紹介しながら、現代数学とのつながりを見ていこうと思います。\n問題概要 # 問題は (1) と (2) の 2 つがありますが、難しいのは (2) なのでこちらのみ扱います。\n白または黒の丸を一列に並べることを考えます。まずはじめに白い丸が 1 つだけあります。その後、次の 2 種類の操作のいずれかを行います。\n操作 1: 左端または右端に白い丸を追加し、その隣の丸の色を反転させる。 操作 2: 隣り合う 2 つの丸の間に白い丸を追加し、その両隣の丸の色を反転させる。 nnn 個の丸が並んだとき、それらがすべて白であるようにすることはできるか、という問題です。\n実験してみましょう。\n○　→　●○　→　○○○\n○　→　●○　→　○○●　→　○○○○\nこのように、n=1,3,4n=1,3,4n=1,3,4 では可能であることがわかります。一方 n=2n=2n=2 は不可能です。\nn=4n=4n=4 の作り方を応用すれば、n=kn=kn=k で可能ならば n=k+3n=k+3n=k+3 で可能であることもわかります。これより、nnn を 3 で割った余りが 0 または 1 のときは可能であることがわかります。\nあとは nnn を 3 で割った余りが 2 のときに不可能であることを示せば解答が完成します。しかしこの部分が非常に難しく、伝説となった所以です。\n解答 # 様々な解法が知られていますが、どれも受験生が時間内で思いつけるとは思えない天才的なものです。\n多くの解法では操作によって変わらない「不変量」を考えることで、ある図形が作れないことを証明しています。\n解答 1: 交代和を 3 で割った余り # 多くのサイトで公開されている解法はこれです。例を挙げると\n1998年 東京大学　大学入試史上No.1の超難問～20年目の真実～ (https://examist.jp/legendexam/1998-tokyo/) JSユウカのイラスト があります。\nJSユウカ#ブルアカ 100日チャレンジ Day 86 pic.twitter.com/6Y7RHo1Qx3\n\u0026mdash; Azel@C108一日目(土)東ス26a (@lam) November 21, 2023 まず、両端に黒丸を 2 個追加し、操作 1 は追加した丸の色も反転する操作だとみなします。これは操作 2 と見なせます。最後に両端に追加した丸を取り除けば元の問題設定が得られます。このように、両端に丸を追加することで操作 2 だけ考えればよいことがわかります。\n黒丸で区切ったとき、いくつかの白丸が連続した領域に分かれます。ここで、奇数番目の領域にある白丸の個数から偶数番目の領域にある白丸の個数を引いて得られる量を考えます。例えば\n●○○●○●●○○○\nなら、左から 0,2,1,0,30,2,1,0,30,2,1,0,3 個の白丸の領域に分かれるので、(0+1+3)−(2+0)=2(0+1+3)-(2+0)=2(0+1+3)−(2+0)=2 が求める量になります。0−2+1−0+30-2+1-0+30−2+1−0+3 と書くことで、この量は交代和であると考えることもできます。\nさて、この量を 3 で割った余りは操作 2 で不変であることが示せます。最初の状態ではこの不変量が 2 なので、可能な配置では常に 2 です。一方、3k+23k+23k+2 個の白丸が並んだ図形（に両端に 2 個加えたもの）ではこの量が 2 にならないので、不可能であることが示せます。\nどうでしょうか。突然偶数番目と奇数番目に分けるところが人工的で、思いつけそうにないですね。なお、以下のツイートは本質的にはこの解法と同じですが、より自然に見えるようになっています。\n初等的に解いてみました。 pic.twitter.com/JsS8r7N5Nr\n\u0026mdash; J. Koizumi (@J_Koizumi_233) January 21, 2023 解答 2: 行列式を 2 で割った余り # この解法は以下で見られます。\nリアルな代数幾何―メビウスの帯からトロピカル曲線まで― (https://www.mathsoc.jp/assets/pdf/publications/tushin/backnumber/2202/2202kobayashi.pdf) 佐久間さんのツイート 最近これを題材としたゲームができたり、小学生ユウカがこれを初等的に解いているイラストが再度万バズしてネットニュースになったりして話題になっているグラフ理論の「史上最も難しい大学入試数学の問題」(1998東大理系後期第3問)を行列式の余因子展開を使って解きました。 pic.twitter.com/gDcLxOKtTQ\n\u0026mdash; 佐久間 (@keisankionwykip) May 17, 2025 白を 1、黒を 0 と置き換えると、直線状に並んだ nnn 個の丸を長さ nnn の 01 列 (a1,…,an)(a_1,\\ldots,a_n)(a1​,…,an​) で表すことができます。\nここで、以下のように行列式を 2 で割った余りを考えます。\nf(a1,…,an)=det⁡(a110⋯01a21⋯001a3⋯0⋮⋮⋮⋱⋮000⋯an) mod 2 f(a_1,\\ldots,a_n)=\\det\\begin{pmatrix} a_1 \u0026amp; 1 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; 0 \\\\ 1 \u0026amp; a_2 \u0026amp; 1 \u0026amp; \\cdots \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; a_3 \u0026amp; \\cdots \u0026amp; 0 \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \u0026amp; \\vdots \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; a_n \\end{pmatrix} \\bmod{2} f(a1​,…,an​)=det​a1​10⋮0​1a2​1⋮0​01a3​⋮0​⋯⋯⋯⋱⋯​000⋮an​​​mod2行列は対角線に a1,…,ana_1,\\ldots,a_na1​,…,an​ が並んでおり、その上下の対角線の成分は 1 で、その他の成分は 0 であるような三重対角行列です。\nこれは操作で不変であることが示せるので、同様の手法で nnn を 3 で割った余りが 2 のときは不可能であることが示せます。\n先ほどの不変量は天才的でしたが、こちらも同じくらい天才に見えますね。なお余因子展開をすることで\nf(a1,…,an)≡anf(a1,…,an−1)+f(a1,…,an−2)(mod2) f(a_1,\\ldots,a_n)\\equiv a_nf(a_1,\\ldots,a_{n-1})+f(a_1,\\ldots,a_{n-2}) \\pmod{2} f(a1​,…,an​)≡an​f(a1​,…,an−1​)+f(a1​,…,an−2​)(mod2)がわかります。高校生は行列式を知らないので、この式で定義することになるでしょうか。\n解答 3: 二面体群 # この解法は以下のサイトにあります。\n史上最大の難問　東大後期1998-問3 (https://ameblo.jp/miraclemaster/entry-10876823332.html) えびまさんの動画 解答 1 と同様に、両端に白丸を加えて操作 2 のみ考えます。白丸を a、黒丸を b とおくと、操作は\naa → bab ab → baa ba → abb bb → aaa となります。不変量を作るために、a,ba,ba,b をある群の元とみなし、上の操作において左右を等号で結びます：\naa=babaa=babaa=bab ab=baaab=baaab=baa ba=abbba=abbba=abb bb=aaabb=aaabb=aaa G=⟨a,b∣a3=b2=id,bab=a−1⟩G=\\langle a,b\\mid a^3=b^2=\\mathrm{id}, bab=a^{-1} \\rangleG=⟨a,b∣a3=b2=id,bab=a−1⟩ という群を考えると、上の等式が成り立ちます。この群 GGG は位数 6 の二面体群です。\nこれより、可能な丸の配置において a,ba,ba,b を群 GGG の元とみなして積を計算すると、単位元になります。これが不変量です。\n群論を知らない人に解説するには、a,ba,ba,b を具体的な対称性とすればよいです。例えば aaa を 120° 回転、bbb をある軸に沿った反転とします。\n群論を知っていれば他と比べて思いつきやすい解法かもしれませんが、受験生が思いつくのは難しそうです。\n解答 4: 二分木 # この解法は以下で見られます。\nnishimura さんのツイート simasima さんの動画 出所https://t.co/m8wMLjQDmq\n私の解法：画像 pic.twitter.com/IaJ707oQuP\n\u0026mdash; nishimura (@icqk3) January 21, 2023 要約すると、操作を行うことと二分木に頂点を追加することを対応させ、すべて白丸になることは二分木の葉の深さの偶奇がすべて等しくなることと同値であることを証明します。\n解法 5: 帰納法 # この解法は以下で見られます。\nhttps://marriagetheorem.hatenablog.com/entry/20100324/1269362813 https://noshi91.hatenablog.com/entry/2024/10/20/014343 以下の性質を数学的帰納法で証明しています。\n2 つの頂点が辺で結ばれており、何らかの色が付いている。操作 2 を繰り返して頂点数が nnn 個となり、両端以外の頂点がすべて白くなったとする。このとき以下のいずれかが成り立つ。\nn≡0(mod3)n\\equiv 0\\pmod{3}n≡0(mod3) で、両端はいずれも奇数回色が変化した n≡2(mod3)n\\equiv 2\\pmod{3}n≡2(mod3) で、両端はいずれも偶数回色が変化した 現代数学周遊 # ここからは、伝説の入試問題と現代数学を結び付けていこうと思います。\n新たな別解を求めて # これだけたくさんの別解を見ると、自分も新しい別解を探したくなります。探究の旅に出ました。\nまず操作列は順列と対応します。そこで順列と一対一対応の関係にあるオブジェクトを使って考察できないか考えました。例えば permutation tableau や alternative tableau などがあります。しかしこの方法は上手くいきませんでした。\n解法 4 で操作列が二分木と対応すると述べましたが、異なる操作列が同じ結果と対応することがあります。これは二分木に頂点を追加する順番（言い換えると頂点のラベルのつけ方）によらず、二分木の形のみに依存するということです。二分木の個数はカタラン数です。そこで順列ではなく、カタラン数と関連のあるオブジェクトを調べればよいと考えました。（念のため注意ですが二分木の形が異なっていても結果が同じになることもあります。）\nこうして、三角形分割を用いるという発想に至りました。次の問題を考えればよいことになります。\n正 nnn 角形の三角形分割において、各頂点に集まる三角形の個数を (a1,…,an)(a_1,\\ldots,a_n)(a1​,…,an​) とする。aia_iai​ がすべて奇数、または隣り合う 2 数のみが偶数でその他が奇数となるようにできるか。 これをツイートしたところ、この数列 (a1,…,an)(a_1,\\ldots,a_n)(a1​,…,an​) には quiddity という名前がついていると教わりました。『フリーズの数学　スケッチ帖』という数学書にこの話が載っていると教わったので、読むことにしました。すると、上で紹介した解法がフリーズに関する様々な概念と繋がっていきました。\nその面白さを紹介していこうと思います。\nフリーズ # 『フリーズの数学　スケッチ帖』の主題であるフリーズは、平面上にある規則をみたすように数を並べたものです。その規則とは\nb a d c のように並んでいるとき、ad−bc=1ad-bc=1ad−bc=1 をみたす、というものです。例を挙げると\n0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 2 3 1 2 3 1 2 3 1 5 2 1 5 2 1 5 2 3 1 2 3 1 2 1 1 1 1 1 1 0 0 0 0 0 があります。\nquiddity は三角形分割において各頂点に集まる三角形の個数からなる列でした。この本では quiddity は奇蹄列（きてれつ）と呼ばれています。いま、1 行目は 0、2 行目は 1 のみとし、3 行目は奇蹄列を繰り返し並べたものとします。するとここからフリーズが得られます。上は六角形の三角形分割に対する奇蹄列 (1,2,3,1,2,3)(1,2,3,1,2,3)(1,2,3,1,2,3) から得られるフリーズです。\n逆に、周期的で 2 行目から n−1n-1n−1 行目が正であるようなフリーズを考えると、3 行目はある三角形分割の奇蹄列であることが知られています。これは Conway-Coxeter の定理と呼ばれています。（本の定理 2.18）\nフリーズは 3 行目を決めることで一意的に決まりますが、左端を決めることでも一意的に決まります。左端（本では第一対角線と呼ばれています）に書かれた数を f−1,f0,f1,…f_{-1},f_0,f_1,\\ldotsf−1​,f0​,f1​,… とすると、f−1=0,f0=1f_{-1}=0, f_0=1f−1​=0,f0​=1 で、f1f_1f1​ は奇蹄列 (a1,…,an)(a_1,\\ldots,a_n)(a1​,…,an​) の最初の数 a1a_1a1​ に等しいです。\n数列 fff と aaa には fi=aifi−1−fi−2f_i=a_if_{i-1}-f_{i-2}fi​=ai​fi−1​−fi−2​ という関係があります。（本の補題 2.13）\n連分因子 # 本の第 4 章では連分因子 (continuant) というものが扱われています。それは次のようなものです。\nKn(a1,…,an)=det⁡(a110⋯01a21⋯001a3⋯0⋮⋮⋮⋱⋮000⋯an) K_n(a_1,\\ldots,a_n)=\\det\\begin{pmatrix} a_1 \u0026amp; 1 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; 0 \\\\ 1 \u0026amp; a_2 \u0026amp; 1 \u0026amp; \\cdots \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; a_3 \u0026amp; \\cdots \u0026amp; 0 \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \u0026amp; \\vdots \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \u0026amp; a_n \\end{pmatrix} Kn​(a1​,…,an​)=det​a1​10⋮0​1a2​1⋮0​01a3​⋮0​⋯⋯⋯⋱⋯​000⋮an​​​なんと、解法 2 の行列には名前がついていたのです！\n連分因子はオイラーが連分数の研究をする中で導入されたもののようです。もちろん、オイラーの時代には行列式はなかったのですが。連分数については本の第 6 章で扱われています。\n余因子展開により\nKn(a1,…,an)=anKn−1(a1,…,an−1)−Kn−2(a1,…,an−2) K_n(a_1,\\ldots,a_n)=a_nK_{n-1}(a_1,\\ldots,a_{n-1})-K_{n-2}(a_1,\\ldots,a_{n-2}) Kn​(a1​,…,an​)=an​Kn−1​(a1​,…,an−1​)−Kn−2​(a1​,…,an−2​)が成り立ちます。勘のいい読者はお気づきかもしれませんが、Ki(a1,…,ai)K_i(a_1,\\ldots,a_i)Ki​(a1​,…,ai​) は fif_ifi​ と同じ関係式を満たしているので、fi=Ki(a1,…,ai)f_i=K_i(a_1,\\ldots,a_i)fi​=Ki​(a1​,…,ai​) が成り立ちます。\nさて、解法 2 を思い出すと、fn mod 2f_n\\bmod{2}fn​mod2 は不変量です。fnf_nfn​ はフリーズのどこでしょう。それは……。\n0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 2 3 1 2 3 1 2 3 1 5 2 1 5 2 1 5 2 3 1 2 3 1 2 1 1 1 1 1 1 0 0 0 0 0 -1 一番下に書いた −1-1−1 です。\n連分数との関連をもう少し見てみましょう。本の定理 6.10 に次のような定理が載っています。\na1−1a2−1⋯−1an−1−1an=Kn(a1,a2,…,an)Kn−1(a2,a3,…,an) a_1-\\frac{1}{a_2-\\frac{1}{\\cdots-\\frac{1}{a_{n-1}-\\frac{1}{a_n}}}}=\\frac{K_n(a_1,a_2,\\ldots,a_n)}{K_{n-1}(a_2,a_3,\\ldots,a_n)} a1​−a2​−⋯−an−1​−an​1​1​1​1​=Kn−1​(a2​,a3​,…,an​)Kn​(a1​,a2​,…,an​)​このような連分数は Hirzebruch-Jung 連分数と呼ばれています。この定理を応用して、新しい解法を発見しました。\n解法 6: 連分数 # (1,1,1)(1,1,1)(1,1,1) から始めて、間に 1 を挿入して両隣の数を 1 増やすという操作を繰り返します。奇数を○、偶数を●に対応させれば、元の問題（の両端に丸を 2 個追加したバージョン）と対応することがわかります。\nここで、(a0,a1,…,an+1)(a_0,a_1,\\ldots,a_{n+1})(a0​,a1​,…,an+1​) という数列が得られたとき、Hirzebruch-Jung 連分数\na0−1a1−1⋱−1an a_0-\\frac{1}{a_1-\\frac{1}{\\ddots-\\frac{1}{a_n}}} a0​−a1​−⋱−an​1​1​1​を考えます。（an+1a_{n+1}an+1​ の値は使いません。）\n例えば (2,1,2,1)(2,1,2,1)(2,1,2,1) の場合、連分数の値は\n2−11−12=0 2-\\frac{1}{1-\\frac12}=0 2−1−21​1​=0となります。計算すればこの連分数は操作で不変であることがわかります。よって操作で得られる数列では連分数の値は常に 0 です。すなわち\n1a1−1⋱−1an \\frac{1}{a_1-\\frac{1}{\\ddots-\\frac{1}{a_n}}} a1​−⋱−an​1​1​1​は a0a_0a0​ に等しいので、特に整数でなければなりません。いま、すべてを白丸にしたいので、a1,…,ana_1,\\ldots,a_na1​,…,an​ はすべて奇数です。このとき\nnnn を 3 で割った余りが 1 のとき、(奇数)/(奇数) nnn を 3 で割った余りが 2 のとき、(奇数)/(偶数) nnn を 3 で割った余りが 0 のとき、(偶数)/(奇数) となることがわかります。(奇数)/(偶数) は絶対に整数にならないので、nnn を 3 で割った余りが 2 のときは不可能であることがわかります。\nこれが連分数を用いた証明です。これは新しい証明だと思います。\n2 次正方行列 # 本の定理 4.7 によると、(a1,…,an)(a_1,\\ldots,a_n)(a1​,…,an​) が奇蹄列のとき\n(a11−10)(a21−10)⋯(an1−10)=−(1001) \\begin{pmatrix} a_1 \u0026amp; 1 \\\\ -1 \u0026amp; 0 \\end{pmatrix} \\begin{pmatrix} a_2 \u0026amp; 1 \\\\ -1 \u0026amp; 0 \\end{pmatrix} \\cdots \\begin{pmatrix} a_n \u0026amp; 1 \\\\ -1 \u0026amp; 0 \\end{pmatrix} =-\\begin{pmatrix} 1 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \\end{pmatrix} (a1​−1​10​)(a2​−1​10​)⋯(an​−1​10​)=−(10​01​)が成り立ちます。この等式を応用できないでしょうか？\n偶奇にのみ興味があるので、2 元体 F2\\mathbb{F}_2F2​ 上で考えます。ここで登場する行列はすべて行列式が 1 であることから、特殊線形群 SL2(F2)\\mathrm{SL}_2(\\mathbb{F}_2)SL2​(F2​) を考えることになります。この群はどのような群でしょうか。\n実は、SL2(F2)\\mathrm{SL}_2(\\mathbb{F}_2)SL2​(F2​) は位数 6 の二面体群と同型です！\n解法 3 の背後にはこのような性質があったのですね。\n研究課題 # ここまでフリーズを使って伝説の入試問題を考察してきましたが、まだまだわからないことや知りたいことがたくさんあります。ここに研究課題を並べておくので、ぜひ一緒に考えましょう。\n解法 1 の解釈 # 解法 1 では交代和が登場しましたが、これにいい感じの「解釈」を与えることはできないでしょうか？\n交代和と聞いて思い浮かぶのは包除原理やオイラー標数です。謎の不変量にこのような解釈を与えることができれば、背後に潜む構造が見えてくるかもしれません。\n一筆書き # 三角形分割においてグラフとして見たときの各頂点の次数を (d1,…,dn)(d_1,\\ldots,d_n)(d1​,…,dn​) とすると、これは奇蹄列に 1 を加えたものです。次数が奇数の頂点が 0 個または 2 個で、2 個の場合は隣り合っているようなものを考えることになります。これは一筆書きを連想させます。一筆書きを用いて証明できないでしょうか？\nHirzebruch-Jung 連分数 # Hirzebruch-Jung 連分数は、トーリック多様体の特異点解消や数理物理学に現れるそうです。こういった観点から、この問題を捉えることはできないでしょうか？\n団代数との関連 # 三角形分割やフリーズは今流行りの団代数とも関連します。団代数を用いた解釈ができないでしょうか？\n団代数は 21 世紀に生まれた数学なので、1998 年には存在していません。もしつながりがあるとすれば面白そうですね。\nなお、フリーズの本のあとがきを読むと Auslander-Reiten quiver との関係も考えた方がよさそうです。\nおわりに # これまでに知られている解法を調査しましたが、漏れがあるかもしれません。新たな別解を見つけたり、研究課題についてわかったことがあったりした場合はお知らせください。\n追記 # 記事執筆後、QuizKnock から以下の記事と動画が公開されました。\n伝説の東大数学は算数で解ける【1998年後期】 解法 1 の仲間だと思いますが、関係性は未検証です。\n","date":"2025-06-08","externalUrl":null,"permalink":"/posts/1998/","section":"数学記事・PDF","summary":"1998 年の東京大学後期入試で出題された数学の問題は、「伝説の入試問題」「最難関」「史上最悪」などと呼ばれています。「受験生は誰一人解けなかった」「予備校も解答を作れず、数学者に依頼した」など、様々な伝説があります。\n","title":"伝説の入試問題と現代数学周遊","type":"posts"},{"content":" くみあラボへようこそ！ # くみあ くみあラボへようこそ！\nいおり わあ……！すごいの！\nくみあ （まあ、私の家なんだけど。）\n早稲くみあは石浦いおりと椎木しいなの 2 人を自宅に招待した。くみあの自宅は VTuber 活動のために大きく改装してあり、設備が充実している。もちろん、組合せ論の本もたくさん置かれている。\nEC を読もう # いおりとしいなは図書館で借りた Enumerative Combinatorics (EC) を持参した。なお、くみあも同じ本を持っている。\nしいな それで、いーちゃんと一緒に EC を読もうとしたんだけど、難しくって読めなかった。顧問の先生、どうしたらいいかな？\nくみあ これは EC に限らないんだけど、数学書っていうのは基本難しいものです。私も周りのみんなも、数学書は難しいって言ってますからね。\nいおり じゃあ、いおりたちには無理ってこと……！？\nくみあ そんなことはないですよ。難しいからこそ、じっくり読むのが大切です。それに、私が顧問の先生としてサポートするので、大丈夫ですよ。\nいおり ありがとう！くみあせんせー！\n数え上げってなんだろう？ # 3 人は EC を眺める。英語と数式がびっしりと書かれており、いおりとしいなは難しくて再び諦めそうになる。そこで、くみあがサポートを入れる。\nくみあ 数え上げについて書いてありますね。\nくみあは数え上げでどのような問題を扱うのかを説明する。例えば、3 人が一列に並ぶ方法の数、5 人が一列に並ぶ方法の数といった問題がある。これを一般化すると、nnn 人が一列に並ぶ方法の数を求める問題になる。\nこの問題の答えは n×(n−1)×⋯×2×1n\\times (n-1)\\times \\cdots\\times 2\\times 1n×(n−1)×⋯×2×1 通りである。省略して n!n!n! と書くこともある。\nこのように、数え上げの問題はあるものの個数を求める問題といえる、とくみあは説明した。\nくみあ でも、このように答えが綺麗な式で書ける問題ばかりではないですよ。\nしいな そうなんだ。\nいおり そもそも、きれいな式ってどんな式？\nくみあ いい質問ですね。実は、どんな式がいいかというのは時と場合によって変わってきます。\nくみあは例としてフィボナッチ数列を紹介する。nnn 段ある階段を、1 段または 2 段上ることを繰り返して上る。上り方は何通りあるかという問題である。\nいおり いおりも階段飛ばししたことあるの！\nしいな 危ないよ。\nnnn 段の階段の上り方の個数を ana_nan​ とおくと、a1=1,a2=2a_1=1, a_2=2a1​=1,a2​=2 かつ an+2=an+1+ana_{n+2}=a_{n+1}+a_nan+2​=an+1​+an​ という公式がある。もう 1 つの公式は\nan=15((1+52)n+1−(1−52)n+1) a_n=\\frac{1}{\\sqrt{5}}\\left(\\left(\\frac{1+\\sqrt{5}}{2}\\right)^{n+1}-\\left(\\frac{1-\\sqrt{5}}{2}\\right)^{n+1}\\right) an​=5​1​​(21+5​​)n+1−(21−5​​)n+1​である。\nくみあ さて、どちらがいい公式でしょうか？\nしいな 5\\sqrt{5}5​ とか入ってて難しそうな数式……。最初の公式の方がきれいじゃない？\nいおり でも 2 つめの公式のほうが、答え！って感じがするの。\n2 人の意見が分かれていることからも、数え上げ問題には様々な観点があり、それだけ奥深いということを示唆している。\nくみあ ちなみに、私はコンピュータを使った計算という見方からも研究をしてます。たとえばさっきの例だと、5\\sqrt{5}5​ をコンピュータで扱うには工夫が必要ですね。小数で扱おうとすると無限に続いてしまいますから。ですが an+2=an+1+ana_{n+2}=a_{n+1}+a_nan+2​=an+1​+an​ の方では簡単に計算ができます。このように、歴史の長い数え上げ問題もコンピュータの見方をすれば新しい発見があるんです。\nいおりとしいなの 2 人は目を輝かせている。数え上げを探究したいという気持ちがますます高まっている。\nくみあ さあ、一緒に数え上げを学んでいきましょう！\nいおり いおりたちの探究は始まったばかりなの！\n","date":"2025-05-17","externalUrl":null,"permalink":"/ec/season1-1/","section":"いーしー部！","summary":"くみあラボへようこそ！ # くみあ くみあラボへようこそ！\n","title":"【いーしー部！】数え上げってなんだろう？【しーずん１！その１】","type":"ec"},{"content":"こんにちは！ゴールデンウィーク、満喫してますか？\nゴールデンウィークを満喫している人、素晴らしいですね！ゴールデンウィークも仕事という人、いつもありがとうございます。\nさて、ゴールデンウィークといえば黄金、黄金といえば黄金比ですね。最近黄金比とグラフ理論の関係を知ったので、紹介しようと思います。\nグラフの固有値 # グラフ GGG は頂点の集合と辺の集合の組 (V,E)(V,E)(V,E) で表現する方法の他に、隣接行列を使う方法があります。頂点の番号を 1,2,…,n1,2,\\ldots,n1,2,…,n としたとき、隣接行列の (i,j)(i,j)(i,j) 成分は、頂点 i,ji,ji,j を結ぶ辺があるとき 111、そうでないとき 000 です。例えば\n○―○―○―○\nというパスグラフを考えると、隣接行列は\n(0100101001010010) \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \\\\ 1 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix} ​0100​1010​0101​0010​​です。この行列の固有値を計算すると\n±1±52 \\frac{\\pm1 \\pm\\sqrt{5}}{2} 2±1±5​​となります。黄金比だ～～～～～！！！！！\nグラフの隣接行列の固有値のことを短縮してグラフの固有値と呼びます。グラフ理論を線形代数を使って研究できます。この分野はスペクトルグラフ理論と呼ばれており、私も非常に気になっています。\n第二固有値 # グラフの固有値を昇順に並べたものを λ1≥λ2≥⋯≥λn\\lambda_1\\ge\\lambda_2\\ge\\cdots\\ge \\lambda_nλ1​≥λ2​≥⋯≥λn​ とします。2 番目に大きい固有値 λ2\\lambda_2λ2​ がスペクトルグラフ理論では重要だそうです。なぜかはわかりません。\nλ2≤5−12\\lambda_2 \\le \\frac{\\sqrt{5}-1}{2}λ2​≤25​−1​ をみたすグラフについては\nCvetković, Dragoš; Simić, Slobodan, On graphs whose second largest eigenvalue does not exceed (5−1)/2(\\sqrt{5}-1)/2(5​−1)/2. Discrete Math., 138: 213-227, 1995. に書かれているようです。が、アクセス権がないので読めませんでした。zbMATH のレビューによれば、このようなグラフは\ncomplete multipartite 長さ 5 のサイクルの誘導部分グラフ 三角形を含む とのことです。3. についてはもう少しいろいろと書かれているそうです。\n他の話題 # ここで紹介したもの以外にも、黄金比はグラフ理論に現れるようです。\nSaeid Alikhani, Nima Ghanbari. Golden ratio in graph theory: A survey. arXiv:2407.15860 にいろいろ書いてあります。ゴールデンウィークなので読んでみませんか？\n","date":"2025-05-03","externalUrl":null,"permalink":"/posts/golden-graph/","section":"数学記事・PDF","summary":"こんにちは！ゴールデンウィーク、満喫してますか？\n","title":"ゴールデンウィークなので黄金比とグラフ理論の話をします","type":"posts"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤング図形の束を見ていきましょう。\n不思議な等式 # ヤング図形 λ\\lambdaλ 上の標準タブローの個数を fλf_{\\lambda}fλ​ とします。このとき\nn!=∑λ∈Par(n)(fλ)2 n!=\\sum_{\\lambda\\in\\mathrm{Par}(n)}(f_{\\lambda})^2 n!=λ∈Par(n)∑​(fλ​)2が成り立ちます。これは不思議な等式で、多くの数学者を魅了してきました。\nこの等式の解釈はいくつかあります。有名なものはロビンソン・シェンステッド対応です。これは長さ nnn の順列と、サイズ nnn の同じ形の標準タブローの組との間の全単射です。個数を比較することで上の等式が導出されます。\nここでは別の方法で上の等式を解釈します。\nヤング図形の束 # ヤング図形の束、ヤング束を紹介します。\nヤング図形 μ\\muμ に箱をいくつか加えることで新しいヤング図形 λ\\lambdaλ を得たとき、μ≤λ\\mu\\le\\lambdaμ≤λ とします。これによりヤング図形全体は poset となります。さらに束 (lattice) になります。これをヤング束といいます。図にすると次のようになります。\n(Wikipedia より)\nヤング図形の形式的な和からなる空間を考えます。U(λ)U(\\lambda)U(λ) を λ\\lambdaλ に箱を 1 個付け加えることで得られるヤング図形の和とします。例えば U((2,1))=(3,1)+(2,2)+(2,1,1)U((2,1))=(3,1)+(2,2)+(2,1,1)U((2,1))=(3,1)+(2,2)+(2,1,1) です。また、D(λ)D(\\lambda)D(λ) を λ\\lambdaλ から箱を 1 個取り除くことで得られるヤング図形の和とします。例えば D((2,1,1))=(2,1)+(1,1,1)D((2,1,1))=(2,1)+(1,1,1)D((2,1,1))=(2,1)+(1,1,1) です。U,DU,DU,D を線形作用素だと思うと、次の式が成り立ちます。\n命題: DU−UD=IDU-UD=IDU−UD=I が成り立つ。ここで III は恒等写像である。 証明するには、ヤング図形の角に注目します。\n(赤い丸の個数)-(青い丸の個数)=1 であることを用いると、上の命題が証明できます。そしてこれはマヤ図形を考えればわかります。\nいま、DnUn∅D^nU^n\\emptysetDnUn∅ を考えます。∅\\emptyset∅ に UUU を nnn 回適用することは、1 個ずつ箱を加えることで得られるヤング図形の列 ∅→λ(1)→⋯→λ(n)\\emptyset\\to\\lambda^{(1)}\\to\\cdots\\to\\lambda^{(n)}∅→λ(1)→⋯→λ(n) を考えることに対応します。これは標準タブローを考えることと同じです。よって\nUn∅=∑λ∈Par(n)fλλ U^n\\emptyset=\\sum_{\\lambda\\in\\mathrm{Par}(n)}f_{\\lambda}\\lambda Un∅=λ∈Par(n)∑​fλ​λです。同様に DnλD^n\\lambdaDnλ は λ\\lambdaλ から 1 個ずつ箱を除くことに対応するので、これも標準タブローと同じです。よって\nDnUn∅=∑λ∈Par(n)(fλ)2∅ D^nU^n\\emptyset=\\sum_{\\lambda\\in\\mathrm{Par}(n)}(f_{\\lambda})^2\\emptyset DnUn∅=λ∈Par(n)∑​(fλ​)2∅が得られました。\n一方、DU−UD=IDU-UD=IDU−UD=I と D∅=0D\\emptyset=0D∅=0 を用いた計算により\nDnUn∅=n!∅ D^nU^n\\emptyset=n!\\emptyset DnUn∅=n!∅が示せます。これにより最初にあげた等式の証明が得られました。\ndifferential poset # Stanley はこのような性質をもつ poset を研究しました。\n一般の poset PPP において、yyy が xxx をカバーするとは、x\u0026lt;yx\u0026lt;yx\u0026lt;y であり、かつ x\u0026lt;z\u0026lt;yx\u0026lt;z\u0026lt;yx\u0026lt;z\u0026lt;y をみたす zzz が存在しないことをいいます。U(x)U(x)U(x) を xxx をカバーするような yyy の和、D(y)D(y)D(y) を yyy がカバーするような xxx の和とします。\nposet PPP が differential poset であるとは\nPPP は ∅\\emptyset∅ をもつ locally finite, graded poset である。 DU−UD=IDU-UD=IDU−UD=I をみたすことをいいます。ヤング束は differential poset です。\n他の例として、ヤング・フィボナッチ束があります。扱う対象は 1,2 からなる数列で、yyy が xxx をカバーするという関係を\nxxx の左端の 1 を 2 に変えたものが yyy である、または xxx の左端の 1 よりも左に 1 を挿入したものが yyy である（xxx が 1 を含まないときはどこに挿入してもよい） により定めます。\n(Wikipedia より)\nヤング・フィボナッチ束も differential poset です。このことから、∅\\emptyset∅ から xxx への経路の個数を gxg_xgx​ とおくとき\nn!=∑x,sum(x)=n(gx)2 n!=\\sum_{x,\\mathrm{sum}(x)=n}(g_x)^2 n!=x,sum(x)=n∑​(gx​)2という式が成り立ちます。\nこの式をロビンソン・シェンステッド対応のように解釈できないか、と考えたくなりますね。実際に、順列とヤング・フィボナッチタブローと呼ばれるものの組との間の全単射を構成することができます。\nr-differential poset # rrr を正の整数として、DU−UD=IDU-UD=IDU−UD=I を DU−UD=rIDU-UD=rIDU−UD=rI に置き換えたものを rrr-differential poset といいます。この場合、DnUn∅=rnn!D^nU^n\\emptyset=r^nn!DnUn∅=rnn! となることが示せます。\nn!n!n! は対称群の位数でしたが、2nn!2^nn!2nn! は超八面体群の位数です。対称群、超八面体群はそれぞれ AAA 型、BCBCBC 型のワイル群です。さらに r≥3r\\ge 3r≥3 のとき rnn!r^nn!rnn! はある複素鏡映群の位数となります。\nこの場合にロビンソン・シェンステッド対応にあたるものを考えてみませんか？\nおわりに # 最初にあげた等式やロビンソン・シェンステッド対応は本当に不思議なもので、その魅力はまだまだ尽きません。そのようなことを今後も発信できればと思います。\n参考文献 # 山田裕史, 組合せ論トレイル, 日本評論社, 2024. Stanley, Richard P. Enumerative combinatorics. Volume 1. Cambridge University Press. Nzeutchap, Janvier. Young-Fibonacci insertion, tableauhedron and Kostka numbers. J. Comb. Theory, Ser. A 116, No. 1, 143-167 (2009). ","date":"2025-02-01","externalUrl":null,"permalink":"/natori/202502/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤング図形の束を見ていきましょう。\n","title":"【月刊組合せ論 Natori】ヤング図形の束と differential poset【2025 年 2 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は組合せ論の有名な未解決問題である 13\\frac1331​-23\\frac2332​ 予想を解説します。\nあけましておめでとうございます。去年の 12 月はアドベントカレンダーでたくさん記事を書きましたが、今年もたくさん書いていきたいです。\n1/3-2/3 予想とは # 半順序をもつ集合のことを poset といいます。\nたとえば上のような poset では、a≤b,a≤c,b≤d,c≤da\\le b, a\\le c, b\\le d, c\\le da≤b,a≤c,b≤d,c≤d が成り立っています。一方 b,cb,cb,c は比較できません。\n関係を追加して全順序集合（チェインといいます）にすることを考えます。DAG をトポロジカルソートするといった方がわかりやすい人もいるかもしれません。\n上の図では b≤cb\\le cb≤c または c≤bc\\le bc≤b を追加するとチェインになります。\n次のような poset を考えましょう。\nここから得られるチェインは x≤y≤z,y≤x≤z,y≤z≤xx\\le y\\le z, y\\le x\\le z, y\\le z\\le xx≤y≤z,y≤x≤z,y≤z≤x の 3 通りです。\n元の poset において比較不能な 2 元 x,yx,yx,y に対して、チェインの中から一様ランダムに選んだとき、x≤yx\\le yx≤y となる確率を P(x≤y)\\mathbf{P}(x\\le y)P(x≤y) とします。最初の図では P(b≤c)=12\\mathbf{P}(b\\le c)=\\frac12P(b≤c)=21​ です。2 番目の図では　P(x≤y)=13\\mathbf{P}(x\\le y)=\\frac13P(x≤y)=31​ であり、逆向きにすると P(y≤x)=23\\mathbf{P}(y\\le x)=\\frac23P(y≤x)=32​ になります。\nさて、13\\frac1331​-23\\frac2332​ 予想を述べる準備が整いました。\n予想: チェインでない poset において\n13≤P(x≤y)≤23 \\frac13\\le \\mathbf{P}(x\\le y)\\le \\frac23 31​≤P(x≤y)≤32​となる x,yx,yx,y が存在する。\n上の例から、13,23\\frac13,\\frac2331​,32​ より区間を狭めることはできないことがわかります。\nKahn, Saks により\n311≤P(x≤y)≤811 \\frac{3}{11}\\le \\mathbf{P}(x\\le y)\\le \\frac{8}{11} 113​≤P(x≤y)≤118​の場合、Brightwell, Felsner, Trotter により\n5−510≤P(x≤y)≤5+510 \\frac{5-\\sqrt{5}}{10}\\le \\mathbf{P}(x\\le y)\\le \\frac{5+\\sqrt{5}}{10} 105−5​​≤P(x≤y)≤105+5​​の場合が証明されていますが、13\\frac1331​-23\\frac2332​ 予想は未解決です。\nヤング図形の場合 # 特別な poset に対しては 13\\frac1331​-23\\frac2332​ 予想が成り立つことが証明されています。ここではヤング図形から得られる poset を扱います。これは Olson, Sagan による結果ですが、ここで紹介する証明は Chan, Pak, Panova によるものです。\nヤング図形から定まる poset とは、次のようなものです。\nではこのような poset から得られるチェインとは何でしょうか？\nチェインにおいて iii 番目に小さいマスに iii と書き込むことで、これは標準ヤングタブローとなります。つまりこの場合、チェインとは標準ヤングタブローのことです。\nでは証明に入ります。ヤング図形を λ\\lambdaλ として、マス (1,2)(1,2)(1,2) に何が書かれるかに注目します。λ\\lambdaλ が lll 行のとき、マス (1,2)(1,2)(1,2) に書かれる数の候補は 2,3,…,l+12,3,\\ldots,l+12,3,…,l+1 です。マス (1,2)(1,2)(1,2) に kkk が書かれたとき、1,2,…,k−11,2,\\ldots,k-11,2,…,k−1 は 1 列目に書かれています。\nチェイン（標準ヤングタブロー）の中から一様ランダムに選んだとき、マス (1,2)(1,2)(1,2) に kkk が書かれている確率を qkq_kqk​ とします。\n補題: q2≥q3≥⋯≥ql+1q_2\\ge q_3\\ge\\cdots\\ge q_{l+1}q2​≥q3​≥⋯≥ql+1​ かつ q2+q3+⋯+ql+1=1q_2+q_3+\\cdots+q_{l+1}=1q2​+q3​+⋯+ql+1​=1 後者は明らかですね。前者を考えます。1 から kkk までのマスを削除して得られる歪ヤング図形を λ/μk\\lambda/\\mu_kλ/μk​ とします。標準（歪）ヤングタブローの個数を f(λ/μ)f(\\lambda/\\mu)f(λ/μ) としたとき\nqk=f(λ/μk)f(λ) q_k=\\frac{f(\\lambda/\\mu_k)}{f(\\lambda)} qk​=f(λ)f(λ/μk​)​となります。λ/μk+1⊂λ/μk\\lambda/\\mu^{k+1}\\subset \\lambda/\\mu^kλ/μk+1⊂λ/μk が成り立つことから、詳しく解析しなくても qk≥qk+1q_k\\ge q_{k+1}qk​≥qk+1​ は明らかです。こうして補題が証明されました。\nちなみに、標準ヤングタブローの個数はフック長公式で表せる一方、標準歪ヤングタブローの個数は成瀬のフック長公式で表せます（【月刊組合せ論 Natori】EDPC-T Permutation を深掘り【2022 年 9 月号】 を参照）。論文にはこれらを用いた証明も載っています。\nでは補題を用いてヤング図形に対する 13\\frac1331​-23\\frac2332​ 予想を証明します。比較するのはマス (1,2)(1,2)(1,2) とマス (k,1)(k,1)(k,1) です。pkp_kpk​ をマス (k,1)(k,1)(k,1) の数字の方が大きい確率とします。マス (k,1)(k,1)(k,1) の数字の方が大きいとき、マス (1,2)(1,2)(1,2) の候補は 2,3,…,k2,3,\\ldots,k2,3,…,k なので\npk=q2+⋯+qk p_k=q_2+\\cdots+q_k pk​=q2​+⋯+qk​が成り立ちます。p2p_2p2​ はマス (1,2)(1,2)(1,2) と (2,1)(2,1)(2,1) を比較しますが、共役図形を考えることで p2≤12p_2\\le \\frac12p2​≤21​ と仮定してよいです。p2≥13p_2\\ge \\frac13p2​≥31​ のときはよいので、p2\u0026lt;13p_2\u0026lt;\\frac13p2​\u0026lt;31​ の場合のみ考えます。このとき補題より\n13\u0026gt;p2=q2≥q3≥⋯≥ql+1 \\frac13\u0026gt;p_2=q_2\\ge q_3\\ge\\cdots\\ge q_{l+1} 31​\u0026gt;p2​=q2​≥q3​≥⋯≥ql+1​かつ\nq2+⋯+ql+1=1 q_2+\\cdots+q_{l+1}=1 q2​+⋯+ql+1​=1となるので、pl=1−ql+1\u0026gt;23p_l=1-q_{l+1}\u0026gt;\\frac23pl​=1−ql+1​\u0026gt;32​ となります。\np2\u0026lt;13p_2\u0026lt;\\frac13p2​\u0026lt;31​ pl\u0026gt;23p_l\u0026gt;\\frac23pl​\u0026gt;32​ 列 (pk)2≤k≤l(p_k) _ {2\\le k\\le l}(pk​)2≤k≤l​ は単調増加で、増加量は pk−pk−1=qk\u0026lt;13p_k-p_{k-1}=q_k\u0026lt;\\frac13pk​−pk−1​=qk​\u0026lt;31​ 以上を合わせると、ある kkk について\n13≤pk≤23 \\frac13\\le p_k\\le \\frac23 31​≤pk​≤32​となることがわかります。これで証明完了です。\n発展 # Chan, Pak, Panova の論文ではもっといろいろ調べられているので、気になる方は読んでみてください。\n記事の記法が論文とは一部異なっているので注意が必要です。\nおわりに # 2025 年も組合せ論をしていきましょう！\n新しいことを模索するために Natori の更新頻度は減るかもしれませんがご了承ください。その代わりに数学に関する創作は続けていく予定です。\n参考文献 # Chan, Swee Hong, Igor Pak, and Greta Panova. 2021. “Sorting Probability for Large Young Diagrams.” Discrete Analysis, November. https://doi.org/10.19086/da.30071. ","date":"2025-01-01","externalUrl":null,"permalink":"/natori/202501/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は組合せ論の有名な未解決問題である 13\\frac1331​-23\\frac2332​ 予想を解説します。\n","title":"【月刊組合せ論 Natori】1/3-2/3 予想【2025 年 1 月号】","type":"natori"},{"content":"鶴崎さんが同人誌化 OK とのことで勢いで作ったものです。問題があれば削除します。\nコミケつながりで思い出した\n私鶴崎、同人フリーなんで、私の同人誌あれば読みたいんですよね。制作したら送ってくれよな！\n※注意！\n・私以外のQKメンバーは同人フリーではありません！！\n・QuizKnockの動画は原則転載禁止です！また、テレビの映像もテレビ局さんの権利なので転載禁止です！\n\u0026mdash; 鶴崎 修功 (@Tsurusaki_H) December 30, 2024 鶴崎同人フリー、雑ガイドライン\n・フリーかどうかはいつでも変わる可能性があります\n・政治的活動など、他人に著しく影響したり、迷惑をかけうるものはダメ寄りなのでご相談ください（完全フリーじゃないじゃん、ごめん）\n・繰り返しですが、私以外はNOTフリー、QuizKnock動画やテレビは転載禁止\n\u0026mdash; 鶴崎 修功 (@Tsurusaki_H) December 30, 2024 リー代王、それはリー代数に最も詳しい最強の人物を決める戦いである。\n熾烈な予選を勝ち上がってきた 2 人が、頂上決戦に挑む。\n司会「意気込みをうかがっていきましょう。まずは鶴崎さん」\n鶴崎修功「リー代数は 5 年以上取り組んできたテーマなので、負けられないですね」\n司会「続いて箱星さん、意気込みをお聞かせください」\n箱星「がんばりま～す」\n司会「それでは、スタートです！」\n超　難　問\n早押しクイズです。\n「リー代数の線形空間としての基底を用いて、普遍包絡／」\nﾋﾟｺｰﾝ\n司会「押したのは、IQ165の天才、鶴崎修功！」\n鶴崎修功「ポアンカレ・バーコフ・ヴィットの定理」\nﾋﾟﾝﾎﾟｰﾝ\n司会「なぜだ！なぜわかる！」\n鶴崎修功「リー代数に対してその普遍包絡代数というものが定まるんですけど、その構造がリー代数の線形空間としての基底からわかるという定理がポアンカレ・バーコフ・ヴィットの定理ですね」\n司会「流石の知識量！鶴崎が先制しました！」\n超　難　問\n法則を推理し、「？」に当てはまる言葉を答えなさい。\nA1,A2,G2,?,F4,E6,E7,E8 A_1, A_2, G_2, \\fbox{?}, F_4, E_6, E_7, E_8 A1​,A2​,G2​,?​,F4​,E6​,E7​,E8​ﾋﾟｺｰﾝ\n司会「IQ165の天才、鶴崎修功！」\n鶴崎修功「D4D_4D4​」\nﾋﾟﾝﾎﾟｰﾝ\n司会「この短時間で法則を推理したとでもいうのだろうか！？」\n鶴崎修功「これはドリーニュの例外系列と呼ばれるものですね。有限次元単純リー代数の中でも特に不思議なものが一列に並んでいて、今回の答えである D4D_4D4​ はディンキン図形が位数 3 の自己同型をもつという点で興味深いです」\n司会「一瞬で法則を見抜いた上に豊富な知識量！リー代王に一歩近づきました。一方、箱星さんは未だ正解なしという状況です」\n箱星「有限次元単純リー代数のルート系であることは気づいたんですが、出遅れてしまいましたねえ」\n超　難　問\n極限までズームされた画像が表示されます。何の画像であるか答えなさい。\nﾋﾟｺｰﾝ\n司会「IQ165の天才、鶴崎修功！」\n鶴崎修功「Introduction to Lie Algebras and Representation Theory」\nﾋﾟﾝﾎﾟｰﾝ\n司会「限られた情報から見事正解を導き出しました！鶴崎さん、なぜわかったのですか？」\n鶴崎修功「まず黄色が主体だったので、シュプリンガーから出版されている数学書であると予想しました。リー代数に関係する数学書を頭の中で列挙して、画像が Hump まで見えたところで、これは Humphreys の本だと確信しました」\n司会「素晴らしい」\n鶴崎修功「みなさんもこの本でリー代数に入門しましょう！」\n司会「ついに鶴崎修功がリー代王にリーチをかけました！」\n超　難　問\n「リー代数の普遍包絡代数を変形したものを量子群といいますが、量子群において q=0q=0q=0 としたときに何かが起こるだろうという動機のもと、1990 年頃に柏原正樹によって／」\nﾋﾟｺｰﾝ\n司会「押したのは、組合せ論を愛する承認欲求モンスター、箱星！」\n箱星「結晶基底」\nﾋﾟﾝﾎﾟｰﾝ\n司会「ここで箱星が初正解！鶴崎のリー代王に待ったをかけました！」\n箱星「結晶基底は組合せ論とも関係が深い対象なのでわかりましたね。組合せ論はいいぞ」\n司会「しかし依然として鶴崎がリードしています。果たして次で決着がつくのでしょうか！？」\n超　難　問\n「アルファベット一文字でお答えください。1970 年代に Bernstein, Gelfand, Gelfand によって／」\nﾋﾟｺｰﾝ\n司会「IQ165の天才、鶴崎修功！ここで正解すればリー代王です！」\n鶴崎修功「O」\nﾋﾟﾝﾎﾟｰﾝ\n司会「素晴らしい！激戦の末、リー代王となったのは鶴崎修功です！おめでとうございます！」\n鶴崎修功「ありがとうございます！」\n司会「リー代王となった感想はいかがでしょうか」\n鶴崎修功「そうですね、長年リー代数に取り組んできた努力が報われたようで感無量です。もちろんリー代数の世界は奥深いので、まだまだ努力していきたいですね」\n司会「惜しくも敗れてしまった箱星さん、今のお気持ちはいかがでしょうか」\n箱星「やはり、経験の浅さですね。精進します」\n司会「見事リー代王となった鶴崎さんには、賞品としてバラムツ一年分が贈呈されます」\n鶴崎修功「嬉しいです！」\n司会「次回は Zhu 代数に関する知識王決定戦、Zhu 代王でお会いしましょう！」\n箱星「さよなら～」\n","date":"2024-12-30","externalUrl":null,"permalink":"/novels/lie-daiou/","section":"おはなし一覧","summary":"鶴崎さんが同人誌化 OK とのことで勢いで作ったものです。問題があれば削除します。\n","title":"リー代王","type":"novels"},{"content":"この記事は組合せ論 Advent Calendar 2024 の 25 日目の記事です。\nいよいよアドベントカレンダーも最終日ですね。そして、今日はクリス Math ですね。\n良い子にしていたみなさんにプレゼントボックスを用意しました！\nうーん、並べ方が気に入らないですね……。\nこんな並べ方はできないでしょうか？\n単位立方体の箱で空間を敷き詰める。 どの 2 つの箱も、接する部分が単位正方形になることはない。 2 つ目の条件については、接する部分が単位正方形より小さい図形になることはよいものとします。\n実はこのような並べ方はできないことが証明されています。つまりどのように箱を敷き詰めても、ある 2 つの箱はぴったり面がくっついているということです。\nKeller の予想 # Keller の予想はこれを高次元に一般化したものです。\n予想: ddd 次元単位立方体で空間 Rd\\mathbb{R}^dRd を敷き詰めるとき、どの 2 つの立方体も接する部分が (d−1)(d-1)(d−1) 次元単位立方体にならないように敷き詰めることはできない。 驚くべきことに、この予想は d≤7d\\le 7d≤7 で成立し、d≥8d\\ge 8d≥8 で成立しないことがわかっています。つまり 8 次元以上ではうまく敷き詰められるということです。\nKeller グラフ # 空間に立方体を敷き詰めるという問題は考えにくいですが、この問題を組合せ論的な議論に帰着させることができます。\n論文にアクセスできなかったので間違ったことを書いているかもしれませんが、Keller グラフというものを考えると、このグラフにサイズ 2d2^d2d のクリークが存在しないことが Keller の予想と同値になるそうです。\n例えば d=2d=2d=2 のとき Keller グラフは次のようになるそうです。(Wikipedia より。By David Eppstein - Own work, CC0)\nこのグラフにサイズ 4 のクリークはないので、2 次元での Keller の予想は成立します。\n7 次元の場合 # Keller の予想は d=7d=7d=7 の場合が最後まで残っていました。これが解決されたのは 2020 年頃のようです。\n証明にはコンピュータによる計算が使われています。SAT などが使われているようです。コンピュータによる証明というと四色定理を思い出しますね。あの時代はコンピュータによる証明は特殊でしたが、現代ではよくあることになっています。\nとはいえ人間でもわかる証明も欲しいですね。\nおわりに # 複雑な問題を組合せ論に帰着させて解くという手法は面白いですね。難しい現代数学をパズルゲーム化していきたいです。\n組合せ論 Advent Calendar 2024 はこれで閉幕となります。ご参加ありがとうございました。来年も開催する予定です。来年はもっと参加者を増やしたいです。そのためにも布教活動を頑張ります。\n","date":"2024-12-25","externalUrl":null,"permalink":"/posts/keller/","section":"数学記事・PDF","summary":"この記事は組合せ論 Advent Calendar 2024 の 25 日目の記事です。\n","title":"クリス Math なのでプレゼントボックスを用意しました！(Keller の予想)","type":"posts"},{"content":"この記事は圏論 Advent Calendar 2024 の 24 日目の記事です。\nとある本で次のような記述があったようです：環 R1,…,RnR_1,\\ldots,R_nR1​,…,Rn​ の直積集合 R1×⋯×RnR_1\\times\\cdots\\times R_nR1​×⋯×Rn​ 上に加法と乗法を\n(a1,…,an)+(b1,…,bn)=(a1+b1,…,an+bn)(a_1,\\ldots,a_n)+(b_1,\\ldots,b_n)=(a_1+b_1,\\ldots,a_n+b_n)(a1​,…,an​)+(b1​,…,bn​)=(a1​+b1​,…,an​+bn​) (a1,…,bn)⋅(b1,…,bn)=(a1b1,…,anbn)(a_1,\\ldots,b_n)\\cdot (b_1,\\ldots,b_n)=(a_1b_1,\\ldots,a_nb_n)(a1​,…,bn​)⋅(b1​,…,bn​)=(a1​b1​,…,an​bn​) により定めたとき、(0,…,0)(0,\\ldots,0)(0,…,0) を加法の単位元、(1,…,1)(1,\\ldots,1)(1,…,1) を乗法の単位元とする環となる。これを R1,…,RnR_1,\\ldots,R_nR1​,…,Rn​ の直和という。\nこれを受けて、「直和ではなく直積だろう」という指摘がありました。私は「有限個なら直和と直積は一致するのでは？」と当初思っていましたが、調べてみるとこれは加群での話でした。\nそこで、環や加群の直和・直積を復習するため、そしてこれらを圏論的に捉えるためにこの記事を書くことにしました。\n圏における和と積 # C\\mathcal{C}C を圏とします。λ∈Λ\\lambda\\in\\Lambdaλ∈Λ に対して AλA _ {\\lambda}Aλ​ をこの圏の対象とします。A=(Aλ)λ∈ΛA=(A_{\\lambda}) _ {\\lambda\\in\\Lambda}A=(Aλ​)λ∈Λ​ の和とは、対象 A~\\widetilde{A}A と射の族 (iλ ⁣:Aλ→A~)λ∈Λ(i _ {\\lambda}\\colon A _ {\\lambda}\\to\\widetilde{A}) _ {\\lambda\\in\\Lambda}(iλ​:Aλ​→A)λ∈Λ​ の組であって、任意の対象 XXX と任意の射の族 (fλ ⁣:Aλ→X)λ∈Λ(f_{\\lambda}\\colon A_{\\lambda}\\to X) _ {\\lambda\\in\\Lambda}(fλ​:Aλ​→X)λ∈Λ​ に対して、f∘iλ=fλf\\circ i_{\\lambda}=f_{\\lambda}f∘iλ​=fλ​ がすべての λ∈Λ\\lambda\\in\\Lambdaλ∈Λ に対して成り立つような射 f ⁣:A~→Xf\\colon \\widetilde{A}\\to Xf:A→X が一意的に存在するものです。\nA~\\widetilde{A}A は ∐λ∈ΛAλ\\coprod_{\\lambda\\in\\Lambda}A_{\\lambda}∐λ∈Λ​Aλ​ とも書かれます。また余積と呼ばれることもあります。和は圏論における帰納極限の一種です。\nA=(Aλ)λ∈ΛA=(A_{\\lambda}) _ {\\lambda\\in\\Lambda}A=(Aλ​)λ∈Λ​ の積も同様に定義されます。これは対象 A~\\widetilde{A}A と射の族 (pλ ⁣:A~→Aλ)λ∈Λ(p_{\\lambda}\\colon \\widetilde{A}\\to A_{\\lambda}) _ {\\lambda\\in\\Lambda}(pλ​:A→Aλ​)λ∈Λ​ であって、任意の対象 XXX と任意の射の族 (fλ ⁣:X→Aλ)λ∈Λ(f_{\\lambda}\\colon X\\to A_{\\lambda}) _ {\\lambda\\in\\Lambda}(fλ​:X→Aλ​)λ∈Λ​ に対して、pλ∘f=fλp_{\\lambda}\\circ f=f_{\\lambda}pλ​∘f=fλ​ がすべての λ∈Λ\\lambda\\in\\Lambdaλ∈Λ に対して成り立つような射 f ⁣:X→A~f\\colon X\\to \\widetilde{A}f:X→A が一意的に存在するものです。\n積は ∏λ∈ΛAλ\\prod_{\\lambda\\in\\Lambda}A_{\\lambda}∏λ∈Λ​Aλ​ とも書かれます。積は射影極限の一種です。\n和や積は常に存在するとは限らないことに注意が必要です。\n加群の直和と直積 # RRR を環とします。圏 RRR-Mod\\mathbf{Mod}Mod は左 RRR 加群を対象とし、左 RRR 加群の準同型を射とする圏です。（小さな集合かどうかといった議論は省略します）\n(Mλ)λ∈Λ(M_{\\lambda}) _ {\\lambda\\in\\Lambda}(Mλ​)λ∈Λ​ を左 RRR 加群の族とします。(Mλ)λ∈Λ(M_{\\lambda}) _ {\\lambda\\in\\Lambda}(Mλ​)λ∈Λ​ の直積を、直積集合 ∏λ∈ΛMλ\\prod _ {\\lambda\\in\\Lambda}M_{\\lambda}∏λ∈Λ​Mλ​ に加法を (xλ)λ+(yλ)λ=(xλ+yλ)λ(x_{\\lambda}) _ {\\lambda}+(y_{\\lambda}) _ {\\lambda}=(x_{\\lambda}+y_{\\lambda}) _ {\\lambda}(xλ​)λ​+(yλ​)λ​=(xλ​+yλ​)λ​、RRR の元による左乗法を a(xλ)λ=(axλ)λa(x_{\\lambda}) _ {\\lambda}=(ax_{\\lambda}) _ {\\lambda}a(xλ​)λ​=(axλ​)λ​ により定めます。この左 RRR 加群を ∏λ∈ΛMλ\\prod _ {\\lambda\\in\\Lambda}M _ {\\lambda}∏λ∈Λ​Mλ​ で表します。写像 pμ ⁣:∏λ∈ΛMλ→Mμp_{\\mu}\\colon \\prod _ {\\lambda\\in\\Lambda}M_{\\lambda}\\to M_{\\mu}pμ​:∏λ∈Λ​Mλ​→Mμ​ を pμ((xλ)λ)=xμp_{\\mu}((x_{\\lambda}) _ {\\lambda})=x_{\\mu}pμ​((xλ​)λ​)=xμ​ により定義します。\nすると、これは圏 RRR-Mod\\mathbf{Mod}Mod における積になります。\nまた、(Mλ)λ∈Λ(M_{\\lambda})_{\\lambda\\in\\Lambda}(Mλ​)λ∈Λ​ の直和を、集合\n{(xλ)λ∈∏λ∈ΛMλ∣有限個を除いたλ∈Λに対してxλ=0} \\{(x_{\\lambda}) _ {\\lambda}\\in \\prod _ {\\lambda\\in\\Lambda}M_{\\lambda}\\mid \\text{有限個を除いた} \\lambda\\in\\Lambda \\text{に対して} x_{\\lambda}=0 \\} {(xλ​)λ​∈λ∈Λ∏​Mλ​∣有限個を除いたλ∈Λに対してxλ​=0}に同様の演算を定めたものとし、⨁λ∈ΛMλ\\bigoplus_{\\lambda\\in\\Lambda}M_{\\lambda}⨁λ∈Λ​Mλ​ で表します。iμ ⁣:Mμ→⨁λ∈ΛMλi_{\\mu}\\colon M_{\\mu}\\to \\bigoplus_{\\lambda\\in\\Lambda}M_{\\lambda}iμ​:Mμ​→⨁λ∈Λ​Mλ​ も定めます。これは RRR-Mod\\mathbf{Mod}Mod における和となります。\n加群の直和・直積を圏論の和・積として捉えることができました。\n定義から明らかなように、Λ\\LambdaΛ が有限集合の場合は直和と直積は一致します。\n環の直積 # 環のなす圏を Ring\\mathbf{Ring}Ring とします。\n最初に書いた環の「直和」は、Ring\\mathbf{Ring}Ring における積となります。\nでは Ring\\mathbf{Ring}Ring における和は何になるでしょうか？\nどうやら、自由積と呼ばれるものになるそうです。さらに、可換環の圏においてはテンソル積になるそうです。\nこの辺りの議論は確かめることができませんでした。すみません。\nおわりに # 当初はもっと高度なことを書こうと思っていましたが、基礎的なことがわかっていなかったのでやめました。\n圏論の理解ももっと深めたいと思っています。圏論と関係する、気になっているキーワードを列挙します。\ncategorification KLR 代数 Hall 代数 Soergel bimodule Khovanov ホモロジー いつかはこの辺りも理解したいです。\n参考文献 # https://x.com/komugikotori/status/1865233815494627775 Category of rings (Wikipedia) 志甫淳, 層とホモロジー代数, 共立出版, 2016. ","date":"2024-12-24","externalUrl":null,"permalink":"/posts/category/","section":"数学記事・PDF","summary":"この記事は圏論 Advent Calendar 2024 の 24 日目の記事です。\n","title":"圏における和と積","type":"posts"},{"content":"篠澤広さん、お誕生日おめでとうございます。\n学園アイドルマスターがリリースされる前から、数学が得意とのことで気になっていました。\n数学が得意なキャラクターを見るとどの分野が得意なのか考えますよね？（例えばブルーアーカイブの早瀬ユウカさんは確率論が得意そうだと勝手に思っています。）\n篠澤広さんは他に物理が得意とのことで、数理物理が専門だと思っていました。しかしもう 1 つの特技であるパズルについては当時はわかっていませんでした。\nその後、勉強を進めると Knutson-Tao-Woodward のパズルが数学のみならず量子可積分性の観点からも調べられていることがわかり、これが篠澤広さんの専門ではないかと思いました。自分の中で篠澤広さんの特技がつながりました。\n篠澤広さんに物理・数学を教わりたいという気持ちが沸き起こったので、そういう話を自分で作りました。本当はパズル規則の証明までやりたかったのですが、シューア関数を導入したところで力尽きました。すみません。\n実を言うと学園アイドルマスターはあまりプレイできていません。そのため篠澤広さんの理解が甘い可能性があります。こういう話を読みたいという提示です。物理・数学ガチ勢の方や篠澤広さんガチ勢の方にこんな話を書いてほしいです、読みたいので。\n物理・数学に関する指摘に加えて、篠澤広さんに関する指摘も受け付けております。（篠澤広さんは KTW パズルをやってないだろと言われたら何も言い返せませんが……）\nそういえば、篠澤広さんが物理学を解説する同人誌が話題ですね。読みたいです。\n参考文献はこちらです。\nMiller, Timothy. On Combinatorics, Integrability and Puzzles. Thesis. Zinn-Justin, Paul. Littlewood-Richardson coefficients and integrable tilings. Electron. J. Comb. 16, No. 1, Research Paper R12, 33 p. (2009). ","date":"2024-12-21","externalUrl":null,"permalink":"/novels/puzzle/afterword/","section":"おはなし一覧","summary":"篠澤広さん、お誕生日おめでとうございます。\n","title":"【シノサワパズル】あとがき","type":"novels"},{"content":"「篠澤さん、それは何ですか？」\n「あ、プロデューサーだ」\n篠澤広は三角形のピースを組み合わせて遊んでいるようだ。\n「これはパズル。3 種類のピースを組み合わせて、敷き詰める」\n3 種類のピースを見せてもらった。\n「これが 3 種類のピース。回転させてもいいけど、裏返すのはダメ。辺を合わせるときは、色を合わせる。これがルール」\nそして、篠澤広はピースを組み合わせて大きな三角形を作った。\n「どう？プロデューサーも、やってみる？」\n篠澤広からピースを渡された。それを組み立てつつ、話を続ける。\n「そういえば、パズルが特技でしたね」\n「まあね。でも、これはただの遊びじゃない」\n「どういうことですか？」\n「わたしのほかの特技、知ってる？」\n「学業、特に物理と数学でしたね」\n「そう。このパズルは、物理や数学とも、大いに関係する」\n手元の不完全な三角形を前に、手が止まる。ただの遊びにしか見えないこのパズルが、物理や数学と関係する？\n「ふふっ、知りたい？」\n「聞かせてください」\n「どこから話そうかな……」\n篠澤広はしばし考える。そして、口を開く。\n「シューア関数の話をしよう」\nシューア関数はいろいろなところに現れる。\n例えば、組合せ論。半標準ヤングタブローを使って記述できる。\n例えば、表現論。一般線形群の、既約多項式表現の指標として現れる。\n例えば、幾何学。グラスマン多様体のコホモロジーにおける、シューベルト類を表す。\n物理に近いところだと、KP 階層の τ\\tauτ 関数になるという話もあるね。\nそれで、今考えたいのは、2 つのシューア関数の積。これはシューア関数の線形結合で書けることが知られている。係数を求めることが古くからの研究課題になってる。\nこの係数は、例えばリトルウッド・リチャードソンタブローの個数になる。他にもいろいろあるけど、パズルもそのひとつ。\nKnutson, Tao, Woodward という 3 人の数学者が、この問題に取り組んだ。彼らは、三辺の色を決めたときのパズルピースのはめ方の個数が、リトルウッド・リチャードソン係数に等しいことを証明した。\nその後、Zinn-Justin という人が、このパズルを量子可積分性の観点から捉えなおした。\n現代では、グラスマン多様体を旗多様体に変えたり、コホモロジーを K コホモロジーや同変コホモロジーに変えたりと、いろいろな研究が行われているよ。その研究にも、量子可積分性が使われている。物理と数学を駆使して、パズルが研究されてる。\n俺は篠澤広の語りに夢中になっていた。彼女の使う用語の多くは難しくてわからなかった。それなのに心はワクワクしている。\n「もっと教えてください」\n「いいよ。でも、細部まで完璧には覚えてないから、明日でもいい？」\n「わかりました」\n手元の不完全なパズルを眺める。ここからどんな数学・物理が発展していくのだろうか。\n","date":"2024-12-21","externalUrl":null,"permalink":"/novels/puzzle/1/","section":"おはなし一覧","summary":"「篠澤さん、それは何ですか？」\n","title":"【シノサワパズル】第1話　パズル","type":"novels"},{"content":"翌日、空き教室にて。\n「今日はレッスンじゃないんだね」\n「いえ、これは特別レッスンです。篠澤さんには物理、数学、パズルに関する授業をしてもらいます」\n「それは、プロデューサーにしかメリットがなさそうだけど」\n「そんなことはありません」\n不思議そうな表情をしている篠澤さんに今回のレッスンの目的を説明する。\n「篠澤さんは、まっすぐ立ち続けることや、大きな声を出すことが苦手です」\n「うん」\n「授業では長時間にわたって、立ちながらしゃべることが必要です。これは、篠澤さんにとって十分な負荷がかかるトレーニングとなるはずです」\n「なるほど。プロデューサーが、わたしの話を聞きたいだけじゃないんだね」\n勿論パズルの話を聞きたいだけではない。ちゃんと篠澤広のことを思ってのことだ。\n「わかった。じゃあ早速、授業を始めるね」\n俺は最前列の席に座る。篠澤広はチョークを手に取り、黒板に書き始める。\nまずは、シューア関数について説明するね。定義方法はいくつもあるけど、フェルミオンを使って定義するね。\nこれが基本的な状態。黒いところに粒子があって、白いところにはない。と考えてもいいし、黒い粒子と白い粒子があると考えてもいい。座標は半奇数。この図だと黒い粒子が座標 −52,−32,12-\\frac52,-\\frac32,\\frac12−25​,−23​,21​ にあって、白い粒子が座標 12,32,52\\frac12,\\frac32,\\frac5221​,23​,25​ にある。書いてないけど、左側は全部黒、右側は全部白で無限に続いているものとするよ。\nこれがフェルミオンと呼ばれるのは、パウリの排他律をみたすから。つまり、同じ座標には粒子が 1 つまでしか存在できない。\nこの基本状態を真空というよ。\nさて、この状態から粒子を励起させよう。こんな風に。\n励起にはいくつかの方法がある。まずはこんなルールを考えよう。\n昨日は 3 種類のパズルピースを見せたけど、ここでは 5 種類のタイルを使う。矢印にしたがって、粒子を移動させる。パズルピースが色を合わせていたように、タイルも矢印を合わせないといけない。途中で消えたりしたらダメ。\nもう 1 つのルールはこんな感じ。\nこっちも 5 種類のタイルを使うけど、模様が違う。どちらも 5 種類のタイルを使うことから、5 頂点模型と呼ばれているよ。\nさて、賢明な読者はこの 2 つの関係がわかるだろう。\n「プロデューサー、この 2 つのルールには、どんな関係があるかな？」\n突然質問が飛んできた。\n1 つ目のルールではどこまでも右に動けるが、2 つ目のルールでは 1 つしか右に動けない。一体どのような関係があるのだろうか。\n「ヒントはありますか？」\n「そうだね、黒い粒子の励起に注目してたけど、白い粒子に注目してみるとどう？」\n改めて 1 つ目の図を見て白い粒子の動きに注目する。黒い粒子は右にいくつでも動けるが、白い粒子は左に 1 つしか動けないようだ。\n1 つしか動けない……？\n「もしかして、1 つ目のルールで黒い粒子が動いているときは、白い粒子は 2 つ目のルールで逆向きに動いている、とかでしょうか？」\n「正解。別の言い方をすると、左右反転して白と黒を入れ替えると、2 つのルールが入れ替わる。この左右反転して白黒を入れ替えるという操作は重要だから、共役と名前を付けておこう」\n共役。その言葉をメモする。\n「それで、シューア関数の話でしたよね？」\n「うん。シューア関数を定義する準備が整った」\nいよいよシューア関数が定義されるようだ。\n「……その前にプロデューサー。ずっとしゃべってたら喉がカラカラに」\n俺はペットボトルを差しだした。\nさて、ようやくシューア関数を定義できる。\n2 つの励起ルール―名前がないと不便だからルール 1 とルール 2 としよう―これらを使う。\nシューア関数は sλ(x1,…,xn)s_{\\lambda}(x_1,\\ldots,x_n)sλ​(x1​,…,xn​) という多項式。正確にはシューア多項式と言ったほうがいいかもね。λ\\lambdaλ はフェルミオンの状態を表すよ。\n真空のことを ∣∅⟩|\\varnothing\\rangle∣∅⟩ と表すけど、∣∅⟩|\\varnothing\\rangle∣∅⟩ から出発して、ルール 1 を nnn 回繰り返して ∣λ⟩|\\lambda\\rangle∣λ⟩ を作る。たとえば……。\n一番下が ∣∅⟩|\\varnothing\\rangle∣∅⟩ で、一番上が ∣λ⟩|\\lambda\\rangle∣λ⟩ だよ。\nそれで、黒い粒子の移動距離の分だけ xix_ixi​ をかける、ということをする。1 回目は黒い粒子が 2 だけ移動してるから、x12x_1^2x12​ をかける。2 回目の移動距離は 1+1=21+1=21+1=2 だから、x22x_2^2x22​ をかける。すると、x12x22x_1^2x_2^2x12​x22​ になる。\n∣∅⟩|\\varnothing\\rangle∣∅⟩ から ∣λ⟩|\\lambda\\rangle∣λ⟩ を作る方法はあと 2 つあって、それぞれ x1x23x_1x_2^3x1​x23​ と x13x2x_1^3x_2x13​x2​ という単項式ができる。これらをすべて足し合わせたものが、シューア多項式。今回の例だと\nsλ(x1,x2)=x13x2+x12x22+x1x23 s_{\\lambda}(x_1,x_2)=x_1^3x_2+x_1^2x_2^2+x_1x_2^3 sλ​(x1​,x2​)=x13​x2​+x12​x22​+x1​x23​になる。\n一般の場合も含めて、これを数式で書くと……。\nsλ(x1,…,xn)=⟨∅∣∏i=1nT1(xi)∣λ⟩ s_{\\lambda}(x_1,\\ldots,x_n)=\\langle\\varnothing | \\prod_{i=1}^n T_1(x_i) | \\lambda\\rangle sλ​(x1​,…,xn​)=⟨∅∣i=1∏n​T1​(xi​)∣λ⟩これはブラケット記法だね。T1T_1T1​ というのはルール 1 に対応する作用素で、転送行列というよ。\n次はルール 2 の方を考えよう。共役が大事だったね。λ\\lambdaλ の共役を λ′\\lambda^{\\prime}λ′ とすると……。\nsλ′(x1,…,xn)=⟨∅∣∏i=1nT2(xi)∣λ⟩ s_{\\lambda^{\\prime}}(x_1,\\ldots,x_n)=\\langle\\varnothing | \\prod_{i=1}^n T_2(x_i) | \\lambda\\rangle sλ′​(x1​,…,xn​)=⟨∅∣i=1∏n​T2​(xi​)∣λ⟩になることがわかる。\n最後に、ルール 1 を mmm 回使ってから、ルール 2 を nnn 回使うことを考えて、新しい関数を作る。\nsλ(x1,…,xm;y1,…,yn)=⟨∅∣∏i=1mT1(xi)∏i=1nT2(yi)∣λ⟩ s_{\\lambda}(x_1,\\ldots,x_m;y_1,\\ldots,y_n)=\\langle\\varnothing | \\prod_{i=1}^m T_1(x_i)\\prod_{i=1}^n T_2(y_i) | \\lambda\\rangle sλ​(x1​,…,xm​;y1​,…,yn​)=⟨∅∣i=1∏m​T1​(xi​)i=1∏n​T2​(yi​)∣λ⟩この左辺は超対称シューア関数という。これがパズルの証明において重要になる。\n「質問です。この記号は何ですか？」\n俺は ∏\\prod∏ という記号の意味を聞いた。\n「これは総積という意味だよ。たとえば、∏i=13T(xi)=T(x1)T(x2)T(x3)\\prod_{i=1}^3T(x_i)=T(x_1)T(x_2)T(x_3)∏i=13​T(xi​)=T(x1​)T(x2​)T(x3​) になる。数のかけ算にも使う記号だけど、数のかけ算と違ってかける順番が大事」\n「作用素、もかけ算ができるんですね」\n「そう。fff を作用させてから ggg を作用させることは、fff と ggg の積を作用させることと同じだと考える」\n「わかりました」\n超対称シューア関数は ∣∅⟩|\\varnothing\\rangle∣∅⟩ からルール 1 とルール 2 を経て ∣λ⟩|\\lambda\\rangle∣λ⟩ に到達していたね。これをもう少し観察しよう。\nルール 1 を終えた後の中間状態を ∣μ⟩|\\mu\\rangle∣μ⟩ とすると、∣∅⟩|\\varnothing\\rangle∣∅⟩ からルール 1 で ∣μ⟩|\\mu\\rangle∣μ⟩ に到達するところは普通のシューア関数 sμs_{\\mu}sμ​ に対応する。では ∣μ⟩|\\mu\\rangle∣μ⟩ からルール 2 で ∣λ⟩|\\lambda\\rangle∣λ⟩ に到達するところはどうかな。そのために、こんな定義をする。\nsλ/μ(x1,…,xn)=⟨μ∣∏i=1nT1(xi)∣λ⟩ s_{\\lambda/\\mu}(x_1,\\ldots,x_n)=\\langle\\mu | \\prod_{i=1}^n T_1(x_i) | \\lambda\\rangle sλ/μ​(x1​,…,xn​)=⟨μ∣i=1∏n​T1​(xi​)∣λ⟩sλ′/μ′(x1,…,xn)=⟨μ∣∏i=1nT2(xi)∣λ⟩ s_{\\lambda^{\\prime}/\\mu^{\\prime}}(x_1,\\ldots,x_n)=\\langle\\mu | \\prod_{i=1}^n T_2(x_i) | \\lambda\\rangle sλ′/μ′​(x1​,…,xn​)=⟨μ∣i=1∏n​T2​(xi​)∣λ⟩スタート地点を真空から ∣μ⟩|\\mu\\rangle∣μ⟩ に変えただけ。もちろん、μ=∅\\mu=\\varnothingμ=∅ のときはふつうのシューア関数になる。これは skew シューア関数というよ。\nこれを使うと、超対称シューア関数はこう書ける。\nsλ(x1,…,xm;y1,…,yn)=∑μsμ(x1,…,xm)sλ′/μ′(y1,…,yn) s_{\\lambda}(x_1,\\ldots,x_m;y_1,\\ldots,y_n)=\\sum_{\\mu}s_{\\mu}(x_1,\\ldots,x_m)s_{\\lambda^{\\prime}/\\mu^{\\prime}}(y_1,\\ldots,y_n) sλ​(x1​,…,xm​;y1​,…,yn​)=μ∑​sμ​(x1​,…,xm​)sλ′/μ′​(y1​,…,yn​)これで準備が整った。主定理を述べよう。\nsμsν=∑λcμνλsλs_{\\mu}s_{\\nu}=\\sum_{\\lambda}c^{\\lambda} _ {\\mu\\nu}s _ {\\lambda}sμ​sν​=∑λ​cμνλ​sλ​ をみたすような cμνλc^{\\lambda} _ {\\mu\\nu}cμνλ​ が存在する。λ,μ,ν\\lambda,\\mu,\\nuλ,μ,ν はフェルミオンの状態だったけど、白い粒子、黒い粒子をそれぞれ赤・青に対応させる。すると、三辺の状態が λ,μ,ν\\lambda,\\mu,\\nuλ,μ,ν であるようなパズルの個数が、cμνλc^{\\lambda}_{\\mu\\nu}cμνλ​ に等しい。これが主定理。\n「ふう……」\n篠澤広は主定理の説明を終え、一息ついた。\n「ですが篠澤さん、λ\\lambdaλ は無限に続きましたよね。この図では有限ですが、その違いはどうなっていますか？」\n「そうだね……、それも……説明しなくちゃ……」\n篠澤広の様子がおかしい。よく見ると、彼女は教卓につかまってようやく立っている状態であり、脚はがくがく震え、息遣いも荒い。\n「大丈夫ですか！？」\n「もう、限界かも……」\n「何故もっと早く言わなかったんですか？」\n「だって……限界に挑むのは……楽しい……か……ら……」\n最後の力を振り絞るように言葉を発した後、篠澤広は倒れた。\n授業を中断し、保健室へ連れていった。彼女は何故か幸せそうな表情をしていた。\n","date":"2024-12-21","externalUrl":null,"permalink":"/novels/puzzle/2/","section":"おはなし一覧","summary":"翌日、空き教室にて。\n","title":"【シノサワパズル】第2話　シューア関数","type":"novels"},{"content":"学園アイドルマスターの二次創作です。物理、数学、パズルを通じて篠澤広さんの境地にたどり着きましょう。\n組合せ論 Advent Calendar 2024 の 21 日目の作品です。\n第1話　パズル 第2話　シューア関数 （つづく？） あとがき ","date":"2024-12-21","externalUrl":null,"permalink":"/novels/puzzle/","section":"おはなし一覧","summary":"学園アイドルマスターの二次創作です。物理、数学、パズルを通じて篠澤広さんの境地にたどり着きましょう。\n","title":"シノサワパズル","type":"novels"},{"content":"この記事は Mathematical Logic Advent Calendar 2024 の 19 日目の記事です。\n今回は de Bruijn-Erdős の定理について解説します。少なくとも 2 つあるようですが、グラフ理論の方の定理を紹介します。\n彩色 # グラフの彩色については以下の記事でも少し触れています。\n【月刊組合せ論 Natori】June Huh 氏の業績を解説【2022 年 12 月号】\nグラフが nnn 彩色可能とは、頂点を nnn 色のうちのいずれかで塗り、隣り合う 2 頂点は異なる色で塗られているようにできることをいいます。\nde Bruijn-Erdős の定理は次のような定理です。\n定理 (de Bruijn-Erdős): グラフ GGG の任意の有限部分グラフは nnn 彩色可能とする。このとき GGG も nnn 彩色可能である。 類似の命題 # de Bruijn-Erdős の定理と似た命題がいくつかあります。\n定理 (命題論理のコンパクト性): Σ\\SigmaΣ を命題論理の論理式の集合とする。Σ\\SigmaΣ の任意の有限部分集合が充足可能ならば、Σ\\SigmaΣ も充足可能である。 他にも次のような命題があります。\n命題: Σ\\SigmaΣ を有限体 F2\\mathbb{F}_2F2​ 上の（多変数）多項式の集合とする。Σ\\SigmaΣ の任意の有限部分集合が共通の解をもつならば、Σ\\SigmaΣ も共通の解をもつ。 この命題は F2\\mathbb{F}_2F2​ の元を True, False だと思い、多項式を論理式だと思うことで命題論理のコンパクト性から従います。なお、この命題は一般の有限体上に拡張できますが、実数体などでは成り立ちません。反例を考えてみましょう。\nde Bruijn-Erdős の定理の証明 # 命題論理のコンパクト性を用いて de Bruijn-Erdős の定理を証明します。\nグラフの頂点 vvv と色 ccc の組に対して、Av,cA_{v,c}Av,c​ を変数とします。これは頂点 vvv を色 ccc で塗ることと対応します。そして Σ\\SigmaΣ を、各頂点はちょうど 1 色で塗られており、かつ隣り合う 2 頂点は異なる色で塗られていることを表す論理式の集合とします。Σ\\SigmaΣ が充足可能であることと、グラフ GGG が nnn 彩色可能であることは同値になります。\nいま、GGG のすべての有限部分グラフは nnn 彩色可能であると仮定します。命題論理のコンパクト性より、Σ\\SigmaΣ のすべての有限部分集合が充足可能であることを示せばよいです。Σ\\SigmaΣ の有限部分集合 Γ\\GammaΓ に対して、GGG のある有限部分グラフの nnn 彩色可能性と同値になる Σ\\SigmaΣ の部分集合 Γ′\\Gamma^{\\prime}Γ′ が存在して Γ⊆Γ′\\Gamma\\subseteq\\Gamma^{\\prime}Γ⊆Γ′ となります。仮定より Γ′\\Gamma^{\\prime}Γ′ は充足可能なので Γ\\GammaΓ も充足可能です。\n命題論理のコンパクト性の証明 # 命題論理のコンパクト性は超フィルター定理を用いて証明できます。\nFFF が 集合 XXX 上のフィルターとは、FFF は XXX のべき集合 P(X)\\mathcal{P}(X)P(X) の部分集合であり\n∅∉F\\emptyset\\not\\in F∅∈F X∈FX\\in FX∈F A∩B∈FA\\cap B\\in FA∩B∈F と A∈FA\\in FA∈F かつ B∈FB\\in FB∈F が同値 をみたすものです。FFF より真に大きいフィルターが存在しないとき、FFF は超フィルターであるといいます。\n特にフィルター FFF に対して、A1,…,An∈FA_1,\\ldots,A_n\\in FA1​,…,An​∈F ならば A1∩⋯∩AnA_1\\cap\\cdots\\cap A_nA1​∩⋯∩An​ は空でないことがいえます。この性質を有限交叉性といいます。\n定理 (超フィルター定理): XXX を集合とし、S⊆2XS\\subseteq 2^XS⊆2X は有限交叉性をもつとする。このとき SSS を含む超フィルターが存在する。 超フィルター定理を仮定して命題論理のコンパクト性定理を証明します。集合 III 上の論理式を考えているとし、Σ\\SigmaΣ を有限充足可能な論理式の集合、2I2^I2I を付値全体の集合とします。論理式 ϕ∈Σ\\phi\\in\\Sigmaϕ∈Σ に対して\nVϕ={ν∈2I∣ν(ϕ)=1} V_{\\phi}=\\{\\nu\\in 2^I\\mid \\nu(\\phi)=1\\} Vϕ​={ν∈2I∣ν(ϕ)=1}とおき、仮定より Vϕ1∩⋯∩VϕnV_{\\phi_1}\\cap\\cdots\\cap V_{\\phi_n}Vϕ1​​∩⋯∩Vϕn​​ は空ではありません。よって\nX={Vϕ∣ϕ∈Σ} X=\\{V_{\\phi}\\mid \\phi\\in \\Sigma\\} X={Vϕ​∣ϕ∈Σ}は有限交叉性をみたすので、超フィルター定理より X⊂D⊂P(2I)X\\subset D\\subset\\mathcal{P}(2^I)X⊂D⊂P(2I) をみたす超フィルター DDD が存在します。このような DDD に対して、論理式の集合 SSS を\nS={ϕ∣Vϕ∈D} S=\\{\\phi\\mid V_{\\phi} \\in D\\} S={ϕ∣Vϕ​∈D}により定義します。X⊂DX\\subset DX⊂D より Σ⊂S\\Sigma \\subset SΣ⊂S です。ϕ1,…,ϕn∈S\\phi_1,\\ldots,\\phi_n\\in Sϕ1​,…,ϕn​∈S に対して、DDD の有限交叉性から、ν(ϕ1)=⋯=ν(ϕn)=1\\nu(\\phi_1)=\\cdots=\\nu(\\phi_n)=1ν(ϕ1​)=⋯=ν(ϕn​)=1 をみたす ν∈2I\\nu\\in 2^Iν∈2I が存在します。すなわち SSS は有限充足可能です。任意の論理式 ϕ\\phiϕ に対して、DDD は超フィルターより ϕ∈S\\phi\\in Sϕ∈S または ¬ϕ∈S\\neg \\phi\\in S¬ϕ∈S をみたします。したがって SSS は極大なので、ある ν∈2I\\nu\\in 2^Iν∈2I を用いて S={ϕ∣ν(ϕ)=1}S=\\{\\phi\\mid \\nu(\\phi)=1\\}S={ϕ∣ν(ϕ)=1} と表せます。Σ⊂S\\Sigma\\subset SΣ⊂S より、Σ\\SigmaΣ も充足可能です。（証明おわり）\n逆に命題論理のコンパクト性から超フィルター定理を証明することもできます。すなわちこの 2 つの定理は同値です。\n超フィルター定理の証明 # 超フィルター定理はツォルンの補題から証明できます。有名っぽいので省略します（嘘で、間に合わなかっただけです）。\nこの 2 つの命題は同値ではありません。\n選択公理を仮定しない場合 # de Bruijn-Erdős の定理を選択公理あるいはそれよりも弱い命題を仮定して証明しました。ではこれらを仮定しない場合はどうでしょうか。\n実は、ZF では成り立ちません。GGG が任意の有限部分グラフが 2 彩色可能なグラフだとしても、GGG が 2 彩色可能になるとは限りません。\n次のようなグラフを考えてみましょう。\nこのグラフの有限部分グラフは 2 彩色可能です。しかしこのグラフが 2 彩色可能であるとすると、一方の色で塗られた頂点に着目することで、2 元集合族の選択関数が構成できることになってしまいます。\n逆 # 超フィルター定理から de Bruijn-Erdős の定理を証明しましたが、この逆については次のような定理が成り立ちます。\n定理: n≥3n\\ge 3n≥3 とする。グラフ GGG の有限部分グラフが nnn 彩色可能ならば GGG も nnn 彩色可能であるとする。このとき、超フィルター定理が成り立つ。 参考文献の \u0026ldquo;Axiom of Choice\u0026rdquo; では、定理 4.115, E.4 で 彩色に関する主張と PIT (Boolean Prime Ideal Theorem) との同値性、定理 4.37 で PIT と超フィルター定理の同値性を証明しています。もっと直接的に証明できるかもしれませんが考えていません。\nおわりに # 筆者は組合せ論が好きですが、基礎論と組合せ論も関係が深いらしいですね。大学院のときに受けた講義でラムゼー理論が扱われていて、面白そうだと思いました。超フィルター定理もその講義で知りました。もっといろいろ勉強してみたいです。\n基礎論の知識はほとんどないので、間違ったことを書いていたらご指摘ください。\n参考文献 # Csirmaz, Laszlo; Gyenis, Zalán. Mathematical logic, Exercises and solutions, Springer, 2022. Herrlich, Horst. Axiom Of Choice. Springer, 2006. ","date":"2024-12-19","externalUrl":null,"permalink":"/posts/dbe/","section":"数学記事・PDF","summary":"この記事は Mathematical Logic Advent Calendar 2024 の 19 日目の記事です。\n","title":"de Bruijn-Erdős の定理（グラフ理論）","type":"posts"},{"content":"この記事は物理学アドベントカレンダー2024 の 12 日目の記事として公開した記事を、2026 年に書き直したものです。\n2024 年に以下のプレプリントが arXiv に投稿され、衝撃を与えました。\nPavel Galashin, Amplituhedra and origami, I: tree level. arXiv:2410.09574 物理学の研究の中で生まれた amplituhedron と、古くからある遊びである折り紙の間に橋を架ける研究です。この 2 つに関係があると想像できた人はいたでしょうか？\nこの研究を紹介した一般向けの記事として、Quanta Magazine の記事があります。筆者も解説を試みてこの記事の初稿を公開しました。（力不足で満足のいく解説はできませんでしたが……）\nその後、2026 年に続編となるプレプリントが公開されました。それに合わせて上述のプレプリントも大幅に改訂されました。\nPavel Galashin, Amplituhedra and origami, II: loop level. arXiv:2606.03439 この記事ではこれらの解説を試みます。\n散乱振幅 # amplituhedron は散乱振幅 (scattering amplitude) に由来する概念です。\n散乱振幅とは何でしょうか？\nわかりません！！！！！物理学に詳しい人に聞いてください。\nざっくりとした話をします。散乱振幅の計算にはファインマンダイアグラムが使われます。しかし比較的小さな例でも数千個の図形を描かないといけないなど、非効率的です。\nそこで編み出されたのが BCFW recursion という手法です。これでファインマンダイアグラムをたくさん描くよりも効率的に散乱振幅を計算できるようになりました。\nしかしまだ課題は残ります。\nBCFW recursion でもたくさんの計算が必要になることがある。にもかかわらず、結果がシンプルになることもある。 計算の途中で現れる極が、計算結果では消える。 recursion の方法は何通りもあるが、結果は等しくなる。途中式の関係は何だろうか。 散乱振幅をより深く理解する必要がありそうです。\nAmplituhedron # そこで登場したのが amplituhedron です。\namplituhedron の特徴を一言でいうと「散乱振幅は amplituhedron の体積である」です。\n体積と書かれている通り幾何学的な対象なのですが、どうやら普通の意味での体積ではないようなので注意が必要です。\nそして amplituhedron は BCFW recursion の意味を幾何学的に説明します。すなわち、小さな場合の散乱振幅を利用して大きな場合の散乱振幅を計算するということを、小さなパーツを組み合わせて大きな図形を作るということに対応させます。平面図形を三角形分割することと似ていますね。実際には三角形ではないですが amplituhedron の場合も三角形分割と呼ばれます。\n散乱振幅の計算を幾何学的に捉えることで、上述の謎も理解できるようになりました。例えば 2 つの三角形の辺を貼り合わせて四角形を作るとき\n四角形の辺は計算で消えない極に対応する。 貼り合わせによって四角形の対角線になる辺は、計算途中では極だが最終的に消えるものに対応する。 と解釈できます。さらに recursion の方法の違いは三角形分割の違いと捉えられます。\nこのように、散乱振幅を計算するとき amplituhedron を考えることが重要になります。ここで、次の問が amplituhedron の基本的な問題となりました。\n問 BCFW recursion から生まれる amplituhedron のパーツは、重なりも隙間もない amplituhedron の分割となるだろうか。 実は、amplituhedron にはいくつかの亜種が存在します。まずは momentum space で考えるか、momentum-twistor space で考えるかというものです。単に amplituhedron といったときは後者であることが多く、前者の場合は momentum amplituhedron と呼ばれることがあります。さらに、ファインマンダイアグラムにループがいくつあるかも考えます。ループがない場合 tree amplituhedron と呼ばれます。\nGalashin の定理 # Galashin は次の結果を証明しました。\n定理 BCFW recursion によって、任意のループの個数について、amplituhedron も momentum amplituhedron も三角形分割される。 これまで、限定的なケースでは進展がありましたが、ここまでの結果は初めてです。\nGalashin のプレプリント I ではループがない場合、II ではループが任意の場合を証明しています。\n証明には折り紙が重要な役割を果たします。\n折り紙と amplituhedron の対応 # Galashin のプレプリント I の定理 1.3 が折り紙と amplituhedron の対応の正確な主張です。\n今の筆者の知識では解説できないので流します。\n折り紙 # ここまでで、折り紙を利用して amplituhedron の予想が証明されたと述べました。\n実は、折り紙の問題を amplituhedron を利用して解くという方向もあります。\nまさに「橋を架ける」という感じで素晴らしいですね。\nおわりに # 最初に公開した記事を書き直しましたが、やはり理解できていないことばかりです。\nまた勉強を進めて書き直すかもしれません。\n","date":"2024-12-12","externalUrl":null,"permalink":"/posts/origami-and-amplituhedra/","section":"数学記事・PDF","summary":"この記事は物理学アドベントカレンダー2024 の 12 日目の記事として公開した記事を、2026 年に書き直したものです。\n","title":"折り紙と amplituhedron","type":"posts"},{"content":"組合せ論とは何か、組合せ論的な証明とは何かについて考えていきます。\nこの記事はもともと月刊組合せ論 Natori の一部となる予定でしたが、組合せ論 Advent Calendar 2024 の 5 日目の記事として公開することにしました。\n組合せ論ってなんだろう # 組合せ論とは何でしょうか。「これは組合せ論でこれは組合せ論ではない」といった線引きは難しいです。なぜなら現代数学では様々な分野が融合しているからです。代数学・幾何学・解析学は勿論、数理論理学や物理学とも関係があるのが組合せ論です。\n数学者 Igor Pak のサイトでは、様々な数学者が語った「組合せ論とは何か」が載っています。一度眺めてみてください。\nhttps://www.math.ucla.edu/~pak/hidden/papers/Quotes/Combinatorics-quotes.htm\n組合せ論的な考え方ってなんだろう # 例えば Cn=1n+1(2nn)C_n=\\frac{1}{n+1}\\binom{2n}{n}Cn​=n+11​(n2n​) という数列を考えます。これだけではただの数ですが、「CnC_nCn​ は nnn 個の ( と nnn 個の ) からなる正しい括弧列の個数である」ということを踏まえると、CnC_nCn​ を組合せ論的に考えることができます。\nこのように、ある数を「ある条件を満たすオブジェクトの個数」と考えることで組合せ論的な解釈ができるといえそうです。ですがこれは本当でしょうか？\nSw\\mathfrak{S}_wSw​ をシューベルト多項式とします。この記事では解説できないので、そんなものもあるんだ程度に捉えてください。2 つのシューベルト多項式の積をシューベルト多項式の線形結合として表すことができます。\nSu⋅Sv=∑wcuvwSw \\mathfrak{S} _ u\\cdot\\mathfrak{S} _ v=\\sum_w c_{uv}^w \\mathfrak{S}_w Su​⋅Sv​=w∑​cuvw​Sw​係数 cuvwc_{uv}^wcuvw​ をシューベルト係数と呼びます。シューベルト係数は非負整数になることが知られています。このことから、シューベルト係数はあるオブジェクトの個数に等しいのではないかと考えられますが、この数の組合せ論的な解釈は見つかっていないというのが共通認識となっているようです。一方でシューベルト係数は 3 つのシューベルト多様体の交叉においてある種の点の個数に等しいということから、これが解釈ではないかという意見もあります。しかしこれは「組合せ論的な」解釈ではないと考えられているようです。\nでは何が組合せ論的な解釈で何が組合せ論的ではないのでしょうか。Igor Pak は組合せ論的な解釈を一言で表しています。それは #P です。#P とは P や NP のような計算複雑性のクラスです。\n組合せ論的な証明ってなんだろう # 過去の月刊組合せ論 Natori の記事を 2 つ紹介します。まずは交代符号行列予想という組合せ論の予想です。\n【月刊組合せ論 Natori】ルイス・キャロルと交代符号行列【2022 年 11 月号】\nこの予想は数理物理のテクニックを用いて証明されました。\nもう 1 つは彩色多項式の係数がユニモーダルになるという予想です。\n【月刊組合せ論 Natori】June Huh 氏の業績を解説【2022 年 12 月号】\nこちらは代数幾何学のテクニックを用いて証明されました。\nこのように組合せ論は様々な分野と融合して発展しています。しかしそんな中でも「組合せ論的な証明」にこだわる人がいます。実際交代符号行列予想も全単射を用いた証明が後に見つかりました。\nなぜ組合せ論的な証明を追求するのでしょうか？\nぜひ組合せ論が専門の人から話を聞いてみたいです。(私にはわかりませんでした)\nおわりに # 組合せ論入門みたいな記事を書きたかったのですが、実は入門記事の方が書くのが難しいんですよね。\n組合せ論 Advent Calendar 2024 ではまだまだ参加者を募集しています。というか参加してくれないと主催者が過労死してしまう……。\n","date":"2024-12-05","externalUrl":null,"permalink":"/posts/what-is-combinatorics/","section":"数学記事・PDF","summary":"組合せ論とは何か、組合せ論的な証明とは何かについて考えていきます。\n","title":"組合せ論的な証明ってなんだろう","type":"posts"},{"content":"この記事は Math Advent Calendar 2024 の 4 日目の記事です。\n今回はランダム順列において固定点の個数の期待値を求めていきます。\n問題 # 順列とは (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列のこととします。順列 ppp の固定点とは、pv=vp_v=vpv​=v をみたす vvv のことです。例えば p=(3,2,1,4,6,5)p=(3,2,1,4,6,5)p=(3,2,1,4,6,5) では 2,42,42,4 が固定点です。\n今回考える問題は次のようなものです：n!n!n! 個の順列を等確率でランダムに選んだときの固定点の個数の期待値を求めよ。\n小さい例で試してみましょう。n=1n=1n=1 のときは p=(1)p=(1)p=(1) しかないので 111 です。n=2n=2n=2 のとき p=(1,2),(2,1)p=(1,2),(2,1)p=(1,2),(2,1) の 2 つがあります。固定点の個数はそれぞれ 2,02,02,0 なので、期待値は 1 です。n=3n=3n=3 のとき\np=(1,2,3)p=(1,2,3)p=(1,2,3): 3 個 p=(1,3,2)p=(1,3,2)p=(1,3,2): 1 個 p=(2,1,3)p=(2,1,3)p=(2,1,3): 1 個 p=(2,3,1)p=(2,3,1)p=(2,3,1): 0 個 p=(3,1,2)p=(3,1,2)p=(3,1,2): 0 個 p=(3,2,1)p=(3,2,1)p=(3,2,1): 1 個 なので、期待値は 3+1+1+16=1\\frac{3+1+1+1}{6}=163+1+1+1​=1 です。すべての nnn について期待値は 1 だろうと予測できますね。\nでは実際に証明してみましょう。いろいろな証明方法がありますが、ここでは対称群の作用を考えます。\nコーシー・フロベニウスの補題 # 群作用について簡単に紹介します。GGG を有限群、XXX を集合とします。σ\\sigmaσ を GGG の XXX への作用とします。つまり、各 g∈Gg\\in Gg∈G に対して σ(g)\\sigma(g)σ(g) は XXX 上の全単射であり、かつ ggg を σ(g)\\sigma(g)σ(g) にうつす写像が GGG から XXX 上の全単射のなす群への群準同型であるものです。x∈Xx\\in Xx∈X に対して σ(g)(x)\\sigma(g)(x)σ(g)(x) のことを g.xg.xg.x と書くことにします。\nx∈Xx\\in Xx∈X に対して集合 {g.x∣g∈G}\\{g.x\\mid g\\in G\\}{g.x∣g∈G} を軌道といい、g∈Gg\\in Gg∈G に対して Fix(g)={x∈X∣g.x=x}\\mathrm{Fix}(g)=\\{x\\in X\\mid g.x=x\\}Fix(g)={x∈X∣g.x=x} を固定点集合といいます。\nコーシー・フロベニウスの補題はバーンサイドの補題とも呼ばれ、軌道の個数を数える公式です。\n補題: 相異なる軌道の個数は\n1∣G∣∑g∈G∣Fix(g)∣ \\frac{1}{|G|}\\sum_{g\\in G}|\\mathrm{Fix}(g)| ∣G∣1​g∈G∑​∣Fix(g)∣に等しい。\nこの補題を使うことで期待値が計算できます。対称群 SnS_nSn​ の X={1,2,…,n}X=\\{1,2,\\ldots,n\\}X={1,2,…,n} への作用を通常の作用とします (すなわち、g∈Sn,x∈Xg\\in S_n, x\\in Xg∈Sn​,x∈X に対して g.xg.xg.x は gxg_xgx​)。このとき期待値は補題における式\n1n!∑g∈Sn∣Fix(g)∣ \\frac{1}{n!}\\sum_{g\\in S_n}|\\mathrm{Fix}(g)| n!1​g∈Sn​∑​∣Fix(g)∣に等しいので、軌道の個数に等しいことになります。明らかに軌道は 1 本なので、期待値が 1 に等しいことがわかりました。\n一般化 # 一般化して次の問題を考えます：n!n!n! 個の順列を等確率でランダムに選んだときの固定点の個数の kkk 乗の期待値を求めよ。\nつまり\n1n!∑g∈Sn∣Fix(g)∣k \\frac{1}{n!}\\sum_{g\\in S_n}|\\mathrm{Fix}(g)|^k n!1​g∈Sn​∑​∣Fix(g)∣kを計算します。ぱっと見ではコーシー・フロベニウスの補題は使えないように見えますが、実は再びこの補題を使うことができます。\nσ\\sigmaσ を GGG の XXX への群作用とするとき、GGG の XkX^kXk (直積集合) への群作用 σ′\\sigma^{\\prime}σ′ を\ng.(x1,…,xk)=(g.x1,…,g.xk) g.(x_1,\\ldots,x_k)=(g.x_1,\\ldots,g.x_k) g.(x1​,…,xk​)=(g.x1​,…,g.xk​)により定めます。すると Fixσ′(g)=Fixσ(g)k\\mathrm{Fix} _ {\\sigma^{\\prime}}(g)=\\mathrm{Fix}_{\\sigma}(g)^kFixσ′​(g)=Fixσ​(g)k であることがわかります。集合として等しいので位数も等しいです。\nこのことから、対称群 SnS_nSn​ の {1,2,…,n}k\\{1,2,\\ldots,n\\}^k{1,2,…,n}k への作用を考えたとき、軌道の個数が答えになります。\n例えば (1,2,2,3)(1,2,2,3)(1,2,2,3) の軌道には (2,3,3,1)(2,3,3,1)(2,3,3,1) などが属しますが、(1,2,3,2)(1,2,3,2)(1,2,3,2) は属しません。\n軌道の個数は、X1∪X2∪⋯∪Xn={1,2,…,k}X_1\\cup X_2\\cup\\cdots\\cup X_n=\\{1,2,\\ldots,k\\}X1​∪X2​∪⋯∪Xn​={1,2,…,k} (ここで XiX_iXi​ は互いに交わらないが、空集合でもよい) をみたす集合 {X1,…,Xn}\\{X_1,\\ldots,X_n\\}{X1​,…,Xn​} の個数に等しいことがわかります。n≥kn\\ge kn≥k のときこの数はベル数と呼ばれる数と等しくなります。\n参考文献 # https://kotatsugame.hatenablog.com/entry/2022/08/03/112733 https://qchu.wordpress.com/2012/11/07/fixed-points-of-random-permutations/ ","date":"2024-12-04","externalUrl":null,"permalink":"/posts/random-permutation-fixed-point/","section":"数学記事・PDF","summary":"この記事は Math Advent Calendar 2024 の 4 日目の記事です。\n","title":"ランダム順列における固定点の個数の期待値","type":"posts"},{"content":"この記事は日曜数学 Advent Calendar 2024 の 2 日目の記事です。\n数学の世界には二項係数を含む等式がたくさんあります。例えば\n∑k=0n(2kk)(2(n−k)n−k)=4n \\sum_{k=0}^n\\binom{2k}{k}\\binom{2(n-k)}{n-k}=4^n k=0∑n​(k2k​)(n−k2(n−k)​)=4nという等式があります。このような等式はどう証明したらよいでしょうか？\n今回は generatingfunctionology という本で紹介されている Snake Oil method という手法を紹介します。\n(これは Bing Image Creator で生成した Snake Oil method のイラストです)\nSnake Oil method # Snake Oil method は二項係数を含む和を計算するときに役立ちます。大まかな流れは次のようなものです。\n母関数を考える。 和の順序を入れ替える。 係数を見る。 具体例を見る前に、基本的な等式を 2 つ紹介します。まずは\n(1+x)n=∑k=0n(nk)xk (1+x)^n=\\sum_{k=0}^n\\binom{n}{k}x^k (1+x)n=k=0∑n​(kn​)xkです。これは通常の二項定理です。次は\n1(1−x)n+1=∑k=0(n+kk)xk \\frac{1}{(1-x)^{n+1}}=\\sum_{k=0}\\binom{n+k}{k}x^k (1−x)n+11​=k=0∑​(kn+k​)xkです。これは負の二項定理と呼ばれることもあります。\nこれを踏まえたうえで、Snake Oil method を使った等式の証明を見ていきましょう。\n練習 # まずは\n∑k≥0(n−kk) \\sum_{k\\ge 0}\\binom{n-k}{k} k≥0∑​(kn−k​)を計算します。ただし nnn は非負整数です。母関数\nf(x)=∑n=0∞∑k≥0(n−kk)xn f(x)=\\sum_{n=0}^{\\infty}\\sum_{k\\ge 0}\\binom{n-k}{k}x^n f(x)=n=0∑∞​k≥0∑​(kn−k​)xnを考えます。そして和の順序を入れ替えて\nf(x)=∑k=0∞∑n=k∞(n−kk)xn f(x)=\\sum_{k=0}^{\\infty}\\sum_{n=k}^{\\infty}\\binom{n-k}{k}x^n f(x)=k=0∑∞​n=k∑∞​(kn−k​)xnとなります。m=n−km=n-km=n−k とおくと\nf(x)=∑k=0∞∑m=0∞(mk)xm+k=∑k=0∞xk∑m=0∞(mk)xm \\begin{align*} f(x)\u0026amp;=\\sum_{k=0}^{\\infty}\\sum_{m=0}^{\\infty}\\binom{m}{k}x^{m+k} \\\\ \u0026amp;= \\sum_{k=0}^{\\infty}x^k\\sum_{m=0}^{\\infty}\\binom{m}{k}x^m \\end{align*} f(x)​=k=0∑∞​m=0∑∞​(km​)xm+k=k=0∑∞​xkm=0∑∞​(km​)xm​となります。二項定理を用いることができ\nf(x)=∑k=0∞xk(1+x)k=∑k=0∞(x+x2)k=11−x−x2 \\begin{align*} f(x)\u0026amp;=\\sum_{k=0}^{\\infty}x^k(1+x)^k \\\\ \u0026amp;= \\sum_{k=0}^{\\infty}(x+x^2)^k \\\\ \u0026amp;= \\frac{1}{1-x-x^2} \\end{align*} f(x)​=k=0∑∞​xk(1+x)k=k=0∑∞​(x+x2)k=1−x−x21​​となり、母関数を閉じた形で表すことができました。f(x)f(x)f(x) の xnx^nxn の係数を ana_nan​ とおくと、an+2=an+1+ana_{n+2}=a_{n+1}+a_nan+2​=an+1​+an​ をみたします。初期値を考えることで、ana_nan​ はフィボナッチ数 Fn+1F_{n+1}Fn+1​ であることがわかります。よって\n∑k≥0(n−kk)=Fn+1 \\sum_{k\\ge 0}\\binom{n-k}{k}=F_{n+1} k≥0∑​(kn−k​)=Fn+1​であることがわかりました。\nHockey-stick identity # 次は\n∑k=0n(r+kr) \\sum_{k=0}^n\\binom{r+k}{r} k=0∑n​(rr+k​)を計算しましょう。r,nr,nr,n は非負整数です。母関数は\nf(x)=∑n=0∞∑k=0n(r+kr)xn f(x)=\\sum_{n=0}^{\\infty}\\sum_{k=0}^n\\binom{r+k}{r}x^n f(x)=n=0∑∞​k=0∑n​(rr+k​)xnとなります。和の順序を入れ替えて\nf(x)=∑k=0∞∑n=k∞(r+kr)xn=∑k=0∞(r+kr)xk1−x=11−x∑k=0∞(r+kr)xk \\begin{align*} f(x) \u0026amp;= \\sum_{k=0}^{\\infty}\\sum_{n=k}^{\\infty}\\binom{r+k}{r}x^n \\\\ \u0026amp;= \\sum_{k=0}^{\\infty}\\binom{r+k}{r}\\frac{x^k}{1-x} \\\\ \u0026amp;= \\frac{1}{1-x}\\sum_{k=0}^{\\infty}\\binom{r+k}{r}x^k \\end{align*} f(x)​=k=0∑∞​n=k∑∞​(rr+k​)xn=k=0∑∞​(rr+k​)1−xxk​=1−x1​k=0∑∞​(rr+k​)xk​となります。負の二項定理を使うと\nf(x)=1(1−x)r+2 f(x)=\\frac{1}{(1-x)^{r+2}} f(x)=(1−x)r+21​となります。再び負の二項定理を用いることで、f(x)f(x)f(x) の xnx^nxn の係数は (r+n+1n)\\binom{r+n+1}{n}(nr+n+1​) であることがわかります。よって\n∑k=0n(r+kr)=(r+n+1n) \\sum_{k=0}^n\\binom{r+k}{r}=\\binom{r+n+1}{n} k=0∑n​(rr+k​)=(nr+n+1​)です。\n最初の等式 # 最初に載せた等式\n∑k=0n(2kk)(2(n−k)n−k)=4n \\sum_{k=0}^n\\binom{2k}{k}\\binom{2(n-k)}{n-k}=4^n k=0∑n​(k2k​)(n−k2(n−k)​)=4nを Snake Oil method で示してみましょう。\nf(x)=∑n=0∞∑k=0n(2kk)(2(n−k)n−k)xn f(x)=\\sum_{n=0}^{\\infty}\\sum_{k=0}^n\\binom{2k}{k}\\binom{2(n-k)}{n-k}x^n f(x)=n=0∑∞​k=0∑n​(k2k​)(n−k2(n−k)​)xnとおきます。和の順序を入れ替えて\nf(x)=∑k=0∞∑n=k∞(2kk)(2(n−k)n−k)xn=∑k=0∞(2kk)xk∑n=k∞(2(n−k)n−k)xn−k=(∑k=0∞(2kk)xk)2 \\begin{align*} f(x) \u0026amp;= \\sum_{k=0}^{\\infty}\\sum_{n=k}^{\\infty}\\binom{2k}{k}\\binom{2(n-k)}{n-k}x^n \\\\ \u0026amp;= \\sum_{k=0}^{\\infty}\\binom{2k}{k}x^k\\sum_{n=k}^{\\infty}\\binom{2(n-k)}{n-k}x^{n-k} \\\\ \u0026amp;= \\left(\\sum_{k=0}^{\\infty}\\binom{2k}{k}x^k\\right)^2 \\end{align*} f(x)​=k=0∑∞​n=k∑∞​(k2k​)(n−k2(n−k)​)xn=k=0∑∞​(k2k​)xkn=k∑∞​(n−k2(n−k)​)xn−k=(k=0∑∞​(k2k​)xk)2​となります。ここで\n∑k=0∞(2kk)xk=11−4x \\sum_{k=0}^{\\infty}\\binom{2k}{k}x^k=\\frac{1}{\\sqrt{1-4x}} k=0∑∞​(k2k​)xk=1−4x​1​が成り立ちます。これは右辺を (1−4x)−1/2(1-4x)^{-1/2}(1−4x)−1/2 とみなすことで二項定理から証明できます。これを用いると\nf(x)=11−4x f(x)=\\frac{1}{1-4x} f(x)=1−4x1​となるので、xnx^nxn の係数は 4n4^n4n です。よって示されました。\nこの等式を組合せ論的に解釈して証明するのはある程度の難しさがあると思います。(Stanley, Enumerative Combinatorics の一章の演習問題 3 (c) の解説を参照)\n実践編 # 2023年のある日、このようなツイートを見かけました。\n赤は二項係数、青は連続する奇数。先日、息子と積分計算で遊んでいて見つけたんだけど、積分を経由せずに直接計算で示せるものでしょうか。 pic.twitter.com/euAJCPUTAm\n\u0026mdash; 濱中裕明 (@Ototo_) September 26, 2023 次の等式が予想されていました。\n∑k=0m(−1)k2k+1(mk)=(2m+3)∑k=0m(−1)k2k+3(mk) \\sum_{k=0}^m\\frac{(-1)^k}{2k+1}\\binom{m}{k}=(2m+3)\\sum_{k=0}^m\\frac{(-1)^k}{2k+3}\\binom{m}{k} k=0∑m​2k+1(−1)k​(km​)=(2m+3)k=0∑m​2k+3(−1)k​(km​)二項係数の和を含む等式なので、Snake Oil method が使えるのではないかと思い実践してみました。\nまず左辺の母関数 f(x)f(x)f(x) を考えます。\nf(x)=∑m≥0∑k=0m(−1)k2k+1(mk)xm=∑k≥0∑m≥k(−1)k2k+1(mk)xm=∑k≥0(−1)k2k+1xk∑n≥0(n+kk)xn=∑k≥0(−1)k2k+1xk⋅1(1−x)k+1 \\begin{align*} f(x) \u0026amp;= \\sum_{m\\ge 0}\\sum_{k=0}^m\\frac{(-1)^k}{2k+1}\\binom{m}{k}x^m \\\\ \u0026amp;= \\sum_{k\\ge 0}\\sum_{m\\ge k}\\frac{(-1)^k}{2k+1}\\binom{m}{k}x^m \\\\ \u0026amp;= \\sum_{k\\ge 0}\\frac{(-1)^k}{2k+1}x^k\\sum_{n\\ge 0}\\binom{n+k}{k}x^n \\\\ \u0026amp;= \\sum_{k\\ge 0}\\frac{(-1)^k}{2k+1}x^k\\cdot \\frac{1}{(1-x)^{k+1}} \\end{align*} f(x)​=m≥0∑​k=0∑m​2k+1(−1)k​(km​)xm=k≥0∑​m≥k∑​2k+1(−1)k​(km​)xm=k≥0∑​2k+1(−1)k​xkn≥0∑​(kn+k​)xn=k≥0∑​2k+1(−1)k​xk⋅(1−x)k+11​​さらに計算できそうですが、ここで止めておきます。\n次は右辺の母関数 g(x)g(x)g(x) を計算しますが、その前に\n∑m≥k(mk)xm=xk(1−x)k+1 \\sum_{m\\ge k}\\binom{m}{k}x^m=\\frac{x^k}{(1-x)^{k+1}} m≥k∑​(km​)xm=(1−x)k+1xk​の両辺を微分して xxx 倍することで\n∑m≥km(mk)xm=xk(k+x)(1−x)k+2 \\sum_{m\\ge k}m\\binom{m}{k}x^m=\\frac{x^k(k+x)}{(1-x)^{k+2}} m≥k∑​m(km​)xm=(1−x)k+2xk(k+x)​が得られることを用います。\ng(x)=∑m≥0∑k=0m(2m+3)(−1)k2k+3(mk)xm=∑k≥0∑m≥k(2m+3)(−1)k2k+3(mk)xm=∑k≥0(−1)k2k+3[2xk(k+x)(1−x)k+2+3xk(1−x)k+1]=∑k≥0(−1)k2k+3xk(2k+3−x)(1−x)k+2=∑k≥0(−1)kxk(1−x)k+2+∑k≥0(−1)k+12k+3xk+1(1−x)k+2=11−x+∑k≥1(−1)k2k+1xk(1−x)k+1=∑k≥0(−1)k2k+1xk(1−x)k+1 \\begin{align*} g(x) \u0026amp;= \\sum_{m\\ge 0}\\sum_{k=0}^m(2m+3)\\frac{(-1)^k}{2k+3}\\binom{m}{k}x^m \\\\ \u0026amp;= \\sum_{k\\ge 0}\\sum_{m\\ge k}(2m+3)\\frac{(-1)^k}{2k+3}\\binom{m}{k}x^m \\\\ \u0026amp;= \\sum_{k\\ge 0}\\frac{(-1)^k}{2k+3}\\left[2\\frac{x^k(k+x)}{(1-x)^{k+2}}+3\\frac{x^k}{(1-x)^{k+1}}\\right] \\\\ \u0026amp;= \\sum_{k\\ge 0}\\frac{(-1)^k}{2k+3}\\frac{x^k(2k+3-x)}{(1-x)^{k+2}} \\\\ \u0026amp;= \\sum_{k\\ge 0}(-1)^k\\frac{x^k}{(1-x)^{k+2}}+\\sum_{k\\ge 0}\\frac{(-1)^{k+1}}{2k+3}\\frac{x^{k+1}}{(1-x)^{k+2}} \\\\ \u0026amp;= \\frac{1}{1-x}+\\sum_{k\\ge 1}\\frac{(-1)^k}{2k+1}\\frac{x^k}{(1-x)^{k+1}} \\\\ \u0026amp;= \\sum_{k\\ge 0}\\frac{(-1)^k}{2k+1}\\frac{x^k}{(1-x)^{k+1}} \\end{align*} g(x)​=m≥0∑​k=0∑m​(2m+3)2k+3(−1)k​(km​)xm=k≥0∑​m≥k∑​(2m+3)2k+3(−1)k​(km​)xm=k≥0∑​2k+3(−1)k​[2(1−x)k+2xk(k+x)​+3(1−x)k+1xk​]=k≥0∑​2k+3(−1)k​(1−x)k+2xk(2k+3−x)​=k≥0∑​(−1)k(1−x)k+2xk​+k≥0∑​2k+3(−1)k+1​(1−x)k+2xk+1​=1−x1​+k≥1∑​2k+1(−1)k​(1−x)k+1xk​=k≥0∑​2k+1(−1)k​(1−x)k+1xk​​こうして、f(x)=g(x)f(x)=g(x)f(x)=g(x) がわかりました。\nSnake Oil method を実践できて嬉しかったです。\n当時この証明を本人にリプライしましたが、そのときのアカウントを削除したため現在は読めなくなっています。\nおわりに # Snake Oil method はいかがだったでしょうか？\n代数的な計算が好きな人におすすめです。\nもちろんすべての等式を Snake Oil method で証明できるわけではないと思うのでそこは注意が必要です。\n","date":"2024-12-02","externalUrl":null,"permalink":"/posts/snake-oil/","section":"数学記事・PDF","summary":"この記事は日曜数学 Advent Calendar 2024 の 2 日目の記事です。\n","title":"二項係数を含む等式で大活躍！？Snake Oil method","type":"posts"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は横断マトロイドを紹介していきます。\nなおこの記事は組合せ論 Advent Calendar 2024 の 1 日目の記事です。参加者を募集しております。\nマトロイドの基礎 # マトロイドの基礎は以下の記事に書きましたのでご覧ください。\n【月刊組合せ論 Natori】マトロイドに入門しよう【2024 年 7 月号】\n横断と二部グラフ # A1,…,AnA_1,\\ldots,A_nA1​,…,An​ は有限集合 SSS の部分集合であるとします。\nSSS の nnn 元部分集合 X={x1,…,xn}X=\\{x_1,\\ldots,x_n\\}X={x1​,…,xn​} が A=(A1,…,An)A=(A_1,\\ldots,A_n)A=(A1​,…,An​) の横断であるとは、ある置換 σ∈Sn\\sigma\\in S_nσ∈Sn​ について、xi∈Aσ(i)x_i\\in A_{\\sigma(i)}xi​∈Aσ(i)​ がすべての iii について成り立つことです。同様に、SSS の kkk 元部分集合 Y={y1,…,yk}Y=\\{y_1,\\ldots,y_k\\}Y={y1​,…,yk​} が AAA の部分横断であるとは、ある単射 σ ⁣:{1,…,k}→{1,…,n}\\sigma\\colon \\{1,\\ldots,k\\}\\to \\{1,\\ldots,n\\}σ:{1,…,k}→{1,…,n} について、yi∈Aσ(i)y_i\\in A_{\\sigma(i)}yi​∈Aσ(i)​ がすべての iii について成り立つことです。単射性より k≤nk\\le nk≤n が必要です。\n例えば A1={1,2,3},A2={4,5},A3={1,3,5}A_1=\\{1,2,3\\}, A_2=\\{4,5\\}, A_3=\\{1,3,5\\}A1​={1,2,3},A2​={4,5},A3​={1,3,5} とします。{1,2,5}\\{1,2,5\\}{1,2,5} は 1∈A3,2∈A1,5∈A21\\in A_3, 2\\in A_1, 5\\in A_21∈A3​,2∈A1​,5∈A2​ であることから横断です。この横断の部分集合 {1,3}\\{1,3\\}{1,3} は部分横断になります。一方 {1,2,3}\\{1,2,3\\}{1,2,3} は A2A_2A2​ の元がないので横断ではありません。\nこの状況は二部グラフにより表現することができます。AAA の添字集合を J={1,…,n}J=\\{1,\\ldots,n\\}J={1,…,n} とするとき、頂点集合を非交和 J⊔SJ\\sqcup SJ⊔S とし、j∈Jj\\in Jj∈J と s∈Ss\\in Ss∈S は s∈Ajs\\in A_js∈Aj​ のときに辺で結ばれるとします。この二部グラフにおいて（部分）横断はマッチングと対応します。\nこれより、集合系 A=(A1,…,An)A=(A_1,\\ldots,A_n)A=(A1​,…,An​) の横断を考えることと、二部グラフのマッチングを考えることが同じことになるので、どちらも使っていきます。\n横断マトロイド # 二部グラフ G=(S⊔T,E)G=(S\\sqcup T, E)G=(S⊔T,E) に対して、GGG から得られる SSS 上の横断マトロイドを定義します。SSS 上のマトロイドなので SSS の部分集合からなる集合 I\\mathcal{I}I を定義します。SSS の部分集合 XXX に対して、XXX の頂点をすべて使うようなマッチングが存在するとき、かつそのときに限り X∈IX\\in \\mathcal{I}X∈I とします。\n言い換えると、部分横断を独立集合とするということです。\nこれが実際にマトロイドであることを確かめる必要があります。「X,Y∈I,∣X∣\u0026gt;∣Y∣X,Y\\in \\mathcal{I}, |X|\u0026gt;|Y|X,Y∈I,∣X∣\u0026gt;∣Y∣ ならばある x∈X∖Yx\\in X\\setminus Yx∈X∖Y について Y∪{x}∈IY\\cup\\{x\\}\\in \\mathcal{I}Y∪{x}∈I」のみ確かめればよいです。間に合わなかったので証明は他の文献に丸投げします。\n格子路マトロイド # 横断マトロイドの具体例を 2 種類見ていきます。\nまず、グリッド上に始点・終点の等しい 2 つの格子路（右または上に進むもの）をとります。赤い格子路は青い格子路より上にあるとします。\nこの 2 つの格子路を固定して、内部（境界も含む）に新たに格子路をとります。この格子路にはどのような特徴があるでしょうか？\nここで、格子路は上に進むタイミングで特徴づけられることに注意します。上の図では、赤い格子路は 1,3,41,3,41,3,4 回目の移動で上に進み、青い格子路は 4,6,84,6,84,6,8 回目の移動で上に進んでいます。すると、新しい格子路は次をみたす (x1,x2,x3)(x_1,x_2,x_3)(x1​,x2​,x3​) として特徴づけられます。\n1≤x1≤41\\le x_1\\le 41≤x1​≤4 3≤x2≤63\\le x_2\\le 63≤x2​≤6 4≤x3≤84\\le x_3\\le 84≤x3​≤8 x1\u0026lt;x2\u0026lt;x3x_1\u0026lt;x_2\u0026lt;x_3x1​\u0026lt;x2​\u0026lt;x3​ いま、A1={1,2,3,4},A2={3,4,5,6},A3={4,5,6,7,8}A_1=\\{1,2,3,4\\}, A_2=\\{3,4,5,6\\}, A_3=\\{4,5,6,7,8\\}A1​={1,2,3,4},A2​={3,4,5,6},A3​={4,5,6,7,8} とおきます。実は、赤と青の格子路の内部にある格子路は、(A1,A2,A3)(A_1,A_2,A_3)(A1​,A2​,A3​) の横断と一対一に対応します。横断 (x1,x2,x3)(x_1,x_2,x_3)(x1​,x2​,x3​) と、xix_ixi​ 回目に上に移動する格子路が対応します。読者の中には x2∈A1,x1∈A2x_2\\in A_1, x_1\\in A_2x2​∈A1​,x1​∈A2​ のようになってしまうのではないかと心配する声もあるかもしれませんが、このときは x1∈A1,x2∈A2x_1\\in A_1, x_2\\in A_2x1​∈A1​,x2​∈A2​ も成り立つので、常に単調増加になるように選び出すことができます。\nこのようにして得られるマトロイドを格子路マトロイド (lattice path matroid) といいます。\nbicircular matroid # もう 1 つの横断マトロイドの例として bicircular マトロイドを紹介します。\nG=(V,E)G=(V,E)G=(V,E) をグラフとします。独立集合を「各連結成分のサイクルの個数は高々 1 つ」とすることで EEE 上のマトロイドとなります。これを bicircular マトロイドといいます。\n頂点 v∈Vv\\in Vv∈V を端点にもつ辺の集合を AvA_vAv​ とおき、(Av)v∈V(A_v)_{v\\in V}(Av​)v∈V​ という集合系を考えれば、上記のマトロイドが横断マトロイドであることがわかります。（たぶん）\nbicircular という名前の由来ですが、極小従属集合（サーキットともいう）がサイクルを 2 つ含むことが由来です。\nbicircular マトロイドと格子路マトロイドはある意味対照的な存在だと言われています。\n競技プログラミングにおける例 # 横断マトロイドが競技プログラミングに登場する例を見ていきましょう。\nまずはこの問題です。横断マトロイドに対する貪欲法になっているはずです (ちゃんと解いてないですが……)。\nbicircular マトロイドが出題された例としてこの問題があります。こちらの解説が大変参考になります。\n格子路マトロイドは出題されたことがあるのでしょうか。\nおわりに # 筆者はヤング図形や格子路が大好きなので、格子路マトロイドという存在に惹かれました。理解するために調べて記事にしてみました。格子路マトロイドにはまだまだ面白いことがいっぱいありそうです。\nこれからも月刊組合せ論 Natori では面白そう！と思った組合せ論のトピックを紹介していくので、応援のほどよろしくお願いします。\nまた、12 月はアドベントカレンダーの記事をたくさん書く予定なのでそちらのチェックもよろしくお願いします。\n参考文献 # Pitsoulis, Leonidas S. Topics in matroid theory. SpringerBriefs in Optimization. Springer. (2014). Joseph E. Bonin, An Introduction to Matroid Theory Through Lattice Paths. Anna de Mier, Transversal matroids. ","date":"2024-12-01","externalUrl":null,"permalink":"/natori/202412/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は横断マトロイドを紹介していきます。\n","title":"【月刊組合せ論 Natori】横断マトロイド【2024 年 12 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は彩色対称関数に関する未解決問題である Stanley-Stembridge 予想を紹介します。\n彩色対称関数 # 彩色数や彩色多項式については過去記事で少し解説しました。\n【月刊組合せ論 Natori】June Huh 氏の業績を解説【2022 年 12 月号】\nグラフ G=(V,E)G=(V,E)G=(V,E) の彩色多項式 cG(n)c_G(n)cG​(n) とは、グラフの頂点を nnn 色のうちのいずれかで塗る方法であって、隣り合う 2 頂点が異なる色で塗られているものの個数です。\n彩色対称関数は Stanley によって導入されました。色の集合を P={1,2,…}\\mathbb{P}=\\{1,2,\\ldots\\}P={1,2,…} とします。色塗りのことを関数 κ ⁣:V→P\\kappa\\colon V\\to\\mathbb{P}κ:V→P だと思うことにします。x=(x1,x2,…)x=(x_1,x_2,\\ldots)x=(x1​,x2​,…) を変数とします。彩色対称関数は\nXG(x)=∑κ∏v∈Vxκ(v) X_G(x)=\\sum_{\\kappa}\\prod_{v\\in V}x_{\\kappa(v)} XG​(x)=κ∑​v∈V∏​xκ(v)​により定義されます。ここで κ\\kappaκ は前述の通り隣り合う 2 頂点が異なる色であるような塗り方です。\n例えば κ\\kappaκ を次のような塗り方とします。\n赤が 1、青が 2、黄色が 3 であるとするとき、XG(x)X_G(x)XG​(x) に x12x22x3x_1^2x_2^2x_3x12​x22​x3​ という項が現れることになります。\nXG(1,…,1⏟n,0,0,…)X_G(\\underbrace{1,\\ldots,1}_n,0,0,\\ldots)XG​(n1,…,1​​,0,0,…) は彩色多項式 cG(n)c_G(n)cG​(n) に等しいことがわかります。このことから彩色対称関数は彩色多項式より多くの情報をもっていることがわかります。\n基底 # 対称関数のなす空間には代表的な基底があります。それは\nmλm_{\\lambda}mλ​ : モノミアル対称関数 hλh_{\\lambda}hλ​ : 完全対称関数 eλe_{\\lambda}eλ​ : 基本対称関数 pλp_{\\lambda}pλ​ : べき和対称関数 sλs_{\\lambda}sλ​ : シューア対称関数 です。彩色対称関数もまた、これらの基底の線形結合として表すことができます。\n線形結合として表したとき、係数が非負整数になることがあります。このとき何か特別な意味があるのではないかと期待できます。例えばシューア関数は対称群の既約表現と対応するので、シューア関数の非負整数線形結合として表せるということは、対称群の表現と対応することが期待されます。\nでは彩色対称関数はシューア関数の非負整数線形結合として表せるでしょうか？\n長いので以降は sss-positive ということにします (eee-positive なども同様)。\nまず GGG を完全グラフ KnK_nKn​ とします。すると XG(x)=n!en=n!s(1,…,1)X_G(x)=n!e_n=n!s_{(1,\\ldots,1)}XG​(x)=n!en​=n!s(1,…,1)​ となります。よって eee-positive であり sss-positive でもあります。\nでは次のようなグラフではどうでしょうか。\nこのグラフは爪 (claw) と呼ばれています。実は XG=4e4+5e31−2e22+e211X_G=4e_4+5e_{31}-2e_{22}+e_{211}XG​=4e4​+5e31​−2e22​+e211​ となります。係数に −2-2−2 が現れるので eee-positive ではありません。sss-positive でもありません。\n比較不能性グラフ # PPP を半順序集合とします。PPP から次のようにグラフを作ります。頂点集合は PPP と同一とし、u,v∈Pu,v\\in Pu,v∈P に対して u≤vu\\le vu≤v でも v≤uv\\le uv≤u でもないとき辺を張ります。このグラフを inc(P)\\mathrm{inc}(P)inc(P) とし、比較不能性グラフと呼ぶことにします。\nPPP が次の図を induced subposet して含まないとき、PPP は (3+1)(3+1)(3+1)-free といいます。\nPPP がこの図のような poset であるとき、inc(P)\\mathrm{inc}(P)inc(P) は爪となります。爪は eee-positive でなかったので、(3+1)(3+1)(3+1)-free poset から得られるグラフ inc(P)\\mathrm{inc}(P)inc(P) は eee-positive でない可能性が減っていると考えられます。\nそして本題の Stanley-Stembridge 予想とは、このとき必ず eee-positive になるという予想です。\n予想 (Stanley-Stembridge): PPP が (3+1)(3+1)(3+1)-free poset ならば、比較不能性グラフ inc(P)\\mathrm{inc}(P)inc(P) の彩色対称関数は eee-positive である。 なお sss-positive であることは Gasharov によって証明されています。一般に eee-positive ならば sss-positive なので、この結果は Stanley-Stembridge 予想よりも弱い結果ということになります。\n証明？ # Stanley-Stembridge 予想は長くの間未解決問題でしたが、最近になって証明が発表されました。\nhttps://arxiv.org/abs/2410.12758\nまだプレプリントの段階なので正しいかはわかりませんが、正しければ一大ニュースですね。\nその他の話題 # Hessenberg 多様体との関連など、近年では彩色対称関数の研究はますます盛り上がっています。それも解説したかったのですが、時間がなかったのでまたいつか解説したいと思います。\n","date":"2024-11-01","externalUrl":null,"permalink":"/natori/202411/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は彩色対称関数に関する未解決問題である Stanley-Stembridge 予想を紹介します。\n","title":"【月刊組合せ論 Natori】Stanley-Stembridge 予想【2024 年 11 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は順列について深掘りしていきます。\nStatistics # この記事では順列は (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列のこととします。順列に対して数を対応させる関数のことを statistics といいます。例えば転倒数\ninv(p)=#{(i,j)∣1≤i\u0026lt;j≤n,pi\u0026gt;pj} \\mathrm{inv}(p)=\\#\\{(i,j)\\mid 1\\le i\u0026lt;j\\le n, p_i\u0026gt;p_j\\} inv(p)=#{(i,j)∣1≤i\u0026lt;j≤n,pi​\u0026gt;pj​}は statistics です。直訳すると統計量ですが、別に統計をやっているわけではないので単に「量」と呼ぶこともあります。\n転倒数と並ぶくらい重要な量に、major index があります。順列 ppp の降下点集合を Des(p)={i∣pi\u0026gt;pi+1}\\mathrm{Des}(p)=\\{i\\mid p_i\u0026gt;p_{i+1}\\}Des(p)={i∣pi​\u0026gt;pi+1​} とするとき、major index は降下点の和、すなわち\nmaj(p)=∑i∈Des(p)i \\mathrm{maj}(p)=\\sum_{i\\in \\mathrm{Des}(p)}i maj(p)=i∈Des(p)∑​iにより定まります。例えば p=31425p=31425p=31425 のとき Des(p)={1,3}\\mathrm{Des}(p)=\\{1,3\\}Des(p)={1,3} なので major index は 1+3=41+3=41+3=4 です。\n転倒数と major index の間には次のような驚くべき関係があります。\n定理: inv と maj は同分布である。すなわち、任意の kkk に対して転倒数が kkk である順列の個数と major index が kkk である順列の個数は等しい。 inv や maj と同分布である量は Mahonian statistics と呼ばれます。\n転倒数 # 転倒数が kkk に等しい長さ nnn の順列の個数 b(n,k)b(n,k)b(n,k) については 2024 年 2 月号の Natori に書きました。\n【月刊組合せ論 Natori】転倒数が k である順列の個数【2024 年 2 月号】\nここでは簡単に復習します。b(n,k)b(n,k)b(n,k) の母関数を\nfn(z)=∑k=0n(n−1)/2b(n,k)zk=∑p∈Snzinv(p) f_n(z)=\\sum_{k=0}^{n(n-1)/2} b(n,k)z^k=\\sum_{p\\in S_n}z^{\\mathrm{inv}(p)} fn​(z)=k=0∑n(n−1)/2​b(n,k)zk=p∈Sn​∑​zinv(p)としたとき\nfn+1(z)=(1+z+⋯+zn)fn(z) f_{n+1}(z)=(1+z+\\cdots+z^n)f_n(z) fn+1​(z)=(1+z+⋯+zn)fn​(z)という式が成り立つので\nfn(z)=(1+z)(1+z+z2)⋯(1+z+⋯+zn−1) f_n(z)=(1+z)(1+z+z^2)\\cdots (1+z+\\cdots+z^{n-1}) fn​(z)=(1+z)(1+z+z2)⋯(1+z+⋯+zn−1)となります。\nmajor index # inv と maj が同分布であることを示すためには、母関数が同じであることを示せばよいです。\ngn(z)=∑p∈Snzmaj(p) g_n(z)=\\sum_{p\\in S_n}z^{\\mathrm{maj}(p)} gn​(z)=p∈Sn​∑​zmaj(p)とおきます。転倒数の場合と同様、長さ nnn の順列 ppp に n+1n+1n+1 を挿入することで長さ n+1n+1n+1 の順列 p′p^{\\prime}p′ が作れることに着目します。Des(p)={i1,…,ik}\\mathrm{Des}(p)=\\{i_1,\\ldots,i_k\\}Des(p)={i1​,…,ik​} とします。\np′p^{\\prime}p′ における n+1n+1n+1 の位置を jjj とします。j=n+1j=n+1j=n+1 のとき、すなわち末尾に n+1n+1n+1 を挿入するとき maj(p′)=maj(p)\\mathrm{maj}(p^{\\prime})=\\mathrm{maj}(p)maj(p′)=maj(p) です。以下では j≠n+1j\\ne n+1j=n+1 とします。このとき必ず j∈Des(p′)j\\in \\mathrm{Des}(p^{\\prime})j∈Des(p′) となります。\nある mmm について j=im+1j=i_m+1j=im​+1 のとき、imi_mim​ は p′p^{\\prime}p′ の降下点ではありません。im+1i_{m+1}im+1​ 以降は n+1n+1n+1 を挿入した影響で 1 ずつ右にずれます。よって\nmaj(p′)=i1+⋯+im−1+j+(im+1+1)+⋯+(ik+1)=maj(p)+k−m+1 \\begin{align*} \\mathrm{maj}(p^{\\prime})\u0026amp;=i_1+\\cdots+i_{m-1}+j+(i_{m+1}+1)+\\cdots+(i_k+1) \\\\ \u0026amp;=\\mathrm{maj}(p)+k-m+1 \\end{align*} maj(p′)​=i1​+⋯+im−1​+j+(im+1​+1)+⋯+(ik​+1)=maj(p)+k−m+1​となります。1≤m≤k1\\le m\\le k1≤m≤k なので、この値は maj(p)+1\\mathrm{maj}(p)+1maj(p)+1 以上 maj(p)+k\\mathrm{maj}(p)+kmaj(p)+k 以下です。\n次に、im+1\u0026lt;j\u0026lt;im+1i_m+1\u0026lt;j\u0026lt;i_{m+1}im​+1\u0026lt;j\u0026lt;im+1​ と仮定します (ただし i0=−∞i_0=-\\inftyi0​=−∞ とします)。このとき\nmaj(p′)=i1+⋯+im+j+(im+1+1)+⋯+(ik+1)=maj(p)+j+k−m+1 \\begin{align*} \\mathrm{maj}(p^{\\prime})\u0026amp;=i_1+\\cdots+i_m+j+(i_{m+1}+1)+\\cdots+(i_k+1) \\\\ \u0026amp;=\\mathrm{maj}(p)+j+k-m+1 \\end{align*} maj(p′)​=i1​+⋯+im​+j+(im+1​+1)+⋯+(ik​+1)=maj(p)+j+k−m+1​となります。この値は maj(p)+k+1\\mathrm{maj}(p)+k+1maj(p)+k+1 以上 maj(p)+n−1\\mathrm{maj}(p)+n-1maj(p)+n−1 以下です。\nさらに、挿入位置が異なれば major index の値も異なります (細かい部分は各自で確かめてみましょう)。以上より、maj(p′)\\mathrm{maj}(p^{\\prime})maj(p′) の値は maj(p)\\mathrm{maj}(p)maj(p) 以上 maj(p)+n−1\\mathrm{maj}(p)+n-1maj(p)+n−1 以下の各整数値をとります。よって\ngn+1(z)=(1+z+⋯+zn)gn(z) g_{n+1}(z)=(1+z+\\cdots+z^n)g_n(z) gn+1​(z)=(1+z+⋯+zn)gn​(z)となります。ここから gn(z)=fn(z)g_n(z)=f_n(z)gn​(z)=fn​(z) が従います。したがって、inv と maj は同分布です。\n別の証明方法として、Foata の全単射と呼ばれるものがあります。これは全単射 ϕ ⁣:Sn→Sn\\phi\\colon S_n\\to S_nϕ:Sn​→Sn​ であって inv(p)=maj(ϕ(p))\\mathrm{inv}(p)=\\mathrm{maj}(\\phi(p))inv(p)=maj(ϕ(p)) をみたすものです。\n一般の数列 # 順列の場合を考えましたが、1 が a1a_1a1​ 個、…、kkk が aka_kak​ 個からなる数列の集合 SSS 上においても inv と maj は同分布です。母関数は qqq 多項係数になります。\n∑p∈Sqinv(p)=∑p∈Sqmaj(p)=(na1,a2,…,ak)q \\sum_{p\\in S}q^{\\mathrm{inv}(p)}=\\sum_{p\\in S}q^{\\mathrm{maj}(p)}=\\binom{n}{a_1,a_2,\\ldots,a_k}_q p∈S∑​qinv(p)=p∈S∑​qmaj(p)=(a1​,a2​,…,ak​n​)q​特に数が 2 種類の場合は母関数が qqq 二項係数になります。\nその他の Mahonian statistics # inv と maj 以外の Mahonian statistics はどのようなものがあるでしょうか。次のような量を考えます。\nv=n,n−1,…,1v=n,n-1,\\ldots,1v=n,n−1,…,1 の順に次を行う。pi=vp_i=vpi​=v となる iii をとり、pip_ipi​ と pvp_vpv​ を入れ替える。コストは ∣i−v∣|i-v|∣i−v∣ である。 コストの総和を sor(p)\\mathrm{sor}(p)sor(p) とおきます。例えば、p=315462p=315462p=315462 のとき\n6, 2 を入れ替え、p=315426p=315426p=315426 にする。コストは 1 5, 2 を入れ替え、p=312456p=312456p=312456 にする。コストは 2 4 はそのまま。コストは 0 3, 2 を入れ替え、p=213456p=213456p=213456 にする。コストは 2 2, 1 を入れ替え、p=123456p=123456p=123456 にする。コストは 1 なので、sor(p)=1+2+2+1=6\\mathrm{sor}(p)=1+2+2+1=6sor(p)=1+2+2+1=6 です。この sor\\mathrm{sor}sor も Mahonian statistics です。\n他にもたくさんあります。\nKitaev, Sergey. Patterns in Permutations and Words. Springer (2011). の 3.3 を見ると、色々な Mahonian statistics が載っています。\nおわりに # Mahonian statistics を紹介しました。順列の世界はまだまだ奥が深いので、今後も紹介していきたいです。\n参考文献 # Bóna, Miklós. Combinatorics of permutations. 3rd ed. ","date":"2024-10-01","externalUrl":null,"permalink":"/natori/202410/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は順列について深掘りしていきます。\n","title":"【月刊組合せ論 Natori】Mahonian statistics【2024 年 10 月号】","type":"natori"},{"content":"ヤングタブローの種をもらった。これを育てて食べようと思う。\n僕はヤングタブローを食べたことがない。嫌いなわけではなく、ただ食べる機会がなかっただけだ。だから種をもらうことがなければこれからも食べることがなかったかもしれない。それだけではない。僕は最近自炊を始めた。ここ最近外食の値段が高騰しており、お金を節約するために始めたのだ。それ以来、今まで素通りしていたものにも興味をもつようになった。もし自炊を始めていなかったら、ヤングタブローの種も育てずに捨てていたかもしれない。\n早速僕は鉢植えと土を用意し、ベランダに置いた。ヤングタブローは初心者にも育てやすいというのはありがたい話である。ただし注意点はいくつかある。水をやりすぎないこと、変な位置に数字が増えたらすぐに切り落とすこと。\n数日経つと、1\\fbox{1}1​ が生えてきた。ヤングタブロー栽培が上手くいって一安心だ。どんな味がするかを確かめたいところだが焦ってはいけない。ヤングタブローは数字が小さいうちはあまり味がしないのだ。正しい育て方を知らずに、ヤングタブローはまずいと決めつける人が後を絶たない。僕はヤングタブロー本来の味を知るまで、もう少し我慢する。\nさらに数日経つと、2\\fbox{2}2​ と 3\\fbox{3}3​ が生えた。2\\fbox{2}2​ は 1\\fbox{1}1​ の右に、3\\fbox{3}3​ は 1\\fbox{1}1​ の下に位置している。これは正常な位置だ。\n一週間経つと、今度は 4\\fbox{4}4​ と 5\\fbox{5}5​ が現れた。そろそろ食べごろだ。僕は 5\\fbox{5}5​ をちぎる。そして、かじる。なるほど、5\\fbox{5}5​ という味がする。素材の味だ。初めてのヤングタブロー食は、悪くない。次は調理してもっと美味しく食べてみよう。\n再び 5\\fbox{5}5​ が生えてきた。9\\fbox{9}9​ までの数字が現れたあと、僕は 7\\fbox{7}7​ から 9\\fbox{9}9​ までを使って料理を作ることにした。まず玉ねぎ、じゃがいも、人参、7\\fbox{7}7​ を切る。鍋に 8\\fbox{8}8​ を入れて熱しておき、具材を入れて炒める。水を加えて煮る。途中であくが出てくるのでとっていく。そろそろいい感じだろうか。ここでカレールーと 9\\fbox{9}9​ を投入する。美味しそうなにおいが漂ってくる。\nヤングタブローを加えたカレーが完成した。早速スプーンでごはんとカレーをすくい、口へ運ぶ。濃厚な味わいが口内に広がる。この刺激的な風味はきっと 9\\fbox{9}9​ に違いない。それでいて 7\\fbox{7}7​ がしっかりと味を調えている。今まで食べてきたどのカレーよりもおいしいと思った。自分で作ったからだろうか、それともヤングタブローの味のおかげだろうか。\nその後、ヤングタブローは新たな数字をつけることはなかった。品種改良の結果大きな数字をつける品種もあるようだが、僕が育てたのは初心者向けの品種だ。とはいえ、10 の大台を見てみたかったので少し残念だ。残ったヤングタブローは唐揚げにした。\n","date":"2024-09-23","externalUrl":null,"permalink":"/novels/eat/1/","section":"おはなし一覧","summary":"ヤングタブローの種をもらった。これを育てて食べようと思う。\n","title":"【たべる、組合せ論】初めてのヤングタブロー食","type":"novels"},{"content":"数学は食事のように身近だ。だったら、食べてしまおう！\n数学×食エッセイを召し上がれ！\n初めてのヤングタブロー食 ","date":"2024-09-23","externalUrl":null,"permalink":"/novels/eat/","section":"おはなし一覧","summary":"数学は食事のように身近だ。だったら、食べてしまおう！\n","title":"たべる、組合せ論","type":"novels"},{"content":"Enumerative Combinatorics を読み始めたいおりとしいな。そんな 2 人の前に、困難が立ちはだかる。\nいおり ぴえ～～～～～！わかんない～～～～～！\nしいな 難しすぎ……。\nそう、Enumerative Combinatorics は難しい本なのだ。\nこのままではいーしー部としての活動ができなくなってしまうかもしれない。そんな中、しいなは 1 つの案を思いついた。\nしいな いーしー部は部活。部活には何が必要？\nいおり 部費とか、部員とか……？\nしいな 顧問の先生だよ！\n部活には顧問の先生が必要。つまり、難しい Enumerative Combinatorics を読むために、アドバイスをくれる存在が必要である。\nこうして呼ばれたいーしー部の顧問が、組合せ論系 VTuber の早稲くみあであった。\nしいな よろしくね、顧問の先生。\nいおり くみあせんせー！\nくみあ （先生じゃなくて大学院生なんだけどな……）\nこうして 3 人は数え上げの世界へ足を踏み入れることになったのであった。\n","date":"2024-09-18","externalUrl":null,"permalink":"/ec/prologue-2/","section":"いーしー部！","summary":"Enumerative Combinatorics を読み始めたいおりとしいな。そんな 2 人の前に、困難が立ちはだかる。\n","title":"【いーしー部！】くみあせんせー【ぷろろーぐ！その２】","type":"ec"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は N×NN\\times NN×N 型のヤングタブローにおいて N→∞N\\to\\inftyN→∞ としたときにどうなるかを考えていきます。\nヤングタブロー # N×NN\\times NN×N のマス目があります。ここに 111 から N2N^2N2 までの整数を 1 つずつ、次の条件を満たすように書き込みます。\n各行について単調増加 各列について単調増加 例えば N=5N=5N=5 のときは次のようになります。\nこのようなものをヤングタブローといいます。ヤングタブローの中から一様ランダムに 1 つ選んだとき、どのような形になるかを考えます。勿論このままではただの正方形なので、うまく可視化する必要があります。さらに N→∞N\\to\\inftyN→∞ としたときどうなるかを考えます。このようなことを扱う分野を漸近的組合せ論 (asymptotic combinatorics) というそうです。\nヤングタブローの可視化 # 与えられたヤングタブローに対して NNN 個のグラフを描きます。時刻 0 において iii 番目のグラフは高さ N−iN-iN−i にあるものとします。\nk=1,2,…,N2k=1,2,\\ldots,N^2k=1,2,…,N2 の順に次の操作を行います。\nkkk がタブローの iii 行目にあるとき、時刻 kkk において iii 番目のグラフの高さを 1 増やす。 上のタブローでは次のようなグラフになります。\nタブローの単調増加性より、どの 2 本も交わりません。\nこのグラフは Processing で描画しました。次のようなコードです。\nsize(500, 500); background(255); int[][] a = { { 1,2,4,6,10 },{ 3,5,9,13,14 },{ 7,8,12,18,20 },{ 11,16,19,22,23 },{ 15,17,21,24,25 }}; int n = a.length; float dx = 480.0 / (n * n); float dy = 480.0 / (2 * n - 1); for (int i = 0; i \u0026lt; n; i++) { float y = 10 + dy * n + dy * i; float x = 10; int j = 0; for (int k = 1; k \u0026lt;= n * n; k++) { line(x, y, x + dx, y); x += dx; if (j \u0026lt; n \u0026amp;\u0026amp; a[i][j] == k) { j++; line(x, y, x, y - dy); y -= dy; } } } それでは N→∞N\\to\\inftyN→∞ としたとき、どのようなグラフになるかを調べていきましょう。\nサンプリング # ここで問題となるのが、ヤングタブローを一様ランダムに選ぶにはどうすればよいかということです。NNN が大きくなるにつれ、ヤングタブローの個数は膨大になります。\nそこで役立つのがフック長公式の証明です。確率を用いた証明ではフックウォークと呼ばれるものが用いられていますが、これが役に立ちます。過去に公開した記事をご覧ください。\n【月刊組合せ論 Natori】フック長公式【2023 年 5 月号】\nλ\\lambdaλ 上のヤングタブローの個数を FλF_{\\lambda}Fλ​ とします。λ\\lambdaλ から角 ccc を除いた図形を μ\\muμ とするとき、フックウォークの終点が ccc となる確率が FμFλ\\frac{F_{\\mu}}{F_{\\lambda}}Fλ​Fμ​​ となることを示していました。このことから、次のようなアルゴリズムによってヤングタブローを一様ランダムに選ぶことができます。\n箱の総数が nnn のヤング図形を考える。 フックウォークを行い、終点に nnn を書く。 残りの図形に再びフックウォークを行い、終点に n−1n-1n−1 を書く。 これを繰り返す。 これを正方形ヤング図形の場合にコードにしたものが次のものになります。(本当はこれも Processing で書きたかったのですが、慣れていないので Kotlin で書きました)\nfun main() { val n = 10 val a = Array(n) { Array(n) { 0 } } val cells = mutableSetOf\u0026lt;Pair\u0026lt;Int, Int\u0026gt;\u0026gt;() for (i in 0 until n) { for (j in 0 until n) { cells.add(i to j) } } for (num in n * n downTo 1) { val firstCell = cells.random() var x = firstCell.first var y = firstCell.second while (true) { val candidates = mutableListOf\u0026lt;Pair\u0026lt;Int, Int\u0026gt;\u0026gt;() for (i in x + 1 until n) { if (a[i][y] == 0) { candidates.add(i to y) } else { break } } for (j in y + 1 until n) { if (a[x][j] == 0) { candidates.add(x to j) } else { break } } if (candidates.isEmpty()) { break } val choice = candidates.random() x = choice.first y = choice.second } a[x][y] = num cells.remove(x to y) } print(\u0026#34;{ \u0026#34;) print(a.map { \u0026#34;{ ${it.joinToString(\u0026#34;,\u0026#34;)} }\u0026#34; }.joinToString(\u0026#34;,\u0026#34;)) println(\u0026#34;};\u0026#34;) } 上の Processing のコードの a の定義を、このコードの出力で置き換えればよいです。\nいざ実行 # まずは N=10N=10N=10 で実行してみましょう。\nなるほど。\n次は N=20N=20N=20 で実行してみましょう。\nおや？\n次は N=50N=50N=50 で実行してみましょう。\nおやおや？\n何やら円が見えますね。円の内側で動いており、外側ではほとんど動かないようです。これが N→∞N\\to\\inftyN→∞ としたときに見えてくる形です。このような現象は六角形のひし形タイル張りや、アステカダイヤモンドのドミノタイル張りなどでも現れ、arctic circle theorem と呼ばれています。直訳すると北極圏定理でしょうか。\nおわりに # 組合せ論と確率論の関係というと、高校数学では当たり前という感じがしますが、大学数学では非自明で、奥深く、豊かな関係があります。この辺りももっと知りたいです。\n参考文献 # Romik, Dan. Arctic circles, domino tilings and square Young tableaux. Ann. Probab. 40, No. 2, 611-647 (2012). Romik, Dan. The surprising mathematics of longest increasing subsequences. Cambridge University Press. (2015). ","date":"2024-09-01","externalUrl":null,"permalink":"/natori/202409/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は N×NN\\times NN×N 型のヤングタブローにおいて N→∞N\\to\\inftyN→∞ としたときにどうなるかを考えていきます。\n","title":"【月刊組合せ論 Natori】ランダムヤングタブローと北極圏定理【2024 年 9 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は pattern avoidance と呼ばれるものに入門していきます。あの数列も登場します！\n最長増加部分列の長さが 2 以下の順列 # (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列 AAA に対して、増加部分列とは i1\u0026lt;i2\u0026lt;⋯\u0026lt;iki_1\u0026lt;i_2\u0026lt;\\cdots\u0026lt;i_ki1​\u0026lt;i2​\u0026lt;⋯\u0026lt;ik​ かつ Ai1\u0026lt;Ai2\u0026lt;⋯\u0026lt;AikA_{i_1}\u0026lt;A_{i_2}\u0026lt;\\cdots\u0026lt;A_{i_k}Ai1​​\u0026lt;Ai2​​\u0026lt;⋯\u0026lt;Aik​​ をみたすような部分列 (Ai1,Ai2,…,Aik)(A_{i_1},A_{i_2},\\ldots,A_{i_k})(Ai1​​,Ai2​​,…,Aik​​) のことです。最長増加部分列とは、長さ kkk が最大となる増加部分列です。\n最長増加部分列の長さが 1 となる順列は (n,n−1,…,2,1)(n,n-1,\\ldots,2,1)(n,n−1,…,2,1) のみです。では最長増加部分列の長さが 2 以下の順列はいくつあるでしょうか。n=3n=3n=3 のときは、(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1)(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1)(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1) の 5 つが条件を満たします。プログラミングに自信のある方はぜひ計算して答えを推測してみてください。\n全単射の構成 # 最長増加部分列の長さが 2 以下の順列の個数が「あの数」になることを証明しましょう。「あの数」は「あれ」の個数と等しいので、「あれ」との間に全単射を構成します。\nロビンソン・シェンステッド対応のことを復習しておきます。記事「ヤング図形と競技プログラミング」もよろしくお願いします。\nロビンソン・シェンステッド対応は順列 AAA と、同じ形の標準タブローの組 (P,Q)(P,Q)(P,Q) との間の全単射です。P,QP,QP,Q の形を λ\\lambdaλ とすると、ヤング図形 λ\\lambdaλ は次の性質を満たすことが知られています。\nλ\\lambdaλ の 1 行目の箱の個数は AAA の最長増加部分列の長さに等しい λ\\lambdaλ の 1 列目の箱の個数は AAA の最長減少部分列の長さに等しい 最長増加部分列の長さが 2 以下であることは、λ\\lambdaλ が高々 2 列であることと同値です。このような λ\\lambdaλ 上の標準タブローとして、次のようなものがあります。\n高々 2 列の標準タブローを用いて次のような操作を行います。1,2,…,n1,2,\\ldots,n1,2,…,n の順に数字を見ていき、数字が\n1 列目にあるならば、右上に進む 2 列目にあるならば、右下に進む という移動を行います。上で挙げたタブローの場合次のようになります。\n標準タブローの性質より、この経路は開始地点より下に行きません。また、始点と終点の高さの差は 1 列目と 2 列目の箱の個数の差に等しいです。\nいまロビンソン・シェンステッド対応により、順列 AAA から 2 つのタブロー (P,Q)(P,Q)(P,Q) を得ていました。タブロー P,QP,QP,Q からこのように経路を作ると、2 本の終点の高さは等しくなります。そこで、片方の左右を反転して、2 本の経路を繋げます。すると長さ 2n2n2n の経路で、始点と終点の高さが等しく、始点より下に行かないものができます。このような経路を Dyck 経路といいます。Dyck 経路は 45 度回転させれば、(0,0)(0,0)(0,0) から (n,n)(n,n)(n,n) への (右または上に進む) 経路で領域 y≥xy\\ge xy≥x 上にあるものとなります。\n逆にこのような経路からタブローの組 (P,Q)(P,Q)(P,Q) を作ることは容易で、ロビンソン・シェンステッド対応の逆写像から順列 AAA を得ることができます。\n以上により最長増加部分列の長さが 2 以下となる (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列と、(0,0)(0,0)(0,0) から (n,n)(n,n)(n,n) への経路で領域 y≥xy\\ge xy≥x 上にあるものとの間の全単射が得られました。その個数は「あの数」、すなわちカタラン数となります。\npattern avoidance # 最長増加部分列の長さが 2 以下の順列のことを、123-avoiding ともいいます。これは i1\u0026lt;i2\u0026lt;i3i_1\u0026lt;i_2\u0026lt;i_3i1​\u0026lt;i2​\u0026lt;i3​ を選んだときに Ai1,Ai2,Ai3A_{i_1},A_{i_2},A_{i_3}Ai1​​,Ai2​​,Ai3​​ が 1,2,31,2,31,2,3 と同じ順序にならないという意味です。同様に、1234-avoiding は最長増加部分列の長さが 3 以下という意味です。\n他のパターンも作れます。321-avoiding は最長減少部分列の長さが 2 以下という意味です。132-avoiding や 3142-avoiding なども考えられます。3142-avoiding とは i1\u0026lt;i2\u0026lt;i3\u0026lt;i4i_1\u0026lt;i_2\u0026lt;i_3\u0026lt;i_4i1​\u0026lt;i2​\u0026lt;i3​\u0026lt;i4​ であって Ai2\u0026lt;Ai4\u0026lt;Ai1\u0026lt;Ai3A_{i_2}\u0026lt;A_{i_4}\u0026lt;A_{i_1}\u0026lt;A_{i_3}Ai2​​\u0026lt;Ai4​​\u0026lt;Ai1​​\u0026lt;Ai3​​ となるものが存在しないということです。\n今回は長さ 3 の pattern avoidance について考えます。3!=63!=63!=6 なので、次の 6 通りが考えられます。\n123-avoiding 132-avoiding 213-avoiding 231-avoiding 312-avoiding 321-avoiding 左右反転を考えれば 123-avoiding と 321-avoiding の順列の個数が等しいことがわかります。また AiA_iAi​ を n+1−Ain+1-A_in+1−Ai​ に置き換えるという全単射を考えることもできます。よってこれらの順列の間には次のような全単射が存在します。\n123-avoiding と 132-avoiding # 123-avoiding な順列と 132-avoiding な順列の間に全単射を構成します。\n2024 年 6 月号でも紹介した Rothe diagram を考えます。下の図は 132-avoiding な順列 6743521 に対する Rothe diagram です。\nこれを見ると、白い部分はヤング図形 (5,5,3,2,2,1)(5,5,3,2,2,1)(5,5,3,2,2,1) になっています。実は、白い部分がヤング図形になることと順列が 132-avoiding であることは同値です。また、このときのヤング図形は (n−1,…,2,1)(n-1,\\ldots,2,1)(n−1,…,2,1) のヤング図形に含まれます。このようなヤング図形は境界を見ることで領域 y≥xy\\ge xy≥x 上の (0,0)(0,0)(0,0) から (n,n)(n,n)(n,n) へ向かう経路と対応します。これが 132-avoiding な順列と経路の間の全単射です。\n123-avoiding な順列と経路の間の全単射は既に作ってあったので、組み合わせることで 123-avoiding な順列と 132-avoind な順列の間に全単射を構成することができます。\nまとめ # 以上より、CnC_nCn​ をカタラン数とすると\n123-avoiding な長さ nnn の順列の個数は CnC_nCn​ 132-avoiding な長さ nnn の順列の個数は CnC_nCn​ 213-avoiding な長さ nnn の順列の個数は CnC_nCn​ 231-avoiding な長さ nnn の順列の個数は CnC_nCn​ 312-avoiding な長さ nnn の順列の個数は CnC_nCn​ 321-avoiding な長さ nnn の順列の個数は CnC_nCn​ となることがわかりました。すべてカタラン数になるのは面白いですね。\nおわりに # 長さ 4 以上の pattern avoidance も盛んに研究されています。私もいずれ勉強してみたいです。\n月刊組合せ論 Natori では組合せ論の面白そうなトピックを紹介していきます。応援のほどよろしくお願いいたします。\n参考文献 # Kitaev, Sergey. Patterns in permutations and words. Springer (2011).\n","date":"2024-08-01","externalUrl":null,"permalink":"/natori/202408/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は pattern avoidance と呼ばれるものに入門していきます。あの数列も登場します！\n","title":"【月刊組合せ論 Natori】長さ 3 の pattern avoidance【2024 年 8 月号】","type":"natori"},{"content":"図書館。この世界の様々な知恵が集まる場所。\nそんな図書館に、一人の少女が足を踏み入れる。一冊の本を手に取り、開く。知らない世界の事柄が書かれている。知りたい、もっと知りたい。彼女の気持ちは高鳴る。\n貸出手続きを終え、彼女は真っ先にある人のもとへ向かった。\nいおり しーちゃん！面白そうな本を見つけたの！\nしいな この本は何？\n石浦（いしうら）いおりは、椎木（しいのき）しいなに借りた本を見せた。その本のタイトルは、\nこうして 2 人は数え上げの世界へ足を踏み入れることになったのであった。\n","date":"2024-07-13","externalUrl":null,"permalink":"/ec/prologue/","section":"いーしー部！","summary":"図書館。この世界の様々な知恵が集まる場所。\n","title":"【いーしー部！】はじまり【ぷろろーぐ！その１】","type":"ec"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は競技プログラミングにも登場するマトロイドに入門していきます。タイトルの「入門しよう」には、筆者と共に入門しようという気持ちが込められています。つまり筆者も素人です。\nベクトル空間 # ベクトル a⃗=(1,−1,0),b⃗=(0,1,−1),c⃗=(3,−2,−1),d⃗=(1,1,1)\\vec{a}=(1,-1,0), \\vec{b}=(0,1,-1),\\vec{c}=(3,-2,-1),\\vec{d}=(1,1,1)a=(1,−1,0),b=(0,1,−1),c=(3,−2,−1),d=(1,1,1) を考えます。c⃗\\vec{c}c は c⃗=3a⃗+b⃗\\vec{c}=3\\vec{a}+\\vec{b}c=3a+b と表せる一方、d⃗\\vec{d}d は pa⃗+qb⃗p\\vec{a}+q\\vec{b}pa+qb の形で表すことができません。このような関係を表す概念として、線形独立と線形従属があります。\nベクトルの集合 X={x⃗1,…,x⃗n}X=\\{\\vec{x}_1,\\ldots,\\vec{x}_n\\}X={x1​,…,xn​} が線形独立であるとは、a1x⃗1+⋯+anx⃗n=0⃗a_1\\vec{x}_1+\\cdots+a_n\\vec{x}_n=\\vec{0}a1​x1​+⋯+an​xn​=0 ならば a1=⋯=an=0a_1=\\cdots=a_n=0a1​=⋯=an​=0 が成り立つことをいいます。そうでないとき XXX は線形従属であるといいます。例えば {a⃗,b⃗,d⃗}\\{\\vec{a},\\vec{b},\\vec{d}\\}{a,b,d} は線形独立ですが、{a⃗,b⃗,c⃗}\\{\\vec{a},\\vec{b},\\vec{c}\\}{a,b,c} は 3a⃗+b⃗−c⃗=0⃗3\\vec{a}+\\vec{b}-\\vec{c}=\\vec{0}3a+b−c=0 をみたすので線形従属です。\nXXX が線形独立ならば、部分集合 Y⊂XY\\subset XY⊂X も線形独立です。さらに次の性質が成り立ちます。\n命題: X,YX,YX,Y はベクトル空間 VVV の線形独立な部分集合で ∣X∣\u0026gt;∣Y∣|X|\u0026gt;|Y|∣X∣\u0026gt;∣Y∣ をみたすとする。このときある x∈X∖Yx\\in X\\setminus Yx∈X∖Y であって Y∪{x}Y\\cup\\{x\\}Y∪{x} が線形独立であるものが存在する。 証明: もしすべての x∈X∖Yx\\in X\\setminus Yx∈X∖Y について Y∪{x}Y\\cup\\{x\\}Y∪{x} が線形従属であったとすると、XXX の元はすべて YYY の元の線形結合として表せる。YYY を基底とする部分空間の次元は ∣Y∣|Y|∣Y∣ で、∣X∣\u0026gt;∣Y∣|X|\u0026gt;|Y|∣X∣\u0026gt;∣Y∣ であることから XXX は線形従属となる。これは矛盾である。\nグラフ # グラフは頂点と辺からなるものです。厳密にはグラフ GGG は頂点集合 V(G)V(G)V(G) と辺集合 E(G)E(G)E(G) の組で、E(G)E(G)E(G) は V(G)V(G)V(G) の非順序対 {x,y}\\{x,y\\}{x,y} からなります。ここでは x≠yx\\ne yx=y とします。\nグラフ GGG のサイクルとは、頂点の列 (v1,v2,…,vn)(v_1,v_2,\\ldots,v_n)(v1​,v2​,…,vn​) (ただし n≥3n\\ge 3n≥3 とする) であって {v1,v2},{v2,v3},…,{vn−1,vn},{vn,v1}\\{v_1,v_2\\},\\{v_2,v_3\\},\\ldots,\\{v_{n-1},v_n\\},\\{v_n,v_1\\}{v1​,v2​},{v2​,v3​},…,{vn−1​,vn​},{vn​,v1​} が辺であるものをいいます。森とは、サイクルをもたない部分グラフのことをいいます。\n命題: X,YX,YX,Y はグラフ GGG の森で、∣E(X)∣\u0026gt;∣E(Y)∣|E(X)|\u0026gt;|E(Y)|∣E(X)∣\u0026gt;∣E(Y)∣ をみたすとする。このときある辺 e∈E(X)∖E(Y)e\\in E(X)\\setminus E(Y)e∈E(X)∖E(Y) であって Y∪{e}Y\\cup\\{e\\}Y∪{e} が森であるものが存在する。 証明: すべての e∈E(X)∖E(Y)e\\in E(X)\\setminus E(Y)e∈E(X)∖E(Y) について Y∪{e}Y\\cup\\{e\\}Y∪{e} が森ではないと仮定する。また V(X)=V(Y)=V(G)V(X)=V(Y)=V(G)V(X)=V(Y)=V(G) とする。r(X)r(X)r(X) を XXX の連結成分の個数とするとき、r(X)=∣V(X)∣−∣E(X)∣r(X)=|V(X)|-|E(X)|r(X)=∣V(X)∣−∣E(X)∣ より r(X)\u0026lt;r(Y)r(X)\u0026lt;r(Y)r(X)\u0026lt;r(Y) が成り立つ。一方、e={u,v}∈E(X)e=\\{u,v\\}\\in E(X)e={u,v}∈E(X) に対して、頂点 u,vu,vu,v は YYY の同じ連結成分に属する。このことから r(X)≥r(Y)r(X)\\ge r(Y)r(X)≥r(Y) となる。これは矛盾である。\nマトロイド # マトロイドはベクトル空間とグラフに対する上述の性質を抽象化したものです。\nEEE を有限集合、I\\mathcal{I}I を EEE の部分集合からなる集合とします。(E,I)(E,\\mathcal{I})(E,I) がマトロイドであるとは\n∅∈I\\emptyset\\in \\mathcal{I}∅∈I X∈I,Y⊂XX\\in \\mathcal{I}, Y\\subset XX∈I,Y⊂X ならば Y∈IY\\in \\mathcal{I}Y∈I X,Y∈I,∣X∣\u0026gt;∣Y∣X,Y\\in \\mathcal{I}, |X|\u0026gt;|Y|X,Y∈I,∣X∣\u0026gt;∣Y∣ ならばある x∈X∖Yx\\in X\\setminus Yx∈X∖Y について Y∪{x}∈IY\\cup\\{x\\}\\in \\mathcal{I}Y∪{x}∈I をみたすことをいいます。X∈IX\\in \\mathcal{I}X∈I であるとき、XXX は独立であるといいます。\n1, 2 をみたす場合、(E,I)(E,\\mathcal{I})(E,I) は独立性システムであるといいます。\nランク関数 # マトロイド (E,I)(E,\\mathcal{I})(E,I) に対してランク関数 r ⁣:2E→Z+r\\colon 2^E\\to \\mathbb{Z}_+r:2E→Z+​ を r(X)=max⁡{∣Y∣∣Y⊆X,Y∈I}r(X)=\\max\\{|Y| \\mid Y\\subseteq X, Y\\in \\mathcal{I}\\}r(X)=max{∣Y∣∣Y⊆X,Y∈I} により定めます。すると\n0≤r(X)≤∣X∣0\\le r(X)\\le |X|0≤r(X)≤∣X∣ Y⊆XY\\subseteq XY⊆X ならば r(Y)≤r(X)r(Y)\\le r(X)r(Y)≤r(X) r(X)+r(Y)≥r(X∪Y)+r(X∩Y)r(X)+r(Y)\\ge r(X\\cup Y)+r(X\\cap Y)r(X)+r(Y)≥r(X∪Y)+r(X∩Y) が成り立ちます。最初の 2 つは明らかです。三番目の不等式は劣モジュラ性と呼ばれています。\n逆を考えることもできます。EEE は有限集合で関数 r ⁣:2E→Z+r\\colon 2^E\\to \\mathbb{Z}_+r:2E→Z+​ は上の 3 つの条件をみたすとします。\nI={X⊆E∣r(X)=∣X∣} \\mathcal{I}=\\{X\\subseteq E\\mid r(X)=|X|\\} I={X⊆E∣r(X)=∣X∣}とおくと、(E,I)(E,\\mathcal{I})(E,I) はマトロイドになります。証明は省略します。\nこのように、マトロイドはランク関数によって導入することもできます。他にも様々なマトロイドの特徴づけが知られています。次のセクションではアルゴリズムによってマトロイドを特徴づける話を紹介します。\n貪欲法 # 「マトロイドは貪欲法」というフレーズを聞いたことがある人もいるかもしれません。実は、貪欲法が上手く動くこととマトロイドであることが同値になります。これを正確に述べます。\n(E,I)(E,\\mathcal{I})(E,I) を独立性システムとします。各 e∈Ee \\in Ee∈E に対して重み w(e)∈R≥0w(e)\\in\\mathbb{R} _ {\\ge 0}w(e)∈R≥0​ が定まっているとします。求めたいものは、極大独立集合 BBB であって重みの和 ∑e∈Bw(e)\\sum_{e\\in B}w(e)∑e∈B​w(e) が最小となるものです。この問題に対して、次のような貪欲法を考えます。\nw(e1)≤⋯≤w(en)w(e_1)\\le\\cdots\\le w(e_n)w(e1​)≤⋯≤w(en​) となるように EEE の元に e1,…,ene_1,\\ldots,e_ne1​,…,en​ と名前を付けます。まず B=∅B=\\emptysetB=∅ とします。i=1,2,…,ni=1,2,\\ldots,ni=1,2,…,n の順に次の操作を行います。\nB∪{ei}∈IB\\cup\\{e_i\\}\\in\\mathcal{I}B∪{ei​}∈I ならば BBB に eie_iei​ を加える。 最終的な BBB が出力です。\nこのアルゴリズムは本当に最小コストの極大独立集合を出力するでしょうか？\n定理: (E,I)(E,\\mathcal{I})(E,I) を独立性システムとする。任意の関数 w ⁣:E→R≥0w\\colon E\\to\\mathbb{R} _ {\\ge 0}w:E→R≥0​ に対して貪欲法が最小コストの極大独立集合を出力することと、(E,I)(E,\\mathcal{I})(E,I) がマトロイドであることは同値である。 なお極大独立集合のことは基ともいいます。基の要素数は等しいことが知られており、以下の証明でも用いられます。\nまずはマトロイドならば貪欲法が上手く動くことを示します。貪欲法の出力が B={x1,…,xr}B=\\{x_1,\\ldots,x_r\\}B={x1​,…,xr​} で、x1,…,xrx_1,\\ldots,x_rx1​,…,xr​ の順に加えられたとします。もちろん w(x1)≤⋯≤w(xr)w(x_1)\\le\\cdots\\le w(x_r)w(x1​)≤⋯≤w(xr​) です。B′={y1,…,yr}∈IB^{\\prime}=\\{y_1,\\ldots,y_r\\}\\in\\mathcal{I}B′={y1​,…,yr​}∈I (w(y1)≤⋯≤w(yr)w(y_1)\\le\\cdots\\le w(y_r)w(y1​)≤⋯≤w(yr​)) が最適解であるとします。このとき任意の iii に対して w(xi)≤w(yi)w(x_i)\\le w(y_i)w(xi​)≤w(yi​) が成り立つことを示します。そうでないと仮定すると、w(xk)\u0026gt;w(yk)w(x_k)\u0026gt;w(y_k)w(xk​)\u0026gt;w(yk​) となる kkk が存在します。このような kkk のうち最小のものをとり、S={x1,…,xk−1},T={y1,…,yk}S=\\{x_1,\\ldots,x_{k-1}\\}, T=\\{y_1,\\ldots,y_k\\}S={x1​,…,xk−1​},T={y1​,…,yk​} を考えます。∣T∣=∣S∣+1|T|=|S|+1∣T∣=∣S∣+1 なので、マトロイドの性質よりある j (1≤j≤r)j \\ (1\\le j\\le r)j (1≤j≤r) について S∪{yj}∈IS\\cup\\{y_j\\}\\in\\mathcal{I}S∪{yj​}∈I となります。しかし w(yj)≤w(yk)\u0026lt;w(xk)w(y_j)\\le w(y_k)\u0026lt;w(x_k)w(yj​)≤w(yk​)\u0026lt;w(xk​) なので、貪欲法の動かし方と合いません。\n次に貪欲法が上手く動くならばマトロイドであることを示します。マトロイドでないとすると、ある独立集合 A,BA,BA,B は ∣A∣=∣B∣+1|A|=|B|+1∣A∣=∣B∣+1 をみたすが、任意の a∈A∖Ba\\in A\\setminus Ba∈A∖B について B∪{a}B\\cup\\{a\\}B∪{a} が独立ではありません。重みを\nw(x)={w1x∈A∩Bw2x∈B∖Aw3x∈A∖Bw4otherwise w(x)=\\begin{cases} w_1 \u0026amp; x\\in A\\cap B \\\\ w_2 \u0026amp; x\\in B\\setminus A \\\\ w_3 \u0026amp; x\\in A\\setminus B \\\\ w_4 \u0026amp; \\text{otherwise} \\end{cases} w(x)=⎩⎨⎧​w1​w2​w3​w4​​x∈A∩Bx∈B∖Ax∈A∖Botherwise​とします。まず w1\u0026lt;w2\u0026lt;w3\u0026lt;w4w_1\u0026lt;w_2\u0026lt;w_3\u0026lt;w_4w1​\u0026lt;w2​\u0026lt;w3​\u0026lt;w4​ とします。貪欲法は、まず A∩BA\\cap BA∩B の元をすべて選び、B∖AB\\setminus AB∖A の元をすべて選びます。仮定より A∖BA\\setminus BA∖B の元は選びません。BBB は極大独立集合でないので、X∖(A∪B)X\\setminus (A\\cup B)X∖(A∪B) から選ばれます。mmm を極大独立集合の要素数としたとき、コストは\n∣A∩B∣w1+∣B∖A∣w2+(m−∣B∣)w4 |A\\cap B|w_1+|B\\setminus A|w_2+(m-|B|)w_4 ∣A∩B∣w1​+∣B∖A∣w2​+(m−∣B∣)w4​となります。これが最適でないことを示したいので、A,BA,BA,B の役割を変えて得られるコスト\n∣A∩B∣w1+∣A∖B∣w3+(m−∣A∣)w4 |A\\cap B|w_1+|A\\setminus B|w_3+(m-|A|)w_4 ∣A∩B∣w1​+∣A∖B∣w3​+(m−∣A∣)w4​の方が小さいようにしたいです。この不等式は\nw4\u0026gt;∣A∖B∣w3−∣B∖A∣w2 w_4\u0026gt;|A\\setminus B|w_3-|B\\setminus A|w_2 w4​\u0026gt;∣A∖B∣w3​−∣B∖A∣w2​と変形できます。これが成り立つように w1,w2,w3,w4w_1,w_2,w_3,w_4w1​,w2​,w3​,w4​ を具体的に定めることができますが、これは読者の演習問題とします。\nまた、最小を最大に置き換えても類似の定理が成り立ちます。\n競技プログラミングにおける具体例 # 競技プログラミングにおいてマトロイドが現れる例をいくつか紹介します。\n代表的な例は最小全域木です。マトロイドはグラフの一般化だったことを思い出すと、サイクルのないグラフのうち辺の数が極大なものが基 (極大独立集合) です。グラフが連結であるとすると、基は全域木です。するとマトロイドに対する貪欲法を用いることで最小全域木が求められます。このアルゴリズムにはクラスカル法という名前がついています。\n他にも、AtCoder Beginner Contest 236 F - Spices がマトロイドの考え方で解けます。その他のマトロイドが現れる問題はぜひ詳しい人に聞いてみてください。\n競技プログラミングとマトロイドに関する記事は色々あります。いくつかピックアップして紹介します。\n競技プログラミングとマトロイド クリスマスですし、罰金付きスケジューリング問題でマトロイドと貪欲法の基本に入門します！ マトロイドのお勉強（JSC2019予選 [E] Card Collector） おわりに # マトロイドの基礎を紹介しました。筆者も素人なので、詳しい人からのコメントをお待ちしております。\n高度な話題も、勉強が進めば記事にしたいと思っています。\n今後も月刊組合せ論 Natori では組合せ論の様々な話題をお届けする予定なので、応援のほどよろしくお願いいたします。\n参考文献 # Pitsoulis, Leonidas S. Topics in matroid theory. SpringerBriefs in Optimization. Springer. (2014). When Greedy Algorithms are Perfect: the Matroid ","date":"2024-07-01","externalUrl":null,"permalink":"/natori/202407/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は競技プログラミングにも登場するマトロイドに入門していきます。タイトルの「入門しよう」には、筆者と共に入門しようという気持ちが込められています。つまり筆者も素人です。\n","title":"【月刊組合せ論 Natori】マトロイドに入門しよう【2024 年 7 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はシューベルト多項式を扱います。\nシューベルト多項式の基礎 # シューベルト多項式は組合せ論や幾何学などで活躍する多項式です。タイトルにもある通り、この記事では組合せ論に限って扱います。\nまずは対称群について復習します。SnS_nSn​ を nnn 次対称群、すなわち {1,2,…,n}\\{1,2,\\ldots,n\\}{1,2,…,n} の置換全体とします。si=(i,i+1)∈Sns_i=(i,i+1)\\in S_nsi​=(i,i+1)∈Sn​ を隣接互換とします。SnS_nSn​ の任意の元は sis_isi​ たちの積として表されます。w∈Snw\\in S_nw∈Sn​ をそのように表したときに現れる隣接互換の最小個数を ℓ(w)\\ell(w)ℓ(w) で表し、長さといいます。そのときの www の表示を最短表示といいます。www の最短表示は一意的とは限りません。例えば\n(12344213)=s3s2s1s2=s1s3s2s1 \\begin{pmatrix} 1 \u0026amp; 2 \u0026amp; 3 \u0026amp; 4 \\\\ 4 \u0026amp; 2 \u0026amp; 1 \u0026amp; 3 \\end{pmatrix}=s_3s_2s_1s_2=s_1s_3s_2s_1 (14​22​31​43​)=s3​s2​s1​s2​=s1​s3​s2​s1​のように 2 通りの最短表示で表すことができる場合があります。\n次は対称多項式を考えます。f∈Z[x1,…,xn],w∈Snf\\in\\mathbb{Z}[x_1,\\ldots,x_n], w\\in S_nf∈Z[x1​,…,xn​],w∈Sn​ のとき、wf∈Z[x1,…,xn]wf\\in\\mathbb{Z}[x_1,\\ldots,x_n]wf∈Z[x1​,…,xn​] を (wf)(x1,…,xn)=f(xw(1),…,xw(n))(wf)(x_1,\\ldots,x_n)=f(x_{w(1)},\\ldots,x_{w(n)})(wf)(x1​,…,xn​)=f(xw(1)​,…,xw(n)​) により定めます。すべての www に対して wf=fwf=fwf=f となるような多項式 fff を対称多項式といいます。\n多項式 fff に対して、∂i(f)=f−sifxi−xi+1\\partial_i(f)=\\frac{f-s_if}{x_i-x_{i+1}}∂i​(f)=xi​−xi+1​f−si​f​ により多項式 ∂i(f)\\partial_i(f)∂i​(f) が定まります。作用素 ∂i\\partial_i∂i​ を差分商作用素といいます。これは次の性質をみたします。\n∂i2=0\\partial_i^2=0∂i2​=0 ∣i−j∣\u0026gt;1|i-j|\u0026gt;1∣i−j∣\u0026gt;1 ならば ∂i∂j=∂j∂i\\partial_i\\partial_j=\\partial_j\\partial_i∂i​∂j​=∂j​∂i​ ∂i∂i+1∂i=∂i+1∂i∂i+1\\partial_i\\partial_{i+1}\\partial_i=\\partial_{i+1}\\partial_i\\partial_{i+1}∂i​∂i+1​∂i​=∂i+1​∂i​∂i+1​ w∈Snw\\in S_nw∈Sn​ の最短表示の一つを si1⋯sils_{i_1}\\cdots s_{i_l}si1​​⋯sil​​ としたとき、∂w=∂i1⋯∂il\\partial_w=\\partial_{i_1}\\cdots \\partial_{i_l}∂w​=∂i1​​⋯∂il​​ と定めます。これが最短表示のとり方によらないことは上の性質から示せます。\nシューベルト多項式は SnS_nSn​ の元で添字づけられた多項式の族です。w0w_0w0​ を SnS_nSn​ の長さ最大の元とします。これは\nw0=(12⋯n−1nnn−1⋯21) w_0=\\begin{pmatrix} 1 \u0026amp; 2 \u0026amp; \\cdots \u0026amp; n-1 \u0026amp; n \\\\ n \u0026amp; n-1 \u0026amp; \\cdots \u0026amp; 2 \u0026amp; 1 \\end{pmatrix} w0​=(1n​2n−1​⋯⋯​n−12​n1​)です。シューベルト多項式は w∈Snw\\in S_nw∈Sn​ に対して\nSw(x)=∂w−1w0(x1n−1x2n−2⋯xn−1) \\mathfrak{S} _ w(x)=\\partial_{w^{-1}w_0}(x_1^{n-1}x_2^{n-2}\\cdots x_{n-1}) Sw​(x)=∂w−1w0​​(x1n−1​x2n−2​⋯xn−1​)により定義されます。例えば w=3142w=3142w=3142 のとき、w−1w0=3142=s2s1s3w^{-1}w_0=3142=s_2s_1s_3w−1w0​=3142=s2​s1​s3​ なので\nS3142(x)=∂2∂1∂3(x13x22x3)=∂2∂1(x13x22)=∂2(x12x22)=x12(x2+x3) \\begin{align*} \\mathfrak{S}_{3142}(x) \u0026amp;= \\partial_2\\partial_1\\partial_3(x_1^3x_2^2x_3) \\\\ \u0026amp;= \\partial_2\\partial_1(x_1^3x_2^2) \\\\ \u0026amp;= \\partial_2(x_1^2x_2^2) \\\\ \u0026amp;= x_1^2(x_2+x_3) \\end{align*} S3142​(x)​=∂2​∂1​∂3​(x13​x22​x3​)=∂2​∂1​(x13​x22​)=∂2​(x12​x22​)=x12​(x2​+x3​)​となります。計算途中では xnx_nxn​ が現れることもありますが、最終的には xnx_nxn​ は現れないことに注意します。\n関連する多項式として、二重シューベルト多項式も定義します。これは x1,…,xn,y1,…,ynx_1,\\ldots,x_n,y_1,\\ldots,y_nx1​,…,xn​,y1​,…,yn​ に関する多項式です。まず\nSw0(x,y)=∏i+j\u0026lt;n+1(xi−yj) \\mathfrak{S} _ {w_0}(x,y)=\\prod_{i+j\u0026lt;n+1}(x_i-y_j) Sw0​​(x,y)=i+j\u0026lt;n+1∏​(xi​−yj​)とおき\nSw(x,y)=∂w−1w0(x)Sw0(x,y) \\mathfrak{S} _ {w}(x,y)=\\partial_{w^{-1}w_0}^{(x)}\\mathfrak{S}_{w_0}(x,y) Sw​(x,y)=∂w−1w0​(x)​Sw0​​(x,y)と定めます。ここで ∂(x)\\partial^{(x)}∂(x) は変数 x1,…,xnx_1,\\ldots,x_nx1​,…,xn​ に作用する差分商作用素であることを表します。この Sw(x,y)\\mathfrak{S}_{w}(x,y)Sw​(x,y) を二重シューベルト多項式といいます。yiy_iyi​ にすべて 0 を代入すると通常のシューベルト多項式が得られます。\nStanley 予想 # Sw(x)\\mathfrak{S}_w(x)Sw​(x) は xix_ixi​ に関する単項式の非負整数係数の線形結合として表せます。係数は組合せ論的に意味があるのではないかと考えられます。これについては Stanley による次の予想（解決済み）があります。\nw∈Snw\\in S_nw∈Sn​ に対して、R(w)={(i1,…,iℓ(w))∣si1⋯siℓ(w)=w}R(w)=\\{(i_1,\\ldots,i_{\\ell(w)})\\mid s_{i_1}\\cdots s_{i_{\\ell(w)}}=w\\}R(w)={(i1​,…,iℓ(w)​)∣si1​​⋯siℓ(w)​​=w} を最短表示の集合とします。a∈R(w)a\\in R(w)a∈R(w) に対して、正整数の列 bbb が aaa-compatible であるとは\nbbb は aaa と同じ長さ (すなわち ℓ(w)\\ell(w)ℓ(w)) bbb は広義単調増加 bi≤aib_i\\le a_ibi​≤ai​ ai\u0026lt;ai+1a_i\u0026lt;a_{i+1}ai​\u0026lt;ai+1​ ならば bi\u0026lt;bi+1b_i\u0026lt;b_{i+1}bi​\u0026lt;bi+1​ をみたすことです。aaa-compatible な bbb からなる集合を C(a)C(a)C(a) とします。このとき\nSw(x)=∑a∈R(w)∑b∈C(a)xb1⋯xbℓ(w) \\mathfrak{S} _ w(x)=\\sum_{a\\in R(w)}\\sum_{b\\in C(a)}x_{b_1}\\cdots x_{b_{\\ell(w)}} Sw​(x)=a∈R(w)∑​b∈C(a)∑​xb1​​⋯xbℓ(w)​​と表せるという主張が Stanley の予想です。\nw=3142w=3142w=3142 の場合、最短表示は s2s1s3s_2s_1s_3s2​s1​s3​ のみであり、(2,1,3)(2,1,3)(2,1,3)-compatible な bbb は (1,1,2)(1,1,2)(1,1,2) と (1,1,3)(1,1,3)(1,1,3) の 2 つです。よって S3142(x)=x12x2+x12x3\\mathfrak{S}_{3142}(x)=x_1^2x_2+x_1^2x_3S3142​(x)=x12​x2​+x12​x3​ となり、上での計算と一致します。\nPipe dream # aaa-compatible な bbb に対して、マス目を用意し、bib_ibi​ 行 ai−bi+1a_i-b_i+1ai​−bi​+1 列目に印をつけます。a=(2,1,3),b=(1,1,2)a=(2,1,3),b=(1,1,2)a=(2,1,3),b=(1,1,2) の場合、(1,2),(1,1),(2,2)(1,2),(1,1),(2,2)(1,2),(1,1),(2,2) に印がつきます。印のついたマスは x+y≤nx+y\\le nx+y≤n の領域上にあるので、マス目をこの範囲に限って考えてもよいです。\nさて、印のついたマスに十字線を、印のついていないマスに交差しない線を書き込みましょう。\n上の例では次のような図形が得られます。\nこのような図形を pipe dream といいます。RC グラフと呼ばれることもあります。厳密には pipe dream には次のようなものです。\niii 行目の左端から出発した曲線は、w(i)w(i)w(i) 列目の上端に到着する。 どの 2 本の曲線も 2 回以上交わることはない。 2 番目の性質は最短表示であることから来ています。置換をあみだくじとして表すことを考えると、pipe dream はそれの亜種であると見なせます。\nシューベルト多項式は pipe dream 上の和として\nSw(x)=∑D∈PD(w)xi1⋯xil \\mathfrak{S} _ w(x)=\\sum_{D\\in PD(w)}x_{i_1}\\cdots x_{i_l} Sw​(x)=D∈PD(w)∑​xi1​​⋯xil​​と表せます。ここで i1,…,ili_1,\\ldots,i_li1​,…,il​ は十字のマスがある行の番号です。\nより一般に、二重シューベルト多項式は (ik,jk)(i_k,j_k)(ik​,jk​) を十字のマスの行・列番号とすることで\nSw(x,y)=∑D∈PD(w)(xi1−yj1)⋯(xil−yjl) \\mathfrak{S} _ w(x,y)=\\sum_{D\\in PD(w)}(x_{i_1}-y_{j_1})\\cdots (x_{i_l}-y_{j_l}) Sw​(x,y)=D∈PD(w)∑​(xi1​​−yj1​​)⋯(xil​​−yjl​​)と表せることが知られています。\nBumpless pipe dream # bumpless pipe dream は比較的最近導入された新しい図形です。BPD はもっと広く使えるものですが、ここでは（二重）シューベルト多項式に限って考えます。\n正方形のマス目を考えます。マス目への線の書き込み方は次の 6 通りです。\npipe dream と比べて、交わる十字線はありますが交わらない二曲線はありません。\nw∈Snw\\in S_nw∈Sn​ に対して\niii 行目の右端から出発した曲線は w(i)w(i)w(i) 列目の下端に到着する。 どの 2 本の曲線も 2 回以上交わることはない。 をみたす図形を bumpless pipe dream といいます。w=3142w=3142w=3142 の場合は次の 2 通りがあります。\n二重シューベルト多項式は BPD 上の和として\nSw(x,y)=∑D∈BPD(w)(xi1−yj1)⋯(xil−yjl) \\mathfrak{S} _ w(x,y)=\\sum_{D\\in BPD(w)}(x_{i_1}-y_{j_1})\\cdots (x_{i_l}-y_{j_l}) Sw​(x,y)=D∈BPD(w)∑​(xi1​​−yj1​​)⋯(xil​​−yjl​​)と表せることが知られています。ここで (ik,jk)(i_k,j_k)(ik​,jk​) は空白のマスを表します。上の例では\nS3142(x,y)=(x1−y1)(x1−y2)(x3−y2)+(x1−y1)(x1−y2)(x2−y1) \\mathfrak{S}_{3142}(x,y)=(x_1-y_1)(x_1-y_2)(x_3-y_2)+(x_1-y_1)(x_1-y_2)(x_2-y_1) S3142​(x,y)=(x1​−y1​)(x1​−y2​)(x3​−y2​)+(x1​−y1​)(x1​−y2​)(x2​−y1​)となります。yyy を 0 にすれば通常のシューベルト多項式となります。\nPD と BPD の間の全単射 # シューベルト多項式には 2 種類の表示があることがわかりました。\nSw(x)=∑D∈PD(w)xi1⋯xil=∑D∈BPD(w)xi1⋯xil \\mathfrak{S} _ w(x)=\\sum_{D\\in PD(w)}x_{i_1}\\cdots x_{i_l}=\\sum_{D\\in BPD(w)}x_{i_1}\\cdots x_{i_l} Sw​(x)=D∈PD(w)∑​xi1​​⋯xil​​=D∈BPD(w)∑​xi1​​⋯xil​​xi=1x_i=1xi​=1 を代入すれば ∣PD(w)∣=∣BPD(w)∣|PD(w)|=|BPD(w)|∣PD(w)∣=∣BPD(w)∣ がわかるので、PD(w)PD(w)PD(w) と BPD(w)BPD(w)BPD(w) の間にいい感じの全単射があることを期待したくなります。D∈PD(w)D\\in PD(w)D∈PD(w) に対して weightPD(D)=xi1⋯xil\\mathrm{weight} _ {PD}(D)=x_{i_1}\\cdots x_{i_l}weightPD​(D)=xi1​​⋯xil​​ (iki_kik​ は十字のマスの行番号)、D∈BPD(w)D\\in BPD(w)D∈BPD(w) に対して weightBPD(D)=xi1⋯xil\\mathrm{weight} _ {BPD}(D)=x_{i_1}\\cdots x_{i_l}weightBPD​(D)=xi1​​⋯xil​​ (iki_kik​ は空白のマスの行番号) としたとき、全単射 ϕ ⁣:PD(w)→BPD(w)\\phi\\colon PD(w)\\to BPD(w)ϕ:PD(w)→BPD(w) であって weightPD(D)=weightBPD(ϕ(D))\\mathrm{weight} _ {PD}(D)=\\mathrm{weight} _ {BPD}(\\phi(D))weightPD​(D)=weightBPD​(ϕ(D)) が任意の D∈PD(w)D\\in PD(w)D∈PD(w) に対して成り立つようなものが欲しいです。\nGao, Huang の論文では、モンク公式を保つという意味で \u0026ldquo;canonical\u0026rdquo; な全単射が構成されています。\nHybrid pipe dream # PD と BPD の間の全単射をより詳しく理解するために、hybrid pipe dream と呼ばれる図形が Knutson, Udell により導入されました。\nKohnert 図形 # 最後に、Kohnert によるシューベルト多項式の表示を紹介します。\n置換 w∈Snw\\in S_nw∈Sn​ の Rothe diagram とは、n×nn\\times nn×n のマス目において座標 (w(i),i)(w(i),i)(w(i),i) とその右側および上側にあるマスをすべて取り除いて得られる図形です。例えば w=3142w=3142w=3142 の場合次のようになります。\nRothe diagram に操作を行います。ある行の最も右にあるマスを選び、それを下の空きスペースに動かすことができます (他のマスを飛び越えてもよい)。上の例では可能な操作は次の 1 通りのみです。\n操作を非負整数回行うことで得られる図形の集合を KD(w)KD(w)KD(w) とおきます。D∈KD(w)D\\in KD(w)D∈KD(w) に対して、yyy 座標が iii のマスの個数を mi(D)m_i(D)mi​(D) とおくとき、シューベルト多項式は次のように表せることが知られています。\nSw(x)=∑D∈KD(w)x1m1(D)⋯xnmn(D) \\mathfrak{S} _ w(x)=\\sum_{D\\in KD(w)}x_1^{m_1(D)}\\cdots x_n^{m_n(D)} Sw​(x)=D∈KD(w)∑​x1m1​(D)​⋯xnmn​(D)​Assaf は KD(w)KD(w)KD(w) と PD(w)PD(w)PD(w) の間にウェイトを保つ全単射を構成することでこの表示を証明しました。\nおわりに # シューベルト多項式の組合せ論的表示を紹介しました。拾いきれなかった話題もたくさんあります。ぜひ皆さんもシューベルト多項式を調べてみてください！\n今後も月刊組合せ論 Natori では様々な楽しい話題をお届けする予定なので、応援のほどよろしくお願いいたします。\n参考文献 # 前野俊昭, Schubert 多項式とその仲間たち, 数学書房. Assaf, Sami H. A bijective proof of Kohnert’s rule for Schubert polynomials. Combinatorial Theory 2, No. 1, Paper No. 5, 9 p. (2022). Bergeron, Nantel; Billey, Sara. rc-graphs and Schubert polynomials. Exp. Math. 2, No. 4, 257-269 (1993). Gao, Yibo; Huang, Daoji. The Canonical Bijection between Pipe Dreams and Bumpless Pipe Dreams. International Mathematics Research Notices, Volume 2023, Issue 21, November 2023. Knutson, Allen. Schubert polynomials, pipe dreams, equivariant classes, and a co-transition formula. 2022. Knutson, Allen; Udell, Gabe. Interpolating between classic and bumpless pipe dreams. Séminaire Lotharingien de Combinatoire 89B (2023). Lam, Thomas; Lee, Seung Jin; Shimozono, Mark. Back stable Schubert calculus. Compos. Math. 157, No. 5, 883-962 (2021). ","date":"2024-06-01","externalUrl":null,"permalink":"/natori/202406/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はシューベルト多項式を扱います。\n","title":"【月刊組合せ論 Natori】シューベルト多項式の組合せ論的表示【2024 年 6 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は半標準ヤングタブローの個数を求める公式について解説します。\n半標準ヤングタブロー # ヤング図形のマスに正整数を書き込んだものであって\n各行について広義単調増加 各列について狭義単調増加 となるものを半標準ヤングタブローといいます。シューア多項式とヤコビ・トゥルーディ公式【2023 年 3 月号】もご覧ください。\n分割 λ=(λ1,…,λn)\\lambda=(\\lambda_1,\\ldots,\\lambda_n)λ=(λ1​,…,λn​) に対する半標準ヤングタブローの集合を SSYT(λ,n)\\mathrm{SSYT}(\\lambda,n)SSYT(λ,n) とし、その要素数を dλ(n)d_{\\lambda}(n)dλ​(n) とします。ここで λ\\lambdaλ の成分は 000 を含んでもよいものとし、タブローに書き込む数は nnn 以下であるものとします。\nこの公式を覚えましょう！ # 半標準ヤングタブローの個数を求めたくなったとき、この公式を使いましょう。\ndλ(n)=∏1≤i\u0026lt;j≤nλi−λj+j−ij−i d_{\\lambda}(n)=\\prod_{1\\le i\u0026lt;j\\le n}\\frac{\\lambda_i-\\lambda_j+j-i}{j-i} dλ​(n)=1≤i\u0026lt;j≤n∏​j−iλi​−λj​+j−i​証明をします。2023 年 3 月号でも述べたように、シューア多項式は\nsλ(x1,…,xn)=∑T∈SSYT(λ,n)xT s_{\\lambda}(x_1,\\ldots,x_n)=\\sum_{T\\in\\mathrm{SSYT}(\\lambda,n)}x^T sλ​(x1​,…,xn​)=T∈SSYT(λ,n)∑​xTおよび\nsλ(x1,…,xn)=Aλ+δn(x1,…,xn)Aδn(x1,…,xn) s_{\\lambda}(x_1,\\ldots,x_n)=\\frac{A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)}{A_{\\delta_n}(x_1,\\ldots,x_n)} sλ​(x1​,…,xn​)=Aδn​​(x1​,…,xn​)Aλ+δn​​(x1​,…,xn​)​という 2 つの表示をもちます (ここで δn=(n−1,…,1,0),Aα(x1,…,xn)=det⁡(xiαj)\\delta_n=(n-1,\\ldots,1,0), A_{\\alpha}(x_1,\\ldots,x_n)=\\det(x_i ^ {\\alpha_j})δn​=(n−1,…,1,0),Aα​(x1​,…,xn​)=det(xiαj​​) です)。1 つ目の等式から dλ(n)=sλ(1,1,…,1)d_{\\lambda}(n)=s_{\\lambda}(1,1,\\ldots,1)dλ​(n)=sλ​(1,1,…,1) です。2 つ目の等式に x1=⋯=xn=1x_1=\\cdots=x_n=1x1​=⋯=xn​=1 を代入したいところですが、そのままでは 00\\frac{0}{0}00​ になってしまいます。そこで sλ(1,q,q2,…,qn−1)s_{\\lambda}(1,q,q^2,\\ldots,q^{n-1})sλ​(1,q,q2,…,qn−1) を計算します。分母は Vandermonde 行列式\nAδn(x1,…,xn)=∣x1n−1⋯x11x2n−1⋯x21⋮⋱⋮⋮xnn−1⋯xn1∣=∏1≤i\u0026lt;j≤n(xi−xj) A_{\\delta_n}(x_1,\\ldots,x_n)= \\begin{vmatrix} x_1^{n-1} \u0026amp; \\cdots \u0026amp; x_1 \u0026amp; 1 \\\\ x_2^{n-1} \u0026amp; \\cdots \u0026amp; x_2 \u0026amp; 1 \\\\ \\vdots \u0026amp; \\ddots \u0026amp; \\vdots \u0026amp; \\vdots \\\\ x_n^{n-1} \u0026amp; \\cdots \u0026amp; x_n \u0026amp; 1 \\end{vmatrix} =\\prod_{1\\le i\u0026lt;j\\le n}(x_i-x_j) Aδn​​(x1​,…,xn​)=​x1n−1​x2n−1​⋮xnn−1​​⋯⋯⋱⋯​x1​x2​⋮xn​​11⋮1​​=1≤i\u0026lt;j≤n∏​(xi​−xj​)なので\nAδn(1,q,q2,…,qn−1)=∏1≤i\u0026lt;j≤n(qi−1−qj−1) A_{\\delta_n}(1,q,q^2,\\ldots,q^{n-1})=\\prod_{1\\le i\u0026lt;j\\le n}(q^{i-1}-q^{j-1}) Aδn​​(1,q,q2,…,qn−1)=1≤i\u0026lt;j≤n∏​(qi−1−qj−1)となります。一方で\nAλ+δn(1,q,q2,…,qn−1)=∣11⋯1qλ1+n−1qλ2+n−2⋯qλnq2(λ1+n−1)q2(λ2+n−2)⋯q2λn⋮⋮⋱⋮q(n−1)(λ1+n−1)q(n−1)(λ2+n−2)⋯q(n−1)λn∣ A_{\\lambda+\\delta_n}(1,q,q^2,\\ldots,q^{n-1})= \\begin{vmatrix} 1 \u0026amp; 1 \u0026amp; \\cdots \u0026amp; 1 \\\\ q^{\\lambda_1+n-1} \u0026amp; q^{\\lambda_2+n-2} \u0026amp; \\cdots \u0026amp; q^{\\lambda_n} \\\\ q^{2(\\lambda_1+n-1)} \u0026amp; q^{2(\\lambda_2+n-2)} \u0026amp; \\cdots \u0026amp; q^{2\\lambda_n} \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \u0026amp; \\vdots \\\\ q^{(n-1)(\\lambda_1+n-1)} \u0026amp; q^{(n-1)(\\lambda_2+n-2)} \u0026amp; \\cdots \u0026amp; q^{(n-1)\\lambda_n} \\end{vmatrix} Aλ+δn​​(1,q,q2,…,qn−1)=​1qλ1​+n−1q2(λ1​+n−1)⋮q(n−1)(λ1​+n−1)​1qλ2​+n−2q2(λ2​+n−2)⋮q(n−1)(λ2​+n−2)​⋯⋯⋯⋱⋯​1qλn​q2λn​⋮q(n−1)λn​​​となり、AδnA_{\\delta_n}Aδn​​ とは形が少し異なりますがこれも Vandermonde 行列式です。よって\nAλ+δn(1,q,q2,…,qn−1)=∏1≤i\u0026lt;j≤n(qλj+n−j−qλi+n−i) A_{\\lambda+\\delta_n}(1,q,q^2,\\ldots,q^{n-1})=\\prod_{1\\le i\u0026lt;j\\le n}(q^{\\lambda_j+n-j}-q^{\\lambda_i+n-i}) Aλ+δn​​(1,q,q2,…,qn−1)=1≤i\u0026lt;j≤n∏​(qλj​+n−j−qλi​+n−i)となります。これらを合わせて\nsλ(1,q,q2,…,qn−1)=∏1≤i\u0026lt;j≤nqλj+n−j−qλi+n−iqi−1−qj−1 s_{\\lambda}(1,q,q^2,\\ldots,q^{n-1})=\\prod_{1\\le i\u0026lt;j\\le n}\\frac{q^{\\lambda_j+n-j}-q^{\\lambda_i+n-i}}{q^{i-1}-q^{j-1}} sλ​(1,q,q2,…,qn−1)=1≤i\u0026lt;j≤n∏​qi−1−qj−1qλj​+n−j−qλi​+n−i​となります。q→1q\\to 1q→1 の極限をとります。(qn−1)/(q−1)→n(q^n-1)/(q-1)\\to n(qn−1)/(q−1)→n であることを用いると\ndλ(n)=∏1≤i\u0026lt;j≤nλj−j−λi+ii−j d_{\\lambda}(n)=\\prod_{1\\le i\u0026lt;j\\le n}\\frac{\\lambda_j-j-\\lambda_i+i}{i-j} dλ​(n)=1≤i\u0026lt;j≤n∏​i−jλj​−j−λi​+i​となり、上で掲げた式が得られました。\nフック容量公式 # フック容量公式 (hook content formula) も有名です。マス (i,j)∈λ(i,j)\\in\\lambda(i,j)∈λ におけるフック長を h(i,j)h(i,j)h(i,j) とします。また、容量を c(i,j)=j−ic(i,j)=j-ic(i,j)=j−i により定めます。このとき\ndλ(n)=∏(i,j)∈λn+c(i,j)h(i,j) d_{\\lambda}(n)=\\prod_{(i,j)\\in\\lambda}\\frac{n+c(i,j)}{h(i,j)} dλ​(n)=(i,j)∈λ∏​h(i,j)n+c(i,j)​が成り立ちます。これを先ほどの等式を用いて証明しましょう。\n再び記事『ヤング図形と競技プログラミング』の図を使いまわしますが、ヤング図形はマヤ図形とみなすことができます。\nli=λi+n−il_i=\\lambda_i+n-ili​=λi​+n−i とおきます。M={l1,…,ln}M=\\{l_1,\\ldots,l_n\\}M={l1​,…,ln​} はマヤ図形と対応します (つまり lil_ili​ は黒丸の位置と対応します)。いま\n∏1≤i\u0026lt;j≤n(λi−λj+j−i)=∏1≤i\u0026lt;j≤n(li−lj)=∏0≤q\u0026lt;pp,q∈M(p−q)∏1≤i\u0026lt;j≤n(j−i)=∏0≤q\u0026lt;p\u0026lt;n(p−q) \\begin{gather*} \\prod_{1\\le i\u0026lt;j\\le n}(\\lambda_i-\\lambda_j+j-i)=\\prod_{1\\le i\u0026lt;j\\le n}(l_i-l_j)=\\prod_{\\substack{0\\le q\u0026lt;p \\\\ p,q\\in M}}(p-q) \\\\ \\prod_{1\\le i\u0026lt;j\\le n}(j-i)=\\prod_{0\\le q\u0026lt;p\u0026lt;n}(p-q) \\end{gather*} 1≤i\u0026lt;j≤n∏​(λi​−λj​+j−i)=1≤i\u0026lt;j≤n∏​(li​−lj​)=0≤q\u0026lt;pp,q∈M​∏​(p−q)1≤i\u0026lt;j≤n∏​(j−i)=0≤q\u0026lt;p\u0026lt;n∏​(p−q)​となります。またマヤゲームのところで説明した通り、フックを引き抜く操作は黒石を左側の空きマスに移動させることと対応します。このことからフックは左側の空きマスと右側の黒石のペアとして表現できます。よって\n∏(i,j)∈λh(i,j)=∏0≤q\u0026lt;pp∈M,q∉M(p−q) \\prod_{(i,j)\\in\\lambda}h(i,j)=\\prod_{\\substack{0\\le q\u0026lt;p \\\\ p\\in M, q\\notin M}}(p-q) (i,j)∈λ∏​h(i,j)=0≤q\u0026lt;pp∈M,q∈/M​∏​(p−q)となります。以上より\ndλ(n)∏(i,j)∈λh(i,j)=∏0≤q\u0026lt;p; p,q∈M(p−q)∏0≤q\u0026lt;p; p∈M,q∉M(p−q)∏0≤q\u0026lt;p\u0026lt;n(p−q)=∏0≤q\u0026lt;p; p∈M(p−q)∏0≤q\u0026lt;p\u0026lt;n(p−q)=∏i=1nli!(n−i)!=∏i=1n(λi+n−i)(λi+n−i−1)⋯(n−i+1)=∏(i,j)∈λ(n+c(i,j)) \\begin{align*} d_{\\lambda}(n)\\prod_{(i,j)\\in \\lambda}h(i,j) \u0026amp;= \\frac{\\prod_{0\\le q\u0026lt;p; \\ p,q\\in M}(p-q)\\prod_{0\\le q\u0026lt;p; \\ p\\in M, q\\notin M}(p-q)}{\\prod_{0\\le q\u0026lt;p\u0026lt;n}(p-q)} \\\\ \u0026amp;= \\frac{\\prod_{0\\le q\u0026lt;p; \\ p\\in M}(p-q)}{\\prod_{0\\le q\u0026lt;p\u0026lt;n}(p-q)} \\\\ \u0026amp;= \\prod_{i=1}^n\\frac{l_i!}{(n-i)!} \\\\ \u0026amp;= \\prod_{i=1}^n(\\lambda_i+n-i)(\\lambda_i+n-i-1)\\cdots (n-i+1) \\\\ \u0026amp;= \\prod_{(i,j)\\in\\lambda}(n+c(i,j)) \\end{align*} dλ​(n)(i,j)∈λ∏​h(i,j)​=∏0≤q\u0026lt;p\u0026lt;n​(p−q)∏0≤q\u0026lt;p; p,q∈M​(p−q)∏0≤q\u0026lt;p; p∈M,q∈/M​(p−q)​=∏0≤q\u0026lt;p\u0026lt;n​(p−q)∏0≤q\u0026lt;p; p∈M​(p−q)​=i=1∏n​(n−i)!li​!​=i=1∏n​(λi​+n−i)(λi​+n−i−1)⋯(n−i+1)=(i,j)∈λ∏​(n+c(i,j))​が得られました。\nLGV 公式 # 半標準ヤングタブローと非交差経路の対応をもとに、LGV 公式を用いて dλ(n)d_{\\lambda}(n)dλ​(n) を求める方法もあります。\n大雑把に説明すると、横向きの辺の高さとマスに書かれている数が対応します。\n厳密には次のようになります。i=1,2,…,ni=1,2,\\ldots,ni=1,2,…,n に対して ai=(0,i),bi=(λi+n−i,n)a_i=(0,i), b_i=(\\lambda_i+n-i, n)ai​=(0,i),bi​=(λi​+n−i,n) とするとき、aia_iai​ から bib_ibi​ への非交差経路の組が半標準ヤングタブローと一対一対応します。上の図は λ=(5,2,1,0)\\lambda=(5,2,1,0)λ=(5,2,1,0) の場合です。\nこのような非交差経路の組の個数は LGV 公式より\ndet⁡[(λj+n−j+n−in−i)] \\det\\left[\\binom{\\lambda_j+n-j+n-i}{n-i}\\right] det[(n−iλj​+n−j+n−i​)]となります。ここで\n(λj+n−j+n−in−i)=(λj+2n−i−j)⋯(λj+n−j+2)(λj+n−j+1)(n−i)! \\binom{\\lambda_j+n-j+n-i}{n-i}=\\frac{(\\lambda_j+2n-i-j)\\cdots (\\lambda_j+n-j+2)(\\lambda_j+n-j+1)}{(n-i)!} (n−iλj​+n−j+n−i​)=(n−i)!(λj​+2n−i−j)⋯(λj​+n−j+2)(λj​+n−j+1)​なので行列式は\n=10!1!⋯(n−1)!det⁡[(λj+2n−i−j)⋯(λj+n−j+1)]=det⁡[(λj+n−j+1)i−1]0!1!⋯(n−1)! \\begin{align*} \u0026amp;=\\frac{1}{0!1!\\cdots (n-1)!}\\det[(\\lambda_j+2n-i-j)\\cdots (\\lambda_j+n-j+1)] \\\\ \u0026amp;=\\frac{\\det[(\\lambda_j+n-j+1)^{i-1}]}{0!1!\\cdots (n-1)!} \\end{align*} ​=0!1!⋯(n−1)!1​det[(λj​+2n−i−j)⋯(λj​+n−j+1)]=0!1!⋯(n−1)!det[(λj​+n−j+1)i−1]​​となります。ここで最後の等式は行基本変形を行うことで得られます。分母・分子ともに Vandermonde 行列式なので、計算すると\ndλ(n)=∏1≤i\u0026lt;j≤nλi−λj+j−ij−i d_{\\lambda}(n)=\\prod_{1\\le i\u0026lt;j\\le n}\\frac{\\lambda_i-\\lambda_j+j-i}{j-i} dλ​(n)=1≤i\u0026lt;j≤n∏​j−iλi​−λj​+j−i​が再び得られます。\n競技プログラミングへの応用 # 競技プログラミングにおいてもこの公式を使うことで解ける問題があります。(出題したのは自分ですが……)\nyukicoder No.2556 Increasing Matrix\nおわりに # 半標準ヤングタブローの個数を求める公式について解説しました。\nこれからも組合せ論の様々な話題をお届けしていく予定なので、応援のほどよろしくお願いします！\n参考文献 # Stanley, Richard P. Enumerative combinatorics. Volume 2. 2nd edition. Cambridge Studies in Advanced Mathematics (2023). Noumi, Masatoshi. Macdonald Polynomials. Springer (2023). ","date":"2024-05-01","externalUrl":null,"permalink":"/natori/202405/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は半標準ヤングタブローの個数を求める公式について解説します。\n","title":"【月刊組合せ論 Natori】半標準ヤングタブローの個数【2024 年 5 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は転倒数が kkk に等しい順列の個数を求めたいと思います。\n転倒数 # 長さ nnn の順列とは (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列のこととします。\n順列 p=(p1,p2,…,pn)p=(p_1,p_2,\\ldots,p_n)p=(p1​,p2​,…,pn​) の転倒数とは、1≤i\u0026lt;j≤n1\\le i\u0026lt;j\\le n1≤i\u0026lt;j≤n かつ pi\u0026gt;pjp_i\u0026gt;p_jpi​\u0026gt;pj​ をみたす組 (i,j)(i,j)(i,j) の個数です。例えば順列 (1,4,2,3)(1,4,2,3)(1,4,2,3) の転倒数は 2 です。\n転倒数が kkk の順列を構築する問題を紹介します。(厳密には順列ではないですが、似たようなものです。)\nhttps://yukicoder.me/problems/no/1619\nこの記事では構築ではなく数え上げを考えていきます。\n表 # 長さ nnn の順列であって転倒数が kkk であるものの個数を b(n,k)b(n,k)b(n,k) とおきます。表は次のようになります。\nn\\k 0 1 2 3 4 5 6 7 8 9 10 1 1 2 1 1 3 1 2 2 1 4 1 3 5 6 5 3 1 5 1 4 9 15 20 22 20 15 9 4 1 この表を見て簡単に気が付くことがあります。\nb(n,k)≠0b(n,k)\\ne 0b(n,k)=0 となる kkk の最大値は n(n−1)2\\frac{n(n-1)}{2}2n(n−1)​ : 転倒数が最大となるのは (n,n−1,…,2,1)(n,n-1,\\ldots,2,1)(n,n−1,…,2,1) のときだからです。 左右対称 : 順列を反転させる行為が全単射になります。 次の節では具体的に値を求める方法を考えていきます。\n動的計画法 # 転倒数が kkk である長さ n+1n+1n+1 の順列の個数 b(n+1,k)b(n+1,k)b(n+1,k) を動的計画法で求めます。(すなわち漸化式を求めます。)\n長さ n+1n+1n+1 の順列は長さ nnn の順列に n+1n+1n+1 を挿入することで得られます。\nn+1n+1n+1 を右端に挿入すると転倒数は増えず、右端から 1 つ隣に挿入すると転倒数は 1 増加し、…、左端に挿入すると転倒数は nnn 増加します。\nこのことから、長さ n+1n+1n+1 で転倒数が kkk である順列は長さ nnn で\n転倒数が kkk の順列 転倒数が k−1k-1k−1 の順列 … 転倒数が k−nk-nk−n の順列 に挿入を行うことで得られます。これより、漸化式は\nb(n+1,k)=b(n,k)+b(n,k−1)+⋯+b(n,k−n) b(n+1,k)=b(n,k)+b(n,k-1)+\\cdots+b(n,k-n) b(n+1,k)=b(n,k)+b(n,k−1)+⋯+b(n,k−n)となります。これで、時間計算量 O(n2k)O(n^2k)O(n2k) の解法が得られました。\nここで kkk を k−1k-1k−1 に置き換えた式\nb(n+1,k−1)=b(n,k−1)+⋯+b(n,k−n)+b(n,k−n−1) b(n+1,k-1)=b(n,k-1)+\\cdots+b(n,k-n)+b(n,k-n-1) b(n+1,k−1)=b(n,k−1)+⋯+b(n,k−n)+b(n,k−n−1)に注目すると\nb(n+1,k)=b(n+1,k−1)+b(n,k)−b(n,k−n−1) b(n+1,k)=b(n+1,k-1)+b(n,k)-b(n,k-n-1) b(n+1,k)=b(n+1,k−1)+b(n,k)−b(n,k−n−1)という漸化式が得られます。これで時間計算量 O(nk)O(nk)O(nk) で求めることができます。\n母関数 # みんな大好き母関数を考えましょう。inv(p)\\mathrm{inv}(p)inv(p) を ppp の転倒数として\nfn(z)=∑k=0n(n−1)/2b(n,k)zk=∑p∈Snzinv(p) f_n(z)=\\sum_{k=0}^{n(n-1)/2} b(n,k)z^k=\\sum_{p\\in S_n}z^{\\mathrm{inv}(p)} fn​(z)=k=0∑n(n−1)/2​b(n,k)zk=p∈Sn​∑​zinv(p)とおきます。漸化式\nb(n+1,k)=b(n,k)+b(n,k−1)+⋯+b(n,k−n) b(n+1,k)=b(n,k)+b(n,k-1)+\\cdots+b(n,k-n) b(n+1,k)=b(n,k)+b(n,k−1)+⋯+b(n,k−n)を用いると\nfn+1(z)=∑k≥0b(n+1,k)zk=∑k≥0(b(n,k)+b(n,k−1)+⋯+b(n,k−n))zk=∑k≥0b(n,k)(zk+zk+1+⋯+zk+n)=(1+z+z2+⋯+zn)∑k≥0b(n,k)zk=(1+z+z2+⋯+zn)fn(z) \\begin{align*} f_{n+1}(z) \u0026amp;= \\sum_{k\\ge 0}b(n+1,k)z^k \\\\ \u0026amp;= \\sum_{k\\ge 0}(b(n,k)+b(n,k-1)+\\cdots+b(n,k-n))z^k \\\\ \u0026amp;= \\sum_{k\\ge 0}b(n,k)(z^k+z^{k+1}+\\cdots+z^{k+n}) \\\\ \u0026amp;= (1+z+z^2+\\cdots+z^n)\\sum_{k\\ge 0}b(n,k)z^k \\\\ \u0026amp;= (1+z+z^2+\\cdots+z^n)f_n(z) \\end{align*} fn+1​(z)​=k≥0∑​b(n+1,k)zk=k≥0∑​(b(n,k)+b(n,k−1)+⋯+b(n,k−n))zk=k≥0∑​b(n,k)(zk+zk+1+⋯+zk+n)=(1+z+z2+⋯+zn)k≥0∑​b(n,k)zk=(1+z+z2+⋯+zn)fn​(z)​となるので、これより\nfn(z)=(1+z)(1+z+z2)⋯(1+z+z2+⋯+zn−1) f_n(z)=(1+z)(1+z+z^2)\\cdots (1+z+z^2+\\cdots+z^{n-1}) fn​(z)=(1+z)(1+z+z2)⋯(1+z+z2+⋯+zn−1)となります。これは nnn の階乗の qqq 類似となっています (ここでは qqq ではなく zzz を用いていますが)。\nこの等式を組合せ論的に解釈してみましょう。1,2,…,n1,2,\\ldots,n1,2,…,n の順に挿入していくことで順列を作ります。まず 111 を置きます。222 を挿入するとき、111 の右にするか左にするかによって、転倒数が 0 または 1 増えます。これが (1+z)(1+z)(1+z) に対応します。333 を挿入するとき、どの位置に挿入するかによって転倒数が 0,1,20,1,20,1,2 のいずれかの値だけ増えます。これが (1+z+z2)(1+z+z^2)(1+z+z2) に対応します。このようにして上の等式を得ることもできます。\nオイラーの五角数定理 # 【月刊組合せ論 Natori】ヤコビの三重積公式とオイラーの五角数定理【2023 年 2 月号】で紹介したオイラーの五角数定理は次の等式です。\n(1−z)(1−z2)(1−z3)⋯=∑j∈Z(−1)jz(3j2+j)/2 (1-z)(1-z^2)(1-z^3)\\cdots =\\sum_{j\\in\\mathbb{Z}}(-1)^jz^{(3j^2+j)/2} (1−z)(1−z2)(1−z3)⋯=j∈Z∑​(−1)jz(3j2+j)/2この式を g(z)g(z)g(z) とおきます。\n転倒数と五角数 # b(n,k)b(n,k)b(n,k) の母関数は\nfn(z)=(1+z)(1+z+z2)⋯(1+z+z2+⋯+zn−1)=∏j=1n1−zj1−z \\begin{align*} f_n(z) \u0026amp;= (1+z)(1+z+z^2)\\cdots (1+z+z^2+\\cdots+z^{n-1}) \\\\ \u0026amp;= \\prod_{j=1}^n \\frac{1-z^j}{1-z} \\end{align*} fn​(z)​=(1+z)(1+z+z2)⋯(1+z+z2+⋯+zn−1)=j=1∏n​1−z1−zj​​でした。gn(z)=∏j=1n(1−zj),hn(z)=(1−z)−ng_n(z)=\\prod_{j=1}^n(1-z^j), h_n(z)=(1-z)^{-n}gn​(z)=∏j=1n​(1−zj),hn​(z)=(1−z)−n とおくと、fn(z)=gn(z)hn(z)f_n(z)=g_n(z)h_n(z)fn​(z)=gn​(z)hn​(z) です。fn(z)f_n(z)fn​(z) における zkz^kzk の係数 b(n,k)b(n,k)b(n,k) を求めたいです。\nn≥kn\\ge kn≥k を仮定すると、gn(z)g_n(z)gn​(z) を g(z)g(z)g(z) に置き換えてもよいです。すなわち g(z)hn(z)g(z)h_n(z)g(z)hn​(z) における zkz^kzk の係数も b(n,k)b(n,k)b(n,k) です。g(z)g(z)g(z) は上述の通りです。hn(z)h_n(z)hn​(z) は負の二項定理より\nhn(z)=(1−z)−n=∑k≥0(n+k−1k)zk h_n(z)=(1-z)^{-n}=\\sum_{k\\ge 0}\\binom{n+k-1}{k}z^k hn​(z)=(1−z)−n=k≥0∑​(kn+k−1​)zkと表せます。これらを合わせると、b(n,k)b(n,k)b(n,k) は次のように表せることがわかります。\n定理: n≥kn\\ge kn≥k とする。転倒数が kkk である長さ nnn の順列の個数は\nb(n,k)=∑j(−1)j(n+k−dj−1k−dj) b(n,k)=\\sum_j(-1)^j\\binom{n+k-d_j-1}{k-d_j} b(n,k)=j∑​(−1)j(k−dj​n+k−dj​−1​)に等しい。ここで jjj は五角数 dj=(3j2+j)/2d_j=(3j^2+j)/2dj​=(3j2+j)/2 が kkk 以下となる範囲を動く。\nなお競技プログラミングにおいては、(1−z)(1−z2)⋯(1−zn)(1-z)(1-z^2)\\cdots (1-z^n)(1−z)(1−z2)⋯(1−zn) を形式的べき級数の exp, log を用いて計算することで b(n,k)b(n,k)b(n,k) を求めることができるそうです。この方法は n≥kn\\ge kn≥k でない場合も使えます。\nおわりに # 順列の世界は奥深いですね。\n長らくおやすみをいただいていた月刊組合せ論 Natori ですが、ようやく復活することができました。更新は不定期になるかもしれませんが、今後も応援のほどよろしくお願いします。\n参考文献 # Bóna, Miklós. Combinatorics of permutations. 3rd ed. ","date":"2024-02-01","externalUrl":null,"permalink":"/natori/202402/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は転倒数が kkk に等しい順列の個数を求めたいと思います。\n","title":"【月刊組合せ論 Natori】転倒数が k である順列の個数【2024 年 2 月号】","type":"natori"},{"content":"この記事は表現論 Advent Calendar 2023 の 25 日目の記事です。\nまずは通常のシンプレクティック群の紹介から始めて、奇数次元のシンプレクティック群を紹介します。\nシンプレクティック群 # Jn=(01−1001−10⋱01−10) J_n=\\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; \u0026amp; \u0026amp; \u0026amp; \u0026amp; \\\\ -1 \u0026amp; 0 \u0026amp; \u0026amp; \u0026amp; \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; 0 \u0026amp; 1 \u0026amp; \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; -1 \u0026amp; 0 \u0026amp; \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; \u0026amp; \u0026amp; \\ddots \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; \u0026amp; \u0026amp; \u0026amp; 0 \u0026amp; 1 \\\\ \u0026amp; \u0026amp; \u0026amp; \u0026amp; \u0026amp; -1 \u0026amp; 0 \\end{pmatrix} Jn​=​0−1​10​0−1​10​⋱​0−1​10​​とおきます。これは 2n2n2n 次の正方行列です。空白の部分はすべて 0 です。\nSp2n(C)={g∈SL2n(C)∣tgJng=Jn} Sp_{2n}(\\mathbb{C})=\\{g\\in SL_{2n}(\\mathbb{C})\\mid {}^tgJ_ng=J_n\\} Sp2n​(C)={g∈SL2n​(C)∣tgJn​g=Jn​}を複素シンプレクティック群といいます。これは複素リー群となります。対応するリー環は\nsp2n(C)={X∈sl2n(C)∣tXJn+JnX=O} \\mathfrak{sp} _ {2n}(\\mathbb{C})=\\{X\\in\\mathfrak{sl}_{2n}(\\mathbb{C})\\mid {}^tXJ_n+J_nX=O\\} sp2n​(C)={X∈sl2n​(C)∣tXJn​+Jn​X=O}です。\nなお、JnJ_nJn​ の定義が微妙に異なる文献もあります。\n奇数次元シンプレクティック群 # シンプレクティック群といえば通常は偶数次元ですが、奇数次元のシンプレクティック群を Proctor が導入しました。それは次のようなものです。\nSp2n+1(C)=(0Sp2n(C)⋮0∗⋯∗z) Sp_{2n+1}(\\mathbb{C})=\\begin{pmatrix} \u0026amp; \u0026amp; \u0026amp; 0 \\\\ \u0026amp; Sp_{2n}(\\mathbb{C}) \u0026amp; \u0026amp; \\vdots \\\\ \u0026amp; \u0026amp; \u0026amp; 0 \\\\ * \u0026amp; \\cdots \u0026amp; * \u0026amp; z \\end{pmatrix} Sp2n+1​(C)=​∗​Sp2n​(C)⋯​∗​0⋮0z​​ここで zzz は 0 でない複素数です。より一般に\nSp2n,m(C)=(Sp2n(C)O∗GLm(C)) Sp_{2n,m}(\\mathbb{C})=\\begin{pmatrix} Sp_{2n}(\\mathbb{C}) \u0026amp; O \\\\ * \u0026amp; GL_m(\\mathbb{C}) \\end{pmatrix} Sp2n,m​(C)=(Sp2n​(C)∗​OGLm​(C)​)を intermediate シンプレクティック群といいます。\n奇数次元のシンプレクティック群は単純群でない（簡約群でもない）ため、偶数次元のシンプレクティック群ほどはいい性質をもたない群です。\n指標 # GLn(C)GL_n(\\mathbb{C})GLn​(C) の場合を振り返ってみましょう。TTT を正則な対角行列全体からなる GLn(C)GL_n(\\mathbb{C})GLn​(C) の部分群とします。GLn(C)GL_n(\\mathbb{C})GLn​(C) の有限次元表現 (W,ρ)(W,\\rho)(W,ρ) に対して、(ch⁡W)(z1,…,zn)=tr⁡Wρ(diag(z1,…,zn))(\\operatorname{ch}W)(z_1,\\ldots,z_n)=\\operatorname{tr} _ W\\rho(\\mathrm{diag}(z_1,\\ldots,z_n))(chW)(z1​,…,zn​)=trW​ρ(diag(z1​,…,zn​)) によって定まる ch⁡W\\operatorname{ch}WchW を指標といいます。シューア多項式 sλs_{\\lambda}sλ​ はある GLn(C)GL_n(\\mathbb{C})GLn​(C) の既約表現の指標と一致することが知られています。\nSp2n(C)Sp_{2n}(\\mathbb{C})Sp2n​(C) の場合、正則な対角行列は diag(z1,z1−1,…,zn,zn−1)\\mathrm{diag}(z_1,z_1^{-1},\\ldots,z_n,z_n^{-1})diag(z1​,z1−1​,…,zn​,zn−1​) の形です。Sp2n,m(C)Sp_{2n,m}(\\mathbb{C})Sp2n,m​(C) の場合は diag(z1,z1−1,…,zn,zn−1,zn+1,…,zn+m)\\mathrm{diag}(z_1,z_1^{-1},\\ldots,z_n,z_n^{-1},z_{n+1},\\ldots,z_{n+m})diag(z1​,z1−1​,…,zn​,zn−1​,zn+1​,…,zn+m​) となります。\nシンプレクティックシューア関数 # シューア関数は\n行列式の比 半標準ヤングタブローに関する和 として定義することもできます。シンプレクティックシューア関数や intermediate シンプレクティックシューア関数も同様です。タブローの方を解説します。\nタブローに書き込む文字とその大小関係を 1\u0026lt;1ˉ\u0026lt;⋯\u0026lt;n\u0026lt;nˉ\u0026lt;n+1\u0026lt;n+2\u0026lt;⋯\u0026lt;n+m1\u0026lt;\\bar{1}\u0026lt;\\cdots\u0026lt;n\u0026lt;\\bar{n}\u0026lt;n+1\u0026lt;n+2\u0026lt;\\cdots\u0026lt;n+m1\u0026lt;1ˉ\u0026lt;⋯\u0026lt;n\u0026lt;nˉ\u0026lt;n+1\u0026lt;n+2\u0026lt;⋯\u0026lt;n+m とします。λ\\lambdaλ のヤング図形にこれらの文字を書き込む方法であって\n各行について広義単調増加 各列について狭義単調増加 iii 行目の成分は iii 以上 をみたすものの集合を SpTab(n,m)(λ)\\mathrm{SpTab}^{(n,m)}(\\lambda)SpTab(n,m)(λ) とします。タブロー TTT に書き込まれた iii の個数を mT(i)m_T(i)mT​(i) とするとき\nspλ(n,m)(z1,z1−1,…,zn,zn−1,zn+1,…,zn+m)=∑T∈SpTab(n,m)(λ)∏i=1n+mzimT(i)−mT(iˉ) sp_{\\lambda}^{(n,m)}(z_1,z_1^{-1},\\ldots,z_n,z_n^{-1},z_{n+1},\\ldots,z_{n+m})=\\sum_{T\\in \\mathrm{SpTab}^{(n,m)}(\\lambda)}\\prod_{i=1}^{n+m} z_i^{m_T(i)-m_T(\\bar{i})} spλ(n,m)​(z1​,z1−1​,…,zn​,zn−1​,zn+1​,…,zn+m​)=T∈SpTab(n,m)(λ)∑​i=1∏n+m​zimT​(i)−mT​(iˉ)​によって intermediate シンプレクティックシューア関数を定義します。ただし n+1≤i≤n+mn+1\\le i\\le n+mn+1≤i≤n+m のときは mT(iˉ)=0m_T(\\bar{i})=0mT​(iˉ)=0 です。\nn=0n=0n=0 のときシューア関数、m=0m=0m=0 のときシンプレクティックシューア関数となります。\n応用 # これが何の役に立つのかと思うかもしれませんが、数え上げ問題に役立つようです。\nおわりに # 駆け足になってしまいましたが、奇数次元のシンプレクティック群について紹介しました。\n数え上げと関係があるのは面白いと思いました。表現論と組合せ論の関係をもっと知りたいです。\n参考文献 # 小林俊行・大島利雄, リー群と表現論, 岩波書店, 2005. Maliakas, Mihalis. On odd symplectic Schur functions. J. Algebra 211, No. 2, 640-646 (1999). Okada, Soichi. Intermediate symplectic characters and shifted plane partitions of shifted double staircase shape. Combinatorial Theory 1, Paper No. 10, 42 p. (2021). Proctor, Robert A. Odd symplectic groups. Invent. Math. 92, No. 2, 307-332 (1988). ","date":"2023-12-25","externalUrl":null,"permalink":"/posts/odd-symplectic/","section":"数学記事・PDF","summary":"この記事は表現論 Advent Calendar 2023 の 25 日目の記事です。\n","title":"奇数次元のシンプレクティック群とは何か","type":"posts"},{"content":"この記事は Math Advent Calendar 2023 の 19 日目の記事です。\n線形代数を学んだばかりの学部 1 年生でも読めるように、線形代数の復習を入れつつ対称多項式を学んでいきます。\n対称多項式 # RRR を可換環とします。環に馴染みがない人は RRR は整数全体の集合 Z\\mathbb{Z}Z あるいは有理数全体の集合 Q\\mathbb{Q}Q、または実数全体の集合 R\\mathbb{R}R と思ってよいです。\nx1,…,xnx_1,\\ldots,x_nx1​,…,xn​ を変数とする RRR 係数多項式全体の集合を R[x1,…,xn]R[x_1,\\ldots,x_n]R[x1​,…,xn​] とします。\n多項式 f∈R[x1,…,xn]f\\in R[x_1,\\ldots,x_n]f∈R[x1​,…,xn​] が対称多項式であるとは、任意の i,j (1≤i\u0026lt;j≤n)i,j \\ (1\\le i\u0026lt;j\\le n)i,j (1≤i\u0026lt;j≤n) に対して fff の xix_ixi​ と xjx_jxj​ を入れ替えたものが元の fff と等しくなることをいいます。このような対称多項式全体からなる集合を ΛnR\\Lambda_n^RΛnR​ とおきます。RRR を省略して Λn\\Lambda_nΛn​ と書くこともあります。\n線形代数講義：線形空間 # この集合 ΛnR\\Lambda_n^RΛnR​ のもつ構造を考えます。\nf,gf,gf,g が対称多項式ならば、f+gf+gf+g も対称多項式です。また、c∈Rc\\in Rc∈R に対して cfcfcf も対称多項式です。このように、ΛnR\\Lambda_n^RΛnR​ には和とスカラー倍という構造があります。このような構造を持つ集合を線形空間といいます。\n注意：厳密には RRR が体のときに線形空間といいます。RRR が体とは限らない環のときは RRR 加群と呼ばれることが多いです。 厳密には線形空間は次のように定義されます。FFF を体とします (Q,R\\mathbb{Q},\\mathbb{R}Q,R など)。集合 VVV が FFF 線形空間であるとは次をみたすことをいいます。まず VVV には v,w∈Vv,w\\in Vv,w∈V に対して v+wv+wv+w という VVV の元を対応させる演算（和）が定まっており、次をみたします。\n任意の u,v,w∈Vu,v,w\\in Vu,v,w∈V に対して (u+v)+w=u+(v+w)(u+v)+w=u+(v+w)(u+v)+w=u+(v+w) ある 0∈V0\\in V0∈V について、任意の v∈Vv\\in Vv∈V に対して v+0=vv+0=vv+0=v v∈Vv\\in Vv∈V に対して −v∈V-v\\in V−v∈V であって v+(−v)=0v+(-v)=0v+(−v)=0 をみたすものが存在 任意の v,w∈Vv,w\\in Vv,w∈V に対して v+w=w+vv+w=w+vv+w=w+v さらに、VVV には v∈V,c∈Fv\\in V, c\\in Fv∈V,c∈F に対して cvcvcv という VVV の元を対応させる演算（スカラー倍）が定まっており、次をみたします。\n任意の c,d∈F,v∈Vc,d\\in F, v\\in Vc,d∈F,v∈V に対して c(dv)=(cd)vc(dv)=(cd)vc(dv)=(cd)v 任意の v∈Vv\\in Vv∈V に対して 1v=v1v=v1v=v 任意の c,d∈F,v∈Vc,d\\in F, v\\in Vc,d∈F,v∈V に対して (c+d)v=cv+dv(c+d)v=cv+dv(c+d)v=cv+dv 任意の c∈F,v,w∈Vc\\in F, v,w\\in Vc∈F,v,w∈V に対して c(v+w)=cv+cwc(v+w)=cv+cwc(v+w)=cv+cw これらをすべてみたすとき VVV は FFF 線形空間であるといいます。\n例えば ΛnQ\\Lambda^{\\mathbb{Q}}_nΛnQ​ は Q\\mathbb{Q}Q 線形空間です。\nΛn\\Lambda_nΛn​ は f,gf,gf,g が対称多項式ならば積 fgfgfg も対称多項式であるという性質も持ちます。これは線形空間よりも強い構造で、代数と呼ばれるものです。線形空間として考えるときには積は考えません。\n単項・基本・完全・べき和対称多項式 # 例えばある対称多項式に x13x2x3x_1^3x_2x_3x13​x2​x3​ という項が現れるとき、x1x23x3x_1x_2^3x_3x1​x23​x3​ や x1x2x33x_1x_2x_3^3x1​x2​x33​ も現れなければなりません。このような項をすべて集めて得られる対称多項式が単項対称多項式です。\nλ=(λ1,…,λn)\\lambda=(\\lambda_1,\\ldots,\\lambda_n)λ=(λ1​,…,λn​) を非負整数からなる広義単調減少列とします (これを分割といいます)。単項対称多項式 mλ(x1,…,xn)m_{\\lambda}(x_1,\\ldots,x_n)mλ​(x1​,…,xn​) は x1λ1⋯xnλnx_1^{\\lambda_1}\\cdots x_n^{\\lambda_n}x1λ1​​⋯xnλn​​ および文字の入れ替えで得られる相異なる項の和として定義されます。例えば、m(3,1,1)(x1,x2,x3)=x13x2x3+x1x23x3+x1x2x33m_{(3,1,1)}(x_1,x_2,x_3)=x_1^3x_2x_3+x_1x_2^3x_3+x_1x_2x_3^3m(3,1,1)​(x1​,x2​,x3​)=x13​x2​x3​+x1​x23​x3​+x1​x2​x33​ です。\n次に ek(x1,…,xn)=m(1,…,1⏟k)(x1,…,xn)e_k(x_1,\\ldots,x_n)=m_{(\\underbrace{1,\\ldots,1}_k)}(x_1,\\ldots,x_n)ek​(x1​,…,xn​)=m(k1,…,1​​)​(x1​,…,xn​) とします。別の書き方をすると\nek(x1,…,xn)=∑1≤i1\u0026lt;⋯\u0026lt;ik≤nxi1⋯xik e_k(x_1,\\ldots,x_n)=\\sum_{1\\le i_1\u0026lt;\\cdots\u0026lt;i_k\\le n}x_{i_1}\\cdots x_{i_k} ek​(x1​,…,xn​)=1≤i1​\u0026lt;⋯\u0026lt;ik​≤n∑​xi1​​⋯xik​​となります。また\nhk(x1,…,xn)=∑1≤i1≤⋯≤ik≤nxi1⋯xik h_k(x_1,\\ldots,x_n)=\\sum_{1\\le i_1\\le\\cdots\\le i_k\\le n}x_{i_1}\\cdots x_{i_k} hk​(x1​,…,xn​)=1≤i1​≤⋯≤ik​≤n∑​xi1​​⋯xik​​とおきます (不等号の違いに注意)。さらに\npk(x1,…,xn)=∑i=1nxik p_k(x_1,\\ldots,x_n)=\\sum_{i=1}^nx_i^k pk​(x1​,…,xn​)=i=1∑n​xik​とおきます。最後に\neλ(x1,…,xn)=eλ1(x1,…,xn)⋯eλn(x1,…,xn)hλ(x1,…,xn)=hλ1(x1,…,xn)⋯hλn(x1,…,xn)pλ(x1,…,xn)=pλ1(x1,…,xn)⋯pλn(x1,…,xn) \\begin{align*} e_{\\lambda}(x_1,\\ldots,x_n) \u0026amp;= e_{\\lambda_1}(x_1,\\ldots,x_n)\\cdots e_{\\lambda_n}(x_1,\\ldots,x_n) \\\\ h_{\\lambda}(x_1,\\ldots,x_n) \u0026amp;= h_{\\lambda_1}(x_1,\\ldots,x_n)\\cdots h_{\\lambda_n}(x_1,\\ldots,x_n) \\\\ p_{\\lambda}(x_1,\\ldots,x_n) \u0026amp;= p_{\\lambda_1}(x_1,\\ldots,x_n)\\cdots p_{\\lambda_n}(x_1,\\ldots,x_n) \\end{align*} eλ​(x1​,…,xn​)hλ​(x1​,…,xn​)pλ​(x1​,…,xn​)​=eλ1​​(x1​,…,xn​)⋯eλn​​(x1​,…,xn​)=hλ1​​(x1​,…,xn​)⋯hλn​​(x1​,…,xn​)=pλ1​​(x1​,…,xn​)⋯pλn​​(x1​,…,xn​)​とおきます。これらはすべて対称多項式です。eλe_{\\lambda}eλ​ を基本対称多項式、hλh_{\\lambda}hλ​ を完全対称多項式、pλp_{\\lambda}pλ​ をべき和対称多項式といいます。\n線形代数講義：基底 # VVV を FFF 線形空間とします。VVV の元からなる有限集合 X={v1,…,vn}X=\\{v_1,\\ldots,v_n\\}X={v1​,…,vn​} を考えます。c1,…,cn∈Fc_1,\\ldots,c_n\\in Fc1​,…,cn​∈F に対して c1v1+⋯+cnvn=0c_1v_1+\\cdots+c_nv_n=0c1​v1​+⋯+cn​vn​=0 ならば c1=⋯=cn=0c_1=\\cdots=c_n=0c1​=⋯=cn​=0 が成り立つとき、XXX は線形独立であるといいます。一方、任意の v∈Vv\\in Vv∈V に対してある c1,…,cn∈Fc_1,\\ldots,c_n\\in Fc1​,…,cn​∈F を用いて v=c1v1+⋯+cnvnv=c_1v_1+\\cdots+c_nv_nv=c1​v1​+⋯+cn​vn​ と表せるとき、XXX は VVV の生成系であるといいます。線形独立かつ生成系であるとき、基底といいます。\n基底に含まれる元の個数は一定です。この値を VVV の次元と呼びます。VVV が有限個の元からなる基底をもつとき有限次元であるといいます。\nΛn\\Lambda_nΛn​ は有限次元線形空間ではありません。無限次元線形空間においても基底を定義しましょう。\n線形空間 VVV の元からなる集合 BBB が VVV の基底であるとは\nBBB から有限個の元を選んだとき、それらは線形独立。 任意の v∈Vv\\in Vv∈V は、BBB から有限個の元 b1,…,bnb_1,\\ldots,b_nb1​,…,bn​ を選び、c1,…,cn∈Fc_1,\\ldots,c_n\\in Fc1​,…,cn​∈F を選ぶことで v=c1b1+⋯+cnbnv=c_1b_1+\\cdots+c_nb_nv=c1​b1​+⋯+cn​bn​ と表すことができる。 をみたすことをいいます。例えば一変数多項式全体の集合 R[x]\\mathbb{R}[x]R[x] において、{1,x,x2,x3,…}\\{1,x,x^2,x^3,\\ldots\\}{1,x,x2,x3,…} は基底です。\nΛn\\Lambda_nΛn​ の基底 # λ\\lambdaλ が長さ nnn 以下の分割全体をわたるとき、mλ(x1,…,xn)m_{\\lambda}(x_1,\\ldots,x_n)mλ​(x1​,…,xn​) は ΛnQ\\Lambda_n^{\\mathbb{Q}}ΛnQ​ の基底をなすことがわかります。\nこれより、eλe_{\\lambda}eλ​ を mμm_{\\mu}mμ​ の線形結合として表すことができます。係数を MλμM_{\\lambda\\mu}Mλμ​ とおきます。すなわち\neλ=∑μMλμmμ e_{\\lambda}=\\sum_{\\mu}M_{\\lambda\\mu}m_{\\mu} eλ​=μ∑​Mλμ​mμ​です。この係数について考えます。そのために分割 λ\\lambdaλ をヤング図形を用いて表してみます。iii 行目に λi\\lambda_iλi​ 個の正方形を並べて得られる図形を λ\\lambdaλ のヤング図形といいます。行と列の役割を入れ替えて得られる図形を共役といい、λ′\\lambda^{\\prime}λ′ で表します。\n上の例では、左側は (4,2,1)(4,2,1)(4,2,1) のヤング図形、右側は (3,2,1,1)(3,2,1,1)(3,2,1,1) のヤング図形となっており、互いに共役の関係になっています。\nさて、係数 MλμM_{\\lambda\\mu}Mλμ​ は次の性質をみたします。\nμ\u0026gt;lexλ′\\mu\\gt_{\\mathrm{lex}}\\lambda^{\\prime}μ\u0026gt;lex​λ′ ならば Mλμ=0M_{\\lambda\\mu}=0Mλμ​=0. ここで \u0026gt;lex\\gt_{\\mathrm{lex}}\u0026gt;lex​ は辞書式順序。 Mλλ′=1M_{\\lambda\\lambda^{\\prime}}=1Mλλ′​=1 証明します。eλie_{\\lambda_i}eλi​​ に含まれる単項式のうち辞書式順序で最も大きいものは x1x2⋯xλix_1x_2\\cdots x_{\\lambda_i}x1​x2​⋯xλi​​ です。よって eλ=eλ1⋯eλle_{\\lambda}=e_{\\lambda_1}\\cdots e_{\\lambda_l}eλ​=eλ1​​⋯eλl​​ を展開するとき、辞書式順序で最も大きいものは x1λ1′x2λ2′⋯xnλn′x_1^{\\lambda^{\\prime}_1}x_2^{\\lambda^{\\prime}_2}\\cdots x_n^{\\lambda^{\\prime}_n}x1λ1′​​x2λ2′​​⋯xnλn′​​ となります。また、この項の係数は 1 です。\n(証明終わり)\nこの結果から、例えば\ne(4)=m(1,1,1,1)e_{(4)}=m_{(1,1,1,1)}e(4)​=m(1,1,1,1)​ e(3,1)=m(2,1,1)+(m(1,1,1,1)の線形結合)e_{(3,1)}=m_{(2,1,1)}+(m_{(1,1,1,1)}\\text{の線形結合})e(3,1)​=m(2,1,1)​+(m(1,1,1,1)​の線形結合) e(2,2)=m(2,2)+(m(1,1,1,1),m(2,1,1)の線形結合)e_{(2,2)}=m_{(2,2)}+(m_{(1,1,1,1)},m_{(2,1,1)}\\text{の線形結合})e(2,2)​=m(2,2)​+(m(1,1,1,1)​,m(2,1,1)​の線形結合) e(2,1,1)=m(3,1)+(m(1,1,1,1),m(2,1,1),m(2,2)の線形結合)e_{(2,1,1)}=m_{(3,1)}+(m_{(1,1,1,1)},m_{(2,1,1)},m_{(2,2)}\\text{の線形結合})e(2,1,1)​=m(3,1)​+(m(1,1,1,1)​,m(2,1,1)​,m(2,2)​の線形結合) e(1,1,1,1)=m(4)+(m(1,1,1,1),m(2,1,1),m(2,2),m(3,1)の線形結合)e_{(1,1,1,1)}=m_{(4)}+(m_{(1,1,1,1)},m_{(2,1,1)},m_{(2,2)},m_{(3,1)}\\text{の線形結合})e(1,1,1,1)​=m(4)​+(m(1,1,1,1)​,m(2,1,1)​,m(2,2)​,m(3,1)​の線形結合) のように表せます。このような性質を三角性といいます。この性質から\nm(1,1,1,1)=e(4)m_{(1,1,1,1)}=e_{(4)}m(1,1,1,1)​=e(4)​ m(2,1,1)=e(3,1)+(e(4)の線形結合)m_{(2,1,1)}=e_{(3,1)}+(e_{(4)}\\text{の線形結合})m(2,1,1)​=e(3,1)​+(e(4)​の線形結合) m(2,2)=e(2,2)+(e(4),e(3,1)の線形結合)m_{(2,2)}=e_{(2,2)}+(e_{(4)},e_{(3,1)}\\text{の線形結合})m(2,2)​=e(2,2)​+(e(4)​,e(3,1)​の線形結合) m(3,1)=e(2,1,1)+(e(4),e(3,1),e(2,2)の線形結合)m_{(3,1)}=e_{(2,1,1)}+(e_{(4)},e_{(3,1)},e_{(2,2)}\\text{の線形結合})m(3,1)​=e(2,1,1)​+(e(4)​,e(3,1)​,e(2,2)​の線形結合) m(4)=e(1,1,1,1)+(e(4),e(3,1),e(2,2),e(2,1,1)の線形結合)m_{(4)}=e_{(1,1,1,1)}+(e_{(4)},e_{(3,1)},e_{(2,2)},e_{(2,1,1)}\\text{の線形結合})m(4)​=e(1,1,1,1)​+(e(4)​,e(3,1)​,e(2,2)​,e(2,1,1)​の線形結合) と表すことができます。(mλ)(m_{\\lambda})(mλ​) は Λn\\Lambda_nΛn​ の基底なので、(eλ)(e_{\\lambda})(eλ​) は Λn\\Lambda_nΛn​ の生成系であることがわかります。(mλ)(m_{\\lambda})(mλ​) と (eλ)(e_{\\lambda})(eλ​) は元の個数が等しいので、(eλ)(e_{\\lambda})(eλ​) が基底であることもいえます。\n証明は省略しますが、(hλ)(h_{\\lambda})(hλ​) と (pλ)(p_{\\lambda})(pλ​) も Λn\\Lambda_nΛn​ の基底です。\n線形代数講義：内積 # 高校数学では 2 つのベクトルが直交するかどうかを扱いました。ここで重要になるのが内積です。\n内積をもつ線形空間を考えます。これを計量線形空間といいます。F=RF=\\mathbb{R}F=R とします。\nR\\mathbb{R}R 線形空間 VVV 上の内積とは u,v∈Vu,v\\in Vu,v∈V に対して ⟨u,v⟩∈R\\langle u,v\\rangle\\in \\mathbb{R}⟨u,v⟩∈R を対応させる写像であって次をみたすものです。\n任意の u,v,w∈V,c,d∈Ru,v,w\\in V, c,d\\in\\mathbb{R}u,v,w∈V,c,d∈R に対して ⟨cu+dv,w⟩=c⟨u,w⟩+d⟨v,w⟩\\langle cu+dv,w\\rangle =c\\langle u,w\\rangle +d\\langle v,w\\rangle⟨cu+dv,w⟩=c⟨u,w⟩+d⟨v,w⟩ 任意の v∈Vv\\in Vv∈V に対して ⟨v,v⟩≥0\\langle v,v\\rangle \\ge 0⟨v,v⟩≥0 であり、⟨v,v⟩=0\\langle v,v\\rangle =0⟨v,v⟩=0 と v=0v=0v=0 が同値。 任意の u,v∈Vu,v\\in Vu,v∈V に対して ⟨u,v⟩=⟨v,u⟩\\langle u,v\\rangle=\\langle v,u\\rangle⟨u,v⟩=⟨v,u⟩ ⟨u,v⟩=0\\langle u,v\\rangle=0⟨u,v⟩=0 をみたすとき、u,vu,vu,v は直交するといいます。\nVVV の基底 {v1,…,vn}\\{v_1,\\ldots,v_n\\}{v1​,…,vn​} に対して ⟨vi,vj⟩=δij\\langle v_i,v_j\\rangle=\\delta_{ij}⟨vi​,vj​⟩=δij​ をみたすとき、この基底は正規直交基底であるといいます。ここで\nδij={1(i=j)0(i≠j) \\delta_{ij}=\\begin{cases} 1 \u0026amp; (i=j) \\\\ 0 \u0026amp; (i\\ne j) \\end{cases} δij​={10​(i=j)(i=j)​はクロネッカーのデルタです。\nΛn\\Lambda_nΛn​ の内積 # (hλ),(mλ)(h_{\\lambda}), (m_{\\lambda})(hλ​),(mλ​) は Λn\\Lambda_nΛn​ の基底なので、次のように内積を定めることができます。\n⟨hλ,mμ⟩=δλμ \\langle h_{\\lambda},m_{\\mu}\\rangle=\\delta_{\\lambda\\mu} ⟨hλ​,mμ​⟩=δλμ​一般の u,v∈Λnu,v\\in \\Lambda_nu,v∈Λn​ に対する ⟨u,v⟩\\langle u,v\\rangle⟨u,v⟩ は、uuu を hλh_{\\lambda}hλ​ の線形結合、vvv を mμm_{\\mu}mμ​ の線形結合で表し、内積の線形性を用いることで求められます。\n線形代数講義：行列式 # 線形代数の主役ともいえる行列がまだ出てきていませんでした。\nnnn 次正方行列とは、nnn 行 nnn 列の形に数を配置したものです。例えば\n(1234) \\begin{pmatrix} 1 \u0026amp; 2 \\\\ 3 \u0026amp; 4 \\end{pmatrix} (13​24​)は 2 次正方行列です。長方形の形に並べることもありますが、この記事で扱うのは正方形のみです。\nA=(aij)A=(a_{ij})A=(aij​) と書いたとき、aija_{ij}aij​ は行列 AAA の上から iii 行目、左から jjj 列目に書かれた数を表します。上の例では a12=2a_{12}=2a12​=2 です。\nSnS_nSn​ を {1,2,…,n}\\{1,2,\\ldots,n\\}{1,2,…,n} から {1,2,…,n}\\{1,2,\\ldots,n\\}{1,2,…,n} への全単射全体からなる集合とします。\nnnn 次正方行列 A=(aij)A=(a_{ij})A=(aij​) の行列式を\ndet⁡(A)=∑σ∈Snsgn(σ)a1σ(1)a2σ(2)⋯anσ(n) \\det(A)=\\sum_{\\sigma\\in S_n}\\mathrm{sgn}(\\sigma)a_{1\\sigma(1)}a_{2\\sigma(2)}\\cdots a_{n\\sigma(n)} det(A)=σ∈Sn​∑​sgn(σ)a1σ(1)​a2σ(2)​⋯anσ(n)​により定義します。ここで sgn(σ)\\mathrm{sgn}(\\sigma)sgn(σ) は σ\\sigmaσ の符号であり、偶置換ならば +1+1+1、奇置換ならば −1-1−1 となります。(解説は省略させていただきます)\n行列式は次の性質をみたします。ここで各 ai\\mathbf{a}_iai​ は長さ nnn の行ベクトルです。\ndet⁡(a1⋮kb+lc⋮an)=kdet⁡(a1⋮b⋮an)+ldet⁡(a1⋮c⋮an) \\det\\begin{pmatrix} \\mathbf{a}_1 \\\\ \\vdots \\\\ k\\mathbf{b}+l\\mathbf{c} \\\\ \\vdots \\\\ \\mathbf{a}_n \\end{pmatrix} =k\\det\\begin{pmatrix} \\mathbf{a}_1 \\\\ \\vdots \\\\ \\mathbf{b} \\\\ \\vdots \\\\ \\mathbf{a}_n \\end{pmatrix} +l\\det\\begin{pmatrix} \\mathbf{a}_1 \\\\ \\vdots \\\\ \\mathbf{c} \\\\ \\vdots \\\\ \\mathbf{a}_n \\end{pmatrix} det​a1​⋮kb+lc⋮an​​​=kdet​a1​⋮b⋮an​​​+ldet​a1​⋮c⋮an​​​det⁡(a1⋮aj⋮ai⋮an)=−det⁡(a1⋮ai⋮aj⋮an) \\det\\begin{pmatrix} \\mathbf{a}_1 \\\\ \\vdots \\\\ \\mathbf{a}_j \\\\ \\vdots \\\\ \\mathbf{a}_i \\\\ \\vdots \\\\ \\mathbf{a}_n \\end{pmatrix}=-\\det\\begin{pmatrix}\\mathbf{a}_1 \\\\ \\vdots \\\\ \\mathbf{a}_i \\\\ \\vdots \\\\ \\mathbf{a}_j \\\\ \\vdots \\\\ \\mathbf{a}_n\\end{pmatrix} det​a1​⋮aj​⋮ai​⋮an​​​=−det​a1​⋮ai​⋮aj​⋮an​​​1 つ目の性質を多重線形性、2 つ目の性質を交代性といいます。\nシューア多項式 # 非負整数列 α=(α1,…,αn)\\alpha=(\\alpha_1,\\ldots,\\alpha_n)α=(α1​,…,αn​) に対して Aα(x1,…,xn)=det⁡(xiαj)1≤i,j≤nA_{\\alpha}(x_1,\\ldots,x_n)=\\det(x_i^{\\alpha_j}) _ {1\\le i,j\\le n}Aα​(x1​,…,xn​)=det(xiαj​​)1≤i,j≤n​ とおきます。行列式の交代性から、Aα(x1,…,xn)A_{\\alpha}(x_1,\\ldots,x_n)Aα​(x1​,…,xn​) において 2 変数を入れ替えると −1-1−1 倍となります。\nδn=(n−1,n−2,…,1,0)\\delta_n=(n-1,n-2,\\ldots,1,0)δn​=(n−1,n−2,…,1,0) とおきます。λ+δn\\lambda+\\delta_nλ+δn​ を成分ごとの和とするとき、シューア多項式は\nsλ(x1,…,xn)=Aλ+δn(x1,…,xn)Aδn(x1,…,xn) s_{\\lambda}(x_1,\\ldots,x_n)=\\frac{A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)}{A_{\\delta_n}(x_1,\\ldots,x_n)} sλ​(x1​,…,xn​)=Aδn​​(x1​,…,xn​)Aλ+δn​​(x1​,…,xn​)​によって定義されます。2 変数を入れ替えると分母・分子がともに −1-1−1 倍になり打ち消し合います。よってシューア多項式は対称です。あとは実際に多項式となることを確かめます。\nAδn(x1,…,xn)A_{\\delta_n}(x_1,\\ldots,x_n)Aδn​​(x1​,…,xn​) は Vandermonde 行列式と呼ばれるものに等しく\nAδn(x1,…,xn)=∏1≤i\u0026lt;j≤n(xi−xj) A_{\\delta_n}(x_1,\\ldots,x_n)=\\prod_{1\\le i\u0026lt;j\\le n}(x_i-x_j) Aδn​​(x1​,…,xn​)=1≤i\u0026lt;j≤n∏​(xi​−xj​)となることが知られています。これは多くの線形代数の本に載っていると思います。Aλ+δn(x1,…,xn)A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)Aλ+δn​​(x1​,…,xn​) は xix_ixi​ と xjx_jxj​ を入れ替えると −1-1−1 倍になることから、(xi−xj)(x_i-x_j)(xi​−xj​) を因子に持ちます。よって Aλ+δn(x1,…,xn)A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)Aλ+δn​​(x1​,…,xn​) は Aδn(x1,…,xn)A_{\\delta_n}(x_1,\\ldots,x_n)Aδn​​(x1​,…,xn​) で割り切れるので、シューア多項式 sλ(x1,…,xn)s_{\\lambda}(x_1,\\ldots,x_n)sλ​(x1​,…,xn​) は実際に多項式です。\nシューア多項式を行列式により定義しましたが、組合せ論的に定義することもできます。λ\\lambdaλ のヤング図形を再び考えます。ヤング図形の各マスに 1 以上 nnn 以下の整数を書き込みます。これが半標準ヤングタブローであるとは\n各行について広義単調増加 各列について狭義単調増加 をみたすことをいいます。半標準ヤングタブロー TTT に整数 iii が μi\\mu_iμi​ 個書かれているとき、μ=(μ1,…,μn)\\mu=(\\mu_1,\\ldots,\\mu_n)μ=(μ1​,…,μn​) を TTT のウェイトと呼びます。λ\\lambdaλ 上の半標準ヤングタブローであってウェイトが μ\\muμ であるものの個数 KλμK_{\\lambda\\mu}Kλμ​ はコストカ数といいます。このとき\nsλ(x1,…,xn)=∑μKλμmμ(x1,…,xn) s_{\\lambda}(x_1,\\ldots,x_n)=\\sum_{\\mu}K_{\\lambda\\mu}m_{\\mu}(x_1,\\ldots,x_n) sλ​(x1​,…,xn​)=μ∑​Kλμ​mμ​(x1​,…,xn​)が成り立ちます。この等式の証明は省略します。この等式をシューア多項式の定義として採用している文献もあります。\nコストカ数は次の三角性をみたします。\nμ\u0026gt;lexλ\\mu\\gt_{\\mathrm{lex}}\\lambdaμ\u0026gt;lex​λ ならば Kλμ=0K_{\\lambda\\mu}=0Kλμ​=0 Kλλ=1K_{\\lambda\\lambda}=1Kλλ​=1 (mλ)(m_{\\lambda})(mλ​) は Λn\\Lambda_nΛn​ の基底だったので、(sλ)(s_{\\lambda})(sλ​) も Λn\\Lambda_nΛn​ の基底となることがわかります。\nシューア多項式は基底であるのみならず、正規直交基底でもあります。すなわち ⟨sλ,sμ⟩=δλμ\\langle s_{\\lambda},s_{\\mu}\\rangle=\\delta_{\\lambda\\mu}⟨sλ​,sμ​⟩=δλμ​ が成り立ちます。証明の概略を紹介します。まず、次の命題が成り立ちます。\n(uλ),(vλ)(u_{\\lambda}),(v_{\\lambda})(uλ​),(vλ​) がともに Λn\\Lambda_nΛn​ の基底であるとする。このとき次は同値である。\n⟨uλ,vμ⟩=δλμ\\langle u_{\\lambda}, v_{\\mu}\\rangle=\\delta_{\\lambda\\mu}⟨uλ​,vμ​⟩=δλμ​ ∑λuλ(x1,…,xn)vλ(y1,…,yn)=∏i,j(1−xiyj)−1\\sum_{\\lambda}u_{\\lambda}(x_1,\\ldots,x_n)v_{\\lambda}(y_1,\\ldots,y_n)=\\prod_{i,j}(1-x_iy_j)^{-1}∑λ​uλ​(x1​,…,xn​)vλ​(y1​,…,yn​)=∏i,j​(1−xi​yj​)−1 よって次の等式を示せばよいことになります。\n∑λsλ(x1,…,xn)sλ(y1,…,yn)=∏i=1n∏j=1n11−xiyj \\sum_{\\lambda}s_{\\lambda}(x_1,\\ldots,x_n)s_{\\lambda}(y_1,\\ldots,y_n)=\\prod_{i=1}^n\\prod_{j=1}^n\\frac{1}{1-x_iy_j} λ∑​sλ​(x1​,…,xn​)sλ​(y1​,…,yn​)=i=1∏n​j=1∏n​1−xi​yj​1​この等式にはいくつか証明方法があります。一つは\ndet⁡(11−xiyj)=Aδn(x1,…,xn)Aδn(y1,…,yn)∏i,j=1n(1−xiyj) \\det\\left(\\frac{1}{1-x_iy_j}\\right)=\\frac{A_{\\delta_n}(x_1,\\ldots,x_n)A_{\\delta_n}(y_1,\\ldots,y_n)}{\\prod_{i,j=1}^n(1-x_iy_j)} det(1−xi​yj​1​)=∏i,j=1n​(1−xi​yj​)Aδn​​(x1​,…,xn​)Aδn​​(y1​,…,yn​)​という等式を用いる方法です。\nもう一つは組合せ論的なシューア多項式の表示を用います。\n∑λsλ(x1,…,xn)sλ(y1,…,yn)=∏i=1n∏j=1n11−xiyj \\sum_{\\lambda}s_{\\lambda}(x_1,\\ldots,x_n)s_{\\lambda}(y_1,\\ldots,y_n)=\\prod_{i=1}^n\\prod_{j=1}^n\\frac{1}{1-x_iy_j} λ∑​sλ​(x1​,…,xn​)sλ​(y1​,…,yn​)=i=1∏n​j=1∏n​1−xi​yj​1​の左辺における x1a1⋯xnany1b1⋯ynbnx_1^{a_1}\\cdots x_n^{a_n}y_1^{b_1}\\cdots y_n^{b_n}x1a1​​⋯xnan​​y1b1​​⋯ynbn​​ の係数は、形がともに λ\\lambdaλ でウェイトがそれぞれ (a1,…,an),(b1,…,bn)(a_1,\\ldots,a_n),(b_1,\\ldots,b_n)(a1​,…,an​),(b1​,…,bn​) である半標準ヤングタブローの組の個数の、λ\\lambdaλ に関する和に等しいです。一方右辺における x1a1⋯xnany1b1⋯ynbnx_1^{a_1}\\cdots x_n^{a_n}y_1^{b_1}\\cdots y_n^{b_n}x1a1​​⋯xnan​​y1b1​​⋯ynbn​​ の係数は、等式\n11−xiyj=1+(xiyj)+(xiyj)2+⋯ \\frac{1}{1-x_iy_j}=1+(x_iy_j)+(x_iy_j)^2+\\cdots 1−xi​yj​1​=1+(xi​yj​)+(xi​yj​)2+⋯を考慮すると、nnn 次正方行列であって\n成分が非負整数 iii 行目の成分の和が aia_iai​ jjj 列目の成分の和が bjb_jbj​ となるようなものの個数に等しいです。実は、形が等しい 2 つの半標準ヤングタブローの組からなる集合と非負整数成分の行列からなる集合との間に全単射が存在します。この全単射を具体的に記述するアルゴリズムがあり、RSK 対応と呼ばれています。気になった方はぜひ調べてみてください。\nおわりに # 予定では固有値やマクドナルド多項式の話も入れる予定でしたが、間に合わなかったので後編で執筆する予定です。\n証明をすべて丁寧に記載する予定でしたができませんでした。興味を持った方は参考文献を手に取ってみてください。\n参考文献 # Egge, Eric S. An introduction to symmetric functions and their combinatorics. American Mathematical Society (2019). Macdonald, Ian Grant. Symmetric functions and Hall polynomials. 2nd ed. Oxford: Clarendon Press (1998). Noumi, Masatoshi. Macdonald Polynomials Commuting Family of qqq-Difference Operators and Their Joint Eigenfunctions, Springer (2023). 池田岳, テンソル代数と表現論, 東京大学出版会 (2022). ","date":"2023-12-19","externalUrl":null,"permalink":"/posts/symmetric-polynomial-1/","section":"数学記事・PDF","summary":"この記事は Math Advent Calendar 2023 の 19 日目の記事です。\n","title":"線形代数の知識だけでわかる！対称多項式入門（前編）","type":"posts"},{"content":"この記事は表現論 Advent Calendar 2023 の 1 日目の記事です。\n初日ということで、表現論のことをあまり知らない人に向けて記事を書きます。(といっても筆者もあまり詳しくないですが……)\n表現論って何？ # 表現論とは、大雑把に言えば、「代数系」というよくわからないものを「線形変換」というわかりやすいものに置き換えて研究することです。もっと雑に言えば「対称性」を研究することと言えます。(雑な言い方なので怒られが発生するかも……)\n例えば集合 {1,2,…,n}\\{1,2,\\ldots,n\\}{1,2,…,n} 上の全単射全体、すなわち nnn 次対称群 SnS_nSn​ を考えてみましょう。この全単射は nnn 次元線形空間 Rn\\mathbb{R}^nRn の基底の入れ替えと考えることで Rn\\mathbb{R}^nRn の線形変換に対応させることができます。例えば 1,2,31,2,31,2,3 をそれぞれ 3,2,13,2,13,2,1 に移す全単射があったとき、R3\\mathbb{R}^3R3 の基底ベクトル e1,e2,e3e_1,e_2,e_3e1​,e2​,e3​ をそれぞれ e3,e2,e1e_3,e_2,e_1e3​,e2​,e1​ に移す線形変換が得られます。これは R3\\mathbb{R}^3R3 の点 (x,y,z)(x,y,z)(x,y,z) を (z,y,x)(z,y,x)(z,y,x) に移す変換です。このように SnS_nSn​ の各元に対して線形変換を対応させることができます。対応は一通りではなく、極端な例ではすべての元を恒等写像に対応させることもできます。\n表現論では何を研究する？ # 次の問題は表現論において中心的な問題と言えます。\n既約表現をすべて求める 与えられた表現を既約表現を用いて表す 既約表現は素数や単純群と似ています。上で例示した対称群の場合、複素数体上の有限次元既約表現はヤング図形を用いて構成できることが知られています。\n表現論はどんな分野と関係がある？ # 表現論は代数学・幾何学・解析学のすべてと関係があり、さらには物理学とも関係が深い、裾野の広い分野です。筆者はこの幅広さに魅せられました。\n一部を簡単に紹介します。\n代数学 # 代数系を線形変換に対応させると述べたように、代数学との関係は大きいです。群の他にも、環やリー代数、量子群など様々な表現論があります。\n幾何学 # 多様体構造の入った群をリー群といいます。リー群の表現論も盛んに研究されています。\n解析学 # フーリエ変換は解析学の基本です。R\\mathbb{R}R 上の周期 2π2\\pi2π の連続関数は R/2πZ\\mathbb{R}/2\\pi\\mathbb{Z}R/2πZ 上の連続関数と同一視されます。このような関数 fff に対して\nf^(n)=12π∫02πf(t)e−−1ntdt(n∈Z) \\hat{f}(n)=\\frac{1}{2\\pi}\\int_0^{2\\pi}f(t)e^{-\\sqrt{-1}nt}dt \\quad (n\\in\\mathbb{Z}) f^​(n)=2π1​∫02π​f(t)e−−1​ntdt(n∈Z)をフーリエ係数といいます。fff がいい感じの条件を満たせば\nf(t)=∑n=−∞∞f^(n)e−1nt f(t)=\\sum_{n=-\\infty}^{\\infty}\\hat{f}(n)e^{\\sqrt{-1}nt} f(t)=n=−∞∑∞​f^​(n)e−1​ntが成り立ちます。これを fff のフーリエ級数展開といいます。\nこのことを表現論の観点から見ることができます。χn ⁣:t↦e−1nt\\chi_n\\colon t\\mapsto e^{\\sqrt{-1}nt}χn​:t↦e−1​nt により R/2πZ\\mathbb{R}/2\\pi\\mathbb{Z}R/2πZ 上の 1 次元表現 χn\\chi_nχn​ が得られます。実は R/2πZ\\mathbb{R}/2\\pi\\mathbb{Z}R/2πZ の有限次元既約表現はすべてこの形であることが知られています。\n物理学 # 表現論は物理学とも関係がありますが、筆者はあまり理解していません……。\n表現論にはここに書いたこと以外にも様々な側面があると思います。\nどんな本を読めばいい？ # X\\mathbb{X}X (Twitter) のハッシュタグ #私のイチ推し表現論本 を見てみると、様々な表現論の本が紹介されています。\n個人的なおススメ本を紹介します。勿論ここで紹介する本以外にもよい本はあると思うので、調べたり人に聞いたりしてみてください。\nその 1 # Steinberg, Benjamin. Representation theory of finite groups: an introductory approach. Springer, 2011. 筆者はこの本で表現論に入門しました。線形代数と群を知っている人を対象に、複素数体上の有限群の表現論を平易に解説します。\n書評はこちらにあります。\nhttps://www.jstage.jst.go.jp/article/sugaku/70/2/70_0702212/_article/-char/ja/\nその 2 # 池田岳, テンソル代数と表現論, 東京大学出版会, 2022. 最近出た表現論の本です。1 年生で学ぶ線形代数の続きとして、対称群や一般線形群の表現論を学びます。最後にはリー代数の話もあります。上の本よりは難しい気もしますが、丁寧に読むことで本格的な数学に入門できると思います。\nおわりに # 表現論に入門したい人向けの記事を書きました。筆者は勉強中の身なので不正確なことを書いていたらすみません。一緒に表現論を盛り上げていきましょう。\n参考文献 # 小林俊行・大島利雄, リー群と表現論, 岩波書店, 2005. P. エティンゴフ, O. ゴルバーグ, S. ヘンゼル, T. リウ, A. シュヴェンドナー, D. ヴェイントロブ, E. ユドヴィナ, S. ゲローヴィチ 著, 西山享 訳, 表現論入門, 丸善出版, 2023. ","date":"2023-12-01","externalUrl":null,"permalink":"/posts/introduction-to-representation/","section":"数学記事・PDF","summary":"この記事は表現論 Advent Calendar 2023 の 1 日目の記事です。\n","title":"表現論に入門したい人向けの記事","type":"posts"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は代数的組合せ論で非常に重要な qqq 二項係数の基礎を解説します。\n最短経路の個数 # まずは次の問題を考えてみましょう。\n右に 1 進む、または上に 1 進むということを繰り返して、点 (0,0)(0,0)(0,0) から (m,n)(m,n)(m,n) に到達する方法は何通りありますか。 有名問題なので、どこかで見たことがある人も多いかもしれません。移動回数が m+nm+nm+n 回で、そのうちの mmm 個を右、nnn 個を上にするので、答えは二項係数 (m+nm)\\binom{m+n}{m}(mm+n​) です。\n最短経路と面積 # この問題に少しアレンジを加えてみましょう。最短経路は長方形の内部を通るので、長方形は 2 つに分けられます。下側の部分の面積を考えてみましょう。\n上の図の場合、下側の部分の面積は 8 です。\n(m,n)=(2,3)(m,n)=(2,3)(m,n)=(2,3) の場合にすべての最短経路について下側の面積を求めてみます。すると次のような分布になりました。\n下側の面積 個数 0 1 1 1 2 2 3 2 4 2 5 1 6 1 これを 1 つにまとめる方法として、多項式を考えるという方法があります。変数は慣習で xxx ではなく qqq を用います。qkq^kqk の係数を下側の面積が kkk である経路の個数とした多項式を考えます。(m,n)=(2,3)(m,n)=(2,3)(m,n)=(2,3) の場合\n1+q+2q2+2q3+2q4+q5+q6 1+q+2q^2+2q^3+2q^4+q^5+q^6 1+q+2q2+2q3+2q4+q5+q6となります。\nq=1q=1q=1 を代入すると係数の和を求めることになります。これは最短経路の総数となるので、(m+nm)\\binom{m+n}{m}(mm+n​) です。この意味で、この多項式は二項係数の一般化になっていると考えられます。この多項式をガウス多項式または q 二項係数といい、(m+nm)q\\binom{m+n}{m}_q(mm+n​)q​ と表します。\n[m+nm]q \\begin{bmatrix} m+n \\\\ m\\end{bmatrix}_q [m+nm​]q​と表されることもあります。\nqqq 二項係数の性質 # qqq 二項係数の性質を見ていきます。\nまず係数は対称になっています。これは長方形の上側と下側の対応を考えれば明らかです。\nまた、(m+nm)q=(m+nn)q\\binom{m+n}{m}_q=\\binom{m+n}{n}_q(mm+n​)q​=(nm+n​)q​ が成り立ちます。これは長方形の縦と横を入れ替えたものを考えればよいです。\n通常の二項係数は 2 つの二項係数の和で表されます。qqq 二項係数バージョンでは次の等式が成り立ちます。\n(m+nm)q=(m+n−1m)q+qn(m+n−1m−1)q \\binom{m+n}{m}_q=\\binom{m+n-1}{m}_q+q^n\\binom{m+n-1}{m-1}_q (mm+n​)q​=(mm+n−1​)q​+qn(m−1m+n−1​)q​これは経路の最後のステップで場合分けすればわかります。この式を用いると、様々な式が帰納的に証明できます。例えば\n(m+nm)q=[m+n]q![m]q![n]q! \\binom{m+n}{m}_q=\\frac{[m+n]_q!}{[m]_q![n]_q!} (mm+n​)q​=[m]q​![n]q​![m+n]q​!​が証明できます。ここで [n]q![n]_q![n]q​! は qqq 階乗で、qqq 整数 [n]q=1+q+⋯+qn−1[n]_q=1+q+\\cdots+q^{n-1}[n]q​=1+q+⋯+qn−1 を用いて [n]q!=[1]q[2]q⋯[n]q[n]_q!=[1]_q[2]_q\\cdots [n]_q[n]q​!=[1]q​[2]q​⋯[n]q​ と定義されます。qqq 階乗や qqq 整数は q=1q=1q=1 のとき通常の階乗、整数に一致するので、上の等式は二項係数の表示の一般化となっています。\n最後に、二項係数といえばやはり二項定理です。qqq 二項係数の場合、次の qqq 二項定理が成り立ちます。\n(1+xq)(1+xq2)⋯(1+xqn)=∑i=0n(ni)qqi(i+1)/2xi (1+xq)(1+xq^2)\\cdots(1+xq^n)=\\sum_{i=0}^n\\binom{n}{i}_q q^{i(i+1)/2}x^i (1+xq)(1+xq2)⋯(1+xqn)=i=0∑n​(in​)q​qi(i+1)/2xi証明します。左辺の xix^ixi の係数が (ni)qqi(i+1)/2\\binom{n}{i}_qq^{i(i+1)/2}(in​)q​qi(i+1)/2 であることを示せばよいです。xix^ixi の係数は、左辺の各因子において右側の項を iii 回選ぶことと対応します。選んだ項を xqa1,…,xqai (a1\u0026lt;⋯\u0026lt;ai)xq^{a_1},\\ldots,xq^{a_i} \\ (a_1\u0026lt;\\cdots\u0026lt;a_i)xqa1​,…,xqai​ (a1​\u0026lt;⋯\u0026lt;ai​) とします。bj=aj−jb_j=a_j-jbj​=aj​−j とおくと、0≤b1≤⋯≤bi≤n−i0\\le b_1\\le \\cdots\\le b_i\\le n-i0≤b1​≤⋯≤bi​≤n−i となり、qa1+⋯+ai=qi(i+1)/2qb1+⋯+biq^{a_1+\\cdots+a_i}=q^{i(i+1)/2}q^{b_1+\\cdots+b_i}qa1​+⋯+ai​=qi(i+1)/2qb1​+⋯+bi​ となります。iii 番目の右向きの矢印の高さを bib_ibi​ とすることで、広義単調増加列 bbb はグリッド上の経路と一対一に対応し、b1+⋯+bib_1+\\cdots+b_ib1​+⋯+bi​ はその経路の下側の面積となります。よって qqq 二項係数が現れます。\n競技プログラミングにおける qqq 二項係数 # 競技プログラミングにおいて qqq 二項係数は上級者向けの知識となっています。例えば以下のような問題と関係しています。\nMojaCoder Grid partitioning AtCoder Regular Contest 145 F - Modulo Sum of Increasing Sequences AtCoder Beginner Contest 278 Ex - make 1 特に make 1 の解説で詳しく扱われています。\nおわりに # 今回は qqq 二項係数の基礎を解説しました。筆者はあまり理解できていませんが、qqq 数え上げの世界は非常に広いです。今後も扱うかもしれません。\nお知らせ # 一年にわたり続けてきた月刊組合せ論 Natori ですが、研究と修士論文執筆に集中するため、しばらくの間お休みさせていただきます。\n落ち着いてきたら復活する予定ですので、そのときはまた応援のほどよろしくお願いします！\n参考文献 # Bressoud, David M. Proofs and confirmations. The story of the alternating sign matrix conjecture. Spectrum Series. Cambridge: Cambridge University Press. xv, 274 p. (1999). メモ: q-二項係数 - noshi91のメモ ","date":"2023-08-01","externalUrl":null,"permalink":"/natori/202308/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は代数的組合せ論で非常に重要な qqq 二項係数の基礎を解説します。\n","title":"【月刊組合せ論 Natori】q 二項係数入門【2023 年 8 月号】","type":"natori"},{"content":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は美しく輝く公式の 1 つ、平面分割の母関数について考えていきます。\n平面分割の母関数 # 平面分割とは平面上の非負整数列 (aij)i,j=1∞(a_{ij})_{i,j=1}^{\\infty}(aij​)i,j=1∞​ であって、次の条件を満たすものです。\naij≥ai+1,ja_{ij}\\ge a_{i+1,j}aij​≥ai+1,j​ aij≥ai,j+1a_{ij}\\ge a_{i,j+1}aij​≥ai,j+1​ aija_{ij}aij​ の総和は有限 例えば\n(3210⋯1100⋯0000⋯⋮⋮⋮⋮⋱) \\begin{pmatrix} 3 \u0026amp; 2 \u0026amp; 1 \u0026amp; 0 \u0026amp; \\cdots \\\\ 1 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \\\\ 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \\end{pmatrix} ​310⋮​210⋮​100⋮​000⋮​⋯⋯⋯⋱​​は平面分割です。総和は 8 なので、8 の平面分割といいます。\n座標 (i,j)(i,j)(i,j) に aija_{ij}aij​ 個の箱を積み上げることで平面分割を可視化することができます。これは 3 次元ヤング図形ともいいます。\nnnn の平面分割の個数を pp(n)pp(n)pp(n) とおきます。今回証明するのは次の公式です。\n定理: 平面分割の母関数は\n∑n=0∞pp(n)xn=∏m=1∞1(1−xm)m \\sum_{n=0}^{\\infty}pp(n)x^n=\\prod_{m=1}^{\\infty}\\frac{1}{(1-x^m)^m} n=0∑∞​pp(n)xn=m=1∏∞​(1−xm)m1​ この公式はマクマホンの公式とも呼ばれています。\n参考までに 2 次元の場合も見てみましょう。p(n)p(n)p(n) を分割数とすると、母関数は\n∑n=0∞p(n)xn=∏m=1∞11−xm \\sum_{n=0}^{\\infty}p(n)x^n=\\prod_{m=1}^{\\infty}\\frac{1}{1-x^m} n=0∑∞​p(n)xn=m=1∏∞​1−xm1​となります。ぱっと見では似ている式です。しかしその背後にある構造は大きく異なります。マクマホンの公式の方が「深い」公式だと思っています。なお、4 次元以上の分割の母関数ではこのような表示は見つかっていないようです。\n平面分割の特徴づけ # マクマホンの公式を示すために、平面分割について調べていきます。平面分割を斜めに切るという操作が重要です。\n例として次の平面分割を考えます。\n(5421⋯3311⋯2110⋯2100⋯⋮⋮⋮⋮⋱) \\begin{pmatrix} 5 \u0026amp; 4 \u0026amp; 2 \u0026amp; 1 \u0026amp; \\cdots \\\\ 3 \u0026amp; 3 \u0026amp; 1 \u0026amp; 1 \u0026amp; \\cdots \\\\ 2 \u0026amp; 1 \u0026amp; 1 \u0026amp; 0 \u0026amp; \\cdots \\\\ 2 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; \\cdots \\\\ \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\vdots \u0026amp; \\ddots \\end{pmatrix} ​5322⋮​4311⋮​2110⋮​1100⋮​⋯⋯⋯⋯⋱​​主対角線の数字を拾うと (5,3,1,0,…)(5,3,1,0,\\ldots)(5,3,1,0,…) となります。これは (通常の) 分割です。\n1 つ右の対角線を見ると (4,1,0,0,…)(4,1,0,0,\\ldots)(4,1,0,0,…) となります。2 つの分割の間にはどのような関係があるでしょうか。\n隣り合う対角線について得られる分割を λ=(λ1,λ2,…),μ=(μ1,μ2,…)\\lambda=(\\lambda_1,\\lambda_2,\\ldots), \\mu=(\\mu_1,\\mu_2,\\ldots)λ=(λ1​,λ2​,…),μ=(μ1​,μ2​,…) とします。このとき λ1≥μ1≥λ2≥μ2≥⋯\\lambda_1\\ge \\mu_1\\ge \\lambda_2\\ge \\mu_2\\ge\\cdotsλ1​≥μ1​≥λ2​≥μ2​≥⋯ が成り立ちます。この関係を交錯と呼び、記号で λ≻μ\\lambda \\succ \\muλ≻μ と表します。\n主対角線から右に進んでいくと、交錯しながら減少していき最終的に (0)(0)(0) になります。上の例では (5,3,1)≻(4,1)≻(2,1)≻(1)≻(0)(5,3,1)\\succ (4,1)\\succ (2,1)\\succ (1)\\succ (0)(5,3,1)≻(4,1)≻(2,1)≻(1)≻(0) です。下に進んでいく場合も同様です。\nこれを数式で書くと、平面分割は\n{(0)=λ(0)≺λ(1)≺⋯≺λ(m)=μ(n)≻⋯≻μ(1)≻μ(0)=(0)} \\{(0)=\\lambda^{(0)}\\prec \\lambda^{(1)}\\prec\\cdots\\prec \\lambda^{(m)}=\\mu^{(n)}\\succ\\cdots \\succ\\mu^{(1)}\\succ\\mu^{(0)}=(0)\\} {(0)=λ(0)≺λ(1)≺⋯≺λ(m)=μ(n)≻⋯≻μ(1)≻μ(0)=(0)}と同一視されます。m,nm,nm,n を固定すれば、これは 0 でない成分だけを見たとき m×nm\\times nm×n 長方形の内部に含まれる平面分割となります。\n半標準タブローとシューア多項式 # シューア多項式については過去に記事にしました。ぜひお読みください。\n【月刊組合せ論 Natori】シューア多項式とヤコビ・トゥルーディ公式【2023 年 3 月号】\nシューア多項式は次のような多項式でした。\nsλ(x)=∑T∈SSYT(λ,n)xT s_{\\lambda}(x)=\\sum_{T\\in\\mathrm{SSYT}(\\lambda,n)}x^T sλ​(x)=T∈SSYT(λ,n)∑​xTこの式に登場する半標準タブロー T∈SSYT(λ,n)T\\in\\mathrm{SSYT}(\\lambda,n)T∈SSYT(λ,n) について考えていきましょう。\nこのタブローを、何もないところから始めて、1,2,3,41,2,3,41,2,3,4 の順に加えていくことで作ります。\nタブローが成長していますね。形に注目すると、(2),(3,2),(4,3,1),(5,4,2,1)(2), (3,2), (4,3,1), (5,4,2,1)(2),(3,2),(4,3,1),(5,4,2,1) となります。\n実は (2)≺(3,2)≺(4,3,1)≺(5,4,2,1)(2)\\prec (3,2)\\prec (4,3,1)\\prec (5,4,2,1)(2)≺(3,2)≺(4,3,1)≺(5,4,2,1) という交錯関係があります。このように、半標準タブローの集合 SSYT(λ,n)\\mathrm{SSYT}(\\lambda,n)SSYT(λ,n) は\n{(0)=λ(0)≺λ(1)≺⋯≺λ(n)=λ} \\{(0)=\\lambda^{(0)}\\prec\\lambda^{(1)}\\prec\\cdots\\prec\\lambda^{(n)}=\\lambda\\} {(0)=λ(0)≺λ(1)≺⋯≺λ(n)=λ}と同一視されます。ここで λ(i)\\lambda^{(i)}λ(i) は iii 以下の数のみに注目して得られる半標準タブローです。\n平面分割の章でやったことを思い出すと、平面分割は同じ形の半標準タブローの組と同一視できます。\nコーシーの等式 # マクマホンの公式の証明にあたって、次のコーシーの等式を用います。\n∑λsλ(x1,…,xm)sλ(y1,…,yn)=∏i=1m∏j=1n11−xiyj \\sum_{\\lambda}s_{\\lambda}(x_1,\\ldots,x_m)s_{\\lambda}(y_1,\\ldots,y_n)=\\prod_{i=1}^m\\prod_{j=1}^n\\frac{1}{1-x_iy_j} λ∑​sλ​(x1​,…,xm​)sλ​(y1​,…,yn​)=i=1∏m​j=1∏n​1−xi​yj​1​この等式は RSK 対応を用いて証明できます。いつか記事にするかもしれません。\n証明 # いよいよマクマホンの公式を証明します。\n平面分割を\n{(0)=λ(0)≺λ(1)≺⋯≺λ(m)=μ(n)≻⋯≻μ(1)≻μ(0)=(0)} \\{(0)=\\lambda^{(0)}\\prec \\lambda^{(1)}\\prec\\cdots\\prec \\lambda^{(m)}=\\mu^{(n)}\\succ\\cdots \\succ\\mu^{(1)}\\succ\\mu^{(0)}=(0)\\} {(0)=λ(0)≺λ(1)≺⋯≺λ(m)=μ(n)≻⋯≻μ(1)≻μ(0)=(0)}と見たとき、箱の数は\n∣λ(1)∣+⋯+∣λ(m−1)∣+∣μ(1)∣+⋯+∣μ(n−1)∣+12(∣λ(m)∣+∣μ(n)∣) |\\lambda^{(1)}|+\\cdots+|\\lambda^{(m-1)}|+|\\mu^{(1)}|+\\cdots+|\\mu^{(n-1)}|+\\frac12(|\\lambda^{(m)}|+|\\mu^{(n)}|) ∣λ(1)∣+⋯+∣λ(m−1)∣+∣μ(1)∣+⋯+∣μ(n−1)∣+21​(∣λ(m)∣+∣μ(n)∣)であることに注意します。\nシューア多項式については\nsλ(x1,…,xm)=∑x1∣λ(1)∣x2∣λ(2)∣−∣λ(1)∣⋯xm∣λ(m)∣−∣λ(m−1)∣ s_{\\lambda}(x_1,\\ldots,x_m)=\\sum x_1^{|\\lambda^{(1)}|}x_2^{|\\lambda^{(2)}|-|\\lambda^{(1)}|}\\cdots x_m^{|\\lambda^{(m)}|-|\\lambda^{(m-1)}|} sλ​(x1​,…,xm​)=∑x1∣λ(1)∣​x2∣λ(2)∣−∣λ(1)∣​⋯xm∣λ(m)∣−∣λ(m−1)∣​が成り立ちます。ここで右辺の和は\n{(0)=λ(0)≺λ(1)≺⋯≺λ(n)=λ} \\{(0)=\\lambda^{(0)}\\prec\\lambda^{(1)}\\prec\\cdots\\prec\\lambda^{(n)}=\\lambda\\} {(0)=λ(0)≺λ(1)≺⋯≺λ(n)=λ}に関するものです。xi=qm−i+1/2x_i=q^{m-i+1/2}xi​=qm−i+1/2 を代入することで\nsλ(qm−1/2,qm−3/2,…,q1/2)=∑q∣λ(1)∣+⋯+∣λ(m−1)∣+∣λ(m)∣/2 s_{\\lambda}(q^{m-1/2}, q^{m-3/2},\\ldots,q^{1/2})=\\sum q^{|\\lambda^{(1)}|+\\cdots+|\\lambda^{(m-1)}|+|\\lambda^{(m)}|/2} sλ​(qm−1/2,qm−3/2,…,q1/2)=∑q∣λ(1)∣+⋯+∣λ(m−1)∣+∣λ(m)∣/2となります。同様に yi=qn−i+1/2y_i=q^{n-i+1/2}yi​=qn−i+1/2 とします。コーシーの等式より\n∑q∣λ(1)∣+⋯+∣λ(m−1)∣+∣μ(1)∣+⋯+∣μ(n−1)∣+12(∣λ(m)∣+∣μ(n)∣)=∏i=1m∏j=1n11−qm+n−i−j+1=∏i=1m∏j=1n11−qi+j−1 \\begin{align*} \\sum q^{|\\lambda^{(1)}|+\\cdots+|\\lambda^{(m-1)}|+|\\mu^{(1)}|+\\cdots+|\\mu^{(n-1)}|+\\frac12(|\\lambda^{(m)}|+|\\mu^{(n)}|)} \u0026amp;= \\prod_{i=1}^m\\prod_{j=1}^n\\frac{1}{1-q^{m+n-i-j+1}} \\\\ \u0026amp;= \\prod_{i=1}^m\\prod_{j=1}^n\\frac{1}{1-q^{i+j-1}} \\end{align*} ∑q∣λ(1)∣+⋯+∣λ(m−1)∣+∣μ(1)∣+⋯+∣μ(n−1)∣+21​(∣λ(m)∣+∣μ(n)∣)​=i=1∏m​j=1∏n​1−qm+n−i−j+11​=i=1∏m​j=1∏n​1−qi+j−11​​となります。ここで m,n→∞m,n\\to\\inftym,n→∞ とします。左辺は平面分割全体をわたる和と考えられるので\n∑n=0∞pp(n)qn \\sum_{n=0}^{\\infty}pp(n)q^n n=0∑∞​pp(n)qnとなります。右辺は i+j−1=ki+j-1=ki+j−1=k をみたす (i,j)(i,j)(i,j) が kkk 通りあることから\n∏k=1∞1(1−qk)k \\prod_{k=1}^{\\infty}\\frac{1}{(1-q^k)^k} k=1∏∞​(1−qk)k1​となります。この 2 つを等式で結べば、マクマホンの公式が得られます。\nおわりに # 平面分割は組合せ論を超えて数理物理などともつながる面白い対象です。みなさんもぜひ勉強してみてください。\n参考文献 # Betea, D.; Wheeler, M. Refined Cauchy and Littlewood identities, plane partitions and symmetry classes of alternating sign matrices. J. Comb. Theory, Ser. A 137, 126-165 (2016). 高崎金久, 線形代数と数え上げ 増補版. 日本評論社 (2021). ","date":"2023-07-01","externalUrl":null,"permalink":"/natori/202307/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は美しく輝く公式の 1 つ、平面分割の母関数について考えていきます。\n","title":"【月刊組合せ論 Natori】平面分割の母関数【2023 年 7 月号】","type":"natori"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は対称多項式の世界に足を踏み入れてみましょう。\nシューア多項式 # シューア多項式については過去に記事にしました。ぜひお読みください。\n【月刊組合せ論 Natori】シューア多項式とヤコビ・トゥルーディ公式【2023 年 3 月号】\nここでは定義のみ紹介します。λ\\lambdaλ を分割、xxx を (x1,…,xn)(x_1,\\ldots,x_n)(x1​,…,xn​) の略記とし、SSYT(λ,n)\\mathrm{SSYT}(\\lambda,n)SSYT(λ,n) を形が λ\\lambdaλ で書かれている数字が nnn 以下の半標準タブロー全体の集合とします。シューア多項式を\nsλ(x)=∑T∈SSYT(λ,n)xT s_{\\lambda}(x)=\\sum_{T\\in\\mathrm{SSYT}(\\lambda,n)}x^T sλ​(x)=T∈SSYT(λ,n)∑​xTと定義します。ここで TTT に iii が μi\\mu_iμi​ 回書かれているとき、xT=x1μ1⋯xnμnx^T=x_1^{\\mu_1}\\cdots x_n^{\\mu_n}xT=x1μ1​​⋯xnμn​​ です。\nモノミアル対称多項式 # 例えば対称多項式に x3yzx^3yzx3yz という単項式があるとき、xy3zxy^3zxy3z や xyz3xyz^3xyz3 も現れなければなりません。単項式を一個決めたとき、現れるべき単項式をすべて集めた対称多項式をモノミアル対称多項式といいます。\n厳密な定義はこうです。λ\\lambdaλ を分割とするとき\nmλ(x)=∑μ:λの並べ替えxμ m_{\\lambda}(x)=\\sum_{\\mu:\\lambda \\text{の並べ替え}}x^{\\mu} mλ​(x)=μ:λの並べ替え∑​xμと定義します。ここで xμ=x1μ1⋯xnμnx^{\\mu}=x_1^{\\mu_1}\\cdots x_n^{\\mu_n}xμ=x1μ1​​⋯xnμn​​ です。\nsλs_{\\lambda}sλ​ を mμm_{\\mu}mμ​ の線形結合として表したときの mμm_{\\mu}mμ​ の係数は、sλs_{\\lambda}sλ​ における xμx^{\\mu}xμ の係数と等しいです。これは形が λ\\lambdaλ で iii が μi\\mu_iμi​ 回書かれている半標準タブローの個数となります。これを KλμK_{\\lambda\\mu}Kλμ​ とおくと\nsλ(x)=∑μKλμmμ(x) s_{\\lambda}(x)=\\sum_{\\mu}K_{\\lambda\\mu}m_{\\mu}(x) sλ​(x)=μ∑​Kλμ​mμ​(x)となります。この KλμK_{\\lambda\\mu}Kλμ​ はコストカ数と呼ばれます。\nHall-Littlewood 多項式 # シューア多項式とモノミアル対称多項式をつなぐのが Hall-Littlewood 多項式です。新たに ttt というパラメータを導入します。\nHall-Littlewood 多項式は\nPλ(x1,…,xn;t)=1vλ(t)∑σ∈Snσ(x1λ1⋯xnλn∏1≤i\u0026lt;j≤nxi−txjxi−xj) P_{\\lambda}(x_1,\\ldots,x_n;t)=\\frac{1}{v_{\\lambda}(t)}\\sum_{\\sigma\\in S_n}\\sigma\\left(x_1^{\\lambda_1}\\cdots x_n^{\\lambda_n}\\prod_{1\\le i\u0026lt;j\\le n}\\frac{x_i-tx_j}{x_i-x_j}\\right) Pλ​(x1​,…,xn​;t)=vλ​(t)1​σ∈Sn​∑​σ(x1λ1​​⋯xnλn​​1≤i\u0026lt;j≤n∏​xi​−xj​xi​−txj​​)により定義されます。ここで λ\\lambdaλ に現れる iii の個数を mi(λ)m_i(\\lambda)mi​(λ) とおき、ttt 階乗を\n[m]t!=[m]t[m−1]t⋯[1]t([k]t=1+t+⋯+tk−1) [m]_t!=[m]_t[m-1]_t\\cdots [1]_t \\quad ([k]_t=1+t+\\cdots+t^{k-1}) [m]t​!=[m]t​[m−1]t​⋯[1]t​([k]t​=1+t+⋯+tk−1)と定義するとき\nvλ(t)=∏i=0∞[mi(λ)]t! v_{\\lambda}(t)=\\prod_{i=0}^{\\infty}[m_i(\\lambda)]_t! vλ​(t)=i=0∏∞​[mi​(λ)]t​!とします。また σ∈Sn\\sigma\\in S_nσ∈Sn​ は xix_ixi​ の置換として作用します。\nHall-Littlewood 多項式は t=0t=0t=0 のときシューア多項式、t=1t=1t=1 のときモノミアル対称多項式となります。\n例: P(3,1)(x1,x2;t)=x13x2+(1−t)x12x22+x1x23P_{(3,1)}(x_1,x_2;t)=x_1^3x_2+(1-t)x_1^2x_2^2+x_1x_2^3P(3,1)​(x1​,x2​;t)=x13​x2​+(1−t)x12​x22​+x1​x23​\nHall-Littlewood 多項式の起源は有限アーベル群の数え上げ問題にあるそうです。これについてもいつか記事にする予定です。\nKostka-Foulkes 多項式 # シューア多項式を Hall-Littlewood 多項式の線形結合として表すことができます。そのときの係数が Kostka-Foulkes 多項式です。\n式で書くと次のようになります。Kλμ(t)K_{\\lambda\\mu}(t)Kλμ​(t) が Kostka-Foulkes 多項式です。\nsλ(x)=∑μKλμ(t)Pμ(x;t) s_{\\lambda}(x)=\\sum_{\\mu}K_{\\lambda\\mu}(t)P_{\\mu}(x;t) sλ​(x)=μ∑​Kλμ​(t)Pμ​(x;t)t=1t=1t=1 を代入すると\nsλ(x)=∑μKλμ(1)mμ(x) s_{\\lambda}(x)=\\sum_{\\mu}K_{\\lambda\\mu}(1)m_{\\mu}(x) sλ​(x)=μ∑​Kλμ​(1)mμ​(x)になることから、Kλμ(1)K_{\\lambda\\mu}(1)Kλμ​(1) は Kostka 数になることがわかります。\n例: K(3,1),(2,1,1)=t2+tK_{(3,1),(2,1,1)}=t^2+tK(3,1),(2,1,1)​=t2+t\nKostka-Foulkes 多項式 Kλμ(t)K_{\\lambda\\mu}(t)Kλμ​(t) の係数は非負整数になることが知られています。Kazhdan-Lusztig 多項式の理論から証明することができますが、combinatorialist としては次のように証明したくなります。すなわち、Kostka-Foulkes 多項式の係数をある集合の要素数として組合せ論的に解釈できないでしょうか？\nLascoux と Schützenberger は、この問題をチャージと呼ばれる量を導入することで解決しました。チャージの定義は後回しにして、結果を先に紹介します。\nKλμ(t)=∑T∈SSYT(λ,μ)tcharge(T) K_{\\lambda\\mu}(t)=\\sum_{T\\in\\mathrm{SSYT}(\\lambda,\\mu)}t^{\\mathrm{charge}(T)} Kλμ​(t)=T∈SSYT(λ,μ)∑​tcharge(T)すなわち、Kλμ(t)K_{\\lambda\\mu}(t)Kλμ​(t) の tkt^ktk の係数は、形が λ\\lambdaλ でウェイトが μ\\muμ の（すなわち iii が μi\\mu_iμi​ 回書かれている）半標準タブローであって、チャージが kkk に等しいものの個数となります。\nチャージの定義 # それではチャージを定義しましょう。\n順列に対するチャージ # www を (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列とします。このとき www のチャージは、jjj が j+1j+1j+1 より前に現れるような jjj に関する n−jn-jn−j の総和として定義されます。\n例えば w=31425w=31425w=31425 のとき、条件を満たす jjj は 3,1,43,1,43,1,4 なのでチャージは (5−3)+(5−1)+(5−4)=7(5-3)+(5-1)+(5-4)=7(5−3)+(5−1)+(5−4)=7 です。\n数列に対するチャージ # 次に重複がある数列について考えます。ただし (1 の個数)≧(2 の個数)≧… という条件を付けます。\ni=1i=1i=1 とする。右から左に読む。 iii が現れたとき、そこに印をつけ iii を 1 増やす。 左端に到着したとき、再び右端に戻る。 最大値に印をつけたとき、印のつけた数を取り出して順列を得る。残った数からなる数列に再び最初の操作を行う。 これをすべての数が取り出されるまで繰り返す。 例えば 21314132 で試してみましょう。印をつけた数を太字にします。まず右から左に読むと 21314132 となり、右に戻って再び読むと 21314132 となります。取り出される順列は 2413 となり、残った数列は 1312 です。残った数列に同じ操作を行うと 1312 となります。取り出される順列は 312 です。最後に 1 が残り、そのまま取り出されます。よって 21314132 から 2413, 312, 1 が取り出されました。\nこのとき、チャージは取り出された順列のチャージの総和として定義されます。上の例では 2413, 312, 1 のチャージの和が 21314132 のチャージとなります。\n半標準タブローに対するチャージ # 形が λ\\lambdaλ、ウェイトが μ\\muμ の半標準タブローが与えられたとき、一番下の行から上の行に向かって行を連結することで語を得ることができます。この語のチャージをタブローのチャージと定義します。μ\\muμ は分割、すなわち μ1≥μ2≥⋯\\mu_1\\ge \\mu_2\\ge\\cdotsμ1​≥μ2​≥⋯ をみたすので、(1 の個数)≧(2 の個数)≧… をみたします。\n例えば次の半標準タブローから得られる数列は 434223311112 です。この数列のチャージがタブローのチャージとなります。\nチャージの正体 # チャージが定義できました。しかし定義が理解できても何故このようになるのかよくわかりません。\n別の観点からチャージを理解する試みがあります。次のような観点があります。\n結晶グラフ energy function affine Grassmannian 一般化 # ここで紹介した Hall-Littlewood 多項式と Kostka-Foulkes 多項式は A 型です。他のルート系に一般化することができます。定義は割愛します。\nA 型の Kostka-Foulkes 多項式はチャージを用いて表せましたが、一般化された Kostka-Foulkes 多項式についてこのようなことができるかという問題は未解決です。具体的には次のような未解決問題です。\nSSYT(λ,μ)\\mathrm{SSYT}(\\lambda,\\mu)SSYT(λ,μ) の代わりとなる集合 S(λ,μ)S(\\lambda,\\mu)S(λ,μ) を見つける。 Kλμ(t)=∑T∈S(λ,μ)tcharge(T)K_{\\lambda\\mu}(t)=\\sum_{T\\in S(\\lambda,\\mu)}t^{\\mathrm{charge}(T)}Kλμ​(t)=∑T∈S(λ,μ)​tcharge(T) をみたす関数 charge\\mathrm{charge}charge を見つける。 C 型の場合部分的に解決されています。, , をご覧ください。\nおわりに # Hall-Littlewood 多項式、Kostka-Foulkes 多項式を紹介して、最後には未解決問題にも触れました。\n皆さんも未解決問題に挑んでみませんか？\n参考文献 # Butler, Lynne M. Subgroup lattices and symmetric functions. Mem. Am. Math. Soc. 539, 160 p. (1994). Dołęga, Maciej; Gerber, Thomas; Torres, Jacinta; A positive combinatorial formula for symplectic Kostka-Foulkes polynomials. I: Rows. J. Algebra 560. (2020). Désarménien, J.; Leclerc, B.; Thibon, J.-Y. Hall-Littlewood functions and Kostka-Foulkes polynomials in representation theory. Sémin. Lothar. Comb. 32, B32c, 38 p. (1994). Lecouvey, Cédric; Lenart, Cristian; Combinatorics of generalized exponents. Int. Math. Res. Not. 2020 (2020). Lascoux, Alain; Leclerc, Bernard; Thibon, Jean-Yves; Crystal graphs and $q$-analogues of weight multiplicities for the root system $A_n$. Lett. Math. Phys. 35, No. 4, 359-374 (1995). Macdonald, Ian Grant; Symmetric functions and Hall polynomials. 2nd ed. Oxford: Clarendon Press. x, 475 p. (1995). Nakayashiki, Atsushi; Yamada, Yasuhiko; Kostka polynomials and energy functions in solvable lattice models. Sel. Math., New Ser. 3, No. 4, 547-599 (1997). Patimo, Leonardo; The charge statistic in type A via the affine Grassmannian. J. Algebra 679, 169-211 (2025). Patimo, Leonardo; Torres, Jacinta; Atoms and charge in type $C_2$. Algebr. Comb. 8, No. 2, 521-574 (2025). ","date":"2023-06-01","externalUrl":null,"permalink":"/natori/202306/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は対称多項式の世界に足を踏み入れてみましょう。\n","title":"【月刊組合せ論 Natori】Hall-Littlewood 多項式と Kostka-Foulkes 多項式【2023 年 6 月号】","type":"natori"},{"content":"","date":"2023-06-01","externalUrl":null,"permalink":"/tags/","section":"Tags","summary":"","title":"Tags","type":"tags"},{"content":"","date":"2023-06-01","externalUrl":null,"permalink":"/tags/%E5%AF%BE%E7%A7%B0%E9%96%A2%E6%95%B0/","section":"Tags","summary":"","title":"対称関数","type":"tags"},{"content":"","date":"2023-06-01","externalUrl":null,"permalink":"/tags/%E4%BB%A3%E6%95%B0%E7%9A%84%E7%B5%84%E5%90%88%E3%81%9B%E8%AB%96/","section":"Tags","summary":"","title":"代数的組合せ論","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤング図形好きなら外せない、フック長公式について深掘りしていきます。\nフック長公式 # フック長公式は標準タブローの個数を数える公式です。標準タブローはヤング図形のマスに 1 から nnn までの正の整数を一回ずつ書き込んだもので、各行・各列について単調増加なものです。\nフックとは、あるマスとその右・下にあるマスからなる集合です。\nフック長公式によると、標準タブローの個数は\nn!∏(i,j)∈λh(i,j) \\frac{n!}{\\prod_{(i,j)\\in\\lambda} h(i,j)} ∏(i,j)∈λ​h(i,j)n!​により求められます。ここで h(i,j)h(i,j)h(i,j) はフック長、すなわちフックに含まれるマスの個数です。λ\\lambdaλ を明示して hλ(i,j)h_{\\lambda}(i,j)hλ​(i,j) と書くこともあります。すべてのマスについてフック長を計算し、その総積で n!n!n! を割った値が標準タブローの個数ということです。\n以下ではフック長公式の証明をいくつか紹介します。1 つ目の証明のみ詳述し、残りは概略を述べるだけとします。\n確率を用いた証明 # この証明が恐らくもっとも有名ではないでしょうか。 の証明です。\nλ\\lambdaλ 上の標準タブローの個数を DλD_{\\lambda}Dλ​ とおき、Fλ=n!∏(i,j)∈λh(i,j)F_{\\lambda}=\\frac{n!}{\\prod_{(i,j)\\in\\lambda}h(i,j)}Fλ​=∏(i,j)∈λ​h(i,j)n!​ とおきます。目標は Dλ=FλD_{\\lambda}=F_{\\lambda}Dλ​=Fλ​ を示すことです。\nλ\\lambdaλ の隅とは、右にも下にもマスがないようなマスをいいます。最大の数 nnn が書き込まれるのは隅です。この隅を削除するとサイズ n−1n-1n−1 の標準タブローが得られます。よって DλD_{\\lambda}Dλ​ は次の漸化式を満たします。\nDλ=∑μ↗λDμ D_{\\lambda}=\\sum_{\\mu\\nearrow\\lambda}D_{\\mu} Dλ​=μ↗λ∑​Dμ​ここで μ↗λ\\mu\\nearrow\\lambdaμ↗λ は λ\\lambdaλ から隅を 1 個削除することで μ\\muμ が得られることを表しています。このような μ\\muμ 全体について和をとるという意味です。\nλ=(1)\\lambda=(1)λ=(1) のとき Dλ=Fλ=1D_{\\lambda}=F_{\\lambda}=1Dλ​=Fλ​=1 なので、FλF_{\\lambda}Fλ​ が同じ漸化式\nFλ=∑μ↗λFμ F_{\\lambda}=\\sum_{\\mu\\nearrow\\lambda}F_{\\mu} Fλ​=μ↗λ∑​Fμ​をみたすことを示せばよいです。この式を ∑FμFλ=1\\sum\\frac{F_{\\mu}}{F_{\\lambda}}=1∑Fλ​Fμ​​=1 と書き換えます。この式を確率的に解釈していきましょう。\nヤング図形 λ\\lambdaλ 上のフックウォークを定義します。\nまず λ\\lambdaλ のマスを一様ランダムに 1 つ選び、(x1,y1)(x_1,y_1)(x1​,y1​) とします。 次に (x1,y1)(x_1,y_1)(x1​,y1​) に関するフックから (x1,y1)(x_1,y_1)(x1​,y1​) を除いた集合が空でないとき、その中から一様ランダムにマスを 1 つ選び、(x2,y2)(x_2,y_2)(x2​,y2​) とします。 これを繰り返します。 選んだマスを並べた (x1,y1),(x2,y2),…,(xk,yk)(x_1,y_1),(x_2,y_2),\\ldots, (x_k,y_k)(x1​,y1​),(x2​,y2​),…,(xk​,yk​) をフックウォークと呼びます。フックウォークの終点 (xk,yk)(x_k,y_k)(xk​,yk​) は隅となります。このとき次の命題が成り立ちます。\n命題: 隅 (a,b)(a,b)(a,b) に対して、フックウォークの終点が (a,b)(a,b)(a,b) となる確率は FμFλ\\frac{F_{\\mu}}{F_{\\lambda}}Fλ​Fμ​​ である。ここで μ\\muμ は λ\\lambdaλ から (a,b)(a,b)(a,b) を除いた図形である。 必ず終点が隅になることから確率の総和は 1 なので、この命題から示すべき式が従います。\n命題を証明します。μ\\muμ を λ\\lambdaλ から隅 (a,b)(a,b)(a,b) を除いた図形とします。(i,j)(i,j)(i,j) が隅 (a,b)(a,b)(a,b) と同じ行にも列にもないとき hλ(i,j)=hμ(i,j)h_{\\lambda}(i,j)=h_{\\mu}(i,j)hλ​(i,j)=hμ​(i,j) である一方、同じ行または同じ列にあるときは hμ(i,j)=hλ(i,j)−1h_{\\mu}(i,j)=h_{\\lambda}(i,j)-1hμ​(i,j)=hλ​(i,j)−1 であることに注意すると\nFμFλ=(n−1)!/∏(i,j)∈μhμ(i,j)n!/∏(i,j)∈λhλ(i,j)=1n∏(i,j)∈λhλ(i,j)∏(i,j)∈μhμ(i,j)=1n∏i=1a−1hλ(i,b)hλ(i,b)−1∏j=1b−1hλ(a,j)hλ(a,j)−1=1n∏i=1a−1(1+1hλ(i,b)−1)∏j=1b−1(1+1hλ(a,j)−1) \\begin{align*} \\frac{F_{\\mu}}{F_{\\lambda}} \u0026amp;= \\frac{(n-1)!/\\prod_{(i,j)\\in \\mu}h_{\\mu}(i,j)}{n!/\\prod_{(i,j)\\in \\lambda}h_{\\lambda}(i,j)} \\\\ \u0026amp;= \\frac{1}{n}\\frac{\\prod_{(i,j)\\in\\lambda}h_{\\lambda}(i,j)}{\\prod_{(i,j)\\in\\mu}h_{\\mu}(i,j)} \\\\ \u0026amp;= \\frac{1}{n}\\prod_{i=1}^{a-1}\\frac{h_{\\lambda}(i,b)}{h_{\\lambda}(i,b)-1}\\prod_{j=1}^{b-1}\\frac{h_{\\lambda}(a,j)}{h_{\\lambda}(a,j)-1} \\\\ \u0026amp;= \\frac{1}{n}\\prod_{i=1}^{a-1}\\left(1+\\frac{1}{h_{\\lambda}(i,b)-1}\\right)\\prod_{j=1}^{b-1}\\left(1+\\frac{1}{h_{\\lambda}(a,j)-1}\\right) \\end{align*} Fλ​Fμ​​​=n!/∏(i,j)∈λ​hλ​(i,j)(n−1)!/∏(i,j)∈μ​hμ​(i,j)​=n1​∏(i,j)∈μ​hμ​(i,j)∏(i,j)∈λ​hλ​(i,j)​=n1​i=1∏a−1​hλ​(i,b)−1hλ​(i,b)​j=1∏b−1​hλ​(a,j)−1hλ​(a,j)​=n1​i=1∏a−1​(1+hλ​(i,b)−11​)j=1∏b−1​(1+hλ​(a,j)−11​)​となります。展開すると\nFμFλ=1n∑A⊆{1,…,a−1}∑B⊆{1,…,b−1}Q(A,B)Q(A,B)=∏i∈A1hλ(i,b)−1∏j∈B1hλ(a,j)−1 \\begin{gather*} \\frac{F_{\\mu}}{F_{\\lambda}}=\\frac{1}{n}\\sum_{A\\subseteq\\{1,\\ldots,a-1\\}}\\sum_{B\\subseteq\\{1,\\ldots,b-1\\}}Q(A,B) \\\\ Q(A,B)=\\prod_{i\\in A}\\frac{1}{h_{\\lambda}(i,b)-1}\\prod_{j\\in B}\\frac{1}{h_{\\lambda}(a,j)-1} \\end{gather*} Fλ​Fμ​​=n1​A⊆{1,…,a−1}∑​B⊆{1,…,b−1}∑​Q(A,B)Q(A,B)=i∈A∏​hλ​(i,b)−11​j∈B∏​hλ​(a,j)−11​​となります。\nここで部分集合 A,BA,BA,B に対して、フックウォークの始点が (min⁡(A∪{a}),min⁡(B∪{b}))(\\min(A\\cup\\{a\\}), \\min(B\\cup\\{b\\}))(min(A∪{a}),min(B∪{b}))、終点が (a,b)(a,b)(a,b) になるという条件の下で、フックウォークの行番号の集合が A∪{a}A\\cup\\{a\\}A∪{a}、列番号の集合が B∪{b}B\\cup\\{b\\}B∪{b} になる条件付き確率を P(A,B)P(A,B)P(A,B) とします。P(A,B)=Q(A,B)P(A,B)=Q(A,B)P(A,B)=Q(A,B) を示せば命題が示されます。\n∣A∣+∣B∣|A|+|B|∣A∣+∣B∣ に関する帰納法を用います。AAA または BBB が空集合のときは簡単にわかるので、そうでないとします。x1=min⁡A,y1=min⁡Bx_1=\\min A, y_1=\\min Bx1​=minA,y1​=minB とおきます。P(A,B)=1hλ(x1,y1)−1(P(A∖{x1},B)+P(A,B∖{y1}))P(A,B)=\\frac{1}{h_{\\lambda}(x_1,y_1)-1}(P(A\\setminus\\{x_1\\}, B)+P(A,B\\setminus\\{y_1\\}))P(A,B)=hλ​(x1​,y1​)−11​(P(A∖{x1​},B)+P(A,B∖{y1​})) です。帰納法の仮定より\nP(A∖{x1},B)=Q(A∖{x1},B)=∏i∈A∖{x1}1hλ(i,b)−1∏j∈B1hλ(a,j)−1=(hλ(x1,b)−1)Q(A,B) \\begin{align*} P(A\\setminus\\{x_1\\}, B) \u0026amp;= Q(A\\setminus\\{x_1\\}, B) \\\\ \u0026amp;= \\prod_{i\\in A\\setminus\\{x_1\\}}\\frac{1}{h_{\\lambda}(i,b)-1}\\prod_{j\\in B}\\frac{1}{h_{\\lambda}(a,j)-1} \\\\ \u0026amp;= (h_{\\lambda}(x_1,b)-1)Q(A,B) \\end{align*} P(A∖{x1​},B)​=Q(A∖{x1​},B)=i∈A∖{x1​}∏​hλ​(i,b)−11​j∈B∏​hλ​(a,j)−11​=(hλ​(x1​,b)−1)Q(A,B)​同様に\nP(A,B∖{y1})=(hλ(a,y1)−1)Q(A,B) P(A,B\\setminus\\{y_1\\})=(h_{\\lambda}(a,y_1)-1)Q(A,B) P(A,B∖{y1​})=(hλ​(a,y1​)−1)Q(A,B)となるので\nP(A,B)=hλ(x1,b)−1+hλ(a,y1)−1hλ(x1,y1)−1Q(A,B)=Q(A,B) P(A,B)=\\frac{h_{\\lambda}(x_1,b)-1+h_{\\lambda}(a,y_1)-1}{h_{\\lambda}(x_1,y_1)-1}Q(A,B)=Q(A,B) P(A,B)=hλ​(x1​,y1​)−1hλ​(x1​,b)−1+hλ​(a,y1​)−1​Q(A,B)=Q(A,B)となります。hλ(x1,y1)−1=hλ(x1,b)−1+hλ(a,y1)−1h_{\\lambda}(x_1,y_1)-1=h_{\\lambda}(x_1,b)-1+h_{\\lambda}(a,y_1)-1hλ​(x1​,y1​)−1=hλ​(x1​,b)−1+hλ​(a,y1​)−1 は図を描いて確かめてください。\nこれで証明が完了しました。この証明は「確率論的な証明」と呼ばれることがありますが、大学数学における確率論は測度論などを用いた厳密なものであるのに対して、この証明は高校数学の知識しか用いていません。実際に名古屋大学の入試でこの証明を元にした問題が出題されています。\n全単射 # 全単射を用いた証明がいくつかあります。FλF_{\\lambda}Fλ​ を標準タブローの個数とします。分母を払って n!=Fλ∏(i,j)h(i,j)n!=F_{\\lambda}\\prod_{(i,j)}h(i,j)n!=Fλ​∏(i,j)​h(i,j) を示せばよいです。ここで a(i,j)a(i,j)a(i,j) を (i,j)(i,j)(i,j) より右にあるマスの個数、l(i,j)l(i,j)l(i,j) を (i,j)(i,j)(i,j) より下にあるマスの個数とすると、h(i,j)=a(i,j)+l(i,j)+1h(i,j)=a(i,j)+l(i,j)+1h(i,j)=a(i,j)+l(i,j)+1 となります。ゆえに −l(i,j)-l(i,j)−l(i,j) 以上 a(i,j)a(i,j)a(i,j) 以下の整数の個数は h(i,j)h(i,j)h(i,j) です。マス (i,j)(i,j)(i,j) に書かれている数が −l(i,j)-l(i,j)−l(i,j) 以上 a(i,j)a(i,j)a(i,j) 以下であるようなタブローをフックタブローと呼ぶことにします。\n標準タブローの個数が FλF_{\\lambda}Fλ​、フックタブローの個数が ∏(i,j)h(i,j)\\prod_{(i,j)}h(i,j)∏(i,j)​h(i,j) であることから、標準タブローとフックタブローの組が順列と一対一対応することを示せばよいです。\n詳しくは で解説されています。\n表現論 # ヤング図形は対称群の表現論と深くかかわります。例えば対称群 SnS_nSn​ の既約表現はサイズ nnn のヤング図形と一対一に対応し、λ\\lambdaλ に対応する既約表現の次元は λ\\lambdaλ 上の標準タブローの個数と等しくなります。\nフロベニウスの指標公式と呼ばれるものがあり、そこから証明することができるようです。 を参照してください。\n複素解析 # 複素解析を用いた証明もあります。以下の文献で解説されています。\nヤング図形の組合せ論講義\n幾何学 # 幾何学な証明は にあるようです。（読んでいません……）\nおわりに # 今回はフック長公式の様々な証明を紹介しました。1 つの公式にいろいろな証明があるのは面白いですね。\n今後も月刊組合せ論 Natori では様々なトピックを紹介予定なので、応援のほどよろしくお願いいたします。\n参考文献 # Greene, Curtis; Nijenhuis, Albert; Wilf, Herbert S. A probabilistic proof of a formula for the number of Young tableaux of a given shape. Adv. Math. 31, 104-109 (1979). Hook length formula and geometric combinatorics. Sémin. Lothar. Comb. 46, B46f, 13 p. (2001). Romik, Dan. The surprising mathematics of longest increasing subsequences. Cambridge University Press. (2015). Sagan, Bruce E. The symmetric group. Representations, combinatorial algorithms, and symmetric functions. 2nd ed. Springer. (2001). 池田岳. テンソル代数と表現論. 東京大学出版会 ","date":"2023-05-01","externalUrl":null,"permalink":"/natori/202305/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤング図形好きなら外せない、フック長公式について深掘りしていきます。\n","title":"【月刊組合せ論 Natori】フック長公式【2023 年 5 月号】","type":"natori"},{"content":"","date":"2023-05-01","externalUrl":null,"permalink":"/tags/%E3%83%A4%E3%83%B3%E3%82%B0%E5%9B%B3%E5%BD%A2/","section":"Tags","summary":"","title":"ヤング図形","type":"tags"},{"content":"","date":"2023-05-01","externalUrl":null,"permalink":"/tags/%E6%95%B0%E3%81%88%E4%B8%8A%E3%81%92/","section":"Tags","summary":"","title":"数え上げ","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はカタラン数と畳み込みについて考えます。\nカタラン数の基礎 # カタラン数は次の漸化式により定義される数列です。\nC0=1,Cn+1=∑i=0nCiCn−i C_0=1, C_{n+1}=\\sum_{i=0}^nC_iC_{n-i} C0​=1,Cn+1​=i=0∑n​Ci​Cn−i​これは 1,1,2,5,14,42,…1,1,2,5,14,42,\\ldots1,1,2,5,14,42,… という数列です。この数列の母関数は\nC(x)=∑n=0∞Cnxn=1−1−4x2x C(x)=\\sum_{n=0}^{\\infty}C_nx^n=\\frac{1-\\sqrt{1-4x}}{2x} C(x)=n=0∑∞​Cn​xn=2x1−1−4x​​です。カタラン数 CnC_nCn​ は\n長さ 2n2n2n の正しい括弧列の個数 頂点数 n+1n+1n+1 の木の個数 頂点数 2n+12n+12n+1 の二分木の個数 対角線をまたがないグリッドの経路の個数 などに等しいです。個数がカタラン数に等しくなるオブジェクトはたくさん知られており、まさに数え上げ組合せ論の中心であると言えます。\n今回考えるのは、母関数のべき乗 C(x)kC(x)^kC(x)k から得られる数列です。C(x)kC(x)^kC(x)k の xnx^nxn の係数を [xn]C(x)k[x^n]C(x)^k[xn]C(x)k と表します。\n木と括弧列の対応 # 木から括弧列を作る方法をみます。ここで木は根付き木で子の順序を区別します。\n深さ優先探索を行って、進むときに (、戻るときに ) を追加します。正確には次のようなアルゴリズムです。\n根から出発する。初め括弧列は空である。 まだ訪問していない子があるとき、そのうち最初の子に移動する。括弧列に ( を追加する。 そうでないとき、親に戻る。括弧列に ) を追加する。 次の木の場合、得られる括弧列は (()())()(()) です。\nこのようにして頂点数 n+1n+1n+1 の木と長さ 2n2n2n の正しい括弧列の間の全単射を作ることができます。個数はともに CnC_nCn​ です。\n森の数え上げ # 頂点数が n+3n+3n+3 で連結成分が 3 個の森を数え上げてみましょう。ただし連結成分の順序も区別します。連結成分の頂点数を a+1,b+1,c+1a+1, b+1, c+1a+1,b+1,c+1 とすると、木の個数はそれぞれ Ca,Cb,CcC_a, C_b, C_cCa​,Cb​,Cc​ となります。よって\n∑a+b+c=nCaCbCc \\sum_{a+b+c=n}C_aC_bC_c a+b+c=n∑​Ca​Cb​Cc​が答えとなります。これは畳み込みの形をしており、[xn]C(x)3[x^n]C(x)^3[xn]C(x)3 に等しくなります。同様に頂点数が n+kn+kn+k で連結成分が kkk 個の森の個数は [xn]C(x)k[x^n]C(x)^k[xn]C(x)k となります。\nラグランジュ反転公式 # いよいよ [xn]C(x)k[x^n]C(x)^k[xn]C(x)k を求めます。ラグランジュ反転公式を用います。\n定理: ϕ(u)=∑k≥0ϕkuk\\phi(u)=\\sum_{k\\ge 0}\\phi_ku^kϕ(u)=∑k≥0​ϕk​uk は ϕ0≠0\\phi_0\\ne 0ϕ0​=0 をみたすとし、y=y(x)y=y(x)y=y(x) は y=xϕ(y)y=x\\phi(y)y=xϕ(y) をみたすとする。このとき\n[xn]y(x)k=kn[un−k]ϕ(u)n [x^n]y(x)^k=\\frac{k}{n}[u^{n-k}]\\phi(u)^n [xn]y(x)k=nk​[un−k]ϕ(u)nが成り立つ。\n証明は などを参照してください。\ny(x)=xC(x)=1−1−4x2,ϕ(u)=11−uy(x)=xC(x)=\\frac{1-\\sqrt{1-4x}}{2}, \\phi(u)=\\frac{1}{1-u}y(x)=xC(x)=21−1−4x​​,ϕ(u)=1−u1​ とすると仮定をみたすので\n[xn](1−1−4x2)k=kn(2n−k−1n−k) [x^n]\\left(\\frac{1-\\sqrt{1-4x}}{2}\\right)^k=\\frac{k}{n}\\binom{2n-k-1}{n-k} [xn](21−1−4x​​)k=nk​(n−k2n−k−1​)が成り立ちます。ここで ϕ(u)n\\phi(u)^nϕ(u)n の係数は負の二項定理を用いて計算します。よって\n[xn]C(x)k=[xn+k](1−1−4x2)k=kn+k(2n+k−1n) [x^n]C(x)^k=[x^{n+k}]\\left(\\frac{1-\\sqrt{1-4x}}{2}\\right)^k=\\frac{k}{n+k}\\binom{2n+k-1}{n} [xn]C(x)k=[xn+k](21−1−4x​​)k=n+kk​(n2n+k−1​)となります。\n問題 # 以下では解法のネタバレを含みます。\nyukicoder No.1662 (ox) Alternative # 問題リンク：https://yukicoder.me/problems/no/1662\n長さ 2n2n2n の括弧列であって )( を挿入できない箇所が kkk 個あるようなものを数え上げる必要があります。直接畳み込みの形に持ち込むこともできますが、森の数え上げとの全単射を作りましょう。挿入できない箇所で括弧列を分割します。例えば (()())()(()) の場合 (()()), (), (()) の 3 つになります。それぞれ左端の ( と右端の ) を削除すると、()(), 空文字列, () になります。これらを木に変換することで、3 つの連結成分からなる森が得られます。別の言い方をすると、木において根を削除するということになります。\n京都大学プログラミングコンテスト 2020 M - Many Parentheses # 問題リンク：https://atcoder.jp/contests/kupc2020/tasks/kupc2020_m\n長さが 2×K2\\times K2×K でない括弧列の母関数が C(x)−CKxKC(x)-C_Kx^KC(x)−CK​xK であることから、答えは [xM](C(x)−CKxK)N[x^M] (C(x)-C_Kx^K)^N[xM](C(x)−CK​xK)N です。二項定理を用いて展開すると\n[xM]C(x)N−(N1)CK[xM−K]C(x)N−1+(N2)CK2[xM−2K]C(x)N−2−⋯ [x^M]C(x)^N-\\binom{N}{1}C_K[x^{M-K}]C(x)^{N-1}+\\binom{N}{2}C_K^2[x^{M-2K}]C(x)^{N-2}-\\cdots [xM]C(x)N−(1N​)CK​[xM−K]C(x)N−1+(2N​)CK2​[xM−2K]C(x)N−2−⋯となります。\nXmas Contest 2022 D - Dichotomy # 問題リンク：https://atcoder.jp/contests/xmascon22/tasks/xmascon22_d\nこれも [xn]C(x)k[x^n]C(x)^k[xn]C(x)k の計算に帰着されるそうです。（筆者は解いていません）\nおわりに # カタラン数の母関数のべき乗について解説しました。競技プログラミングでたまに見かけるテクニックなので、覚えておくとよいことがあるかもしれません。\n今後も月刊組合せ論 Natori では様々な組合せ論のトピックを扱っていきます。\n参考文献 # Flajolet, Philippe; Sedgewick, Robert. Analytic combinatorics. Cambridge University Press (2009). [Tutorial] Catalan Numbers and Catalan Convolution, https://codeforces.com/blog/entry/87585 グリッドの最短経路の数え上げまとめ - かんプリンの学習記録, https://kanpurin.hatenablog.com/entry/2021/09/15/220913 ","date":"2023-04-01","externalUrl":null,"permalink":"/natori/202304/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はカタラン数と畳み込みについて考えます。\n","title":"【月刊組合せ論 Natori】森の数え上げとカタラン数の畳み込み【2023 年 4 月号】","type":"natori"},{"content":"","date":"2023-04-01","externalUrl":null,"permalink":"/tags/%E7%AB%B6%E3%83%97%E3%83%AD/","section":"Tags","summary":"","title":"競プロ","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は組合せ論・対称関数論を中心に幅広く活躍するシューア多項式について語っていきます。\n半標準タブロー # ヤング図形のマスに正整数を書き込んだものであって\n各行について広義単調増加 各列について狭義単調増加 となるものを半標準タブローといいます。\nシューア多項式 # ヤング図形 λ\\lambdaλ 上の半標準タブローのうち、書き込まれた整数が nnn 以下であるものからなる集合を SST(λ,n)\\text{SST}(\\lambda,n)SST(λ,n) とします。\nSST((3,1),1)\\text{SST}((3,1),1)SST((3,1),1) は空集合で、SST((3,1),2)\\text{SST}((3,1),2)SST((3,1),2) は次の 333 つのタブローからなる集合です。\nここで x1,x2x_1,x_2x1​,x2​ という記号（不定元）を導入して、タブローごとに 111 の個数だけ x1x_1x1​ をかけ、222 の個数だけ x2x_2x2​ をかけた単項式を作ります。上の例ではそれぞれ x13x2,x12x22,x1x23x_1^3x_2, x_1^2x_2^2, x_1x_2^3x13​x2​,x12​x22​,x1​x23​ となります。これらの和を\ns(3,1)(x1,x2)=x13x2+x12x22+x1x23 s_{(3,1)}(x_1,x_2)=x_1^3x_2+x_1^2x_2^2+x_1x_2^3 s(3,1)​(x1​,x2​)=x13​x2​+x12​x22​+x1​x23​とします。このようにしてできる多項式をシューア多項式といいます。\n一般にシューア多項式 sλ(x1,x2,…,xn)s_{\\lambda}(x_1,x_2,\\ldots,x_n)sλ​(x1​,x2​,…,xn​) は次のように定義されます。T∈SST(λ,n)T\\in\\text{SST}(\\lambda,n)T∈SST(λ,n) に対して、TTT に書き込まれた整数 iii の個数を cic_ici​ とするとき\nsλ(x1,x2,…,xn)=∑T∈SST(λ,n)x1c1⋯xncn s_{\\lambda}(x_1,x_2,\\ldots,x_n)=\\sum_{T\\in \\text{SST}(\\lambda,n)}x_1^{c_1}\\cdots x_n^{c_n} sλ​(x1​,x2​,…,xn​)=T∈SST(λ,n)∑​x1c1​​⋯xncn​​と定義します。ぜひ手ごろな例で計算してみましょう。\nいくつか計算してみると、sλs_{\\lambda}sλ​ が対称多項式となっていることに気づくと思います。定義からは非自明ですね。組合せ論的には Bender-Knuth involution というものを使えば証明できますが、今回は別の方法で証明しましょう。\n代数的定義 # 次の 2 つの行列式を考えます。\nΔ1=det⁡(x14x24x1x2)Δ2=det⁡(x1x211) \\begin{align*} \\Delta_1\u0026amp;=\\det\\begin{pmatrix} x_1^4 \u0026amp; x_2^4 \\\\ x_1 \u0026amp; x_2 \\end{pmatrix} \\\\ \\Delta_2\u0026amp;=\\det\\begin{pmatrix} x_1 \u0026amp; x_2 \\\\ 1 \u0026amp; 1 \\end{pmatrix} \\end{align*} Δ1​Δ2​​=det(x14​x1​​x24​x2​​)=det(x1​1​x2​1​)​計算すると\nΔ1=x14x2−x1x24=x1x2(x1−x2)(x12+x1x2+x22)Δ2=x1−x2 \\begin{align*} \\Delta_1 \u0026amp;= x_1^4x_2-x_1x_2^4=x_1x_2(x_1-x_2)(x_1^2+x_1x_2+x_2^2) \\\\ \\Delta_2 \u0026amp;= x_1-x_2 \\end{align*} Δ1​Δ2​​=x14​x2​−x1​x24​=x1​x2​(x1​−x2​)(x12​+x1​x2​+x22​)=x1​−x2​​となります。Δ1\\Delta_1Δ1​ は Δ2\\Delta_2Δ2​ で割り切れるので商を計算すると、Δ1/Δ2=x13x2+x12x22+x1x23\\Delta_1/\\Delta_2=x_1^3x_2+x_1^2x_2^2+x_1x_2^3Δ1​/Δ2​=x13​x2​+x12​x22​+x1​x23​ となります。これは上で計算した s(3,1)(x1,x2)s_{(3,1)}(x_1,x_2)s(3,1)​(x1​,x2​) と等しいです。\nこのように、シューア多項式は 2 つの行列式の比として定義することも可能です。α=(a1,a2,…,an)\\alpha=(a_1,a_2,\\ldots,a_n)α=(a1​,a2​,…,an​) に対して Aα(x1,x2,…,xn)=det⁡(xiaj)A_{\\alpha}(x_1,x_2,\\ldots,x_n)=\\det(x_i^{a_j})Aα​(x1​,x2​,…,xn​)=det(xiaj​​) とおきます。δn=(n−1,n−2,…,1,0)\\delta_n=(n-1,n-2,\\ldots,1,0)δn​=(n−1,n−2,…,1,0) とおき、λ+δn=(λ1+n−1,λ2+n−2,…,λn−1+1,λn)\\lambda+\\delta_n=(\\lambda_1+n-1,\\lambda_2+n-2,\\ldots,\\lambda_{n-1}+1,\\lambda_n)λ+δn​=(λ1​+n−1,λ2​+n−2,…,λn−1​+1,λn​) とするとき\nAλ+δn(x1,x2,…,xn)Aδn(x1,x2,…,xn) \\frac{A_{\\lambda+\\delta_n}(x_1,x_2,\\ldots,x_n)}{A_{\\delta_n}(x_1,x_2,\\ldots,x_n)} Aδn​​(x1​,x2​,…,xn​)Aλ+δn​​(x1​,x2​,…,xn​)​をシューア多項式の定義とすることもあります。2 つの定義が同値であることがわかれば、2 つの世界を行き来することで様々な性質がわかります。例えば、行列式の性質から xix_ixi​ と xjx_jxj​ を入れ替えると Aα(x1,x2,…,xn)A_{\\alpha}(x_1,x_2,\\ldots,x_n)Aα​(x1​,x2​,…,xn​) は −1-1−1 倍となるので、シューア多項式は分母分子で打ち消しあって不変となります。こちらの定義では対称多項式であることが簡単に示せます。\nなお Aδn(x1,…,xn)A_{\\delta_n}(x_1,\\ldots,x_n)Aδn​​(x1​,…,xn​) はヴァンデルモンドの行列式と呼ばれており\nAδn(x1,…,xn)=∏1≤i\u0026lt;j≤n(xi−xj) A_{\\delta_n}(x_1,\\ldots,x_n)=\\prod_{1\\le i\u0026lt;j\\le n}(x_i-x_j) Aδn​​(x1​,…,xn​)=1≤i\u0026lt;j≤n∏​(xi​−xj​)であることが知られています。\nヤコビ・トゥルーディ公式 # 定義の同値性を示す鍵となるのが次のヤコビ・トゥルーディ公式です。\n定理 (ヤコビ・トゥルーディ公式) sλ(x1,…,xn)=det⁡(hλi−i+j(x1,…,xn)) s_{\\lambda}(x_1,\\ldots,x_n)=\\det(h_{\\lambda_i-i+j}(x_1,\\ldots,x_n)) sλ​(x1​,…,xn​)=det(hλi​−i+j​(x1​,…,xn​)) ここで hk(x1,…,xn)h_k(x_1,\\ldots,x_n)hk​(x1​,…,xn​) は完全対称多項式で、次のように定義されます。\nhk(x1,…,xn)=∑1≤i1≤i2≤⋯≤ik≤nxi1xi2⋯xik h_k(x_1,\\ldots,x_n)=\\sum_{1\\le i_1\\le i_2\\le\\cdots\\le i_k\\le n}x_{i_1}x_{i_2}\\cdots x_{i_k} hk​(x1​,…,xn​)=1≤i1​≤i2​≤⋯≤ik​≤n∑​xi1​​xi2​​⋯xik​​ヤコビ・トゥルーディ公式の証明には LGV 公式を用います。\n定理 (LGV): 条件「i1\u0026lt;i2,j1\u0026gt;j2i_1\u0026lt;i_2, j_1\u0026gt;j_2i1​\u0026lt;i2​,j1​\u0026gt;j2​ ならば ai1a_{i_1}ai1​​ から bj1b_{j_1}bj1​​ へのパスと ai2a_{i_2}ai2​​ から bj2b_{j_2}bj2​​ へのパスは必ず交わる」を仮定する。このとき\ndet⁡M(a,b)=∑(P1,…,Pn)w(P1)⋯w(Pn) \\det M(a,b)=\\sum_{(P_1,\\ldots,P_n)}w(P_1)\\cdots w(P_n) detM(a,b)=(P1​,…,Pn​)∑​w(P1​)⋯w(Pn​)が成り立つ。ここで和は PiP_iPi​ が aia_iai​ から bib_ibi​ へのパスでどの 2 つも互いに交わらないもの全体をわたる。\nグラフを次のように構成します。V={(i,j)∈Z2∣1≤i≤(十分大きな値),1≤j≤n}V=\\{(i,j)\\in\\mathbb{Z}^2\\mid 1\\le i\\le \\text{(十分大きな値)}, 1\\le j\\le n\\}V={(i,j)∈Z2∣1≤i≤(十分大きな値),1≤j≤n} とし、(i,j)(i,j)(i,j) から (i+1,j)(i+1,j)(i+1,j) に重み xjx_jxj​ の辺を張り、(i,j)(i,j)(i,j) から (i,j+1)(i,j+1)(i,j+1) に重み 1 の辺を張ります。\nこのとき、∑P:(i,1)→(i+k,n)w(P)=hk(x1,…,xn)\\sum_{P:(i,1)\\to (i+k,n)}w(P)=h_k(x_1,\\ldots,x_n)∑P:(i,1)→(i+k,n)​w(P)=hk​(x1​,…,xn​) となります。\nai=(n+1−i,1),bi=(λi+n+1−i,n) (i=1,…,n)a_i=(n+1-i,1), b_i=(\\lambda_i+n+1-i, n) \\ (i=1,\\ldots,n)ai​=(n+1−i,1),bi​=(λi​+n+1−i,n) (i=1,…,n) とおくと、LGV 公式の左辺は det⁡(hλj−j+i)=det⁡(hλi−i+j)\\det(h_{\\lambda_j-j+i})=\\det(h_{\\lambda_i-i+j})det(hλj​−j+i​)=det(hλi​−i+j​) になります。\nパス Pi ⁣:ai→biP_i\\colon a_i\\to b_iPi​:ai​→bi​ について w(Pi)=xj1⋯xjk (j1≤j2≤⋯≤jk)w(P_i)=x_{j_1}\\cdots x_{j_k} \\ (j_1\\le j_2\\le \\cdots\\le j_k)w(Pi​)=xj1​​⋯xjk​​ (j1​≤j2​≤⋯≤jk​) のとき、iii 行目の数字を j1,…,jkj_1,\\ldots,j_kj1​,…,jk​ としたタブローを作ります。パスが互いに交わらないことはタブローの列の狭義増加性に対応します。よってこれは半標準タブローです。逆に半標準タブローから互いに交わらないパスの組を復元できるので、LGV 公式の右辺は ∑T∈SST(λ,n)x1c1⋯xncn=sλ(x1,…,xn)\\sum_{T\\in \\mathrm{SST}(\\lambda,n)}x_1^{c_1}\\cdots x_n^{c_n}=s_{\\lambda}(x_1,\\ldots,x_n)∑T∈SST(λ,n)​x1c1​​⋯xncn​​=sλ​(x1​,…,xn​) となります。\nこれでヤコビ・トゥルーディ公式が示されました。\n同値性の証明 # ai′=(n+1−i,i)a_i^{\\prime}=(n+1-i,i)ai′​=(n+1−i,i) とおくと、互いに交わらないパス Pi ⁣:ai→biP_i\\colon a_i\\to b_iPi​:ai​→bi​ において aia_iai​ から ai′a_i^{\\prime}ai′​ までまっすぐ上に進むことがわかります。aia_iai​ から ai′a_i^{\\prime}ai′​ までのパスの重みは 1 なので、始点を ai′a_i^{\\prime}ai′​ に変更しても影響なく、上の結果から det⁡M(a′,b)=sλ(x1,…,xn)\\det M(a^{\\prime},b)=s_{\\lambda}(x_1,\\ldots,x_n)detM(a′,b)=sλ​(x1​,…,xn​) となります。\n(i,j)(i,j)(i,j) から (i+1,j)(i+1,j)(i+1,j) への辺の重みを xj−xi+jx_j-x_{i+j}xj​−xi+j​ に変更します。ただし xn+1=xn+2=⋯=0x_{n+1}=x_{n+2}=\\cdots=0xn+1​=xn+2​=⋯=0 とします。ai′a_i^{\\prime}ai′​ から bib_ibi​ へのパスにおいて影響はないので、引き続き det⁡M(a′,b)=sλ(x1,…,xn)\\det M(a^{\\prime},b)=s_{\\lambda}(x_1,\\ldots,x_n)detM(a′,b)=sλ​(x1​,…,xn​) です。\nai′′=(1,i)a_i^{\\prime\\prime}=(1,i)ai′′​=(1,i) とします。このとき M(a′′,b)=M(a′′,a′)M(a′,b)M(a^{\\prime\\prime},b)=M(a^{\\prime\\prime},a^{\\prime})M(a^{\\prime},b)M(a′′,b)=M(a′′,a′)M(a′,b) が成り立ちます。\ndet⁡M(a′′,a′)=∏i\u0026lt;j(xi−xj)=Aδn(x1,…,xn)\\det M(a^{\\prime\\prime},a^{\\prime})=\\prod_{i\u0026lt;j}(x_i-x_j)=A_{\\delta_n}(x_1,\\ldots,x_n)detM(a′′,a′)=∏i\u0026lt;j​(xi​−xj​)=Aδn​​(x1​,…,xn​) となります。det⁡M(a′′,b)\\det M(a^{\\prime\\prime},b)detM(a′′,b) を計算するために次の式を用います。\n∑P:(1,t)→(m,n)w(P)=(xt−xn+1)(xt−xn+2)⋯(xt−xm+n−1) \\sum_{P:(1,t)\\to (m,n)}w(P)=(x_t-x_{n+1})(x_t-x_{n+2})\\cdots (x_t-x_{m+n-1}) P:(1,t)→(m,n)∑​w(P)=(xt​−xn+1​)(xt​−xn+2​)⋯(xt​−xm+n−1​)この式は m+nm+nm+n に関する帰納法でわかります。これより det⁡M(a′′,b)=det⁡(xiλj+n−j)=Aλ+δn(x1,…,xn)\\det M(a^{\\prime\\prime},b)=\\det(x_i^{\\lambda_j+n-j})=A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)detM(a′′,b)=det(xiλj​+n−j​)=Aλ+δn​​(x1​,…,xn​) となります。よって sλ(x1,…,xn)=Aλ+δn(x1,…,xn)/Aδn(x1,…,xn)s_{\\lambda}(x_1,\\ldots,x_n)=A_{\\lambda+\\delta_n}(x_1,\\ldots,x_n)/A_{\\delta_n}(x_1,\\ldots,x_n)sλ​(x1​,…,xn​)=Aλ+δn​​(x1​,…,xn​)/Aδn​​(x1​,…,xn​) が得られ、シューア多項式の 2 つの定義が同値であることがわかりました。\nおわりに # シューア多項式の基本的な部分を解説しました。まだまだ面白い話題がいっぱいあるので、今後の号でも取り上げる予定です。\n参考文献 # Prasad, Amritanshu. An introduction to Schur polynomials. Grad. J. Math. 4, No. 2, 62-84 (2019). Xiong, Rui. Schur Polynomials through Lindström Gessel Viennot Lemma, https://arxiv.org/abs/2003.09215 ","date":"2023-03-01","externalUrl":null,"permalink":"/natori/202303/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は組合せ論・対称関数論を中心に幅広く活躍するシューア多項式について語っていきます。\n","title":"【月刊組合せ論 Natori】シューア多項式とヤコビ・トゥルーディ公式【2023 年 3 月号】","type":"natori"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤコビの三重積公式とオイラーの五角数定理について説明します。個人的にかなり美しい等式だと思っています。\nヤコビの三重積公式 # 次の等式をヤコビの三重積公式といいます。\n∏i=1∞(1+xqi)(1+x−1qi−1)(1−qi)=∑n∈Zqn(n+1)/2xn \\prod_{i=1}^{\\infty}(1+xq^i)(1+x^{-1}q^{i-1})(1-q^i)=\\sum_{n\\in\\mathbb{Z}}q^{n(n+1)/2}x^n i=1∏∞​(1+xqi)(1+x−1qi−1)(1−qi)=n∈Z∑​qn(n+1)/2xn 左辺は無限積、右辺は無限和です。この 2 つが等号で結ばれているのは面白いですね。\n証明 # 証明方法は色々ありますが、組合せ論的なものを紹介します。\nf(x)=∏i=1∞(1+xqi)(1+x−1qi−1) f(x)=\\prod_{i=1}^{\\infty}(1+xq^i)(1+x^{-1}q^{i-1}) f(x)=i=1∏∞​(1+xqi)(1+x−1qi−1)とおきます。f(x)f(x)f(x) を展開したときの xnx^nxn の係数を cn=cn(q)c_n=c_n(q)cn​=cn​(q) とします。つまり\nf(x)=∑n∈Zcnxn f(x)=\\sum_{n\\in\\mathbb{Z}}c_nx^n f(x)=n∈Z∑​cn​xnです。このとき、f(xq)=1+x−1q−11+xqf(x)=x−1q−1f(x)f(xq)=\\frac{1+x^{-1}q^{-1}}{1+xq}f(x)=x^{-1}q^{-1}f(x)f(xq)=1+xq1+x−1q−1​f(x)=x−1q−1f(x) なので\n∑n∈Zcnxnqn=∑n∈Zcnxn−1q−1 \\sum_{n\\in\\mathbb{Z}}c_nx^nq^n=\\sum_{n\\in\\mathbb{Z}}c_nx^{n-1}q^{-1} n∈Z∑​cn​xnqn=n∈Z∑​cn​xn−1q−1となります。xnx^nxn の係数を比較して、cn+1=qn+1cnc_{n+1}=q^{n+1}c_ncn+1​=qn+1cn​ を得ます。1+2+⋯+n=n(n+1)21+2+\\cdots+n=\\frac{n(n+1)}{2}1+2+⋯+n=2n(n+1)​ なので、cn=qn(n+1)/2c0c_n=q^{n(n+1)/2}c_0cn​=qn(n+1)/2c0​ となります。あとは c0c_0c0​ を求めればよいです。c0c_0c0​ は f(x)f(x)f(x) の定数項なので、展開することで\nc0=∑qa1+⋯+an+b1+⋯+bn c_0=\\sum q^{a_1+\\cdots+a_n+b_1+\\cdots+b_n} c0​=∑qa1​+⋯+an​+b1​+⋯+bn​（ここで和は n≥0,1≤a1\u0026lt;⋯\u0026lt;an,0≤b1\u0026lt;⋯\u0026lt;bnn\\ge 0, 1\\le a_1\u0026lt;\\cdots\u0026lt;a_n, 0\\le b_1\u0026lt;\\cdots\u0026lt;b_nn≥0,1≤a1​\u0026lt;⋯\u0026lt;an​,0≤b1​\u0026lt;⋯\u0026lt;bn​ となるもの全体を動く）となります。数列 a,ba,ba,b の組は次のようにヤング図形と一対一に対応します。\nよって c0c_0c0​ は\nc0=∑λ:ヤング図形q∣λ∣=∑n=0∞p(n)qn c_0=\\sum_{\\lambda:\\text{ヤング図形}}q^{|\\lambda|}=\\sum_{n=0}^{\\infty}p(n)q^n c0​=λ:ヤング図形∑​q∣λ∣=n=0∑∞​p(n)qnとなることがわかりました。ここで p(n)p(n)p(n) はサイズ nnn のヤング図形の個数、すなわち分割数です。よく知られているように分割数の母関数は\nc0=∏i=1∞11−qi c_0=\\prod_{i=1}^{\\infty}\\frac{1}{1-q^i} c0​=i=1∏∞​1−qi1​となります。以上により、ヤコビの三重積公式が得られました。\nオイラーの五角数定理 # 次の等式をオイラーの五角数定理といいます。\n∏i=1∞(1−qi)=∑n∈Z(−1)nqn(3n+1)/2 \\prod_{i=1}^{\\infty}(1-q^i)=\\sum_{n\\in\\mathbb{Z}}(-1)^nq^{n(3n+1)/2} i=1∏∞​(1−qi)=n∈Z∑​(−1)nqn(3n+1)/2 左辺は分割数の母関数の逆数です。右辺には五角数が現れます。\nこの定理は競技プログラミングにおいても有用です。この問題で用いられます。\nこの定理はヤコビの三重積公式から証明することができます。新しい変数 zzz を用意し、ヤコビの三重積公式に q=z3,x=−z−1q=z^3, x=-z^{-1}q=z3,x=−z−1 を代入することで、左辺は\n∏i=1∞(1−z3i−1)(1−z3i−2)(1−z3i)=∏i=1∞(1−zi) \\prod_{i=1}^{\\infty}(1-z^{3i-1})(1-z^{3i-2})(1-z^{3i})=\\prod_{i=1}^{\\infty}(1-z^i) i=1∏∞​(1−z3i−1)(1−z3i−2)(1−z3i)=i=1∏∞​(1−zi)右辺は\n∑n∈Zz3n(n+1)/2(−z−1)n=∑n∈Z(−1)nzn(3n+1)/2 \\sum_{n\\in\\mathbb{Z}}z^{3n(n+1)/2}(-z^{-1})^n=\\sum_{n\\in\\mathbb{Z}}(-1)^nz^{n(3n+1)/2} n∈Z∑​z3n(n+1)/2(−z−1)n=n∈Z∑​(−1)nzn(3n+1)/2となり、オイラーの五角数定理が得られました。\nなお、組合せ論を用いて直接オイラーの五角数定理を証明することも可能です。英語版 Wikipedia をご覧ください。\n分割数 # 分割数 p(n)p(n)p(n) の母関数はオイラーの五角数定理の左辺の逆数であることから\n∑n=0∞p(n)xn=1∏i(1−xi)=1∑m∈Z(−1)mxm(3m+1)/2 \\sum_{n=0}^{\\infty}p(n)x^n=\\frac{1}{\\prod_{i}(1-x^i)}=\\frac{1}{\\sum_{m\\in\\mathbb{Z}}(-1)^mx^{m(3m+1)/2}} n=0∑∞​p(n)xn=∏i​(1−xi)1​=∑m∈Z​(−1)mxm(3m+1)/21​が得られます。この式から分割数の漸化式が得られるので、p(1),p(2),…,p(N)p(1),p(2),\\ldots,p(N)p(1),p(2),…,p(N) を時間計算量 O(NN)O(N\\sqrt{N})O(NN​) で計算できます。\nさらに形式的冪級数のテクニックを用いると O(Nlog⁡N)O(N\\log N)O(NlogN) に高速化することもできます。\nおわりに # ヤコビの三重積公式はまだまだ面白いことがたくさんありますが、今回は割愛させていただきます。またいつか書くかもしれません。\n今後も月刊組合せ論 Natori では様々なトピックを紹介していきたいと思います。応援のほどよろしくお願いします！\n参考文献 # Flajolet, Philippe; Sedgewick, Robert. Analytic combinatorics. Cambridge: Cambridge University Press (2009). ヤコビの三重積公式の証明を参考にした文献は忘れてしまいました……。\n","date":"2023-02-01","externalUrl":null,"permalink":"/natori/202302/","section":"月刊組合せ論 Natori","summary":"月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はヤコビの三重積公式とオイラーの五角数定理について説明します。個人的にかなり美しい等式だと思っています。\n","title":"【月刊組合せ論 Natori】ヤコビの三重積公式とオイラーの五角数定理【2023 年 2 月号】","type":"natori"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。あけましておめでとうございます。本年も月刊組合せ論 Natori をよろしくお願いいたします。新年一発目となる今回はヤング図形を扱っていきます。\nAdvent Calendar Contest 2022 # yukicoder の Advent Calendar Contest 2022 にて次の問題を出題しました。\nNo.2149 Vanitas Vanitatum\n広義単調増加な正整数列 (A1,A2,…,AN)(A_1,A_2,\\ldots,A_N)(A1​,A2​,…,AN​) が与えられます。以下の 222 種類の操作を考えます。\nAi≥2A_i\\ge 2Ai​≥2 となる添字 iii を 111 つ選び、AiA_iAi​ から 222 を引く。操作後も数列は広義単調増加でなければならない。 Ai=Ai+1≥1A_i=A_{i+1}\\ge 1Ai​=Ai+1​≥1 となる添字 iii を 111 つ選び、Ai,Ai+1A_i,A_{i+1}Ai​,Ai+1​ から 111 を引く。操作後も数列は広義単調増加でなければならない。 どちらの操作も行えなくなるまで操作を繰り返します。A1,A2,…,ANA_1,A_2,\\ldots,A_NA1​,A2​,…,AN​ をすべて 000 にする操作方法の数を 998244353998244353998244353 で割った余りを求めてください。\n例えば与えられた数列が (3,3)(3,3)(3,3) の場合\n(3,3)→(2,2)→(1,1)→(0,0)(3,3) \\to (2,2) \\to (1,1) \\to (0,0)(3,3)→(2,2)→(1,1)→(0,0) (3,3)→(2,2)→(0,2)→(0,0)(3,3) \\to (2,2) \\to (0,2) \\to (0,0)(3,3)→(2,2)→(0,2)→(0,0) (3,3)→(1,3)→(1,1)→(0,0)(3,3) \\to (1,3) \\to (1,1) \\to (0,0)(3,3)→(1,3)→(1,1)→(0,0) の 3 通りがあります。\n以下ではこの問題の数学的な背景を解説していきます。\n論文 # この問題は論文を読んで得た知識を競技プログラミング用に加工したものです。 の式 (8) にこの問題の答えとなる式が書かれています。詳しいことはよくわかっていませんが、代数幾何・数論・表現論・数理物理など様々な分野とかかわる論文です。\nマヤ図形 # 広義単調増加な正整数列を反転して分割（すなわち広義単調減少な正整数列）にしておきます。そしてヤング図形に変換します。\n与えられたヤング図形の境界線に注目して経路を得ます。直線状に並んだマス目の上に、上に進む部分と対応する場所に黒石を置いた図形を考えます。この図形をマヤ図形といいます。\n次のように厳密に定義することも可能です。λ=(λ1,…,λl)\\lambda=(\\lambda_1,\\ldots,\\lambda_l)λ=(λ1​,…,λl​) を分割とします。λl+1=λl+2=⋯=0\\lambda_{l+1}=\\lambda_{l+2}=\\cdots=0λl+1​=λl+2​=⋯=0 としておきます。このとき、数直線上の座標 λi−i\\lambda_i-iλi​−i に黒石を置いて得られる図形をマヤ図形といいます。上の図では λ=(6,3,2)\\lambda=(6,3,2)λ=(6,3,2) なので、座標 5,1,−1,−4,−5,−6,…5,1,-1,-4,-5,-6,\\ldots5,1,−1,−4,−5,−6,… に黒石が置かれます。十分左側ではすべてが黒石になり、十分右側ではすべてが空白となります。\nt-quotient # 問題文の 2 つの操作は、ヤング図形の言葉では縦向き又は横向きのドミノを抜く操作と対応します。マヤ図形では黒石を 2 つ左の空きスペースに動かすという操作に対応します。1 つ左が黒石か空きスペースかどうかで操作が 2 通りにわかれます。\nいま、マヤ図形を座標が偶数の部分と奇数の部分にわけます。すると操作は黒石を 1 つ左の空きスペースに動かすことに対応します。ヤング図形の言葉ではマスを 1 つ削除する操作と対応します。扱いやすくなった気がしますね。\n一般に ttt を 2 以上の整数とし、各 i=0,1,…,t−1i=0,1,\\ldots,t-1i=0,1,…,t−1 に対して、 mod t\\bmod{t}modt で iii と合同な数を座標にもつマスを取り出すことで ttt 個のマヤ図形からなる組が得られます。これを ttt-quotient といいます。\nt=3t=3t=3 の場合は次の図のようになります。\nt-core # ヤング図形でドミノを取り去る操作は、2-quotient を構成するマヤ図形の 1 つにおいて黒石を 1 つ左に動かす操作となります。\nこれを一般化すると、ttt-quotient を構成するマヤ図形の 1 つにおいて黒石を 1 つ左に動かす操作は、ヤング図形でサイズ ttt のリムフックと呼ばれる図形を取り去る操作になります。\nさて、ドミノを抜くことを一般化すると、サイズ ttt のリムフックを抜いていくことになります。\n操作を繰り返すと、これ以上リムフックを抜けないような図形になります。どのような順番で抜いても最後の図形は同じになることが示せます。この図形を ttt-core といいます。\n2-core は ∅,(1),(2,1),(3,2,1),…\\emptyset, (1), (2,1), (3,2,1),\\ldots∅,(1),(2,1),(3,2,1),… になります。階段状の図形です。\nフック長公式 # ここまでの流れをまとめると\n広義単調増加な正整数列をヤング図形に変換する さらにマヤ図形に変換する マヤ図形の 2-quotient を考える 2-quotient を構成する 2 つのマヤ図形から 2 つのヤング図形を得る となるので、おおむね次の問題が解ければよいことになります。\nヤング図形であるという性質を保ったまま 1 つずつマスを削除していく方法は何通りありますか。\nこれは標準ヤング盤の個数と等しいので、2022 年 9 月号でも少し触れたフック長公式を使うことで解くことができます。\nただし 2-core が空でない場合、答えは 0 通りであることに注意が必要です。\n対称群の指標表との関係 # 発展的な話として、この問題が対称群の表現論とも関係することに触れていきたいと思います。\nnnn 次対称群の指標表の値は 2 つの nnn の分割 λ,μ\\lambda,\\muλ,μ を用いて χλ(Cμ)\\chi_{\\lambda}(C_{\\mu})χλ​(Cμ​) のように表されます。χλ\\chi_{\\lambda}χλ​ は既約指標で CμC_{\\mu}Cμ​ は共役類です。\nここで μ=(2,2,…,2)\\mu=(2,2,\\ldots,2)μ=(2,2,…,2) としたときの χλ(Cμ)\\chi_{\\lambda}(C_{\\mu})χλ​(Cμ​) の絶対値が今回の問題の答えと等しくなります。\n対称群の指標表の値を求める方法としてムルナガン・中山の規則があり、これを用いて証明することができます。\nμ=(t,t,…,t)\\mu=(t,t,\\ldots,t)μ=(t,t,…,t) の場合に一般化することもできます。\nおわりに # 数学で勉強したことを競技プログラミングの問題として出題できて楽しかったです。またこのように知識をお届けしたいです。\n今年も月刊組合せ論 Natori を頑張って書いていきたいと思っているので、応援のほどよろしくお願いいたします。\n参考文献 # Eskin, Alex; Okounkov, Andrei. Pillowcases and quasimodular forms. Algebraic geometry and number theory. In Honor of Vladimir Drinfeld’s 50th birthday. Progress in Mathematics 253, 1-25 (2006). James, Gordon; Kerber, Adalbert. The representation theory of the symmetric group. Cambridge University Press (2009). Stanley, Richard P. Enumerative combinatorics. Volume 2. Cambridge University Press. (1999). 【大学数学】学校で習わない「自由な割り算」 - 箱の並びを割る, https://zenn.dev/339/articles/9ca3b883a85508 ","date":"2023-01-01","externalUrl":null,"permalink":"/natori/202301/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。あけましておめでとうございます。本年も月刊組合せ論 Natori をよろしくお願いいたします。新年一発目となる今回はヤング図形を扱っていきます。\n","title":"【月刊組合せ論 Natori】ヤング図形のコア【2023 年 1 月号】","type":"natori"},{"content":"","date":"2023-01-01","externalUrl":null,"permalink":"/tags/%E8%A1%A8%E7%8F%BE%E8%AB%96/","section":"Tags","summary":"","title":"表現論","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は 2022 年のフィールズ賞受賞者である June Huh 氏（許埈珥、ホ・ジュニとも書かれる）の業績を解説します。\n高校中退を経てフィールズ賞を受賞するなど、生い立ちも注目を集めていますが、組合せ論に業績が多いということで今回は業績に注目していきたいと思います。\n注意: 最先端の現代数学は非常に難解で、専門家にとっても解説することは難しい場合があります。それを素人である筆者が解説するのは無謀なことです。正確であるよう努めますが、誤りを含む可能性があります。正確な情報を知りたい方は提示される文献を参照してください。また誤りの指摘はいつでも受け付けます。\n業績をひとことで # フィールズ賞の受賞理由は次のようになっています。\nFor bringing the ideas of Hodge theory to combinatorics, the proof of the Dowling–Wilson conjecture for geometric lattices, the proof of the Heron–Rota–Welsh conjecture for matroids, the development of the theory of Lorentzian polynomials, and the proof of the strong Mason conjecture.\nすなわち\nホッジ理論のアイデアを組合せ論に導入した Dowling-Wilson 予想の証明 Heron-Rota-Welsh 予想の証明 ローレンツ多項式の理論の開発 強 Mason 予想の証明 が June Huh 氏の代表的な業績ということです。\nRead の予想 # 上のリストにはありませんが、まずは Read の予想について紹介します。その前にまず四色定理について説明します。\nグラフとは頂点と辺からなる図形です。辺は 2 つの頂点を結んでいます。以下、グラフといえば有限なものとします。\n平面グラフとは平面上に描かれた、辺が交差しないグラフのことです。例えば下のグラフは平面グラフです。\n下のグラフは平面グラフではありません。\nしかし、次のように頂点を移動すると平面グラフとなります。\nこのように頂点と辺の書き方を変えることで平面グラフとなるようなグラフのことを平面的グラフといいます。\nグラフの彩色とは、辺で結ばれている 2 頂点が同じ色にならないように頂点に色を塗ることです。例えば以下のグラフは 3 色で塗り分けることができます。\nnnn 色以下で塗り分けられるとき、nnn 彩色可能といいます。上のグラフは 3 彩色可能ですが、2 彩色可能ではありません。\n以上の準備の下で、四色定理を述べることができます。\n定理（四色定理） すべての平面的グラフは 4 彩色可能である。 四色定理に関連して、彩色多項式という概念が生まれました。グラフ GGG に対して、cG(n)c_G(n)cG​(n) を nnn 彩色の方法の数とします。cG(n)c_G(n)cG​(n) は nnn に関する多項式となることが知られており、彩色多項式と呼ばれます。\n例として以下の直線グラフの彩色多項式を求めてみましょう。\nまず左端は好きな色で塗れるので、nnn 通りあります。2 番目の頂点は異なる色で塗らなければならないので、n−1n-1n−1 通りあります。3 番目の頂点は 2 番目の頂点と異なる色なので、これも n−1n-1n−1 通りです。残りも同様なので、彩色多項式は\ncG(n)=n(n−1)5=n6−5n5+10n4−10n3+5n2−n c_G(n)=n(n-1)^5=n^6-5n^5+10n^4-10n^3+5n^2-n cG​(n)=n(n−1)5=n6−5n5+10n4−10n3+5n2−nとなります。\n四色定理を彩色多項式を用いて述べると、任意の平面的グラフ GGG に対して cG(4)\u0026gt;0c_G(4)\u0026gt;0cG​(4)\u0026gt;0 ということになります。\n前置きが長くなってしまいましたが、Read の予想について述べます。Read の予想は彩色多項式の係数から得られる数列に関する予想です。係数の絶対値を順に並べて数列を作ります。上の例では 1,5,10,10,5,11,5,10,10,5,11,5,10,10,5,1 となります。Read の予想は次のような予想です。\n予想 彩色多項式の係数の絶対値からなる数列は unimodal である。すなわちある場所まで単調増加で、その先では単調減少になる。 この予想は 40 年近く未解決でしたが、当時大学院生の June Huh 氏によって証明されました。実際に証明されたのは次のより強い定理です。\n定理 彩色多項式の係数の絶対値からなる数列は対数凹 (log-concave) である。すなわちすべての iii に対して ai2≥ai−1ai+1a_i^2\\ge a_{i-1}a_{i+1}ai2​≥ai−1​ai+1​ をみたす。 グラフが一直線の場合、この数列は二項係数 (n0),(n1),…,(nn)\\binom{n}{0},\\binom{n}{1},\\ldots,\\binom{n}{n}(0n​),(1n​),…,(nn​) となります。二項係数の数列が log-concave な数列の代表例です。\n証明は [5] をご覧ください。グラフ理論の問題でありながら、証明には代数幾何、特異点理論の手法が用いられています。\nちなみに、June Huh 氏は日本人のフィールズ賞受賞者である広中平祐氏と交流があり、代数幾何を教わっていました。突然代数幾何からグラフ理論に転向したように思うかもしれませんが、2 つの分野の関わりは他の数学者が示唆していたようです。\nHeron-Rota-Welsh 予想 # Heron-Rota-Welsh 予想は上述の Read の予想をマトロイド上に一般化したものです。マトロイドは数学の様々な場面で現れる性質を抽出したものです。マトロイドを定義する前にその性質を見ていきましょう。より詳しくは 【月刊組合せ論 Natori】マトロイドに入門しよう【2024 年 7 月号】 をご覧ください。\nグラフが森であるとは、サイクルを含まないことをいいます。特に連結な森を木といいます。\nX,YX,YX,Y がグラフ GGG の森であるような部分グラフで、辺の数は YYY より XXX の方が多いとします。このとき、XXX の辺であり YYY の辺でないようなある辺 eee について、YYY に eee を追加しても森のままとなります。\n一方、ベクトル空間においても似たような命題が成り立ちます。X,YX,YX,Y がベクトル空間 VVV の線形独立部分集合で、∣X∣\u0026gt;∣Y∣|X|\u0026gt;|Y|∣X∣\u0026gt;∣Y∣ とします。このとき、あるベクトル x∈X∖Yx\\in X\\setminus Yx∈X∖Y について Y∪{x}Y\\cup\\{x\\}Y∪{x} が線形独立となります。\n両者の性質を抽出したものがマトロイドです。\n有限集合 EEE とその部分集合族 I\\mathcal{I}I が次の条件をみたすとき、(E,I)(E,\\mathcal{I})(E,I) をマトロイドといいます。\n∅∈I\\emptyset\\in \\mathcal{I}∅∈I X∈I,Y⊂XX\\in \\mathcal{I}, Y\\subset XX∈I,Y⊂X ならば Y∈IY\\in \\mathcal{I}Y∈I X,Y∈I,∣X∣\u0026gt;∣Y∣X,Y\\in \\mathcal{I}, |X|\u0026gt;|Y|X,Y∈I,∣X∣\u0026gt;∣Y∣ ならばある x∈X∖Yx\\in X\\setminus Yx∈X∖Y について Y∪{x}∈IY\\cup\\{x\\}\\in \\mathcal{I}Y∪{x}∈I 例えばある行列 AAA に対して、EEE を AAA の列ベクトル全体、I\\mathcal{I}I を EEE の線形独立部分集合全体とすればマトロイドとなります。このようなマトロイドを表現可能 (representable) マトロイドと呼びます。\nこのようにマトロイドは独立性を扱う概念です。I\\mathcal{I}I の元のことを独立集合と呼びます。\nマトロイドから特性多項式 (characteristic polynomial) と呼ばれる多項式が定まります。特性多項式はマトロイドがグラフに由来する場合は彩色多項式と一致することが知られています。そこで、次のような予想が生まれました。\n予想 (Helon-Rota-Welsh) マトロイドの特性多項式の係数の絶対値からなる数列は log-concave である。 Read の予想を解決した論文で、マトロイドが標数 0 の体上で表現可能という条件の下では証明されていました。しかし一般の場合にはこの手法は力不足でした。一般のマトロイドはグラフやベクトル空間に由来するとは限らず、どのような性質を持つか謎に包まれていました。その後も部分的な進展はありましたが、完全解決にはなかなか至りませんでした。\n[1] において、Heron-Rota-Welsh 予想が証明されました。彼らはどのようなマトロイドにも背後には幾何学があることを明らかにしたのです。（幾何学を作り上げた、の方が適切かもしれません。）\nざっくり説明すると、マトロイドから「コホモロジー環」を作ることで証明されました。コホモロジーは次の性質をもつことが期待されます。\nPoincaré 双対性 hard Lefschetz 定理 Hodge-Riemann 関係 これらをケーラーパッケージ (Kähler package) と呼ぶそうです。\nマトロイドから作られた Chow ring と呼ばれるものがケーラーパッケージをみたすことを示し、Hodge-Riemann 関係から Heron-Rota-Welsh 予想を導くというのが論文での証明の流れのようです。\nこうして、マトロイドのホッジ理論は組合せ論と幾何学をつなぐ大きな理論となり、その後も「log-concave な数列の背後にはホッジ理論的な構造が存在する」という信念のもとに発展を続けます。\nDowling-Wilson 予想 # マトロイドにはランク関数と呼ばれる重要な関数があります。マトロイド (E,I)(E,\\mathcal{I})(E,I) のランク関数 rrr は EEE の部分集合に対し非負整数値を対応させる関数で\nr(X)=max⁡{∣Y∣:Y⊆X,Y∈I} r(X)=\\max\\{|Y|:Y\\subseteq X, Y\\in\\mathcal{I}\\} r(X)=max{∣Y∣:Y⊆X,Y∈I}により定義されるものです。これは劣モジュラ性という性質をみたすことが知られています。\nEEE の部分集合 XXX がフラットであるとは、すべての e∈E∖Xe\\in E\\setminus Xe∈E∖X に対して r(X∪{e})\u0026gt;r(X)r(X\\cup\\{e\\})\u0026gt;r(X)r(X∪{e})\u0026gt;r(X) をみたすことをいいます。ランクが iii のフラットの個数を WiW_iWi​ とおきます。\n次の予想は Dowling, Wilson の Top-Heavy 予想と呼ばれるものです。\n予想 (Dowling-Wilson) 0≤i≤j≤r(E)−i0\\le i\\le j\\le r(E)-i0≤i≤j≤r(E)−i に対して Wi≤WjW_i\\le W_jWi​≤Wj​ をみたす。 証明は [2] で与えられました。証明には上述の\nPoincaré 双対性 hard Lefschetz 定理 Hodge-Riemann 関係 が登場します。\nなお、数列 W0,W1,…,Wr(E)W_0,W_1,\\ldots,W_{r(E)}W0​,W1​,…,Wr(E)​ は log-concave であることが予想されていますが、こちらは未解決のままのようです。\n強 Mason 予想 # MMM を nnn 元集合上のマトロイドとし、Ik(M)I_k(M)Ik​(M) を MMM の kkk 元独立集合の個数とします。例えば MMM が nnn 次単位行列から定まるマトロイドのとき、任意に kkk 個の列ベクトルを選ぶと線形独立となっているので、Ik(M)=(nk)I_k(M)=\\binom{n}{k}Ik​(M)=(kn​) です。log-concave 性が期待できますね。実際にはより強い次の予想がありました。\n予想 (Mason) Ik(M)2(nk)2≥Ik+1(M)(nk+1)Ik−1(M)(nk−1) \\frac{I_k(M)^2}{\\binom{n}{k}^2}\\ge \\frac{I_{k+1}(M)}{\\binom{n}{k+1}}\\frac{I_{k-1}(M)}{\\binom{n}{k-1}} (kn​)2Ik​(M)2​≥(k+1n​)Ik+1​(M)​(k−1n​)Ik−1​(M)​ この予想はローレンツ多項式の理論を用いて証明されました。ローレンツ多項式は [3] で導入されました。定義は読んでもよくわからなかったのでここには書きません。\nあとがき # unimodal な数列という素朴な対象から、これほどまでに奥深い数学が広がっているとは思いもよりませんでした。世界がつながるのはいつ見ても面白いです。\nマトロイドや log-concave 数列についてはまだまだ奥が深そうなので今後の号でも取り上げたいと思っています。\nこの記事を公開してから時間が経ちましたが、June Huh 氏は新たに魅力的な論文を複数発表しています。そちらも解説したいです。\nこれから現代数学がますます発展していくことを期待しています。\n参考文献 # まずは一般向けに書かれた以下の記事をおススメします。\nA Path Less Taken to the Peak of the Math World He Dropped Out to Become a Poet. Now He’s Won a Fields Medal. また、フィールズ賞受賞者を決める ICM による解説も業績がまとまっていておススメです。\nhttps://www.mathunion.org/imu-awards/fields-medal/fields-medals-2022 数学セミナー 2023 年 1 月号でフィールズ賞受賞者の業績が特集されました。そちらも読んでみましょう。\nAdiprasito, Karim; Huh, June; Katz, Eric. Hodge theory for combinatorial geometries. Ann. Math. (2) 188, No. 2, 381-452 (2018). Tom Braden, June Huh, Jacob P. Matherne, Nicholas Proudfoot, Botong Wang, Singular Hodge theory for combinatorial geometries, https://arxiv.org/abs/2010.06088 Brändén, Petter; Huh, June. Lorentzian polynomials. Ann. Math. 192, No. 3, 821-891 (2020). Essence of independence: Hodge theory of matroids since June Huh. Bull. Am. Math. Soc., New Ser. 61, No. 1, 73-102 (2024). Huh, June. Milnor numbers of projective hypersurfaces and the chromatic polynomial of graphs. J. Am. Math. Soc. 25, No. 3, 907-927 (2012). Pitsoulis, Leonidas S. Topics in matroid theory. SpringerBriefs in Optimization. New York, NY: Springer. xiv, 127 p. (2014). ","date":"2022-12-01","externalUrl":null,"permalink":"/natori/202212/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回は 2022 年のフィールズ賞受賞者である June Huh 氏（許埈珥、ホ・ジュニとも書かれる）の業績を解説します。\n","title":"【月刊組合せ論 Natori】June Huh 氏の業績を解説【2022 年 12 月号】","type":"natori"},{"content":"","date":"2022-12-01","externalUrl":null,"permalink":"/tags/%E3%82%B0%E3%83%A9%E3%83%95%E7%90%86%E8%AB%96/","section":"Tags","summary":"","title":"グラフ理論","type":"tags"},{"content":"","date":"2022-12-01","externalUrl":null,"permalink":"/tags/%E3%83%9E%E3%83%88%E3%83%AD%E3%82%A4%E3%83%89/","section":"Tags","summary":"","title":"マトロイド","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回の主役は交代符号行列です。\n交代符号行列 # 交代符号行列は正方行列であって、成分が 0,1,−10,1,-10,1,−1 のいずれかであり、次の条件を満たすものです。\n各行・各列の和は 1 各行・各列の 0 でない成分は符号が交互に変わる 例を見てみましょう。\n(01000001001−100101−11000100) \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \\\\ 1 \u0026amp; -1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; -1 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \u0026amp; 0 \\end{pmatrix} ​00100​10−110​010−11​00010​00100​​3 行目は 1,−1,0,0,11,-1,0,0,11,−1,0,0,1 となっており、和は 1 で、0 でない成分に注目するとプラスとマイナスが交互に現れています。\n3 次の交代符号行列をすべて求めてみると、次の 7 通りがあることがわかります。\n(100010001),(100001010),(010100001),(001010100),(010001100),(001100010),(0101−11010) \\begin{align*} \\begin{pmatrix} 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\end{pmatrix}, \\begin{pmatrix} 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\end{pmatrix},\\\\ \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; -1 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix} \\end{align*} ​100​010​001​​,​100​001​010​​,​010​100​001​​,​001​010​100​​,​001​100​010​​,​010​001​100​​,​010​1−11​010​​​7 つのうち 6 つは置換行列（各行各列に 1 が一つだけあり、その他が 0 である行列）です。一般に置換行列は交代符号行列となっているので、置換行列の一般化であるとみなせます。\nなぜこのような行列を考えるのでしょうか。そのルーツは、ルイス・キャロルにあります。\nルイス・キャロル # ルイス・キャロルはイギリスの作家で、代表作に「不思議の国のアリス」などがあります。ルイス・キャロルはペンネームで、本名をチャールズ・ラトウィッジ・ドジソンといいます。\n実はドジソンは数学者でもありました。今回は数学者としての業績に注目していきます。\nDodgson condensation # Dodgson condensation は行列式を求めるアルゴリズムです。2×22\\times 22×2 行列の行列式は\n∣abcd∣=ad−bc \\begin{vmatrix} a \u0026amp; b \\\\ c \u0026amp; d \\end{vmatrix}=ad-bc ​ac​bd​​=ad−bcです。一般の n×nn\\times nn×n 行列の行列式を、2×22\\times 22×2 行列式だけを用いて計算することができます。\nDodgson condensation は次のようなアルゴリズムです。\nはじめ、A=(ai,j)A=(a_{i,j})A=(ai,j​) を与えられた n×nn\\times nn×n 行列、B=(bi,j)B=(b_{i,j})B=(bi,j​) をすべての成分が 1 の (n−1)×(n−1)(n-1)\\times (n-1)(n−1)×(n−1) 行列とする。 (n−1)×(n−1)(n-1)\\times (n-1)(n−1)×(n−1) 行列 A′=(ai,j′)A^{\\prime}=(a^{\\prime} _ {i,j})A′=(ai,j′​)、(n−2)×(n−2)(n-2)\\times (n-2)(n−2)×(n−2) 行列 B′=(bi,j′)B^{\\prime}=(b^{\\prime}_{i,j})B′=(bi,j′​) を次のように定める。 ai,j′=(ai,jai+1,j+1−ai,j+1ai+1,j)/bi,ja_{i,j}^{\\prime}=(a_{i,j}a_{i+1,j+1}-a_{i,j+1}a_{i+1,j})/b_{i,j}ai,j′​=(ai,j​ai+1,j+1​−ai,j+1​ai+1,j​)/bi,j​ bi,j′=ai+1,j+1b_{i,j}^{\\prime}=a_{i+1,j+1}bi,j′​=ai+1,j+1​ (A,B)(A,B)(A,B) を (A′,B′)(A^{\\prime},B^{\\prime})(A′,B′) で置き換える。 この操作を AAA が 1×11\\times 11×1 行列になるまで繰り返す。 このときの AAA の要素が行列式である。 ai,j′a_{i,j}^{\\prime}ai,j′​ の計算に 2×22\\times 22×2 行列式が使われています。\n試しに\nA=(123−1−212032211−1−32) A=\\begin{pmatrix} 1 \u0026amp; 2 \u0026amp; 3 \u0026amp; -1 \\\\ -2 \u0026amp; 1 \u0026amp; 2 \u0026amp; 0 \\\\ 3 \u0026amp; 2 \u0026amp; 2 \u0026amp; 1 \\\\ 1 \u0026amp; -1 \u0026amp; -3 \u0026amp; 2 \\end{pmatrix} A=​1−231​212−1​322−3​−1012​​の行列式を求めてみましょう。はじめ\nA=(123−1−212032211−1−32),B=(111111111) A=\\begin{pmatrix} 1 \u0026amp; 2 \u0026amp; 3 \u0026amp; -1 \\\\ -2 \u0026amp; 1 \u0026amp; 2 \u0026amp; 0 \\\\ 3 \u0026amp; 2 \u0026amp; 2 \u0026amp; 1 \\\\ 1 \u0026amp; -1 \u0026amp; -3 \u0026amp; 2 \\end{pmatrix} ,B=\\begin{pmatrix} 1 \u0026amp; 1 \u0026amp; 1 \\\\ 1 \u0026amp; 1 \u0026amp; 1 \\\\ 1 \u0026amp; 1 \u0026amp; 1 \\end{pmatrix} A=​1−231​212−1​322−3​−1012​​,B=​111​111​111​​です。操作を行うと次のようになります。\nA=(512−7−22−5−47),B=(1222) A=\\begin{pmatrix} 5 \u0026amp; 1 \u0026amp; 2 \\\\ -7 \u0026amp; -2 \u0026amp; 2 \\\\ -5 \u0026amp; -4 \u0026amp; 7 \\end{pmatrix} ,B=\\begin{pmatrix} 1 \u0026amp; 2 \\\\ 2 \u0026amp; 2 \\end{pmatrix} A=​5−7−5​1−2−4​227​​,B=(12​22​)再び操作を行うと\nA=(−339−3),B=(−2) A=\\begin{pmatrix} -3 \u0026amp; 3 \\\\ 9 \u0026amp; -3 \\end{pmatrix} ,B=(-2) A=(−39​3−3​),B=(−2)再び操作を行うと\nA=(9),B=() A=(9), B=() A=(9),B=()となりました。こうして得られた 9 が元の行列 AAA の行列式です。信じられない方は検算してみましょう。\nただし BBB の要素に 0 が現れてしまう場合があり、この場合は計算ができません。行や列を入れ替えることで計算ができるようになる場合があります。\n行列式 # 行列式と置換行列にはかかわりがあります。行列式の定義は\ndet⁡(A)=∑σ∈Snsgn⁡(σ)a1σ(1)⋯anσ(n) \\det(A)=\\sum_{\\sigma\\in S_n}\\operatorname{sgn}(\\sigma)a_{1\\sigma(1)}\\cdots a_{n\\sigma(n)} det(A)=σ∈Sn​∑​sgn(σ)a1σ(1)​⋯anσ(n)​です。(i,σ(i))(i,\\sigma(i))(i,σ(i)) 成分を 1 とし、その他の成分を 0 とした n×nn\\times nn×n 行列を考えるとこれは置換行列となります。置換と置換行列は一対一に対応します。\n2×2 行列式の一般化 # 2×22\\times 22×2 の行列式は ad−bcad-bcad−bc でした。これを ad+λbcad+\\lambda bcad+λbc に置き換えて Dodgson condensation を行うとどうなるでしょう。3×33\\times 33×3 の場合に計算してみましょう。まず\nA=(a11a12a13a21a22a23a31a32a33),B=(1111) A=\\begin{pmatrix} a_{11} \u0026amp; a_{12} \u0026amp; a_{13} \\\\ a_{21} \u0026amp; a_{22} \u0026amp; a_{23} \\\\ a_{31} \u0026amp; a_{32} \u0026amp; a_{33} \\end{pmatrix} ,B=\\begin{pmatrix} 1 \u0026amp; 1 \\\\ 1 \u0026amp; 1 \\end{pmatrix} A=​a11​a21​a31​​a12​a22​a32​​a13​a23​a33​​​,B=(11​11​)とします。操作を行うと\nA=(a11a22+λa12a21a12a23+λa13a22a21a32+λa22a31a22a33+λa23a32),B=(a22) A=\\begin{pmatrix} a_{11}a_{22}+\\lambda a_{12}a_{21} \u0026amp; a_{12}a_{23}+\\lambda a_{13}a_{22} \\\\ a_{21}a_{32}+\\lambda a_{22}a_{31} \u0026amp; a_{22}a_{33}+\\lambda a_{23}a_{32} \\end{pmatrix}, B=(a_{22}) A=(a11​a22​+λa12​a21​a21​a32​+λa22​a31​​a12​a23​+λa13​a22​a22​a33​+λa23​a32​​),B=(a22​)となります。よって\n[(a11a22+λa12a21)(a22a33+λa23a32)+λ(a12a23+λa13a22)(a21a32+λa22a31)]/a22=a11a22a33+λa12a21a33+λa11a23a32+(λ2+λ)a12a21a23a32/a22+λ2a13a21a32+λ2a12a23a31+λ3a13a22a31 \\begin{align*} \u0026amp; [(a_{11}a_{22}+\\lambda a_{12}a_{21})(a_{22}a_{33}+\\lambda a_{23}a_{32})+\\lambda(a_{12}a_{23}+\\lambda a_{13}a_{22})(a_{21}a_{32}+\\lambda a_{22}a_{31})]/a_{22} \\\\ \u0026amp;= a_{11}a_{22}a_{33}+\\lambda a_{12}a_{21}a_{33}+\\lambda a_{11}a_{23}a_{32} \\\\ \u0026amp;+(\\lambda^2+\\lambda)a_{12}a_{21}a_{23}a_{32}/a_{22}\\\\ \u0026amp;+\\lambda^2 a_{13}a_{21}a_{32}+\\lambda^2 a_{12}a_{23}a_{31}+\\lambda^3 a_{13}a_{22}a_{31} \\end{align*} ​[(a11​a22​+λa12​a21​)(a22​a33​+λa23​a32​)+λ(a12​a23​+λa13​a22​)(a21​a32​+λa22​a31​)]/a22​=a11​a22​a33​+λa12​a21​a33​+λa11​a23​a32​+(λ2+λ)a12​a21​a23​a32​/a22​+λ2a13​a21​a32​+λ2a12​a23​a31​+λ3a13​a22​a31​​が答えとなります。λ=−1\\lambda=-1λ=−1 の場合が通常の行列式なので、a12a21a23a32/a22a_{12}a_{21}a_{23}a_{32}/a_{22}a12​a21​a23​a32​/a22​ という式が隠れていたということになります。\n∏i,jaijcij\\prod_{i,j}a_{ij}^{c_{ij}}∏i,j​aijcij​​ という項に対して、C=(cij)C=(c_{ij})C=(cij​) という行列を対応させます。すると上の式から得られる行列は次の 7 通りです。\n(100010001),(010100001),(100001010),(0101−11010),(001100010),(010001100),(001010100) \\begin{align*} \\begin{pmatrix} 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\end{pmatrix}, \\begin{pmatrix} 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; -1 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix},\\\\ \\begin{pmatrix} 0 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\end{pmatrix}, \\begin{pmatrix} 0 \u0026amp; 0 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 0 \\\\ 1 \u0026amp; 0 \u0026amp; 0 \\end{pmatrix} \\end{align*} ​100​010​001​​,​010​100​001​​,​100​001​010​​,​010​1−11​010​​,​010​001​100​​,​001​100​010​​,​001​010​100​​​勘のいい方はお気づきかもしれませんが、これらは交代符号行列となっています。こうして、Dodgson condensation の一般化から交代符号行列が生まれたというわけです。\n交代符号行列予想 # n×nn\\times nn×n の交代符号行列がいくつあるかという問題が次に生まれました。n=3n=3n=3 の場合は 7 つです。調べてみると、1,2,7,42,429,…1,2,7,42,429,\\ldots1,2,7,42,429,… という数列になります。これは OEIS（オンライン整数列大辞典）の A005130 です。\n一般項は次のように表されるのではないかという予想がなされました。\n交代符号行列予想 n×nn\\times nn×n の交代符号行列の個数は\n∏j=0n−1(3j+1)!(n+j)! \\prod_{j=0}^{n-1}\\frac{(3j+1)!}{(n+j)!} j=0∏n−1​(n+j)!(3j+1)!​に等しい。\nきれいな形をしています。いかにも組合せ論的に証明できそうな雰囲気がありますが、実は非常に難しい予想だったのです。\n個数の等しいオブジェクト # 交代符号行列の個数は\n∏j=0n−1(3j+1)!(n+j)! \\prod_{j=0}^{n-1}\\frac{(3j+1)!}{(n+j)!} j=0∏n−1​(n+j)!(3j+1)!​に等しいと予想されましたが、個数がこの式に等しいオブジェクトが他にもあります。\nDescending Plane Partition # まずは Descending Plane Partition (DPP) を紹介します。次のようなものが例になっています。\n(877721554332) \\begin{pmatrix} 8 \u0026amp; 7 \u0026amp; 7 \u0026amp; 7 \u0026amp; 2 \u0026amp; 1 \\\\ \u0026amp; 5 \u0026amp; 5 \u0026amp; 4 \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; 3 \u0026amp; 3 \u0026amp; \u0026amp; \\\\ \u0026amp; \u0026amp; \u0026amp; 2 \u0026amp; \u0026amp; \\\\ \\end{pmatrix} ​8​75​753​7432​2​1​​DPP は左端から 1 つずつずらして並べた数の配列であって次の条件を満たすものです。\n各行について広義単調減少 各列について狭義単調減少 各行にある数の個数はその行の最大値より小さく、次の行の最大値以上 数が 3 以下である DPP を列挙しましょう。\n空 222 333 3 13 \\ 13 1 3 23 \\ 23 2 3 33 \\ 33 3 332\\begin{matrix} 3 \u0026amp; 3 \\\\ \u0026amp; 2\\end{matrix}3​32​ 7 つあります。3×33 \\times 33×3 の交代符号行列の個数と等しいです。\nTSSCPP # 平面分割は 3 次元ヤング図形とも呼ばれます。座標 (i,j,k)(i,j,k)(i,j,k) に箱が置かれているとき、(i,j,k)(i,j,k)(i,j,k) の任意の並べ替え (i′,j′,k′)(i\u0026#x27;,j\u0026#x27;,k\u0026#x27;)(i′,j′,k′) に対してこの座標にも箱が置かれているような平面分割を totally symmetric といいます。\n2n×2n×2n2n \\times 2n \\times 2n2n×2n×2n の領域内の平面分割を考えます。この平面分割が self-complementary とは、補集合を考えて得られる平面分割が元の平面分割と等しいことをいいます。2 つの条件を満たす平面分割を totally symmetric self-complementary plane partition (TSSCPP) といいます。\n2n×2n×2n2n \\times 2n \\times 2n2n×2n×2n の領域内にある TSSCPP の個数は交代符号行列の個数と等しくなります。上の図は n=3n=3n=3 の場合の例です。n=3n=3n=3 の場合の TSSCPP は上の図を含めて 7 個あります。\n証明 # DPP や TSSCPP の個数は知られていましたが、交代符号行列の個数がこれらに等しいことの証明は長らく得られていませんでした。\n交代符号行列予想の最初の証明は Zeilberger [7] により与えられました。80 ページほどある長い論文です。その上、読んでみるとわかるように他の論文ではあまり見られない書かれ方です。\n四角い氷 # Zeilberger による証明の後、Kuperberg により短い証明 [6] が発表されました。\n次のような図を考えてみましょう。\n平面上に水素原子と酸素原子が並んでいて、線でつないで H2O\\mathrm{H}_2\\mathrm{O}H2​O を作ります。これは square ice と呼ばれています。\nsquare ice の H2O\\mathrm{H}_2\\mathrm{O}H2​O に次のような操作を行いましょう。\n折れ曲がっている　→　000 横向き　→　+1+1+1 縦向き　→　−1-1−1 この操作を行うと次の行列が得られます。\n(1000001001−110010) \\begin{pmatrix} 1 \u0026amp; 0 \u0026amp; 0 \u0026amp; 0 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\\\ 0 \u0026amp; 1 \u0026amp; -1 \u0026amp; 1 \\\\ 0 \u0026amp; 0 \u0026amp; 1 \u0026amp; 0 \\end{pmatrix} ​1000​0010​01−11​0010​​おわかりいただけたでしょうか。そう、交代符号行列です。実は交代符号行列と square ice は一対一に対応します。\nsquare ice は 6 頂点模型と呼ばれるものと関連します。このように交代符号行列は物理とも関連します。実際、Kuperberg による交代符号行列予想の別証明も物理学的なものでした。\n組合せ論的証明 # 交代符号行列予想は証明されましたが、Combinatorialist は組合せ論的な証明を追求したくなるものです。\nDPP の場合には組合せ論的証明が存在します。\n詳しい説明は省きますが、図のように DPP と非交差経路の組が対応します。2022 年 9 月号でも紹介した LGV 公式を用いることで、DPP の個数が\ndet⁡(δij+(i+jj−1))i,j=1n−1 \\det\\left(\\delta_{ij}+\\binom{i+j}{j-1}\\right)_{i,j=1}^{n-1} det(δij​+(j−1i+j​))i,j=1n−1​（ここで δij\\delta_{ij}δij​ はクロネッカーのデルタ）になることがわかり、計算することで望みの式が得られるらしいです。（筆者は計算していません）\nということで DPP の場合には組合せ論的証明がありました。交代符号行列の場合はどうでしょう。交代符号行列と DPP の間に全単射を構成できれば、組合せ論的証明ができたことになります。もちろん物理学的証明により個数が等しいことがわかっているので、全単射は存在します。全単射なら何でもよいというわけではなく、組合せ論的に「いい感じ」の全単射でないと喜べないわけです。\nこの問題は長らく未解決でしたが、最近になって論文 [4], [5] が発表されました。はじめての全単射的証明とのことです。\nおわりに # 交代符号行列を通じて組合せ論の奥深さを感じていただけたでしょうか。他にも興味深いことがたくさんあるので、ぜひ調べてみてください。\n今後も月刊組合せ論 Natori では様々なトピックを紹介していきたいと思います。応援のほどよろしくお願いします！\n参考文献 # 交代符号行列について詳しく知りたい方は [2] を読みましょう。代数的組合せ論について基礎から丁寧に解説されています。\nBehrend, Roger. The Combinatorics of Alternating Sign Matrices, https://www.math.okayama-u.ac.jp/~mi/comb2018/talks/feb20/Behrend20180220final.pdf Bressoud, David M. Proofs and confirmations. The story of the alternating sign matrix conjecture. Cambridge University Press. xv, 274 p. (1999). Bressoud, David; Propp, James. How the Alternating Sign Matrix Conjecture Was Solved. Notices Am. Math. Soc. 1999. Fischer, Ilse; Konvalinka, Matjaž. A bijective proof of the ASM theorem. I: The operator formula. Electron. J. Comb. 27, No. 3, Research Paper P3.35, 29 p. (2020). Fischer, Ilse; Konvalinka, Matjaž. A bijective proof of the ASM theorem. II: ASM enumeration and ASM-DPP relation. Int. Math. Res. Not. 2022, No. 10, 7203-7230 (2022) Kuperberg, Greg. Another proof of the alternating-sign matrix conjecture. Int. Math. Res. Not. 1996, No. 3, 139-150 (1996). Zeilberger, Doron. Proof of the alternating sign matrix conjecture. Electron. J. Comb. 3, No. 2, Research paper R13, 84 p. (1996); ","date":"2022-11-01","externalUrl":null,"permalink":"/natori/202211/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回の主役は交代符号行列です。\n","title":"【月刊組合せ論 Natori】ルイス・キャロルと交代符号行列【2022 年 11 月号】","type":"natori"},{"content":"","date":"2022-11-01","externalUrl":null,"permalink":"/tags/%E7%B7%9A%E5%BD%A2%E4%BB%A3%E6%95%B0/","section":"Tags","summary":"","title":"線形代数","type":"tags"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はグラフ理論を用いて正多面体を調べます。\n正多面体 # みなさんは正多面体の定義を言えますか？\n「すべての面が合同な正多角形である立体」ではありません。双三角錐はすべての面が合同な正三角形ですが、正多面体ではありません。\n正多面体とは\nすべての面が合同な正多角形 どの頂点に集まる面の数も同じ 凸である をみたす立体です。\n正多面体は 5 種類存在します。正四面体、正六面体（立方体）、正八面体、正十二面体、正二十面体です。\n正多面体が 5 種類しか存在しないことを証明します。展開図において 1 つの頂点の周りに集まる角度の和を考えるのが有名な証明ですが、ここではグラフ理論を使って証明します。\nグラフ # グラフは頂点と辺で構成されるものです。辺は 2 つの頂点を結ぶ線です。\n頂点の集合を VVV、辺の集合を EEE と書きます。組 (V,E)(V,E)(V,E) をグラフと呼びます。\n平面グラフとは平面上に描かれた、辺が交差しないグラフのことです。例えば下のグラフは平面グラフです。\n下のグラフは平面グラフではありません。\n平面グラフの辺は直線だけでなく、曲線を使ってもよいです。上のグラフは辺を曲線にすることで平面グラフにすることが可能です。\n正多面体の頂点と辺からグラフを作ります。これを変形すると平面グラフにすることが可能です。正多面体の面を 1 つ外し、そこからぐいーっと引き延ばして平面に伸ばすイメージです。\n握手補題 # ある頂点 vvv から伸びる辺の数を vvv の次数といい、deg⁡(v)\\deg(v)deg(v) で表します。このとき\n∑v∈Vdeg⁡(v)=2∣E∣ \\sum_{v\\in V}\\deg(v)=2|E| v∈V∑​deg(v)=2∣E∣が成り立ちます。この等式を握手補題といいます。vvv と www を結ぶ辺があったとき、この辺は deg⁡(v)\\deg(v)deg(v) と deg⁡(w)\\deg(w)deg(w) で 2 回現れていると考えれば証明できます。簡単に証明できる補題ですが、結構有用です。\nオイラーの公式 # 連結平面グラフ (V,E)(V,E)(V,E) の頂点数を ∣V∣|V|∣V∣、辺数を ∣E∣|E|∣E∣、領域数を fff とすると、∣V∣−∣E∣+f=2|V|-|E|+f=2∣V∣−∣E∣+f=2 が成り立ちます。これはオイラーの公式と呼ばれています。\n例えば上のグラフでは頂点数は 5、辺数は 6、領域数は 3 です。（外側も領域に数えることに注意します。）このとき 5−6+3=25-6+3=25−6+3=2 が確かに成り立っています。\n証明 辺の数 ∣E∣|E|∣E∣ に関する帰納法を用います。辺の数が 0 のとき、連結性より頂点数は 1 であり、領域数は 1 なのでよいです。\nグラフに閉路がない場合、このグラフは木となります。よって ∣V∣=∣E∣+1|V|=|E|+1∣V∣=∣E∣+1 となります。（これも帰納法で示せます。）領域数は 1 なので、∣V∣−∣E∣+f=2|V|-|E|+f=2∣V∣−∣E∣+f=2 となります。\nグラフに閉路がある場合を考えます。閉路に含まれる辺 eee を 1 つ選びます。グラフから eee を取り除いても連結なままなので、帰納法の仮定が使えます。辺 eee を取り除いたグラフに eee を加えることで、辺の数は 1 つ増え、領域の数も 1 つ増えます。よって ∣V∣−∣E∣+f|V|-|E|+f∣V∣−∣E∣+f の値は変わらず 2 となります。\n補足 以上でオイラーの公式が示せましたが、1 つだけ注意します。証明の中の「辺 eee を加えると領域の数が 1 つ増える」という部分は直感的には自明ですが、ここでは「閉曲線は平面を内部と外部に分ける」という事実が用いられています。これはジョルダン曲線定理と呼ばれており、見た目の簡単さに比べて証明は大変であることが知られています。 証明 # オイラーの公式を用いて正多面体が 5 種類であることを証明します。\nどの頂点に対しても次数は等しいので、これを ddd とします。面は正 kkk 角形であるとします。頂点数を nnn、辺数を mmm、領域数を fff とします。\n握手補題より dn=2mdn=2mdn=2m です。また各辺はちょうど 2 つの領域と接するので 2m=kf2m=kf2m=kf となります。（これは双対グラフの握手補題とみなせます。）\nオイラーの公式より 2=n−m+f2=n-m+f2=n−m+f となるので、上の式と合わせて 1d+1k=12+1m\\frac{1}{d}+\\frac{1}{k}=\\frac{1}{2}+\\frac{1}{m}d1​+k1​=21​+m1​ を得ます。ここで d,k≥3d,k\\ge 3d,k≥3 および 1m\u0026gt;0\\frac{1}{m}\u0026gt;0m1​\u0026gt;0 より、d,kd,kd,k の少なくとも一方は 3 に等しいことがわかります。d=3d=3d=3 ならば k∈{3,4,5}k\\in \\{3,4,5\\}k∈{3,4,5}、k=3k=3k=3 ならば d∈{3,4,5}d\\in \\{3,4,5\\}d∈{3,4,5} となるので、(d,k)(d,k)(d,k) の組は 5 通りです。これらが正多面体と対応することは読者の演習問題とします。\nおわりに # 正多面体が 5 種類であることをグラフ理論を用いて証明しました。筆者が初めてグラフ理論を勉強したときに面白いと思った内容なので、面白さが伝われば幸いです。\n筆者が初めて使用したグラフ理論の本は [3] です。英語の本ですが高度な予備知識は必要ないので読みやすいと思います。\nWeb 記事 [1] ではグラフ理論を用いた証明の他に、展開図における角度の和を考える証明も載っています。\n今後も月刊組合せ論 Natori では様々な組合せ論のトピックを紹介していきます。お楽しみに。\n参考文献 # 正多面体が５種類しかないことの２通りの証明, https://manabitimes.jp/math/899 J.マトウシェク, J.ネシェトリル. 離散数学への招待・上. シュプリンガージャパン (2002) Harris, John M.; Hirst, Jeffry L.; Mossinghoff, Michael J. Combinatorics and graph theory. 2nd ed. Undergraduate Texts in Mathematics. Springer. (2008). ","date":"2022-10-01","externalUrl":null,"permalink":"/natori/202210/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。今回はグラフ理論を用いて正多面体を調べます。\n","title":"【月刊組合せ論 Natori】正多面体とグラフ理論【2022 年 10 月号】","type":"natori"},{"content":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。Natori の名前の由来は combinatorics の natori の部分です。月刊とついていますが毎月更新できないこともあります。\n創刊号の今回はなんと無料！（ずっと無料です）\nEDPC-T Permutation # 今回は競技プログラミングの問題である EDPC-T Permutation を紹介します。\n競技プログラミングでは与えられた入力に対して適切な出力を行うプログラムを書くことが求められます。今回扱う問題は次のような問題です。\n長さ n−1n-1n−1 の文字列 sss が与えられます。sss の文字は \u0026lt; または \u0026gt; です。 (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列 ppp であって、各 i=1,2,…,n−1i=1,2,\\ldots,n-1i=1,2,…,n−1 に対して pip_ipi​ と pi+1p_{i+1}pi+1​ の大小関係が sis_isi​ であるものはいくつありますか。\n実はこの問題は数学的に奥が深く、様々な研究がされてきました。その歴史も古く、1908 年の MacMahon の論文 [4] にも登場します。\nこの記事ではこの問題を数学的に深掘りすることを目標にします。\n降下点集合 # (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列 p=(p1,p2,…,pn)p=(p_1,p_2,\\ldots,p_n)p=(p1​,p2​,…,pn​) に対して、降下点集合を\n{1≤i\u0026lt;n∣pi\u0026gt;pi+1} \\{1\\le i\\lt n\\mid p_i\u0026gt;p_{i+1}\\} {1≤i\u0026lt;n∣pi​\u0026gt;pi+1​}により定めます。例えば (3,1,2,5,4)(3,1,2,5,4)(3,1,2,5,4) の降下点集合は {1,4}\\{1,4\\}{1,4} です。\n降下点集合を用いることで、今考えている問題は次のように言い換えられます。\n{1,2,…,n−1}\\{1,2,\\ldots,n-1\\}{1,2,…,n−1} の部分集合 SSS が与えられる。降下点集合が SSS となるような (1,2,…,n)(1,2,\\ldots,n)(1,2,…,n) の順列の個数を求めよ。 この問題の答えを βn(S)\\beta_n(S)βn​(S) とおきます。\n包除原理 # 例として n=6n=6n=6 とし、降下点集合が {3}\\{3\\}{3} の順列の個数を求めてみましょう。すなわち p1\u0026lt;p2\u0026lt;p3\u0026gt;p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3\u0026gt;p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026gt;p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数です。\nまず p1\u0026lt;p2\u0026lt;p3 ? p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3 \\ ? \\ p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​ ? p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数を求めましょう。すなわち p3,p4p_3,p_4p3​,p4​ の間の大小関係を指定しないものです。まず p1,p2,p3p_1,p_2,p_3p1​,p2​,p3​ の決め方は、1,2,…,61,2,\\ldots,61,2,…,6 の中から 3 つを選んで昇順に並べたものなので (63)=20\\binom{6}{3}=20(36​)=20 通りあります。これを決めると p4,p5,p6p_4,p_5,p_6p4​,p5​,p6​ がただ 1 通りに決まります。ここから余事象の個数、すなわち p1\u0026lt;p2\u0026lt;p3\u0026lt;p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3\u0026lt;p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026lt;p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数を引きます。これは 1 通りです。よって p1\u0026lt;p2\u0026lt;p3\u0026gt;p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3\u0026gt;p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026gt;p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数は 20−1=1920-1=1920−1=19 通りです。すなわち β6({3})=19\\beta_6(\\{3\\})=19β6​({3})=19 です。\nこのように、ある条件をみたすものの個数を求めるときに全体の個数から条件をみたさないものの個数を引いて求める手法を包除原理といいます。条件が 2 個以上でも使えます。\n次は降下点集合が {3,5}\\{3,5\\}{3,5} の場合を考えてみましょう。\np1\u0026lt;p2\u0026lt;p3\u0026lt;p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3\u0026lt;p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026lt;p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数は 111 p1\u0026lt;p2\u0026lt;p3 ? p4\u0026lt;p5\u0026lt;p6p_1\u0026lt;p_2\u0026lt;p_3 \\ ? \\ p_4\u0026lt;p_5\u0026lt;p_6p1​\u0026lt;p2​\u0026lt;p3​ ? p4​\u0026lt;p5​\u0026lt;p6​ をみたす順列の個数は (63)=20\\binom{6}{3}=20(36​)=20 p1\u0026lt;p2\u0026lt;p3\u0026lt;p4\u0026lt;p5 ? p6p_1\u0026lt;p_2\u0026lt;p_3\u0026lt;p_4\u0026lt;p_5 \\ ? \\ p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026lt;p4​\u0026lt;p5​ ? p6​ をみたす順列の個数は (65)=6\\binom{6}{5}=6(56​)=6 p1\u0026lt;p2\u0026lt;p3 ? p4\u0026lt;p5 ? p6p_1\u0026lt;p_2\u0026lt;p_3 \\ ? \\ p_4\u0026lt;p_5 \\ ? \\ p_6p1​\u0026lt;p2​\u0026lt;p3​ ? p4​\u0026lt;p5​ ? p6​ をみたす順列の個数は (63)(32)=60\\binom{6}{3}\\binom{3}{2}=60(36​)(23​)=60 p1\u0026lt;p2\u0026lt;p3\u0026gt;p4\u0026lt;p5\u0026gt;p6p_1\u0026lt;p_2\u0026lt;p_3\u0026gt;p_4\u0026lt;p_5\u0026gt;p_6p1​\u0026lt;p2​\u0026lt;p3​\u0026gt;p4​\u0026lt;p5​\u0026gt;p6​ をみたす順列の個数は β6({3,5})=60−20−6+1=35\\beta_6(\\{3,5\\})=60-20-6+1=35β6​({3,5})=60−20−6+1=35 一般の場合も同様です。降下点集合が SSS である順列の個数を βn(S)\\beta_n(S)βn​(S)、降下点集合が SSS に含まれるような順列の個数を αn(S)\\alpha_n(S)αn​(S) とします。このとき\nβn(S)=∑T⊆S(−1)∣S∖T∣αn(T) \\beta_n(S)=\\sum_{T\\subseteq S} (-1)^{|S\\setminus T|}\\alpha_n(T) βn​(S)=T⊆S∑​(−1)∣S∖T∣αn​(T)となります。S={s1,s2,…,sk}S=\\{s_1,s_2,\\ldots,s_k\\}S={s1​,s2​,…,sk​} とすると αn(S)\\alpha_n(S)αn​(S) は多項係数として\nαn(S)=(ns1,s2−s1,…,sk−sk−1,n−sk) \\alpha_n(S)=\\binom{n}{s_1,s_2-s_1,\\ldots,s_k-s_{k-1},n-s_k} αn​(S)=(s1​,s2​−s1​,…,sk​−sk−1​,n−sk​n​)と表されます。したがって\nβn(S)=∑1≤i1\u0026lt;⋯\u0026lt;ij≤k(−1)k−j(nsi1,si2−si1,…,sij−sij−1,n−sij ) \\beta_n(S)=\\sum_{1\\le i_1\u0026lt;\\cdots\u0026lt;i_j\\le k}(-1)^{k-j}\\binom{n}{s_{i_1},s_{i_2}-s_{i_1},\\ldots,s_{i_j}-s_{i_{j-1}},n-s_{i_j} \\ } βn​(S)=1≤i1​\u0026lt;⋯\u0026lt;ij​≤k∑​(−1)k−j(si1​​,si2​​−si1​​,…,sij​​−sij−1​​,n−sij​​ n​)となります。これで降下点集合が SSS となる順列の個数を求めることができました。\nなお、定義より明らかに\nαn(S)=∑T⊆Sβn(T) \\alpha_n(S)=\\sum_{T\\subseteq S}\\beta_n(T) αn​(S)=T⊆S∑​βn​(T)が成り立ちます。\n行列式 # 多項係数を書き換えることで、βn(S)\\beta_n(S)βn​(S) の式は\nβn(S)=∑1≤i1\u0026lt;⋯\u0026lt;ij≤k(−1)k−j(nsi1)(n−si1si2−si1)⋯(n−sijn−sij) \\beta_n(S)=\\sum_{1\\le i_1\u0026lt;\\cdots\u0026lt;i_j\\le k}(-1)^{k-j}\\binom{n}{s_{i_1}}\\binom{n-s_{i_1}}{s_{i_2}-s_{i_1}}\\cdots \\binom{n-s_{i_j}}{n-s_{i_j}} βn​(S)=1≤i1​\u0026lt;⋯\u0026lt;ij​≤k∑​(−1)k−j(si1​​n​)(si2​​−si1​​n−si1​​​)⋯(n−sij​​n−sij​​​)となります。この式から行列式表示\nβn(S)=det⁡((n−sisj+1−si))0≤i,j≤k \\beta_n(S)=\\det\\left(\\binom{n-s_i}{s_{j+1}-s_i}\\right)_{0\\le i,j\\le k} βn​(S)=det((sj+1​−si​n−si​​))0≤i,j≤k​を得ることができます。ただし s0=0,sk+1=ns_0=0, s_{k+1}=ns0​=0,sk+1​=n とおきます。前の例である n=6,S={3,5}n=6, S=\\{3,5\\}n=6,S={3,5} では\nβ6({3,5})=det⁡((63)(65)(66)(30)(32)(33)0(10)(11))=det⁡(2061131011)=35 \\beta_6(\\{3,5\\})=\\det\\begin{pmatrix} \\binom63 \u0026amp; \\binom65 \u0026amp; \\binom66 \\\\ \\binom30 \u0026amp; \\binom32 \u0026amp; \\binom33 \\\\ 0 \u0026amp; \\binom10 \u0026amp; \\binom11 \\end{pmatrix}=\\det\\begin{pmatrix} 20 \u0026amp; 6 \u0026amp; 1 \\\\ 1 \u0026amp; 3 \u0026amp; 1 \\\\ 0 \u0026amp; 1 \u0026amp; 1 \\end{pmatrix}=35 β6​({3,5})=det​(36​)(03​)0​(56​)(23​)(01​)​(66​)(33​)(11​)​​=det​2010​631​111​​=35となり、上で求めた数値と一致します。\nこの行列はほぼ上三角行列の形をしています。通常の行列式計算は時間計算量が O(n3)O(n^3)O(n3) ですが、この形の場合 O(n2)O(n^2)O(n2) に高速化できます。\nLGV 公式 # 行列式表示は LGV (Lindström-Gessel-Viennot) 公式から導くこともできます。\nまず LGV 公式の主張を述べます。Γ=(V,E)\\Gamma=(V,E)Γ=(V,E) をサイクルを含まない有限有向グラフとします。各辺 e∈Ee\\in Ee∈E の重み w(e)∈Zw(e)\\in \\mathbb{Z}w(e)∈Z が定まっているとします。パス P=(a1,…,an)P=(a_1,\\ldots,a_n)P=(a1​,…,an​) の重みを w(P)=w(a1,a2)w(a2,a3)⋯w(an−1,an)w(P)=w(a_1,a_2)w(a_2,a_3)\\cdots w(a_{n-1},a_n)w(P)=w(a1​,a2​)w(a2​,a3​)⋯w(an−1​,an​) により定めます。2 つのパスが交わるとは、共通の頂点を持つこととします。a1,…,an,b1,…,bn∈Va_1,\\ldots,a_n,b_1,\\ldots,b_n\\in Va1​,…,an​,b1​,…,bn​∈V に対して n×nn\\times nn×n 行列\nM(a,b)=(∑P ⁣:ai→bjw(P))1≤i,j≤n M(a,b)=\\left(\\sum_{P\\colon a_i\\to b_j}w(P)\\right)_{1\\le i,j\\le n} M(a,b)=​P:ai​→bj​∑​w(P)​1≤i,j≤n​を定めます。ただし和は aia_iai​ から bjb_jbj​ へのパス全体をわたるものとします。サイクルを含まないので有限和です。\n定理 (LGV) 条件「i1\u0026lt;i2,j1\u0026gt;j2i_1\u0026lt;i_2, j_1\u0026gt;j_2i1​\u0026lt;i2​,j1​\u0026gt;j2​ ならば ai1a_{i_1}ai1​​ から bj1b_{j_1}bj1​​ へのパスと ai2a_{i_2}ai2​​ から bj2b_{j_2}bj2​​ へのパスは必ず交わる」を仮定する。このとき\ndet⁡M(a,b)=∑(P1,…,Pn)w(P1)⋯w(Pn) \\det M(a,b)=\\sum_{(P_1,\\ldots,P_n)}w(P_1)\\cdots w(P_n) detM(a,b)=(P1​,…,Pn​)∑​w(P1​)⋯w(Pn​)が成り立つ。ここで和は PiP_iPi​ が aia_iai​ から bib_ibi​ へのパスでどの 2 つのパスも互いに交わらないもの全体をわたる。\n条件を仮定しないバージョンもありますが、ここでは扱わないので割愛します。\n特に重みがすべて 1 のとき、LGV 公式の右辺は非交差経路の本数になります。これを用いて βn(S)\\beta_n(S)βn​(S) の行列式表示を導出しましょう。\n順列 (p1,…,pn)(p_1,\\ldots,p_n)(p1​,…,pn​) に対して、fjf_jfj​ を pi\u0026lt;pjp_i\u0026lt;p_jpi​\u0026lt;pj​ をみたす i (1≤i\u0026lt;j)i \\ (1\\le i\u0026lt;j)i (1≤i\u0026lt;j) の個数とします。例えば p=(2,5,4,1,3)p=(2,5,4,1,3)p=(2,5,4,1,3) のとき f=(0,1,1,0,3)f=(0,1,1,0,3)f=(0,1,1,0,3) です。fff は明らかに 0≤fi≤i−10\\le f_i\\le i-10≤fi​≤i−1 をみたしますが、逆にこれをみたす数列 fff が与えられたとき順列 ppp を復元することができます。pi\u0026gt;pi+1p_i\u0026gt;p_{i+1}pi​\u0026gt;pi+1​ と fi≥fi+1f_i\\ge f_{i+1}fi​≥fi+1​ が同値になります。\n降下点集合を S={s1,…,sk}S=\\{s_1,\\ldots,s_k\\}S={s1​,…,sk​} とし、s0=0,sk+1=ns_0=0,s_{k+1}=ns0​=0,sk+1​=n とします。グリッドグラフを考え、辺の向きを右または下とします。ai=(si,si),bi=(si+1,0) (0≤i≤k)a_i=(s_i,s_i), b_i=(s_{i+1},0) \\ (0\\le i\\le k)ai​=(si​,si​),bi​=(si+1​,0) (0≤i≤k) とします。順列 ppp から作った fff に対して非交差経路を作ります。\n上の図は f=(0,1,2,0,2,2,3,6)f=(0,1,2,0,2,2,3,6)f=(0,1,2,0,2,2,3,6) と対応する非交差経路です。(i,j),(i+1,j)(i,j),(i+1,j)(i,j),(i+1,j) を結ぶ横向きの辺にラベル i−ji-ji−j が付いており、通るラベルを順に並べると fff となるようになっています。\nこの対応は全単射となることが示せます。まとめると、降下点集合が SSS である順列の個数 βn(S)\\beta_n(S)βn​(S) は数列 fff の個数に等しく、これは非交差経路の個数に等しいです。LGV 公式より、非交差経路の個数は det⁡M(a,b)\\det M(a,b)detM(a,b) に等しいです。これを求めるには aia_iai​ から bjb_jbj​ へのパスの個数を求める必要がありますが、これは普通の最短経路問題で、二項係数 (sj+1sj+1−si )\\binom{s_{j+1}}{s_{j+1}-s_i\\ }(sj+1​−si​ sj+1​​) です。したがって\nβn(S)=det⁡((sj+1sj+1−si))i,j \\beta_n(S)=\\det\\left(\\binom{s_{j+1}}{s_{j+1}-s_i}\\right)_{i,j} βn​(S)=det((sj+1​−si​sj+1​​))i,j​となります。\nAitken の公式 # さらに Aitken の公式からも行列式表示を導出できます。Aitken の公式は標準ヤング盤の個数を行列式を用いて表す公式です。まず標準盤について解説します。\nλ=(λ1,λ2,…,λk)\\lambda=(\\lambda_1,\\lambda_2,\\ldots,\\lambda_k)λ=(λ1​,λ2​,…,λk​) が分割であるとは、λ1≥λ2≥⋯≥λk≥1\\lambda_1\\ge\\lambda_2\\ge\\cdots\\ge\\lambda_k\\ge 1λ1​≥λ2​≥⋯≥λk​≥1 をみたすことをいいます。iii 行目に λi\\lambda_iλi​ 個のマスを左詰めで並べたものを λ\\lambdaλ のヤング図形といいます。分割 λ,μ\\lambda,\\muλ,μ がすべての iii に対して μi≤λi\\mu_i\\le \\lambda_iμi​≤λi​ をみたすとき、λ\\lambdaλ のヤング図形の iii 行目の左から μi\\mu_iμi​ 個のマスを取り除いたものを歪ヤング図形と言います。これを λ/μ\\lambda/\\muλ/μ と表します。\n図は λ=(8,8,6,5,2,1,1),μ=(6,4,3,3,1)\\lambda=(8,8,6,5,2,1,1), \\mu=(6,4,3,3,1)λ=(8,8,6,5,2,1,1),μ=(6,4,3,3,1) の場合です。灰色のマスは取り除かれることを表します。\nλ/μ\\lambda/\\muλ/μ のマスの個数を n=∣λ/μ∣n=|\\lambda/\\mu|n=∣λ/μ∣ とします。λ/μ\\lambda/\\muλ/μ 上の標準盤とは、マスに 1,2,…,n1,2,\\ldots,n1,2,…,n を 1 個ずつ書き込んだものであって\n各行について左から右に単調増加 各列について上から下に単調増加 をみたすものです。\n歪ヤング図形上の標準盤の個数は以下の式によって求められます。\n定理 (Aitken) 歪ヤング図形 λ/μ\\lambda/\\muλ/μ 上の標準盤の個数は以下の式に等しい。\nn!det⁡(1(λi−μj−i+j)!)i,j n!\\det\\left(\\frac{1}{(\\lambda_i-\\mu_j-i+j)!}\\right)_{i,j} n!det((λi​−μj​−i+j)!1​)i,j​ ただし負の整数の階乗の逆数は 0 であるとします。\nこの公式から順列の個数 βn(S)\\beta_n(S)βn​(S) を表す公式を導いてみましょう。まず、降下点集合が SSS であるような順列と、ジグザグ型の歪ヤング図形上の標準盤が一対一対応することに注意します。\n上の図は降下点集合が S={2,5,6}S=\\{2,5,6\\}S={2,5,6} である順列 (2,5,3,4,8,7,1,6,9)(2,5,3,4,8,7,1,6,9)(2,5,3,4,8,7,1,6,9) を表しています。\nS={s1,s2,…,sk},s0=0,sk+1=nS=\\{s_1,s_2,\\ldots,s_k\\}, s_0=0, s_{k+1}=nS={s1​,s2​,…,sk​},s0​=0,sk+1​=n とすると、λ\\lambdaλ の成分は小さい方から s1,s2−1,s3−2,…s_1,s_2-1,s_3-2,\\ldotss1​,s2​−1,s3​−2,… となります。またジグザグ型であることから μ\\muμ は μi=λi+1−1\\mu_i=\\lambda_{i+1}-1μi​=λi+1​−1 をみたします。これらを公式に代入して式変形することで\nβn(S)=n!det⁡(1(sj+1−si)!)0≤i,j≤k \\beta_n(S) = n!\\det\\left(\\frac{1}{(s_{j+1}-s_i)!}\\right) _ {0\\le i,j\\le k} βn​(S)=n!det((sj+1​−si​)!1​)0≤i,j≤k​が得られます。\nde Bruijn の定理 # 降下点集合が SSS で末尾の項が jjj であるような順列の個数を γn(S,j)\\gamma_n(S,j)γn​(S,j) とおきます。βn(S)=∑j=1nγn(S,j)\\beta_n(S)=\\sum_{j=1}^n \\gamma_n(S,j)βn​(S)=∑j=1n​γn​(S,j) となります。de Bruijn [2] は次を証明しました。\n定理 n−1∉Sn-1\\not\\in Sn−1∈S ならば\nγn(S,j)=∑1≤i\u0026lt;jγn−1(S,i) \\gamma_n(S,j)=\\sum_{1\\le i\u0026lt;j}\\gamma_{n-1}(S,i) γn​(S,j)=1≤i\u0026lt;j∑​γn−1​(S,i)をみたし、n−1∈Sn-1\\in Sn−1∈S ならば\nγn(S,j)=∑j≤i≤n−1γn−1(S∖{n−1},i) \\gamma_n(S,j)=\\sum_{j\\le i\\le n-1}\\gamma_{n-1}(S\\setminus\\{n-1\\},i) γn​(S,j)=j≤i≤n−1∑​γn−1​(S∖{n−1},i)をみたす。\n証明 n−1∉Sn-1\\not\\in Sn−1∈S とし、(p1,…,pn)(p_1,\\ldots,p_n)(p1​,…,pn​) を降下点集合が SSS で末尾の項が jjj である順列とします。pnp_npn​ を削除し、p1,…,pn−1p_1,\\ldots,p_{n-1}p1​,…,pn−1​ について jjj より大きい数を 1 減らします。すると降下点集合が SSS となる (1,2,…,n−1)(1,2,\\ldots,n-1)(1,2,…,n−1) の順列が得られます。n−1∉Sn-1\\not\\in Sn−1∈S より末尾の項は jjj 未満です。逆の対応も考えられるので、順列の個数の比較により 1 つ目の等式が得られます。2 つ目の等式も同様に得られます。 累積和 # Viennot [9] による累積和を用いたシンプルなアルゴリズムを紹介します。\n数列 (a1,a2,…,an)(a_1,a_2,\\ldots,a_n)(a1​,a2​,…,an​) に対して、左からの累積和という操作を、数列 (0,a1,a1+a2,a1+a2+a3,…,a1+a2+⋯+an)(0,a_1,a_1+a_2,a_1+a_2+a_3,\\ldots,a_1+a_2+\\cdots+a_n)(0,a1​,a1​+a2​,a1​+a2​+a3​,…,a1​+a2​+⋯+an​) を作る操作とします。右からの累積和は (a1+a2+⋯+an,…,an−1+an,an,0)(a_1+a_2+\\cdots+a_n,\\ldots,a_{n-1}+a_n,a_n,0)(a1​+a2​+⋯+an​,…,an−1​+an​,an​,0) と定義します。Viennot のアルゴリズムは次のように述べられます。\n初め数列は (1)(1)(1) であるとする。 i=1,2,…,n−1i=1,2,\\ldots,n-1i=1,2,…,n−1 の順に次の操作を行う。 i∉Si\\not\\in Si∈S ならば左から累積和をとる。 i∈Si\\in Si∈S ならば右から累積和をとる。 最終的に得られた数列の総和は降下点集合が SSS である順列の個数 βn(S)\\beta_n(S)βn​(S) に等しい。 例として n=6,S={3,5}n=6, S=\\{3,5\\}n=6,S={3,5} とします。これまでの計算から βn(S)=35\\beta_n(S)=35βn​(S)=35 であることがわかっています。\n初めの数列は (1)(1)(1) 1∉S1\\not\\in S1∈S なので左から累積和をとり、(0,1)(0,1)(0,1) 2∉S2\\not\\in S2∈S なので左から累積和をとり、(0,0,1)(0,0,1)(0,0,1) 3∈S3\\in S3∈S なので右から累積和をとり、(1,1,1,0)(1,1,1,0)(1,1,1,0) 4∉S4\\not\\in S4∈S なので左から累積和をとり、(0,1,2,3,3)(0,1,2,3,3)(0,1,2,3,3) 5∈S5\\in S5∈S なので右から累積和をとり、(9,9,8,6,3,0)(9,9,8,6,3,0)(9,9,8,6,3,0) 最終的に得られた数列の総和は 9+9+8+6+3+0=359+9+8+6+3+0=359+9+8+6+3+0=35 となり、一致することが確かめられました。\n正当性は上述の de Bruijn の定理により保証されます。\n成瀬のフック長公式 # Aitken の公式のセクションで説明したように、この問題は歪ヤング図形上の標準盤の個数を求める問題に帰着できます。歪でない通常のヤング図形（すなわち μ=∅\\mu=\\emptysetμ=∅ の場合）では Aitken の公式は\nn!det⁡(1(λi−i+j)!) n!\\det\\left(\\frac{1}{(\\lambda_i-i+j)!}\\right) n!det((λi​−i+j)!1​)となります。通常のヤング図形では行列式以外の方法でも標準盤の個数を求めることができます。その中でも特に有名なものがフック長公式です。\nヤング図形のあるマスに関するフックとは、そのマスの右または下にあるマスからなる集合です。（そのマス自身も含む）\nあるマスに関するフックに含まれるマスの数をフック長といい、hλ(□)h_{\\lambda}(\\square)hλ​(□) と表すことにします。\n定理（フック長公式） ヤング図形 λ\\lambdaλ 上の標準盤の個数は次の式で表せる。\nn!∏□∈λhλ(□) \\frac{n!}{\\prod_{\\square\\in\\lambda}h_{\\lambda}(\\square)} ∏□∈λ​hλ​(□)n!​ つまり、すべてのマスについてフック長を計算し、かけあわせて逆数をとり、n!n!n! をかけたものが標準盤の個数となります。\nフック長公式の歪ヤング図形への一般化は長らく知られていませんでしたが、成瀬のフック長公式と呼ばれる公式が発見されました。\nλ/μ\\lambda/\\muλ/μ を歪ヤング図形とします。まず λ\\lambdaλ のフック長 hλ(□)h_{\\lambda}(\\square)hλ​(□) を計算しておきます。その後、μ\\muμ の各マスの上に駒を置きます。右・下・右下に駒が置かれていないような駒を右下に移動させることを基本操作と呼ぶことにします。\n基本操作を何回か（0 回でもよい）行います。こうしてできる盤面について、駒が置かれていないマスのフック長の積を計算します。これの逆数をとり、可能な盤面についてこれらを足し合わせます。最後に ∣λ/μ∣!|\\lambda/\\mu|!∣λ/μ∣! をかけます。こうして得られる値が λ/μ\\lambda/\\muλ/μ 上の標準盤の個数に等しいという主張が成瀬のフック長公式です。数式で書くと次のようになります。\n定理（成瀬のフック長公式） λ/μ\\lambda/\\muλ/μ を歪ヤング図形とし、基本操作を何回か行って得られる盤面の集合を E\\mathcal{E}E とする。このとき λ/μ\\lambda/\\muλ/μ 上の標準盤の個数は次の式で表される。\n∣λ/μ∣!(∑E∈E1∏□hλ(□)) |\\lambda/\\mu|!\\left(\\sum_{E\\in\\mathcal{E}}\\frac{1}{\\prod_{\\square}h_{\\lambda}(\\square)}\\right) ∣λ/μ∣!(E∈E∑​∏□​hλ​(□)1​)ここで □\\square□ に関する積は盤面 EEE において駒が置かれていないマス全体をわたる。\nn=6,S={3,5}n=6,S=\\{3,5\\}n=6,S={3,5} で計算してみましょう。\n初期の盤面は左上で、基本操作を何回か行って得られる盤面は 9 通りです。それぞれについてフック長の積を求め、逆数を足し合わせて 6!6!6! をかけることで、答えである 35 が得られます。\n図を見ると駒の置かれていないマスはジグザグ型になっています。一般に λ/μ\\lambda/\\muλ/μ がジグザグ型になる場合、すべての盤面は左下と右上を結ぶジグザグ型となります。よって左下から出発して右または上に進み右上に到着する動的計画法で βn(S)\\beta_n(S)βn​(S) を計算することができます。\n高速解法 # ここまでで紹介した方法をプログラムにすると、時間計算量が O(n2)O(n^2)O(n2) のアルゴリズムとなります。EDPC-T の制約ではこのアルゴリズムでもよいのですが、実はもっと高速に解くことができます。それを簡単に紹介します。\n行列式の節で述べたように、答えは行列式で表せます。\nβn(S)=det⁡((n−sisj+1−si))0≤i,j≤k \\beta_n(S)=\\det\\left(\\binom{n-s_i}{s_{j+1}-s_i}\\right)_{0\\le i,j\\le k} βn​(S)=det((sj+1​−si​n−si​​))0≤i,j≤k​この行列式を右端の列で余因子展開します。bi=(−1)i(n−si)!(n−sk)!βn({s1,…,si})b_i=(-1)^i\\frac{(n-s_i)!}{(n-s_k)!}\\beta_n(\\{s_1,\\ldots,s_i\\})bi​=(−1)i(n−sk​)!(n−si​)!​βn​({s1​,…,si​}) とおくと\nbi=−∑j=0i−1bj1(si−sj)! b_i=-\\sum_{j=0}^{i-1}b_j\\frac{1}{(s_i-s_j)!} bi​=−j=0∑i−1​bj​(si​−sj​)!1​が成り立ちます。新たな数列 (Bi)(B_i)(Bi​) を\n{Bsi=biBm=0(m∉S) \\begin{cases} B_{s_i} \u0026amp;= b_i \\\\ B_m \u0026amp;= 0 \\quad (m \\not\\in S) \\end{cases} {Bsi​​Bm​​=bi​=0(m∈S)​により定めます。このとき\nBi=−∑j=0i−1Bj1(i−j)! B_i=-\\sum_{j=0}^{i-1}B_j\\frac{1}{(i-j)!} Bi​=−j=0∑i−1​Bj​(i−j)!1​が成り立ちます。右辺は畳み込みと似た形をしています。relaxed convolution というアルゴリズムにより、時間計算量 O(N(log⁡N)2)O(N(\\log N)^2)O(N(logN)2) で求めることができます。\nまとめ # EDPC-T Permutation という競技プログラミングの問題を数学的に深掘りしました。数学の奥深さを感じられたでしょうか。\n今後も月刊組合せ論 Natori では様々な組合せ論のトピックを扱っていこうと思います。応援のほどよろしくお願いします！\n参考文献 # Adin, R. M., \u0026amp; Roichman, Y. Enumeration of standard Young tableaux. arXiv:1408.4497., https://arxiv.org/abs/1408.4497 de Bruijn, N. G. Permutations with given ups and downs. Nieuw Archief voor Wiskunde, 3/18(1) (1970): 61-65. Gessel, Ira. \u0026amp; Viennot, Gérard. Binomial determinants, paths, and hook length formulae. Advances in mathematics 58.3 (1985): 300-321. MacMahon, Percy Alexander 1908II. Second memoir on the compositions of numbers. Philosophical Transactions of the Royal Society of London. Series A, Containing Papers of a Mathematical or Physical Character 207 65–134. Marchal, Philippe. Permutations with a prescribed descent set. 2014. hal-00944244., https://hal.science/hal-00944244/document Morales, Alejandro H., Pak, Igor. \u0026amp; Panova, Greta. Hook formulas for skew shapes I. q-analogues and bijections. Journal of Combinatorial Theory, Series A 154 (2018): 350-405. Naruse, H. Schubert calculus and hook formula, talk slides at 73rd Sém. Lothar. Combin, Strobl, Austria, 2014;, https://www.emis.de/journals/SLC/wpapers/s73vortrag/naruse.pdf Stanley, Richard P. Enumerative Combinatorics Volume 1 second edition. Cambridge studies in advanced mathematics (2011). Viennot, Gérard. Permutations ayant une forme donnée. Discrete Mathematics 26.3 (1979): 279-284. 【競技プログラミング】難問も解ける！Young tableaux及びSkew tableauxのフック長の公式と数え上げ問題への適用, https://qiita.com/hotman78/items/bbad58e5042da7837334 ","date":"2022-09-01","externalUrl":null,"permalink":"/natori/202209/","section":"月刊組合せ論 Natori","summary":" 月刊組合せ論 Natori は面白そうな組合せ論のトピックを紹介していく企画です。Natori の名前の由来は combinatorics の natori の部分です。月刊とついていますが毎月更新できないこともあります。\n","title":"【月刊組合せ論 Natori】EDPC-T Permutation を深掘り【2022 年 9 月号】","type":"natori"},{"content":"バーンサイドの補題が競技プログラミング界隈で話題のようです。先日開催された ABC で出題されたからです。\nhttps://atcoder.jp/contests/abc198/tasks/abc198_f\nこの記事の目標は、バーンサイドの補題を表現論を用いて証明することです。最近表現論を勉強しているので、そのアウトプットを兼ねています。\nバーンサイドの補題 # バーンサイドの補題 (コーシー・フロベニウスの補題とも呼ばれます) は次のような命題です。\nGGG を有限群、σ ⁣:G→SX\\sigma\\colon G\\to S_Xσ:G→SX​ を作用とする。このとき軌道の個数 mmm は\nm=1∣G∣∑g∈G∣Fix(g)∣ m=\\frac{1}{|G|}\\sum_{g\\in G}|\\text{Fix}(g)| m=∣G∣1​g∈G∑​∣Fix(g)∣で求められる。\nここで ∣G∣|G|∣G∣ は GGG の位数で、Fix(g)={x∈X∣σg(x)=x}\\text{Fix}(g)=\\{x\\in X\\mid \\sigma_g(x)=x\\}Fix(g)={x∈X∣σg​(x)=x} は ggg を作用させても変化しない XXX の元からなる集合です。SXS_XSX​ は XXX から XXX への全単射全体のなす群で、作用とは群準同型 σ ⁣:G→SX\\sigma\\colon G\\to S_Xσ:G→SX​ のことをいいます。また、x∈Xx\\in Xx∈X に対し、xxx を通る軌道とは集合 G⋅x={σg(x)∣g∈G}G\\cdot x=\\{\\sigma_g(x)\\mid g\\in G\\}G⋅x={σg​(x)∣g∈G} のことをいいます。2 つの異なる軌道は共通部分をもちません。また、XXX のどの元もある軌道に含まれます。このことから、軌道は XXX の分割をなします。\n具体例を 1 つ考えましょう。nnn 個のものを円形に配置する方法が何通りあるかを数えます。ただし回転して一致するものは同じとします。XXX は nnn 個のものを一列に配置する方法全体であるとします。∣X∣=n!|X|=n!∣X∣=n! です。GGG を位数 nnn の巡回群とします。GGG の XXX への作用は巡回シフト (例えば 1,2,…,n1,2,\\ldots,n1,2,…,n と並んでいたものを 2,…,n,12,\\ldots,n,12,…,n,1 にすること) とします。すると求める方法の数は軌道の個数と等しくなります。どの XXX の元も GGG の非自明な元の作用で動いてしまうので\nFix(g)={0(g≠id)∣X∣=n!(g=id) \\text{Fix}(g)=\\begin{cases} 0 \u0026amp; (g\\ne \\text{id}) \\\\ |X|=n! \u0026amp; (g=\\text{id}) \\end{cases} Fix(g)={0∣X∣=n!​(g=id)(g=id)​となります。よって、答えはバーンサイドの補題から、m=n!n=(n−1)!m=\\frac{n!}{n}=(n-1)!m=nn!​=(n−1)! であるとわかります。\nまた、回転や裏返しで一致するものを同一視するとき、群 GGG は二面体群と呼ばれる位数 2n2n2n の群となります。この場合 m=n!2n=(n−1)!2m=\\frac{n!}{2n}=\\frac{(n-1)!}{2}m=2nn!​=2(n−1)!​ となります。円順列や数珠順列は、バーンサイドの補題から求められることがわかりました。\n表現論の基礎 # バーンサイドの補題を証明するために、表現論の基礎を準備します。ここで書くことはとても基本的なもので、どの表現論の本にも載っていると思います。なので証明は省略します。\n群は対称性の研究 (特に方程式の解の対称性) から生まれました。対称性という具体的なものから、群の公理という抽象的なものが生まれたわけです。\n逆に、与えられた (抽象的な) 群に対して、どういった空間の対称性を表すかを考えるといったこともよく行われます。この 1 つが上でも述べた作用です。作用は群の各元に対し、集合 XXX の全単射を対応させます。\nXXX が数学的な構造をもっている場合もよくあります。例えば線形空間の構造をもつことがあります。この場合、対応する全単射にも線形空間の構造を反映させたいです。ここでは有限次元複素線形空間のみを考えます。VVV を線形空間とし、VVV の可逆線形変換全体のなす群を GL(V)GL(V)GL(V) とします。このとき、作用 G→SVG\\to S_VG→SV​ の代わりに、群準同型 G→GL(V)G\\to GL(V)G→GL(V) を考えます。これを表現といいます。改めて書くと、GGG を群、VVV を (有限次元複素) 線形空間とするとき、表現とは群準同型 G→GL(V)G\\to GL(V)G→GL(V) のことです。表現について調べるのが表現論という分野です。\n1 つ自明な例をあげます。任意の g∈Gg\\in Gg∈G に対し、φg\\varphi_gφg​ を VVV 上の恒等変換とします。すると表現 φ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) ができます。VVV が 1 次元のとき、これを自明な表現といいます。\n線形変換は適当に基底を選ぶことで行列にすることができます。よって GL(V)GL(V)GL(V) は可逆行列のなす群 GLn(C)GL_n(\\mathbb{C})GLn​(C) と同型です (nnn は VVV の次元)。ゆえに表現とは群準同型 φ ⁣:G→GLn(C)\\varphi\\colon G\\to GL_n(\\mathbb{C})φ:G→GLn​(C) のことだと言ってもよいです。g∈Gg\\in Gg∈G に対し、φg\\varphi_gφg​ は正方行列です。ここで、この行列の対角成分の和 (トレース) を χ(g)\\chi(g)χ(g) とします。すなわち\nχ(g)=Tr(φg)=∑i=1n(φg)ii \\chi(g)=\\text{Tr}(\\varphi_g)=\\sum_{i=1}^n(\\varphi_g)_{ii} χ(g)=Tr(φg​)=i=1∑n​(φg​)ii​とします。このようにして定まる写像 χ ⁣:G→C\\chi\\colon G\\to \\mathbb{C}χ:G→C のことを指標といいます。もともと nnn 次行列だったものが、対角成分の和をとることで複素数になってしまいました。これではかなりの情報が抜け落ちてしまうと思うかもしれません。しかし情報は全く抜け落ちていないのです。「2 つの表現が同値であるための必要十分条件は、それらの指標が一致することである」 という定理が成り立ちます。指標は表現の本質であり、指標によって表現がわかってしまいます。これが表現論のすごいところですね。\n表現が同値であることの定義をまだしていませんでした。φ ⁣:G→GL(V),ψ ⁣:G→GL(W)\\varphi\\colon G\\to GL(V),\\psi\\colon G\\to GL(W)φ:G→GL(V),ψ:G→GL(W) を表現とします。φ,ψ\\varphi,\\psiφ,ψ が同値であるとは、線形同型 T ⁣:V→WT\\colon V\\to WT:V→W であって、任意の g∈Gg\\in Gg∈G に対し T∘φg=ψg∘TT\\circ\\varphi_g=\\psi_g\\circ TT∘φg​=ψg​∘T が成り立つものが存在することをいいます。\n2 つの表現 φ ⁣:G→GL(V),ψ ⁣:G→GL(W)\\varphi\\colon G\\to GL(V), \\psi\\colon G\\to GL(W)φ:G→GL(V),ψ:G→GL(W) に対し、新たな表現 ρ ⁣:G→GL(V⊕W)\\rho\\colon G\\to GL(V\\oplus W)ρ:G→GL(V⊕W) を ρg(v,w)=(φg(v),ψg(w)) (g∈G,v∈V,w∈W)\\rho_g(v,w)=(\\varphi_g(v),\\psi_g(w)) \\ (g\\in G, v\\in V, w\\in W)ρg​(v,w)=(φg​(v),ψg​(w)) (g∈G,v∈V,w∈W) により定めることができます。これを表現の直和といい、ρ=φ⊕ψ\\rho=\\varphi\\oplus\\psiρ=φ⊕ψ と表します。先ほどの例で φg\\varphi_gφg​ を VVV 上の恒等変換とすることにより表現 φ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) を定めましたが、これは dim⁡V\\dim VdimV 個の自明な表現の直和と同値です。\nφ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) を表現とします。WWW を VVV の部分空間とします。このとき、WWW が GGG-不変部分空間であるとは、任意の g∈G,w∈Wg\\in G, w\\in Wg∈G,w∈W に対し、φg(w)∈W\\varphi_g(w)\\in Wφg​(w)∈W となることです。VVV 自身と {0}\\{0\\}{0} は常に VVV の GGG-不変部分空間になります。これら以外の GGG-不変部分空間が存在しないとき、この表現は既約表現であるといいます。\n整数論においては素数が重要な役割を果たします。これはすべての整数が素数の積として表すことができ、かつその表し方が一意であるからです。実は表現論においても似たことが成り立ちます。表現論においては既約表現が素数と同じような役割を果たします。\nマシュケの定理: 有限群の表現はすべていくつかの既約表現の直和と同値である。 よって任意の表現 φ\\varphiφ は、既約表現 φ1,φ2,…\\varphi_1,\\varphi_2,\\ldotsφ1​,φ2​,… に対し φ1⊕m1⊕φ2⊕m2⊕⋯\\varphi_1^{\\oplus m_1}\\oplus\\varphi_2^{\\oplus m_2}\\oplus\\cdotsφ1⊕m1​​⊕φ2⊕m2​​⊕⋯ と同値になります (無限和の形で書いていますが、有限群の既約表現の同値類は有限個であることが知られているので、これは有限和となります)。mim_imi​ を重複度といいます。指標を考えましょう。既約表現の指標を既約指標といいます。φ\\varphiφ の指標を χ\\chiχ、φi\\varphi_iφi​ の既約指標を χi\\chi_iχi​ とすると、χ=m1χ1+m2χ2+⋯\\chi=m_1\\chi_1+m_2\\chi_2+\\cdotsχ=m1​χ1​+m2​χ2​+⋯ となります。重複度 mim_imi​ を求めたいです。そのために、指標の内積を導入しましょう。\n⟨χ,χ′⟩=1∣G∣∑g∈Gχ(g)‾χ′(g) \\langle \\chi,\\chi^{\\prime}\\rangle=\\frac{1}{|G|}\\sum_{g\\in G}\\overline{\\chi(g)}\\chi^{\\prime}(g) ⟨χ,χ′⟩=∣G∣1​g∈G∑​χ(g)​χ′(g)これが指標の内積です。すると、次の素晴らしい関係が成り立ちます。\n指標の第一直交性: χ1,χ2,…\\chi_1,\\chi_2,\\ldotsχ1​,χ2​,… を既約指標とする。このとき\n⟨χi,χj⟩={1(i=j)0(i≠j) \\langle \\chi_i,\\chi_j\\rangle=\\begin{cases} 1 \u0026amp; (i=j) \\\\ 0 \u0026amp; (i\\ne j) \\end{cases} ⟨χi​,χj​⟩={10​(i=j)(i=j)​が成り立つ。\nつまり、既約指標は正規直交します。このことから、重複度は mi=⟨χ,χi⟩m_i=\\langle \\chi,\\chi_i\\ranglemi​=⟨χ,χi​⟩ により求められます。特に、mim_imi​ は一意に定まり、既約表現への分解が一意であることがわかります。\n置換表現 # σ ⁣:G→SX\\sigma\\colon G\\to S_Xσ:G→SX​ を作用とします。ここから表現を作ってみましょう。まず CX\\mathbb{C}XCX を XXX の張る線形空間とします。つまり XXX の元の形式的な線形結合を考えて、それらのなす線形空間です。XXX は CX\\mathbb{C}XCX の基底です。よって各 g∈Gg\\in Gg∈G に対し、全単射 σg\\sigma_gσg​ を線形に拡張することで、線形写像 σ~g\\widetilde{\\sigma} _ gσg​ が構成できます。具体的に書くと\nσ~g(∑x∈Xcxx)=∑x∈Xcxσg(x) \\widetilde{\\sigma} _ g(\\sum_{x\\in X}c_xx)=\\sum_{x\\in X}c_x\\sigma_g(x) σg​(x∈X∑​cx​x)=x∈X∑​cx​σg​(x)となります。このようにして表現 σ~ ⁣:G→GL(CX)\\widetilde{\\sigma}\\colon G\\to GL(\\mathbb{C}X)σ:G→GL(CX) が定まります。これを置換表現といいます。\n置換表現も既約表現に分解できます。このとき、自明な表現の重複度を考えることで、バーンサイドの補題を証明します。\nχ1\\chi_1χ1​ を自明な表現の指標とします。重複度は\nm1=⟨χ1,χσ~⟩=1∣G∣∑g∈Gχ1(g)‾χσ~(g)=1∣G∣∑g∈Gχσ~(g) m_1=\\langle\\chi_1,\\chi_{\\widetilde{\\sigma}}\\rangle=\\frac{1}{|G|}\\sum_{g\\in G}\\overline{\\chi_1(g)}\\chi_{\\widetilde{\\sigma}}(g)=\\frac{1}{|G|}\\sum_{g\\in G}\\chi_{\\widetilde{\\sigma}}(g) m1​=⟨χ1​,χσ​⟩=∣G∣1​g∈G∑​χ1​(g)​χσ​(g)=∣G∣1​g∈G∑​χσ​(g)となります。\n補題 1：χσ~(g)=∣Fix(g)∣\\chi_{\\widetilde{\\sigma}}(g)=|\\text{Fix}(g)|χσ​(g)=∣Fix(g)∣\n証明：X={x1,…,xn}X=\\{x_1,\\ldots,x_n\\}X={x1​,…,xn​} とし、基底 XXX に関する σ~g\\widetilde{\\sigma} _ gσg​ の行列表示を AAA とします。このとき\nAij={1xi=σg(xj)0xi≠σg(xj) A_{ij} = \\begin{cases} 1 \u0026amp; x_i=\\sigma_g(x_j) \\\\ 0 \u0026amp; x_i\\ne \\sigma_g(x_j) \\end{cases} Aij​={10​xi​=σg​(xj​)xi​=σg​(xj​)​となります。特に\nAii={1xi∈Fix(g)0xi∉Fix(g) A_{ii} = \\begin{cases} 1 \u0026amp; x_i\\in\\text{Fix}(g) \\\\ 0 \u0026amp; x_i\\not\\in\\text{Fix}(g) \\end{cases} Aii​={10​xi​∈Fix(g)xi​∈Fix(g)​となります。よって、χσ~(g)=Tr(A)=∣Fix(g)∣\\chi_{\\widetilde{\\sigma}}(g)=\\text{Tr}(A)=|\\text{Fix}(g)|χσ​(g)=Tr(A)=∣Fix(g)∣ です。(証明終)\nこれで\nm1=1∣G∣∑g∈G∣Fix(g)∣ m_1=\\frac{1}{|G|}\\sum_{g\\in G}|\\text{Fix}(g)| m1​=∣G∣1​g∈G∑​∣Fix(g)∣がわかりました。あとは m1m_1m1​ が軌道の個数に等しいことをいえばよいです。\n表現 φ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) に対し、VG={v∈V∣∀g∈G,φg(v)=v}V^G=\\{v\\in V\\mid \\forall g\\in G, \\varphi_g(v)=v\\}VG={v∈V∣∀g∈G,φg​(v)=v} とします。これは GGG-不変部分空間となります。\n補題 2：m1=dim⁡(CX)Gm_1=\\dim(\\mathbb{C}X)^Gm1​=dim(CX)G\n証明：σ~\\widetilde{\\sigma}σ を φ1⊕m1⊕φ2⊕m2⊕⋯\\varphi_1^{\\oplus m_1}\\oplus \\varphi_2^{\\oplus m_2}\\oplus\\cdotsφ1⊕m1​​⊕φ2⊕m2​​⊕⋯ と既約分解します。ただし φ1\\varphi_1φ1​ は自明な表現で、これ以外は自明な表現でないとします。この分解に対応して、CX\\mathbb{C}XCX も V1⊕m1⊕V2⊕m2⊕⋯V_1^{\\oplus m_1}\\oplus V_2^{\\oplus m_2}\\oplus\\cdotsV1⊕m1​​⊕V2⊕m2​​⊕⋯ と分解します。このとき (CX)G=(V1G)⊕m1⊕(V2G)⊕m2⊕⋯(\\mathbb{C}X)^G=(V_1^G)^{\\oplus m_1}\\oplus(V_2^G)^{\\oplus m_2}\\oplus\\cdots(CX)G=(V1G​)⊕m1​⊕(V2G​)⊕m2​⊕⋯ となります。ここで ViGV_i^GViG​ は ViV_iVi​ の GGG-不変部分空間ですが、φi\\varphi_iφi​ は既約なので、ViGV_i^GViG​ は {0}\\{0\\}{0} または ViV_iVi​ に等しくなります。i≥2i\\ge 2i≥2 に対し φi\\varphi_iφi​ は自明な表現でないので、ViG={0}V_i^G=\\{0\\}ViG​={0} となります。よって、(CX)G=V1⊕m1(\\mathbb{C}X)^G=V_1^{\\oplus m_1}(CX)G=V1⊕m1​​ となります。次元を比較して、dim⁡(CX)G=m1\\dim(\\mathbb{C}X)^G=m_1dim(CX)G=m1​ が従います。(証明終)\n補題 3：dim⁡(CX)G\\dim(\\mathbb{C}X)^Gdim(CX)G は軌道の個数に等しい。\n証明：軌道を O1,…,Om\\mathcal{O} _ 1,\\ldots,\\mathcal{O} _ mO1​,…,Om​ とし、vi=∑x∈Oix∈CXv_i=\\sum_{x\\in\\mathcal{O} _ i}x\\in\\mathbb{C}Xvi​=∑x∈Oi​​x∈CX とします。このとき vi∈(CX)Gv_i\\in(\\mathbb{C}X)^Gvi​∈(CX)G であることは簡単に確かめられます。また XXX が CX\\mathbb{C}XCX の基底であることから、v1,…,vmv_1,\\ldots,v_mv1​,…,vm​ が線形独立であることもわかります。よって v1,…,vmv_1,\\ldots,v_mv1​,…,vm​ が (CX)G(\\mathbb{C}X)^G(CX)G を張ることを示せばよいです。v=∑x∈Xcxxv=\\sum_{x\\in X}c_xxv=∑x∈X​cx​x を (CX)G(\\mathbb{C}X)^G(CX)G の任意の元とします。y,z∈Xy,z\\in Xy,z∈X が同じ軌道に属するとすると、ある g∈Gg\\in Gg∈G を用いて z=σg(y)z=\\sigma_g(y)z=σg​(y) と表せます。このとき\nv=σ~g(v)=∑x∈Xcxσg(x) v=\\widetilde{\\sigma} _ g(v)=\\sum_{x\\in X}c_x\\sigma_g(x) v=σg​(v)=x∈X∑​cx​σg​(x)となります。左辺の zzz の係数は czc_zcz​、右辺の zzz の係数は cyc_ycy​ です。よって cy=czc_y=c_zcy​=cz​ となります。このことから、ある c1,…,cm∈Cc_1,\\ldots,c_m\\in\\mathbb{C}c1​,…,cm​∈C が存在して、x∈Oix\\in\\mathcal{O} _ ix∈Oi​ ならば cx=cic_x=c_icx​=ci​ となります。よって\nv=∑x∈Xcxx=∑i=1mcivi v=\\sum_{x\\in X}c_xx=\\sum_{i=1}^mc_iv_i v=x∈X∑​cx​x=i=1∑m​ci​vi​となります。よって v1,…,vmv_1,\\ldots,v_mv1​,…,vm​ が (CX)G(\\mathbb{C}X)^G(CX)G を張ることが示されました。(証明終)\n以上の結果から、バーンサイドの補題が証明できました。\n参考文献 # 桂利行, 『代数学II 環上の加群』, 東京大学出版会, 2007 Steinberg, Benjamin. Representation theory of finite groups: an introductory approach. Springer Science \u0026amp; Business Media, 2011. ","date":"2021-08-05","externalUrl":null,"permalink":"/posts/burnside/","section":"数学記事・PDF","summary":"バーンサイドの補題が競技プログラミング界隈で話題のようです。先日開催された ABC で出題されたからです。\n","title":"バーンサイドの補題の表現論を用いた証明","type":"posts"},{"content":"競技プログラミングにおいて (高速) フーリエ変換は中～上級者の間でよく使われるテクニックです。AtCoder による解説も存在します。\nAtCoder Typical Contest 001 C - 高速フーリエ変換 また、有志による解説も数多く紹介します。ここでは一部を紹介します。\nFFT（高速フーリエ変換）を完全に理解する話 競技プログラミング だれでもわかる FFT/NTT 入門 高速フーリエ変換の超丁寧な解説！　Atcoder社の解説を詳解！ 高速フーリエ変換(FFT)による畳み込み この記事の目標は、表現論の立場からフーリエ変換を理解することです。表現論については最初になるべく解説しますが、線形代数と群論の用語は説明なく用いることがあります。記法は Steinberg (参考文献を参照) に基づいています。\n表現 # 群論のキーワードの 1 つに「対称性」があります。例えば正六角形は 60° 回転させたり、反転させたりしても形が変わりません。このような形を保つ変換は、合成しても形を保つ変換なので群をなします。正六角形の場合は位数 12 の二面体群と呼ばれるものになります。このように対称性を調べるのに群は大いに役立ちます。\nところで、群の定義を思い出してみましょう。\n群とは、集合 GGG と演算 ⋅:G×G→G\\cdot : G\\times G \\to G⋅:G×G→G の組であって次を満たすもの。\n任意の x,y,z∈Gx,y,z\\in Gx,y,z∈G に対し、x⋅(y⋅z)=(x⋅y)⋅zx\\cdot (y\\cdot z)=(x\\cdot y)\\cdot zx⋅(y⋅z)=(x⋅y)⋅z ある e∈Ge\\in Ge∈G が存在して、任意の g∈Gg\\in Gg∈G に対し g⋅e=e⋅g=gg\\cdot e=e\\cdot g=gg⋅e=e⋅g=g 任意の g∈Gg\\in Gg∈G に対しある g−1∈Gg^{-1}\\in Gg−1∈G が存在して、g⋅g−1=g−1⋅g=eg\\cdot g^{-1}=g^{-1}\\cdot g=eg⋅g−1=g−1⋅g=e どこにも対称性という言葉が出てきません。このような抽象的な定義では、対称性とどのような関係があるかわかりません。そこで、抽象的に定義された群がどのような対称性をもつのかを考えていきます。\nGGG を群、XXX を集合とします。XXX から XXX への全単射のなす集合を SXS_XSX​ と表します。これは合成に関して群をなします。このとき、GGG から SXS_XSX​ への群準同型のことを、GGG の XXX への作用と呼びます。GGG の各元に対し XXX 上の変換 (対称性) を対応させているイメージです。\n考えることが多いのが XXX が線形空間の場合です。ここでは VVV を nnn 次元複素線形空間とします (nnn は有限)。これに伴って、XXX から XXX への全単射を考える代わりに、VVV から VVV への可逆線形写像を考えます。これらのなす群を GL(V)GL(V)GL(V) とします。このとき、GGG から GL(V)GL(V)GL(V) への群準同型のことを、GGG の VVV 上の表現と呼びます。φ\\varphiφ が表現、g∈Gg\\in Gg∈G のとき、φ(g)\\varphi(g)φ(g) は VVV の線形変換です。φ(g)\\varphi(g)φ(g) を φg\\varphi_gφg​ と表すこともあります。また、VVV の次元 nnn のことを表現の次元といいます。例えば、位数 12 の二面体群が正六角形の対称性を表すということは 2 次元の表現であるとみることができます。\n線形変換は基底を 1 つとることで行列表示することが可能です。そのため、表現とは GGG から nnn 次元正則行列のなす群 GLn(C)GL_n(\\mathbb{C})GLn​(C) への群準同型のことだと考えてもよいです。群も線形代数もわからないよー＞＜という人は、群の各元に対し行列がなんかいい感じに対応しているものと考えてもよいかもしれません。\nV,WV,WV,W を線形空間とし、群 GGG の 2 つの表現 φ ⁣:G→GL(V),ψ ⁣:G→GL(W)\\varphi\\colon G\\to GL(V), \\psi\\colon G\\to GL(W)φ:G→GL(V),ψ:G→GL(W) を考えます。このとき直和空間 V⊕WV\\oplus WV⊕W 上に新たな表現 ρ ⁣:G→GL(V⊕W)\\rho\\colon G\\to GL(V\\oplus W)ρ:G→GL(V⊕W) を、ρg(v,w)=(φg(v),ψg(w)) (g∈G,v∈V,w∈W)\\rho_g(v,w)=(\\varphi_g(v),\\psi_g(w)) \\ (g\\in G, v\\in V, w\\in W)ρg​(v,w)=(φg​(v),ψg​(w)) (g∈G,v∈V,w∈W) により定めることができます。これを表現の直和といい、ρ=φ⊕ψ\\rho=\\varphi\\oplus\\psiρ=φ⊕ψ と表します。\nGGG の 2 つの表現 φ ⁣:G→GL(V),ψ ⁣:G→GL(W)\\varphi\\colon G\\to GL(V), \\psi\\colon G\\to GL(W)φ:G→GL(V),ψ:G→GL(W) が同値であるとは、線形同型 T ⁣:V→WT\\colon V\\to WT:V→W であって、任意の g∈Gg\\in Gg∈G に対し T∘φg=ψg∘TT\\circ\\varphi_g=\\psi_g\\circ TT∘φg​=ψg​∘T が成り立つものが存在することをいいます。\nφ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) を表現とし、WWW を VVV の部分空間とします。任意の g∈G,w∈Wg\\in G, w\\in Wg∈G,w∈W に対し φg(w)∈W\\varphi_g(w)\\in Wφg​(w)∈W となるとき、WWW を GGG-不変部分空間といいます。表現 φ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) が既約であるとは、GGG-不変部分空間が {0}\\{0\\}{0} と VVV のみであることをいいます。\n既約表現は素数と似ていると思った人もいるかもしれません。実際、素因数分解の表現バージョンともいえる以下の定理が知られています。\nマシュケの定理: 有限群の表現は、いくつかの既約表現の直和と同値である。 既約表現への分解は本質的に一意であることも知られています。\n指標 # 正方行列 AAA の対角成分の和 ∑i=1nAii\\sum_{i=1}^nA_{ii}∑i=1n​Aii​ を Tr(A)\\mathrm{Tr}(A)Tr(A) と表し、トレースと呼びます。トレースは Tr(AB)=Tr(BA)\\mathrm{Tr}(AB)=\\mathrm{Tr}(BA)Tr(AB)=Tr(BA) という性質をみたします。\nVVV から VVV への線形写像を 2 通りの基底で行列表示した結果が A,BA,BA,B であるとき、ある正則行列 PPP が存在して A=P−1BPA=P^{-1}BPA=P−1BP が成り立ちます。このとき Tr(A)=Tr(P−1BP)=Tr(BPP−1)=Tr(B)\\mathrm{Tr}(A)=\\mathrm{Tr}(P^{-1}BP)=\\mathrm{Tr}(BPP^{-1})=\\mathrm{Tr}(B)Tr(A)=Tr(P−1BP)=Tr(BPP−1)=Tr(B) となり、トレースは基底の選び方によらないことがわかります。\nよって、表現 φ ⁣:G→GL(V)\\varphi\\colon G\\to GL(V)φ:G→GL(V) に対し、関数 χφ ⁣:G→C\\chi_{\\varphi}\\colon G\\to \\mathbb{C}χφ​:G→C を χφ(g)=Tr(φ(g))\\chi_{\\varphi}(g)=\\mathrm{Tr}(\\varphi(g))χφ​(g)=Tr(φ(g)) と定めることができます。この χφ\\chi_{\\varphi}χφ​ を指標と呼びます。既約表現の指標を既約指標と呼びます。\nGGG から C\\mathbb{C}C への関数全体のなす集合を L(G)L(G)L(G) とおきます。指標はすべて L(G)L(G)L(G) に属します。この L(G)L(G)L(G) がどのような構造をもつか調べてみましょう。\nまず f1,f2∈L(G)f_1,f_2\\in L(G)f1​,f2​∈L(G) に対し、和 f1+f2f_1+f_2f1​+f2​ を (f1+f2)(x):=f1(x)+f2(x)(f_1+f_2)(x):=f_1(x)+f_2(x)(f1​+f2​)(x):=f1​(x)+f2​(x) により定義します。複素数倍は (cf)(x):=cf(x)(cf)(x):=cf(x)(cf)(x):=cf(x) により定義します。これにより L(G)L(G)L(G) は線形空間になります。また、内積を\n⟨f1,f2⟩:=1∣G∣∑g∈Gf1(g)‾f2(g) \\langle f_1,f_2\\rangle:=\\frac{1}{|G|}\\sum_{g\\in G}\\overline{f_1(g)}f_2(g) ⟨f1​,f2​⟩:=∣G∣1​g∈G∑​f1​(g)​f2​(g)と定めることができます。\n積は 2 種類あります。1 つは各点積 (f1⋅f2)(g):=f1(g)f2(g)(f_1\\cdot f_2)(g):=f_1(g)f_2(g)(f1​⋅f2​)(g):=f1​(g)f2​(g) で、もう 1 つは畳み込み積\n(f1∗f2)(g):=∑h∈Gf1(gh−1)f2(h) (f_1*f_2)(g):=\\sum_{h\\in G}f_1(gh^{-1})f_2(h) (f1​∗f2​)(g):=h∈G∑​f1​(gh−1)f2​(h)です。L(G)L(G)L(G) には 2 通りの環構造が定まることになります。各点積の方の環は C∣G∣\\mathbb{C}^{|G|}C∣G∣ と同型な環です。\n有限アーベル群上のフーリエ変換 # GGG を有限アーベル群とします。以下が成り立つことが知られています。\n既約表現は 1 次元である。ゆえに既約表現がそのまま既約指標になる。 既約指標は ∣G∣|G|∣G∣ 個存在する。 既約指標は L(G)L(G)L(G) の正規直交基底をなす。 GGG 上のフーリエ変換を考えていきます。G={g1,g2,…,gn}G=\\{g_1,g_2,\\ldots,g_n\\}G={g1​,g2​,…,gn​} とし、nnn 個の既約指標を χ1,χ2,…,χn\\chi_1,\\chi_2,\\ldots,\\chi_nχ1​,χ2​,…,χn​ とします。このとき、f∈L(G)f\\in L(G)f∈L(G) に対し、f^∈L(G)\\widehat{f}\\in L(G)f​∈L(G) を\nf^(gi)=n⟨χi,f⟩=∑g∈Gχi(g)‾f(g) \\widehat{f}(g_i)=n\\langle \\chi_i,f\\rangle=\\sum_{g\\in G}\\overline{\\chi_i(g)}f(g) f​(gi​)=n⟨χi​,f⟩=g∈G∑​χi​(g)​f(g)により定めます。この定義は gi,χig_i,\\chi_igi​,χi​ の番号のつけ方に依存します。\nχ1,χ2,…,χn\\chi_1,\\chi_2,\\ldots,\\chi_nχ1​,χ2​,…,χn​ は L(G)L(G)L(G) の正規直交基底をなすので、f∈L(G)f\\in L(G)f∈L(G) に対し\nf=∑i=1n⟨χi,f⟩χi f=\\sum_{i=1}^n\\langle \\chi_i,f\\rangle\\chi_i f=i=1∑n​⟨χi​,f⟩χi​と表せます。上の定義から\nf=1n∑i=1nf^(gi)χi f=\\frac{1}{n}\\sum_{i=1}^n\\widehat{f}(g_i)\\chi_i f=n1​i=1∑n​f​(gi​)χi​が成り立ちます。これをフーリエ逆変換と呼びます。\n逆変換の公式より、f^=0\\widehat{f}=0f​=0 ならば f=0f=0f=0 となります。よって T ⁣:L(G)→L(G)T\\colon L(G)\\to L(G)T:L(G)→L(G) を Tf=f^Tf=\\widehat{f}Tf=f​ により定めると、TTT は単射な線形変換です。L(G)L(G)L(G) は有限次元なので、TTT は線形同型となります。また\na∗b^(gi)=n⟨χi,a∗b⟩=∑g∈Gχi(g)‾(a∗b)(g)=∑g∈G∑h∈Gχi(g)‾a(gh−1)b(h)=∑h∈Gb(h)∑g∈Gχi(g)‾a(gh−1)=∑h∈Gb(h)∑x∈Gχi(xh)‾a(x)(x=gh−1)=∑h∈Gχi(h)‾b(h)∑x∈Gχi(x)‾a(x)=n⟨χi,b⟩⋅n⟨χi,a⟩=b^(gi)⋅a^(gi)=(a^⋅b^)(gi) \\begin{align*} \\widehat{a* b}(g_i) \u0026amp;= n\\langle\\chi_i,a* b\\rangle \\\\ \u0026amp;= \\sum_{g\\in G}\\overline{\\chi_i(g)}(a* b)(g) \\\\ \u0026amp;= \\sum_{g\\in G}\\sum_{h\\in G}\\overline{\\chi_i(g)}a(gh^{-1})b(h) \\\\ \u0026amp;= \\sum_{h\\in G}b(h)\\sum_{g\\in G}\\overline{\\chi_i(g)}a(gh^{-1}) \\\\ \u0026amp;= \\sum_{h\\in G}b(h)\\sum_{x\\in G}\\overline{\\chi_i(xh)}a(x) \\quad (x=gh^{-1}) \\\\ \u0026amp;= \\sum_{h\\in G}\\overline{\\chi_i(h)}b(h)\\sum_{x\\in G}\\overline{\\chi_i(x)}a(x) \\\\ \u0026amp;= n\\langle \\chi_i,b\\rangle\\cdot n\\langle \\chi_i,a\\rangle \\\\ \u0026amp;= \\widehat{b}(g_i)\\cdot\\widehat{a}(g_i) \\\\ \u0026amp;= (\\widehat{a}\\cdot\\widehat{b})(g_i) \\end{align*} a∗b(gi​)​=n⟨χi​,a∗b⟩=g∈G∑​χi​(g)​(a∗b)(g)=g∈G∑​h∈G∑​χi​(g)​a(gh−1)b(h)=h∈G∑​b(h)g∈G∑​χi​(g)​a(gh−1)=h∈G∑​b(h)x∈G∑​χi​(xh)​a(x)(x=gh−1)=h∈G∑​χi​(h)​b(h)x∈G∑​χi​(x)​a(x)=n⟨χi​,b⟩⋅n⟨χi​,a⟩=b(gi​)⋅a(gi​)=(a⋅b)(gi​)​より、T(a∗b)=Ta⋅TbT(a* b)=Ta\\cdot TbT(a∗b)=Ta⋅Tb となります。L(G)L(G)L(G) には 2 つの積 ⋅\\cdot⋅ と ∗*∗ が入るといいましたが、定まる 2 つの環は同型になることがわかりました。そして、フーリエ変換とはこの 2 つの環の間の同型写像であるとみることができます。\n離散フーリエ変換 # G=Z/NZG=\\mathbb{Z}/N\\mathbb{Z}G=Z/NZ、すなわち整数を NNN で割った余りのなす群について考えましょう。上で述べたフーリエ変換の理論を適用するためには、既約指標を求める必要があります。χ\\chiχ を Z/NZ\\mathbb{Z}/N\\mathbb{Z}Z/NZ の既約指標とします。χ(1)=z\\chi(1)=zχ(1)=z とおくと、χ(N)=zN\\chi(N)=z^Nχ(N)=zN となります。一方 χ(N)=χ(0)=1\\chi(N)=\\chi(0)=1χ(N)=χ(0)=1 なので、zN=1z^N=1zN=1 です。よって zzz は 1 の NNN 乗根です。1 の NNN 乗根は NNN 個あり、k=0,1,…,N−1k=0,1,\\ldots,N-1k=0,1,…,N−1 に対し e2πik/Ne^{2\\pi ik/N}e2πik/N です。\n実際、k=0,1,…,N−1k=0,1,\\ldots,N-1k=0,1,…,N−1 に対し χk(m)=e2πikm/N\\chi_k(m)=e^{2\\pi ikm/N}χk​(m)=e2πikm/N と定めると、χk\\chi_kχk​ は既約指標になります。既約指標は ∣G∣=N|G|=N∣G∣=N 個だったので、これですべてです。\nフーリエ変換は上の式に従って書くと、f ⁣:Z/NZ→Cf\\colon \\mathbb{Z}/N\\mathbb{Z}\\to\\mathbb{C}f:Z/NZ→C に対し\nf^(k)=∑m=0N−1χk(m)‾f(m)=∑m=0N−1e−2πikm/Nf(m) \\widehat{f}(k)=\\sum_{m=0}^{N-1}\\overline{\\chi_k(m)}f(m)=\\sum_{m=0}^{N-1}e^{-2\\pi ikm/N}f(m) f​(k)=m=0∑N−1​χk​(m)​f(m)=m=0∑N−1​e−2πikm/Nf(m)となります。フーリエ逆変換は\nf(k)=1N∑m=0N−1e2πikm/Nf^(m) f(k)=\\frac{1}{N}\\sum_{m=0}^{N-1}e^{2\\pi ikm/N}\\widehat{f}(m) f(k)=N1​m=0∑N−1​e2πikm/Nf​(m)です。\n多項式の積 # 2 つの多項式 f(x),g(x)f(x),g(x)f(x),g(x) の積を計算する際にフーリエ変換を用いることができます。普通に計算する場合の計算量は O(deg⁡fdeg⁡g)O(\\deg f\\deg g)O(degfdegg) です。\nまず N\u0026gt;deg⁡f+deg⁡gN\u0026gt;\\deg f+\\deg gN\u0026gt;degf+degg をみたす整数 NNN をとります。G=Z/NZG=\\mathbb{Z}/N\\mathbb{Z}G=Z/NZ とします。f(x)=∑amxmf(x)=\\sum a_mx^mf(x)=∑am​xm としたとき、関数 m↦amm\\mapsto a_mm↦am​ を考えることで fff を L(G)L(G)L(G) の元とみなします。同様に ggg も L(G)L(G)L(G) の元とみなします。このとき畳み込み f∗g∈L(G)f*g\\in L(G)f∗g∈L(G) は次のようになります。\n(f∗g)(m)=∑k=0N−1am−kbk (f* g)(m)=\\sum_{k=0}^{N-1}a_{m-k}b_k (f∗g)(m)=k=0∑N−1​am−k​bk​0≤m≤deg⁡f+deg⁡g0\\le m\\le \\deg f+\\deg g0≤m≤degf+degg に対し、(f∗g)(m)(f * g)(m)(f∗g)(m) を mmm 次の係数とする多項式は f(x)g(x)f(x)g(x)f(x)g(x) に等しいです。よって多項式の積 fgfgfg を計算するためには畳み込み f∗gf*gf∗g を計算すればよいことがわかりました。\nここでフーリエ変換が f∗g^=f^⋅g^\\widehat{f*g}=\\widehat{f}\\cdot \\widehat{g}f∗g​=f​⋅g​ をみたしていたことを思い出します。各点積が O(N)O(N)O(N) で計算できることから、以下のような方法で畳み込み計算を高速化できないか考えます。\nf,gf,gf,g のフーリエ変換 f^,g^\\widehat{f},\\widehat{g}f​,g​ を求める。 各点積 f^⋅g^\\widehat{f}\\cdot\\widehat{g}f​⋅g​ を求める。 これは f∗g^\\widehat{f * g}f∗g​ に等しいので、フーリエ逆変換により f∗gf*gf∗g を求める。 ここで問題となるのが、フーリエ係数 (f^(0),…,f^(N−1))(\\widehat{f}(0),\\ldots,\\widehat{f}(N-1))(f​(0),…,f​(N−1)) を求めるのに素朴に計算すると O(N2)O(N^2)O(N2) の時間計算量が必要になってしまうことです。これを高速に計算するのが、高速フーリエ変換のアルゴリズムです。\n高速フーリエ変換 # 一般の有限アーベル群 G={g1,g2,…,gn}G=\\{g_1,g_2,\\ldots,g_n\\}G={g1​,g2​,…,gn​} に対するフーリエ変換\nf^(gi)=n⟨χi,f⟩=∑g∈Gχi(g)‾f(g) \\widehat{f}(g_i)=n\\langle \\chi_i,f\\rangle=\\sum_{g\\in G}\\overline{\\chi_i(g)}f(g) f​(gi​)=n⟨χi​,f⟩=g∈G∑​χi​(g)​f(g)を考えます。ここで、HHH を GGG の部分群とし、剰余類分解 G=t1H∪t2H∪⋯∪tmHG=t_1H\\cup t_2H\\cup\\cdots\\cup t_mHG=t1​H∪t2​H∪⋯∪tm​H を考えます。すなわち、GGG の任意の元は g=tjh (1≤j≤m,h∈H)g=t_jh \\ (1\\le j\\le m, h\\in H)g=tj​h (1≤j≤m,h∈H) と一意的に表せます。すると上の式は次のようになります。\nf^(gi)=∑j=1m∑h∈Hχi(tjh)‾f(tjh)=∑j=1mχi(tj)‾∑h∈Hχi(h)‾f(tjh) \\widehat{f}(g_i)=\\sum_{j=1}^m\\sum_{h\\in H}\\overline{\\chi_i(t_jh)}f(t_jh)=\\sum_{j=1}^m\\overline{\\chi_i(t_j)}\\sum_{h\\in H}\\overline{\\chi_i(h)}f(t_jh) f​(gi​)=j=1∑m​h∈H∑​χi​(tj​h)​f(tj​h)=j=1∑m​χi​(tj​)​h∈H∑​χi​(h)​f(tj​h)この式の内側の総和は、HHH に関するフーリエ変換です (GGG の既約指標の定義域を HHH に制限したものは HHH の既約指標になることに注意します)。この式は次のように解釈できます。\n部分群 HHH についてフーリエ変換を計算する。 剰余類について総和を求める。 HHH についてフーリエ変換を計算する部分にもこれを適用することができます。これを繰り返すことで、部分群の列 G≥G1≥G2≥⋯≥{1}G\\ge G_1\\ge G_2\\ge\\cdots\\ge \\{1\\}G≥G1​≥G2​≥⋯≥{1} を考えることになります。\n離散フーリエ変換で考えましょう。特に 2 べきの場合を考えます。G=Z/2NZG=\\mathbb{Z}/2N\\mathbb{Z}G=Z/2NZ (NNN は 2 べき) とし、HHH を 2 の倍数からなる部分群 2Z/2NZ≅Z/NZ2\\mathbb{Z}/2N\\mathbb{Z}\\cong \\mathbb{Z}/N\\mathbb{Z}2Z/2NZ≅Z/NZ とします。剰余類 G/HG/HG/H を考えることは、222 で割った余りを考えることと同じです。000 以上 2N−12N-12N−1 以下の整数 mmm に対し、m=2a+r (0≤a≤N−1,0≤r≤1)m=2a+r \\ (0\\le a\\le N-1, 0\\le r\\le 1)m=2a+r (0≤a≤N−1,0≤r≤1) と表すと\nf^(k)=∑m=02N−1e−2πikm/2Nf(m)=∑r=01e−2πikr/2N∑a=0N−1e−2πik2a/2Nf(2a+r)=∑a=0N−1e−2πika/Nf(2a)+e−2πik/2N∑a=0N−1e−2πika/Nf(2a+1) \\begin{align*} \\widehat{f}(k) \u0026amp;= \\sum_{m=0}^{2N-1}e^{-2\\pi ikm/2N}f(m) \\\\ \u0026amp;= \\sum_{r=0}^1e^{-2\\pi ikr/2N}\\sum_{a=0}^{N-1}e^{-2\\pi ik2a/2N}f(2a+r) \\\\ \u0026amp;= \\sum_{a=0}^{N-1}e^{-2\\pi ika/N}f(2a)+e^{-2\\pi ik/2N}\\sum_{a=0}^{N-1}e^{-2\\pi ika/N}f(2a+1) \\end{align*} f​(k)​=m=0∑2N−1​e−2πikm/2Nf(m)=r=0∑1​e−2πikr/2Na=0∑N−1​e−2πik2a/2Nf(2a+r)=a=0∑N−1​e−2πika/Nf(2a)+e−2πik/2Na=0∑N−1​e−2πika/Nf(2a+1)​となります。G=Z/2NZG=\\mathbb{Z}/2N\\mathbb{Z}G=Z/2NZ 上のフーリエ変換を、H≅Z/NZH\\cong\\mathbb{Z}/N\\mathbb{Z}H≅Z/NZ 上のフーリエ変換 2 回によって求めています。HHH にも同様のことを行い、再帰的に繰り返します。\nこの方法により、Z/NZ\\mathbb{Z}/N\\mathbb{Z}Z/NZ 上のフーリエ変換を O(Nlog⁡N)O(N\\log N)O(NlogN) で求めることができます。より一般に、N=∏piN=\\prod p_iN=∏pi​ と素因数分解したとき、Z/NZ\\mathbb{Z}/N\\mathbb{Z}Z/NZ 上のフーリエ変換を O(N∑pi)O(N\\sum p_i)O(N∑pi​) で求めることができます。これは Cooley-Tukey のアルゴリズムと呼ばれています。\n改めて多項式の積の求め方を書きます。f=∑amxm,g=∑bmxmf=\\sum a_mx^m, g=\\sum b_mx^mf=∑am​xm,g=∑bm​xm に対し、N\u0026gt;deg⁡f+deg⁡gN\u0026gt;\\deg f+\\deg gN\u0026gt;degf+degg をみたす NNN (ここでは 2 べきにする) をとります。a,ba,ba,b の離散フーリエ変換 a^,b^\\widehat{a},\\widehat{b}a,b を求め、各点積 a^⋅b^\\widehat{a}\\cdot \\widehat{b}a⋅b を計算します。これは a∗b^\\widehat{a * b}a∗b に等しいので、逆変換を行うことで a∗ba*ba∗b が求められます。これで多項式の積 fgfgfg が計算できました。\n実装したものがこちらになります。(Kotlin 言語) https://atcoder.jp/contests/atc001/submissions/24183589\n高速フーリエ変換の工夫の部分 # 上のコードは再帰で実装していますが、非再帰で実装することもでき、(検証していませんが) 速くなるようです。高速フーリエ変換のアルゴリズムにはいくつかの種類があり、AtCoder の解説でも触れられています。\nおまけ # 非アーベル群上のフーリエ変換 # アーベル群とは限らない有限群 GGG に対するフーリエ変換を定義します。φ(1),…,φ(s)\\varphi^{(1)},\\ldots,\\varphi^{(s)}φ(1),…,φ(s) を GGG の既約表現とします。各 φg(k)\\varphi_g^{(k)}φg(k)​ がユニタリ行列となるように行列表示することができ、φg(k)=(φij(k)(g))\\varphi_g^{(k)}=(\\varphi_{ij}^{(k)}(g))φg(k)​=(φij(k)​(g)) により関数 φij(k) ⁣:G→C\\varphi_{ij}^{(k)}\\colon G\\to\\mathbb{C}φij(k)​:G→C を定めます。また φ(k)\\varphi^{(k)}φ(k) の次数を dkd_kdk​ とします。このとき、dkφij(k)\\sqrt{d_k}\\varphi_{ij}^{(k)}dk​​φij(k)​ は L(G)L(G)L(G) の正規直交基底をなします。\nMd(C)M_d(\\mathbb{C})Md​(C) を ddd 次複素正方行列のなす環とします。ddd 次の表現 φ\\varphiφ と f∈L(G)f\\in L(G)f∈L(G) に対し、行列 f^(φ)∈Md(C)\\widehat{f}(\\varphi)\\in M_{d}(\\mathbb{C})f​(φ)∈Md​(C) を\nf^(φ)=∑g∈Gφ(g)‾f(g) \\widehat{f}(\\varphi)=\\sum_{g\\in G}\\overline{\\varphi(g)}f(g) f​(φ)=g∈G∑​φ(g)​f(g)により定め、写像 T ⁣:L(G)→Md1(C)×⋯×Mds(C)T\\colon L(G)\\to M_{d_1}(\\mathbb{C})\\times\\cdots\\times M_{d_s}(\\mathbb{C})T:L(G)→Md1​​(C)×⋯×Mds​​(C) を Tf=(f^(φ(1)),…,f^(φ(s)))Tf=(\\widehat{f}(\\varphi^{(1)}),\\ldots,\\widehat{f}(\\varphi^{(s)}))Tf=(f​(φ(1)),…,f​(φ(s))) により定めます。このとき、フーリエ逆変換は\nf=1n∑i,j,kdkf^(φ(k))ijφij(k) f=\\frac{1}{n}\\sum_{i,j,k}d_k\\widehat{f}(\\varphi^{(k)}) _ {ij}\\varphi_{ij}^{(k)} f=n1​i,j,k∑​dk​f​(φ(k))ij​φij(k)​となります。アーベル群の場合には畳み込み積は各点積と対応していましたが、一般には次の定理のようになります。\n定理 (Wedderburn): T ⁣:L(G)→Md1(C)×⋯×Mds(C)T\\colon L(G)\\to M_{d_1}(\\mathbb{C})\\times\\cdots\\times M_{d_s}(\\mathbb{C})T:L(G)→Md1​​(C)×⋯×Mds​​(C) は環同型である。ここで L(G)L(G)L(G) は畳み込み積の入った環である。 R\\mathbb{R}R 上のフーリエ変換 # 無限群のフーリエ変換を考えるには、有限和だった部分を無限和にしなければなりません。R\\mathbb{R}R の場合は積分を考えます。積分が収束するかどうかについて考える必要がありますが、ここでは省略します。\n関数 f,g ⁣:R→Cf,g\\colon \\mathbb{R}\\to\\mathbb{C}f,g:R→C に対し、畳み込みは\n(f∗g)(x)=∫−∞∞f(x−y)g(y)dy (f * g)(x)=\\int_{-\\infty}^{\\infty}f(x-y)g(y)dy (f∗g)(x)=∫−∞∞​f(x−y)g(y)dyフーリエ変換は\nf^(x)=∫−∞∞e−2πixtf(t)dt \\widehat{f}(x)=\\int_{-\\infty}^{\\infty}e^{-2\\pi ixt}f(t)dt f​(x)=∫−∞∞​e−2πixtf(t)dtとなります。フーリエ逆変換は\nf(x)=∫−∞∞e2πixtf^(t)dt f(x)=\\int_{-\\infty}^{\\infty}e^{2\\pi ixt}\\widehat{f}(t)dt f(x)=∫−∞∞​e2πixtf​(t)dtとなります。この場合にも、f∗g^=f^⋅g^\\widehat{f*g}=\\widehat{f}\\cdot\\widehat{g}f∗g​=f​⋅g​ が成り立ちます。\n元々は R\\mathbb{R}R 上のフーリエ解析の方が先に誕生しました。熱方程式の研究に用いられたようです。\n高速フーリエ変換 # Cooley-Tukey のアルゴリズムは有限群に一般化することができます。これは Diaconis, Rockmore の論文で述べられています。\n有限アーベル群の場合と同様に、部分群に関するフーリエ変換と剰余類に関する和に分解することができますが、1 つ注意しなければならないことがあります。φ\\varphiφ が GGG の既約表現であっても、定義域を部分群 HHH に制限したものは HHH の既約表現になるとは限らないことです。しかしマシュケの定理により、これは HHH の既約表現のいくつかの直和として表せます。よって、次のようなアルゴリズムになります。\nGGG の部分群 HHH と左剰余類分解 G=t1H∪⋯∪tmHG=t_1H\\cup\\cdots\\cup t_mHG=t1​H∪⋯∪tm​H を 1 つ選ぶ。 各 tjt_jtj​ に対し、HHH の既約表現に対するフーリエ変換を求める。 行列をかけて j=1,2,…,mj=1,2,\\ldots,mj=1,2,…,m について足し合わせる。 任意の有限群 GGG に対し、ある定数 ccc が存在して、フーリエ変換を O(∣G∣log⁡c∣G∣)O(|G|\\log^c |G|)O(∣G∣logc∣G∣) で求めるアルゴリズムが存在すると予想されているようですが、これを解決したという情報は見つけられませんでした。\n参考文献・おすすめの本など # 表現論やフーリエ変換に関係する本を紹介します。すべての本を知っているわけではないのでご了承ください。\nSteinberg, Benjamin. Representation theory of finite groups: an introductory approach. Springer Science \u0026amp; Business Media, 2011. 有限群の表現論の基礎がまとまっています。英語の本ですが、表現論が初めてという人にもおすすめできると思います。ただし線形代数と群論はある程度知っている必要があります。この記事のうち高速フーリエ変換以外の部分について大いに参考にしました。 平井武, 線型代数と群の表現 I, II. すうがくぶっくす 20, 21, 朝倉書店. 日本語の本で初心者におすすめできそうなのはこの本だと思っています (持っていないので大声でおすすめできませんが……)。線形代数・群論・表現論を扱っているようです。 河添健, 群上の調和解析, すうがくの風景1, 朝倉書店, 2000. 表現論とフーリエ変換を扱っています。元気な高校生なら十分チャレンジできる！とありますが本当でしょうか。 エリアス・M. スタイン ラミ・シャカルチ, フーリエ解析入門, 日本評論社, 2007 プリンストン解析学講義シリーズの最初の巻で、主に R\\mathbb{R}R 上のフーリエ解析を扱っていますが有限フーリエ解析の記述もあります。応用としてディリクレの定理 (初項と公差が互いに素な等差数列には素数が無限に存在する) を証明しています。 Cooley, James W., and John W. Tukey. \u0026ldquo;An algorithm for the machine calculation of complex Fourier series.\u0026rdquo; Mathematics of computation 19.90 (1965): 297-301. Cooley-Tukey の論文です。 Diaconis, Persi, and Daniel Rockmore. \u0026ldquo;Efficient computation of the Fourier transform on finite groups.\u0026rdquo; Journal of the American Mathematical Society 3.2 (1990): 297-332. Cooley-Tukey のアルゴリズムを一般の有限群に拡張した論文です。 ","date":"2021-08-05","externalUrl":null,"permalink":"/posts/fourier/","section":"数学記事・PDF","summary":"競技プログラミングにおいて (高速) フーリエ変換は中～上級者の間でよく使われるテクニックです。AtCoder による解説も存在します。\n","title":"フーリエ変換と表現論","type":"posts"},{"content":"","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"","externalUrl":null,"permalink":"/series/","section":"Series","summary":"","title":"Series","type":"series"},{"content":"","externalUrl":null,"permalink":"/textbook/theorems/","section":"しっかり学ぶ組合せ論のエッセンス","summary":"","title":"定理一覧","type":"textbook"},{"content":" 命題（積の公式） 有限集合 A,BA,BA,B に対して、A×B={(a,b)∣a∈A,b∈B}A\\times B=\\{(a,b)\\mid a\\in A, b\\in B\\}A×B={(a,b)∣a∈A,b∈B} とおく。このとき、∣A×B∣=∣A∣×∣B∣|A\\times B|=|A|\\times |B|∣A×B∣=∣A∣×∣B∣ が成り立つ。 ","externalUrl":null,"permalink":"/textbook/theorems/product-rule/","section":"しっかり学ぶ組合せ論のエッセンス","summary":" 命題（積の公式） 有限集合 A,BA,BA,B に対して、A×B={(a,b)∣a∈A,b∈B}A\\times B=\\{(a,b)\\mid a\\in A, b\\in B\\}A×B={(a,b)∣a∈A,b∈B} とおく。このとき、∣A×B∣=∣A∣×∣B∣|A\\times B|=|A|\\times |B|∣A×B∣=∣A∣×∣B∣ が成り立つ。 ","title":"命題（積の公式）","type":"textbook"},{"content":" 命題（和の公式） A,BA, BA,B を共通部分が空集合であるような有限集合とする。このとき ∣A∪B∣=∣A∣+∣B∣|A \\cup B|=|A|+|B|∣A∪B∣=∣A∣+∣B∣ が成り立つ。 ","externalUrl":null,"permalink":"/textbook/theorems/sum-rule/","section":"しっかり学ぶ組合せ論のエッセンス","summary":" 命題（和の公式） A,BA, BA,B を共通部分が空集合であるような有限集合とする。このとき ∣A∪B∣=∣A∣+∣B∣|A \\cup B|=|A|+|B|∣A∪B∣=∣A∣+∣B∣ が成り立つ。 ","title":"命題（和の公式）","type":"textbook"}]