[BACK]Return to taji_alc-ja.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-contrib / packages / doc / taji_alc

Diff for /OpenXM/src/asir-contrib/packages/doc/taji_alc/taji_alc-ja.texi between version 1.1 and 1.2

version 1.1, 2008/01/23 02:36:14 version 1.2, 2009/02/22 05:40:48
Line 7 
Line 7 
 @end iftex  @end iftex
 @overfullrule=0pt  @overfullrule=0pt
 @c -*-texinfo-*-  @c -*-texinfo-*-
 @comment $OpenXM$  @comment $OpenXM: OpenXM/src/asir-contrib/packages/doc/taji_alc/taji_alc-ja.texi,v 1.1 2008/01/23 02:36:14 takayama Exp $
 @comment %**start of header  @comment %**start of header
 @comment --- $B$*$^$8$J$$=*$j(B ---  @comment --- おまじない終り ---
   
 @comment --- GNU info $B%U%!%$%k$NL>A0(B ---  @comment --- GNU info ファイルの名前 ---   euc code で記述すること.
 @setfilename asir-contrib-taji_alc_ja  @setfilename asir-contrib-taji_alc_ja
   
 @comment --- $B%?%$%H%k(B ---  @comment --- タイトル ---
 @settitle 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ%Q%C%1!<%8(B taji_alc  @settitle 1変数代数的局所コホモロジー類用パッケージ taji_alc
   
 @comment %**end of header  @comment %**end of header
 @comment %@setchapternewpage odd  @comment %@setchapternewpage odd
   
 @comment --- $B$*$^$8$J$$(B ---  @comment --- おまじない ---
 @ifinfo  @ifinfo
 @macro fref{name}  @macro fref{name}
 @ref{\name\,,@code{\name\}}  @ref{\name\,,@code{\name\}}
Line 32 
Line 32 
 @end iftex  @end iftex
   
 @titlepage  @titlepage
 @comment --- $B$*$^$8$J$$=*$j(B ---  @comment --- おまじない終り ---
   
 @comment --- $B%?%$%H%k(B, $B%P!<%8%g%s(B, $BCx<TL>(B, $BCx:n8"I=<((B ---  @comment --- タイトル, バージョン, 著者名, 著作権表示 ---
 @title 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ%Q%C%1!<%8(B taji_alc  @title 1変数代数的局所コホモロジー類用パッケージ taji_alc
 @subtitle 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ%Q%C%1!<%8(B taji_alc  @subtitle 1変数代数的局所コホモロジー類用パッケージ taji_alc
 @subtitle 1.0 $BHG(B  @subtitle 1.0 版
 @subtitle 2007 $BG/(B 11 $B7n(B  @subtitle 2007 年 11 月
   
 @author  $B>1;JBnL4(B, $BEDEg?50l(B  @author  庄司卓夢, 田島慎一
 @page  @page
 @vskip 0pt plus 1filll  @vskip 0pt plus 1filll
 Copyright @copyright{} Takumu Shoji, Shinichi Tajima.  Copyright @copyright{} Takumu Shoji, Shinichi Tajima.
 2007. All rights reserved.  Licensed by GPL.  2007. All rights reserved.  Licensed by GPL.
 @end titlepage  @end titlepage
   
 @comment --- $B$*$^$8$J$$(B ---  @comment --- おまじない ---
 @synindex vr fn  @synindex vr fn
 @comment --- $B$*$^$8$J$$=*$j(B ---  @comment --- おまじない終り ---
   
 @comment --- @node $B$O(B GNU info, HTML $BMQ(B ---  @comment --- @node は GNU info, HTML 用 ---
 @comment --- @node  $B$N0z?t$O(B node-name,  next,  previous,  up ---  @comment --- @node  の引数は node-name,  next,  previous,  up ---
 @node Top,, (dir), (dir)  @node Top,, (dir), (dir)
   
 @comment --- @menu $B$O(B GNU info, HTML $BMQ(B ---  @comment --- @menu は GNU info, HTML 用 ---
 @comment --- chapter $BL>$r@53N$KJB$Y$k(B ---  @comment --- chapter 名を正確に並べる ---
 @comment --- $B$3$NJ8=q$G$O(B chapter XYZ, Chapter Index $B$,$"$k(B.  @comment --- この文書では chapter XYZ, Chapter Index がある.
 @comment ---  Chapter XYZ $B$K$O(B section XYZ$B$K$D$$$F(B, section XYZ$B$K4X$9$k4X?t$,$"$k(B.  @comment ---  Chapter XYZ には section XYZについて, section XYZに関する関数がある.
 @menu  @menu
 * 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`(B::  * 1変数代数的局所コホモロジー類::
 * Index::  * Index::
 @end menu  @end menu
   
 @comment --- chapter $B$N3+;O(B ---  @comment --- chapter の開始 ---
 @comment --- $B?F(B chapter $BL>$r@53N$K(B. $B?F$,$J$$>l9g$O(B Top ---  @comment --- 親 chapter 名を正確に. 親がない場合は Top ---
 @node 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`(B,,, Top  @node 1変数代数的局所コホモロジー類,,, Top
 @chapter 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`(B  @chapter 1変数代数的局所コホモロジー類
   
 @comment --- section $BL>$r@53N$KJB$Y$k(B.  ---  @comment --- section 名を正確に並べる.  ---
 @menu  @menu
 * 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N%Q%C%1!<%8(B taji_alc $B$K$D$$$F(B::  * 1変数代数的局所コホモロジー類用のパッケージ taji_alc について::
 * 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B::  * 1変数代数的局所コホモロジー類用の関数::
 @end menu  @end menu
   
 @comment --- section ``XYZ$B$K$D$$$F(B'' $B$N3+;O(B ---  section XYZ$B$K$D$$$F$N?F$O(B chapter XYZ  @comment --- section ``XYZについて'' の開始 ---  section XYZについての親は chapter XYZ
 @node 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N%Q%C%1!<%8(B taji_alc $B$K$D$$$F(B,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`(B  @node 1変数代数的局所コホモロジー類用のパッケージ taji_alc について,,, 1変数代数的局所コホモロジー類
 @section 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N%Q%C%1!<%8(B taji_alc $B$K$D$$$F(B  @section 1変数代数的局所コホモロジー類用のパッケージ taji_alc について
   
 @comment --- $B=qBN;XDj$K$D$$$F(B ---  @comment --- 書体指定について ---
 @comment --- @code{} $B$O%?%$%W%i%$%?BNI=<((B ---  @comment --- @code{} はタイプライタ体表示 ---
 @comment --- @var{} $B$O<P;zBNI=<((B ---  @comment --- @var{} は斜字体表示 ---
 @comment --- @b{} $B$O%\!<%k%II=<((B ---  @comment --- @b{} はボールド表示 ---
 @comment --- @samp{} $B$O%U%!%$%kL>$J$I$NI=<((B ---  @comment --- @samp{} はファイル名などの表示 ---
   
 $B$3$N@bL@=q$G$O(B  この説明書では
 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N%Q%C%1!<%8(B taji_alc $B$K$D$$$F@bL@$9$k(B.  1変数代数的局所コホモロジー類用のパッケージ taji_alc について説明する.
 $B?t3XE*2r@b$dGX7J$K$D$$$F$O(B, $B2r@b5-;v(B  数学的解説や背景については, 解説記事
 ``1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$KBP$9$k(B Risa/Asir $BMQ%Q%C%1!<%8(B taji_alc''  ``1変数代数的局所コホモロジー類用に対する Risa/Asir 用パッケージ taji_alc''
 (Risa/Asir Journal (2007))  (Risa/Asir Journal (2007))
 $B$*$h$S$=$N;29MJ88%$r;2>H(B.  およびその参考文献を参照.
   
   
 @comment --- section ``$B<B83E*4X?t(B'' $B$N3+;O(B ---  @comment --- section ``実験的関数'' の開始 ---
 @node 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`(B  @node 1変数代数的局所コホモロジー類用の関数,,, 1変数代数的局所コホモロジー類
 @section 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @section 1変数代数的局所コホモロジー類用の関数
   
 @comment --- section ``$B<B83E*4X?t(B'' $B$N(B subsection xyz_abc  @comment --- section ``実験的関数'' の subsection xyz_abc
 @comment --- subsection xyz_pqr xyz_stu $B$,$"$k(B.  @comment --- subsection xyz_pqr xyz_stu がある.
 @menu  @menu
 * taji_alc.cpfd::  * taji_alc.cpfd::
 * taji_alc.snoether::  * taji_alc.snoether::
Line 112  Copyright @copyright{} Takumu Shoji, Shinichi Tajima.
Line 112  Copyright @copyright{} Takumu Shoji, Shinichi Tajima.
 * taji_alc.inv::  * taji_alc.inv::
 @end menu  @end menu
   
 $BK\%;%/%7%g%s$N4X?t$r8F$S=P$9$K$O(B,  本セクションの関数を呼び出すには,
 @example  @example
 import("taji_alc.rr")$  import("taji_alc.rr")$
 @end example  @end example
 $B$r<B9T$7$F%W%m%0%i%`$r%m!<%I$9$k(B.  を実行してプログラムをロードする.
   
   
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.cpfd,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.cpfd,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.cpfd}  @subsection @code{taji_alc.cpfd}
 @findex taji_alc.cpfd  @findex taji_alc.cpfd
   
 @table @t  @table @t
 @item taji_alc.cpfd(@var{num},@var{den})  @item taji_alc.cpfd(@var{num},@var{den})
 :: $BM-M}4X?t(B@var{num}/@var{den}$B$NItJ,J,?tJ,2r$r5a$a$k(B.  :: 有理関数@var{num}/@var{den}の部分分数分解を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 @var{switch}$B$,(B0$B$+(B1$B$J$i$P(B, [[[$BJ,;R(B,[$BJ,Jl$N0x;R(B,$B=EJ#EY(B]],...],...] $B$J$k%j%9%H(B.  @var{switch}が0か1ならば, [[[分子,[分母の因子,重複度]],...],...] なるリスト.
   
 @var{switch}$B$,(B10$B$+(B11$B$J$i$P(B, [[$BJ,;R(B,[$BJ,Jl$N0x;R(B,$B=EJ#EY(B]],...] $B$J$k%j%9%H(B.  @var{switch}が10か11ならば, [[分子,[分母の因子,重複度]],...] なるリスト.
   
 @item num  @item num
 ($BM-M}4X?t$NJ,;R$N(B) $BB?9`<0(B  (有理関数の分子の) 多項式
 @item den  @item den
 ($BM-M}4X?t$NJ,Jl$N(B) $BB?9`<0(B  (有理関数の分母の) 多項式
   
 $B$^$?$O(B ($BM-M}4X?t$NJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?(B)  [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (有理関数の分母をQ上で既約分解した)  [[因子,重複度],...] なるリスト
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : complete$B$JItJ,J,?tJ,2r$rJV$9(B. ($BJ,;R$OM-M}?t78?tB?9`<0(B)  case 0 : completeな部分分数分解を返す. (分子は有理数係数多項式)
   
 case 1 : complete$B$JItJ,J,?tJ,2r$rJV$9(B. ($BJ,;R$O@0?t78?t2=%j%9%H(B)  case 1 : completeな部分分数分解を返す. (分子は整数係数化リスト)
   
 case 10 : $BJ,Jl$rQQE83+$7$J$$ItJ,J,?tJ,2r$rJV$9(B. ($BJ,;R$OM-M}?t78?tB?9`<0(B)  case 10 : 分母を冪展開しない部分分数分解を返す. (分子は有理数係数多項式)
   
 case 11 : $BJ,Jl$rQQE83+$7$J$$ItJ,J,?tJ,2r$rJV$9(B. ($BJ,;R$O@0?t78?t2=%j%9%H(B)  case 11 : 分母を冪展開しない部分分数分解を返す. (分子は整数係数化リスト)
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item taji_alc.cpfd()$B$O(B, proper$B$JM-M}4X?t$rBP>]$H$9$k(B.  @item taji_alc.cpfd()は, properな有理関数を対象とする.
 $BF~NOCM$,(Bproper$B$G$J$$>l9g$G$b@5>o$KF0:n$9$k$,(B, $BB?9`<0$H$7$F=P$F$/$kItJ,$OI=<($7$J$$(B.  入力値がproperでない場合でも正常に動作するが, 多項式として出てくる部分は表示しない.
 @item $BItJ,J,?tJ,2r$O(B, $BQQE83+$r$9$k(Bcomplete$B$J%?%$%W$H(B, $BQQE83+$r$7$J$$%?%$%W$N(B2$B$D$N%?%$%W$,$"$k(B.  @item 部分分数分解は, 冪展開をするcompleteなタイプと, 冪展開をしないタイプの2つのタイプがある.
 taji_alc.cpfd()$B$G:NMQ$7$F$$$k%"%k%4%j%:%`$G$O(B, $BA0<T$,@h$K5a$^$k(B.  taji_alc.cpfd()で採用しているアルゴリズムでは, 前者が先に求まる.
 $B8e<T$O(B, $BA0<T$N%G!<%?$r%[!<%J!<K!$GB-$7>e$2$F5a$a$k(B.  後者は, 前者のデータをホーナー法で足し上げて求める.
 @item @var{den}$B$O(B, $B%j%9%H$G$NF~NO$,K>$^$7$$(B.  @item @var{den}は, リストでの入力が望ましい.
 ($BB?9`<0$GF~NO$9$k$H(B, $B4JLs2=$N=hM}$,@8$8$k$?$a=E$/$J$k(B.)  (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
 $B$?$@$7$=$N>l9g$K$O(B, $B4{Ls%A%'%C%/(B, $BM-M}<0$NLsJ,(B, $B@0?t78?t2=$O9T$o$J$$$N$GCm0U$9$k(B.  ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
 $BF~NOCM$O%f!<%6B&$,@UG$$r$b$D(B.  入力値はユーザ側が責任をもつ.
 @end itemize  @end itemize
   
 @example  @example
Line 179  taji_alc.cpfd()$B$G:NMQ$7$F$$$k%"%k%4%j%:%`$G$O(B, 
Line 179  taji_alc.cpfd()$B$G:NMQ$7$F$$$k%"%k%4%j%:%`$G$O(B, 
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 193  ChangeLog
Line 193  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.snoether,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.snoether,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.snoether}  @subsection @code{taji_alc.snoether}
 @findex taji_alc.snoether  @findex taji_alc.snoether
   
 @table @t  @table @t
 @item taji_alc.snoether(@var{num},@var{den})  @item taji_alc.snoether(@var{num},@var{den})
 :: $BM-M}4X?t(B@var{num}/@var{den}$B$,Dj$a$kBe?tE*6I=j%3%[%b%m%8!<N`$N%M!<%?!<:nMQAG$r5a$a$k(B.  :: 有理関数@var{num}/@var{den}が定める代数的局所コホモロジー類のネーター作用素を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 [[$B0x;R(B,$B%M!<%?!<:nMQAG(B],...] $B$J$k%j%9%H(B.  [[因子,ネーター作用素],...] なるリスト.
   
 $B%M!<%?!<:nMQAG$O(B, $B78?t$r9b3,$NItJ,$+$i9_=g$KJB$Y$?%j%9%H(B  ネーター作用素は, 係数を高階の部分から降順に並べたリスト
   
 @item num  @item num
 ($BM-M}4X?t$NJ,;R$N(B)$BB?9`<0(B  (有理関数の分子の)多項式
 @item den  @item den
 ($BM-M}4X?t$NJ,Jl$N(B)$BB?9`<0(B  (有理関数の分母の)多項式
   
 $B$^$?$O(B ($BM-M}4X?t$NJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?(B)  [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B.  または (有理関数の分母をQ上で既約分解した)  [[因子,重複度],...] なるリスト.
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B%M!<%?!<:nMQAG$r(B [$BM-M}?t78?tB?9`<0(B,...] $B$J$k%j%9%H$GJV$9(B.  case 0 : ネーター作用素を [有理数係数多項式,...] なるリストで返す.
   
 case 1 : $B%M!<%?!<:nMQAG$r(B [$B@0?t78?t2=%j%9%H(B,...] $B$J$k%j%9%H$GJV$9(B.  case 1 : ネーター作用素を [整数係数化リスト,...] なるリストで返す.
   
 case 10 : $B%M!<%?!<:nMQAG$r(B [[$B@0?t78?tB?9`<0(B,...],$B@0?t(B] $B$J$k%j%9%H$GJV$9(B.  case 10 : ネーター作用素を [[整数係数多項式,...],整数] なるリストで返す.
   
 case 20 : $B%M!<%?!<:nMQAG$r(B [[$B@0?t78?t2=%j%9%H(B,...],$B@0?t(B] $B$J$k%j%9%H$GJV$9(B.  case 20 : ネーター作用素を [[整数係数化リスト,...],整数] なるリストで返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item taji_alc.snoether()$B$O(B, @var{den}$B$r(BQ$B>e$G4{LsJ,2r$7(B,  @item taji_alc.snoether()は, @var{den}をQ上で既約分解し,
 $B3F0x;R$KBP1~$9$k%M!<%?!<:nMQAG$rJV$9(B.  各因子に対応するネーター作用素を返す.
 @item @var{den}$B$O(B, $B%j%9%H$G$NF~NO$,K>$^$7$$(B.  @item @var{den}は, リストでの入力が望ましい.
 ($BB?9`<0$GF~NO$9$k$H(B, $B4JLs2=$N=hM}$,@8$8$k$?$a=E$/$J$k(B.)  (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
 $B$?$@$7$=$N>l9g$K$O(B, $B4{Ls%A%'%C%/(B, $BM-M}<0$NLsJ,(B, $B@0?t78?t2=$O9T$o$J$$$N$GCm0U$9$k(B.  ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
 $BF~NOCM$O%f!<%6B&$,@UG$$r$b$D(B.  入力値はユーザ側が責任をもつ.
 @item $BLa$jCM$N7?$O(B@var{switch}$B$GA*Br$G$-$k(B.  @item 戻り値の型は@var{switch}で選択できる.
   
 case 10$B$O(B, $B%M!<%?!<:nMQAG$N3F78?tA4BN$rDLJ,$7(B, $B$=$NJ,JlItJ,$H3,>h$N@Q$r%j%9%H$GJ,$1$?I=8=$G$"$k(B.  case 10は, ネーター作用素の各係数全体を通分し, その分母部分と階乗の積をリストで分けた表現である.
 $B$o$+$j$d$9$$$,(B, $BDLJ,CM$H78?tItJ,$H$GLsJ,$G$-$kItJ,$,$"$k(B($BFC$K9b3,$NItJ,$KB?$$(B)$B$N$G(B, $B>iD9@-$r$b$C$F$$$k(B.  わかりやすいが, 通分値と係数部分とで約分できる部分がある(特に高階の部分に多い)ので, 冗長性をもっている.
   
 case 20$B$O(B, $B3,>h$NItJ,$GA4BN$r$/$/$j(B($B%j%9%H$GJ,$1(B), $B%M!<%?!<:nMQAG$N3F78?t$r8DJL$KDLJ,$7%j%9%H2=$9$k(B.  case 20は, 階乗の部分で全体をくくり(リストで分け), ネーター作用素の各係数を個別に通分しリスト化する.
 $B3,>h$NItJ,$H78?tItJ,$H$GLsJ,$G$-$kItJ,$,$"$k(B($BFC$KDc3,$NItJ,$KB?$$(B)$B$N$G(B,  階乗の部分と係数部分とで約分できる部分がある(特に低階の部分に多い)ので,
 $B>iD9$H8@$($J$/$b$J$$(B(case 10$B$h$j$O$^$7(B)$B$,(B, $B?t3XE*$J9=B$$,e:No$K8+$($kI=8=$G$"$k(B.  冗長と言えなくもない(case 10よりはまし)が, 数学的な構造が綺麗に見える表現である.
 @end itemize  @end itemize
   
 @example  @example
Line 266  case 20$B$O(B, $B3,>h$NItJ,$GA4BN$r$/$/$j(B($B%j%
Line 266  case 20$B$O(B, $B3,>h$NItJ,$GA4BN$r$/$/$j(B($B%j%
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 280  ChangeLog
Line 280  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.laurent_expansion,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.laurent_expansion,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.laurent_expansion}  @subsection @code{taji_alc.laurent_expansion}
 @findex taji_alc.laurent_expansion  @findex taji_alc.laurent_expansion
   
 @table @t  @table @t
 @item taji_alc.laurent_expansion(@var{num},@var{den})  @item taji_alc.laurent_expansion(@var{num},@var{den})
 :: $BM-M}4X?t(B@var{num}/@var{den}$B$N6K$K$*$1$k%m!<%i%sE83+$N<gMWIt$N78?t$r5a$a$k(B.  :: 有理関数@var{num}/@var{den}の極におけるローラン展開の主要部の係数を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 [[$B0x;R(B,$B%m!<%i%sE83+$N78?t(B],...] $B$J$k%j%9%H(B.  [[因子,ローラン展開の係数],...] なるリスト.
   
 $B%m!<%i%sE83+$N78?t$O(B, $B9b0L$N78?t$+$i=g$KJB$Y$?%j%9%H(B.  ローラン展開の係数は, 高位の係数から順に並べたリスト.
   
 @item num  @item num
 ($BM-M}4X?t$NJ,;R$N(B)$BB?9`<0(B  (有理関数の分子の)多項式
 @item den  @item den
 ($BM-M}4X?t$NJ,Jl$N(B)$BB?9`<0(B  (有理関数の分母の)多項式
   
 $B$^$?$O(B ($BM-M}4X?t$NJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?(B)  [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (有理関数の分母をQ上で既約分解した)  [[因子,重複度],...] なるリスト
   
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B%m!<%i%sE83+$N78?t$r(B [$BM-M}?t78?tB?9`<0(B,...] $B$J$k%j%9%H$GJV$9(B.  case 0 : ローラン展開の係数を [有理数係数多項式,...] なるリストで返す.
   
 case 1 : $B%m!<%i%sE83+$N78?t$r(B [$B@0?t78?t2=%j%9%H(B,...] $B$J$k%j%9%H$GJV$9(B.  case 1 : ローラン展開の係数を [整数係数化リスト,...] なるリストで返す.
   
 case 10 : $B%m!<%i%sE83+$N78?t$r(B [[$B@0?t78?tB?9`<0(B,...],$B@0?t(B] $B$J$k%j%9%H$GJV$9(B.  case 10 : ローラン展開の係数を [[整数係数多項式,...],整数] なるリストで返す.
   
 case 20 : $B%m!<%i%sE83+$N78?t$r(B [[$B@0?t78?t2=%j%9%H(B,...],$B@0?t(B] $B$J$k%j%9%H$GJV$9(B.  case 20 : ローラン展開の係数を [[整数係数化リスト,...],整数] なるリストで返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item taji_alc.laurent_expansion()$B$O(B, taji_alc.snoether()$B$r;H$C$F(B, $B%m!<%i%sE83+$N78?t$r5a$a$k(B.  @item taji_alc.laurent_expansion()は, taji_alc.snoether()を使って, ローラン展開の係数を求める.
 @item taji_alc.laurent_expansion()$B$G$O(B,  @item taji_alc.laurent_expansion()では,
 C$B>e$N(B1$BE@$KCmL\$9$k$N$G$O$J$/(B, Q$B>e$G$N4{Ls0x;R<+BN$KCmL\$7$F%m!<%i%sE83+$N78?t$r5a$a$k(B.  C上の1点に注目するのではなく, Q上での既約因子自体に注目してローラン展開の係数を求める.
 $BLa$jCM$N78?t%j%9%H$N3F@.J,$O(B, $B$=$N0x;R$NA4$F$NNmE@$,6&DL$KK~$?$9%m!<%i%sE83+$N78?tB?9`<0$G$"$k(B.  戻り値の係数リストの各成分は, その因子の全ての零点が共通に満たすローラン展開の係数多項式である.
 $B=>$C$F(B, 1$BE@$4$H$N%m!<%i%sE83+$N78?t$r$5$i$K5a$a$?$$>l9g$K$O(B,  従って, 1点ごとのローラン展開の係数をさらに求めたい場合には,
 $B5a$a$?%m!<%i%sE83+$N78?tB?9`<0$K0x;R$NNmE@(B($BB($AFC0[E@(B)$B$NCM$rBeF~$9$kI,MW$,$"$k(B.  求めたローラン展開の係数多項式に因子の零点(即ち特異点)の値を代入する必要がある.
 @end itemize  @end itemize
   
 @example  @example
Line 334  C$B>e$N(B1$BE@$KCmL\$9$k$N$G$O$J$/(B, Q$B>e$G$N4{
Line 334  C$B>e$N(B1$BE@$KCmL\$9$k$N$G$O$J$/(B, Q$B>e$G$N4{
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @ref{taji_alc.snoether}  @ref{taji_alc.snoether}
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 349  ChangeLog
Line 349  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.residue,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.residue,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.residue}  @subsection @code{taji_alc.residue}
 @findex taji_alc.residue  @findex taji_alc.residue
   
 @table @t  @table @t
 @item taji_alc.residue(@var{num},@var{den})  @item taji_alc.residue(@var{num},@var{den})
 :: $BM-M}4X?t(B@var{num}/@var{den}$B$N6K$K$*$1$kN1?t$r5a$a$k(B.  :: 有理関数@var{num}/@var{den}の極における留数を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 [[$B0x;R(B,$BN1?t(B],...] $B$J$k%j%9%H(B  [[因子,留数],...] なるリスト
   
 @item num  @item num
 ($BM-M}4X?t$NJ,;R$N(B) $BB?9`<0(B  (有理関数の分子の) 多項式
 @item den  @item den
 ($BM-M}4X?t$NJ,Jl$N(B) $BB?9`<0(B  (有理関数の分母の) 多項式
   
 $B$^$?$O(B ($BM-M}4X?t$NJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?(B)  [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (有理関数の分母をQ上で既約分解した)  [[因子,重複度],...] なるリスト
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $BN1?t$rM-M}?t78?tB?9`<0$GJV$9(B.  case 0 : 留数を有理数係数多項式で返す.
   
 case 1 : $BN1?t$r@0?t78?t2=%j%9%H$GJV$9(B.  case 1 : 留数を整数係数化リストで返す.
   
 default : case 0  default : case 0
   
 @item pole  @item pole
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 [$B0x;R(B,...] $B$J$k%*%W%7%g%s%j%9%H(B  [因子,...] なるオプションリスト
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item taji_alc.residue()$B$O(B, @var{den}$B$r(BQ$B>e$G4{LsJ,2r$7(B, $B3F0x;R$NNmE@(B($BB($AM-M}4X?t$N6K(B)$B$K$*$1$kN1?t$rJV$9(B.  @item taji_alc.residue()は, @var{den}をQ上で既約分解し, 各因子の零点(即ち有理関数の極)における留数を返す.
 @item $B%*%W%7%g%s$G(B@var{pole}$B$r;XDj$9$l$P$=$N0x;R$N$_$NN1?t$rJV$9(B. $B;XDj$,ITE,Ev$@$H(B0$B$rJV$9(B.  @item オプションで@var{pole}を指定すればその因子のみの留数を返す. 指定が不適当だと0を返す.
 @item taji_alc.residue()$B$G:NMQ$7$F$$$k%"%k%4%j%:%`$G$O(B,  @item taji_alc.residue()で採用しているアルゴリズムでは,
 C$B>e$N(B1$BE@$KCmL\$9$k$N$G$O$J$/(B, Q$B>e$G$N4{Ls0x;R<+BN$KCmL\$7$FN1?t$r5a$a$k(B.  C上の1点に注目するのではなく, Q上での既約因子自体に注目して留数を求める.
 $BLa$jCM$NN1?t$O(B, $B$=$N0x;R$NA4$F$NNmE@$,6&DL$KK~$?$9N1?tB?9`<0$G$"$k(B.  戻り値の留数は, その因子の全ての零点が共通に満たす留数多項式である.
 $B=>$C$F(B, 1$BE@$4$H$NN1?tCM$r$5$i$K5a$a$?$$>l9g$K$O(B,  従って, 1点ごとの留数値をさらに求めたい場合には,
 $B5a$a$?N1?tB?9`<0$K0x;R$NNmE@(B($BB($AFC0[E@(B)$B$NCM$rBeF~$9$kI,MW$,$"$k(B.  求めた留数多項式に因子の零点(即ち特異点)の値を代入する必要がある.
   
 @example  @example
 [219] taji_alc.residue(1,x^4+1);  [219] taji_alc.residue(1,x^4+1);
 [[x^4+1,-1/4*x]]  [[x^4+1,-1/4*x]]
 @end example  @end example
   
 $B$3$NNc$G8@$&$H(B, $B5a$a$?N1?tB?9`<0(B-1/4*x$B$K(B, x^4+1$B$N(B(4$B$D$"$k(B)$BNmE@$r$=$l$>$lBeF~$7$?$b$N$,8DJL$NN1?tCM$G$"$k(B.  この例で言うと, 求めた留数多項式-1/4*xに, x^4+1の(4つある)零点をそれぞれ代入したものが個別の留数値である.
 @item @var{den}$B$O(B, $B%j%9%H$G$NF~NO$,K>$^$7$$(B.  @item @var{den}は, リストでの入力が望ましい.
 ($BB?9`<0$GF~NO$9$k$H(B, $B4JLs2=$N=hM}$,@8$8$k$?$a=E$/$J$k(B.)  (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
 $B$?$@$7$=$N>l9g$K$O(B, $B4{Ls%A%'%C%/(B, $BM-M}<0$NLsJ,(B, $B@0?t78?t2=$O9T$o$J$$$N$GCm0U$9$k(B.  ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
 $BF~NOCM$O%f!<%6B&$,@UG$$r$b$D(B.  入力値はユーザ側が責任をもつ.
 @end itemize  @end itemize
   
 @example  @example
Line 421  pole=[x+1]);
Line 421  pole=[x+1]);
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 435  ChangeLog
Line 435  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.invpow,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.invpow,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.invpow}  @subsection @code{taji_alc.invpow}
 @findex taji_alc.invpow  @findex taji_alc.invpow
   
 @table @t  @table @t
 @item taji_alc.invpow(@var{poly},@var{f},@var{m})  @item taji_alc.invpow(@var{poly},@var{f},@var{m})
 :: $B>jM>BN(BQ[x]/<@var{f}>$B>e$G$N(B@var{poly}$B$N5U85$N(B@var{m}$B>h$r5a$a$k(B.  :: 剰余体Q[x]/<@var{f}>上での@var{poly}の逆元の@var{m}乗を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $B5UQQ(B  逆冪
   
 @item poly  @item poly
 $BB?9`<0(B  多項式
 @item f  @item f
 Q$B>e$G4{Ls$JB?9`<0(B  Q上で既約な多項式
 @item m  @item m
 $B<+A3?t(B  自然数
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B5UQQ$rM-M}?t78?tB?9`<0$GJV$9(B.  case 0 : 逆冪を有理数係数多項式で返す.
   
 case 1 : $B5UQQ$r@0?t78?t2=%j%9%H$GJV$9(B.  case 1 : 逆冪を整数係数化リストで返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item @var{poly}$B$H(B@var{f}$B$O8_$$$KAG$G$J$1$l$P$J$i$J$$(B.  @item @var{poly}と@var{f}は互いに素でなければならない.
 @item $B%"%k%4%j%:%`$N9|3J$O7+$jJV$7(B2$B>hK!$G$"$k(B. $B$=$3$K:G>.B?9`<0$NM}O@$r1~MQ$7$F9bB.2=$7$F$$$k(B.  @item アルゴリズムの骨格は繰り返し2乗法である. そこに最小多項式の理論を応用して高速化している.
 @end itemize  @end itemize
   
 @example  @example
Line 479  default : case 0
Line 479  default : case 0
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 493  ChangeLog
Line 493  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.rem_formula,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.rem_formula,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.rem_formula}  @subsection @code{taji_alc.rem_formula}
 @findex taji_alc.rem_formula  @findex taji_alc.rem_formula
   
 @table @t  @table @t
 @item taji_alc.rem_formula(@var{polylist})  @item taji_alc.rem_formula(@var{polylist})
 :: $BB?9`<0(Bf(x)$B$rM?$($?$H$-$N>jM>8x<0$r5a$a$k(B.  :: 多項式f(x)を与えたときの剰余公式を求める.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 @var{switch} $B$*$h$S(B $B@bL@J8$r;2>H(B  @var{switch} および 説明文を参照
   
 @item polylist  @item polylist
 f(x)$B$r(BQ$B>e$G4{LsJ,2r$7$?(B [[$B0x;R(B,$B=EJ#EY(B,$BNmE@$N5-9f(B],...] $B$J$k%j%9%H(B  f(x)をQ上で既約分解した [[因子,重複度,零点の記号],...] なるリスト
   
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : x$B$NQQ$G@0M}$7(B, $B%j%9%H$GJV$9(B.  case 0 : xの冪で整理し, リストで返す.
   
 case 10 : f(x)$B$NQQ$G@0M}$7(B, $B%j%9%H$GJV$9(B. ($B0l0x;R$N>l9g$N$_BP1~(B)  case 10 : f(x)の冪で整理し, リストで返す. (一因子の場合のみ対応)
   
 case 20 : x$B$NQQ$G@0M}$7(B, symbolic$B$JI=8=$GJV$9(B.  case 20 : xの冪で整理し, symbolicな表現で返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item $B%"%k%4%j%:%`$O(B, $B%(%k%_!<%H$NJd4V>jM>$rMQ$$$F$$$k(B.  @item アルゴリズムは, エルミートの補間剰余を用いている.
 @item $B>jM>8x<0$NI=8=J}K!$O$$$/$D$+9M$($i$l$k$?$a(B, @var{switch}$B$GA*Br<0$H$7$?(B.  @item 剰余公式の表現方法はいくつか考えられるため, @var{switch}で選択式とした.
 @item @var{switch}=0 $B$NLa$jCM$N8+J}$r=R$Y$k(B. $BNc$H$7$F(B, f(x)=f1(x)^m1*f2(x)^m2$B$r9M$($k(B.  @item @var{switch}=0 の戻り値の見方を述べる. 例として, f(x)=f1(x)^m1*f2(x)^m2を考える.
 $BF~NO$O(B [[f1(x),m1,z1],[f2(x),m2,z2]] $B$H$J$k(B. $B$=$N$H$-La$jCM$O(B,  入力は [[f1(x),m1,z1],[f2(x),m2,z2]] となる. そのとき戻り値は,
   
 [r_{f1}(x,z1),r_{f2}(x,z2)]  [r_{f1}(x,z1),r_{f2}(x,z2)]
   
 $B$J$k%j%9%H$GJV$5$l$k(B. $B$3$l$O(B, $B>jM>8x<0$,(B  なるリストで返される. これは, 剰余公式が
   
 @tex  @tex
 $r(x)=r_{f1}(x,z1)+r_{f2}(x,z2)$  $r(x)=r_{f1}(x,z1)+r_{f2}(x,z2)$
 @end tex  @end tex
   
 $B$J$k7A$GM?$($i$l$k$3$H$r0UL#$7$F$$$k(B.  なる形で与えられることを意味している.
 $B3F@.J,$N(Br_{fi}(x,zi)$B$O(B,  各成分のr_{fi}(x,zi)は,
   
 [p^(mi-1)(zi)$B$N78?t$H$J$k(Bx$B$H(Bzi$B$NB?9`<0(B,...,p^(0)(zi)$B$N78?t$H$J$k(Bx$B$H(Bzi$B$NB?9`<0(B]  [p^(mi-1)(zi)の係数となるxとziの多項式,...,p^(0)(zi)の係数となるxとziの多項式]
   
 $B$J$k%j%9%H$G$"$k(B.  なるリストである.
 @item @var{switch}=10 $B$NLa$jCM$N8+J}$r=R$Y$k(B. $BNc$H$7$F(B, f(x)=f1(x)^m$B$r9M$($k(B.  @item @var{switch}=10 の戻り値の見方を述べる. 例として, f(x)=f1(x)^mを考える.
 $BF~NO$O(B [[f1(x),m,z]] $B$H$J$k(B. $B$=$N$H$-La$jCM$O(B,  入力は [[f1(x),m,z]] となる. そのとき戻り値は,
   
 [r_(m-1)(x,z),...,r_0(x,z)]  [r_(m-1)(x,z),...,r_0(x,z)]
   
 $B$J$k%j%9%H$GJV$5$l$k(B. $B3F@.J,$O(B, $B>jM>8x<0$r(B  なるリストで返される. 各成分は, 剰余公式を
   
 @tex  @tex
 $r(x)=r_{m-1}(x,z)f_1(x)^{m-1}+\cdots+r_0(x,z)$  $r(x)=r_{m-1}(x,z)f_1(x)^{m-1}+\cdots+r_0(x,z)$
 @end tex  @end tex
   
 $B$N$h$&$K(Bf1(x)$B$NQQ$GE83+$7$?$H$-$N3F78?t$r0UL#$7$F$$$k(B.  のようにf1(x)の冪で展開したときの各係数を意味している.
 $B3F@.J,$N(Br_{i}(x,z)$B$O(B,  各成分のr_{i}(x,z)は,
   
 [p^(m-1)(z)$B$N78?t$H$J$k(Bx$B$H(Bz$B$NB?9`<0(B,...,p^(0)(z)$B$N78?t$H$J$k(Bx$B$H(Bz$B$NB?9`<0(B]  [p^(m-1)(z)の係数となるxとzの多項式,...,p^(0)(z)の係数となるxとzの多項式]
   
 $B$J$k%j%9%H$G$"$k(B.  なるリストである.
 @item @var{switch}=20 $B$NLa$jCM$N8+J}$r=R$Y$k(B.  @item @var{switch}=20 の戻り値の見方を述べる.
 symbolic$B$J=PNO$N(Bp^(m)(z)$B$O(B, p(x)$B$N(Bm$B3,$NF34X?t$K(Bz$B$rBeF~$7$?CM$H$$$&0UL#$G$"$k(B.  symbolicな出力のp^(m)(z)は, p(x)のm階の導関数にzを代入した値という意味である.
 @item $BLa$jCM$O(B, $BM?$($?0x;R$NA4$F$NNmE@$rBeF~$7$?$b$N$NOB$H$7$F8+$k(B.  @item 戻り値は, 与えた因子の全ての零点を代入したものの和として見る.
 $B$3$l$O0x;R$,(B2$B<!0J>e$NB?9`<0$N>l9g$K4X78$7$F$/$k(B. $BNc$($P(B,  これは因子が2次以上の多項式の場合に関係してくる. 例えば,
   
 @example  @example
 [228] taji_alc.rem_formula([[x^2+1,1,z]]);  [228] taji_alc.rem_formula([[x^2+1,1,z]]);
 [[-1/2*z*x+1/2]]  [[-1/2*z*x+1/2]]
 @end example  @end example
   
 $B$N@5$7$$8+J}$O(B, x^2+1$B$NNmE@$r(Ba1,a2$B$H$*$$$?$H$-$K(B, z$B$K(Ba1$B$H(Ba2$B$rBeF~$7$?(B,  の正しい見方は, x^2+1の零点をa1,a2とおいたときに, zにa1とa2を代入した,
   
 r(x)=(-1/2*a1*x+1/2)+(-1/2*a2*x+1/2)  r(x)=(-1/2*a1*x+1/2)+(-1/2*a2*x+1/2)
 $B$G$"$k(B. $B$7$+$7=PNO$G$O(B, $BNmE@$NOB$NItJ,$rJX59>e>JN,$7$FJV$9(B.  である. しかし出力では, 零点の和の部分を便宜上省略して返す.
 @end itemize  @end itemize
   
 @example  @example
Line 609  z^2-174/529*z-108/529)*x^2+(-105/529*z^2+54/529*z+70/5
Line 609  z^2-174/529*z-108/529)*x^2+(-105/529*z^2+54/529*z+70/5
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 623  ChangeLog
Line 623  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.solve_ode_cp,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.solve_ode_cp,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.solve_ode_cp}  @subsection @code{taji_alc.solve_ode_cp}
 @findex taji_alc.solve_ode_cp  @findex taji_alc.solve_ode_cp
   
 @table @t  @table @t
 @item taji_alc.solve_ode_cp(@var{poly},@var{var},@var{exppoly})  @item taji_alc.solve_ode_cp(@var{poly},@var{var},@var{exppoly})
 :: $BM-M}?t78?t$N@~7A>oHyJ,J}Dx<0$N%3!<%7!<LdBj(B  :: 有理数係数の線形常微分方程式のコーシー問題
   
 @tex  @tex
 $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$  $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$
 @end tex  @end tex
   
 $B$N2r$r5a$a$k(B.  の解を求める.
   
 $B$?$@$7(B, P$B$O(Bn$B3,$NM-M}?t78?t$N@~7A>oHyJ,:nMQAG(B, f(z)$B$O;X?tB?9`<0$H$9$k(B.  ただし, Pはn階の有理数係数の線形常微分作用素, f(z)は指数多項式とする.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 2$BDL$j$NI=8=$,$"$k(B.  2通りの表現がある.
   
 $B!&I=8=(B1 ($B%3!<%7!<%G!<%?$G@0M}$7$?7A(B)  ・表現1 (コーシーデータで整理した形)
   
 $B%3!<%7!<LdBj$N0lHL2r(Bu(z)$B$O(B,  コーシー問題の一般解u(z)は,
   
 @tex$u(z)=c_0u_0(z)+\cdots+c_{n-1}u_{n-1}(z)+v(z)$@end tex  @tex$u(z)=c_0u_0(z)+\cdots+c_{n-1}u_{n-1}(z)+v(z)$@end tex
   
 $B$J$k@~7A7k9g$N7A$GM?$($i$l$k(B.  なる線形結合の形で与えられる.
 @tex$u_0(z),\ldots,u_{n-1}(z)$@end tex  @tex$u_0(z),\ldots,u_{n-1}(z)$@end tex
 $B$r%3!<%7!<LdBj$N4pK\2r(B,  をコーシー問題の基本解,
 @tex$v(z)$@end tex  @tex$v(z)$@end tex
 $B$r%3!<%7!<LdBj$NFC<l2r$H$$$$(B,  をコーシー問題の特殊解といい,
   
 [u_0(z),...,u_(n-1)(z),v(z)]  [u_0(z),...,u_(n-1)(z),v(z)]
   
 $B$J$k%j%9%H$GJV$9(B.  なるリストで返す.
 $B4pK\2r$HFC<l2r$O(B, $B;X?tB?9`<0%j%9%H$G$"$k(B.  基本解と特殊解は, 指数多項式リストである.
   
 $B!&I=8=(B2 ($B;X?t4X?t$G@0M}$7$?7A(B)  ・表現2 (指数関数で整理した形)
   
 @var{data}$B$K%3!<%7!<%G!<%?$rM?$($k$H(B,  @var{data}にコーシーデータを与えると,
 $B%3!<%7!<LdBj$N0lHL2r(Bu(z)$B$N(B  コーシー問題の一般解u(z)の
 @tex$c_0,\ldots,c_{n-1}$@end tex  @tex$c_0,\ldots,c_{n-1}$@end tex
 $B$N$H$3$m$K%G!<%?$rBeF~$7(B,  のところにデータを代入し,
 $B$=$l$r;X?t4X?t$G@0M}$7D>$7$?;X?tB?9`<0%j%9%H$rJV$9(B.  それを指数関数で整理し直した指数多項式リストを返す.
   
 @item poly  @item poly
 $BB?9`<0(B (P$B$NFC@-B?9`<0(B)  多項式 (Pの特性多項式)
   
 $B$^$?$O(B (P$B$NFC@-B?9`<0$r(BQ$B>e$G4{LsJ,2r$7$?(B) [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (Pの特性多項式をQ上で既約分解した) [[因子,重複度],...] なるリスト
   
 @item var  @item var
 $BITDj85(B ($B4X?t$NFHN)JQ?t(B)  不定元 (関数の独立変数)
   
 @item exppoly  @item exppoly
 $B@F<!7A$N$H$-(B0, $BHs@F<!7A$N$H$-(Bf(z)$B$N;X?tB?9`<0%j%9%H(B.  斉次形のとき0, 非斉次形のときf(z)の指数多項式リスト.
   
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$rM-M}?t78?tB?9`<0$GJV$9(B.  case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
   
 case 1 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$r@0?t78?t2=%j%9%H$GJV$9(B.  case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
   
 default : case 0  default : case 0
 @item data  @item data
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 $B%3!<%7!<%G!<%?$r(B [c_0,...,c_(n-1)] $B$N=g$KJB$Y$?%j%9%H(B.  コーシーデータを [c_0,...,c_(n-1)] の順に並べたリスト.
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item $B2rK!$O%(%k%_!<%H$NJ}K!(B($BN1?t7W;;$K5"Ce$5$;$kJ}K!(B)$B$r:NMQ$7$F$$$k(B.  @item 解法はエルミートの方法(留数計算に帰着させる方法)を採用している.
 @item $BJQ?t$O(B2$B<oN`I,MW(B($BFC@-B?9`<0$NJQ?t$H4X?t$NFHN)JQ?t(B).  @item 変数は2種類必要(特性多項式の変数と関数の独立変数).
 @var{poly}$B$NITDj85$H(B@var{var}$B$NITDj85$,>WFM$7$J$$$h$&Cm0U(B.  @var{poly}の不定元と@var{var}の不定元が衝突しないよう注意.
 @item $BLa$jCM$NFC<l2r(B  @item 戻り値の特殊解
 @tex  @tex
 $v(z)$  $v(z)$
 @end tex  @end tex
 $B$O(B, $B%3!<%7!<>r7o(B  は, コーシー条件
 @tex  @tex
 $v(0)=0,\ldots,v^{(n-1)}(0)=0$  $v(0)=0,\ldots,v^{(n-1)}(0)=0$
 @end tex  @end tex
 $B$rK~$?$9%3!<%7!<LdBj$NFC<l2r$G$"$k(B.  を満たすコーシー問題の特殊解である.
 @end itemize  @end itemize
   
 @example  @example
Line 729  $v(0)=0,\ldots,v^{(n-1)}(0)=0$
Line 729  $v(0)=0,\ldots,v^{(n-1)}(0)=0$
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 743  ChangeLog
Line 743  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.solve_ode_cp_ps,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.solve_ode_cp_ps,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.solve_ode_cp_ps}  @subsection @code{taji_alc.solve_ode_cp_ps}
 @findex taji_alc.solve_ode_cp_ps  @findex taji_alc.solve_ode_cp_ps
   
 @table @t  @table @t
 @item taji_alc.solve_ode_cp_ps(@var{poly},@var{var},@var{exppoly})  @item taji_alc.solve_ode_cp_ps(@var{poly},@var{var},@var{exppoly})
 :: $BM-M}?t78?t$N@~7A>oHyJ,J}Dx<0$N%3!<%7!<LdBj(B  :: 有理数係数の線形常微分方程式のコーシー問題
   
 @tex  @tex
 $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$  $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$
 @end tex  @end tex
   
 $B$NFC<l2r$r5a$a$k(B.  の特殊解を求める.
   
 $B$?$@$7(B, $BHs@F<!7A$N$_$rBP>]$H$7$F$$$k$N$G(B,  ただし, 非斉次形のみを対象としているので,
 @tex  @tex
 $f(z)\neq0$  $f(z)\neq0$
 @end tex  @end tex
 $B$H$9$k(B.  とする.
   
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $B;X?tB?9`<0%j%9%H(B  指数多項式リスト
   
 @item poly  @item poly
 $BB?9`<0(B (P$B$NFC@-B?9`<0(B)  多項式 (Pの特性多項式)
   
 $B$^$?$O(B (P$B$NFC@-B?9`<0$r(BQ$B>e$G4{LsJ,2r$7$?(B) [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (Pの特性多項式をQ上で既約分解した) [[因子,重複度],...] なるリスト
   
 @item var  @item var
 $BITDj85(B ($B4X?t$NFHN)JQ?t(B)  不定元 (関数の独立変数)
   
 @item exppoly  @item exppoly
 f(z)$B$N;X?tB?9`<0%j%9%H(B  f(z)の指数多項式リスト
   
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$rM-M}?t78?tB?9`<0$GJV$9(B.  case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
   
 case 1 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$r@0?t78?t2=%j%9%H$GJV$9(B.  case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
   
 default : case 0  default : case 0
   
 @item switch2  @item switch2
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B%3!<%7!<LdBj$NFC<l2r$rJV$9(B.  case 0 : コーシー問題の特殊解を返す.
   
 case 1 : $B4JC1$J7A$NFC<l2r$rJV$9(B.  case 1 : 簡単な形の特殊解を返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item $BJQ?t$O(B2$B<oN`I,MW(B($BFC@-B?9`<0$NJQ?t$H4X?t$NFHN)JQ?t(B).  @item 変数は2種類必要(特性多項式の変数と関数の独立変数).
 @var{poly}$B$NITDj85$H(B@var{var}$B$NITDj85$,>WFM$7$J$$$h$&Cm0U(B.  @var{poly}の不定元と@var{var}の不定元が衝突しないよう注意.
 @end itemize  @end itemize
   
 @example  @example
Line 824  x-3,[4232*z^2-4278*z-4295,97336]]]
Line 824  x-3,[4232*z^2-4278*z-4295,97336]]]
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 838  ChangeLog
Line 838  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.fbt,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.fbt,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.fbt}  @subsection @code{taji_alc.fbt}
 @findex taji_alc.fbt  @findex taji_alc.fbt
   
 @table @t  @table @t
 @item taji_alc.fbt(@var{num},@var{den},@var{var})  @item taji_alc.fbt(@var{num},@var{den},@var{var})
 :: $BM-M}4X?t(B@var{num}/@var{den}$B$,Dj$a$kBe?tE*6I=j%3%[%b%m%8!<N`$N%U!<%j%(!&%\%l%kJQ49$r9T$&(B.  :: 有理関数@var{num}/@var{den}が定める代数的局所コホモロジー類のフーリエ・ボレル変換を行う.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 [$B;X?tB?9`<0%j%9%H(B,...] $B$J$k%j%9%H(B  [指数多項式リスト,...] なるリスト
   
 @item num  @item num
 ($BM-M}4X?t$NJ,;R$N(B) $BB?9`<0(B  (有理関数の分子の) 多項式
 @item den  @item den
 ($BM-M}4X?t$NJ,Jl$N(B) $BB?9`<0(B  (有理関数の分母の) 多項式
   
 $B$^$?$O(B ($BM-M}4X?t$NJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?(B)  [[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B  または (有理関数の分母をQ上で既約分解した)  [[因子,重複度],...] なるリスト
 @item var  @item var
 $BITDj85(B ($BA|$NFHN)JQ?t(B)  不定元 (像の独立変数)
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$rM-M}?t78?tB?9`<0$GJV$9(B.  case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
   
 case 1 : $B;X?tB?9`<0%j%9%H$N(B2$BHVL\$N@.J,$r@0?t78?t2=%j%9%H$GJV$9(B.  case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item $BJQ?t$O(B2$B<oN`I,MW(B($BBe?tE*6I=j%3%[%b%m%8!<N`$NJQ?t$HA|$NFHN)JQ?t(B).  @item 変数は2種類必要(代数的局所コホモロジー類の変数と像の独立変数).
 @var{num/den}$B$NITDj85$H(B@var{var}$B$NITDj85$,>WFM$7$J$$$h$&Cm0U(B.  @var{num/den}の不定元と@var{var}の不定元が衝突しないよう注意.
 @item taji_alc.fbt()$B$O(B, Res(Rat*exp(z*x))$B$J$k7A$NM-M}7A4X?t$NN1?t$r5a$a$k(B.  @item taji_alc.fbt()は, Res(Rat*exp(z*x))なる形の有理形関数の留数を求める.
 $B$3$NM-M}7A4X?t$NN1?t$O;X?tB?9`<0$H$J$k$?$a(B, $B;X?tB?9`<0%j%9%H$GJV$9(B.  この有理形関数の留数は指数多項式となるため, 指数多項式リストで返す.
 @item $BFbIt$N%"%k%4%j%:%`$O(Btaji_alc.residue()$B$H$[$\F1$8$G$"$j(B, $B<B:]$K(Btaji_alc.residue()$B$r8F$S=P$7$F7W;;$r9T$C$F$$$k(B.  @item 内部のアルゴリズムはtaji_alc.residue()とほぼ同じであり, 実際にtaji_alc.residue()を呼び出して計算を行っている.
 @end itemize  @end itemize
   
 @example  @example
Line 884  default : case 0
Line 884  default : case 0
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @ref{taji_alc.residue, taji_alc.invfbt}  @ref{taji_alc.residue, taji_alc.invfbt}
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 899  ChangeLog
Line 899  ChangeLog
   
 @page  @page
 @comment ****************************************************************  @comment ****************************************************************
 @node taji_alc.inv,,, 1$BJQ?tBe?tE*6I=j%3%[%b%m%8!<N`MQ$N4X?t(B  @node taji_alc.inv,,, 1変数代数的局所コホモロジー類用の関数
 @subsection @code{taji_alc.invfbt}  @subsection @code{taji_alc.invfbt}
 @findex taji_alc.invfbt  @findex taji_alc.invfbt
   
 @table @t  @table @t
 @item taji_alc.invfbt(@var{exppoly},@var{var})  @item taji_alc.invfbt(@var{exppoly},@var{var})
 :: $B;X?tB?9`<0$N5U%U!<%j%(!&%\%l%kJQ49$r9T$&(B.  :: 指数多項式の逆フーリエ・ボレル変換を行う.
 @end table  @end table
   
 @table @var  @table @var
 @item return  @item return
 $BM-M}4X?t(B  有理関数
   
 @item exppoly  @item exppoly
 $B;X?tB?9`<0%j%9%H(B  指数多項式リスト
 @item var  @item var
 $BITDj85(B ($B;X?tB?9`<0$NFHN)JQ?t(B)  不定元 (指数多項式の独立変数)
   
 @item switch  @item switch
 $B%*%W%7%g%s;XDj(B  オプション指定
   
 case 0 : $BM-M}4X?t$GJV$9(B.  case 0 : 有理関数で返す.
   
 case 1 : $BM-M}4X?t$r(B[$BJ,;R(B,$BJ,Jl$r(BQ$B>e$G4{LsJ,2r$7$?%j%9%H(B]$B$J$k%j%9%H$GJV$9(B.  case 1 : 有理関数を[分子,分母をQ上で既約分解したリスト]なるリストで返す.
   
 default : case 0  default : case 0
 @end table  @end table
   
 @itemize @bullet  @itemize @bullet
 @item $BJQ?t$O(B2$B<oN`I,MW(B($BBe?tE*?t$N:G>.B?9`<0$NJQ?t$H;X?tB?9`<0$NFHN)JQ?t(B).  @item 変数は2種類必要(代数的数の最小多項式の変数と指数多項式の独立変数).
 $B>WFM$7$J$$$h$&Cm0U(B.  衝突しないよう注意.
 @item taji_alc.invfbt()$B$O(B, exppoly$B$r(B, Res(Rat*exp(z*x))$B$J$k7A$NN1?tI=<($KJQ49$7(B, Rat$BItJ,$rJV$9(B.  @item taji_alc.invfbt()は, exppolyを, Res(Rat*exp(z*x))なる形の留数表示に変換し, Rat部分を返す.
 @item taji_alc.fbt()$B$N5U1i;;$G$"$k(B.  @item taji_alc.fbt()の逆演算である.
 @end itemize  @end itemize
   
 @example  @example
Line 947  ch=1);
Line 947  ch=1);
 @end example  @end example
   
 @table @t  @table @t
 @item $B;2>H(B  @item 参照
 @ref{taji_alc.fbt}  @ref{taji_alc.fbt}
 @end table  @end table
   
 @comment --- ChangeLog $B$r=q$/(B. $BF05!(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B  @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
 @comment --- openxm $B$N30It$+$i$N4sM?$b=R$Y$k(B. Credit.  @comment --- openxm の外部からの寄与も述べる. Credit.
 @noindent  @noindent
 ChangeLog  ChangeLog
 @itemize @bullet  @itemize @bullet
Line 964  ChangeLog
Line 964  ChangeLog
   
   
   
 @comment --- $B$*$^$8$J$$(B ---  @comment --- おまじない ---
 @node Index,,, Top  @node Index,,, Top
 @unnumbered Index  @unnumbered Index
 @printindex fn  @printindex fn
Line 975  ChangeLog
Line 975  ChangeLog
 @summarycontents  @summarycontents
 @contents  @contents
 @bye  @bye
 @comment --- $B$*$^$8$J$$=*$j(B ---  @comment --- おまじない終り ---

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>