GroebnerBasis

GroebnerBasis[{poly1,poly2,},{x1,x2,}]

多項式の集合 polyiについてグレブナー(Gröbner)基底を形成する多項式をリスト形式で返す.

GroebnerBasis[{poly1,poly2,},{x1,x2,},{y1,y2,}]

変数 yiを消去したグレブナー基底を求める.

詳細とオプション

  • グレブナー基底を形成する多項式の集合は,もとの多項式が持つ複数の根と同じものを持つ.
  • 単一変数の多項式に対して使われるとき,GroebnerBasisPolynomialGCDに帰着する.
  • 線形関数に対して使われるとき,関数の依存する変数の数によらず,GroebnerBasisはガウスの消去法に等しい.
  • 一般に,グレブナー基底は,単項式に割り当てられた並び順に依存する.この順番は xiの並び順により変わる.
  • 指定可能なオプション
  • MonomialOrder Lexicographic単項式の並び順を決定する基準
    CoefficientDomain Automatic係数とみなされるオブジェクトの型
    Method Automatic使用するメソッド
    Modulus 0数値係数の法
  • MonomialOrderには,LexicographicDegreeLexicographicDegreeReverseLexicographicEliminationOrder,または明示的に重み行列を指定することができる.MonomialOrderの目的で単項式は,単項式に現れる xiの指数を配したリストにより指定される.
  • xiの並び順とMonomialOrderの設定はGroebnerBasisの作業効率に大きく影響する.
  • CoefficientDomainにはInexactNumbersRationalsRationalFunctionsそしてPolynomials[x]が設定可能である.
  • Methodオプションで使用可能な設定値には"Buchberger""GroebnerWalk"がある.

例題

すべて開くすべて閉じる

  (1)

グレブナー基底を計算する:

多項式が共通根を持たないことを証明する:

スコープ  (5)

有限個の共通根を持つ多項式:

無限個の共通根を持つ多項式:

共通根を持たない多項式:

変数を除去する:

辞書式順序のグレブナー基底:

全次数逆辞書式順序のグレブナー基底:

一般化と拡張  (1)

多項式の代りに整方程式を返すことがある:

オプション  (8)

CoefficientDomain  (1)

デフォルトで,グレブナー基底は有理数の体の上で計算される:

これは,整数環上で強力なグレブナー基底を計算する:

これは,有理関数の体(a)上でグレブナー基底を計算する:

近似演算を使う:

Method  (2)

Automaticの設定では,有理数上で辞書式順序の基底に"GroebnerWalk"を使用する:

この場合は,"Buchberger"アルゴリズムの方が"GroebnerWalk"よりずっと遅くなる:

次の多項式集合は辞書式順序のグレブナー基底に「近い」:

"GroebnerWalk"は全次数逆辞書式基底をまず計算している:

ここでは,"Buchberger"アルゴリズムで辞書式基底を直接計算する方が速い:

Modulus  (1)

これは,7を法とする整数の体上でグレブナー基底を計算する:

MonomialOrder  (1)

デフォルトで,GroebnerBasisは辞書式(Lexicographic)の項順序を使う:

これは,グレブナー基底を全次数逆辞書式(DegreeReverseLexicographic)の項順序で与える:

項順序は重み順序を与える正則な有理正方行列を与えることで指定してもよい:

項順序となるためには,各列の最初の非零の項が正でなければならない:

z を除去して{x,y}についての全次数逆辞書式基底を返す:

ParameterVariables  (1)

パラメータは全変数の後に辞書式順序で並べられる:

これは同様の入力である:

Sort  (1)

デフォルトで,GroebnerBasisは変数を並べ直すことはしない:

変数の並べ替えで計算は速くなるかもしれないが,グレブナー基底が変わるかもしれない:

Tolerance  (1)

一変数多項式のペアの近似GCDを求める:

多項式は整数係数を持つ多項式に近い:

デフォルト設定のTolerance->0では,近似GCDの次数が低すぎる:

Toleranceの設定値を高くすると,GroebnerBasisは「よりよい」近似GCDを返す:

アプリケーション  (2)

整方程式系を解く:

グレブナー基底は入力多項式と同じ1組の根を持つ:

グレブナー基底の最初の多項式をその唯一の変数 x について解く:

グレブナー基底の二次多項式を他の変数 y について解く:

この方法で,polys のすべての共通根が求まる:

ReduceSolveはグレブナー基底を使って方程式系を解く:

過剰決定方程式系のファジーな解を得る:

これは,この過剰決定方程式系の低精度近似解を返す:

特性と関係  (6)

グレブナー基底は入力多項式と同じイデアルを生成する:

PolynomialReduceを使ってp1g1g2に生成されたイデアルにあることを証明する:

ヒルベルト(Hilbert)の零点定理(Nullstellensatz)によると,イデアルがなら多項式は共通の零点を持たない:

ReduceまたはSolveで共通解がないことを証明する:

これとは逆に,イデアルがでなければ少なくとも1つの共通零点が存在する:

FindInstanceを使って解の例を求める:

一変数多項式のGroebnerBasisPolynomialGCDを計算するのと同義である:

一次の同次多項式のGroebnerBasisはガウス(Gauss)消去のプロセスに等しい:

GroebnerBasisは整方程式形を解くのに使われる:

Reduceを使って系を直接解く:

Solveは置換規則で解を返す:

整方程式系から変数を除去する:

Resolveを使って変数を除去する:

Eliminateを使って変数を除去する:

Resultantを使って変数を除去する:

Wolfram Research (1991), GroebnerBasis, Wolfram言語関数, https://reference.wolfram.com/language/ref/GroebnerBasis.html (2007年に更新).

テキスト

Wolfram Research (1991), GroebnerBasis, Wolfram言語関数, https://reference.wolfram.com/language/ref/GroebnerBasis.html (2007年に更新).

CMS

Wolfram Language. 1991. "GroebnerBasis." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2007. https://reference.wolfram.com/language/ref/GroebnerBasis.html.

APA

Wolfram Language. (1991). GroebnerBasis. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/GroebnerBasis.html

BibTeX

@misc{reference.wolfram_2024_groebnerbasis, author="Wolfram Research", title="{GroebnerBasis}", year="2007", howpublished="\url{https://reference.wolfram.com/language/ref/GroebnerBasis.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_groebnerbasis, organization={Wolfram Research}, title={GroebnerBasis}, year={2007}, url={https://reference.wolfram.com/language/ref/GroebnerBasis.html}, note=[Accessed: 22-November-2024 ]}