消去法
これを Macaulay2 (M2) に貼り付ける(paste).
または名前 09-elim-2.m2 で保存して, M2で
load "09-elim-2.m2"
変数の値は表示されないので, load したあとたとえば J と入力すれば
イデアル $I$ から $x$ を消去したイデアル $J={\bf Q}[y] \cap I$ の生成元がわかる.
gens G
でグレブナー基底 G の要素を出力.
r と q は $y^4$ をグレブナー基底 G で reduction (割り算)した商と余り.
r2 と q2 は $x (xy-1)$ をグレブナー基底 G で reduction (割り算)した商と余り.
Macaulay 2 のコメントは -- から行末まで.
消去法で toric ideal の生成元を求める
affine toric ideal を定義する行列 $A$ は
$
A = \pmatrix{ 1 & 1 & 1 & 1 \cr
0 & 1 & 3 & 4 \cr}
$
コマンド toricGroebner は 4ti2
なる affine toric ideal 専用のアルゴリズムを
組み込んだシステムを呼び出して toric ideal の生成元
$z_2^3-z_1^2 z_3, z_2 z_3-z_1 z_4, -z_1 z_3^2+z_2^2 z_4, z_3^3-z_2 z_4^2$
を求める.
対応する Markov 基底($Ay=b$ を満たす $y \in {\bf Z}_{\geq 0}^4$ をサンプル点とする
モンテカルロ法で使う)は
$(0,3,0,0)-(2,0,1), (0,1,1,0)-(1,0,0,1), (1,0,2,0)-(0,2,0,1),
(0,0,3,0)-(0,1,0,2)$
似た計算を
$
A = \pmatrix{ 1 & 1 & 1 & 1 \cr
0 & 0 & 1 & 1 \cr
0 & 1 & 0 & 1 \cr}
$
の時にやる. この場合は J, J2 は単項生成イデアル.
toric ideal のグレブナー基底で正則三角形分割を求める
三角形分割への翻訳法:
P は
$ \langle z_1, z_2 \rangle
\cap \langle z_2, z_5 \rangle
\cap \langle z_4, z_2 , z_5\rangle $
たとえば集合 $\{1,2\}$ を誤解がなければ $12$ と略.
$12345$ (頂点の番号)から $12$ を除くと $345$ (これが三角形).
$12345$ から $25$ を除くと $134$ (これも三角形).
$12345$ から $425$ を除くと $13$ (これは三角形でないので捨てる).
結局 $345, 134$ が三角形分割となる.
Weights を変更すると三角形分割の形が変わる.
練習: Weights を変更していろんな三角形分割を生成して図示する.
例その2. プリズムの三角形(4面体)分割.
P は
$ \langle z_1,z_2\rangle \cap \langle z_2,z_6\rangle \cap \langle z_4,z_6\rangle $
なので,
$3456, 1345, 1235$
が三角形分割.
図を書いてみよう.
toric ideal のグレブナー基底で整数計画法
$
\pmatrix{1&1&1&1&1 \cr
10&7&9&1&0\cr}
y = \pmatrix{ 57 \cr 57 \cr}
$
を満たす
$ y \in {\bf Z}_{\geq 0}^5$
で
$ -16 y_1 -10 y_2 -11 y_3 $ を最小化
($ 16 y_1 +10 y_2 +11 y_3 $ を最大化) するものを求める.
ここで $y_4, y_5$ はスラック変数.
ans は
$z_1^5 z_2 z_5^{51}$ なので
$y=(5,1,0,0,51)$
が解.