超幾何関数に対するオイラー積分表示の証明の続きです。証明したいのは下記の(%o3)の式です。
assume(z-1<0);
assume(-1<z);
F1:hypergeometric([a,b],[c],z)=gamma(c)/(gamma(c-a)*gamma(a))*'integrate(t^(a-1)*(1-t)^(c-a-1)*(1-t*z)^(-b),t,0,1);
前回は、上記の右辺の積分について、下記の式まで証明しました。引き続き右辺の式変形を行います。
F2:'integrate(t^(a-1)*(1-t)^(c-a-1)*(1-t*z)^(-b),t,0,1)='integrate(t^(a-1)*(1-t)^(c-a-1)*sum(pochhammer(b,n)/n!*(z*t)^n,n,0,inf),t,0,1);
総和記号の外側の積の項を内側に移し、積分と総和を入れ替えます(この入れ替えには収束の議論が別途必要ですがそこは省略です)。
F3:intosum(rhs(F2));
F4:sum('integrate(part(F3,1,1),t,0,1),n,0,inf);
この積分はベータ関数になっていることがわかります。実際、ベータ関数の定義は $$\beta (x,y)= \int_0^1 {(1-t)^{x-1}\,t^{y-1}}$$ です。この積分をベータ関数に書き直せば、ベータ関数に関する恒等式を使えるようになります。そこでこの積分をベータ関数に書き直すルールを定義しましょう。
matchdeclare([exp1,exp2],true);
defrule(int_to_beta,'integrate((1-t)^(exp1-1)*t^(exp2-1),t,0,1), beta(exp1,exp2));
%o6にこのルールを適用することで次式を得ます。
F5:apply1(F4,int_to_beta);
この式にmakegamma関数を適用するとポッホハマー記号、ベータ関数、階乗が全てガンマ関数で表示されます。
F6:makegamma(F5);
F7:intosum(F6);
あと一息です。(%o3)を振り返ってみると、右辺の積分が(%o11)と等しいことがわかりました。左辺を定義の級数の形で書き、右辺は積分のところを上記の総和で置き換えると、証明するべき式は次式であること、あるいはそれを少し変形した(%o13)であることがわかります。
F8:sum(pochhammer(a,n)*pochhammer(b,n)/pochhammer(c,n)*z^n/n!,n,0,inf)=gamma(c)/gamma(a)/gamma(c-a)*F7;
F9:lhs(F8)=intosum(rhs(F8));
収束条件を満たす任意の$z$について両辺が等しいためには、両辺の総和の各項の係数が全て等しいことが十分条件です。そこで係数の差を計算してみましょう。
F10:part(F9,1,1)/z^n-part(F9,2,1)/z^n;
この式のポッホハマー記号、階乗を全てガンマ関数に書き直して簡約してみます。
makegamma(F10);
というわけで(%o13)、従って $$F\left( \left. \begin{array}{c}a,\;b\\c\end{array} \right |,z\right)=\frac{\Gamma\left(c\right)\,\int_{0}^{1}{\frac{\left(1-t\right)^{c-a-1}\,t^{a-1}}{\left(1-t\,z\right)^{b}}\;dt}}{\Gamma\left(a\right)\,\Gamma\left(c-a\right)}$$ が証明できました!