1

ご注文はWZですか?

96
0
$$$$

あいさつ

んちゃ!
今回は初心に戻り、Gosperのアルゴリズム、WZ法について概要を述べ
Gosperのアルゴリズムにより、面白い級数を手計算で見つけることが出来る場合が無いか調べていきます。
因みに最後にGosperのアルゴリズムに沿って実際にやなさんがC言語でコーディングしたコードが付いてます。
良かったらローカルで使ってみてください。
自分のための復習も含まれます。
それではよろしくお願いいたします。

目次
  1. 前提知識
  2. Gosperのアルゴリズム
  3. WZ法
  4. 手計算できる場合を考えたい
  5. 補遺:実際のコード

表記
  • $\mathbb{N}_{0}=\{0\}\cup\mathbb{N}$
  • $\mathbb{C}[x]$$\mathbb{C}$係数多項式全体
  • $\mathbb{C}(x)=\{\frac{f(x)}{g(x)}|f,g\in\mathbb{C}[x]\land g(x)\neq 0\}$
  • $H$は超幾何項の全体

前提知識

超幾何項(hypergeometric term)

複素数列$\{h_{n}\}_{n\in\mathbb{N}_{0}}\subset\mathbb{C}$が以下の性質を持つとき、$\{h_{n}\}_{n\in\mathbb{N}_{0}}$を超幾何項(hypergeometric term)と呼ぶ。
\begin{equation} \frac{h_{n+1}}{h_{n}}\in\mathbb{C}(n) \end{equation}

超幾何項の意味
複素数列$\{h_{n}\}_{n\in\mathbb{N}_{0}}\subset\mathbb{C}$が超幾何項だとしましょう。すると定義より、以下の事が成り立ちます。
\begin{equation} \exists a_{1},a_{2},...,a_{p},b_{1},b_{2},...,b_{q},z\in\mathbb{C}\setminus\{0\}\ s.t.\ \frac{h_{n+1}}{h_{n}}=\frac{(a_{1}+n)(a_{2}+n)\cdots(a_{p}+n)}{(b_{1}+n)(b_{2}+n)\cdots(b_{q}+n)}z \end{equation}つまり、この式を用いると超幾何項は下記の様に書き直せます。
\begin{equation} h_{n}=h_{0}\frac{(a_{1})_{n}(a_{2})_{n}\cdots(a_{p})_{n}}{(b_{1})_{n}(b_{2})_{n}\cdots(b_{q})_{n}}z^{n}\quad(n\in\mathbb{N}_{0}) \end{equation}この式は、$h_{0}=1$として${}_{p}F_{q}(a_{1},a_{2},...,a_{p};b_{1},b_{2},...,b_{q};z)$の第$n$項と一致する事が分かります。
これが、$\{h_{n}\}_{n\in\mathbb{N}_{0}}$が超幾何項と呼ばれる由来となります。
超幾何項の積

超幾何項の積は超幾何項

$\{h_{n}\}_{n\in\mathbb{N}_{0}},\{l_{n}\}_{n\in\mathbb{N}_{0}}\in H$とする。
\begin{eqnarray} \left\{ \begin{array}{l} \exists f_{1}(n),g_{1}(n)\in\mathbb{C}[n]\ s.t.\ \frac{h_{n+1}}{h_{n}}=\frac{f_{1}(n)}{g_{1}(n)}\in\mathbb{C}(n)\\ \exists f_{2}(n),g_{2}(n)\in\mathbb{C}[n]\ s.t.\ \frac{l_{n+1}}{l_{n}}=\frac{f_{2}(n)}{g_{2}(n)}\in\mathbb{C}(n) \end{array} \right. \end{eqnarray}
\begin{eqnarray} \frac{h_{n+1}l_{n+1}}{h_{n}l_{n}}&=&\frac{f_{1}(n)f_{2}(n)}{g_{1}(n)g_{2}(n)}\in\mathbb{C}(n) \end{eqnarray}

相似

二つの超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}},\{l_{n}\}_{n\in\mathbb{N}_{0}}\in H$とする。この時以下の事が成り立つとき$h_{n}\simeq l_{n}$と書き相似と言う。
\begin{equation} \frac{h_{n}}{l_{n}}\in\mathbb{C}(n) \end{equation}

相似$\simeq$は同値関係を成す。

[1]反射律[2]対称律は略
[3]推移律
超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}},\{l_{n}\}_{n\in\mathbb{N}_{0}},\{m_{n}\}_{n\in\mathbb{N}_{0}}\in H$が次の性質を持つとしましょう。$h_{n}\simeq l_{n}\land l_{n}\simeq m_{n}$
すると、以下の性質を満たします。
\begin{eqnarray} \left\{ \begin{array}{l} \exists f_{1}(n),g_{1}(n)\in\mathbb{C}[n]\ s.t.\ \frac{h_{n}}{l_{n}}=\frac{f_{1}(n)}{g_{1}(n)}\\ \exists f_{2}(n),g_{2}(n)\in\mathbb{C}[n]\ s.t.\ \frac{l_{n}}{m_{n}}=\frac{f_{2}(n)}{g_{2}(n)}\\ \end{array} \right. \end{eqnarray}
この式から以下の結論が得られます。ゆえに$h_{n}\simeq m_{n}$
\begin{eqnarray} \frac{h_{n}}{m_{n}}&=&\frac{h_{n}}{l_{n}}\frac{l_{n}}{m_{n}}\\ &=&\frac{f_{1}(n)f_{2}(n)}{g_{1}(n)g_{2}(n)}\in\mathbb{C}(n) \end{eqnarray}

相似な超幾何項の和

二つの超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}},\{l_{n}\}_{n\in\mathbb{N}_{0}}\in H$が相似であるとする。
すると、(1)$\{h_{n}+l_{n}\}_{n\in\mathbb{N}_{0}}$は超幾何項。また、(2)$h_{n},l_{n}\sim h_{n}+l_{n}$

\begin{eqnarray} \left\{ \begin{array}{l} \exists f_{1}(n),g_{1}(n)\in\mathbb{C}[n]\ s.t.\ \frac{h_{n+1}}{h_{n}}=\frac{f_{1}(n)}{g_{1}(n)}\in\mathbb{C}(n)\\ \exists f_{2}(n),g_{2}(n)\in\mathbb{C}[n]\ s.t.\ \frac{l_{n+1}}{l_{n}}=\frac{f_{2}(n)}{g_{2}(n)}\in\mathbb{C}(n)\\ \exists f(n),g(n)\in\mathbb{C}[n]\ s.t.\ \frac{h_{n}}{l_{n}}=\frac{f(n)}{g(n)}\in\mathbb{C}(n) \end{array} \right. \end{eqnarray}
この式を用いると以下の計算ができる。
[(1)]
\begin{eqnarray} \frac{h_{n+1}+l_{n+1}}{h_{n}+l_{n}}&=&\frac{\frac{h_{n+1}}{h_{n}}\frac{h_{n}}{l_{n}}+\frac{l_{n+1}}{l_{n}}}{1+\frac{h_{n}}{l_{n}}}\\ &=&\frac{\frac{f_{1}(n)}{g_{1}(n)}\frac{f(n)}{g(n)}+\frac{f_{2}(n)}{g_{2}(n)}}{1+\frac{f(n)}{g(n)}}\\ &=&\frac{f_{1}(n)g_{2}(n)f(n)+g_{1}(n)f_{2}(n)g(n)}{g_{1}(n)g_{2}(n)g(n)+g_{1}(n)g_{2}(n)f(n)}\in\mathbb{C}(n) \end{eqnarray}
[(2)]
相似$\simeq$は同値関係で、$h_{n}\simeq l_{n}$なので、$l_{n}\simeq h_{n}+l_{n}$のみを示せばよい。
\begin{equation} \frac{h_{n}+l_{n}}{l_{n}}=\frac{f(n)+g(n)}{g(n)}\in\mathbb{C}(n) \end{equation}

Gosperのアルゴリズム

では次にGosperのアルゴリズムについて書きます。
Gosperのアルゴリズムを学ぶ事で、与えられた超幾何項の総和問題を機械的に望遠鏡和にする方法を学ぶ事が出来ます。

ピックアップ!
本節の重要な項目に飛ぶことが出来ます。読み返すときにぜひ使ってください。

超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}}\in H$により定まる下記の数列$\{s_{n}\}_{n\in\mathbb{N}_{0}}$も超幾何項。
\begin{equation} s_{n}=\sum_{m=0}^{n}h_{m} \end{equation}

超幾何項の定義より以下の式が成り立つ。
\begin{equation} \exists f,g\in \mathbb{C}[n]\ s.t. \frac{h_{n+1}}{h_{n}}=\frac{f(n)}{g(n)} \end{equation}
[1]$\forall p,q\in \mathbb{N}_{0}:h_{n+p}\simeq h_{n+q}$
一般性を損なわないので、$p\gt q$として計算を進める。
\begin{eqnarray} \frac{h_{n+p}}{h_{n+q}}&=&\frac{h_{n+p}}{h_{n+p-1}}\frac{h_{n+p-1}}{h_{n+p-2}}\cdots\frac{h_{n+q+1}}{h_{n+q}}\\ &=&\frac{f(n+p-1)}{g(n+p-1)}\frac{f(n+p-2)}{g(n+p-2)}\cdots\frac{f(n+q)}{g(n+q)}\\ &=&\frac{F(n)}{G(n)}\in\mathbb{C}(n) \end{eqnarray}
[2][1]より$h_{1}\simeq h_{2}\simeq \cdots \simeq h_{n}$が分かる。
また帰納的に構成していくことで$s_{n-1}\simeq h_{n}$が分かるので、$s_{n}\simeq s_{n-1}+h_{n}$
ゆえに$s_{n}$は超幾何項である事が示された。

the first part of Gosper algorithm

超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}}\in H$について以下の事か成り立つ。
\begin{equation} \frac{h_{n}}{h_{n-1}}=\frac{p_{n}}{p_{n-1}}\frac{q_{n}}{r_{n}}\quad(n\in\mathbb{N}_{0}) \end{equation}
ここで、$p_{n},q_{n},r_{n}$は次の様に定められている。$p_{n},q_{n},r_{n}\in\mathbb{C}[n]\land \forall k\in\mathbb{N}_{0}:gcd(q_{n},r_{n+k})=1$

[1]$\{h_{n}\}_{n\in\mathbb{N}_{0}}$は超幾何項なので、以下の式が成り立つ。
\begin{equation} \exists f(n),g(n)\in\mathbb{C}[n]\ s.t.\ \frac{h_{n}}{h_{n-1}}=\frac{f(n)}{g(n)} \end{equation}
[2]$p^{(1)}_{n},q^{(1)}_{n},r^{(1)}_{n}\in\mathbb{C}[n]$を用いて以下の様に書けたとします。
\begin{eqnarray} \left\{ \begin{array}{l} f(n)=p^{(1)}_{n}q^{(1)}_{n}\\ g(n)=p^{(1)}_{n-1}r^{(1)}_{n} \end{array} \right. \end{eqnarray}
この時、ある最小の自然数$k_{1}\in\mathbb{N}_{0}$が存在して次式が成立したとしましょう。
\begin{equation} gcd(q^{(1)}_{n},r^{(1)}_{n+k_{1}})=s^{(1)}_{n} \end{equation}
すると以下の式が成り立つ。
\begin{eqnarray} \left\{ \begin{array}{l} \exists q^{(2)}_{n}\in\mathbb{C}[n]\ s.t.\ q^{(1)}_{n}=s^{(1)}_{n}q^{(2)}_{n}\\ \exists r^{(2)}_{n}\in\mathbb{C}[n]\ s.t.\ r^{(1)}_{n}=\frac{r^{(1)}_{n}}{r^{(1)}_{n+1}}\frac{r^{(1)}_{n+1}}{r^{(1)}_{n+2}}\cdots \frac{r^{(1)}_{n+k-1}}{r^{(1)}_{n+k}}r^{(1)}_{n+k}=s^{(1)}_{n}\frac{r^{(1)}_{n}}{r^{(1)}_{n+1}}\frac{r^{(1)}_{n+1}}{r^{(1)}_{n+2}}\cdots \frac{r^{(1)}_{n+k_{1}-1}}{r^{(1)}_{n+k_{1}}}r^{(2)}_{n} \end{array} \right. \end{eqnarray}
ゆえに、以下の式が得られる。
\begin{eqnarray} \frac{f(n)}{g(n)}&=&\frac{p^{(1)}_{n}r^{(1)}_{n+1}r^{(1)}_{n+2}\cdots r^{(1)}_{n+k_{1}}}{p^{(1)}_{n-1}r^{(1)}_{n}r^{(1)}_{n+1}\cdots r^{(1)}_{n+k_{1}-1}}\frac{q^{(2)}_{n}}{r^{(2)}_{n}} \end{eqnarray}
そこでさらに次の様に記号を定めましょう。
\begin{equation} p^{(2)}_{n}=p^{(1)}_{n}r^{(1)}_{n+1}r^{(1)}_{n+2}\cdots r^{(1)}_{n+k_{1}} \end{equation}
[3]つまり以下の事を繰り返します。
(i)start: $p^{(1)}_{n},q^{(1)}_{n},r^{(1)}_{n}\in\mathbb{C}[n]$を適当に定め、次式が成り立つ様にする。
\begin{eqnarray} \left\{ \begin{array}{l} f(n)=p^{(1)}_{n}q^{(1)}_{n}\\ g(n)=p^{(1)}_{n-1}r^{(1)}_{n} \end{array} \right. \end{eqnarray}
(ii)$gcd(q^{(l)}_{n},r^{(l)}_{n+l})=s^{(l)}_{n}\neq 1$を満たす最小の自然数$k_{l}$を求める。
その様な自然数が存在しない場合は(iv)へ進む。
(iii)次の様な更新を行う。
\begin{equation} p^{(l+1)}_{n}=r^{(l)}_{n+1}r^{(l)}_{n+2}\cdots r^{(l)}_{n+k_{1}}p_{n}^{(l)}\\ \end{equation}
(iv)end:最終的に次の様に置けば、目的が達成される。
\begin{eqnarray} \left\{ \begin{array}{l} p_{n}=p^{(l)}_{n}\\ q_{n}=q^{(l)}_{n}\\ r_{n}=r^{(l)}_{n} \end{array} \right. \end{eqnarray}
[4][3]の操作は高々有限回で終了する。
理由は、$q^{(l)}_{n}$の次数は有限かつ自然数であり、その次数は単調減少であるため。

整数でない複素数に任意の整数を足しても整数でない複素数になる。

[1]虚部が$0$出なければ明らかなので、虚部が$0$出ない場合は省略
[2]以下虚部$0$の場合。つまり実数かつ整数でない場合について本補題が成り立つ事を示す。
過程より、実数かつ整数でない様なもの$r$$\exists x\in\mathbb{Z},\exists y\in(0,1]\ s.t.\ r=x+y$と書ける。
[3]ゆえに$\forall z\in\mathbb{Z}:r+z=(x+z)+y\not\in\mathbb{Z}$が得られる。

モニックな多項式$f(n),g(n)\in\mathbb{C}[n]$のそれぞれの根を$a_{1},a_{2},...,a_{k},b_{1},b_{2},...,b_{l}$とします。
この時、$\forall i\in\{1,2,...,k\},\forall j\in\{1,2,...,l\}:|a_{i}-b_{j}|\not\in\mathbb{N}_{0}$である場合、以下の式が成り立つ。
\begin{equation} \forall N\in\mathbb{N}_{0}:gcd(f(n),g(n+N))=1 \end{equation}

与えられた条件より
\begin{eqnarray} \left\{ \begin{array}{l} f(n)=(n-a_{1})(n-a_{2})\cdots(n-a_{k})\\ g(n)=(n-b_{1})(n-b_{2})\cdots(n-b_{l}) \end{array} \right. \end{eqnarray}
ゆえに任意の自然数に対して以下の事が成り立つ事が分かる。
\begin{equation} g(n+N)=\{n-(b_{1}-N)\}\{n-(b_{2}-N)\}\cdots\{n-(b_{l}-N)\} \end{equation}
そこで、$f(n),g(n+N)$が互いに素である事と双方が同一の根を持たない事は同値なので、結局$\forall i\in\{1,2,...,k\},\forall j\in\{1,2,...,l\}:|a_{i}+N-b_{j}|\neq 0$を示せばよい。
仮定より、$\forall i\in\{1,2,...,k\},\forall j\in\{1,2,...,l\}:a_{i}-b_{j}\in\mathbb{C}\setminus\mathbb{Z}$なので補題6より$\forall N\in\mathbb{N}_{0}\subset\mathbb{Z}:\forall i\in\{1,2,...,k\},\forall j\in\{1,2,...,l\}:a_{i}+N-b_{j}\in\mathbb{C}\setminus\mathbb{Z}$
これから証明が完了された。

超幾何項$\{h_{n}\}_{n\in\mathbb{N}_{0}}\{l_{n}\}_{n\in\mathbb{N}_{0}}\in H$$\forall n\in\mathbb{N}_{0}:l_{n+1}-l_{n}=h_{n}$この時下記の事が成り立つ。

  1. $\exists \xi_{n}\in\mathbb{C}(n)\ s.t.\ l_{n}=\xi_{n}h_{n}$
  2. $\frac{h_{n+1}}{h_{n}}\xi_{n+1}-\xi_{n}=1 $
  3. $\exists p_{n},q_{n},r_{n}\in\mathbb{C}(n)\ s.t.\ \forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1:\frac{h_{n+1}}{h_{n}}=\frac{p_{n+1}}{p_{n}}\frac{q_{n+1}}{r_{n+1}}$が成り立つ事が定理5により分かっている。この$p_{n},q_{n},r_{n}$を用いて$\xi_{n}=\frac{r_{n}}{p_{n}}\eta_{n}$の様に置き直せば次の式が得られます。$q_{n+1}\eta_{n+1}-r_{n}\eta_{n}=p_{n}$

[1]
\begin{eqnarray} l_{n+1}-l_{n}&=&l_{n}(\frac{l_{n+1}}{l_{n}}-1)\\ &=&h_{n} \end{eqnarray}
超幾何項の定義より、$\frac{l_{n+1}}{l_{n}}\in\mathbb{C}(n)$なので、$\xi_{n}=\frac{1}{\frac{l_{n+1}}{l_{n}}-1}\in\mathbb{C}(n)$が成り立つ。
この式を用いると下記の式が得られます。
\begin{equation} \exists \xi_{n}\in\mathbb{C}(n)\ s.t.\ l_{n}=\xi_{n}h_{n} \end{equation}
[2]この$\xi_{n}$は整理すると以下の式が得られます。
\begin{equation} \forall n\in\mathbb{N}_{0}:\frac{h_{n+1}}{h_{n}}\xi_{n+1}-\xi_{n}=1 \end{equation}
[3]定理5より下記の式を得ることが出来る。
\begin{equation} \exists p_{n},q_{n},r_{n}\in\mathbb{C}[n]\ s.t. \forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1:\frac{h_{n}}{h_{n-1}}=\frac{p_{n}}{p_{n-1}}\frac{q_{n}}{r_{n}} \end{equation}
また、$\xi_{n}=\frac{r_{n}}{p_{n}}\eta_{n}$の様に置き直すと次式が成り立つ。
\begin{eqnarray} \frac{h_{n+1}}{h_{n}}\xi_{n+1}-\xi_{n}&=&\frac{p_{n+1}}{p_{n}}\frac{q_{n+1}}{r_{n+1}}\frac{r_{n+1}}{p_{n+1}}\eta_{n+1}-\frac{r_{n}}{p_{n}}\eta_{n}\\ &=&\frac{q_{n+1}}{p_{n}}\eta_{n+1}-\frac{r_{n}}{p_{n}}\eta_{n}\\ &=&1 \end{eqnarray}
それゆえに、下記の式を得る。
\begin{equation} q_{n+1}\eta_{n+1}-r_{n}\eta_{n}=p_{n} \end{equation}

ここまでの変形でなぜこのような式変形を行うのだろうと疑問に思った方々もいらっしゃると思います。
その疑問を解消してくれるのが次の定理です。

the second half of Gosper algorithm

数列$\{\eta_{n}\}_{n\in\mathbb{N}_{0}}$
$p_{n},q_{n},r_{n}\in\mathbb{C}[n],\forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1$に対して定まる下記の漸化式を満たしているとする。
\begin{equation} q_{n+1}\eta_{n+1}-r_{n}\eta_{n}=p_{n} \end{equation}
すると実は、$\eta_{n}\in\mathbb{C}[n]$となる!

$\eta_{n}$が有理関数ではなく多項式になると驚きの定理です。
この定理より、$deg(p_{n})=k$であれば$\eta_{n}=\sum_{a=1}^{k}A_{a}n^{a}$の様に置いて$A_{0},A_{1},...,A_{k}$を探せばいいのです。
Gosperさん凄いですよね。

では、この定理を証明しましょう。

まず、$\eta_{n}\in\mathbb{C}(n)$である事は分かりますので$\exists f(n),g(n)\in\mathbb{C}[n]\ s.t.\ gcd(f(n),g(n))=1\land \eta_{n}=\frac{f(n)}{g(n)}$と書けます。
示すべきことは、$g(n)=const.$です。
[0]$g(n)=const.$の場合は示す事はありません。
[1]そこで$g(n)\neq const.$であるとします。するとこれを代入する事で下記の式を得ます。
\begin{equation} q_{n+1}f(n+1)g(n)-r_{n}f(n)g(n+1)=p_{n}g(n)g(n+1) \end{equation}
また、明らかに$\exists N\in\mathbb{N}_{0}\ s.t. gcd(g(n),g(n+N))=u(n)\neq 1$が成り立ちます(少なくともN=0で成り立つ)から。その様な$N$の最大のものを$N^{\ast}$とします。
右辺は$g(n+1)$の倍数ですから、両辺は$u(n+1)$で割れます。
つまり次の事が成り立つ事が分かります。
\begin{equation} u(n+1)|q_{n+1} \end{equation}
さらに、次の式から$u(n+1)|r_{n+N}$が得られます。
\begin{equation} q_{n+N+1}f(n+N+1)g(n+N)-r_{n+N}f(n+N)g(n+N+1)=p_{n+N}g(n+N)g(n+N+1) \end{equation}
しかし矛盾しています。
なぜなら、$\forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1$としたからです。
この矛盾は、$g(n)\neq const.$とした事から起きました。
ゆえに、$g(n)=const.$出なければなりません!

上述のGosperのアルゴリズムに従いC言語やpythonなどでコーディングを行い、実行する事で$l_{n}$を構成出来れば望遠鏡和により命題4の$s_{n}$は次の様に書ける事が分かります。
\begin{equation} s_{n}=l_{n+1}-l_{0} \end{equation}

この方程式を解く方法は次の様です。
多項式$p=\sum_{k=0}^{m}p_{k}x^{k}$に多項式$q=\sum_{k=0}^{n}q_{k}x^{k}$をかけて出来る多項式$r=\sum_{k=0}^{m+n}r_{k}x^{k}$との間には次の式が成り立つ事を用います。
\begin{equation} \begin{pmatrix}q_{0}&0&0&0&\cdots&\cdots&0\\q_{1}&q_{0}&0&0&\cdots&\cdots&0\\\cdots&\cdots&\cdots&\cdots&\cdots&\cdots&\cdots\\0&\cdots&q_{n}&\cdots&q_{0}&\cdots&0\end{pmatrix}\begin{pmatrix}p_{0}\\p_{1}\\\vdots\\p_{n}\end{pmatrix}=\begin{pmatrix}r_{0}\\r_{1}\\\vdots\\r_{m+n}\end{pmatrix} \end{equation}この式を用いて連立方程式を立てればよいです。

WZ法

WZ法とはHerbert WilfとDoron Zeilbergerにより見つけられたものです。
この方法の全貌を見るために次の様な二変数の超幾何項に関する恒等式を考えます。

WZ的組

二つの二変数の超幾何項$F(n,k),G(n,k)$が次の恒等式を満たす時、WZ的組と呼ぶ。
\begin{equation} \forall n,k\in\mathbb{N}_{0}:F(n+1,k)-F(n,k)=G(n,k+1)-G(n,k) \end{equation}

実はこのWZ的組である事が本質的です。
それでは、核心をつきましょう。

WZ-method

WZ的組$F(n,k),G(n,k)$$\forall k\in\mathbb{N}_{0}:F(0,k)=0$を満たし、なおかつ$\forall k\in\mathbb{N}_{0}:\lim_{n\rightarrow\infty}F(n,k)=0$が成り立つ時以下の式が成り立つ。
\begin{equation} \forall k\in\mathbb{N}_{0}:\sum_{n\in\mathbb{N}_{0}}G(n,k)=const. \end{equation}

まず$g(k)\coloneqq \sum_{n\in\mathbb{N}_{0}}G(n,k)$と置きましょう。
WZ的組の定義を用いると
\begin{equation} F(n+1,k)=\sum_{n=0}^{n}G(n,k+1)-\sum_{n=0}^{n}G(n,k) \end{equation}
が成り立つ事が、$n$について$0$から$n$まで総和を取れば分かります。
ゆえに、$n\rightarrow \infty$として下記の式が得られます。
\begin{equation} \forall k\in\mathbb{N}_{0}:g(k)=g(k+1) \end{equation}
つまり、$g(0)=g(1)=\cdots=g(k)=\cdots=const.$が得られるので本定理は証明された。

しかし、これだけだとそもそもWZ的組を見つけるにはどうすればいいか分からないのでもう少し踏み込んでみましょう。
まず、多項式$Q(n,k),R(n,k)\in\mathbb{C}[n,k]$$\forall N\in\mathbb{N}:gcd(Q(n,k),R(n+N,k))=1$が成り立つ様に定めます。
そして、適当な多項式$\eta(n,k)\in\mathbb{C}(n,k)$を定め、次の様にして多項式$P(n,k)\in\mathbb{C}(n,k)$を作ります。
\begin{equation} Q(n+1,k)\eta(n+1,k)-R(n,k)\eta(n,k)=P(n,k) \end{equation}そして次の計算を行います。
\begin{eqnarray} \left\{ \begin{array}{l} \xi(n,k)=\frac{R(n,k)}{P(n,k)}\eta(n,k)\\ H(n,k)=\frac{P(n,k)Q(n,k)Q(n-1,k)\cdots Q(1,k)}{P(0,k)R(n,k)R(n-1,k)\cdots R(1,k)}\\ F(n,k)=\xi(n,k)H(n,k) \end{array} \right. \end{eqnarray}すると自動的に$F(n+1,k)-F(n,k)=H(n,k)$を満たす超幾何項$F(n,k),H(n,k)$を構成出来ます。後は、$H(n,k)$$k$についてGosperのアルゴリズムに沿って計算を進め$G(n,k)$を求め$H(n,k)=G(n,k+1)-G(n,k)$を構成すればWZ的組を構成出来る。
$H(n,k)$は一般的に$k$についてGosperのアルゴリズムを適用しても解を持たないケースも存在するため、$G$を構成できない事もある事に注意。
これから、この分野で研究をする場合は以下の方法を探すのがよさそうです。
  1. Gosperアルゴリズムで$G$を求める事が可能な$Q,R,\eta$を定める方法
  2. Gosperアルゴリズムを使用しないでも$G$を求める方法

手計算できる場合を考えたい

まずは一番簡単な例で考えます。

和:$S_{N}=\sum_{n=1}^{N}2^{n}n^{2}$を求めてください。

0.まずは$h_{n}=2^{n}n^{2}$が超幾何項である事を確認しましょう。
\begin{equation} \frac{h_{n+1}}{h_{n}}=\frac{(n+1)^{2}}{n^{2}}\frac{2}{1} \end{equation}

  1. Gosper変形:しかし、これは既に最初から適切な形になっているので今回は不要。
  2. Gosper方程式を解く:下記の様に記号を定めます。
    \begin{eqnarray} \left\{ \begin{array}{l} l_{n}=\xi_{n}2^{n}n^{2}\\ \xi_{n}=\frac{1}{n^{2}}\eta_{n}\\ 2\eta_{n+1}-\eta_{n}=n^{2} \end{array} \right. \end{eqnarray}
  3. $\eta_{n}=n^{2}+an+b$と置いて計算すると$a=-4,b=6$が成り立つ事が分かります。
    ゆえに、以下の数列が得られます。
    \begin{equation} l_{n}=2^{n}(n^{2}-4n+6)\quad(n\in\mathbb{N}_{0}) \end{equation}
  4. $l_{n}$を用いると下記の結論が得られる。
    \begin{eqnarray} S_{N}&=&l_{N+1}-l_{1}\\ &=&2^{N+1}(N^{2}-2N+3)-6 \end{eqnarray}

以下の三つの多項式について
\begin{eqnarray} \left\{ \begin{array}{l} p_{n}=3n^{3}+8n^{2}+\frac{29}{3}n+3\\ q_{n}=3n^{2}\\ r_{n}=n-\frac{2}{3} \end{array} \right. \end{eqnarray}
次の事に答えよ。
0.$\forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1$が成り立つ事を示してください。
1.$q_{n+1}\eta_{n}-r_{n}\eta_{n}=p_{n}$の解は$\eta_{n}=n$である事を証明してください。
2.これから、$\xi_{n}=\frac{r_{n}}{p_{n}}\eta_{n}$とおき、$\frac{h_{n+1}}{h_{n}}=\frac{p_{n+1}}{p_{n}}\frac{q_{n+1}}{r_{n+1}},l_{n}=\xi_{n}h_{n}$が成り立つ様に数列$l_{n},h_{n}$を定めると$l_{n+1}-l_{n}=h_{n}$が成り立っている事を示してください。
ただし、$h_{0}=1$とします。
3.最後に$\sum_{n=1}^{N}h_{n}$を求めてください。

0.$q_{n},r_{n}$のそれぞれの根は$0,0;\frac{2}{3}$です。という事は、$|0-\frac{2}{3}|=\frac{2}{3}\not\in\mathbb{N}_{0}$ですから命題7より$\forall N\in\mathbb{N}_{0}:gcd(q_{n},r_{n+N})=1$が示された。
1.0.より与えられた方程式はGosper方程式なので解は多項式の形を取る。
そこで、$\eta_{n}=An+B$の様な形を仮定できます。
代入して$A,B$を求めると$A=1,B=0$が得られるので証明完了。
2.1.の計算より$\xi_{n}=\frac{n(n-\frac{2}{3})}{3n^{3}+8n^{2}+\frac{29}{3}n+3}$
また、下記の様に計算できます。
\begin{eqnarray} h_{n}&=&\frac{p_{n}q_{n}q_{n-1}\cdots q_{1}}{p_{0}r_{n}r_{n-1}\cdots r_{1}}\\ &=&\frac{3^{n-1}(3n^{3}+8n^{2}+\frac{29}{3}n+3)(n!)^{2}}{(\frac{1}{3})_{n}} \end{eqnarray}
この計算から、が得られます。
\begin{eqnarray} l_{n}&=&\xi_{n}h_{n}\\ &=&\frac{3^{n-1}n(n-\frac{2}{3})(n!)^{2}}{(\frac{1}{3})_{n}} \end{eqnarray}
4.最後の和に関しては次の様になります。
\begin{eqnarray} \sum_{n=1}^{N}h_{n}&=&l_{N+1}-l_{1}\\ &=&\frac{3^{N}(N+\frac{1}{3})(N+1)\{(N+1)!\}^{2}}{(\frac{1}{3})_{N+1}}-1 \end{eqnarray}
つまり、次の様な計算が出来る事を意味しています。
\begin{equation} \sum_{n=1}^{N}\frac{3^{n-1}(3n^{3}+8n^{2}+\frac{29}{3}n+3)n!}{(\frac{1}{3})_{n}}=\frac{3^{N}(N+\frac{1}{3})(N+1)\{(N+1)!\}^{2}}{(\frac{1}{3})_{N+1}}-1 \end{equation}

ここでの計算から分かりますように、$\forall N\in\mathbb{N}:gcd(q_{n},r_{n+N})=1$を満たす$q_{n},r_{n}$を先に定めましてそこから$\eta_{n}$を決め、その後に$p_{n}$を求める事で面白い級数の公式を構成できます。
残念ながら、一般の場合Gosperの方程式は解を持つとは限りません。
しかし、この構成法ならいつでも可能です。
でも不満です。だって、この方法だと例えば$\zeta(2)$の加速級数すら導出できません。
ではどうすればいいでしょうか?
パラメータの個数を増やします。

次の様な二変数の多項式を考える。
\begin{eqnarray} \left\{ \begin{array}{l} Q(n,k)=n+k+1\\ R(n,k)=n^{2}k-\frac{1}{2} \end{array} \right. \end{eqnarray}
この時、次の問題を解いてください。
1.$n$を主変数とした時、$\forall N\in\mathbb{N}:gcd(Q(n,k),R(n+N,k))=1$が成り立つ。
2.$\eta(n,k)=n^{3}$とおき次の様な$P(n,k)$を求めよ。
\begin{equation} Q(n+1,k)\eta(n+1,k)-R(n,k)\eta(n,k)=P(n,k) \end{equation}
3.$\xi(n,k)=\frac{R(n,k)}{P(n,k)}\eta(n,k)$を求めよ。
4.$H(n,k)=\frac{P(n,k)Q(n,k)Q(n-1,k)\cdots Q(1,k)}{P(0,k)R(n,k)R(n-1,k)\cdots R(1,k)}$
5.$F(n,k)=\xi(n,k)H(n,k)$とおくと$F(n+1,k)-F(n,k)=H(n,k)$を満たします。これを用いて$\sum_{n=1}^{N-1}H(n,k)$を計算してください。

1.まず次の様に計算します。
\begin{eqnarray} R(n+N,k)&=&(n+N)^{2}k-\frac{1}{2}\\ &=&n^{2}k+2Nnk+N^{2}k-\frac{1}{2} \end{eqnarray}
そして$R(n+N,k)$$Q(n,k)$$n$を主変数として割ります。すると余りは次の様になります。
\begin{equation} k^{3}+2(1-N)k^{2}+(N-1)^{2}k-\frac{1}{2}\neq 0 \end{equation}
ゆえに$\forall N\in\mathbb{N}:gcd(Q(n,k))=1$を得る。
2.計算するだけです。
\begin{eqnarray} Q(n+1,k)\eta(n+1,k)-R(n,k)\eta(n,k)&=&(n+k+2)(n+1)^{3}-(n^{2}k-\frac{1}{2})n^{3}\\ &=&-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2 \end{eqnarray}
つまり
\begin{equation} P(n,k)=-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2 \end{equation}
3.以降は定義に従って計算しましょう。
\begin{eqnarray} \xi(n,k)&=&\frac{R(n,k)}{P(n,k)}\eta(n,k)\\ &=&\frac{n^{5}k+\frac{1}{2}n^{3}}{-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2} \end{eqnarray}
4.
\begin{eqnarray} H(n,k)&=&\frac{P(n,k)Q(n,k)Q(n-1,k)\cdots Q(1,k)}{P(0,k)R(n,k)R(n-1,k)\cdots R(1,k)}\\ &=&\frac{\{-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2\}(k+2)_{n}}{(k+2)k^{n}(1-\frac{1}{\sqrt{2k}})_{n}(1+\frac{1}{\sqrt{2k}})_{n}} \end{eqnarray}
5.
\begin{eqnarray} F(n,k)&=&\xi(n,k)H(n,k)\\ &=&\frac{(n^{5}k+\frac{1}{2}n^{3})(k+2)_{n}}{(k+2)k^{n}(1-\frac{1}{\sqrt{2k}})_{n}(1+\frac{1}{\sqrt{2k}})_{n}} \end{eqnarray}
より
\begin{eqnarray} \sum_{n=1}^{N-1}H(n,k)&=&F(N,k)-F(1,k)\\ &=&\frac{\{N^{5}k+\frac{1}{2}N^{3}\}(k+2)_{N}}{(k+2)k^{N}(1-\frac{1}{\sqrt{2k}})_{N}(1+\frac{1}{\sqrt{2k}})_{N}}-\frac{k+\frac{1}{2}}{k-\frac{1}{2}} \end{eqnarray}
この例は次の様な事を意味しています。
\begin{equation} \sum_{n=1}^{N-1}\frac{\{-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2\}(k+2)_{n}}{(k+2)k^{n}(1-\frac{1}{\sqrt{2k}})_{n}(1+\frac{1}{\sqrt{2k}})_{n}}=\frac{\{N^{5}k+\frac{1}{2}N^{3}\}(k+2)_{N}}{(k+2)k^{N}(1-\frac{1}{\sqrt{2k}})_{N}(1+\frac{1}{\sqrt{2k}})_{N}}-\frac{k+\frac{1}{2}}{k-\frac{1}{2}} \end{equation}

上の計算は自信が無いので一応予想でとどめておきます。
因みに、$G(n,k)$を構成するのは流石に手で計算できる範囲を超えているので省略いたします。(👈不可能かもしれない)

任意の自然数$k\in\mathbb{N}$に対して以下の式が成り立ちます。
\begin{equation} \sum_{n=1}^{N-1}\frac{\{-n^{5}k+n^{4}+(k+\frac{11}{2})n^{3}+3(k+3)n^{2}+(3k+7)n+k+2\}(k+2)_{n}}{(k+2)k^{n}(1-\frac{1}{\sqrt{2k}})_{n}(1+\frac{1}{\sqrt{2k}})_{n}}=\frac{\{N^{5}k+\frac{1}{2}N^{3}\}(k+2)_{N}}{(k+2)k^{N}(1-\frac{1}{\sqrt{2k}})_{N}(1+\frac{1}{\sqrt{2k}})_{N}}-\frac{k+\frac{1}{2}}{k-\frac{1}{2}} \end{equation}

補遺:実際のコード

下記にgosperのアルゴリズムに沿ってコーディングしたファイルがございますので使用してみてください。
配布資料👈クリック
一変数の場合にしか現在は対応していません

投稿日:54
更新日:54
OptHub AI Competition

この記事を高評価した人

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

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

バッジはありません。

投稿者

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中