Visual Gröbner Basis

グレブナー基底:DOT + d3-graphviz によるグラフィカル理解

単項式の可除関係、初期イデアル、割り算、Buchberger アルゴリズム、消去、商環を有向グラフとして読むための可視化レポート。

先頭へ

このレポートの狙い

グレブナー基底は、定義だけで追うと「先頭項」「S多項式」「割り算」「消去定理」が別々の操作に見えがちです。このレポートでは、それらをすべて 有向グラフ として見ます。

代数的対象多項式、単項式、イデアル、商環。
グラフ的対象ノード、辺、到達可能性、閉包、正規形、状態遷移。

特に重要なのは次の対応です。

代数グラフでの見方読み取るべき情報
単項式の可除関係 \(m \mid n\)\(m\to n\) の辺単項式イデアルの上方閉集合
初期イデアル \(\operatorname{in}_<(I)\)赤く塗られた「禁止領域」標準単項式の補集合
多変数割り算先頭項を小さくする有向書換え停止性と正規形
Buchberger アルゴリズム未処理ペアを減らす状態遷移全ての critical pair が 0 に落ちるか
消去変数を忘れる射影図式\(I\cap k[x_{r+1},\ldots,x_n]\)
注意グラフは証明そのものではありません。しかし、証明で使われる「整列性」「可除閉包」「先頭項の減少」「S多項式による合流性検査」を視覚的に掴むには非常に有効です。

DOT で何を描くか

DOT は Graphviz のグラフ記述言語です。この HTML では DOT 文字列を d3-graphviz に渡し、ブラウザ内で SVG として描画します。最小例は次です。

digraph G {
  rankdir=LR;
  f1 -> S12 -> r12;
  f2 -> S12;
}

グレブナー基底の学習では、DOT の文法を深く覚える必要はありません。次の対応だけで十分です。

  • digraph は有向グラフ。
  • A -> B は「A から B へ進む」「A が B を生む」「A が B を割る」などの向きを表す。
  • label, color, fillcolor, shape により数学的意味を色分けする。

DOT ギャラリー

単項式の可除関係:グレブナー基底の土台

単項式 \(x^a y^b\) と \(x^c y^d\) について、

\[x^a y^b \mid x^c y^d \quad\Longleftrightarrow\quad a\le c \text{ かつ } b\le d.\]

したがって単項式全体は格子状の半順序集合になります。単項式イデアル \(M=\langle x^2,xy^2,y^4\rangle\) は、生成元から右上方向に閉じた領域です。

視覚化の意味緑は標準単項式、赤は初期イデアルに入る単項式です。辺は「\(x\) または \(y\) を掛ける」操作を表します。

初期イデアルと階段図形

グレブナー基底 \(G\) の先頭単項式が \(\operatorname{LM}(G)=\{x^2,xy^2,y^4\}\) なら、初期イデアルは

\[\operatorname{in}_<(I)=\langle x^2,xy^2,y^4\rangle.\]

標準単項式はこの単項式イデアルに属さない単項式です。図形としては、赤い上方閉領域の補集合が「階段」です。

有限次元判定の視覚版各変数 \(x_i\) について、どこかの純冪 \(x_i^{N_i}\) が初期イデアルに入れば、階段は有限個の点になります。このとき \(k[x_1, \ldots,x_n]/I\) は有限次元です。

階段図形ジェネレータ

生成元を x^2, xy^2, y^4 のように入力してください。2変数 \(x,y\) 専用です。

多変数割り算は「先頭単項式を小さくする」書換えグラフ

割り算で \(f\) から \(f-cx^\alpha g_i\) へ進むとき、選んだ \(cx^\alpha g_i\) は \(f\) の先頭項を消すように作られます。単項式順序が整列順序なので、この操作は無限に続けられません。

\[ f \longrightarrow f - \frac{\operatorname{LT}(f)}{\operatorname{LT}(g_i)}g_i \quad\text{whenever}\quad \operatorname{LT}(g_i)\mid \operatorname{LT}(f). \]

ただし、一般の生成系では割る順番により余りが変わります。グレブナー基底では、イデアル所属判定に使う正規形が安定します。

図の読み方

この図では \(G=\{g_1=x^2-y,\;g_2=xy-1\}\) から始めます。\(S(g_1,g_2)=x-y^2\) が 0 に落ちないので、新しい書換え規則 \(g_3=x-y^2\) を加えます。さらに \(xy-1\) を \(g_3\) で割ると \(y^3-1\) が現れ、最終的に \(\{x-y^2,y^3-1\}\) が簡約基底になります。

Buchberger アルゴリズムを状態遷移として見る

Buchberger アルゴリズムの本質は「すべての critical pair が合流するか」を調べることです。二つの多項式 \(g_i,g_j\) から S多項式を作り、現在の集合で割ります。余りが 0 でなければ、その余りは新しいノードとして基底候補に追加されます。

状態の表現状態を \((G,P)\) と書きます。\(G\) は現在の基底候補、\(P\) は未処理ペア集合です。辺は「ペアを 1 つ処理する」遷移です。

Critical pair グラフ切替

消去を図式で見る

辞書式順序 \(x_1>\cdots>x_n\) は、左側の変数を優先して消すための順序です。\(G\) がこの順序でのグレブナー基底なら、

\[G\cap k[x_{r+1},\ldots,x_n]\quad\text{は}\quad I\cap k[x_{r+1},\ldots,x_n]\text{のグレブナー基底}. \]

たとえば \(I=\langle x^2-y,xy-1\rangle\subset k[x,y]\)、lex \(x>y\) では簡約基底が

\[G=\{x-y^2,\;y^3-1\}. \]

ここで \(G\cap k[y]=\{y^3-1\}\) が \(x\) を消去した方程式です。

商環の標準単項式グラフ

\(G=\{x-y^2,y^3-1\}\) では \(\operatorname{LT}(G)=\{x,y^3\}\) です。標準単項式は

\[\mathcal{B}=\{1,y,y^2\}. \]

商環 \(k[x,y]/I\) では \(x=y^2\), \(y^3=1\) なので、\(x\) や \(y\) を掛ける操作もこの 3 次元空間内に戻ります。

線形代数への接続標準単項式を基底にすると、「\(x\) を掛ける」「\(y\) を掛ける」は行列になります。零次元イデアルの解法では、乗法行列の固有値から座標を読む方法があります。

対話ラボ:自分で DOT を書き換える

下のエディタに DOT を書き、描画してください。ノードの色や辺のラベルを変えるだけでも、証明の構造がかなり見えやすくなります。

読み取りのまとめ

階段図形初期イデアルの補集合。標準単項式基底を読む。
書換えグラフ割り算は先頭項を消す有向遷移。整列性が停止性を保証する。
critical pair グラフS多項式の余りが 0 になるかを辺で表示する。0 にならない辺は新規基底候補を生む。
消去図式lex 順序のグレブナー基底から、変数を含まない部分を読み取る。

グラフとして覚えるべき最重要メッセージは、グレブナー基底とは、すべての局所的な曖昧さが解消された書換え規則の集合だということです。