9
現代数学解説
文献あり

超幾何数列の基礎1:閉形式

961
1

はじめに

 このシリーズでは超幾何数列という対象の基本事項についてまとめていきます。
 内容としては"A=B"という書籍の第II章から要点を抜き出してまとめていくので、より詳しい話が知りたい人は同書などを参照してください。ちなみに"A=B"は 公式のpdf が公開されているので誰でも閲覧することができます。

定義

hypergeometric term

 0でない数列A(n)超幾何数列であるとは、その階比
A(n+1)A(n)
nについての有理関数となることを言う。

 隣り合う項の比が一定であるような数列、つまり等比数列のことを時に幾何数列(geometric sequence)と言うことがあり、超幾何数列(hypergeometric sequence)はその一般化として考えられた概念となります。
 超幾何数列はその階比を
A(n+1)A(n)=(a1+n)(ap+n)(b1+n)(bq+n)z
と因数分解すると、その一般項はポッホハマー記号
(x)n={x(x+1)(x+n1)(n0)1(x1)(x+n)(n<0)
を用いて
A(n)=A(0)(a1)n(ap)n(b1)n(bq)nzn
と表せます(ajbjの値によっては0除算が発生することもありますが、あまり気にしないこととします)。

呼称について

 hypergeometric "sequence"はしばしばhypergeometric "term"と呼ばれますが、それはこのように超幾何級数
pFq(a1,,apb1,,bq;z)=n=0(a1)n(ap)n(b1)n(bq)nznn!
n項目(n-th term)として現れる数列であることを由来としています。
 また呼称としてはhypergeometric "term"の方が一般的であり、直訳するなら超幾何"項"と言うのが適当ですが、個人的な好みによりこのシリーズでは超幾何"数列"という呼称を採用することにしています。

閉形式

 我々が超幾何数列を考える上で関心が高いのはその総和、例えば
S(n)=k=0n1A(k)
などが"閉じた形"に表せるか、ということにあります。
 次回以降の記事でこのような問題を考えていくために、今回の記事ではまず"閉じた形"とは具体的にどのような表示のことを指すのか、そして与えられた数列が"閉じた形"に表せるかどうかはどのように判別できるのか、ということについて解説していきます。

定義

 超幾何数列全体のなす集合をHHによって生成される線形空間をL(H)とおく。

ちょっと細かい話

 0でない数列A(n)が体K上の超幾何数列であるとは、その階比が
A(n+1)A(n)K(n)
を満たすことを言う。
 またK上の超幾何数列全体のなす集合をHKHによって生成されるK-線形空間をL(HK)とおく。このときL(HK)K(n)-線形空間ともみなせることに注意する。

closed form

 数列f(n)閉形式であるとはf(n)L(H)であること、つまりある超幾何数列A1(n),,Ar(n)が存在して
f(n)=k=1rAk(n)
と表せることを言う。

 例えば幾何数列の部分和
k=0n1zn=zn1z1
は二つの超幾何数列
znz1,1z1
の和として表せているので、これは閉形式となります。

相似関係

 まず超幾何数列の和を考える上で重要となる相似という関係について紹介しておきましょう。

similar

 超幾何数列A(n),B(n)相似であるとはその比A(n)/B(n)nについての有理関数として表せることを言い、そのことをA(n)B(n)と表す。これによって定まるHの二項関係は同値関係をなす。

 超幾何数列A(n),B(n)に対し、A(n)+B(n)が超幾何数列または0であることとA(n)B(n)であることは同値である。

証明

 A(n)+B(n)=0のときは明らか。いまA(n)+B(n)0とし
RA(n)=A(n+1)A(n),RB(n)=B(n+1)B(n),RA/B(n)=A(n)B(n),RA+B(n)=A(n+1)+B(n+1)A(n)+B(n)
とおく。このときRA/B(n)が有理関数であることとRA+B(n)が有理関数であることは同値となることを示せばよい。
 そのことは
RA+B(n)=RA(n)RA/B(n)+RB(n)RA/B(n)+1
およびこれをRA/B(n)について整理することで
RA/B(n)=RA+B(n)RB(n)RA+B(n)RA(n)
が成り立つことに注意するとわかる。

 超幾何数列A1(n),,Ar(n)
k=1rAk(n)=0
を満たすとき、あるijに対しAi(n)Aj(n)が成り立つ。

証明

 rについての数学的帰納法によって示す。r=2のときは明らか。
 いま
Rk(n)=Ak(n+1)Ak(n)
とおくと命題の仮定より
k=1rAk(n+1)=k=1rRk(n)Ak(n)=0
および
Rr(n)k=1rAk(n)=0
が成り立つのでこの差を取ることで
k=1r1(Rr(n)Rk(n))Ak(n)=0
が得られる。
 このときあるkに対してRr(n)Rk(n)=0であれば
Ar(n+1)Ak(n+1)=Ar(n)Ak(n)
つまりAr(n)/Ak(n)は定数となるのでAr(n)Ak(n)が成り立つ。
 また全てのkに対してRr(n)Rk(n)0であれば、帰納法の仮定よりあるijに対して
(Rr(n)Ri(n))Ai(n)(Rr(n)Rj(n))Aj(n)
が成り立ち、Rr(n)Rk(n)は有理関数であることからAi(n)Aj(n)がわかる。

 0でない任意のf(n)L(H)に対し、ある互いに相似でない超幾何数列A1(n),,Ar(n)が存在して
f(n)=k=1rAk(n)
が成り立つ。またこのような表示は一意的である。

証明

 L(H)の定義からf(n)はある超幾何数列B1(n),,Br(n)を用いて
f(n)=k=1rBk(n)
と表せる。このときあるijに対しBi(n)Bj(n)であればこれは再び超幾何数列(または0)となるので一項にまとめることができ、このように項をまとめていくことで主張のような表示が得られる。
 いま二通りの表示
f(n)=k=1rAk(n)=k=1rAk(n)
が得られたとき、適当に順番を入れ替え相似なもの同士をまとめることで
k=ts(Ak(n)Ak(n))+k=srAk(n)j=srAk(n)=0
は互いに相似でない超幾何数列の和となる。したがって命題2よりこの左辺は空和、つまり
Ak(n)=Ak(n)(k=1,2,)
でなければならないことがわかる。

 この命題から互いに相似でない超幾何数列はK(n)-線形独立となることに注意しましょう(ただしK(n)は有理関数体としました)。

閉形式と漸化式

 では与えられた数列f(n)L(H)に属すかどうかを判別する方法について解説していきましょう。
 結論から言うとこの問題はf(n)の満たす漸化式を調べることで解決されます。

P-recursive

 数列f(n)P-再帰的であるとはf(n)が多項式係数の線形漸化式を満たす、つまりある多項式p0(n),,pI(n)(pI(n)0)が存在して
i=0Ipi(n)f(n+i)=0
が成り立つことを言う。

 ちなみに定数係数の線形漸化式を満たすことはC-再帰的であると言い、このPやCは多項式(Polynomial)や定数(Constant)の頭文字を取っています。

 任意のf(n)L(H)はP-再帰的である。

 明らかに各A(n)HはP-再帰的であるので次の主張を示せばよい。

 P-再帰的な数列f(n),g(n)に対しf(n)+g(n)もP-再帰的となる。

 この事実については昔に こんな記事 を書いたことがあります。一応その記事と同じ証明を下においておきます。

証明

 f,gがそれぞれ漸化式
k=0rpk(n)f(n+k)=k=0sqk(n)g(n+k)=0
を満たすとする。このとき
h(n)=f(n)+g(n),t=r+s
とし
h(n+k)(0kt)
を縦に並べたベクトルをγ
f(n+i), g(n+j)(0i<r, 0j<s)
を適当に整列させて縦に並べたベクトルをΓとおく。
 このときf,gの漸化式を用いることである有理関数を係数に持つ(t+1)×t行列P(n)が存在して
γ=P(n)Γ
と表せ、P(n)サイズからある多項式係数のt+1次元横ベクトルr(n)が存在して
r(n)P(n)=0
が成り立つのでh(n)は漸化式
r(n)γ=k=0trk(n)h(n+k)=0
を満たすことがわかる。

 f(n)L(H)が漸化式
i=0Ipi(n)f(n+i)=0
を満たすとき、命題3のような分解
f(n)=k=1rAk(n)
における各因子Ak(n)も漸化式
i=0Ipi(n)Ak(n+i)=0
を満たす。

証明

Ak(n+i)Ak(n)
は有理関数となることに注意するとある有理関数Rk(n)が存在して
i=0Ipi(n)Ak(n+i)=Rk(n)Ak(n)
と表せる。このとき
i=0Ipi(n)f(n+i)=k=1rRk(n)Ak(n)=0
が成り立つので、命題3よりA1(n),,Ar(n)C(n)-線形独立であったことに注意すると各kに対しRk(n)=0つまり
i=0Ipi(n)Ak(n+i)=0
となることがわかる。

 rIが成り立つ。

証明

 一般にI項間線形漸化式
i=0Ipi(n)f(n+i)=0(pI(n)0)
の解空間は高々I次元となるのでA1(n),,Ar(n)が線形独立であることからrIとなることがわかる。

まとめ

 上で紹介した事実をまとめると数列f(n)が閉形式に表せるか否かは次のようなステップによって判別することができます。

  1. f(n)が満たす多項式係数の線形漸化式を求める。
  2. f(n)と同じ漸化式を満たす超幾何数列を全て求める。
  3. f(n)がそれらの線型結合として表せるかを調べる。

 ステップ1については一般的な方法があるわけではありませんが、 第二回の記事 第四回の記事 で扱うような特定の対象を考える場合はf(n)が満たす漸化式を求めるアルゴリズムが確立されています。
 ステップ2については一般的な方法、つまり与えられた漸化式に対してそれを満たす超幾何数列を網羅的に求めるアルゴリズムが確立されています。詳しい方法については 第三回の記事 にて解説していきます。
 ステップ3については線形漸化式の一般論から連続するI個の値、例えばn=0,1,,I1に対して
f(n)=k=1rckAk(n)
が成り立つような線型結合c0,,crの取り方が存在すれば一般のnに対してもこれが成り立つことがわかり、逆にそのような線型結合の取り方が存在しなければf(n)は閉形式に表せないことになります。

参考文献

[1]
M. Petkovšek, H. Wilf, D. Zeilberger, A=B, 1997
投稿日:2024313
更新日:19
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

子葉
子葉
1083
264746
主に複素解析、代数学、数論を学んでおります。 私の経験上、その証明が簡単に探しても見つからない、英語の文献を漁らないと載ってない、なんて定理の解説を主にやっていきます。 同じ経験をしている人の助けになれば。最近は自分用のノートになっている節があります。

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. はじめに
  2. 定義
  3. 閉形式
  4. 定義
  5. 相似関係
  6. 閉形式と漸化式
  7. まとめ
  8. 参考文献