2018年9月10日版
Groebner 基底
(2018年2学期現代数学特論)
原 信一郎
http://blade.nagaokaut.ac.jp/∼hara/class/groebner/
twitter:hara sin16
代数と幾何
まず最初に代数系の基礎を紹介する。
§1 環と体
1.1 環と体の公理
定義 1.1(環と体) 集合 R 上に 2 つの演算
+ : R×R → R, (a, b) 7→ a+ b· : R×R → R, (a, b) 7→ a · b
が定義されているとする。更に 2 つの異なる要素 0, 1 ∈ R が定められているとする。これらが、以下の条件(環の 公理)を満たしているとき、(R, +, ·, 0, 1) は 環であるという。
(1) 【結合則】 任意の a, b, c ∈ R について(a+ b) + c = a+ (b+ c).
(2) 【交換則】 任意の a, b ∈ R について a+ b = b+ a.
(3) 【零元の存在】任意の a ∈ R について a+ 0 = a, 0 + a = a.
(4) 【負元の存在】 任意の a ∈ R について、ある b ∈ R が存在してa+ b = b+ a = 0.
(5) 【結合則】 任意の a, b, c ∈ R について(a · b) · c = a · (b · c).(6) 【単位元の存在】任意の a ∈ R についてa · 1 = a, 1 · a = a.
(7) 【分配則】 任意の a, b, c ∈ R についてa · (b+ c) = a · b+ a · c, (a+ b) · c = a · c+ b · c.
更に
(8) 【交換則】 任意の a, b ∈ R について a · b = b · a.が成り立つならば、 可換環であると言う。
また、更に
(9) 【逆元の存在】 任意の a ∈ R について、a ̸= 0 ならば、ある b ∈ R が存在してa · b = b · a = 1.
が成り立つならば、 体であると言う。
記法 1(1) +, · を R の加法、乗法と呼ぶ。(2) 0, 1 を R の零元、単位元と呼ぶ。(3) a · b はしばしば · を省略して ab と書く。(4) 定義1.1の(4)の b を a の負元と言い、−a と書く。(5) a+ (−b) を a− b と書く。(6) 定義1.1の(9)の b を a の逆元と言い、a−1 と書く。(7) a · b−1 を a/b と書く。
注 1
(1) この文書では「環」といえば「可換環」を指すことにする。(2) この文書では「体」といえば0 ̸= 1を仮定する。(3) 環 (R, +, ·, 0, 1) を単に R と書くことがある。
定義 1.2(単元, 可逆元) 環 R の要素で逆元を持つものを 単元あるいは 可逆元 という。単元全体をR× と書く。
注 2(1) Rが体 ⇐⇒ R× = R− {0}。(2) Rが体 ⇒ (R[x])× = R×。
命題 1.3(環の性質) R を環とするとき以下が成り立つ。
(1) R の零元は一意的である。(2) R の単位元は一意的である。(3) a ∈ R の負元は一意的である。
(4) a ∈ R の逆元は存在すれば一意的である。(5) a · 0 = 0.
(6) a · (−b) = −(a · b).
例 1(環と体の例)(1) 【整数環】(Z, +, ·, 0, 1).
(2) 【有理数体】(Q, +, ·, 0, 1).
(3) 【実数体】(R, +, ·, 0, 1).
(4) 【複素数体】(C, +, ·, 0, 1).
(5) (Z[√d], +, ·, 0, 1)、ただし、d を整数とする。
(6) 【多項式環】(k[x1, x2, · · · , xn], +, ·, 0, 1). ただし k を環とする。(以下同様)(7) 【正方行列環】(Mn(k), +, ·, O, E) (非可換).
(8) 【対角行列環】(Dn(k), +, ·, O, E).
(9) A2 = {a, b}+ a b
a a b
b b a
· a b
a a a
b a b
において、0 = a, 1 = b としたもの。
(10) A4 = {a, b, c, d}
+ a b c d
a a b c d
b b c d a
c c d a b
d d a b c
· a b c d
a a a a a
b a b c d
c a c a c
d a d c b
において、0 = a, 1 = b としたもの。
1.2 準同型
記法 2 • 今後 k で任意の体(例 Q, R, C)を表す。• {a, b, c} : 順序のない集合。• (a, b, c) : 順序のある集合。• 論理記号
∀x · · · : 任意の x について · · ·。∃x · · · : ある x について · · ·。P =⇒ Q : P ならば Q。P ⇐⇒ Q : P と Q は同値。P ∨Q : P または Q。P ∧Q : P かつ Q。¬P : P でない。
定義 1.4(全射と単射) f : X → Y を写像とするとき、
(1) 「∀y ∈ Y ∃x ∈ Xf(x) = y」が成り立つ時、f は 全射であるという。(2) 「∀x, x′ ∈ X(x ̸= x′ ⇒ f(x) ̸= f(x′))」が成り立つ時、f は 単射であるという。(3) f が全射でかつ単射であるとき f は 全単射という。
定義 1.5(準同型) R, S を環とし、写像 f : R → S に対して次の条件が成り立つとき、f は R からS への 準同型写像という。
(1) ∀a, b ∈ R f(a+ b) = f(a) + f(b)
(2) ∀a, b ∈ R f(a · b) = f(a) · f(b)(3) f(1) = 1
また更に f が全単射であるとき、f は R から S への 同型写像であるという。環 R と S の間に少なくとも一つ同型写像がある時、R と S は 同型 であるといい、R ∼= S と書く。
命題 1.6 f : R → S を環の準同型とするとき以下が成り立つ。
(1) f(0) = 0.
(2) f(−a) = −f(a).
(3) f(a−1) = f(a)−1, (a−1が存在するとき).
(4) f が同型なら f−1 も同型。
代数学は同型で不変な性質を研究する。
例 2(1) 任意の環 R について、その恒等写像 i : R → R, x 7→ x は同型。(2) f : A2 → A4, f(a) = a, f(b) = c は単射準同型ではない。(3) g : A4 → A2, g(a) = a, g(b) = b, g(c) = a, g(d) = b は全射準同型。
定義 1.7(部分環) (R, +, ·, 0, 1) を環、S がその部分集合で、同じ+, ·, 0, 1 で環になっているとき、S を R の 部分環 という。このとき恒等写像 j : S → R, x 7→ x は準同型であり、これを 包含写像あるいは 埋め込み写像という。
例 3(1) Z は Q の部分環。(2) Q は R の部分環。(3) R は C の部分環。(4) Dn(k) は Mn(k) の部分環。
1.3 イデアルと剰余環
定義 1.8(イデアル) R を環、I をその空でない部分集合で、次の条件を満たすとき、I は R のイデアルであるという。
(1) ∀x, y ∈ I x+ y ∈ I.
(2) ∀x ∈ R ∀y ∈ I x · y ∈ I.
例 4(1) R と {0} は R のイデアル。これらを 自明なイデアルという。(2) nZ = {n ·m | m ∈ Z} は Z のイデアル。(3) A4 の中で I = {a, c} はイデアルである。(4) 多項式環 R = k[x] の中で、x2 + 1 の倍数の集合 I = ⟨x2 + 1 ⟩ はイデアルである。(5) 1 ∈ I は I = Rと同値である。(6) R の部分環 S が R のイデアルなら R = S である。(7) R が体ならそのイデアルは自明なものしかない。
定義 1.9 S を R の部分集合とするとき
⟨S ⟩ = {x ∈ R | s1, s2, · · · , sn ∈ S と r1, r2, · · · , rn ∈ Rが存在して x = r1s1 + r2s2 + · · ·+ rnsn}
とおき、これを S で 生成されたイデアルという。S = {s1, s2, · · · , sk} と有限集合であるとき、⟨S ⟩を単に ⟨ s1, s2, · · · , sk ⟩ あるいはRs1 +Rs2 + · · ·+Rsk と書く。一つの要素で生成されるイデアル⟨ a ⟩ = Ra を 単項イデアルという。
注 3 < S > は R のイデアルである。
例 5 Zでは、⟨n ⟩ = nZ。
定義 1.10(剰余類) R を環、I をそのイデアルとするとき、a ∈ R に対して
[a] = {x ∈ R | x− a ∈ I}
と書き、これを a の 剰余類と呼ぶ。また、全ての剰余類の集合( 剰余集合)を
R/I = {[a] | a ∈ R}
と書く。
注 4(1) [a] = {a+ x ∈ R | x ∈ I} であるので、これを a+ I と書くことがある。(2) a ∈ [a]である。
例 6(剰余集合の例)(1) Z/2Z = {[0], [1]}, [0] = {· · · ,−2, 0, 2, 4, · · · }, [1] = {· · · ,−1, 1, 3, 5, · · · }.(2) Z/4Z = {[0], [1], [2], [3]}, [0] = {· · · ,−4, 0, 4, 8, · · · }.(3) k[x]/⟨x2 + 1 ⟩, [0] = {a(x2 + 1) ∈ k[x] | a ∈ k[x]}.
命題 1.11(剰余類の性質) 以下の条件は全て同値である。
(1) a− b ∈ I.
(2) [a] ∩ [b] ̸= ϕ.
(3) [a] = [b].
(4) a ∈ [b].
定義 1.12(1) x を剰余類 x ∈ R/I とするとき、a ∈ x となる a を x の 代表元 という。(2) a1, a2, · · · ∈ R について、[a1] ∪ [a2] ∪ · · · = R かつ、各 [a1], [a2], · · · に交わりがないとき、
{a1, a2, · · · } を R/I の 代表系という。(3) 写像 π : R → R/I, a 7→ [a] を 標準射影 という。
例 7(代表系の例)(1) {0, 1} は Z/2Z の代表系である。(2) {0, 1, 2, 3} は Z/4Z の代表系である。(3) {a+ bx ∈ k[x] | a ∈ k, b ∈ k} はk[x]/⟨x2 + 1 ⟩ の代表系である。
定義 1.13(剰余環) R/I に演算 +, · と元 0, 1 を次のように定義する。(これを 剰余環という。)
(1) x+ y = [a+ b] だだし、a ∈ x, b ∈ y とする。(2) x · y = [a · b] だだし、a ∈ x, b ∈ y とする。(3) 0 = [0] とする。(4) 1 = [1] とする。
定理 1.14 R を環、I をそのRと異なるイデアルとするとき、(R/I, +, ·, 0, 1) は環をなす。標準射影π : R → R/I, a 7→ [a] は準同型である。
例 8(剰余環の例)(1) Z/2Z = {[0], [1]},+ [0] [1]
[0] [0] [1]
[1] [1] [0]
· [0] [1]
[0] [0] [0]
[1] [0] [1]
(2) Z/4Z = {[0], [1], [2], [3]},
+ [0] [1] [2] [3]
[0] [0] [1] [2] [3]
[1] [1] [2] [3] [0]
[2] [2] [3] [0] [1]
[3] [3] [0] [1] [2]
.
· [0] [1] [2] [3]
[0] [0] [0] [0] [0]
[1] [0] [1] [2] [3]
[2] [0] [2] [0] [2]
[3] [0] [3] [2] [1]
.
(3) R[x]/⟨x2 + 1 ⟩ = {[a+ bx] | a, b ∈ R} = {a+ bi | a, b ∈ R}, a = a · 1, i = [x].
0 = 0 + 0i, 1 = 1 + 0i,
(a+ bi) + (c+ di) = (a+ c) + (b+ d)i, (a+ bi) · (c+ di) = (ac− bd) + (ad+ bc)i.
定義 1.15(核, 像) f : R → S を環の準同型とするとき、
(1) Imf = {f(x) ∈ S | x ∈ R} を f の 像(image)という。(2) Kerf = {x ∈ R | f(x) = 0} を f の 核(kernel)という。
命題 1.16(1) Imf は S の部分環である。(2) Kerf は R のイデアルである。
定理 1.17(準同型定理) f : R → S を環の準同型とするとき、
f : R/Kerf → Imf,[a] 7→ f(a).
は同型写像である。
[証明] 証明すべき事は (1) well-defined、(2) 全射、(3) 単射、(4) 準同型性である。�
系 1.18(1) Z/2Z ∼= A2.
(2) Z/4Z ∼= A4.
(3) R[x]/⟨x2 + 1 ⟩ ∼= C.
1.4 素イデアルと極大イデアル
定義 1.19(整域) 環 R が次の条件を満たすとき、 整域という。
∀a, b ∈ R a · b = 0 =⇒ a = 0 ∨ b = 0.
定理 1.20 体は整域である。
定義 1.21(素イデアル) R と異なるイデアル I ⊂ R が次の条件を満たすとき、 素イデアルという。
∀a, b ∈ R a · b ∈ I =⇒ a ∈ I ∨ b ∈ I.
命題 1.22 イデアル I ⊂ R に対して R/I が整域であるための必要十分条件は I が素イデアルであることである。
例 9(1) R = Z, I = 3Z のとき、I は素イデアル。(2) R = Z, I = 4Z のとき、I は素イデアルでない。
定義 1.23(極大イデアル) R と異なるイデアル I ⊂ R が次の条件を満たすとき、 極大イデアルという。
I ⊂ J ⊂ RとなるイデアルJはJ = IまたはJ = Rのみである。
定理 1.24 R を環、I をそのRと異なるイデアルとする。剰余環 R/I が体であることは、I が極大イデアルであることの必要十分条件である。
[証明]
•(十分性)R/I が体であるとする。J を I より真に大きい R のイデアルとする。a ∈ J − I をとるとa ̸∈ I なので、 [a] ̸= 0 ここで R/I が体であることから [a] の逆元 [b] が存在する。[a][b] = [1] より[ab− 1] = 0 ゆえに ab− 1 ∈ I ⊂ J。一方 ab ∈ J であるから、1 ∈ J が言える。よって J = R。
•(必要性)I が極大イデアルだと仮定する。I ̸= R より R/I は0 ̸= 1の環である。今、[a] ∈ R/I, [a] ̸= 0 を任意にとると、a ̸∈ I より ⟨ a, I ⟩ = R。よってある r ∈ Rとs ∈ I でra+ s = 1 となる。このとき、[r][a] = [1] = 1 すなわち [r] は [a] の逆元となっている。よって、R/I
は、体である。
�
例 10(極大イデアルの例)(1) 3Z は Z の極大イデアルであり、Z/3Z は体である。(2) 一般に、pを素数とするとき、Z/pZ は体であり、pZ は Z の極大イデアルである。(例18を参照のこと)
(3) R[x]/⟨x2 + 1 ⟩ ∼= C は体。よって ⟨x2 + 1 ⟩ は R[x] の極大イデアル。
定義 1.25 p を素数とするとき、Z/pZ を Fp と書き、標数 p の 素体という。
系 1.26 極大イデアルは素イデアルである。
§2 1変数多項式環
2.1 定義
今後 k は体とする。実際には k = Q, R, C と思っていてよい。
定義 2.1(多項式環) k[x] = {amxm + am−1xm−1 + · · ·+ a0 | ∀i ai ∈ k, m ∈ N} に通常の和と積を
定義したものを、k上の(1変数) 多項式環という。
注 5 N = Z≥0 = {0以上の整数}.
定義 2.2 多項式 f = amxm + am−1xm−1 + · · ·+ a0, (am ̸= 0) について、次のように定義する。
• deg(f) = m · · · 次数(degree)
• LC(f) = am · · · 先頭係数(leading coefficient)
• LM(f) = xm · · · 先頭単項式(leading monomial)
• LT(f) = amxm · · · 先頭項(leading term)
• RT(f) = f − LT(f) · · · 残余(rest term)
命題 2.3 f, g ̸= 0 について
(1) deg(fg) = deg(f) + deg(g).
(2) f + g ̸= 0 ⇒ deg(f + g) ≤ max{deg(f), deg(g)}.(3) f + g ̸= 0かつdeg(f) ̸= deg(g) ⇒ deg(f + g) = max{deg(f), deg(g)}.
2.2 割り算アルゴリズム
定義 2.4(整除) f, g ∈ k[x], g ̸= 0 とする。ある q ∈ k[x] が存在してf = g · q となるとき g は f を割り切るといい、g|f と書く。また、q = f/g と書き、これを f の g による 商と言う。
補題 2.5 f, g ̸= 0 とする。
(1) deg(g) ≤ deg(f) ⇐⇒ LT(g)|LT(f).
(2) deg(g) ≤ deg(f), h = f − LT(f)
LT(g)g ⇒ h = 0 ∨ (h ̸= 0 ∧ deg(f) > deg(h)).
定理 2.6(割り算アルゴリズム) f, g ∈ k[x], g ̸= 0 とする。f の g による 割り算とは次の条件を満たすものであり、以下に述べるアルゴリズムで得ることができる。
(1) f = g · q + r, q, r ∈ k[x].
(2) r = 0 ∨ (r ̸= 0 ∧ deg r < deg g).
Input : f, gOutput : q, rq := 0; r := fWHILE r != 0 AND LT(g) | LT(r) DOq := q + LT(r) / LT(g)r := r - ( LT(r) / LT(g) ) * g
また、(1), (2) を満たす q, r は一意である。
[証明]略。�
例 11 f = x3 + 2x2 + x+ 1 を g = 2x+ 1 で割る過程を示す。1/2x^2 + 3/4x + 1/8 ... 商
-------------------------2x + 1 |x^3 + 2x^2 + x + 1
x^3 + 1/2x^2-------------------------
3/2x^2 + x + 13/2x^2 + 3/4x-------------------
1/4x + 11/4x + 1/8
---7/8 ... 余り
定義 2.7(商と余り) 上のアルゴリズムで求めたq, rに対し、q を 商と言い、f div g あるいはquotient(f, g)と書く。また、r を 余りあるいは 剰余と言い、f mod g あるいは remainder(f, g)と書く。
注 6(1) f 7→ (f mod g) は、fに関するk上の線形写像である。(2) h ∈ k[x], h ̸= 0 =⇒ h(f mod g) = (hf) mod (hg).
系 2.8 g|f ⇐⇒ f mod g = 0.
[証明] ⇐ は明らか。 ⇒ は、定理2.6の一意性より得られる。�
系 2.9(因数定理)(1) f mod (x− a) = f(a).
(2) (x− a)|f ⇐⇒ f(a) = 0.
系 2.10(根の数) f(x) = 0 の根の数は deg f 以下である。
定理 2.11(1変数多項式環のイデアルの性質) k[x] の任意のイデアルは単項イデアルである。
[証明] I を k[x] の {0} でない任意のイデアルとする。I − {0} の中で deg が最小のものをh とすると、I = ⟨h ⟩ である。なぜなら、⟨h ⟩ ⊂ I は明らか。I ⊂ ⟨h ⟩ は、任意の f ∈ I について、r = f mod h
とすると、r ∈ I。もし r ̸= 0 なら、deg r < deg h となって deg h の最小性に矛盾。よってr = 0 がいえるから h|f。すなわち f ∈ ⟨h ⟩。すなわちI ⊂ ⟨h ⟩ 。�
定義 2.12(単項イデアル整域, PID) 任意のイデアルが単項イデアルである整域を単項イデアル整域あるいは、PID (Principal Ideal Domain)と言う。
2.3 GCD
定義 2.13 f, g ∈ k[x] について、f, g の 最大公約数GCD(f, g) (gratest common devisor) とは、以下の条件を満たす h のことを言う。
(1) h|f, h|g.(2) ∀p (p|f, p|g ⇒ p|h).
定理 2.14(ユークリッドの互除法) f, g ∈ k[x] について以下が成り立つ。
(1) GCD(f, g) が存在して k[x] の単元を除いて一意である。(2) ⟨ f, g ⟩ = ⟨GCD(f, g) ⟩.(3) 次のアルゴリズムで GCD(f, g) を求める事ができる。
Input : f, gOutput : hh := fs := gWHILE s != 0 DOr := remainder(h, s)h := ss := r
[証明] (1), (2): イデアル ⟨ f, g ⟩ は単項イデアルなので、⟨ f, g ⟩ = ⟨h ⟩ となる h が存在する。この h
は fとg の GCD である。なぜなら、f, g ∈ ⟨h ⟩ より、h|f, h|g。また、もし p|f, p|g ならば、⟨ f, g ⟩ ⊂ ⟨ p ⟩。よって p|h。また、h, h′ が GCD なら h|h′かつh′|h なので、h′ は h の単元倍しか違
わない。(3): 略。�
例 12(1) GCD(x4 − 1, x6 − 1) = x2 − 1.
(2) GCD(x5 + 2x3, x4 + x2 − x) = x.
定義 2.15(素) f, g ∈ k[x] が素であるとは、「h|f かつ h|g ならば h は単元」が言える事である。すなわち、GCD(f, g) が単元であることである。これは、degGCD(f, g) = 0、⟨ f, g ⟩ = k[x]、⟨ f, g ⟩ ∋ 1と同値である。
定理 2.16 f, g, h ∈ k[x]、f と g が素とするとき、以下が成り立つ。
(1) f |hかつg|hならば、(fg)|h。(2) f |(gh)ならば f |h。
[証明]
(1) 1 = af + bg となる a, b ∈ k[x] があるので、h = h · 1 = h(af + bg) = ahf + bhgここで、hf, hgがfgで割り切れる。
(2) 同様に、h = ahf + bhgを使って示すことができる。
�k[x]で、deg がnより小さいものと0をあわせて、k[x](n) と書くことにする。
定理 2.17 f, g ∈ k[x]が素であるとする。m = deg f, n = deg g に対して、
ϕ : k[x](m) ⊕ k[x](n) → k[x](m+n)
(u, v) 7→ gu+ fv
と定義すると、これはk上のベクトル空間の同型である。
[証明] 前定理(2)より、ϕ は単射であることがわかる。ϕのソースとターゲットの次元は、どちらもk上m+ nなので、ϕは同型である。�
注 7(1) この定理は、次定理の前半を証明する。(2) af + bg = 1となる a, b ∈ k[x]を見つければ、ϕ−1(w) = (bw mod f, aw mod g)である。
定理 2.18(拡張されたユークリッドの互除法) f, g ∈ k[x] について、
af + bg = GCD(f, g)
となる a, b がdeg a < deg g − degGCD(f, g),deg b < deg f − degGCD(f, g).
という条件の下でただ一組存在する。また、a, b は以下のアルゴリズムで求める事ができる:
Input : f, g (!= 0)Output : h, a, bh, s := f, ga, b, c, d = 1, 0, 0, 1WHILE s != 0 DOq := quotient(h, s)r := h - qsr0 := a - qcr1 := b - qdh, s := s, ra, c := c, r0b, d := d, r1
[証明] (存在) fi =
(fi
fi+1
), Qi =
(0 1
1 −qi
)とおくと、fi+2 = fi − qifi+1 ⇐⇒ fi+1 = Qifi。ここで、
Ri = Qi−1Qi−2 · · ·Q0とおけば、fi = Rif0。Riは、R0 = E, Ri+1 = QiRiで定められ、
Ri =
(ai bi
ai+1 bi+1
)と置けて、ai+2 = ai − qiai+1, bi+2 = bi − qibi+1, fi+2 = aifi + bifi+1 が成り
立つ。さて、f0 = f, f1 = gとおくと、あるnがあって、fn = GCD(f0, f1), fn+1 = 0。すなわち、(GCD(f0, f1)
0
)= fn = Rnf0。このとき、GCD(f0, f1) = anf0 + bnf1, 0 = an+1f0 + bn+1f1 で
ある。また、deg f0 ≥ deg f1を仮定して良く、このとき、deg qi = deg fi − deg fi+1。また、帰納的に、deg ai = deg f1 − deg fi−1 (2 ≤ i ≤ n+ 1) とdeg bi = deg f0 − deg fi−1 (1 ≤ i ≤ n+ 1) が言えるので、
i = nとすれば、次数の条件が言える。(一意性) GCD(f, g) = 1としてよい。af + bg = a′f + b′g = 1なら(a− a′)f = (b′ − b)gなので、定理2.16 より、f |(b′ − b), g|(a− a′)よりb′ − b = a− a′ = 0。(多項の場合もOKな別証)
a− a′ = a(a′f + b′g)− a′(af + bg) = (ab′ − a′b)g ≡ 0( mod g)。�
注 8(1) an+1f0 = −bn+1f1 = LCM(f0, f1)となっている。(2) a0 = 1, a1 = 0, a2 = 1, a3 = −q1, a4 = 1 + q2q1, a5 = −q1 − q3 − q3q2q1, a6 =
1 + q2q1 + q4q1 + q4q3 + q4q3q2q1,
b0 = 0, b1 = 1, b2 = −q0, b3 = 1 + q1q0, b4 = −q0 − q2 − q2q1q0, b5 =
1+q1q0+q3q1+q3q2+q3q2q1q0, b6 = −q0−q2−q4−q2q1q0−q4q1q0−q4q3q1−q4q3q2−q4q3q2q1q0.
系 2.19 f, gが素であるとき、以下が成り立つ。
(1)1
fg=
b
f+
a
gとなるa, bで
b
f,a
gが「真分数」になるものが一意に存在する。
(2) deg h < deg f + deg gなら、h
fg=
b
f+
a
gとなるa, bで
b
f,a
gが「真分数」になるものが一意に存在
する。
[証明] (1), (2)共に容易。�
例 13(1) f = x4 − x2, g = x3 − 1 について、GCD(f, g) = x− 1 = (x+ 1)f + (−x2 − x+ 1)g.
x-------
x^3-1 | x^4-x^2x^4 - x -x - 1------- --------x^2+x | x^3 - 1
x^3-x^2--------x^2 - 1x^2 - x -x-------- --------x - 1 | -x^2 + x
-x^2 + x--------
0
a: x b: x--- --
0| 1 1 | 00 -x -1 x -x - 1- ----- -- --------1 | 0 -x | 1
-x -1 x^2 + x------ --------x + 1 -x^2-x+1
各ステージで次が成り立っていることに注目せよ。
x4 − x2 = 1 · (x4 − x2) + 0 · (x3 − 1)x3 − 1 = 0 · (x4 − x2) + 1 · (x3 − 1)−x2 + x = 1 · (x4 − x2) + (−x) · (x3 − 1)x− 1 = (x+ 1) · (x4 − x2) + (−x2 − x− 1) · (x3 − 1)
(2) f = x4 − 1, g = x6 − 1 について、GCD(f, g) = x2 − 1 = x2 · f + 1 · g.(3) f = x5 + 2x3, g = x4 + x2 − x について、
GCD(f, g) = x = 13 (2x
2 + x+ 1) · f − 13 (2x
3 + x2 + 3x+ 3) · g.
定義 2.20 f1, f2, · · · , fs の GCD は次の条件を満たす h である。
(1) h|f1, f2, · · · , fs.
(2) ∀p (p|f1, f2, · · · , fs ⇒ p|h).
この h を GCD(f1, f2, · · · , fs) と書く。
定理 2.21 s ≥ 0, f1, f2, · · · , fs ∈ k[x] について以下が成り立つ。
(1) GCD(f1, f2, · · · , fs) は存在し、単元を除いて一意的。(2) ⟨GCD(f1, f2, · · · , fs) ⟩ = ⟨ f1, f2, · · · , fs ⟩.(3) GCD(f1, f2, · · · , fs) = GCD(f1, GCD(f2, · · · , fs)).(4) GCD(f1, f2, · · · , fs) を求めるアルゴリズムがある。
[証明] (1), (2): k[x] のイデアル ⟨ f1, f2, · · · , fs ⟩ は単項イデアルで、その生成元を h とすれば、定理2.14 と同じ。
(3), (4): h = GCD(f2, · · · , fs) とすると、(2) より⟨h ⟩ = ⟨ f2, · · · , fs ⟩ なので、⟨ f1, h ⟩ = ⟨ f1, ⟨h ⟩ ⟩ = ⟨ f1, ⟨ f2, · · · , fs ⟩ ⟩ = ⟨ f1, f2, · · · , fs ⟩である。GCD の一意性よりGCD(f1, h) = GCD(f1, f2, · · · , fs)。また、これは GCD(f1, f2, · · · , fs) を求めるアルゴリズムを与えている。�
例 14 GCD(x3 − 3x+ 2, x4 − 1, x6 − 1) = GCD(x3 − 3x+ 2, x2 − 1) = x− 1.
例 15(イデアルへの所属問題) x3 + 4x2 + 3x− 1 は ⟨x3 − 3x+ 2, x4 − 1, x6 − 1 ⟩ に属するか?【解答】x3 + 4x2 + 3x− 1 を x− 1 で割った余りが 7なので、属さない。
2.4 既約元と素元
定義 2.22(既約元) a ∈ R について、「a の約数は自分自身か 1 のみ」のとき、すなわち「a = bc, (b, c ∈ R) ならば b または c は単元」となるとき、a を 既約元という。
例 16 Z における既約元とは素数のことである。
命題 2.23 R = Zあるいはk[x] (kは体) とする。p ∈ R が既約元なら、R/⟨ p ⟩ は体である。
[証明] [f ] ∈ R/⟨ p ⟩, [f ] ̸= 0 とする。p|f ではないので、GCD(f, p) = 1 である。(なぜなら、h = GCD(f, p) とすると、h|p, h|f。 h|p より h = 1またはh = p。h = p とすると p|f で矛盾。よって h = 1。)よってaf + bp = 1 となる a, b ∈ R が存在する。このとき [a][f ] = 1 よって [a] は [f ] の逆元になっている。�
定義 2.24(素元) p ∈ R について「p|(ab), (a, b ∈ R) ならば p|a または p|b」となるとき、p を 素元という。
命題 2.25 p が素元であることと ⟨ p ⟩ は素イデアルであることは、同値である。
命題 2.26 整域において0でない素元は既約元である。
[証明] p ̸= 0 を素元、p = ab とする。p|a または p|b なのでp|a とすれば、pu = a となる u ∈ R が存在する。p = pub よって p(1− ub) = 0 よって ub = 1 すなわちb は単元である。p|b の時も同様。�
命題 2.27 PID において、既約元は素元である。
[証明] p を既約元とし、p|ab かつ p|a でない、とする。PID なので、⟨ p, a ⟩は一つの要素hで生成され、GCD(p, a) = 1 より、h = 1としてよい。よって、ある k, l が存在してpk + la = 1。両辺にbをかけてpkb+ lab = b。また、 p|ab より、p|左辺、 すなわち p|b。p|b でない場合も同様。以上より p は素元で
ある。�
注 9 上の命題より、k[x] においては既約元と0でない素元は一致する。(実はk[x1, x2, · · · , xn]においても既約元と0でない素元は一致する。)
例 17 Z[√−5] = {a+ b
√−5 | a, b ∈ Z} では 2, 3, 1 +
√−5, 1−
√−5 は既約元であるが、
2 · 3 = (1 +√−5)(1−
√−5) なので、どれも素元ではない。つまり Z[
√−5] は PID でない。
2.5 ユークリッドの互除法の応用
例 18 F7 = Z/7Z で 3 の逆数を求める。拡張されたユークリッドの互除法(整数版)より、7 + (−2)3 = 1。よって、3−1 = −2 = 5。
例 19 Q[x]/⟨x2 − 2 ⟩ で x2 + x+ 1 の逆数を求める。拡張されたユークリッドの互除法より、(x− 2)(x2 − 2) + (−x+ 3)(x2 + x+ 1) = 7. よって、[x2 + x+ 1]−1 = 1
7 [−x+ 3]。
このことから、1
√22+√2 + 1
=1
7(−
√2 + 3).
例 20 微分方程式 y′′ − y′ − y = x2 の特殊解を求める。
D =d
dxと置く。D2 −D − 1とD3について、拡張されたユークリッドの互除法により、
(−2D2 +D − 1)(D2 −D − 1) + (2D − 3)D3 = 1.
よってこれをx2に左から作用させると、
(−2D2 +D − 1)(D2 −D − 1)x2 + (2D − 3)D3x2 = x2.
よって、(D2 −D − 1)(−2D2 +D − 1)x2 = x2.
すなわち、y = (−2D2 +D − 1)x2 = −4 + 2x− x2 とおけば、
(D2 −D − 1)y = y′′ − y′ − y = x2.
〔練習問題〕y′′ − y′ − y = sinx. (ヒント: (D − 2)(D2 −D − 1) + (−D + 3)(D2 + 1) = 5.)
§3 イデアルとアフィン多様体
記法 3(集合の直積) • X × Y = {(x, y) | x ∈ X, y ∈ Y }• X × Y × Z = {(x, y, z) | x ∈ X, y ∈ Y, z ∈ Z}• (X × Y )× Z = X × (Y × Z) = X × Y × Z とみなす。• Xn = {(x1, x2, · · · , xn) | xi ∈ X}• f : Xn → Y, x = (x1, x2, · · · , xn) に対して f(x) = f(x1, x2, · · · , xn) と書く。
定義 3.1(アフィン多様体) n を自然数、k を体とする。f1, f2, · · · , fs ∈ k[x1, x2, · · · , xn] に対してその零点集合:
V(f1, f2, · · · , fs) = {a ∈ kn | fi(a) = 0 (1 ≤ i ≤ s)}
を f1, f2, · · · , fs で定義されたアフィン多様体という。
例 21(1) V(x2 + y2 − 1). -1 -0.5 0.5 1
-1
-0.5
0.5
1
(2) V(xy − x3 + 1).
-3 -2 -1 1 2 3
-1
1
2
3
(3) V(y2 − x3). -2 -1 1 2
-2
-1
1
2
(4) V(y2 − x3 − x2). -1 -0.5 0.5 1
-1
-0.5
0.5
1
(5) V(z − x2 − y2).
-2-1
01
2
-2
-1
0
12
0
2
4
6
8
-2-1
01
-2
-1
0
1
(6) V(z2 − x2 − y2).
-2-1
01
2
-2
-1
01
2
0
1
2
-2-1
01
-2
-1
01
(7) V(x2 − y2z2 + z3).
fi(8) V(x+ y + z, x− z, 2x+ w).
(9) V(xz, yz).
(10) V(y − x2, z − x3).
00.25
0.50.75
1
0
0.25
0.50.75
1
0
0.25
0.5
0.75
1
00.25
0.50.75
1
0
0.25
0.50.75
1
命題 3.2 V, W ⊂ kn がアフィン多様体ならV ∩W, V ∪W もアフィン多様体である。
[証明] 例として V = V(f1, f2), W = V(g1, g2) とすると、V ∩W = V(f1, f2, g1, g2), V ∪W = V(f1g1, f1g2, f2g1, f2g2) となる。�} 問い
(1) V(f1, f2, · · · , fs) ̸= ϕ の判定。(連立1次方程式での解の存在)(2) 解を求めるアルゴリズムは存在するか?(連立1次方程式での掃きだし法と基底)(3) 次元の定義と決定(行列のランク)
定義 3.3(基底, 有限生成) 環 R のイデアル I が集合 S で生成されているとき、S をI の 基底 という。基底として有限集合が取れるイデアルは 有限生成 であるという。
注 10 線形代数では、基底とは「生成して独立」であることを求めるが、環では、生成するだけでよい。
定義 3.4 イデアル I ⊂ k[x1, x2, · · · , xn] に対しその零点集合を
V(I) = {a ∈ kn | f(a) = 0 (∀f ∈ I)}.
と定義し、I で定義された多様体という。
命題 3.5 V(⟨ f1, f2, · · · , fs ⟩) = V(f1, f2, · · · , fs). したがってkn の部分集合がアフィン多様体であることと有限生成イデアルで定義された多様体であることは同値である。
[証明] fi ∈ ⟨ f1, f2, · · · , fs ⟩ なので、a ∈ V(⟨ f1, f2, · · · , fs ⟩) なら a ∈ V(f1, f2, · · · , fs)。すなわちV(⟨ f1, f2, · · · , fs ⟩) ⊂ V(f1, f2, · · · , fs) は明らか。逆にすべての i について fi(a) = 0 とすれば、全てのf =
∑cifi ∈ ⟨ f1, f2, · · · , fs ⟩ について、f(a) = (
∑cifi)(a) =
∑cifi(a) = 0。よって
V(f1, f2, · · · , fs) ⊂ V(⟨ f1, f2, · · · , fs ⟩)。�
例 22 ⟨ 2x2 + 3y2 − 11, x2 − y2 − 3 ⟩ = ⟨x2 − 4, y2 − 1 ⟩ なので、V(2x2 + 3y2 − 11, x2 − y2 − 3) = V(x2 − 4, y2 − 1) = {(±2, ±1)}。つまりこれは、図形をイデアル(の基底)で考える方法を与えている。
定義 3.6 S ⊂ kn を部分集合とするとき
I(S) = {f ∈ k[x1, x2, · · · , xn] | f(a) = 0 (∀a ∈ S)}.
と定義し、これを S の零化イデアルという。
補題 3.7 I(S) は k[x1, x2, · · · , xn] のイデアルである。
[証明] 略。�
例 23(1) k2 で I({(0, 0)}) = ⟨x, y ⟩。(2) kn で I(kn) = {0} となるか?
• k が無限体なら、I(kn) = {0} (命題3.12)。• k = F2 のとき I(k) = ⟨x(x− 1) ⟩。
(3) I(ϕ) = k[x1, x2, · · · , xn].
以下、V : {イデアル} −→ {多様体}.I : {多様体} −→ {イデアル}.
の関係を調べる。
補題 3.8(V と I の性質)(1) V ⊂ W ⇒ I(V ) ⊃ I(W ) (V, W は kn の部分集合)(2) I ⊂ J ⇒ V(I) ⊃ V(J) (I, J は k[x1, x2, · · · , xn] のイデアル)(3) V ⊂ V(I) ⇐⇒ I(V ) ⊃ I (V は kn の部分集合、I は k[x1, x2, · · · , xn] のイデアル)
[証明] (1), (2) は明らか。(3) は、V ⊂ V(I) ⇐⇒ ∀a ∈ V ∀f ∈ I f(a) = 0 ⇐⇒ ∀f ∈ I ∀a ∈ V f(a) = 0 ⇐⇒ I(V ) ⊃ I. �
命題 3.9 任意のイデアル I ⊂ k[x1, x2, · · · , xn] について
I ⊂ I(V(I)).
[証明] V(I) ⊂ V(I) なので、補題3.8(3)をV = V(I) として適用して、I(V(I)) ⊃ I。�
注 11 I = I(V(I)) は成り立ったり成り立たなかったりする。
• 成り立つ例:R3でI = ⟨ y − x2, z − x3 ⟩ とおく。I(V(I)) ⊂ I を示す。f ∈ I(V(I)) = I(V(y − x2, z − x2)) とすると、ある h1, h2 ∈ R[x, y, z], r ∈ R[x] を用いてf = h1(y − x2) + h2(z − x3) + r と書ける。(なぜなら、一般にxαyβzγ = xα(x2 + (y − x2))β(x3 + (z − x3))γ と書いて右辺を展開すればよいから。)
よって、V(I) のパラメータ表示 (x, y, z) = (t, t2, t3) t ∈ R を用いると、r(t) = 0 (∀t ∈ R)。よって r = 0。
• 成り立たない例: R2 でI = ⟨x2, y2 ⟩ とおくと、V(I) = {(0, 0)} なので、I(V(I)) = I({(0, 0)}) = ⟨x, y ⟩。
• k が代数的閉体(任意の1変数の方程式が解を持つ体)なら、I(V(I)) =√I が成り立ち、これを強形
の零点定理という。ただし√I = {f ∈ k | ∃n ∈ Z≥0 fn ∈ I}。
命題 3.10(1) 任意の集合 V ⊂ kn について
V ⊂ V(I(V )).
(2) 任意のアフィン多様体 V ⊂ kn について
V = V(I(V )).
[証明]
(1) I(V ) ⊂ I(V ) に補題3.8(3)を I = I(V ) として適用すると、V ⊂ V(I(V ))。(2) V ⊃ V(I(V )) であること: V はアフィン多様体なので V = V(I) となるイデアル I がある。命題3.9
より、I ⊂ I(V(I)) であり、補題3.8(2) より、V(I) ⊃ V(I(V(I)))。すなわち V ⊃ V(I(V ))。
�
命題 3.11 V, W をアフィン多様体とする。
(1) V ⊂ W ⇐⇒ I(V ) ⊃ I(W ).
(2) V = W ⇐⇒ I(V ) = I(W ).
(3) I : {アフィン多様体} → {イデアル} は単射。
[証明] (1) ( ⇒ ) 補題3.8(1)より。
( ⇐ ) I(V ) ⊃ I(W ) とする。両辺に V をすると、補題3.8(2) よりV(I(V )) ⊂ V(I(W ))。V, W はアフィン多様体なので、命題3.10よりV ⊂ W。(2)は (1) より明らか。(3) は (2) より明らか。�
注 12 一般に集合X, Y のある部分集合族間に写像V, I があって、
(1) A ⊂ A′ ⇒ V(A) ⊃ V(A′).
(2) B ⊂ B′ ⇒ I(B) ⊃ I(B′).
(3) 任意のAに対してI(V(A)) ⊃ A.
(4) 任意のAに対してV(I(B)) ⊃ B.
(5) A ⊂ V(B) ⇐⇒ I(A) ⊃ B.
を満たす時、V, Iをその集合族間の Galois接続という。((3)&(4) ⇐⇒ (5) である。) このとき、{A | I(V(A)) = A} と{B | V(I(B)) = B} の間には、V, Iで1対1対応が付き、これを Galois対応と言う。
命題 3.12 k が無限体なら I(kn) = {0}。
[証明] n = 1 のとき: ∀a ∈ k f(a) = 0とする。ここでもし f = 0 でなければ、因数定理(系 2.9)より任意の x− a を因数に持つことになり、矛盾する。よって f = 0。n = t のときOKとし、n = t+ 1 のときを考える。x = (x1, x2, · · · , xt), y = xt+1 とおく。f ∈ I(kt+1) は f =
∑n fn(x)y
n, fn ∈ k[x1, x2, · · · , xn] と書ける。a = (a1, a2, · · · , at) ∈ kn を一つ取り、F (y) =
∑n fn(a)y
n ∈ k[y] と置くと、∀b ∈ k F (b) = 0。よって1変数の場合になり F = 0。すなわち ∀n fn(a) = 0。a は任意だったから n = t の場合の仮定より fn = 0。よって f = 0。�} 問い
• イデアルはいつ有限生成になるか?(いつでも)
• f ∈ ⟨ f1, f2, · · · , fs ⟩ の決定アルゴリズムはあるか?(ある)• I → I(V(I)) はどうなってるのか?(ほぼわかる)
Groebner 基底
次のような問題を考えよう:
2次正方行列A, Bがあるとする。「AB = EならばBA = E」を示せ。
これは、もちろん線形代数学の知識があれば「AB = E だから、B = A−1。よって、BA = A−1A = E。」と答えるだろう。しかし、これはかなり高度な知識であるし、行列の各成分が体の元であることを仮定しているという点で間違いとも言える。この問題を具体的に書いてみよう。
A =
(a b
c d
), B =
(e f
g h
)と置くとすれば、問題はAB − E =
(ae+ bg − 1 af + bh
ce+ dg cf + dh− 1
)= 0
からBA− E =
(ae+ cf − 1 be+ df
ag + ch bg + dh− 1
)= 0 を導けということだ。
これは純粋に多項式の話であり、中学校の知識で間に合うはずだ。そして証明は、多項式の範囲で、つまり割り算を用いないで得られるに違いない。しかし、そういう証明を考えようとすれば、かなり手間と時間がかかり、余程の計算上手でも手に余るだろう。また、結局線形代数で行われた議論をうまく分母を払って焼きなおしたようなものになってしまうだろう。ところが最近はこの程度のことなら計算機がしてくれる:
require "algebra"P = MPolynomial(Rational)a,b,c,d,e,f,g,h = P.vars("abcdefgh")M = SquareMatrix(P, 2)A, B = M[[a,b],[c,d]], M[[e,f],[g,h]]C, D = A*B - 1, B*A - 1F = C.flattencb = Groebner.basis_coeff(F)puts "F = #{F.inspect}"D.each do |row|row.each do |g|q, r = g.div_cg(F, cb)puts "#{g} = #{q.inspect} * F" if r.zero?
endend
このプログラムで得られる出力は次のようなものだ。
F = [ae + bg - 1, af + bh, ce + dg, cf + dh - 1]ae + cf - 1 = [dh, -dg, af, -ae + 1] * Fbe + df = [-df, de, bf, -be] * Fag + ch = [-ch, cg, ah, -ag] * Fbg + dh - 1 = [-dh + 1, dg, -af, ae] * F
これはすなわち次のような恒等式が成り立っていることを示している。
ae+ cf − 1 = dh · (ae+ bg − 1) − dg · (af + bh) + af · (ce+ dg) + (−ae+ 1) · (cf + dh− 1)be+ df = −df · (ae+ bg − 1) + de · (af + bh) + bf · (ce+ dg) − be · (cf + dh− 1)ag + ch = −ch · (ae+ bg − 1) + cg · (af + bh) + ah · (ce+ dg) − ag · (cf + dh− 1)bg + dh− 1 = (−dh+ 1) · (ae+ bg − 1) + dg · (af + bh) − af · (ce+ dg) + ae · (cf + dh− 1)
これはまさに AB = E という式から BA = E が「書ける」ことを示している。良く見ると左辺は2次式なのに、右辺では一度4次式にまで持ち上げて計算している。しかし、一度このような式が得られれば、式の証明は展開、整理するだけだから、容易に証明可能なのだ。すなわち、計算機はブラックボックスではあるが、純粋に発見的な推論にのみ用いられ、数学的厳密さを損なわせることはない。かつては、このような式変形は「ひらめき」が必要な一種の職人芸であり、計算の達人にのみが可能な高度な技であった。しかし、今では計算機が1秒もかからずにやってしまうのである。さて、こうしてみると次のような疑問をもつだろう。「計算機の中で何が行われているのか?」、「この問題が解けたのは偶然なのか?」回答はこうである。「この手の問題を解くアルゴリズムが存在する。」「『この手の問題』が厳密に定義でき、解けるなら必ず解くことができる。」つまり、背景には式変形に関する一般的な数学的理論があるのである。この2章ではそれを紹介する。
§4 順序
4.1 順序
定義 4.1(順序) 集合 X 上の関係 = が 順序である、あるいは (X, =) が 順序集合であるとは
(1) x = x.
(2) x = y, y = z ⇒ x = z.
(3) x = y, y = x ⇒ x = y.
が任意の x, y, z ∈ X について成り立つときに言う。また、さらに
(4) 任意の x, y ∈ X に対して x = y または y = x
が成り立つならば、= は 全順序であると言う。
例 24(1) N = Z≥0 = {0以上の整数} とし、= を普通の意味の ≥ と思うと、これは全順序である。(2) N に x = y ⇐⇒ y|x と定義すると、これは順序だが全順序でない。(3) N2 に (x1, y1) = (x2, y2) ⇐⇒ x1 ≥ x2かつy1 ≥ y2 と定義すると、これは順序だが全順序でない。(4) X = {グー, チョキ, パー}に対してx = y ⇐⇒ xはyにアイコであるあるいは勝つ 、と定義すると、
これは順序ではない。
定義 4.2(順序の拡張) 集合 X に2つの順序 = と ≥ が与えられていて
α ≥ β ⇒ α = β
が成り立つとき、= は ≥ の 拡張であるという。
例 25(1) N− {0} に x = y ⇐⇒ y|x と定義すると、普通の順序 ≥ は = の拡張である。
この文書では、2つの順序を同時に考えるとき = 以外に ≥ という記号も使って区別する。しばしば、抽象的、人工的な方を = で表し、伝統的な、標準的な順序の方を≥ で表す。
定義 4.3(1) x > y とは x = y かつ x ̸= y のこと。(2) x 5 y とは y = x のこと。(3) x < y とは x 5 y かつ x ̸= y のこと。
4.2 最小と極小
定義 4.4(最小元, 極小元) 順序集合 (X, =) の部分集合とA と a ∈ A に対して、
(1) 「∀x ∈ A (x = a)」が成り立つとき、a を A の 最小元と言う。(2) 「∀x ∈ A (x < aでない)」が成り立つとき、a を A の 極小元と言う。
注 13 最小元は極小元である。また、全順序集合では極小元は最小元である。
例 26 (N2, =) において、A = {(0, 1), (1, 0)} におけるa = (0, 1) は極小元だが最小元でない。
4.3 積順序
定義 4.5(Nnの標準的順序) α = (α1, α2, · · · , αn), β = (β1, β2, · · · , βn) ∈ Nn に対して ≥ を次の様に定義する。
α ≥ β ⇐⇒ ∀i αi ≥ βi
この≥を Nn の 標準的順序あるいは 自然順序という。
注 14 (Nn, ≥) は順序集合である。n ≥ 2 のとき全順序ではない。
定義 4.6(積順序) 2つの順序集合 (X, =), (Y, =) に対して、順序集合 (X × Y, =) を次のように定義し 積順序と言う:
(x1, y1) = (x2, y2) ⇐⇒ x1 = x2 かつ y1 = y2.
注 15 積順序は順序になる。
注 16 Nn の標準的順序 ≥ は、N の標準的順序から、Nn = Nn−1 × N で帰納的に積順序で作ったものである。
§5 順序に関するディクソンの補題
多項式の次数の集合 Nn の性質について調べる。
5.1 Dickson性
定義 5.1(生成、有限生成)(1) X の部分集合 A に対し、ある集合 S ⊂ A について、
∀a ∈ A∃s ∈ S a = s.
となるとき、S は A を 張る、 生成する、あるいはS は A の 基底であると言う。(2) X 部分集合 A に有限基底(有限集合である基底) が取れるとき A は 有限生成であると言う。
定義 5.2(Dickson性) 順序集合 (X, =) について、X の任意の部分集合が有限生成であるとき、X はDickson的である、あるいは Dickson性を持つ、と言う。
例 27(1) N の標準順序で、その任意の部分集合Aは、その最小元aを取り、S = {a}とすれば、条件をみたすので、N はDickson的である。
(2) N の例24の(2)の順序では、N はDickson的でない。
補題 5.3 Nの任意の数列n1, n2, n3, · · · には、その部分列で、(広義)単調増大列になるもの、ni1 , ni2 , ni3 , · · · (i1 < i2 < i3 < · · · ) が存在する。
[証明] I0 = N と置くと、これは無限集合であり、{ni | i ∈ I0}の最小値nk (k ∈ I0)が存在する。i1 = k
と置く。I1 = {i ∈ I0 | i1 < i} と置くと、これは無限集合であり、{ni | i ∈ I1}の最小値nk (k ∈ I1)が存在する。i2 = kと置く。I2 = {i ∈ I1 | i2 < i} と置くと、これは無限集合であり、{ni | i ∈ I2}の最小値nk (k ∈ I2)が存在する。i3 = kと置く。以下同様i4, i5, · · · を選べば良い。�
定理 5.4 順序集合 (X, =) がDickson的なら、(N, ≥)との積順序集合(X × N, =) もDickson的。
[証明]X × NがDickson的でないとすると、ある X × N の部分集合 A が存在して、有限生成でない。(x1, n1) ∈ A を適当に取ると、{(x1, n1)} は A を張らないので、ある (x2, n2) ∈ A について(x1, n1) 5 (x2, n2) とならない。{(x1, n1), (x2, n2)} も A を張らないので、(x3, n3) ∈ A で(x1, n1) 5 (x3, n3) も (x2, n2) 5 (x3, n3) が成り立たないものが存在する。同様にして一般に(xi, ni) ∈ A, i = 1, 2, 3, · · · が(x1, n1) 5 (xi, ni), (x2, n2) 5 (xi, ni), · · · , (xi−1, ni−1) 5 (xi, ni) のどれも成り立たないように取れる。さて、補題5.3より、n1, n2, n3, · · · には、その部分列で、(広義)単調増大列になるもの、ni1 , ni2 , ni3 , · · · が存在する。このとき、任意のs, t (s < t)について、xis 5 xitではない。B = {xi1 , xi2 , xi3 , · · · }とすると、明らかにどんなBの有限部分集合もBを生成しない。これはXがDickson的であることに矛盾する。�
定理 5.5(Nnの順序に関するディクソンの補題) Nn は標準順序 ≥ に関してDickson的。
[証明] n = 1 のとき:Nでは標準順序 ≥ はDickson的。n = k の時Dickson的であるとすると、定理5.4
より、Nk+1 = Nk × N の時もDickson的。以上より、任意の n について Nn は Dickson的。�
5.2 整列性
定義 5.6(整列順序) 全順序集合 (X, =) において、任意の部分集合が最小元を持つとき= を 整列順序、(X, =) を整列順序集合と言う。
注 17 全順序集合では、= が整列順序であることと、Dickson的であることは同値である。
例 28(1) (N, ≥) は整列順序。(2) (Nn, ≥) は n ≥ 2 のとき整列順序でない。(全順序でないから。)(3) (Z, ≥) は整列順序でない。(4) (Q≥0, ≥) は整列順序でない。(5) { 1
n | n = 1, 2, 3, · · · } は整列順序でない。(6) { 1
n | n = 1, 2, 3, · · · } ∪ {0} は整列順序でない。(7) {− 1
n | n = 1, 2, 3, · · · } は整列順序。
前節補題5.3、定理5.4、定理5.5 と同様に以下が成り立つ。
補題 5.7 整列集合 Xの任意の数列x1, x2, x3, · · · には、その部分列で、(広義)単調増大列になるもの、xi1 , xi2 , xi3 , · · · が存在する。
注 18 後の定理5.16で見るように、XがDickson的なら、同様な事が言える。
定理 5.8 順序集合 (X, =) がDickson的、順序集合 (Y, =) が整列順序集合なら、(X × Y, =) はDickson的。
定理 5.9 順序集合 (X, =) が整列順序集合なら、Xn はDickson的。
注 19 後の定理5.17で見るように、X, Y がDickson的なら、X × Y, Xn もDickson的。
5.3 順序のイデアル
定義 5.10(イデアル) (X, =) を順序集合、A をその部分集合で、次の条件を満たすとき、A は X のイデアルであるという。
∀a ∈ A∀x ∈ X(x = a ⇒ x ∈ A).
例 29 {n ∈ N | n ≥ 1} は N のイデアル。
定義 5.11 X 部分集合 S に対し、
⟨S ⟩ = {x ∈ X | ∃s ∈ S x = s}
とおき、これを S で 生成されたイデアル という。S = {s1, s2, · · · , sk} と有限集合であるとき、⟨S ⟩を単に ⟨ s1, s2, · · · , sk ⟩ と書く。
命題 5.12 S を順序集合 X の部分集合とするとき、以下が言える。
(1) ⟨S ⟩ は X のイデアルである。(2) Sがイデアル ⇐⇒ ⟨S ⟩ = S。(3) 任意のイデアル A、任意のAの部分集合Sについて、⟨S ⟩ ⊂ A。(4) SがAを生成する ⇐⇒ S ⊂ A ⊂ ⟨S ⟩。(5) ⟨S ⟩ =
∪s∈S < s > である。特に、⟨ s1, s2, · · · , sk ⟩ = ⟨ s1 ⟩ ∪ ⟨ s2 ⟩ ∪ · · · ∪ ⟨ sk ⟩である。
[証明] 略。�
定理 5.13 Dickson性を持つ順序集合の任意の部分集合Aに対して、ある有限部分集合 A′ ⊂ A が存在して、⟨A ⟩ = ⟨A′ ⟩ となる。
[証明] A に対して、その有限基底を A′ とすると、A ⊂ ⟨A′ ⟩ 。命題5.12より、⟨A ⟩ ⊂ ⟨A′ ⟩。よって、⟨A ⟩ = ⟨A′ ⟩。�
定理 5.14 順序集合は、その任意のイデアルが有限生成であれば、Dickson性を持つ。逆も言える。
[証明] 順序集合Xの任意のイデアルが有限生成であるとする。X部分集合Sを取る。イデアル ⟨S ⟩は、有限個の生成元x1, x2, · · · , xn ∈ ⟨S ⟩を持つ。任意のiについて、si 5 xiとなる、s1, s2, · · · , sn ∈ S
が存在する。このとき、⟨S ⟩ = ⟨x1, x2, · · · , xn ⟩ ⊂ ⟨ s1, s2, · · · , sn ⟩。よって、s1, s2, · · · , sn がS の有限個の生成元になっている。逆は明らか。�
定理 5.15 X がDickson的であるのは次の命題とも同値である。
A1 ⊂ A2 ⊂ A3 ⊂ · · ·をXのイデアルの増大列とすると、必ずあるNが存在して、∀n ≥ N An = AN。
[証明] X がDickson的であるとする。∪
i Ai はイデアルである。その有限基底 F ⊂∪
i Ai を取れば、F
の各元毎にある i が存在して Ai に属する。これらのi の最大のものを N とすると、F ⊂ AN となる。この N が求めるものである。X がDickson的でないとし、Y ⊂ Xが有限生成でないとする。A1 = {} とする。既に有限生成イデアルの狭義増大列A1 $ A2 $ A3 $ · · · $ Ak が作れているとするとき、Y −Ak は空集合でないから、あるx ∈ Y −Ak を取ってAk+1 = ⟨Ak ∪ {x} ⟩ とおけば、Ak $ Ak+1 である。このようにして作ったAn, n ≥ 1 は条件を満たさない。�
5.4 Dickson性(別ルート)
この節では、前と別の方法でDicksonの補題を証明する。今回の講義では、特に読む必要はない。
定理 5.16(Dickson性の同値命題) 順序集合 (X, =) について、次の3つは同値である。
(1) X はDickson性を持つ。(2) X の任意の無限数列 S = (x1, x2, · · · ) には、(広義)単調増大な部分無限数列が存在する。(3) X の任意の無限数列 S = (x1, x2, · · · ) についてある i, j が存在して i < j かつ xi 5 xj となる。
[証明]
(1) ⇒ (2): 仮定より S の有限部分集合 S1 があって、S1はSを張る。よって、ある xi1 ∈ S1 があって、xi1 5 xi となる i は無限個になる。すなわち、J(j) = {i | j < iかつxj 5 xi} とおくと、J(i1) は無限集合である。同様にして、{xi | i ∈ J(i1)} を張る有限集合 S2 に対し、xi2 ∈ S2 をうまく取ると、J(i2) も無限集合になる。以下同様に i3, i4, · · · を取っていけば、i1 < i2 < i3 < i4 < · · · かつxi1 5 xi2 5 xi3 5 xi4 5 · · · となる。(2) ⇒ (3): 明らか。(3) ⇒ (1): 仮にDickson的でないとする。ある X の部分集合 A で有限生成でないものがある。x1 ∈ A
を適当に取ると、{x1} は A を張らないので、ある x2 ∈ A について x1 5 x2 とならない。{x1, x2} もA を張らないので、x3 ∈ A で x1 5 x3 も x2 5 x3 が成り立たないものが存在する。同様にして一般にxn がx1 5 xn, x2 5 xn, · · · , xn−1 5 xn のどれも成り立たないように取れる。このとき、S = (x1, x2, · · · ) は、(3) の条件を満たしていないので矛盾である。�
定理 5.17 2つの順序集合 (X, =), (Y, =) がDickson的なら、積順序を与えた(X × Y, =) もDickson的。
[証明] (x1, y1), (x2, y2), · · · を X × Y の任意の数列とする。X がDickson的なので、定理5.16の(2)
より1, 2, · · · の無限部分集合 A で {xi | i ∈ A} が単調増大になるものが取れる。また Y がDickson的なので、定理5.16の(3)の条件よりA の要素 i, j (i < j) で、yi 5 yj となるものが存在する。この時、(xi, yi) 5 (xj , yj) が成り立つ。すなわち、定理5.16の(3)が成立するので、X × Y はDickson的。�
5.5 Noether性 (参考)
この小節では、Dickson性より弱いNoether性について調べるが、この後の議論に用いられる事はない。
定義 5.18(Noether性) (X, =) の任意の空でない部分集合 S が= に関する極小元を S の中に持つとき = は Noether的あるいは Noethoer性を持つという。
例 30 Z, Q, Q>0は、Noether的でないが、Nは、Noether的である。
補題 5.19 順序集合(X, =) がNoether的であるための必要十分条件は全ての X における狭義単調減少列x1 > x2 > · · · が必ず有限で終わることである。
[証明] (必要性)定義より明らか。(十分性)X のある空でない部分集合 A に極小元がないとする。まずx1 ∈ A を適当に選ぶ。A に x1 より小さい元は存在する。(そうでなければ x1 は極小元となる。)よってそれを x2 ∈ A とする。以下同様にx1 > x2 > x3 > · · · ∈ A が作れるので、仮定に反する。�
補題 5.20 順序集合がNoether的であるための必要十分条件は、任意の部分集合がその極小点の集合で生成されることである。
[証明] (必要性) 順序集合の任意の部分集合をA、その極小点の集合をMとする。MがAを生成しないとすれば、あるa1 ∈ Aが存在して、極小点でない。よって、あるa2 ∈ Aが存在して、a1 > a2である。どんなm ∈ Mに対してもa1 ≥ mとならないので、a2も極小点ではない。同様にa1 > a2 > a3 > . . .となるai ∈ A が存在する。これは、補題5.19より、矛盾である。(十分性) 空でない部分集合がMで生成されるとき、Mは空でない。よって、任意の空でない部分集合がその極小点の集合Mで生成されていれば、Mは空でない。よってNoether性を持っている。�
定理 5.21 Dicskon的であるための必要十分条件は、Noether的であり、かつ全ての部分集合の極小元の集合が有限であることである。
[証明] (必要性) Dicskon的であるとする。補題5.19より、もしNoether的でなければ、その集合には狭義単調減少数列があるが、これはあきらかに有限な基底はないのでDickson的でない。よってNoether的である。また、極小元の集合の生成元は、それ自身でなければならないので、有限集合である。(十分性) Nother的なので、補題5.20より、任意の部分集合はその極小元の集合で生成され、それが有限集合なのだから、Dickson的であることになる。�
例 31 Noether的であってもDickson的であるとは限らない。例えば無限集合 X 上で = を空(任意のx, y ∈ X について x > y でない)とすると、これはNoether的だがDickson的でない。
系 5.22 全順序集合では、順序が Noether的であることとDickson的であることは同値である。
[証明] 整列集合であるとする。部分集合の最小元はそれ1つでその部分集合を張っているからDickson的である。逆は補題5.21より。�
定理 5.23 2つの順序集合 (X, =), (Y, =) がNoether的なら、積順序を与えた(X × Y, =) もNoether的。
[証明] A ⊂ X × Y とする。定理5.20より、Aの極小点の集合がAを生成していることを言えば良い。そうでないとする。ある(x1, y1) ∈ Aが存在してAの極小点の集合で生成されない。よって、(x1, y1)
が極小でないので、ある点(x2, y2) ∈ A が存在して、(x1, y1) > (x2, y2)となる。このとき、(x3, y3)
も極小でないので、ある点(x3, y3) ∈ A が存在して、(x2, y2) > (x3, y3)となる。以下同様にして、狭義単調減少無限列、(xi, yi) ∈ A, i ≥ 1が存在する。このとき、{xi}と{yi}のいずれかは、無限集合である。{xi}が無限集合だとすると、この集合に極小点は存在せず、XがNoether的である事と矛盾する。{yi}が無限集合だとしても同様。�
§6 単項式順序と整除
6.1 順序集合Nnの単項式順序
Nn の加法とは、α = (α1, α2, · · · , αn), β = (β1, β2, · · · , βn) ∈ Nn に対して
α+ β = (α1 + β1, α2 + β2, · · · , αn + βn)
と定義されたものとする。
定義 6.1(両立) (Nn, =) が + と 両立しているとは、
α = β ⇒ ∀γ ∈ Nn α+ γ = β + γ
が成り立つことである。
定理 6.2 (Nn, =) を全順序で、+ と両立しているとする。このとき、次の3つの条件は同値である。
(1) = は標準的順序≥の拡張である。(2) = は整列順序。(3) ∀α ∈ Nn α = 0.
[証明] (1) ⇒ (2): 任意の A ⊂ Nn について、ディクソンの補題よりあるA の ≥ に関する有限基底A′ ⊂ A が存在する。A′ の= に関する最小の元を α0 とする。任意の α ∈ A に対して、ある α′ ∈ A′ があって、α ≥ α′。仮定より α = α′ = α0。すなわち α0 は A の = に関する最小元である。よって=は整列順序である。(2) ⇒ (3): 整列順序なのに α < 0 となる α が存在したとすると、α > α+ α > α+ α+ α > · · · となり、この数列に最小が存在せず矛盾する。
(3) ⇒ (1): α ≥ β とすれば、α− β ∈ Nn よって、仮定よりα− β = 0。両辺に β を加えて α = β。よって = は ≥ の拡張である。�
定義 6.3(Nnの単項式順序) Nn の 単項式順序(あるいは単に 項順序)とは、順序であって次の条件を満たすものを言う。
(1) = は標準的順序の拡張である(2) = は Nn の全順序(3) = は + と 両立する
定理 6.4 Nn の単項式順序は整列順序である。
[証明] 定理6.2より。�
6.2 さまざまな単項式順序
以下、Nn の単項式順序を複数作って行く。
定義 6.5(辞書式順序, lex, lexcographic order, >lex) α = (α1, α2, · · · , αn), β = (β1, β2, · · · , βn)
とするとき、
α >lex β ⇐⇒ αi, βi を左から見ていって最初の異なる αi, βi で αi > βi.
命題 6.6 lex は単項式順序である。
[証明] 明らか。�
記法 4 α = (α1, α2, · · · , αn) に対し |α| =∑
αi とおく。
定義 6.7(次数付き辞書式順序, grlex, graded lexcographic order, >grlex)
α >grlex β ⇐⇒ (|α| > |β|) または (|α| = |β| かつ α >lex β).
命題 6.8 grlex は単項式順序である。
[証明] 明らか。�
定義 6.9(次数付き逆辞書式順序, grevlex, graded reverse lexcographic order, >grevlex)α = (α1, α2, · · · , αn), β = (β1, β2, · · · , βn) とするとき、
α >grevlex β ⇐⇒ (|α| > |β|)または (|α| = |β|かつ αi, βiを右から見ていって最初の異なる αi, βiで αi < βi).
命題 6.10 grevlex は単項式順序である。
[証明] 明らか。�
例 32 {(3, 0, 0), (2, 0, 2), (1, 2, 1)} を大きい順に並べる
lex grlex grevlex(3, 0, 0) (2, 0, 2) (1, 2, 1)(2, 0, 2) (1, 2, 1) (2, 0, 2)(1, 2, 1) (3, 0, 0) (3, 0, 0)
注 20 N2 では grlex と grevlex は同じである。
6.3 “単項式の”単項式順序
定義 6.11(単項式) α = (α1, α2, · · · , αn) に対してxα = x1α1x2
α2 · · ·xnαn ∈ k[x1, x2, · · · , xn]
とおき、これを 単項式と言う。
注 21 xα | xβ ⇐⇒ α ≤ β (標準順序).
定義 6.12(単項式の順序) Nn に順序 = を一つ定めたとき、α = (α1, α2, · · · , αn),
β = (β1, β2, · · · , βn) ∈ Nn とするとき、単項式 xα と xβ の間の順序を
xα = xβ ⇐⇒ α = β
と定義する。Nn の単項式順序 = で決められた単項式の順序を単に 単項式順序という。
Nn の単項式順序の定義6.3より、次が成り立つ。
命題 6.13(単項式順序) k[x1, x2, · · · , xn] の単項式順序=について以下が成り立つ。
(1) xα ≥ xβ ⇒ xα = xβ
(2) = は単項式の間の全順序(3) = は積と 両立する(すなわち xα = xβ ⇒ xαxγ = xβxγ が成り立つ)。
例 33 同じ式の単項式の降べき(大きい順)表示−5x3 + 7x2z2 + 4xy2z + 4z2 (lex)
= 7x2z2 + 4xy2z − 5x3 + 4z2 (grlex)
= 4xy2z + 7x2z2 − 5x3 + 4z2 (grevlex)
以下、k[x1, x2, · · · , xn]に単項式順序=を一つ固定する。
定義 6.14 多項式 f =∑α∈Nn
aαxα について f ̸= 0 のとき次のように定義する。
• deg(f) = multideg(f) = max{α | aα ̸= 0}. · · · 多重次数• LC(f) = adeg(f) · · · 先頭係数(leading coefficient)
• LM(f) = xdeg(f) · · · 先頭単項式(leading monomial)
• LT(f) = adeg(f)xdeg(f) · · · 先頭項(leading term)
• RT(f) = f − LT(f) · · · 残余(rest term)
注 22 LT(f)|LT(g) は deg f ≤ deg g と同値となる。
注 23 f, RT(f) ̸= 0なら、deg f > degRT(f)(単項式順序で)である。
例 34 f = −5x3 + 7x2z2 + 4xy2z + 4z2 について lex で考えると
• deg(f) = (3, 0, 0)
• LC(f) = −5
• LM(f) = x3
• LT(f) = −5x3
• RT(f) = 7x2z2 + 4xy2z + 4z2
命題 6.15 f, g ̸= 0 について
(1) deg(fg) = deg(f) + deg(g).
(2) f + g ̸= 0 ⇒ deg(f + g) 5 max{deg(f), deg(g)}.(3) f + g ̸= 0かつdeg(f) ̸= deg(g) ⇒ deg(f + g) = max{deg(f), deg(g)}.
6.4 多変数多項式の整除
定理 6.16(割り算アルゴリズム) f, f1, f2, · · · , fs ∈ k[x1, x2, · · · , xn] とする。単項式順序 = を選び固定する。f の F = (f1, f2, · · · , fs) による 割り算とは次の条件を満たすものであり、以下に述べるアルゴリズムで得ることができる。
(1) f = a1f1 + a2f2 + · · ·+ asfs + r a1, a2, · · · , as, r ∈ k[x1, x2, · · · , xn].
(2) (r = 0) または(r ̸= 0 で、全ての i について LT(fi) はr のどの単項式も割ることはない。)(3) aifi ̸= 0 ならば deg(f) = deg(aifi)。
注 24 特に(2)より、全ての i について deg r ̸≥ deg fi である。ここの不等号のみ自然順序≥であり、degを定める方法および、上の(3)の条件は、=で決定されている。
Input : f, f_1, f_2, ... , f_sOutput : a_1, a_2, ... , a_s, ra_1 := 0; a_2 = 0; ... ; a_s := 0; r := 0p := fWHILE p != 0 DOi := 1sw := FalseWHILE i <= s AND sw = False DOIF LT(f_i) divides LT(p) THENa_i := a_i + LT(p) / LT(f_i)p := p - ( LT(p) / LT(f_i) ) * f_isw := True
ELSEi := i + 1
IF sw = False THENr := r + LT(p)p := p - LT(p)
(ただしここでfi を f_i などと書いた。)
例 35 lex での(x2y + xy2 + y2)÷ (xy − 1, y2 − 1) = (x+ y, 1) · · ·x+ y + 1. の計算過程を示す。xy - 1 | x + y r: x + y + 1y^2 - 1| 1
-----------------x^2y + xy^2 + y^2x^2y - x-----------------
xy^2 + x + y^2xy^2 - y--------------
x + y^2 + y --> xy^2 - 1-------
y + 1 --> y1 --> 10
[証明] 略。ただし、ループの停止性には単項式順序が整列順序であること(定理6.4)を使う。�
定義 6.17( F, mod F) fを被除数(dividend)、f1, f2, · · · , ft あるいは F = (f1, f2, · · · , ft)
を除数(divisor)、a1, a2, · · · , atを商(quotient)、rを余り(remainder)と言う。
r を fFあるいは remainder(f, F ) あるいは f mod F と書く。
途中に現れるpを中間被除数(intermediate dividend)と呼ぶ。
〔練習問題A〕lex順序で、x+ yを(x+ 1, y)で割った、商と余りを求めよ。〔練習問題B〕grlex順序で、x4 + xy3を(x3 − xy, x2y − y2, xy)で割った、商と余りを求めよ。
定理 6.18 前定理のa1, a2, · · · , atは、条件(1), (2), (3)に加えて次の条件を満たす。(4) ∀i 5 s+ 1 aifi ∈ ⟨ fi ⟩ − ⟨ f1 ⟩ − ⟨ f2 ⟩ − · · · − ⟨ fi−1 ⟩.ただし、fs+1 = 1, as+1 = rと置いた。また、条件(1), (2), (3), (4) を満たす。a1, a2, · · · , at, rは、唯一である。
[証明] 略。(参考文献『グレブナ基底と代数多様体入門(上)』のP.98練習問題11を参照。) �
定理 6.19 任意の F = (f1, f2, · · · , fs) に対し ( )Fはk 上線形である。
[証明] 略。(同上練習問題12を参照。) �
例 36(1) F の順番によって、余りが変わる。
(xy2 − x)÷ (xy − 1, y2 − 1) = (y, 0) · · · (−x+ y) [lex].(xy2 − x)÷ (y2 − 1, xy − 1) = (x, 0) · · · 0 [lex].
(2) 順序の取り方によって、余りが変わる。(lex と grlex)
(xy + y2)÷ (x+ y2) = y · · · (−y3 + y2) [lex].(xy + y2)÷ (x+ y2) = 1 · · · (xy − x) [grlex].
(3) 順序の取り方によって、余りが変わる。(x > y と y > x)
(x+ y2)÷ (x+ y) = 1 · · · (y2 − y) [lex, x > y].(y2 + x)÷ (y + x) = y − x · · · (x2 + x) [lex, y > x].
注 25 f mod F = 0 ならば f ∈ ⟨F ⟩ である。一方、例36の(1)にあるように、f mod F ̸= 0 だからといって、f ̸∈ ⟨F ⟩ とは言えない。
注 26 割り算アルゴリズムには、次の様な流儀もある。ループが3段になるが、こちらの方が自然に思えるかもしれない。
Input : f, f_1, f_2, ... , f_sOutput : a_1, a_2, ... , a_s, ra_1 := 0; a_2 = 0; ... ; a_s := 0; r := 0p := fWHILE p != 0 DOi := 1sw := FalseWHILE i <= s DOWHILE p != 0 AND LT(f_i) divides LT(p) DOa_i := a_i + LT(p) / LT(f_i)p := p - ( LT(p) / LT(f_i) ) * f_isw := True
i := i + 1IF sw = False THENr := r + LT(p)p := p - LT(p)
このアルゴリズムで得られる商と余りの満たす条件は、定理6.16 と同じだが、商と余りそのものは、違うものになる可能性がある。例えば、lex で、x2y + xy2を(y2, xy − 1)で割ると、定理6.16のアルゴリズムでは、商(x, x)余りxで
あるが、このアルゴリズムでは、商(0, x+ y)余りx+ yである。また、x2yF= x, xy2
F= 0なので、線
形性も無い。
§7 ヒルベルトの基底定理とグレブナ基底
これ以降、Nn の標準順序の拡張である単項式順序 = を1つ定めておく。
記法 5 F を k[x1, x2, · · · , xn] の部分集合とするとき
degF = {deg f |f ∈ F, f ̸= 0}LT(F ) = {LT(f)|f ∈ F, f ̸= 0}LM(F ) = {LM(f)|f ∈ F, f ̸= 0}
等々と定義する。
命題 7.1 I がイデアルならdeg I も標準順序 ≥ に関するイデアルである。
[証明] (略)。�} 問い 集合 F ⊂ k[x1, x2, · · · , xn] で生成されるイデアル ⟨F ⟩ に対し、一般に deg ⟨F ⟩ ⊃ ⟨ degF ⟩である。では、いったい、いつ
deg ⟨F ⟩ = ⟨ degF ⟩
となるか?
定義 7.2(グレブナ基底) ある単項式順序=を固定し、degは=で定めるものとする。イデアル I の有限部分集合 G で
deg I = ⟨ degG ⟩
となるとき G を I の グレブナ基底あるいは 標準基底と言う。ここで、右辺のイデアルは、標準順序≥によるものとする。
命題 7.3 イデアル I の有限部分集合 G が、グレブナ基底であるための必要十分条件は、任意のf ∈ I
に対し、あるg ∈ Gが存在して、deg g ≤ deg fとなることである。
命題 7.4 イデアル I の有限部分集合 G が、グレブナ基底であるための必要十分条件は、任意のf ∈ I
に対し、あるg ∈ Gが存在して、LT(g)|LT(f)となることである。
定理 7.5 イデアル I のグレブナ基底 G は I の基底である。すなわちI = ⟨G ⟩ である。
[証明] 定理6.16のアルゴリズムで f ∈ I を G = (g1, g2, · · · , gt) によって割った商をa1, a2, · · · , at、余りを r とする。このとき、r = f − a1g1 − · · · − atgt ∈ I。もし r ̸= 0 とすると全ての i についてdeg gi ̸≤ deg r となり、Gがグレブナ基底であることと矛盾する。�
例 37 Gが単項式からなる集合であれば、deg ⟨G ⟩はdegGで生成されるので、Gは ⟨G ⟩のグレブナ基底である。
例 38 以下、lex順序で考える。
(1) F = (x, x+ y)とおく。⟨F ⟩ = ⟨x, x+ y ⟩ = ⟨x, y ⟩ である。deg ⟨F ⟩ = ⟨ (1, 0), (0, 1) ⟩、一方、⟨ degF ⟩ = ⟨ (1, 0), (1, 0) ⟩ = ⟨ (1, 0) ⟩ なので、Fは、⟨F ⟩のグレブナ基底でない。
(2) F = (x3, x2y + x)とおく。x = y2x3 + (1− xy)(x2y + x)を考えると、⟨F ⟩ = ⟨x ⟩である。deg ⟨F ⟩ = ⟨ (1, 0) ⟩、一方、⟨ degF ⟩ = ⟨ deg(x3), deg(x2y + x) ⟩ = ⟨ (3, 0), (2, 1) ⟩ なので、F
は、⟨F ⟩のグレブナ基底でない。(3) G = (x+ y, y − z)とおくと、 これは ⟨G ⟩ のグレブナ基底である。これを言うためには、
deg ⟨G ⟩ ⊂ ⟨ deg(x+ y), deg(y − z) ⟩ を言えばよい。そのために、f ∈ ⟨G ⟩, f ̸= 0 に対して“(1, 0, 0) ≤ deg f または(0, 1, 0) ≤ deg f” を言おう。仮に、これが否定されるならば、LT(f) は z
だけの式。よって、f も z だけの式 f(z)。ところで、f は
x
y
z
=
−t
t
t
上で 0 であるはず。よっ
て f(t) = 0 これはf ̸= 0 と矛盾する。
定理 7.6(グレブナ基底の存在定理) 体 k 上の多項式環 k[x1, x2, · · · , xn] の任意のイデアルI (̸= 0) には、グレブナ基底が存在する。
[証明] ディクソンの補題より、イデアル deg I には有限な生成元 deg g1, deg g2, · · · , deg gt, (gi ∈ I)
が存在する。G = (g1, g2, · · · , gt) とおけば、⟨ degG ⟩ = ⟨ deg g1, deg g2, · · · , deg gt ⟩ = deg I. �
定理 7.7(ヒルベルトの基底定理) 体 k 上の多項式環 k[x1, x2, · · · , xn] の任意のイデアルは有限生成イデアルである。
[証明] 生成元としてそのイデアルのグレブナ基底を取ればよい。�
系 7.8 I1 ⊂ I2 ⊂ · · · を k[x1, x2, · · · , xn] のイデアルの増大列とするとき、ある i0 が存在してIi = Ii0 , (∀i ≥ i0) となる。
[証明] (定理5.15の証明と同様である。)∪
i Ii はイデアルである。その有限基底 F ⊂∪
i Ii を取れば、Fの各元毎にある i が存在して Ii に属する。これらのi の最大のものを i0 とすると、F ⊂ Ii0 となる。この i0 が求めるものである。�
系 7.9 k[x1, x2, · · · , xn] の任意のイデアル I についてV(I) = {x ∈ kn | ∀f ∈ I f(x) = 0} はアフィン多様体である。
§8 グレブナ基底の性質
8.1 正規形
定理 8.1 G = (g1, g2, · · · , gt) をイデアル I のグレブナ基底とすれば、任意のf ∈ k[x1, x2, · · · , xn] に対して次を満たす r がただ1つ存在する。
(1) ある g ∈ I が存在して f = g + r。(2) r = 0、または r ̸= 0 で r のどの単項式の deg も、どの deg gi より(標準順序≥で)大きく(あるいは
等しく)ない。
[証明] 存在は G により割り算(定理6.16)により明らか。一意性は f = g + r = g′ + r′ とすると r′ − r = g − g′ ∈ I であり、これが 0 でないとするとdeg(r − r′) ∈ deg I ⊂ ⟨ degG ⟩ = ⟨ deg g1, deg g2, · · · , deg gt ⟩。よってある i でdeg gi ≤ deg(r′ − r)。これは r または r′ のある単項式の deg が ≥ deg gi となって矛盾である。�
定義 8.2(正規形) f ∈ k[x1, x2, · · · , xn] ⊃ I : イデアルで、G = (f1, f2, · · · , ft) が I のグレブ
ナ基底であるとき fGは G の中の fi の順番に依存しない。また、定理8.1 の条件 (1), (2) を満たすr は
fGである。これを f の(G による) 正規形という。
系 8.3 G をイデアル I のグレブナ基底とすると
f ∈ I ⇐⇒ fG= 0.
[証明] ⇐ は明らか。 ⇒ は f = f + 0 に定理8.1 を適用して fG= 0. �
} 問い F = (f1, f2, · · · , ft) がグレブナ基底になるのはどんな時か?Fから、⟨F ⟩のグレブナ基底をどうやって見つけるか?
8.2 S-多項式
以下、>と<は、ある固定した単項式順序=と5による不等号とする。
定義 8.4(S-多項式) xγ を LM(f) と LM(g) の最小公倍数とするとき、
S(f, g) =xγ
LT(f)f − xγ
LT(g)g
= fとgの先頭項を相殺させた式
を f と g の S 多項式という。
例 39 grlex で f = x3y2 − x2y3 + x, g = 3x4y + y2 を考えるとxγ = x4y2, S(f, g) = xf − y
3g = −x3y3 + x2 − y3
3 .
注 27 S(f, g) ̸= 0であるとき、以下が成り立つ。
(1) degS(f, g) < degLCM(LT(f), LT(g)).
(2) deg f = deg g ⇒ degS(f, g) < deg f .
(3) deg f = deg g ⇒ S(f, g) =f
LC(f)− g
LC(g).
(4) c, c′ ∈ k, c ̸= 0, c′ ̸= 0 ⇒ S(c · f, c′ · g) = S(f, g).
(5) S(f, g) | S(xαf, xβg).
∵ xδ = degLCM(LM(xαf), LM(xβg)), xγ = LCM(LM(f), LM(g)) とおくと、
(xαf, xβg) =xδ · xαf
LM(xαf)− xδ · xβg
LM(xβg)= xδ−γ(
xγf
LM(f)− xγf
LM(g)) = xδ−γS(f, g).
定義 8.5 δ ∈ Nn, f1, f2, · · · , ft ∈ k[x1, x2, · · · , xn] に対してイデアル ⟨ f1, f2, · · · , ft ⟩ の部分ベクトル空間を
⟨ f1, f2, · · · , ft ⟩δ = {∑
i aifi | ai ∈ k[x1, x2, · · · , xn], ∀i deg(aifi) 5 δ}
と定義する。同様に集合 F ⊂ k[x1, x2, · · · , xn] に対して⟨F ⟩δ を定義する。
注 28 ⟨F ⟩ = ⟨G ⟩だからといって、⟨F ⟩δ = ⟨G ⟩δとなるとは限らない。
注 29 任意の δ ∈ Nn に対して次が言える。
(1) ⟨F ⟩δ + ⟨G ⟩δ = ⟨F ∪G ⟩δ.(2) fi | gi (1 ≤ i ≤ t) ⇒ ⟨ g1, g2, · · · , gt ⟩δ ⊂ ⟨ f1, f2, · · · , ft ⟩δ.
単項式順序 = は整列順序であるから、f ∈ ⟨F ⟩となるfに対して、f ∈ ⟨F ⟩δ となるδに最小値がある。そこで、次のように定義する。
定義 8.6 f ∈ ⟨F ⟩, f ̸= 0に対し、
degF f = min{δ ∈ N | f ∈ ⟨F ⟩δ}
注 30 このとき、degF f = deg fである。
注 31 fF= 0 のとき、f ∈ ⟨F ⟩ のみならず、 f ∈ ⟨F ⟩deg f すなわち、degF f = deg fが言える。
補題 8.7 f ∈ ⟨F ⟩, f ̸= 0に対し、degF f = deg f とするとき、次が成り立つ。
(1) ⟨ f ⟩δ ⊂ ⟨F ⟩δ, ∀δ ∈ Nn.
(2) deg f ∈ ⟨ degF ⟩.
[証明] degF f = deg fなので、f =∑
i aifi, fi ∈ F deg(aifi) 5 deg f と書けている。(1) 任意のaf ∈ ⟨ f ⟩δ (a ∈ k[x1, x2, · · · , xn]) に対して、af =
∑i aaifi, deg(aaifi) 5 deg af 5 δ
。よって、af ∈ ⟨F ⟩δ。(2) LT(f) =
∑deg(aifi)=deg f LT(ai)LT(fi)。よって deg(aifi) = deg f となる i が少なくとも1つ存
在するので、deg fi ≤ deg f。�
注 32 上の2つの結論は、単に f ∈ ⟨F ⟩ という仮定だけからは言えない。例: f = y, F = (x+ y, x), δ = (0, 1), lex のとき y ̸∈ ⟨x+ y, x ⟩(0,1) = {0}, degF y = (1, 0) であり、deg(y) ̸∈ ⟨ deg(x+ y), deg(x) ⟩ = ⟨ (1, 0) ⟩ でもある。
系 8.8 Fが⟨F ⟩のグレブナ基底であるための必要十分条件は、
任意の0でないf ∈ ⟨F ⟩に対して、degF f = deg f
であることである。
[証明] (必要性)Fがグレブナ基底ならば、系8.3より、 任意の0でないf ∈ ⟨F ⟩に対して、fF= 0であ
る。よって、degF f = deg f である(注31)。(十分性) 補題8.7(2) より、f ̸= 0, f ∈ ⟨F ⟩について、deg f ∈ ⟨ degF ⟩。すなわち、deg ⟨F ⟩ ⊂ ⟨ degF ⟩ 。よって F はグレブナ基底である。�
以下、Nnに対する不等号 <と>は、単項式順序5と= に対応するものとする。
補題 8.9 f1, f2, · · · , ft は全て deg が δ に等しいとする。f =∑
i cifi, (ci ∈ k) についてdeg f < δ
とすれば f は S(fi, fj) の k 上の1次結合である。
[証明] LC(fi) = 1 としてよい。このとき∑i cifi = c1(f1−f2)+(c1+c2)(f2−f3)+ · · ·+(c1+c2+ · · ·+ct−1)(ft−1−ft)+(c1+c2+ · · ·+ct)ft.
各 fi − fi+1 と∑の deg は δ より小さいのでc1 + c2 + · · ·+ ct = 0. ゆえに∑
i cifi = c1S(f1, f2) + (c1 + c2)S(f2, f3) + · · ·+ (c1 + c2 + · · ·+ ct−1)S(ft−1, ft). �
定義 8.10 F = {f1, f2, · · · , ft} に対して
S(F, F ) = {S(fi, fj) | 1 ≤ i < j ≤ t}T (F ) = F ∪ S(F, F )
とおく。
補題 8.11 F = {f1, f2, · · · , ft}, f ∈ ⟨F ⟩ とするとき、degF f > deg f =⇒ degF f > degT (F ) f = deg f である。
[証明] δ = degF fとおく。f ∈ ⟨F ⟩δなので、f =∑
i aifi, ai ∈ k[x1, x2, · · · , xn] で、deg(aifi) 5 δ
となるのものが存在する。f =
∑deg(aifi)=δ
LT(ai)fi + f ′
と書き直せば、右辺 f ′ の次数は δ より小さいので、∑の次数も δ より小さい。よって補題8.9より、
∑は S(LT(ai)fi, LT(aj)fj) の1次結合で書けるが、
δ1 = max{degS(LT(ai)fi, LT(aj)fj) | i < j, deg(aifi) = deg(ajfj) = δ}
とおくと δ1 < δ であり、かつ、∑∈ ⟨S(LT(ai)fi, LT(aj)fj) | i < j ⟩δ1
である。一方、注27(5) より、S(fi, fj) | S(LT(ai)fi, LT(aj)fj) なので、注29(2)を使うと、∑∈ ⟨S(fi, fj) | i < j ⟩δ1 = ⟨S(F, F ) ⟩δ1
となる。一方、f ′ も ⟨F ⟩δ2 (δ2 < δ) に含まれるので、δ′ = max{δ1, δ2} < δ とおけば
f ∈ ⟨S(F, F ) ⟩δ′ + ⟨F ⟩δ′ = ⟨T (F ) ⟩δ′
となる。よって、degT (F ) f < degF fである。�
定理 8.12(ブッフベルガーのSペア判定条件) ある単項式順序を固定する。G = (g1, g2, · · · , gs) がイデアル I の基底であるときG が I のグレブナ基底であるための必要十分条件は
S(gi, gj)G= 0 (全てのi ̸= jについて)。
[証明] ( ⇒ ) S(gi, gj) ∈ I = ⟨G ⟩ よりS(gi, gj)G= 0 (系8.3より)。
( ⇐ ) S(gi, gj)G= 0 より、degG S(gi, gj) = degS(gi, gj)である。補題8.7(1)より、任意の δ に対し
て⟨S(gi, gj) ⟩δ ⊂ ⟨G ⟩δ。よって、⟨T (G) ⟩δ = ⟨G ⟩δ。従って、任意の 0 でない f ∈ I = ⟨G ⟩ に対してdegG f = degT (G) f である。よって、補題8.11より、degG f = deg fでなければならない。故に、系8.8より、Gは、グレブナ基底である。�〔練習問題〕G = (x+ y, y − z)とおくとき、 これが ⟨G ⟩ の lex順序によるグレブナ基底であることを示しなさい。(c.f. 例38)
§9 ブッフベルガーのアルゴリズム
9.1 ブッフベルガーのアルゴリズム
定理 9.1( ブッフベルガーのアルゴリズム) I = ⟨ f1, f2, · · · , fs ⟩ について次のアルゴリズムでグレブナ基底を構成できる。
Input: F = (f_1, f_2, ..., f_s)Output: G = (g_1, g_2, ..., g_t) : <F>のグレブナ基底G := FREPEATG’ := GFor each pair {p, q}, p != q, in G’ DOS := S(p, q) mod G’IF S != 0 THEN G := G + (S)
UNTIL G = G’
[証明] (停止性) S(F, F ) = {S(fi, fj)F| 1 ≤ i < j ≤ s} − {0}, T (F ) = F ∪ S(F, F ) とおくと、
REPEAT における G’ から G を作る操作は、G = T (G′) と表される。さて、
⟨ deg T i(F ) ⟩ (i = 0, 1, 2, · · · ) は、イデアルの増大列であるから、定理5.15より、ある i0 が存在して
⟨ deg T i(F ) ⟩ (i ≥ i0) は全て等しくなる。特に G0 = T
i0(F ) とおけば⟨ deg T (G0) ⟩ = ⟨ degG0 ⟩、
よって、degS(G0, G0) ⊂ ⟨ degG0 ⟩。ゆえにS(g, g′)G0
(g, g′ ∈ G0)の全ての元のdeg は degG0 のい
ずれかの元より ≥ となるが、このような元は割り算 G0の性質を考えると存在しない。よって、
S(G0, G0) = {}。これはこの REPEAT が i0 回以下で停止する事を意味している。
(正当性)またこのとき 定理8.12 より、G0 = Ti0(F ) は ⟨G0 ⟩ = ⟨F ⟩ のグレブナ基底である。�
補題 9.2 次が成り立つ。
(1) fF= 0 ⇒ f
F+(g)= 0.
(2) fF= f ⇒ f
F+(f)= 0.
(3) fF= r ⇒ f
F+(r)= 0.
[証明] (1) fF= 0 なら f
F+(g)を求める定理5.1の割り算アルゴリズムで、LT(g) による割り算をする直
前に sw が True になる。よって fF+(g)
で起こる割り算は fFのそれと全く同じなので、f
F+(g)= 0。
(2) 割り算アルゴリズム1回目のループで F による商は 0、更にf で商 1が立って余りが 0になる。
(3) 余りを求める演算が線形であること(定理6.19)を利用すると、r = fFならば
f − rF= f
F − rF = fF − r = 0。よって(1)より f − r
F+(r)= 0。一方、
f − rF+(r)
= fF+(r) − rF+(r) = f
F+(r)(∵ rF = rと(2))。∴ f
F+(r)= 0. �
定理 9.3(ブッフベルガーのアルゴリズムの改良版) ブッフベルガーのアルゴリズム次の方法でもグレブナ基底は求まる。
Input: F = (f_1, f_2, ..., f_s)Output: G = (g_1, g_2, ..., g_t) : <F>のグレブナ基底G := FB := {(i, j) : 1 <= i < j <= s}t := sWHILE B != {} DOSelect (i, j) in BS := S(f_i, f_j) mod GIF S != 0 THENt := t + 1f_t := SG := G + (f_t)B := B + {(i, t) : 1 <= i < t}
B := B - {(i, j)}
[証明] (停止性) IFの条件部のS ̸= 0が有限回で終わる。なぜなら、S = ftG ̸= 0 なら
deg(G+ (S)) ̸⊂ ⟨ degG ⟩なので、IFの本体でdegGは真に増加する事になるが、これは定理5.15より有限で終わらなければならないからである。一方、WHILEには1回毎にBの元を1つ減らす動作が入っているので、WHILEは有限回で停止する。(正当性) WHILEが停止した時のGをG∞とおく。任意の(i, j)について、IFの条件部でテストが行われ
た時、もしS(fi, fj)G= 0であれば、G∞はGの右に更に項を足したものなので、補題9.2(1)により、
S(fi, fj)G∞
= 0 がいえる。S = S(fi, fj)G̸= 0 であれば、補題9.2(3) よりS(fi, fj)
G+(S)= 0。G∞
はG+ (S)の右に更に項を足したものなので、先と同様にS(fi, fj)G∞
= 0 が成立する。
以上より、全ての(i, j)について、S(fi, fj)G∞
= 0 なので、定理8.12より、Gはグレブナ基底である。�
例 40 R = k[x, y] で x > y の grlex で考えて
f1 = x3 − 2xy
f2 = x2y − 2y2 + x
とおくとき、I = ⟨ f1, f2 ⟩ のグレブナ基底を求めよ。
[解] I のグレブナ基底は G = {f1, f2, f3, f4, f5}。 但し、
f3 = −x2
f4 = −2xy
f5 = −2y2 + x.
(計算の詳細)
Calculation of Groebner Basis of (grlex):f1 = x^3 - 2xyf2 = x^2y - 2y^2 + x
-----------------------------------------------------------------G = (f1, f2)= (x^3 - 2xy, x^2y - 2y^2 + x)
B = {(1, 2)}
Round 1S(f1, f2) = (y) * f1 - (x) * f2 = -x^2.(-x^2) mod G = -x^2.Description of mod: (null)
New Generator: f3 = -x^2
-----------------------------------------------------------------G = (f1, f2, f3)
= (x^3 - 2xy, x^2y - 2y^2 + x, -x^2)B = {(1, 3), (2, 3)}
Round 2S(f1, f3) = (1) * f1 - (-x) * f3 = -2xy.(-2xy) mod G = -2xy.Description of mod: (null)
New Generator: f4 = -2xy
-----------------------------------------------------------------G = (f1, f2, f3, f4)= (x^3 - 2xy, x^2y - 2y^2 + x, -x^2, -2xy)
B = {(2, 3), (1, 4), (2, 4), (3, 4)}
Round 3S(f2, f3) = (1) * f2 - (-y) * f3 = -2y^2 + x.(-2y^2 + x) mod G = -2y^2 + x.Description of mod: (null)
New Generator: f5 = -2y^2 + x
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5)= (x^3 - 2xy, x^2y - 2y^2 + x, -x^2, -2xy, -2y^2 + x)
B = {(1, 4), (2, 4), (3, 4), (1, 5), (2, 5), (3, 5), (4, 5)}
Round 4S(f1, f4) = (y) * f1 - (-1/2x^2) * f4 = -2xy^2.(-2xy^2) mod G = 0.Description of mod:#1 -2xy^2 => a[4] += y
Round 5S(f2, f4) = (1) * f2 - (-1/2x) * f4 = -2y^2 + x.(-2y^2 + x) mod G = 0.Description of mod:#1 -2y^2 + x => a[5] += 1
Round 6S(f3, f4) = (-y) * f3 - (-1/2x) * f4 = 0.
(0) mod G = 0.Description of mod: (null)
Round 7S(f1, f5) = (y^2) * f1 - (-1/2x^3) * f5 = 1/2x^4 - 2xy^3.(1/2x^4 - 2xy^3) mod G = 0.Description of mod:#1 1/2x^4 - 2xy^3 => a[1] += 1/2x#2 -2xy^3 + x^2y => a[4] += y^2#3 x^2y => a[4] += -1/2x
Round 8S(f2, f5) = (y) * f2 - (-1/2x^2) * f5 = 1/2x^3 - 2y^3 + xy.(1/2x^3 - 2y^3 + xy) mod G = 0.Description of mod:#1 1/2x^3 - 2y^3 + xy => a[1] += 1/2#2 -2y^3 + 2xy => a[5] += y#3 xy => a[4] += -1/2
Round 9S(f3, f5) = (-y^2) * f3 - (-1/2x^2) * f5 = 1/2x^3.(1/2x^3) mod G = 0.Description of mod:#1 1/2x^3 => a[1] += 1/2#2 xy => a[4] += -1/2
Round 10S(f4, f5) = (-1/2y) * f4 - (-1/2x) * f5 = 1/2x^2.(1/2x^2) mod G = 0.Description of mod:#1 1/2x^2 => a[3] += -1/2
RESULT =================================================================G = (f1 = x^3 - 2xy,f2 = x^2y - 2y^2 + x,f3 = -x^2,f4 = -2xy,f5 = -2y^2 + x
)
〔練習問題〕以下、lex 順序で考える。
(1) F = (x, x+ y)に対し、⟨F ⟩のグレブナ基底を求めなさい。(2) F = (x3, x2y + x)に対し、⟨F ⟩のグレブナ基底を求めなさい。
(c.f. 例38)
9.2 極小グレブナ基底・簡約グレブナ基底
定義 9.4(極小グレブナ基底, 簡約グレブナ基底) イデアル I ⊂ k[x1, x2, · · · , xn] のグレブナ基底 G
が次の条件 (1), (2) を満たすとき、G は 極小グレブナ基底 であるという。
(1) 任意の p ∈ G について LC(p) = 1。(2) 任意の p ∈ G について deg p ̸∈ ⟨ deg(G− {p}) ⟩。
この (2) の代わりに次の (3) を満たすならG は 簡約グレブナ基底 であるという。
(3) 任意の p ∈ G について p のどの単項式の deg も⟨ deg(G− {p}) ⟩ に入らない。
補題 9.5 イデアル I のグレブナ基底を G とするとき、ある p ∈ G に対し deg p ∈ ⟨ deg(G− {p}) ⟩ だとすれば G− {p} も I のグレブナ基底である。
[証明] deg I = ⟨ degG ⟩ = ⟨ deg(G− {p}) ⟩ より、グレブナ基底の定義から明らか。�
定理 9.6(極小グレブナ基底の存在) 任意のイデアル I ∈ k[x1, x2, · · · , xn] について I の極小グレブナ基底が存在する。
[証明] p ∈ G に対して deg p が deg(G− {p}) のどれかより ≥ なら、G := G− {p} として繰り返せばよい。�
例 41 例40の極小グレブナ基底を求めよ。すなわち、R = k[x, y] で x > y の grlex で考えてf1 = x3 − 2xy, f2 = x2y − 2y2 + x とするとき、I = ⟨ f1, f2 ⟩ のグレブナ基底を求めるとf3 = −x2, f4 = −2xy, f5 = −2y2 + x として、G = (f1, f2, f3, f4, f5) であった。これから極小グレブナ基底を求めよ。
[解] ここでdegG = {(3, 0), (2, 1), (2, 0), (1, 1), (0, 2)}
なので、deg f3 ≤ deg f1, deg f4 ≤ deg f2 だから、G = ⟨ f3, f4, f5 ⟩ はグレブナ基底として十分であり、係数を直せば
G = (x2, xy, y2 − 1
2x)
が極小グレブナ基底である。
注 33 x2 = 2y · xy − 2x · (y2 − 12x) なので、この極小グレブナ基底は基底として冗長性がある。
定理 9.7(簡約グレブナ基底の存在) 簡約グレブナ基底は次のアルゴリズムで得ることができる。
Input: G = (f_1, f_2, ..., f_s): I の極小グレブナ基底Output: G~ = (g_1, g_2, ..., g_s) : I の簡約グレブナ基底i := 1G~ := GWHILE i <= s DOg_i := f_i mod(G~ - {f_i})G~ := G~ - {f_i} + {g_i}i := i + 1
[証明] G は極小グレブナ基底なので deg f1 ̸∈ ⟨ deg(G− {f1}) ⟩。よって、割り算アルゴリズムを考えれば g1 = f1
G−{f1} に対してdeg g1 = deg f1。ゆえに、G̃ = G− {f1} ∪ {g1} とおくと、deg G̃ = degG · · · (∗)となる。また、g1 のどの単項式の deg も deg(G− {f1}) = deg(G̃− {g1}) のどれとも ≥ となることはない。g1 ∈ Iと(∗)より G̃ はグレブナ基底であり、極小グレブナ基底でもある。G
からG̃を作ったように、G̃からG̃(2)を作り、以下同様にG̃(3), . . . , G̃(s) を作ると、
degG = deg G̃ = · · · = deg G̃(s) となる。また、gi = fiG̃(i−1)−{fi} の任意の単項式のdegは
⟨ deg(G̃(i−1) − {fi}) ⟩ = ⟨ deg(G̃(s) − {gi}) ⟩ に属さないので、G̃(s) = ⟨ g1, g2, · · · , gs ⟩ は簡約グレブナ基底である。�
例 42 例41 のG = (x2, xy, y2 − 12x) は I = ⟨G ⟩ の簡約グレブナ基底でもある。しかし例えば
G′ = (x2 + xy, xy, y2 − 12x) を取ると、これは I の極小グレブナ基底だが簡約ではない。
定理 9.8(簡約グレブナ基底の一意性) 簡約グレブナ基底は、単項式順序を固定すれば、各イデアルに対して一意に決まる。
[証明] G, G̃ を簡約グレブナ基底とする。
• G, G̃ は極小グレブナ基底である。• G, G̃ は極小グレブナ基底であることからdegG = deg G̃ が言える。[証明] g ∈ G とすれば、⟨ degG ⟩ = ⟨ deg G̃ ⟩ より、ある g̃ ∈ G̃ が存在して deg g̃ ≤ deg g。同様に、ある g′ ∈ G が存在してdeg(g′) ≤ deg(g̃) ≤ deg g。もし g ̸= g′ なら g′ ∈ G− {g} なのでdeg g ∈ ⟨ deg g′ ⟩ ⊂ ⟨ deg(G− {g}) ⟩ となって G の極小性と矛盾する。よって g = g′。従ってdeg g = deg g̃ ∈ deg G̃。以上より degG ⊂ deg G̃。同様に逆向きの包含関係も言え、両辺は一致する。�
• g ∈ G, g̃ ∈ G̃ に対してdeg g = deg(g̃) ⇒ g = g̃。[証明] 式 f に現れる単項式の集合を T(f) と書く
ことにする。g − g̃ ∈ I より g − g̃G= 0 · · · (a)である。一方、deg g = deg(g̃) より
T(g − g̃) ⊂ T(RT(g)) ∪ T(RT(g̃)) · · · (b)。ここで T(RT(g)) の各元の deg は、≥ deg g とならず、更にまた簡約性より deg(G− {g}) のどれとも ≥ とならないので、degG のどれとも ≥ とならない。同様にT(RT(g̃)) のどの元の degもdeg G̃ = degG のどれとも ≥とならない。よって(b)よりT(g − g̃) の全ての元の deg はdegG のどれとでも ≥ とならない。よって割り算アルゴリズムより、g − g̃
G= g − g̃ · · · (c) である。(a)と(c) より g − g̃ = 0。�
• 以上より G = G̃ が言える。
�
系 9.9(イデアルの同一性判定アルゴリズム) 2つのイデアルが一致することはそれぞれの簡約グレブナ基底が一致することと同値である。
Groebner 基底の応用
§10 計算の実例
10.1 連立1次方程式
次の連立1次方程式を考える
3 −6 −2 02 −4 0 41 −2 −1 −1
xyzw
= 0. (1)
これはイデアル
I = ⟨ 3x− 6y − 2z, 2x− 4y + 4w, x− 2y − z − w ⟩ (2)
を考えることと同じ。これのグレブナ基底を定理9.3の方法で求める。グレブナ基底は(lexで)
G = (3x− 6y − 2z, 2x− 4y + 4w, x− 2y − z − w, z + 3w)
である。計算の詳細は以下の通り:
Calculation of Groebner Basis of (lex):f1 = 3x - 6y - 2zf2 = 2x - 4y + 4wf3 = x - 2y - z - w
-----------------------------------------------------------------G = (f1, f2, f3)= (3x - 6y - 2z, 2x - 4y + 4w, x - 2y - z - w)
B = {(1, 2), (1, 3), (2, 3)}
Round 1S(f1, f2) = (1/3) * f1 - (1/2) * f2 = -2/3z - 2w.(-2/3z - 2w) mod G = -2/3z - 2w.New Generator: f4 = -2/3z - 2w
-----------------------------------------------------------------G = (f1, f2, f3, f4)= (3x - 6y - 2z, 2x - 4y + 4w, x - 2y - z - w, -2/3z - 2w)
B = {(1, 3), (2, 3), (1, 4), (2, 4), (3, 4)}
Round 2S(f1, f3) = (1/3) * f1 - (1) * f3 = 1/3z + w.(1/3z + w) mod G = 0.Round 3S(f2, f3) = (1/2) * f2 - (1) * f3 = z + 3w.(z + 3w) mod G = 0.Round 4S(f1, f4) = (1/3z) * f1 - (-3/2x) * f4 = -3xw - 2yz - 2/3z^2.(-3xw - 2yz - 2/3z^2) mod G = 0.Round 5S(f2, f4) = (1/2z) * f2 - (-3/2x) * f4 = -3xw - 2yz + 2zw.(-3xw - 2yz + 2zw) mod G = 0.Round 6S(f3, f4) = (z) * f3 - (-3/2x) * f4 = -3xw - 2yz - z^2 - zw.(-3xw - 2yz - z^2 - zw) mod G = 0.
RESULT =================================================================G = (f1 = 3x - 6y - 2z,f2 = 2x - 4y + 4w,f3 = x - 2y - z - w,f4 = -2/3z - 2w
)
LT(G) = (3x, 2x, x, z) なので、極小グレブナ基底は
G = (x− 2y − z − w, z + 3w)
x− 2y − z − w(z+3w)
= x− 2y + 2w, z + 3w(x−2y−z−w)
= z + 3w なので、簡約グレブナ基底は
G = (x− 2y + 2w, z + 3w)
である。そして、
(1) 極小グレブナ基底を求める ⇐⇒ 掃きだし法で次のような階段行列に変形する:
1 −2 −1 −10 0 1 30 0 0 0
xyzw
= 0.
(2) 簡約グレブナ基底を求める ⇐⇒ 更に全ての式は他の先頭項による消去がなされている⇐⇒ 掃きだし法で次のような階段行列に変形する:
1 −2 0 20 0 1 30 0 0 0
xyzw
= 0.
10.2 イデアル所属問題
有限集合 G が I のグレブナ基底なら、f ∈ I であるための必要十分条件はfG= 0 である。
これを利用してイデアル I = ⟨x3 − 2xy, x2y − 2y2 + x ⟩ に対して、x2 + 2y3 と x2 + 2y3 + y の所属問題を解く。前章の例42より、I の x > y > z によるgrlexでの(簡約)グレブナ基底G = ⟨x2, xy, y2 − 1
2x ⟩ で割り算して考えればよい。x2 + 2y3
G= 0 より x2 + 2y3 ∈ I。また、x2 + 2y3 + y
G= y ̸= 0 より
x2 + 2y3 + y ̸∈ I。
10.3 イデアル所属問題その2
⟨x3, x2y + x ⟩ = ⟨x ⟩を示せ。(例38, 前の〔練習問題〕を参考に。)
10.4 イデアル同一性問題
事象 A, B についての次の条件は3つとも A と B が独立であることを意味している。これらが同値であることを検証する。
(α) P (A ∩ B) : P (A ∩ B) = P (A ∩ B) : P (A ∩ B)
(β) P (A ∩ B) = P (A)P (B)
(γ) P (A ∩ B) = P (A)P (B)
【解】各事象の確率に次のように名前を付ける
A A
B a b
B c d
(α) ⇐⇒ a : b = c : d ⇐⇒ ad− bc = 0
(β) ⇐⇒ a = (a+ c)(a+ b) ⇐⇒ a2 + ab+ ac− a+ bc = 0
(γ) ⇐⇒ c = (a+ c)(c+ d) ⇐⇒ ac+ ad+ c2 + cd− c = 0
(by lex order)------------------f1 = a + b + c + d - 1f2 = ad - bcS(f1, f2) = bc + bd + cd + d^2 - dS(f1, f2) / <f1, f2> =a1: 0a2: 0... bc + bd + cd + d^2 - d
f3 = bc + bd + cd + d^2 - d
S(f1, f3) = -abd - acd - ad^2 + ad + b^2c + bc^2 + bcd - bcS(f1, f3) / <f1, f2, f3> =a1: -bd - cd - d^2 + da2: 0a3: b + c + d - 1... 0
S(f2, f3) = -abd^2 - acd^2 - ad^3 + ad^2 - b^2c^2S(f2, f3) / <f1, f2, f3> =a1: -bd^2 - cd^2 - d^3 + d^2a2: 0a3: -bc + bd + cd + d^2 - d... 0
Reduced Groebner Basis = [a + b + c + d - 1, bc + bd + cd + d^2 - d]------------------f1 = a + b + c + d - 1f2 = a^2 + ab + ac - a + bcS(f1, f2) = ad - bcS(f1, f2) / <f1, f2> =a1: da2: 0... -bc - bd - cd - d^2 + d
f3 = -bc - bd - cd - d^2 + dS(f1, f3) = -abd - acd - ad^2 + ad + b^2c + bc^2 + bcd - bcS(f1, f3) / <f1, f2, f3> =a1: -bd - cd - d^2 + da2: 0a3: -b - c - d + 1... 0
S(f2, f3) = -a^2bd - a^2cd - a^2d^2 + a^2d + ab^2c + abc^2 - abc + b^2c^2S(f2, f3) / <f1, f2, f3> =a1: -abd - acd - ad^2 + ad + b^2c + b^2d + bc^2 + 2bcd - bc + 2bd^2 - 2bd + c^2d + 2cd^2 - 2cd + d^3 - 2d^2 + da2: 0a3: b^2 + bc + 2bd - 2b + c^2 + 2cd - 2c + d^2 - 2d + 1... 0
Reduced Groebner Basis = [a + b + c + d - 1, bc + bd + cd + d^2 - d]------------------f1 = a + b + c + d - 1f2 = ac + ad + c^2 + cd - c
S(f1, f2) = -ad + bcS(f1, f2) / <f1, f2> =a1: -da2: 0... bc + bd + cd + d^2 - d
f3 = bc + bd + cd + d^2 - dS(f1, f3) = -abd - acd - ad^2 + ad + b^2c + bc^2 + bcd - bcS(f1, f3) / <f1, f2, f3> =a1: -bd - cd - d^2 + da2: 0a3: b + c + d - 1... 0
S(f2, f3) = -acd - ad^2 + ad + bc^2 + bcd - bcS(f2, f3) / <f1, f2, f3> =a1: -cd - d^2 + da2: 0a3: c + d - 1... 0
Reduced Groebner Basis = [a + b + c + d - 1, bc + bd + cd + d^2 - d]
注 34 aが現れる度にb+ c+ d− 1に置き換えればいいので、これらの同値性の証明を実は優しい。が· · ·
10.5 多次元多元連立方程式の解法
連立方程式 x2 + y2 + z2 = 1x2 + z2 = yx = z
を機械的に解く。I = ⟨ f1, f2, f3 ⟩, f1 = x2 + y2 + z2 − 1, f2 = x2 + z2 − y, f3 = x− z とおき、I のグレブナ基底を求める。
F = (x2 + y2 + z2 − 1, x2 + z2 − y, x− z)
から、x > y > z による lex グレブナ基底を求めると、
G = (x2 + y2 + z2 − 1, x2 + z2 − y, x− y, y2 + y − 1, −y + 2z2, 4z4 + 2z2 − 1).
計算の詳細は以下の通り:
Calculation of Groebner Basis of (lex):f1 = x^2 + y^2 + z^2 - 1f2 = x^2 - y + z^2f3 = x - z
-----------------------------------------------------------------G = (f1, f2, f3)= (x^2 + y^2 + z^2 - 1, x^2 - y + z^2, x - z)
B = {(1, 2), (1, 3), (2, 3)}
Round 1S(f1, f2) = (1) * f1 - (1) * f2 = y^2 + y - 1.(y^2 + y - 1) mod G = y^2 + y - 1.New Generator: f4 = y^2 + y - 1
-----------------------------------------------------------------
G = (f1, f2, f3, f4)= (x^2 + y^2 + z^2 - 1, x^2 - y + z^2, x - z, y^2 + y - 1)
B = {(1, 3), (2, 3), (1, 4), (2, 4), (3, 4)}
Round 2S(f1, f3) = (1) * f1 - (x) * f3 = xz + y^2 + z^2 - 1.(xz + y^2 + z^2 - 1) mod G = -y + 2z^2.New Generator: f5 = -y + 2z^2
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5)= (x^2 + y^2 + z^2 - 1, x^2 - y + z^2, x - z, y^2 + y - 1, -y + 2z^2)
B = {(2, 3), (1, 4), (2, 4), (3, 4), (1, 5), (2, 5), (3, 5), (4, 5)}
Round 3S(f2, f3) = (1) * f2 - (x) * f3 = xz - y + z^2.(xz - y + z^2) mod G = 0.Round 4S(f1, f4) = (y^2) * f1 - (x^2) * f4 = -x^2y + x^2 + y^4 + y^2z^2 - y^2.(-x^2y + x^2 + y^4 + y^2z^2 - y^2) mod G = 0.Round 5S(f2, f4) = (y^2) * f2 - (x^2) * f4 = -x^2y + x^2 - y^3 + y^2z^2.(-x^2y + x^2 - y^3 + y^2z^2) mod G = 0.Round 6S(f3, f4) = (y^2) * f3 - (x) * f4 = -xy + x - y^2z.(-xy + x - y^2z) mod G = 0.Round 7S(f1, f5) = (y) * f1 - (-x^2) * f5 = 2x^2z^2 + y^3 + yz^2 - y.(2x^2z^2 + y^3 + yz^2 - y) mod G = 4z^4 + 2z^2 - 1.New Generator: f6 = 4z^4 + 2z^2 - 1
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5, f6)= (x^2 + y^2 + z^2 - 1, x^2 - y + z^2, x - z, y^2 + y - 1, -y + 2z^2, 4z^4 + 2z^2 - 1)
B = {(2, 5), (3, 5), (4, 5), (1, 6), (2, 6), (3, 6), (4, 6), (5, 6)}
Round 8S(f2, f5) = (y) * f2 - (-x^2) * f5 = 2x^2z^2 - y^2 + yz^2.
(2x^2z^2 - y^2 + yz^2) mod G = 0.Round 9S(f3, f5) = (y) * f3 - (-x) * f5 = 2xz^2 - yz.(2xz^2 - yz) mod G = 0.Round 10S(f4, f5) = (1) * f4 - (-y) * f5 = 2yz^2 + y - 1.(2yz^2 + y - 1) mod G = 0.Round 11S(f1, f6) = (z^4) * f1 - (1/4x^2) * f6 = -1/2x^2z^2 + 1/4x^2 + y^2z^4 + z^6 - z^4.(-1/2x^2z^2 + 1/4x^2 + y^2z^4 + z^6 - z^4) mod G = 0.Round 12S(f2, f6) = (z^4) * f2 - (1/4x^2) * f6 = -1/2x^2z^2 + 1/4x^2 - yz^4 + z^6.(-1/2x^2z^2 + 1/4x^2 - yz^4 + z^6) mod G = 0.Round 13S(f3, f6) = (z^4) * f3 - (1/4x) * f6 = -1/2xz^2 + 1/4x - z^5.(-1/2xz^2 + 1/4x - z^5) mod G = 0.Round 14S(f4, f6) = (z^4) * f4 - (1/4y^2) * f6 = -1/2y^2z^2 + 1/4y^2 + yz^4 - z^4.(-1/2y^2z^2 + 1/4y^2 + yz^4 - z^4) mod G = 0.Round 15S(f5, f6) = (-z^4) * f5 - (1/4y) * f6 = -1/2yz^2 + 1/4y - 2z^6.(-1/2yz^2 + 1/4y - 2z^6) mod G = 0.
RESULT =================================================================G = (f1 = x^2 + y^2 + z^2 - 1,f2 = x^2 - y + z^2,f3 = x - z,f4 = y^2 + y - 1,f5 = -y + 2z^2,f6 = 4z^4 + 2z^2 - 1
)
更に極小グレブナ基底は
G = (f3, f5, f6) = (x− z, y − 2z2, z4 +1
2z2 − 1
4)
である。LT(G) = (x, y, z4) なのでこれは簡約済み。z4 + 12z
2 − 14 = 0 より、z の値は求めることがで
きて、
z = ±
√−1±
√5
4.
これから x, y も求めることができる。
10.6 消去法
一応…
命題 10.1 イデアル I の有限部分集合 G が、グレブナ基底であるための必要十分条件は、任意のf ∈ I
に対し、あるg ∈ Gが存在して、LT(g)|LT(f)となることである。
定理 10.2(消去定理(Elimination Theorem)) I を k[x1, x2, · · · , xn] のイデアル。G をx1 > x2 > · · · > xn による lex 順序に関する I の Groebner 基底とするとき、G ∩ k[xl, · · · , xn] はk[xl, · · · , xn]のイデアルI ∩ k[xl, · · · , xn] の Groebner 基底である。
[証明] 任意の f ∈ I ∩ k[xl, · · · , xn] に対して、ある g ∈ G が存在して、LT(g)|LT(f)。このときLT(f) ∈ k[xl, · · · , xn] より、LT(g) ∈ k[xl, · · · , xn] であり、従って順序のつけ方から、g ∈ k[xl, · · · , xn]。 すなわち、g ∈ G ∩ k[xl, · · · , xn] かつ LT(g)|LT(f) となる g が存在している。よって、G ∩ k[xl, · · · , xn]もI ∩ k[xl, · · · , xn]のGroebner基底である。�
10.7 陰関数表示
曲線のパラメータ表示: x = t4
y = t3
z = t2
から陰関数表示を求める。I = ⟨ f1, f2, f3 ⟩, f1 = t4 − x, f2 = t3 − y, f3 = t2 − z とおき、I の t > x > y > z による lex でのグレブナ基底を求める。
G = (t4 − x, t3 − y, t2 − z)
からグレブナ基底は、
G = (t4 − x, t3 − y, t2 − z, ty − x, −x+ z2, tz − y, −y2 + z3)
である。計算の詳細は:
Calculation of Groebner Basis of (lex):f1 = t^4 - xf2 = t^3 - yf3 = t^2 - z
-----------------------------------------------------------------G = (f1, f2, f3)= (t^4 - x, t^3 - y, t^2 - z)
B = {(1, 2), (1, 3), (2, 3)}
Round 1S(f1, f2) = (1) * f1 - (t) * f2 = ty - x.(ty - x) mod G = ty - x.
New Generator: f4 = ty - x
-----------------------------------------------------------------G = (f1, f2, f3, f4)= (t^4 - x, t^3 - y, t^2 - z, ty - x)
B = {(1, 3), (2, 3), (1, 4), (2, 4), (3, 4)}
Round 2S(f1, f3) = (1) * f1 - (t^2) * f3 = t^2z - x.(t^2z - x) mod G = -x + z^2.New Generator: f5 = -x + z^2
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5)= (t^4 - x, t^3 - y, t^2 - z, ty - x, -x + z^2)
B = {(2, 3), (1, 4), (2, 4), (3, 4), (1, 5), (2, 5), (3, 5), (4, 5)}
Round 3S(f2, f3) = (1) * f2 - (t) * f3 = tz - y.(tz - y) mod G = tz - y.New Generator: f6 = tz - y
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5, f6)= (t^4 - x, t^3 - y, t^2 - z, ty - x, -x + z^2, tz - y)
B = {(1, 4), (2, 4), (3, 4), (1, 5), (2, 5), (3, 5), (4, 5), (1, 6), (2, 6), (3, 6), (4, 6), (5, 6)}
Round 4S(f1, f4) = (y) * f1 - (t^3) * f4 = t^3x - xy.(t^3x - xy) mod G = 0.Round 5S(f2, f4) = (y) * f2 - (t^2) * f4 = t^2x - y^2.(t^2x - y^2) mod G = -y^2 + z^3.New Generator: f7 = -y^2 + z^3
-----------------------------------------------------------------G = (f1, f2, f3, f4, f5, f6, f7)= (t^4 - x, t^3 - y, t^2 - z, ty - x, -x + z^2, tz - y, -y^2 + z^3)
B = {(3, 4), (1, 5), (2, 5), (3, 5), (4, 5), (1, 6), (2, 6), (3, 6), (4, 6), (5, 6), (1, 7), (2, 7), (3, 7), (4, 7),(5, 7), (6, 7)}
Round 6S(f3, f4) = (y) * f3 - (t) * f4 = tx - yz.(tx - yz) mod G = 0.Round 7S(f1, f5) = (x) * f1 - (-t^4) * f5 = t^4z^2 - x^2.(t^4z^2 - x^2) mod G = 0.Round 8S(f2, f5) = (x) * f2 - (-t^3) * f5 = t^3z^2 - xy.(t^3z^2 - xy) mod G = 0.Round 9S(f3, f5) = (x) * f3 - (-t^2) * f5 = t^2z^2 - xz.(t^2z^2 - xz) mod G = 0.Round 10S(f4, f5) = (x) * f4 - (-ty) * f5 = tyz^2 - x^2.(tyz^2 - x^2) mod G = 0.Round 11S(f1, f6) = (z) * f1 - (t^3) * f6 = t^3y - xz.(t^3y - xz) mod G = 0.Round 12S(f2, f6) = (z) * f2 - (t^2) * f6 = t^2y - yz.(t^2y - yz) mod G = 0.Round 13S(f3, f6) = (z) * f3 - (t) * f6 = ty - z^2.(ty - z^2) mod G = 0.Round 14S(f4, f6) = (z) * f4 - (y) * f6 = -xz + y^2.(-xz + y^2) mod G = 0.Round 15S(f5, f6) = (-tz) * f5 - (x) * f6 = -tz^3 + xy.(-tz^3 + xy) mod G = 0.Round 16S(f1, f7) = (y^2) * f1 - (-t^4) * f7 = t^4z^3 - xy^2.(t^4z^3 - xy^2) mod G = 0.Round 17S(f2, f7) = (y^2) * f2 - (-t^3) * f7 = t^3z^3 - y^3.
(t^3z^3 - y^3) mod G = 0.Round 18S(f3, f7) = (y^2) * f3 - (-t^2) * f7 = t^2z^3 - y^2z.(t^2z^3 - y^2z) mod G = 0.Round 19S(f4, f7) = (y) * f4 - (-t) * f7 = tz^3 - xy.(tz^3 - xy) mod G = 0.Round 20S(f5, f7) = (-y^2) * f5 - (-x) * f7 = xz^3 - y^2z^2.(xz^3 - y^2z^2) mod G = 0.Round 21S(f6, f7) = (y^2) * f6 - (-tz) * f7 = tz^4 - y^3.(tz^4 - y^3) mod G = 0.
RESULT =================================================================G = (f1 = t^4 - x,f2 = t^3 - y,f3 = t^2 - z,f4 = ty - x,f5 = -x + z^2,f6 = tz - y,f7 = -y^2 + z^3
)
LT(G) = (t4, t3, t2, ty, −x, tz, −y2) であるから、更に極小グレブナ基底は
G = (t2 − z, ty − x, x− z2, tz − y, y2 − z3)
である。また、LT(G) = (t2, ty, x, tz, y2) であるから、必要な簡約は
ty − x(t2−z, x−z2, tz−y, y2−z3)
= ty − z2 のみなので、簡約グレブナ基底は
G = (t2 − z, ty − z2, x− z2, tz − y, y2 − z3)
である。
従って図形は曲線x− z2 = y2 − z3 = 0
に含まれる。
10.8 ラグランジュ乗数法
(問題) x2 + y2 + z2 = 1 という束縛条件の下でf(x, y, z) = x3 + 2xyz − z2 の極値を求めよ。(解)g(x, y, z) = x2 + y2 + z2 − 1 と置くとλ をある未知数として、
fx = λgxfy = λgyfz = λgzg = 0
すなわち 3x2 + 2yz − 2xλ = 0
2xz − 2yλ = 02xy − 2z − 2zλ = 0x2 + y2 + z2 − 1 = 0
を解けばよい。これらの左辺で生成されるイデアルのGroebner基底を lex, λ > x > y > z で求めると、基底の一つとしてz7 − 1763
1152z5 + 655
1152z3 − 11
288z があるので、これを 0 と置くことにより z が求まり、他の変数の値も求まる。
10.9 3色彩色問題
(問題) 次のグラフの各点に色を塗る。線分で結ばれた2点は必ず異なる色で塗るとするとき、3色で塗ることは可能か?
(解)各点に F3 = Z/3Z の元を割り当てる。xi と xj の色が異なることは xi = xj + 1 あるいはxi = xj + 2 で表現できるので、これは (xi − xj − 1)(xi − xj − 2) = 0 すなわち、
xi2 + xixj + xj
2 − 1 = 0.
と表現できる。これが、(i, j) ∈ L について成り立てばよい。ここで、L = {(1, 2), (1, 5), (1, 6), (2, 3), (2, 4), (2, 8),
(3, 4), (3, 8), (4, 5), (4, 7), (5, 6), (5, 7), (6, 7), (7, 8)} である。さて、F = {xi
2 + xixj + xj2 − 1 | (i, j) ∈ L} と置けば、1つの3色の各塗り分けは、1つの V(⟨F ⟩) の要素
と1対1対応している。x8 の色を 0 に塗ってしまってよいので、F ′ = F ∪ {x8}, V(⟨F ′ ⟩) を考えても
よい。変数に x1 > · · · > x8 で、lex 順序を入れて、⟨F ′ ⟩ の簡約グレブナ基底を求めるとG = {x1 − x7, x2 + x7, x3 − x7, x4, x5 + x7, x6, x7
2 + 2, x8} となる。V(⟨F ′ ⟩) = V(⟨G ⟩) が空集合でないことを確かめることができる。
10.10 ヒルベルトの零点定理
定義 10.3(根基,√ ) I を環 R のイデアルとするとき、
√I = {f ∈ R | ∃n ≥ 0 fn ∈ I}
と定義し、I の根基という。
命題 10.4(1)√I は R のイデアルになる。
(2) R を整域とすれば√{0} = {0}。
(3)√R = R.
(4)√I = R ⇐⇒ I = R.
[証明] 略。�
定義 10.5(代数的閉体) 任意の k 上の代数方程式anx
n + an−1xn−1 + · · ·+ a0 = 0, n > 0, ai ∈ k (0 ≤ i ≤ n), an ̸= 0 がk に解を持つとき、k を代数的
閉体という。
例 43(1) 複素数体Cは代数的閉体である。(代数学の基本定理と呼ばれる。)
(2) F3は代数的閉体でない。(x2 + 1 = 0に解はない。)
定理 10.6(ヒルベルトの零点定理(Hilbert’s Nullstellensatz)) k を代数的閉体、I をR = k[x1, x2, · · · , xn] のイデアルとするとき、それで定義されるアフィン多様体 V(I) について、以下の事が言える。
(1) V(I) = ϕ ⇐⇒ I = R.
(2) I(V(I)) =√I.
[証明] 略。�
系 10.7 kを代数的閉体とするとき、イデアル (f1, f2, · · · , fs) ⊂ k[x1, x2, · · · , xn]の簡約グレブナ基底が(1)でなければ、連立方程式f1 = f2 = · · · = fs = 0にはkn上の解がある。
10.11 3色彩色問題(再)
10.9 の問題において、最後に V(⟨G ⟩) が空集合ではないことを言うために、最後に連立方程式を実際に解く必要があったが、それを回避する方法がある。代数的閉体 C において、3つの色を
x3 − 1 = (x− 1)(x2 + x+ 1) = 0 の解、1, ω, ω2 (ここで、ω =−1 +
√−3
2) で塗り分ける。
xi3 − 1 = xj
3 − 1 = 0 を満たす xi, xj が異なるための必要十分条件は
x2i + xixj + x2
j = 0.
なので、F = {xi3 − 1 | 1 ≤ i ≤ 8} ∪ {x2
i + xixj + x2j | (i, j) ∈ L} ∪ {x8 − 1} で生成されるイデアル
⟨F ⟩ の簡約グレブナ基底を求めると、G = (x1 − x7, x2 + x7 + 1, x3 − x7, x4 − 1, x5 + x7 + 1, x6 − 1, x7
2 + x7 + 1, x8 − 1) となる。G ̸= (1) なので、ヒルベルトの基底定理よりV(⟨G ⟩) は空集合でない。
10.12 垂心の存在
(問題)任意の三角形に垂心が存在する。(解)三角形の各頂点をA(a1, a2), B(b1, b2), C(c1, c2)とする。垂心をH(x, y)とすると、AH, BH, CHがBC, CA, ABとそれぞれ垂直であるという条件は、 f1 = (x− a1)(b1 − c1) + (y − a2)(b2 − c2)
f2 = (x− b1)(c1 − a1) + (y − b2)(c2 − a2)f3 = (x− c1)(a1 − b1) + (y − c2)(a2 − b2)
とおくとき、f1 = f2 = f3 = 0である。また、A, B, Cが一直線上に無い条件は、
s =
∣∣∣∣∣∣1 a1 a21 b1 b21 c1 c2
∣∣∣∣∣∣とおくときs ̸= 0 である。ここでは、s− 1 = 0とする。I = ⟨ f1, f2, f3, s− 1 ⟩ のグレブナ基底を lex, x > y > a1 > a2 > b1 > b2 > c1 > c2で求めると
g1 = x+ a1a2b1 − a1a2c1 − a1b1c2 + a1c1c2 + a22b2−a22c2 − a2b
21 + a2b1c1 − a2b
22 + a2c
22 + b21c2 − b1c1c2 − b1 + b22c2 − b2c
22
g2 = y − a21b1 + a21c1 + a1b21 − a1c
21 − a22b1 + a22c1
+a2b1b2 + a2b1c2 − a2b2c1 − a2c1c2 − a2 − b21c1 − b1b2c2 + b1c21 + b2c1c2
g3 = a1b2 − a1c2 − a2b1 + a2c1 + b1c2 − b2c1 − 1
g3 = s− 1なので、g1 = g2 = g3 = 0の解(x, y)は存在する。
§11 拡張定理
定理 11.1(拡張定理(Extension Theorem)) k を代数的閉体、I = ⟨ f1, f2, · · · , fs ⟩ ⊂ k[x1, x2, · · · , xn] をイデアル、I1 = I ∩ k[x2, · · · , xn] とする。各 fi を x1
の降べき順にfi = gi(x2, · · · , xn)x
Ni1 + · · · , gi ̸= 0.
と書く時、(a2, · · · , an) ∈ V(I1), (a2, · · · , an) ̸∈ V(g1, g2, · · · , gs) ならば、ある a1 ∈ k が存在して(a1, a2, · · · , an) ∈ V(I) となる。
[証明] (略) �
系 11.2 k を代数的閉体、I = ⟨ f1, f2, · · · , fs ⟩ ⊂ k[x1, x2, · · · , xn] をイデアル、I1 = I ∩ k[x2, · · · , xn] とする。ある i に対して fi を x1 の降べき順に
fi = c · xN1 + · · · , c ∈ k, c ̸= 0, N > 0.
と書く時、(a2, · · · , an) ∈ V(I1), (a2, · · · , an) ̸∈ V(g1, g2, · · · , gs) ならば、ある a1 ∈ k が存在して(a1, a2, · · · , an) ∈ V(I) となる。
[証明] 前定理より明らか。�
Top Related