=================================================================== RCS file: /home/cvs/OpenXM/src/asir-contrib/packages/doc/nn_ndbf/nn_ndbf.texi,v retrieving revision 1.1 retrieving revision 1.6 diff -u -p -r1.1 -r1.6 --- OpenXM/src/asir-contrib/packages/doc/nn_ndbf/nn_ndbf.texi 2009/12/02 02:55:29 1.1 +++ OpenXM/src/asir-contrib/packages/doc/nn_ndbf/nn_ndbf.texi 2010/06/19 09:43:45 1.6 @@ -1,4 +1,4 @@ -%comment $OpenXM$ +%comment $OpenXM: OpenXM/src/asir-contrib/packages/doc/nn_ndbf/nn_ndbf.texi,v 1.5 2010/06/16 10:39:08 noro Exp $ %comment --- おまじない --- \input ../../../../asir-doc/texinfo @iftex @@ -90,7 +90,7 @@ In this manual we explain about a new b-function packa in asir-contrib. To use this package one has to load @samp{nn_ndbf.rr}. \E @example -[1518] load("nn_ndbf.rr"); +[...] load("nn_ndbf.rr"); @end example \BJP このパッケージの函数を呼び出すには, 全て @code{ndbf.} を先頭につける. @@ -116,6 +116,7 @@ In this manual we also explain about some related buil * ndbf.bfunction:: * ndbf.bf_local:: * ndbf.bf_strat:: +* ndbf.action_on_gfs:: @end menu \JP @node ndbf.bfunction,,, b 関数計算 @@ -124,8 +125,8 @@ In this manual we also explain about some related buil @findex ndbf.bfunction @table @t -\JP @item ndbf.bfunction(@var{f}[|weight=@var{w},heruristic=@var{yesno},vord=@var{v}]) :: 多項式 @var{f} の大域 b 関数を計算する. -\EG @item ndbf.bfunction(@var{f}[|weight=@var{w},heruristic=@var{yesno},vord=@var{v}]) :: computes the global b-function of a polynomial @var{f} +\JP @item ndbf.bfunction(@var{f}[|weight=@var{w},heruristic=@var{yesno},vord=@var{v},op=@var{yesno}]) :: 多項式 @var{f} の大域 b 関数を計算する. +\EG @item ndbf.bfunction(@var{f}[|weight=@var{w},heruristic=@var{yesno},vord=@var{v},op=@var{yesno}]) :: computes the global b-function of a polynomial @var{f} @end table @table @var @@ -149,9 +150,18 @@ In this manual we also explain about some related buil @itemize @bullet \BJP @item -多項式 @var{f} の大域 b 関数 (global b-function) を計算する. 出力は -変数 @var{s} の多項式である. +この関数は asir-contrib のパッケージ @samp{nn_ndbf.rr} で定義されている. @item +多項式 @var{f} の大域 b 関数 (global b-function) を計算する. +デフォルトでは大域 b 関数のみが出力されるが, オプション @code{op=1} が指定 +された場合, 大域 b 関数 @var{b}, および +微分作用素 @var{P} の組 @var{[b,P]} を返す. これらは +@var{Pf^(s+1)=b(s)f^s} を満たす. +微分作用素は @var{v1,...,vn,dv1,...,dvn} の可換多項式として +表現されている. この表現においては, 微分を表す d のついた変数も単なる +不定元として扱われているため, 係数多項式環の変数の前に表示されることも +ありうるが, 多項式係数を左に置く正規表現として理解する必要がある. +@item オプション @code{weight=[@var{v1,w1,...,vn,wn}]} が指定された場合, 変数リスト @var{(v1,...,vn)} に対して weight @var{(w1,...,wn)} を設定して計算が行われる. このオプションは, @var{f} が @var{(w1,...,wn)} @@ -166,8 +176,18 @@ In this manual we also explain about some related buil \E \BEG @item +This function is defined in an asir-contrib package @samp{nn_ndbf.rr}. +@item This function computes the global b-function of a polynomial @var{f}. -The output is a polynomial in @var{s}. +By default only the global b-function is returned. +If an option @code{op=1} is given, +a pair @var{[b,P]} of the global b-function and +a differential operator satisfying @var{Pf^(s+1)=b(s)f^s}. +The operator P is represented as a commutative polynomial +of variables @var{v1,...,vn,dv1,...,dvn}. The d-variables +are treated as commutative indeterminates in this representation and +the polynomial should be regarded as a canonical representation with each polynomial coefficient +placed at the left of d-variables. @item If an option @code{weight=[@var{v1,w1,...,vn,wn}]} is given, the computation is done with a weight @var{(w1,...,wn)} for @var{(v1,...,vn)}. @@ -182,12 +202,18 @@ If an option @code{vord=@var{v}} is given, a variable \E @end itemize @example -[1602] ndbf.bfunction(x^3-y^2*z^2); +[...] load("nn_ndbf.rr"); +[...] ndbf.bfunction(x^3-y^2*z^2); -11664*s^7-93312*s^6-316872*s^5-592272*s^4-658233*s^3-435060*s^2 -158375*s-24500 -[1603] F=256*u1^3-128*u3^2*u1^2+(144*u3*u2^2+16*u3^4)*u1-27*u2^4 +[...] ndbf.bfunction(x^3-y^2*z^2|op=1); +[-11664*s^7-93312*s^6-316872*s^5-592272*s^4-658233*s^3-435060*s^2 +-158375*s-24500,(108*z^3*x*dz^3+756*z^2*x*dz^2+1080*z*x*dz+216*x)*dx^4 +... ++(729/8*z^3*dz^5+9477/8*z^2*dz^4+5103/2*z*dz^3+2025/2*dz^2)*dy^2] +[...] F=256*u1^3-128*u3^2*u1^2+(144*u3*u2^2+16*u3^4)*u1-27*u2^4 -4*u3^3*u2^2$ -[1604] ndbf.bfunction(F|weight=[u3,2,u2,3,u1,4]); +[...] ndbf.bfunction(F|weight=[u3,2,u2,3,u1,4]); 576*s^6+3456*s^5+8588*s^4+11312*s^3+8329*s^2+3250*s+525 @end example @@ -210,7 +236,7 @@ If an option @code{vord=@var{v}} is given, a variable \EG a polynomail @item p \JP @code{[@var{v1,a1,...,vn,an}]} なるリスト -\JP a list @code{[@var{v1,a1,...,vn,an}]} +\EG a list @code{[@var{v1,a1,...,vn,an}]} @item w \JP @code{[@var{v1,w1,...,vn,wn}]} なるリスト \EG a list @code{[@var{v1,w1,...,vn,wn}]} @@ -225,14 +251,16 @@ If an option @code{vord=@var{v}} is given, a variable \BJP @itemize @bullet @item +この関数は asir-contrib のパッケージ @samp{nn_ndbf.rr} で定義されている. +@item 多項式 @var{f} の @var{(v1,...,vn)=(a1,...,an)} における 局所 b 関数 (local b-function) を計算する. 出力は局所 $b$ 関数の因子, 重複度のペアのリストである. @item デフォルトでは局所 b 関数のみが出力されるが, オプション @code{op=1} が指定 -された場合, 局所 b 関数 @var{b} と, それを実現する微分作用素 @var{P} の -ペア @var{[b,P]} を返す. これらは -@var{Pf^(s+1)=b(s)f^s} -を満たす. 微分作用素は @var{v1,...,vn,dv1,...,dvn} の可換多項式として +された場合, 局所 b 関数 @var{b}, 微分作用素の共通分母 $a(x)$ および +微分作用素 @var{P} の組 @var{[b,a(x),P]} を返す. これらは +@var{a(x)Pf^(s+1)=b(s)f^s} を満たす. +微分作用素は @var{v1,...,vn,dv1,...,dvn} の可換多項式として 表現されている. この表現においては, 微分を表す d のついた変数も単なる 不定元として扱われているため, 係数多項式環の変数の前に表示されることも ありうるが, 多項式係数を左に置く正規表現として理解する必要がある. @@ -255,15 +283,19 @@ If an option @code{vord=@var{v}} is given, a variable \BEG @itemize @bullet @item +This function is defined in an asir-contrib package @samp{nn_ndbf.rr}. +@item This function computes the local b-function of a polynomial @var{f} at a point @var{(v1,...,vn)=(a1,...,an)}. The output is a list of pairs of each factor of the local b-function and its multiplicity. @item -By default only the local b-function is returned. If an option @code{op=1} is given, -a pair @var{[b,P]} of the local b-function and a differential operator satisfying -@var{Pf^(s+1)=b(s)f^s}. The operator P is represented as a commutative polynomial -of variables @var{v1,...,vn,dv1,...,dvn}. Although the d-variables +By default only the local b-function is returned. +If an option @code{op=1} is given, +a triple @var{[b,a,P]} of the local b-function, a polynomial and +a differential operator satisfying @var{Pf^(s+1)=ab(s)f^s}. +The operator P is represented as a commutative polynomial +of variables @var{v1,...,vn,dv1,...,dvn}. The d-variables are treated as commutative indeterminates in this representation, -it should be regarded as a canonical representation with each polynomial coefficient +the polynomial should be regarded as a canonical representation with each polynomial coefficient placed at the left of d-variables. @item If an option @code{weight=[@var{v1,w1,...,vn,wn}]} is given, @@ -281,9 +313,10 @@ If an option @code{vord=@var{v}} is given, a variable \E @example -[1610] ndbf.bf_local(y*((x+1)*x^3-y^2),[x,-1,y,0]); +[...] load("nn_ndbf.rr"); +[...] ndbf.bf_local(y*((x+1)*x^3-y^2),[x,-1,y,0]); [[-s-1,2]] -[1611] ndbf.bf_local(y*((x+1)*x^3-y^2),[x,-1,y,0]|op=1); +[...] ndbf.bf_local(y*((x+1)*x^3-y^2),[x,-1,y,0]|op=1); [[[-s-1,2]],12*x^3+36*y^2*x-36*y^2,(32*y*x^2+56*y*x)*dx^2 +((-8*x^3-2*x^2+(128*y^2-6)*x+112*y^2)*dy+288*y*x+(-240*s-128)*y)*dx +(32*y*x^2-6*y*x+128*y^3-9*y)*dy^2+(32*x^2+6*s*x+640*y^2+39*s+30)*dy @@ -322,6 +355,8 @@ If an option @code{vord=@var{v}} is given, a variable \BJP @itemize @bullet @item +この関数は asir-contrib のパッケージ @samp{nn_ndbf.rr} で定義されている. +@item 多項式 @var{f} の大域 b 関数 (global b-function) を計算する. 出力は 変数 @var{s} の多項式である. @item @@ -342,6 +377,8 @@ If an option @code{vord=@var{v}} is given, a variable \BEG @itemize @bullet @item +This function is defined in an asir-contrib package @samp{nn_ndbf.rr}. +@item This function computes a stratification assoficated with local b-function of a polynomial @var{f}. The output is a list @var{[s1,...sl]} where each @var{si} is a list @var{[l1,l2,bi]}. In this list, @var{l1} and @var{l2} is generators of ideals and they represents @@ -362,19 +399,87 @@ If an option @code{vord=@var{v}} is given, a variable \E @example -[1620] F=256*u1^3-128*u3^2*u1^2+(144*u3*u2^2+16*u3^4)*u1-27*u2^4 +[...] load("nn_ndbf.rr"); +[...] F=256*u1^3-128*u3^2*u1^2+(144*u3*u2^2+16*u3^4)*u1-27*u2^4 -4*u3^3*u2^2$ -[1621] ndbf.bf_strat(F); -[[u3^2,-u1,-u2],[-1],[[-s-1,2],[16*s^2+32*s+15,1],[36*s^2+72*s+35,1]]] -[[-4*u1+u3^2,-u2],[96*u1^2+40*u3^2*u1-9*u3*u2^2,...],[[-s-1,2]]] -[[...],[-u3*u2,u2*u1,...],[[-s-1,1],...]]] -[[-256*u1^3+128*u3^2*u1^2+...],[...],[[-s-1,1]]] -[[],[-256*u1^3+128*u3^2*u1^2+...],[]] +[...] ndbf.bf_strat(F); +[[[u3^2,-u1,-u2],[-1],[[-s-1,2],[16*s^2+32*s+15,1],[36*s^2+72*s+35,1]]], +[[-4*u1+u3^2,-u2],[96*u1^2+40*u3^2*u1-9*u3*u2^2,...],[[-s-1,2]]], +[[-2048*u1^3-...],[-u3*u2,u2*u1,...],[[-s-1,1],...]]], +[[-256*u1^3+128*u3^2*u1^2+...],[...],[[-s-1,1]]], +[[],[-256*u1^3+128*u3^2*u1^2+...],[]]] @end example -\JP @node Annihilator 計算,,, 新 b 関数パッケージ nn_ndbf.rr +\JP @node ndbf.action_on_gfs,,, b 関数計算 +\EG @node ndbf.action_on_gfs,,, Computation of b-function +@subsection @code{ndbf.action_on_gfs} +@findex ndbf.action_on_gfs + +@table @t +@item ndbf.action_on_gfs(@var{op},@var{v},@var{gfs}) +\JP :: 微分作用素 @var{op} の @var{gf^(s+a)} への作用を計算する. +\EG :: computes the action of an operatior @var{op} on @var{gf^(s+a)} +@end table + +@table @var +@item return +\JP リスト +\EG a list +@item op +\JP 微分作用素 +\EG a differential operator +@item gfs +\JP @var{[g,f,s+a]} なるリスト +\EG a list @var{[g,f,s+a]} +@item v +\JP @var{f} の変数のリスト (@var{v=[v1,...,vn]}) +\EG list of variables of @var{f} (@var{v=[v1,...,vn]}) +@end table + +\BJP +@itemize @bullet +@item 微分作用素 @var{op} を @var{gf^(s+a)} に作用させた結果を計算する. +@item @var{g} は @var{v1,...,vn} を変数とする多項式である. +@item @var{op} は @var{[v1,...,vn,dv1,...,dvn]} を変数とする多項式で表現する. +@item 入力リスト @var{[g,f,s+a]} は @var{gf^(s+a)} を表す. +@item 結果は @var{[h,f,s+c]} なるリストで, @var{hf^(s+b)} を +意味する. ここで @var{c} は整数である. +@var{op} が b-関数 @var{b(s)} を与える作用素なら, +@var{a=1} に対し @var{c=0} で, @var{h=b(s)} (global case) または +@var{h=d(v)b(s)} (local case) である. +@end itemize +\E + +\BEG +@itemize @bullet +@item This function computes the action of a differential operator +@var{op} on @var{gf^(s+a)}. +@item @var{g} is a polynomial with variables @var{v1,...,vn}. +@item @var{op} is represented by a polynonmial with @var{[v1,...,vn,dv1,...,dvn]}. +@item The input list @var{[g,f,s+a]} represents @var{gf^(s+a)}. +@item The result is a list @var{[h,f,s+c]} and it means @var{hf^(s+c)}, +where @var{c} is an integer. If @var{op} is an operator giving b-function +@var{b(s)}, +then @var{c=0} for @var{a=1} and @var{h=b(s)} (global case) +or @var{h=b(s)d(v)} (local case). +@end itemize +\E + +@example +[...] load("nn_ndbf.rr"); +[...] F=x^5-y^2*z^2$ +[...] B=ndbf.bfunction(F|op=1)$ +[...] ndbf.action_on_gfs(B[1],[x,y,z],[1,F,s+1]); +[-62500000000*s^13-...-2985505717194*s-245434132944,x^5-z^2*y^2,s] +[...] L=ndbf.bf_local(F,[x,0,y,0,z,1]|op=1)$ +[...] ndbf.action_on_gfs(L[2],[x,y,z],[1,F,s+1]); +[(-100000*s^5-500000*s^4-990000*s^3-970000*s^2-470090*s-90090)*z^2, +x^5-z^2*y^2,s] +@end example + +\JP @node Annihilator イデアル計算,,, 新 b 関数パッケージ nn_ndbf.rr \EG @node Computation of annihilator ideal,,, New b-function package nn_ndbf.rr -\JP @section Annihilator 計算 +\JP @section Annihilator イデアル計算 \EG @section Computation of annihilator ideal @menu @@ -406,6 +511,8 @@ If an option @code{vord=@var{v}} is given, a variable \BJP @itemize @bullet @item +この関数は asir-contrib のパッケージ @samp{nn_ndbf.rr} で定義されている. +@item 多項式 @var{f} に対し, @var{f^s} の annihilator ideal を計算する. 出力は, @var{s} を係数に含む微分作用素のリストである. 微分作用素の 表現方法は, @code{ndbf.bf_local} と同様である. @@ -419,6 +526,8 @@ If an option @code{vord=@var{v}} is given, a variable \BEG @itemize @bullet @item +This function is defined in an asir-contrib package @samp{nn_ndbf.rr}. +@item This function computes the annihilator ideal of @var{f^s} for @var{f}. The output is a list of defferential operators containing @var{s} in thier coefficients. The differential operators are represented in the same manner as @code{ndbf.bf_local}. @@ -430,7 +539,8 @@ This option is useful when @var{f} is weighted homogen \E @example -[1625] ndbf.ann(x*y*z*(x^3-y^2*z^2)); +[...] load("nn_ndbf.rr"); +[...] ndbf.ann(x*y*z*(x^3-y^2*z^2)); [(-x^4*dy^2+3*z^4*x*dz^2+12*z^3*x*dz+6*z^2*x)*dx+4*z*x^3*dz*dy^2 -z^5*dz^3-6*z^4*dz^2-6*z^3*dz, (x^4*dy-3*z^3*y*x*dz-6*z^2*y*x)*dx-4*z*x^3*dz*dy+z^4*y*dz^2+3*z^3*y*dz,