第12回 母なる関数、母関数
大野 泰生
数学で用いられる専門用語の中には,西洋数学の流入以前からのもの,海外の専門用語を和訳したもの,あるいは日本人の貢献などによって日本で名付けられ海外に広がったものなど,様々な経緯の用語が存在している.どの種類の用語であれ,それぞれに味わいがあって興味深いものも多い.
海外で用いられている名前(の和訳)よりも,和名のほうが優れていると感じる用語もある.例えば「母関数(ぼかんすう)」という名前は秀逸であると私は思う.
◇ ◇ ◇
ある数列に対して,その数列を展開係数にもつ関数は,その数列の母関数と呼ばれる.フランスの数学者ド・モアブルによる 1730 年の研究で最初に使われたと言われている.英語では“generating function”.直訳すると「生成関数」であろうか.実際,「生成関数」という和名をもって呼ばれることもあるようだが,私の周囲では「母関数」が最も通りが良いと思われる.
◇ ◇ ◇
身近な具体例として二項係数の母関数を挙げてみよう.
a≥b に対して二項係数 (ab) とは, a 個の元の集合から b 個の元を選ぶ選び方の個数である.高等学校の教科書などでは aCb という記号が用いられているが,同じものである.一般に
(ab) = a!b!(a−b)!
が成り立つ.(一般性のために通例, 0! = 1 と考える.また, a 個の元の集合から 0 個または a 個の元を選ぶ選び方は 1 通りと考える.)
二項係数を表1のように並べたものを,パスカルの三角形と呼ぶ. (ab) の値を(上から) a+1 行目の(左から) b+1 列目に置いたものである.

(aa−b) = a!b!(a−b)! = (ab) であることは,表1が左右対称になっていることを意味し,中央の対称軸上(オレンジ色部分)にない自然数はすべて,この表に偶数回登場する.パスカルの三角形は,おもしろい事実をふんだんに携えた,とても魅力的な三角形だと思う.
例えば,第 a+1 行の数を足し合わせると 2a になる.また,第 a+1 行の数を,符号をプラス・マイナス・プラス ・・・ と交互に切り替えながら(つまり交代的に)足し合わせると 0 になる,というようなことに気付く.
表を見ると a = 1, 2, 3, 4, 5, 6, 7, 8 ではどちらも成立しているが,この先も正しいのだろうか.つまり,どのような自然数 a についても
∑b=0a(ab)=2a(1)
と,
∑b=0a(−1)b(ab)=0(2)
は成り立つのか?である.どうすれば確かめられるのだろうか.
いま, a をある自然数とした場合, (a0), (a1), ・・・, (aa) の母関数は, fa(x) = (1+x)a である.例えば, a = 3,4 とすると,
f3(x) = (1+x)3 = 1+3x+3x2+x3,
f4(x) = (1+x)4 = 1+4x+6x2+4x3+x4
となって,展開の係数にそれぞれ, 1, 3, 3, 1 と, 1, 4, 6, 4, 1 という二項係数が現れる.一般に
fa(x) = (1+x)a = ∑b=0a(ab)xb
である.このように,数列 k0, k1, k2, ・・・, kn を係数にもつ関数 f(x) = k0+k1x+k2x2+ ・・・ +knxn をこの数列の母関数と呼ぶのだ.
fa(x) = (1+x)a が二項係数の母関数だと判れば,さきほどの (1), (2) の式の証明は簡単である.すなわち,それぞれの左辺は, fa(x) に x = 1 と x = −1 を代入したものに他ならない.したがって,
fa(1) = (1+1)a = 2a, fa(−1) = (1−1)a = 0
であることから,さきほどのふたつの式は証明できるのだ.
◇ ◇ ◇
数列は微分できないが,母関数を扱うと一般に微分を考えることができる.ここで, a を自然数として fa(x) の二通りの表示
∑b=0a(ab)xb = (1+x)a
の各辺を x について微分してみよう.すると,
∑b=1ab(ab)xb−1 = a(1+x)a−1
となる.この式に例えば x = 1 を代入すると,
∑b=1ab(ab) = a2a−1
となる. a に 3, 4 といった数を入れてみると,
(31)+2(32)+3(33) = 3⋅22,
(41)+2(42)+3(43)+4(44) = 25
といった等式がもたらされる. x = 1 の代わりに x = 2 を代入してみると,
∑b=1ab2b−1(ab) = a3a−1.
どちらも一風変わった式だが,どのような自然数 a に対しても正しい式なのである.
◇ ◇ ◇
ではここで,パスカルの三角形に並んでいる数字を全て二乗してみよう.新しい三角形は表2のようになる.
各行の数の和を計算してみるとどうなるだろうか.さきほどは各行(第 a+1 行)の和は 2a であったが,今度は上から順に,
1 , 2, 6, 20, 70, 252, ・・・
となる.
あれ?この数列,どこかで見かけなかっただろうか?
表1のパスカルの三角形を見てみよう.そう,中央の対称軸に現れる数列とそっくりだ.
では,これらの数列はこの先もすべて一致するのだろうか?
“この先もすべて一致”,つまり“全く同じ数列になる”という予想を立てることにしよう.予想式はこうだ. a = 0, 1, 2, ・・・ に対して,
(2aa)=?∑b=0a(ab)2.
果たしてこの関係式がすべての a について成り立つのだろうか.どうやって証明すればよいのだろうか.階乗を使って予想式を書き直してみると
(2a)!a!a!=?∑b=0a(a!b!(a−b)!)2
となって,容易には証明できそうにない.
ここでふたたび活躍するのが母関数である.左辺の (2aa) は,母関数 f2a(x) の xa の項の係数である. f2a(x) は,
f2a(x) = (1+x)2a = (1+x)a(1+x)a = fa(x)fa(x)
= {∑b=0a(ab)xb}{∑c=0a(ac)xc} = ∑b=0a∑c=0a(ab)(ac)xb+c
となるので,最右辺の式から xa の項(つまり b+c = a を満たす項)の係数だけを取り出すことを考える.するとこれは,
∑b=0a(ab)(aa−b)
となるのだが, (ab) = (aa−b) であることから, ∑b=0a(ab)2 となるのだ.つまり 0 以上の整数 a に対して,母関数 f2a(x) の xa の係数を二通りに計算することで,
(2aa) = ∑b=0a(ab)2
が証明できたことになる.数列として扱うだけではちょっと示しにくそうな式だが,母関数がうまく機能して証明できたのだ.
◇ ◇ ◇
無限に続く数列の場合も,同様に母関数が定義できる.例えば,無限数列 1, 1, 1, ・・・ の母関数は
g(x) = 11−x = ∑n=0∞xn = 1+x+x2+x3+・・・
である.無限等比級数の公式である.(ここでは級数の収束域のみを考える.)無限数列 1, 2, 3, ・・・ の母関数 1(1−x)2 は g(x) を微分することで得られる.
g′(x) = 1(1−x)2 = ∑n=0∞(n+1)xn = 1+2x+3x2+4x3+・・・.
つまり,これらふたつの数列の母関数は,微分でつながる姉妹のようなものである.無限に続く数の列が,ひとつの関数でコンパクトに書かれてしまうことも興味深い.
g′(x) に x = 12 を代入すると,
g′(12) = 1+22+34+48+516+632+・・・
という無限に続く和が,
g′(12) = 1(1−12)2=4
に等しいと簡単に判る.これはほんの一例であって,(収束域で) x をいろいろな値に取りかえて計算できる.
さきほど挙げた, 1, 2, 6, 20, 70, 252, ・・・ という数列について,母関数
h(x) = 1+2x+6x2+20x3+70x4+252x5+・・・
を考えてみても,このままではなかなか特徴をつかめない.しかし,二乗して x の次数の低い項から順に計算していくと,
h(x)2 | = | (1+2x+6x2+20x3+⋯)(1+2x+6x2+20x3+⋯) |
| = | 1+(2+2)x+(6+4+6)x2+(20+12+12+20)x3+⋯ |
| = | 1+4x+16x2+64x3+256x4+⋯ |
となって,等比級数 11−4x = ∑n=0∞(4x)n なのではないかと容易に予想できる.これは実際に正しいと示せるので,
h(x) = 11−4x−−−−−√
だと判明する.例えば x=15 とすると,
∑a=0∞15a(2aa)=5–√
という無理数の等式が得られる.自然数からなる数列の母関数が無理関数になって不思議に(あるいは難しく)思われるかもしれないが,母関数を考えることで,調べたい無限数列に対して解析的な扱いが可能となり,大変有効なのだ.
母関数を最初に用いたとされるド・モアブルは,母関数を用いてフィボナッチ数の一般項を求めた.整数の分割問題やフィボナッチ数を始めとする多種多様な無限数列とその背後にある現象が,母関数を用いて詳しく研究されている.母関数の活躍の場は数学に留まらず,様々な自然科学や経済学にも広がる.母関数はとても力強い道具なのだ.
◇ ◇ ◇
母関数 f(x) = ∑n≧0knxn を n 回微分して x = 0 とし n! で割ると, kn の値を取り出すことができる.つまり調べたい数列の母関数は,その数列の情報を余さず持っている.しかも,ある種の情報の切り出しに対してとても有効だと言える.いくつもの数の並びからなる数列をひとつの関数として扱うことが許されるのだ.その数列の“母”のような関数に思えてくる.
母関数という名前の巧みさはここにあると思う.誰がどの時期にこの和名を付けたのか,どういった経緯でこの和名になったのか,どのようにして普及して行ったのかを私は知らないが,上に述べたような側面を考えると,この名前が(少なくとも「生成関数」という名前よりも)受け入れられやすく定着しやすいことは理解できる.包容力の感じられるすばらしい和名だと思う.
◇ ◇ ◇
数学において母関数を用いて初めて証明される事実は少なくない.母関数を考えることで新たな知見が得られる場面も多い.
母なる関数にはこれからも,老いることなく活躍を続けてもらいたい.
(2016/8/3掲載)
(イラスト:マエカワアキオ)
※ 次回からは隔月(偶数月)の第1水曜日の更新となり,第13回は10月5日(10月第1水曜日)に掲載いたします.どうぞお楽しみに!
ご感想を電子メールでお送りいただければ幸いです.送付先アドレス info@shokabo.co.jp
「数学者的思考回路」 Copyright(c) 大野泰生,2016
著作権法上の例外を除き,無断で本Webページの全部または一部を転写・複製等することはできません.
(→ 【裳華房】Webサイトのご利用について)
|