Annotation of OpenXM/src/asir-contrib/packages/doc/taji_alc/taji_alc-ja.texi, Revision 1.2
1.1 takayama 1: \input texinfo
2: @iftex
3: @catcode`@#=6
4: @def@fref#1{@xrefX[#1,,@code{#1},,,]}
5: @def@b#1{{@bf@gt #1}}
6: @catcode`@#=@other
7: @end iftex
8: @overfullrule=0pt
9: @c -*-texinfo-*-
1.2 ! takayama 10: @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 $
1.1 takayama 11: @comment %**start of header
1.2 ! takayama 12: @comment --- おまじない終り ---
1.1 takayama 13:
1.2 ! takayama 14: @comment --- GNU info ファイルの名前 --- euc code で記述すること.
1.1 takayama 15: @setfilename asir-contrib-taji_alc_ja
16:
1.2 ! takayama 17: @comment --- タイトル ---
! 18: @settitle 1変数代数的局所コホモロジー類用パッケージ taji_alc
1.1 takayama 19:
20: @comment %**end of header
21: @comment %@setchapternewpage odd
22:
1.2 ! takayama 23: @comment --- おまじない ---
1.1 takayama 24: @ifinfo
25: @macro fref{name}
26: @ref{\name\,,@code{\name\}}
27: @end macro
28: @end ifinfo
29:
30: @iftex
31: @comment @finalout
32: @end iftex
33:
34: @titlepage
1.2 ! takayama 35: @comment --- おまじない終り ---
1.1 takayama 36:
1.2 ! takayama 37: @comment --- タイトル, バージョン, 著者名, 著作権表示 ---
! 38: @title 1変数代数的局所コホモロジー類用パッケージ taji_alc
! 39: @subtitle 1変数代数的局所コホモロジー類用パッケージ taji_alc
! 40: @subtitle 1.0 版
! 41: @subtitle 2007 年 11 月
1.1 takayama 42:
1.2 ! takayama 43: @author 庄司卓夢, 田島慎一
1.1 takayama 44: @page
45: @vskip 0pt plus 1filll
46: Copyright @copyright{} Takumu Shoji, Shinichi Tajima.
47: 2007. All rights reserved. Licensed by GPL.
48: @end titlepage
49:
1.2 ! takayama 50: @comment --- おまじない ---
1.1 takayama 51: @synindex vr fn
1.2 ! takayama 52: @comment --- おまじない終り ---
1.1 takayama 53:
1.2 ! takayama 54: @comment --- @node は GNU info, HTML 用 ---
! 55: @comment --- @node の引数は node-name, next, previous, up ---
1.1 takayama 56: @node Top,, (dir), (dir)
57:
1.2 ! takayama 58: @comment --- @menu は GNU info, HTML 用 ---
! 59: @comment --- chapter 名を正確に並べる ---
! 60: @comment --- この文書では chapter XYZ, Chapter Index がある.
! 61: @comment --- Chapter XYZ には section XYZについて, section XYZに関する関数がある.
1.1 takayama 62: @menu
1.2 ! takayama 63: * 1変数代数的局所コホモロジー類::
1.1 takayama 64: * Index::
65: @end menu
66:
1.2 ! takayama 67: @comment --- chapter の開始 ---
! 68: @comment --- 親 chapter 名を正確に. 親がない場合は Top ---
! 69: @node 1変数代数的局所コホモロジー類,,, Top
! 70: @chapter 1変数代数的局所コホモロジー類
1.1 takayama 71:
1.2 ! takayama 72: @comment --- section 名を正確に並べる. ---
1.1 takayama 73: @menu
1.2 ! takayama 74: * 1変数代数的局所コホモロジー類用のパッケージ taji_alc について::
! 75: * 1変数代数的局所コホモロジー類用の関数::
1.1 takayama 76: @end menu
77:
1.2 ! takayama 78: @comment --- section ``XYZについて'' の開始 --- section XYZについての親は chapter XYZ
! 79: @node 1変数代数的局所コホモロジー類用のパッケージ taji_alc について,,, 1変数代数的局所コホモロジー類
! 80: @section 1変数代数的局所コホモロジー類用のパッケージ taji_alc について
! 81:
! 82: @comment --- 書体指定について ---
! 83: @comment --- @code{} はタイプライタ体表示 ---
! 84: @comment --- @var{} は斜字体表示 ---
! 85: @comment --- @b{} はボールド表示 ---
! 86: @comment --- @samp{} はファイル名などの表示 ---
! 87:
! 88: この説明書では
! 89: 1変数代数的局所コホモロジー類用のパッケージ taji_alc について説明する.
! 90: 数学的解説や背景については, 解説記事
! 91: ``1変数代数的局所コホモロジー類用に対する Risa/Asir 用パッケージ taji_alc''
1.1 takayama 92: (Risa/Asir Journal (2007))
1.2 ! takayama 93: およびその参考文献を参照.
1.1 takayama 94:
95:
1.2 ! takayama 96: @comment --- section ``実験的関数'' の開始 ---
! 97: @node 1変数代数的局所コホモロジー類用の関数,,, 1変数代数的局所コホモロジー類
! 98: @section 1変数代数的局所コホモロジー類用の関数
1.1 takayama 99:
1.2 ! takayama 100: @comment --- section ``実験的関数'' の subsection xyz_abc
! 101: @comment --- subsection xyz_pqr xyz_stu がある.
1.1 takayama 102: @menu
103: * taji_alc.cpfd::
104: * taji_alc.snoether::
105: * taji_alc.laurent_expansion::
106: * taji_alc.residue::
107: * taji_alc.invpow::
108: * taji_alc.rem_formula::
109: * taji_alc.solve_ode_cp::
110: * taji_alc.solve_ode_cp_ps::
111: * taji_alc.fbt::
112: * taji_alc.inv::
113: @end menu
114:
1.2 ! takayama 115: 本セクションの関数を呼び出すには,
1.1 takayama 116: @example
117: import("taji_alc.rr")$
118: @end example
1.2 ! takayama 119: を実行してプログラムをロードする.
1.1 takayama 120:
121:
122: @comment ****************************************************************
1.2 ! takayama 123: @node taji_alc.cpfd,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 124: @subsection @code{taji_alc.cpfd}
125: @findex taji_alc.cpfd
126:
127: @table @t
128: @item taji_alc.cpfd(@var{num},@var{den})
1.2 ! takayama 129: :: 有理関数@var{num}/@var{den}の部分分数分解を求める.
1.1 takayama 130: @end table
131:
132: @table @var
133: @item return
1.2 ! takayama 134: @var{switch}が0か1ならば, [[[分子,[分母の因子,重複度]],...],...] なるリスト.
1.1 takayama 135:
1.2 ! takayama 136: @var{switch}が10か11ならば, [[分子,[分母の因子,重複度]],...] なるリスト.
1.1 takayama 137:
138: @item num
1.2 ! takayama 139: (有理関数の分子の) 多項式
1.1 takayama 140: @item den
1.2 ! takayama 141: (有理関数の分母の) 多項式
1.1 takayama 142:
1.2 ! takayama 143: または (有理関数の分母をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 144: @item switch
1.2 ! takayama 145: オプション指定
1.1 takayama 146:
1.2 ! takayama 147: case 0 : completeな部分分数分解を返す. (分子は有理数係数多項式)
1.1 takayama 148:
1.2 ! takayama 149: case 1 : completeな部分分数分解を返す. (分子は整数係数化リスト)
1.1 takayama 150:
1.2 ! takayama 151: case 10 : 分母を冪展開しない部分分数分解を返す. (分子は有理数係数多項式)
1.1 takayama 152:
1.2 ! takayama 153: case 11 : 分母を冪展開しない部分分数分解を返す. (分子は整数係数化リスト)
1.1 takayama 154:
155: default : case 0
156: @end table
157:
158: @itemize @bullet
1.2 ! takayama 159: @item taji_alc.cpfd()は, properな有理関数を対象とする.
! 160: 入力値がproperでない場合でも正常に動作するが, 多項式として出てくる部分は表示しない.
! 161: @item 部分分数分解は, 冪展開をするcompleteなタイプと, 冪展開をしないタイプの2つのタイプがある.
! 162: taji_alc.cpfd()で採用しているアルゴリズムでは, 前者が先に求まる.
! 163: 後者は, 前者のデータをホーナー法で足し上げて求める.
! 164: @item @var{den}は, リストでの入力が望ましい.
! 165: (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
! 166: ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
! 167: 入力値はユーザ側が責任をもつ.
1.1 takayama 168: @end itemize
169:
170: @example
171: [235] taji_alc.cpfd(x^3-x-1,x^4+2*x^3+2*x^2+2*x+1);
172: [[[1/2*x-1,[x^2+1,1]]],[[-1/2,[x+1,2]],[1/2,[x+1,1]]]]
173: [236] taji_alc.cpfd(x^3-x-1,x^4+2*x^3+2*x^2+2*x+1|switch=1);
174: [[[[x-2,2],[x^2+1,1]]],[[[-1,2],[x+1,2]],[[1,2],[x+1,1]]]]
175: [237] taji_alc.cpfd(x^3-x-1,x^4+2*x^3+2*x^2+2*x+1|switch=10);
176: [[1/2*x-1,[x^2+1,1]],[1/2*x,[x+1,2]]]
177: [238] taji_alc.cpfd(x^3-x-1,x^4+2*x^3+2*x^2+2*x+1|switch=11);
178: [[[x-2,2],[x^2+1,1]],[[x,2],[x+1,2]]]
179: @end example
180:
181: @table @t
1.2 ! takayama 182: @item 参照
1.1 takayama 183: @end table
184:
1.2 ! takayama 185: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 186: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 187: @noindent
188: ChangeLog
189: @itemize @bullet
190: @end itemize
191: @comment ****************************************************************
192:
193:
194: @page
195: @comment ****************************************************************
1.2 ! takayama 196: @node taji_alc.snoether,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 197: @subsection @code{taji_alc.snoether}
198: @findex taji_alc.snoether
199:
200: @table @t
201: @item taji_alc.snoether(@var{num},@var{den})
1.2 ! takayama 202: :: 有理関数@var{num}/@var{den}が定める代数的局所コホモロジー類のネーター作用素を求める.
1.1 takayama 203: @end table
204:
205: @table @var
206: @item return
1.2 ! takayama 207: [[因子,ネーター作用素],...] なるリスト.
1.1 takayama 208:
1.2 ! takayama 209: ネーター作用素は, 係数を高階の部分から降順に並べたリスト
1.1 takayama 210:
211: @item num
1.2 ! takayama 212: (有理関数の分子の)多項式
1.1 takayama 213: @item den
1.2 ! takayama 214: (有理関数の分母の)多項式
1.1 takayama 215:
1.2 ! takayama 216: または (有理関数の分母をQ上で既約分解した) [[因子,重複度],...] なるリスト.
1.1 takayama 217: @item switch
1.2 ! takayama 218: オプション指定
1.1 takayama 219:
1.2 ! takayama 220: case 0 : ネーター作用素を [有理数係数多項式,...] なるリストで返す.
1.1 takayama 221:
1.2 ! takayama 222: case 1 : ネーター作用素を [整数係数化リスト,...] なるリストで返す.
1.1 takayama 223:
1.2 ! takayama 224: case 10 : ネーター作用素を [[整数係数多項式,...],整数] なるリストで返す.
1.1 takayama 225:
1.2 ! takayama 226: case 20 : ネーター作用素を [[整数係数化リスト,...],整数] なるリストで返す.
1.1 takayama 227:
228: default : case 0
229: @end table
230:
231: @itemize @bullet
1.2 ! takayama 232: @item taji_alc.snoether()は, @var{den}をQ上で既約分解し,
! 233: 各因子に対応するネーター作用素を返す.
! 234: @item @var{den}は, リストでの入力が望ましい.
! 235: (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
! 236: ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
! 237: 入力値はユーザ側が責任をもつ.
! 238: @item 戻り値の型は@var{switch}で選択できる.
1.1 takayama 239:
1.2 ! takayama 240: case 10は, ネーター作用素の各係数全体を通分し, その分母部分と階乗の積をリストで分けた表現である.
! 241: わかりやすいが, 通分値と係数部分とで約分できる部分がある(特に高階の部分に多い)ので, 冗長性をもっている.
1.1 takayama 242:
1.2 ! takayama 243: case 20は, 階乗の部分で全体をくくり(リストで分け), ネーター作用素の各係数を個別に通分しリスト化する.
! 244: 階乗の部分と係数部分とで約分できる部分がある(特に低階の部分に多い)ので,
! 245: 冗長と言えなくもない(case 10よりはまし)が, 数学的な構造が綺麗に見える表現である.
1.1 takayama 246: @end itemize
247:
248: @example
249: [296] taji_alc.snoether(1,[[x^3-x-1,3]]);
250: [[x^3-x-1,[9/529*x^2-27/1058*x+11/1058,-81/529*x^2-9/529*x+135/529,-49
251: 05/12167*x^2+4563/12167*x+3270/12167]]]
252: [299] taji_alc.snoether(1,[[x^3-x-1,3]]|switch=1);
253: [[x^3-x-1,[[18*x^2-27*x+11,1058],[-81*x^2-9*x+135,529],[-4905*x^2+4563
254: *x+3270,12167]]]]
255: [297] taji_alc.snoether(1,[[x^3-x-1,3]]|switch=10);
256: [[x^3-x-1,[[414*x^2-621*x+253,-3726*x^2-414*x+6210,-9810*x^2+9126*x+65
257: 40],24334]]]
258: [298] taji_alc.snoether(1,[[x^3-x-1,3]]|switch=20);
259: [[x^3-x-1,[[[18*x^2-27*x+11,529],[-162*x^2-18*x+270,529],[-9810*x^2+91
260: 26*x+6540,12167]],2]]]
261:
262: [241] taji_alc.snoether(x^3+1,x^18-2*x^14+x^10-x^8+2*x^4-1|switch=10);
263: [[x^4+x^3+x^2+x+1,[[-2*x^2-x-2],50]],[x^4-x^3+x^2-x+1,[[-2*x^3+4*x^2-x
264: -2],50]],[x^2+1,[[-x+1,8*x+5],32]],[x+1,[[-6,-39],320]],[x-1,[[2,-24,6
265: 7],320]]]
266: @end example
267:
268: @table @t
1.2 ! takayama 269: @item 参照
1.1 takayama 270: @end table
271:
1.2 ! takayama 272: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 273: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 274: @noindent
275: ChangeLog
276: @itemize @bullet
277: @end itemize
278: @comment ****************************************************************
279:
280:
281: @page
282: @comment ****************************************************************
1.2 ! takayama 283: @node taji_alc.laurent_expansion,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 284: @subsection @code{taji_alc.laurent_expansion}
285: @findex taji_alc.laurent_expansion
286:
287: @table @t
288: @item taji_alc.laurent_expansion(@var{num},@var{den})
1.2 ! takayama 289: :: 有理関数@var{num}/@var{den}の極におけるローラン展開の主要部の係数を求める.
1.1 takayama 290: @end table
291:
292: @table @var
293: @item return
1.2 ! takayama 294: [[因子,ローラン展開の係数],...] なるリスト.
1.1 takayama 295:
1.2 ! takayama 296: ローラン展開の係数は, 高位の係数から順に並べたリスト.
1.1 takayama 297:
298: @item num
1.2 ! takayama 299: (有理関数の分子の)多項式
1.1 takayama 300: @item den
1.2 ! takayama 301: (有理関数の分母の)多項式
1.1 takayama 302:
1.2 ! takayama 303: または (有理関数の分母をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 304:
305: @item switch
1.2 ! takayama 306: オプション指定
1.1 takayama 307:
1.2 ! takayama 308: case 0 : ローラン展開の係数を [有理数係数多項式,...] なるリストで返す.
1.1 takayama 309:
1.2 ! takayama 310: case 1 : ローラン展開の係数を [整数係数化リスト,...] なるリストで返す.
1.1 takayama 311:
1.2 ! takayama 312: case 10 : ローラン展開の係数を [[整数係数多項式,...],整数] なるリストで返す.
1.1 takayama 313:
1.2 ! takayama 314: case 20 : ローラン展開の係数を [[整数係数化リスト,...],整数] なるリストで返す.
1.1 takayama 315:
316: default : case 0
317: @end table
318:
319: @itemize @bullet
1.2 ! takayama 320: @item taji_alc.laurent_expansion()は, taji_alc.snoether()を使って, ローラン展開の係数を求める.
! 321: @item taji_alc.laurent_expansion()では,
! 322: C上の1点に注目するのではなく, Q上での既約因子自体に注目してローラン展開の係数を求める.
! 323: 戻り値の係数リストの各成分は, その因子の全ての零点が共通に満たすローラン展開の係数多項式である.
! 324: 従って, 1点ごとのローラン展開の係数をさらに求めたい場合には,
! 325: 求めたローラン展開の係数多項式に因子の零点(即ち特異点)の値を代入する必要がある.
1.1 takayama 326: @end itemize
327:
328: @example
329: [354] taji_alc.laurent_expansion(x,(x-1)^3);
330: [[x-1,[1,1,0]]]
331: [356] taji_alc.laurent_expansion(x^5+x^4+x^3+x^2+x+1,(x^4+1)^3);
332: [[x^4+1,[1/64*x^2+1/64*x,1/16*x^3+1/16*x^2-3/128*x-5/128,-5/128*x^3-1/
333: 8*x^2-3/16*x]]]
334: @end example
335:
336: @table @t
1.2 ! takayama 337: @item 参照
1.1 takayama 338: @ref{taji_alc.snoether}
339: @end table
340:
1.2 ! takayama 341: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 342: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 343: @noindent
344: ChangeLog
345: @itemize @bullet
346: @end itemize
347: @comment ****************************************************************
348:
349:
350: @page
351: @comment ****************************************************************
1.2 ! takayama 352: @node taji_alc.residue,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 353: @subsection @code{taji_alc.residue}
354: @findex taji_alc.residue
355:
356: @table @t
357: @item taji_alc.residue(@var{num},@var{den})
1.2 ! takayama 358: :: 有理関数@var{num}/@var{den}の極における留数を求める.
1.1 takayama 359: @end table
360:
361: @table @var
362: @item return
1.2 ! takayama 363: [[因子,留数],...] なるリスト
1.1 takayama 364:
365: @item num
1.2 ! takayama 366: (有理関数の分子の) 多項式
1.1 takayama 367: @item den
1.2 ! takayama 368: (有理関数の分母の) 多項式
1.1 takayama 369:
1.2 ! takayama 370: または (有理関数の分母をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 371: @item switch
1.2 ! takayama 372: オプション指定
1.1 takayama 373:
1.2 ! takayama 374: case 0 : 留数を有理数係数多項式で返す.
1.1 takayama 375:
1.2 ! takayama 376: case 1 : 留数を整数係数化リストで返す.
1.1 takayama 377:
378: default : case 0
379:
380: @item pole
1.2 ! takayama 381: オプション指定
1.1 takayama 382:
1.2 ! takayama 383: [因子,...] なるオプションリスト
1.1 takayama 384: @end table
385:
386: @itemize @bullet
1.2 ! takayama 387: @item taji_alc.residue()は, @var{den}をQ上で既約分解し, 各因子の零点(即ち有理関数の極)における留数を返す.
! 388: @item オプションで@var{pole}を指定すればその因子のみの留数を返す. 指定が不適当だと0を返す.
! 389: @item taji_alc.residue()で採用しているアルゴリズムでは,
! 390: C上の1点に注目するのではなく, Q上での既約因子自体に注目して留数を求める.
! 391: 戻り値の留数は, その因子の全ての零点が共通に満たす留数多項式である.
! 392: 従って, 1点ごとの留数値をさらに求めたい場合には,
! 393: 求めた留数多項式に因子の零点(即ち特異点)の値を代入する必要がある.
1.1 takayama 394:
395: @example
396: [219] taji_alc.residue(1,x^4+1);
397: [[x^4+1,-1/4*x]]
398: @end example
399:
1.2 ! takayama 400: この例で言うと, 求めた留数多項式-1/4*xに, x^4+1の(4つある)零点をそれぞれ代入したものが個別の留数値である.
! 401: @item @var{den}は, リストでの入力が望ましい.
! 402: (多項式で入力すると, 簡約化の処理が生じるため重くなる.)
! 403: ただしその場合には, 既約チェック, 有理式の約分, 整数係数化は行わないので注意する.
! 404: 入力値はユーザ側が責任をもつ.
1.1 takayama 405: @end itemize
406:
407: @example
408: [221] taji_alc.residue(x^8,[[x^3-x-1,3]]);
409: [[x^3-x-1,-2243/12167*x^2+2801/12167*x+5551/12167]]
410: [222] taji_alc.residue(x^2+x,[[x+1,3],[x-1,3],[x^2+3*x-1,2]]);
411: [[x^2+3*x-1,-284/4563*x-311/1521],[x-1,89/432],[x+1,7/432]]
412: [223] taji_alc.residue(x^2+x,[[x+1,3],[x-1,3],[x^2+3*x-1,2]]|switch=1)
413: ;
414: [[x^2+3*x-1,[-284*x-933,4563]],[x-1,[89,432]],[x+1,[7,432]]]
415: [234] taji_alc.residue(x^2+x,[[x+1,3],[x-1,3],[x^2+3*x-1,2]]|switch=1,
416: pole=[x+1]);
417: [[x+1,[7,432]]]
418: [225] taji_alc.residue(x^3+1,x^18-2*x^14+x^10-x^8+2*x^4-1);
419: [[x^4+x^3+x^2+x+1,-1/25*x^2-1/50*x-1/25],[x^4-x^3+x^2-x+1,-1/25*x^3+2/
420: 25*x^2-1/50*x-1/25],[x^2+1,1/4*x+5/32],[x+1,-39/320],[x-1,67/320]]
421: @end example
422:
423: @table @t
1.2 ! takayama 424: @item 参照
1.1 takayama 425: @end table
426:
1.2 ! takayama 427: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 428: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 429: @noindent
430: ChangeLog
431: @itemize @bullet
432: @end itemize
433: @comment ****************************************************************
434:
435:
436: @page
437: @comment ****************************************************************
1.2 ! takayama 438: @node taji_alc.invpow,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 439: @subsection @code{taji_alc.invpow}
440: @findex taji_alc.invpow
441:
442: @table @t
443: @item taji_alc.invpow(@var{poly},@var{f},@var{m})
1.2 ! takayama 444: :: 剰余体Q[x]/<@var{f}>上での@var{poly}の逆元の@var{m}乗を求める.
1.1 takayama 445: @end table
446:
447: @table @var
448: @item return
1.2 ! takayama 449: 逆冪
1.1 takayama 450:
451: @item poly
1.2 ! takayama 452: 多項式
1.1 takayama 453: @item f
1.2 ! takayama 454: Q上で既約な多項式
1.1 takayama 455: @item m
1.2 ! takayama 456: 自然数
1.1 takayama 457: @item switch
1.2 ! takayama 458: オプション指定
1.1 takayama 459:
1.2 ! takayama 460: case 0 : 逆冪を有理数係数多項式で返す.
1.1 takayama 461:
1.2 ! takayama 462: case 1 : 逆冪を整数係数化リストで返す.
1.1 takayama 463:
464: default : case 0
465: @end table
466:
467: @itemize @bullet
1.2 ! takayama 468: @item @var{poly}と@var{f}は互いに素でなければならない.
! 469: @item アルゴリズムの骨格は繰り返し2乗法である. そこに最小多項式の理論を応用して高速化している.
1.1 takayama 470: @end itemize
471:
472: @example
473: [236] taji_alc.invpow(3*x^2-1,x^3-x-1,1);
474: -6/23*x^2+9/23*x+4/23
475: [237] taji_alc.invpow(3*x^2-1,x^3-x-1,1|switch=1);
476: [-6*x^2+9*x+4,23]
477: [238] taji_alc.invpow(3*x^2-1,x^3-x-1,30|switch=1);
478: [1857324483*x^2-2100154824*x-477264412,266635235464391245607]
479: @end example
480:
481: @table @t
1.2 ! takayama 482: @item 参照
1.1 takayama 483: @end table
484:
1.2 ! takayama 485: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 486: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 487: @noindent
488: ChangeLog
489: @itemize @bullet
490: @end itemize
491: @comment ****************************************************************
492:
493:
494: @page
495: @comment ****************************************************************
1.2 ! takayama 496: @node taji_alc.rem_formula,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 497: @subsection @code{taji_alc.rem_formula}
498: @findex taji_alc.rem_formula
499:
500: @table @t
501: @item taji_alc.rem_formula(@var{polylist})
1.2 ! takayama 502: :: 多項式f(x)を与えたときの剰余公式を求める.
1.1 takayama 503: @end table
504:
505: @table @var
506: @item return
1.2 ! takayama 507: @var{switch} および 説明文を参照
1.1 takayama 508:
509: @item polylist
1.2 ! takayama 510: f(x)をQ上で既約分解した [[因子,重複度,零点の記号],...] なるリスト
1.1 takayama 511:
512: @item switch
1.2 ! takayama 513: オプション指定
1.1 takayama 514:
1.2 ! takayama 515: case 0 : xの冪で整理し, リストで返す.
1.1 takayama 516:
1.2 ! takayama 517: case 10 : f(x)の冪で整理し, リストで返す. (一因子の場合のみ対応)
1.1 takayama 518:
1.2 ! takayama 519: case 20 : xの冪で整理し, symbolicな表現で返す.
1.1 takayama 520:
521: default : case 0
522: @end table
523:
524: @itemize @bullet
1.2 ! takayama 525: @item アルゴリズムは, エルミートの補間剰余を用いている.
! 526: @item 剰余公式の表現方法はいくつか考えられるため, @var{switch}で選択式とした.
! 527: @item @var{switch}=0 の戻り値の見方を述べる. 例として, f(x)=f1(x)^m1*f2(x)^m2を考える.
! 528: 入力は [[f1(x),m1,z1],[f2(x),m2,z2]] となる. そのとき戻り値は,
1.1 takayama 529:
530: [r_{f1}(x,z1),r_{f2}(x,z2)]
531:
1.2 ! takayama 532: なるリストで返される. これは, 剰余公式が
1.1 takayama 533:
534: @tex
535: $r(x)=r_{f1}(x,z1)+r_{f2}(x,z2)$
536: @end tex
537:
1.2 ! takayama 538: なる形で与えられることを意味している.
! 539: 各成分のr_{fi}(x,zi)は,
1.1 takayama 540:
1.2 ! takayama 541: [p^(mi-1)(zi)の係数となるxとziの多項式,...,p^(0)(zi)の係数となるxとziの多項式]
1.1 takayama 542:
1.2 ! takayama 543: なるリストである.
! 544: @item @var{switch}=10 の戻り値の見方を述べる. 例として, f(x)=f1(x)^mを考える.
! 545: 入力は [[f1(x),m,z]] となる. そのとき戻り値は,
1.1 takayama 546:
547: [r_(m-1)(x,z),...,r_0(x,z)]
548:
1.2 ! takayama 549: なるリストで返される. 各成分は, 剰余公式を
1.1 takayama 550:
551: @tex
552: $r(x)=r_{m-1}(x,z)f_1(x)^{m-1}+\cdots+r_0(x,z)$
553: @end tex
554:
1.2 ! takayama 555: のようにf1(x)の冪で展開したときの各係数を意味している.
! 556: 各成分のr_{i}(x,z)は,
1.1 takayama 557:
1.2 ! takayama 558: [p^(m-1)(z)の係数となるxとzの多項式,...,p^(0)(z)の係数となるxとzの多項式]
1.1 takayama 559:
1.2 ! takayama 560: なるリストである.
! 561: @item @var{switch}=20 の戻り値の見方を述べる.
! 562: symbolicな出力のp^(m)(z)は, p(x)のm階の導関数にzを代入した値という意味である.
! 563: @item 戻り値は, 与えた因子の全ての零点を代入したものの和として見る.
! 564: これは因子が2次以上の多項式の場合に関係してくる. 例えば,
1.1 takayama 565:
566: @example
567: [228] taji_alc.rem_formula([[x^2+1,1,z]]);
568: [[-1/2*z*x+1/2]]
569: @end example
570:
1.2 ! takayama 571: の正しい見方は, x^2+1の零点をa1,a2とおいたときに, zにa1とa2を代入した,
1.1 takayama 572:
573: r(x)=(-1/2*a1*x+1/2)+(-1/2*a2*x+1/2)
1.2 ! takayama 574: である. しかし出力では, 零点の和の部分を便宜上省略して返す.
1.1 takayama 575: @end itemize
576:
577: @example
578: [583] taji_alc.rem_formula([[x-1,1,z1],[x-2,1,z2]]);
579: [[-x+2],[x-1]]
580: [584] taji_alc.rem_formula([[x-1,1,z1],[x-2,1,z2]]|switch=20);
581: (-p^(0)(z1)+p^(0)(z2))*x+2*p^(0)(z1)-p^(0)(z2)
582:
583: [587] taji_alc.rem_formula([[x-1,2,z1]]);
584: [[x-1,1]]
585: [588] taji_alc.rem_formula([[x-1,2,z1]]|switch=20);
586: p^(1)(z1)*x-p^(1)(z1)+p^(0)(z1)
587:
588: [494] taji_alc.rem_formula([[x-1,3,z1]]|switch=20);
589: 1/2*p^(2)(z1)*x^2+(-p^(2)(z1)+p^(1)(z1))*x+1/2*p^(2)(z1)-p^(1)(z1)+p^(
590: 0)(z1)
591:
592: [229] taji_alc.rem_formula([[x+1,2,z1],[x^3-x-1,1,z2]]);
593: [[-x^4-x^3+x^2+2*x+1,-2*x^4-3*x^3+2*x^2+5*x+3],[(-1/23*z2^2-10/23*z2+1
594: 6/23)*x^4+(-12/23*z2^2-5/23*z2+31/23)*x^3+(-5/23*z2^2+19/23*z2-12/23)*
595: x^2+(22/23*z2^2+13/23*z2-53/23)*x+16/23*z2^2-1/23*z2-26/23]]
596: [230] taji_alc.rem_formula([[x+1,2,z1],[x^3-x-1,1,z2]]|switch=20);
597: (-1/23*p^(0)(z2)*z2^2-10/23*p^(0)(z2)*z2-2*p^(0)(z1)+16/23*p^(0)(z2)-p
598: ^(1)(z1))*x^4+(-12/23*p^(0)(z2)*z2^2-5/23*p^(0)(z2)*z2-3*p^(0)(z1)+31/
599: 23*p^(0)(z2)-p^(1)(z1))*x^3+(-5/23*p^(0)(z2)*z2^2+19/23*p^(0)(z2)*z2+2
600: *p^(0)(z1)-12/23*p^(0)(z2)+p^(1)(z1))*x^2+(22/23*p^(0)(z2)*z2^2+13/23*
601: p^(0)(z2)*z2+5*p^(0)(z1)-53/23*p^(0)(z2)+2*p^(1)(z1))*x+16/23*p^(0)(z2
602: )*z2^2-1/23*p^(0)(z2)*z2+3*p^(0)(z1)-26/23*p^(0)(z2)+p^(1)(z1)
603:
604: [231] taji_alc.rem_formula([[x^3-x-1,2,z]]|switch=10);
605: [[[(3/23*z^2-4/23)*x^2+(-1/23*z+3/23)*x-4/23*z^2+3/23*z+4/23,(162/529*
606: z^2-174/529*z-108/529)*x^2+(-105/529*z^2+54/529*z+70/529)*x-108/529*z^
607: 2+116/529*z+72/529],[(-6/23*z^2+9/23*z+4/23)*x^2+(9/23*z^2-2/23*z-6/23
608: )*x+4/23*z^2-6/23*z+5/23]]]
609: @end example
610:
611: @table @t
1.2 ! takayama 612: @item 参照
1.1 takayama 613: @end table
614:
1.2 ! takayama 615: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 616: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 617: @noindent
618: ChangeLog
619: @itemize @bullet
620: @end itemize
621: @comment ****************************************************************
622:
623:
624: @page
625: @comment ****************************************************************
1.2 ! takayama 626: @node taji_alc.solve_ode_cp,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 627: @subsection @code{taji_alc.solve_ode_cp}
628: @findex taji_alc.solve_ode_cp
629:
630: @table @t
631: @item taji_alc.solve_ode_cp(@var{poly},@var{var},@var{exppoly})
1.2 ! takayama 632: :: 有理数係数の線形常微分方程式のコーシー問題
1.1 takayama 633:
634: @tex
635: $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$
636: @end tex
637:
1.2 ! takayama 638: の解を求める.
1.1 takayama 639:
1.2 ! takayama 640: ただし, Pはn階の有理数係数の線形常微分作用素, f(z)は指数多項式とする.
1.1 takayama 641: @end table
642:
643: @table @var
644: @item return
1.2 ! takayama 645: 2通りの表現がある.
1.1 takayama 646:
1.2 ! takayama 647: ・表現1 (コーシーデータで整理した形)
1.1 takayama 648:
1.2 ! takayama 649: コーシー問題の一般解u(z)は,
1.1 takayama 650:
651: @tex$u(z)=c_0u_0(z)+\cdots+c_{n-1}u_{n-1}(z)+v(z)$@end tex
652:
1.2 ! takayama 653: なる線形結合の形で与えられる.
1.1 takayama 654: @tex$u_0(z),\ldots,u_{n-1}(z)$@end tex
1.2 ! takayama 655: をコーシー問題の基本解,
1.1 takayama 656: @tex$v(z)$@end tex
1.2 ! takayama 657: をコーシー問題の特殊解といい,
1.1 takayama 658:
659: [u_0(z),...,u_(n-1)(z),v(z)]
660:
1.2 ! takayama 661: なるリストで返す.
! 662: 基本解と特殊解は, 指数多項式リストである.
1.1 takayama 663:
1.2 ! takayama 664: ・表現2 (指数関数で整理した形)
1.1 takayama 665:
1.2 ! takayama 666: @var{data}にコーシーデータを与えると,
! 667: コーシー問題の一般解u(z)の
1.1 takayama 668: @tex$c_0,\ldots,c_{n-1}$@end tex
1.2 ! takayama 669: のところにデータを代入し,
! 670: それを指数関数で整理し直した指数多項式リストを返す.
1.1 takayama 671:
672: @item poly
1.2 ! takayama 673: 多項式 (Pの特性多項式)
1.1 takayama 674:
1.2 ! takayama 675: または (Pの特性多項式をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 676:
677: @item var
1.2 ! takayama 678: 不定元 (関数の独立変数)
1.1 takayama 679:
680: @item exppoly
1.2 ! takayama 681: 斉次形のとき0, 非斉次形のときf(z)の指数多項式リスト.
1.1 takayama 682:
683: @item switch
1.2 ! takayama 684: オプション指定
1.1 takayama 685:
1.2 ! takayama 686: case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
1.1 takayama 687:
1.2 ! takayama 688: case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
1.1 takayama 689:
690: default : case 0
691: @item data
1.2 ! takayama 692: オプション指定
1.1 takayama 693:
1.2 ! takayama 694: コーシーデータを [c_0,...,c_(n-1)] の順に並べたリスト.
1.1 takayama 695: @end table
696:
697: @itemize @bullet
1.2 ! takayama 698: @item 解法はエルミートの方法(留数計算に帰着させる方法)を採用している.
! 699: @item 変数は2種類必要(特性多項式の変数と関数の独立変数).
! 700: @var{poly}の不定元と@var{var}の不定元が衝突しないよう注意.
! 701: @item 戻り値の特殊解
1.1 takayama 702: @tex
703: $v(z)$
704: @end tex
1.2 ! takayama 705: は, コーシー条件
1.1 takayama 706: @tex
707: $v(0)=0,\ldots,v^{(n-1)}(0)=0$
708: @end tex
1.2 ! takayama 709: を満たすコーシー問題の特殊解である.
1.1 takayama 710: @end itemize
711:
712: @example
713: [287] taji_alc.solve_ode_cp(x*(x-3)^2,z,0);
714: [[[x-3,0],[x,1]],[[x-3,-z+2/3],[x,-2/3]],[[x-3,1/3*z-1/9],[x,1/9]]]
715:
716: [289] taji_alc.solve_ode_cp((x^3-x-1)^2,z,0|switch=1);
717: [[[x^3-x-1,[(92*z+200)*x^2+(-69*z-254)*x-92*z+43,529]]],[[x^3-x-1,[(92
718: *z+420)*x^2+(-46*z-216)*x-161*z-280,529]]],[[x^3-x-1,[(-69*z-195)*x^2+
719: (23*z+327)*x+23*z+130,529]]],[[x^3-x-1,[(-161*z-270)*x^2+(69*z+290)*x+
720: 184*z+180,529]]],[[x^3-x-1,[-105*x^2+(-23*z+54)*x+69*z+70,529]]],[[x^3
721: -x-1,[(69*z+162)*x^2-174*x-92*z-108,529]]]]
722:
723: [277] taji_alc.solve_ode_cp(x^2-4,z,0);
724: [[[x+2,1/2],[x-2,1/2]],[[x+2,-1/4],[x-2,1/4]]]
725: [278] taji_alc.solve_ode_cp(x^2-4,z,0|data=[1,-1]);
726: [[x+2,3/4],[x-2,1/4]]
727: [279] taji_alc.solve_ode_cp(x^2-4,z,0|data=[c0,c1]);
728: [[x+2,1/2*c0-1/4*c1],[x-2,1/2*c0+1/4*c1]]
729: @end example
730:
731: @table @t
1.2 ! takayama 732: @item 参照
1.1 takayama 733: @end table
734:
1.2 ! takayama 735: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 736: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 737: @noindent
738: ChangeLog
739: @itemize @bullet
740: @end itemize
741: @comment ****************************************************************
742:
743:
744: @page
745: @comment ****************************************************************
1.2 ! takayama 746: @node taji_alc.solve_ode_cp_ps,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 747: @subsection @code{taji_alc.solve_ode_cp_ps}
748: @findex taji_alc.solve_ode_cp_ps
749:
750: @table @t
751: @item taji_alc.solve_ode_cp_ps(@var{poly},@var{var},@var{exppoly})
1.2 ! takayama 752: :: 有理数係数の線形常微分方程式のコーシー問題
1.1 takayama 753:
754: @tex
755: $Pu(z)=f(z)$, $u^{(0)}(0)=c_0,\ldots,u^{(n-1)}(0)=c_{n-1}$
756: @end tex
757:
1.2 ! takayama 758: の特殊解を求める.
1.1 takayama 759:
1.2 ! takayama 760: ただし, 非斉次形のみを対象としているので,
1.1 takayama 761: @tex
762: $f(z)\neq0$
763: @end tex
1.2 ! takayama 764: とする.
1.1 takayama 765:
766: @end table
767:
768: @table @var
769: @item return
1.2 ! takayama 770: 指数多項式リスト
1.1 takayama 771:
772: @item poly
1.2 ! takayama 773: 多項式 (Pの特性多項式)
1.1 takayama 774:
1.2 ! takayama 775: または (Pの特性多項式をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 776:
777: @item var
1.2 ! takayama 778: 不定元 (関数の独立変数)
1.1 takayama 779:
780: @item exppoly
1.2 ! takayama 781: f(z)の指数多項式リスト
1.1 takayama 782:
783: @item switch
1.2 ! takayama 784: オプション指定
1.1 takayama 785:
1.2 ! takayama 786: case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
1.1 takayama 787:
1.2 ! takayama 788: case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
1.1 takayama 789:
790: default : case 0
791:
792: @item switch2
1.2 ! takayama 793: オプション指定
1.1 takayama 794:
1.2 ! takayama 795: case 0 : コーシー問題の特殊解を返す.
1.1 takayama 796:
1.2 ! takayama 797: case 1 : 簡単な形の特殊解を返す.
1.1 takayama 798:
799: default : case 0
800: @end table
801:
802: @itemize @bullet
1.2 ! takayama 803: @item 変数は2種類必要(特性多項式の変数と関数の独立変数).
! 804: @var{poly}の不定元と@var{var}の不定元が衝突しないよう注意.
1.1 takayama 805: @end itemize
806:
807: @example
808: [345] taji_alc.solve_ode_cp_ps((x-2)*(x+3),z,[[x-1,1]]);
809: [[x+3,1/20],[x-1,-1/4],[x-2,1/5]]
810: [346] taji_alc.solve_ode_cp_ps((x-2)*(x+3),z,[[x-1,1]]|switch2=1);
811: [[x-1,-1/4]]
812: [347] taji_alc.solve_ode_cp_ps((x-2)*(x+3),z,[[x-2,1]]);
813: [[x+3,1/25],[x-2,1/5*z-1/25]]
814: [348] taji_alc.solve_ode_cp_ps((x-2)*(x+3),z,[[x-2,1]]|switch2=1);
815: [[x-2,1/5*z-1/25]]
816: [349] taji_alc.solve_ode_cp_ps((x-2)*(x+3),z,[[x+1,1],[x-2,1]]|switch2
817: =1);
818: [[x+1,-1/6],[x-2,1/5*z+2/75]]
819:
820: [350] taji_alc.solve_ode_cp_ps((x^3-x-1)*(x-3)^2,z,[[x-3,2],[x-1,3*z^2
821: +1]]);
822: [[x-1,[-6*z^2-36*z-119,8]],[x^3-x-1,[42291*x^2+55504*x+32313,12167]],[
823: x-3,[4232*z^2-4278*z-4295,97336]]]
824: @end example
825:
826: @table @t
1.2 ! takayama 827: @item 参照
1.1 takayama 828: @end table
829:
1.2 ! takayama 830: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 831: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 832: @noindent
833: ChangeLog
834: @itemize @bullet
835: @end itemize
836: @comment ****************************************************************
837:
838:
839: @page
840: @comment ****************************************************************
1.2 ! takayama 841: @node taji_alc.fbt,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 842: @subsection @code{taji_alc.fbt}
843: @findex taji_alc.fbt
844:
845: @table @t
846: @item taji_alc.fbt(@var{num},@var{den},@var{var})
1.2 ! takayama 847: :: 有理関数@var{num}/@var{den}が定める代数的局所コホモロジー類のフーリエ・ボレル変換を行う.
1.1 takayama 848: @end table
849:
850: @table @var
851: @item return
1.2 ! takayama 852: [指数多項式リスト,...] なるリスト
1.1 takayama 853:
854: @item num
1.2 ! takayama 855: (有理関数の分子の) 多項式
1.1 takayama 856: @item den
1.2 ! takayama 857: (有理関数の分母の) 多項式
1.1 takayama 858:
1.2 ! takayama 859: または (有理関数の分母をQ上で既約分解した) [[因子,重複度],...] なるリスト
1.1 takayama 860: @item var
1.2 ! takayama 861: 不定元 (像の独立変数)
1.1 takayama 862: @item switch
1.2 ! takayama 863: オプション指定
1.1 takayama 864:
1.2 ! takayama 865: case 0 : 指数多項式リストの2番目の成分を有理数係数多項式で返す.
1.1 takayama 866:
1.2 ! takayama 867: case 1 : 指数多項式リストの2番目の成分を整数係数化リストで返す.
1.1 takayama 868:
869: default : case 0
870: @end table
871:
872: @itemize @bullet
1.2 ! takayama 873: @item 変数は2種類必要(代数的局所コホモロジー類の変数と像の独立変数).
! 874: @var{num/den}の不定元と@var{var}の不定元が衝突しないよう注意.
! 875: @item taji_alc.fbt()は, Res(Rat*exp(z*x))なる形の有理形関数の留数を求める.
! 876: この有理形関数の留数は指数多項式となるため, 指数多項式リストで返す.
! 877: @item 内部のアルゴリズムはtaji_alc.residue()とほぼ同じであり, 実際にtaji_alc.residue()を呼び出して計算を行っている.
1.1 takayama 878: @end itemize
879:
880: @example
881: [235] taji_alc.fbt(1,(x^3-x-1)^3,z);
882: [[x^3-x-1,(9/529*z^2-81/529*z-4905/12167)*x^2+(-27/1058*z^2-9/529*z+45
883: 63/12167)*x+11/1058*z^2+135/529*z+3270/12167]]
884: @end example
885:
886: @table @t
1.2 ! takayama 887: @item 参照
1.1 takayama 888: @ref{taji_alc.residue, taji_alc.invfbt}
889: @end table
890:
1.2 ! takayama 891: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 892: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 893: @noindent
894: ChangeLog
895: @itemize @bullet
896: @end itemize
897: @comment ****************************************************************
898:
899:
900: @page
901: @comment ****************************************************************
1.2 ! takayama 902: @node taji_alc.inv,,, 1変数代数的局所コホモロジー類用の関数
1.1 takayama 903: @subsection @code{taji_alc.invfbt}
904: @findex taji_alc.invfbt
905:
906: @table @t
907: @item taji_alc.invfbt(@var{exppoly},@var{var})
1.2 ! takayama 908: :: 指数多項式の逆フーリエ・ボレル変換を行う.
1.1 takayama 909: @end table
910:
911: @table @var
912: @item return
1.2 ! takayama 913: 有理関数
1.1 takayama 914:
915: @item exppoly
1.2 ! takayama 916: 指数多項式リスト
1.1 takayama 917: @item var
1.2 ! takayama 918: 不定元 (指数多項式の独立変数)
1.1 takayama 919:
920: @item switch
1.2 ! takayama 921: オプション指定
1.1 takayama 922:
1.2 ! takayama 923: case 0 : 有理関数で返す.
1.1 takayama 924:
1.2 ! takayama 925: case 1 : 有理関数を[分子,分母をQ上で既約分解したリスト]なるリストで返す.
1.1 takayama 926:
927: default : case 0
928: @end table
929:
930: @itemize @bullet
1.2 ! takayama 931: @item 変数は2種類必要(代数的数の最小多項式の変数と指数多項式の独立変数).
! 932: 衝突しないよう注意.
! 933: @item taji_alc.invfbt()は, exppolyを, Res(Rat*exp(z*x))なる形の留数表示に変換し, Rat部分を返す.
! 934: @item taji_alc.fbt()の逆演算である.
1.1 takayama 935: @end itemize
936:
937: @example
938: [8] taji_alc.invfbt([[x^3-x-1,2*x^2*z^2+x*z+1],[x^2+1,z*x+z^2]],z|swit
939: ch=1);
940: [3*x^14+14*x^12+39*x^11+33*x^10+179*x^9+206*x^8+350*x^7+223*x^6+126*x^
941: 5+176*x^4+107*x^3+101*x^2+15*x-4,[[x^2+1,3],[x^3-x-1,3]]]
942:
943: [9] taji_alc.fbt(3*x^14+14*x^12+39*x^11+33*x^10+179*x^9+206*x^8+350*x^
944: 7+223*x^6+126*x^5+176*x^4+107*x^3+101*x^2+15*x-4,[[x^2+1,3],[x^3-x-1,3
945: ]],z);
946: [[x^3-x-1,2*z^2*x^2+z*x+1],[x^2+1,z*x+z^2]]
947: @end example
948:
949: @table @t
1.2 ! takayama 950: @item 参照
1.1 takayama 951: @ref{taji_alc.fbt}
952: @end table
953:
1.2 ! takayama 954: @comment --- ChangeLog を書く. 動機. ソースコードの位置. 変更日時 など CVSサーバを見るため
! 955: @comment --- openxm の外部からの寄与も述べる. Credit.
1.1 takayama 956: @noindent
957: ChangeLog
958: @itemize @bullet
959: @end itemize
960: @comment ****************************************************************
961:
962:
963:
964:
965:
966:
1.2 ! takayama 967: @comment --- おまじない ---
1.1 takayama 968: @node Index,,, Top
969: @unnumbered Index
970: @printindex fn
971: @printindex cp
972: @iftex
973: @vfill @eject
974: @end iftex
975: @summarycontents
976: @contents
977: @bye
1.2 ! takayama 978: @comment --- おまじない終り ---
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>