[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
87.1 Introduction to zeilberger | ||
87.2 Functions and Variables for zeilberger |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
zeilberger
は
超幾何定総和に関する Zeilbergerのアルゴリズムと超幾何不定総和に関する
Gosperのアルゴリズムの実装します。
zeilberger
は
Axel Rieseによって開発された「フィルタリング」最適化法を利用します。
zeilberger
は Fabrizio Carusoによって開発されました。
load (zeilberger)
はこのパッケージをロードします。
Categories: Sums and products · Share packages · Package zeilberger
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
zeilberger
は超幾何不定総和に関する Gosperのアルゴリズムの実装します。
kの超幾何項 F_kが与えられたとして、
超幾何反差 (anti-difference)、すなわち、以下のような超幾何項
f_kを見つけたいです。
F_k = f_(k+1) - f_k.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
zeilberger
は超幾何定総和に関する Gosperのアルゴリズムの実装します。
適当な (nと kに関する)超幾何項
F_(n,k)
と正の整数 dが与えられたとして、
F_(n,k)
に関する (nに関する)多項式係数を持つ d次の線形漸化式と、
a_0 F_(n,k) + ... + a_d F_(n+d),k = Delta_k(R(n,k) F_(n,k)),
のような nと kに関する有理函数 Rを見つけたいです。
ここで、 Delta_k は k-順方向差分演算子です。すなわち、 Delta_k(t_k) := t_(k+1) - t_k.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
以下の接尾辞の 1つを追加することでコールされる出力が冗長なバージョンのコマンドもあります:
Summary
終わりにサマリだけが表示されます。
Verbose
中間ステップでのある情報。
VeryVerbose
更なる情報。
Extra
Zeilbergerのアルゴリズムでの線形系上の情報を含む更なる情報。
例えば:
GosperVerbose
, parGosperVeryVerbose
,
ZeilbergerExtra
, AntiDifferenceSummary
.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
もし存在するなら F_kの超幾何反差を返します。
そうでないなら AntiDifference
は no_hyp_antidifference
を返します。
Categories: Package zeilberger
もし存在するなら、
F_kに対する有理証 (rational certificate)、
すなわち、以下のような有理函数を返します。
F_k = R(k+1) F_(k+1) - R(k) F_k,
そうでないなら Gosper
は no_hyp_sol
を返します。
Categories: Package zeilberger
もし F_kが超幾何反差を持つなら、
k = aから k = bまでの
F_kの和を返します。
そうでないなら GosperSum
は nongosper_summable
を返します。
例:
(%i1) load (zeilberger)$ (%i2) GosperSum ((-1)^k*k / (4*k^2 - 1), k, 1, n); Dependent equations eliminated: (1) 3 n + 1 (n + -) (- 1) 2 1 (%o2) - ------------------ - - 2 4 2 (4 (n + 1) - 1) (%i3) GosperSum (1 / (4*k^2 - 1), k, 1, n); 3 - n - - 2 1 (%o3) -------------- + - 2 2 4 (n + 1) - 1 (%i4) GosperSum (x^k, k, 1, n); n + 1 x x (%o4) ------ - ----- x - 1 x - 1 (%i5) GosperSum ((-1)^k*a! / (k!*(a - k)!), k, 1, n); n + 1 a! (n + 1) (- 1) a! (%o5) - ------------------------- - ---------- a (- n + a - 1)! (n + 1)! a (a - 1)! (%i6) GosperSum (k*k!, k, 1, n); Dependent equations eliminated: (1) (%o6) (n + 1)! - 1 (%i7) GosperSum ((k + 1)*k! / (k + 1)!, k, 1, n); (n + 1) (n + 2) (n + 1)! (%o7) ------------------------ - 1 (n + 2)! (%i8) GosperSum (1 / ((a - k)!*k!), k, 1, n); (%o8) NON_GOSPER_SUMMABLE |
Categories: Package zeilberger
F_(n,k)に対して次数 dの漸化式を見つけようとします。
アルゴリズムは解の列 [s_1, s_2, ..., s_m]をもたらします。 解それぞれは形式
[R(n, k), [a_0, a_1, ..., a_d]].
を持ちます。
もし漸化式を見つけられないなら parGosper
は []
を返します。
Categories: Package zeilberger
F_(n,k)の超幾何不定総和を計算しようとします。
Zeilberger
は最初に Gosper
を呼び出し、
もしそれが解を見つけるのに失敗したら、
次数 1, 2, 3, ..., から MAX_ORD
までを使って
parGosper
を呼び出します。
もし Zeilbergerが MAX_ORD
に達する前に解を見つけたら、
停止して解を返します。
アルゴリズムは解の列 [s_1, s_2, ..., s_m]をもたらします。 解それぞれは形式
[R(n,k), [a_0, a_1, ..., a_d]].
を持ちます。
もし解を見つけられなかったら、
Zeilberger
は []
を返します。
Zeilberger
は
Gosper_in_Zeilberger
が true
の時だけ
Gosper
を呼び出します。
Categories: Package zeilberger
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
デフォルト値: 5
MAX_ORD
は Zeilberger
が試みる漸化式の最大次数です。
Categories: Package zeilberger
デフォルト値: false
simplified_output
が true
の時、
zeilberger
パッケージの関数は解の更なる整理を試みます。
Categories: Package zeilberger
デフォルト値: linsolve
linear_solver
は
Zeilbergerのアルゴリズムで方程式系を解くのに使うソルバを指定します。
Categories: Package zeilberger
デフォルト値: true
warnings
が true
の時、
zeilberger
パッケージの関数は実行中に警告メッッセージを印字します。
Categories: Package zeilberger
デフォルト値: true
Gosper_in_Zeilberger
が true
の時、
Zeilberger
関数は
parGosper
をコールする前に
Gosper
をコールします。
そうでないなら、 Zeilberger
はすぐに parGosper
に向かいます。
Categories: Package zeilberger
デフォルト値: true
trivial_solutions
が true
の時、
Zeilberger
は
零に等しい証を持つ解か、すべての係数が零に等しい解を返します。
Categories: Package zeilberger
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
デフォルト値: false
mod_test
が true
の時、
parGosper
は解を持たない系を除くためにモジュラーテストを実行します。
Categories: Package zeilberger
デフォルト値: linsolve
modular_linear_solver
は
parGosper
でのモジュラーテストが使う線形ソルバを指定します。
Categories: Package zeilberger
デフォルト値: big_primes[10]
parGosper
でモジュラーテストを実行する時
ev_point
で変数 nを評価します。
Categories: Package zeilberger
デフォルト値: big_primes[1]
mod_big_prime
は
parGosper
でモジュラーテストが使う法です。
Categories: Package zeilberger
デフォルト値: 4
mod_threshold
は
parGosper
でのモジュラーテストが試みられる際の最大次数です。
Categories: Package zeilberger
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated by 市川雄二 on June, 21 2016 using texi2html 1.76.