Groebner[RememberBasis] - 系の Groebner 基底の定義
|
使い方
|
|
RememberBasis(F, G, T, characteristic=p)
|
|
パラメータ
|
|
F
|
-
|
多項式のリストか集合、あるいは PolynomialIdeal
|
G
|
-
|
Groebner 基底か名前
|
T
|
-
|
単項式順序かその短い記述
|
p
|
-
|
(オプション) 標数: 0 か素数
|
|
|
|
|
説明
|
|
•
|
RememberBasis は多項式のリスト G を F で生成されるイデアルの単項式順序 T に関する Groebner 基底とします。これにより、Maple 以外で計算した Groebner 基底や以前の Maple のセッションで保存された Groebner 基底を使うことができます。オプションとして characteristic=p を指定すると T が 単項式順序の短い記述 だったとき、環の標数を定めます。指定がなければ 0 になります。
|
•
|
G が簡約 Groebner 基底でなかったときは最初に InterReduce コマンドを用いて簡約 Groebner 基底にすることができます。これは、多項式が Maple の標準形式にのっとっていなかった場合 (例えばモニックだった場合) にも推奨される方法です。Maple は Groebner 基底を原始的で無平方な多項式とします。
|
•
|
もし異なる Groebner 基底が既にわかっていたときは、RememberBasis はそれを G で置き換えます。G が名前だった場合、RememberBasis はわかっている基底を破棄します。
|
•
|
pretend_gbasis コマンドは同じ働きをしますが、今後リリースされる Maple ではサポートされない可能性がありますのでご注意ください。
|
|
|
例
|
|
>
|
F := [x^2*y*z+x*y^2*z+x*y*z^2+x*y*z+x*y+x*z+y*z, x^2*y^2*z+x^2*y*z+x*y^2*z^2+x*y*z+x+y*z+z, x^2*y^2*z^2+x^2*y^2*z+x*y^2*z+x*y*z+x*z+z+1];
|
| (4.1) |
>
|
G := [-42*x^4-431*x^3-757*x^2*y+804*x*y^2-59*y^3-799*x^2*z+2*x*y*z+119*y^2*z-417*x* z^2+340*y*z^2-5*z^3-303*x^2+1203*x*y-194*y^2+752*x*z-246*y*z-184*z^2-581*x+67* y-1013*z+57, 21*x^3*y-16*x^3-74*x^2*y+24*x*y^2+2*y^3-53*x^2*z+x*y*z-35*y^2*z+ 12*x*z^2+23*y*z^2+8*z^3-36*x^2+24*x*y+29*y^2+40*x*z+3*y*z-8*z^2-28*x+23*y-13*z +18, -21*x^2*y^2-2*x^3-25*x^2*y+45*x*y^2-5*y^3-25*x^2*z+29*x*y*z+14*y^2*z-9*x* z^2+16*y*z^2+z^3+6*x^2+45*x*y-20*y^2+47*x*z-18*y*z-z^2-14*x-5*y-41*z-3, 42*x*y ^3-11*x^3-85*x^2*y+6*x*y^2+25*y^3-43*x^2*z-40*x*y*z-49*y^2*z-39*x*z^2+4*y*z^2-\ 5*z^3-51*x^2-15*x*y+58*y^2-4*x*z+6*y*z-16*z^2-35*x+25*y-5*z+15, 42*y^4-121*x^3 -557*x^2*y+570*x*y^2+275*y^3-515*x^2*z-608*x*y*z-77*y^2*z-555*x*z^2+2*y*z^2-55 *z^3-645*x^2+633*x*y-160*y^2+82*x*z-690*y*z-302*z^2-679*x+65*y-1147*z-3, -7*x^ 3*z+5*x^3+24*x^2*y-25*x*y^2+2*y^3+17*x^2*z+8*x*y*z-7*y^2*z+19*x*z^2-12*y*z^2+z ^3+6*x^2-32*x*y+8*y^2-23*x*z+17*y*z+6*z^2+21*x+2*y+36*z-3, 14*x^2*y*z+3*x^3+13 *x^2*y+6*x*y^2-3*y^3-x^2*z+2*x*y*z+21*y^2*z-25*x*z^2+4*y*z^2-5*z^3+19*x^2+27*x *y-26*y^2+10*x*z-8*y*z-2*z^2-7*x-17*y-33*z-13, -6*x*y^2*z+x^3+5*x^2*y-12*x*y^2 +y^3+11*x^2*z+2*x*y*z-7*y^2*z+9*x*z^2-2*y*z^2+z^3+3*x^2-15*x*y+4*y^2-4*x*z+6*y *z+2*z^2+13*x+y+19*z+3, -21*y^3*z+4*x^3-13*x^2*y-48*x*y^2+10*y^3+8*x^2*z+5*x*y *z+14*y^2*z-3*x*z^2+10*y*z^2-2*z^3+30*x^2-27*x*y+40*y^2-10*x*z+57*y*z+2*z^2+7* x+10*y+40*z+6, 14*x^2*z^2+5*x^3+31*x^2*y-74*x*y^2+9*y^3+45*x^2*z+22*x*y*z-35*y ^2*z+61*x*z^2-40*y*z^2+z^3+13*x^2-95*x*y+50*y^2-44*x*z+66*y*z+6*z^2+63*x+23*y+ 127*z+11, 21*x*y*z^2-x^3-2*x^2*y-51*x*y^2+8*y^3+40*x^2*z+25*x*y*z-56*y^2*z+69* x*z^2-13*y*z^2+11*z^3-18*x^2-72*x*y+53*y^2-8*x*z+54*y*z+10*z^2+56*x+29*y+116*z +30, 14*y^2*z^2+x^3+9*x^2*y+2*x*y^2-y^3+23*x^2*z+10*x*y*z-21*y^2*z+15*x*z^2-8* y*z^2+3*z^3-3*x^2-19*x*y-4*y^2-6*x*z-26*y*z-10*z^2+7*x-y+3*z+5, 21*x*z^3-29*x^ 3-121*x^2*y+369*x*y^2-41*y^3-226*x^2*z-178*x*y*z+161*y^2*z-267*x*z^2+148*y*z^2 +4*z^3-123*x^2+411*x*y-206*y^2+146*x*z-324*y*z+38*z^2-329*x-62*y-584*z-75, 21* y*z^3-10*x^3-41*x^2*y+183*x*y^2-25*y^3-104*x^2*z-65*x*y*z+91*y^2*z-129*x*z^2+ 59*y*z^2-16*z^3-33*x^2+225*x*y-142*y^2+67*x*z-174*y*z-5*z^2-154*x-46*y-310*z-\ 57, 323*y^3+4799*z+281*y+2849*x-1100*x*z+2574*y*z-3495*x*y+1642*x*y*z+1153*x^2 *y-3054*x*y^2+1544*y^2+1347*x^2-368*z^2-1211*y^2*z-1252*y*z^2+2253*x*z^2-31*z^ 3+2035*x^2*z+42*z^4+293*x^3+555]:
|
G を F の tdeg(x,y,z) に関する Groebner 基底とします。それをシステムに知らせることで、再計算を避けることができます。
>
|
RememberBasis(F, G, tdeg(x,y,z));
|
>
|
time(HilbertDimension(F, tdeg(x,y,z)));
|
| (4.2) |
|
|