■計算可能な多胞体(その29)
【1】母関数(生成関数)
まず,母関数についておさえておきましょう.与えられた数列{an}の性質を知ろうとしたとき,数列{an}を直接調べるのではなく,たとえば,xを変数とする級数関数
φ(x)=a0 +a1 x+a2 x2 +・・・+an xn+・・・
をつくり,この関数を観察します.数列の性質は何らかの形で関数の振る舞いに反映していると考えられます.
一方,ベキ級数の大切さは,三角関数,指数関数,対数関数など多くのよく知られた関数がベキ級数に展開されることにあります.たとえば,テイラー展開
exp(x)=1+1/1!x+1/2!x^2 +・・・
log(1+x)=x−1/2x^2 +1/3x^3 −1/4x^4 +・・・
sinx=x−1/3!x^3 +1/5!x^5 −・・・
sinhx=x+1/3!x^3 +1/5!x^5 +・・・
cosx=1−1/2!x^2 +1/4!x^4 −・・・
coshx=1+1/2!x^2 +1/4!x^4 +・・・
arctanx=x−1/3x^3 +1/5x^5 −1/7x^7 +・・・
などがその例です.
こうして数列{an }の数論的性質(離散的)を,関数φ(x)の解析的性質(連続的)によって解明していこうとする発想が母関数のアイディアです.
母関数は18世紀にド・モアブル,スターリング,オイラーたちによって考案された偉大なる着想であって,一般的な数学の道具のひとつになっています.たとえば,確率論においても母関数は重要な役割を果たし,そこでは積率母関数や特性関数として知られています.積率母関数・特性関数からはモーメントや複数の確率分布を合成した難しい分布型を得ることができます.
[1]通常型母関数
数列は補助変数xを用いてベキ級数としてうまく表すことができます. 数列{an },すなわち,a0 ,a1 ,a2 ,・・・に対して,
a0 +a1 x+a2 x2 +・・・=Σan x^n =f(x)
で表される関数f(x)をその通常型母関数といいます.
たとえば,
exp(x)=1+1/1!x+1/2!x^2 +1/3!x^3 +1/4!x^4 +・・・
より,exp(x)は数列{1/0!,1/1!,1/2!,・・・}の通常型母関数ですし,
1/(1−x)=1+x+x^2 +x^3 +・・・
ですから,1/(1−x)は{1,1,1,・・・}の通常型母関数になっていることがわかります.
[2]通常型母関数の例−−−フィボナッチ数列
隣り合う2項の和が次の項となる数列
1,1,2,3,5,8,13,・・・
はフィボナッチ数列の名で有名ですが,フィボナッチ数列{Fn }の通常型母関数f(x)は
f(x)=F0 +F1 x+F2 x^2 +F3 x^3 +・・・
xf(x)= F0 x+F1 x^2 +F2 x^3 +・・・
x^2 f(x)= F0 x^2 +F1 x^3 +・・・
また,Fn =Fn-1 +Fn-2 より
f(x)=x/(1−x−x^2 )=ΣFn x^n
=1+x+2x^2+3x^3+5x^4+8x^5+13x^6+・・・
と簡単な式になります.
ここで,分母(1−x−x^2 )は黄金比と関係しているわけですが,実際,フィボナッチ数列の隣り合う2項の比は黄金比に収束することはよく知られています.
Fn/Fn-1→φ (n→∞)
【補】黄金比
黄金比φは,実は2次方程式x^2 −x−1=0の根であり,φ=(√5+1)/2=1.618です.
黄金比φには多くの性質があり,
1,φ,φ^2 ,φ^3 ,φ^4 ,φ^5 ,・・・という等比数列を考えると,1+φ=φ^2 ですから
φ^n =φ^n-1 +φ^n-2
ここで,ガウス記号[x](xを超えない最大の整数)を用いると,数列{[φ^n-1 ]}の各次数に対応して得られる整数列は
1,1,2,3,5,8,13,・・・
すなわち,フィボナッチ数列{Fn }となります.
また,初項1,第2項3のフィボナッチ数列
1,3,4,7,11,18,・・・
はリュカ数列と呼ばれています.リュカ数列はフィボナッチ数列と同じ漸化式をもち,連続する2つの項の比は黄金比に近づきます.
リュカはフィボナッチ数列,リュカ数列を用いてメルセンヌ数(2^n −1)が素数であるかどうかを判定し,(2^127 −1)が素数であることを示しています(1876年).リュカの素数判定法はメルセンヌ数が素数であるか否か判定する非常に能率的なアルゴリズムとなっていて,リュカテストの効率のよさのおかげで最近の素数の世界記録はすべてメルセンヌ素数が独占しています.
さらに,1つの項の和がその前の3つの項の和になっているFn =Fn-1 +Fn-2 +Fn-3 で定義される数列
1,1,1,3,5,9,17,・・・
は,フィボナッチ数列の拡張とみなせるので,フィボナッチ(Fibonacci)をもじってトリボナッチ(Tribonacci)数列と呼ばれます.
===================================