形式的冪級数の積と逆数

同義語:products and inverses of formal power series

概要

形式的冪級数の積と逆数(products and inverses of formal power series)とは、数列 $(a_n)$ を係数に並べた母関数 $\sum_{n\ge0}a_nx^n$ を、$x$ を数ではなく係数の位置の目印とみなす形式的冪級数として扱うときの計算規則である。積の $x^n$ の係数を $\sum_{k=0}^na_kb_{n-k}$ と定めると、収束を問わずに多項式と同じ規則で計算できる。定数項が $0$ でない級数はただ 1 つの逆数をもち、その係数は漸化式で順に決まる。たとえば $\frac1{1-x}=\sum x^n$ は係数の等式として常に正しく、$\frac1{1-x-x^2}$ の係数は Fibonacci 数の漸化式を満たす。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 等比数列, 二項定理, 多項式, 数列

高校での出発点:係数が数を記録する

高校では、二項定理
$$ (1+x)^n=\sum_{k=0}^n\binom nkx^k $$
を習う。$x^k$ の係数 $\binom nk$ は、「$n$ 個の因子 $(1+x)$ のうち $k$ 個から $x$ を選び、残りから $1$ を選ぶ方法の数」を数えている。展開とは、各因子から 1 つずつ項を選んで掛け、全部の選び方について足すことだからである。
この「係数が数を記録している」という見方を使うと、数え上げの問題が多項式の掛け算になる。2 つの例で見てみよう。

Vandermonde の恒等式を係数で読む

$(1+x)^3(1+x)^3=(1+x)^6$ の両辺で、$x^3$ の係数を比べる。
右辺の $x^3$ の係数は $\binom63=20$ である。
左辺では、1 つ目の $(1+x)^3$ から $x^j$ の項を、2 つ目の $(1+x)^3$ から $x^{3-j}$ の項を選ぶと、掛けて $x^3$ になる。$j=0,1,2,3$ のそれぞれについて係数の積を足すと
$$ \binom30\binom33+\binom31\binom32+\binom32\binom31+\binom33\binom30=1\cdot1+3\cdot3+3\cdot3+1\cdot1=20 $$
である。両辺の係数は確かに等しい。
同じことを $(1+x)^m(1+x)^n=(1+x)^{m+n}$ の $x^k$ の係数で行うと、
$$ \sum_{j=0}^k\binom mj\binom n{k-j}=\binom{m+n}k $$
(Vandermonde の恒等式。$j>m$ や $k-j>n$ の項は $0$ とする)が得られる。組合せの式変形は一度もしていない。

さいころ 2 個の目の和

さいころ 1 個の目の出方を、式 $D=x+x^2+x^3+x^4+x^5+x^6$ で表す($x^k$ の係数が「目 $k$ の出方の数」$=1$)。
$D^2=(x+\cdots+x^6)(x+\cdots+x^6)$ を展開すると、1 つ目の因子から $x^i$、2 つ目の因子から $x^j$ を選んで $x^{i+j}$ を作る。指数が足されるので、$x^7$ の係数は $i+j=7$ となる組 $(i,j)$ の数、すなわち $(1,6),(2,5),(3,4),(4,3),(5,2),(6,1)$ の $6$ である。全体を展開すると
$$ D^2=x^2+2x^3+3x^4+4x^5+5x^6+6x^7+5x^8+4x^9+3x^{10}+2x^{11}+x^{12} $$
であり、係数の和は $36=6^2$ で、目の出方の総数に一致する。

図1:さいころ 2 個の目の和の出方の数は、!FORMULA[40][980378388][0] の係数として並ぶ(和が 7 のときが最大) 図1:さいころ 2 個の目の和の出方の数は、$(x+\cdots+x^6)^2$ の係数として並ぶ(和が 7 のときが最大)
2 つの例に共通するのは、数えたい数を係数に並べ、式の積を計算すると、係数どうしが自動的に組み合わさることである。そこで、数列 $a_0,a_1,a_2,\dots$ を丸ごと 1 つの式
$$ a_0+a_1x+a_2x^2+\cdots $$
にまとめ、数列についての問題を式の計算に翻訳したい。これが母関数の考え方である。
ただし、数列は無限に続くので、式も無限に続く。無限に続く式の「和」「積」「逆数」を、収束を気にせずに扱えるようにするのがこの記事の目標である。本記事で使う対応は次のとおりである。

高校の計算母関数の言葉本記事の箇所
展開して係数を比べる形式的冪級数の積def-gfe-formal、prop-gfe-ring
等比数列の和 $1+x+\cdots+x^n=\frac{1-x^{n+1}}{1-x}$逆数 $\frac1{1-x}=\sum x^n$prop-gfe-inverse、ex-gfe-geometric
漸化式で項を順に決める逆数の係数を順に決めるex-gfe-inverse-fibonacci

数を代入してよいかどうか(たとえば $x=2$ を入れてよいか)は、母関数に数を代入してよいときで扱う。

形式的冪級数の定義

以下、$K$ は有理数全体 $\mathbb{Q}$、実数全体 $\mathbb{R}$、複素数全体 $\mathbb{C}$ のいずれかとする。$K$ では四則演算($0$ で割ることを除く)が自由にできる。

形式的冪級数と母関数

$K$ の数の列 $(a_0,a_1,a_2,\dots)$ を
$$ F=\sum_{n\ge0}a_nx^n=a_0+a_1x+a_2x^2+\cdots $$
と書いたものを、$K$ 係数の形式的冪級数という。$a_n$ を $F$ の $x^n$ の係数といい、$[x^n]F$ と書く。$a_0$ を定数項という。

  1. 2 つの形式的冪級数は、すべての $n$ で $x^n$ の係数が等しいとき、等しいという。
  2. $F=\sum a_nx^n$、$G=\sum b_nx^n$ の和と積を
    $$ [x^n](F+G):=a_n+b_n,\qquad [x^n](FG):=\sum_{k=0}^na_kb_{n-k}=a_0b_n+a_1b_{n-1}+\cdots+a_nb_0 $$
    で定める。数 $c\in K$ を掛けることは、各係数を $c$ 倍することと定める。
  3. $K$ 係数の形式的冪級数全体を $K[\![x]\!]$ と書く。
  4. 数列 $(a_n)$ に対して、$\sum a_nx^n$ をその(通常の)母関数という。

ここで $x$ は数ではない。$x^n$ は「$n$ 番目の位置」を示す目印である。したがって形式的冪級数は数列そのものであり、「収束するか」を問う必要がない(母関数をこのように形式的冪級数として扱い、多くの場合に収束を問わないという立場は、KT17 第 8 章の冒頭と §8.1 にある)。
積の定義は、多項式の積で $x^k\cdot x^{n-k}=x^n$ となる項を全部集めたものである。有限個を除いて係数が $0$ の級数は多項式であり、多項式どうしでは、この積は高校で習う展開と一致する。図 2 のように、係数の積 $a_kb_l$ を表に並べると、$[x^n](FG)$ は $k+l=n$ となる斜めの列の和である。
図2:積 !FORMULA[80][1141983][0] の !FORMULA[81][36915456][0] の係数は、表の斜めの列(!FORMULA[82][696704203][0])に並ぶ !FORMULA[83][1326774046][0] の和である 図2:積 $FG$ の $x^n$ の係数は、表の斜めの列($k+l=n$)に並ぶ $a_kb_l$ の和である

積の係数を表で計算する

$F=1+2x+3x^2+4x^3+\cdots$($a_n=n+1$)と $G=1-x$($b_0=1$、$b_1=-1$、$b_n=0\ (n\ge2)$)の積を求める。

  • $x^0$ の係数:$a_0b_0=1\cdot1=1$。
  • $x^1$ の係数:$a_0b_1+a_1b_0=1\cdot(-1)+2\cdot1=1$。
  • $x^2$ の係数:$a_0b_2+a_1b_1+a_2b_0=0+2\cdot(-1)+3\cdot1=1$。
  • $x^3$ の係数:$a_0b_3+a_1b_2+a_2b_1+a_3b_0=0+0+3\cdot(-1)+4\cdot1=1$。
    一般に $n\ge1$ では、$b_{n-k}$ が $0$ でないのは $k=n$ と $k=n-1$ だけなので、$x^n$ の係数は $a_nb_0+a_{n-1}b_1=(n+1)-n=1$ である。よって
    $$ (1+2x+3x^2+\cdots)(1-x)=1+x+x^2+x^3+\cdots $$
    である。
多項式の積と一致すること

$F=1+x$、$G=1+x+x^2$ とする。定義で計算すると、$x^0$ の係数は $1\cdot1=1$、$x^1$ の係数は $1\cdot1+1\cdot1=2$、$x^2$ の係数は $1\cdot1+1\cdot1+0\cdot1=2$、$x^3$ の係数は $1\cdot0+1\cdot1+0+0=1$、$x^4$ 以降は $0$ である。高校の展開 $(1+x)(1+x+x^2)=1+2x+2x^2+x^3$ と同じ結果になる。

積の定義から、$[x^n](FG)$ は $a_0,\dots,a_n$ と $b_0,\dots,b_n$ だけで決まる。$n+1$ 番目より先の係数をどう変えても、$x^n$ の係数は変わらない。無限に続く級数の積が計算できるのはこのためである(各係数は有限個の積の和である)。

計算の規則

形式的冪級数の計算法則

$F,G,H\in K[\![x]\!]$ について、次が成り立つ。

  1. 交換法則:$F+G=G+F$、$FG=GF$。
  2. 結合法則:$(F+G)+H=F+(G+H)$、$(FG)H=F(GH)$。
  3. 分配法則:$F(G+H)=FG+FH$。
  4. すべての係数が $0$ の級数 $0$ と、定数項だけが $1$ の級数 $1$ について、$F+0=F$、$1\cdot F=F$。
係数を 1 つずつ比べる

方針:2 つの級数が等しいことは、すべての $n$ で $x^n$ の係数が等しいことである(def-gfe-formal の 1)。そこで、両辺の $x^n$ の係数を定義に従って書き出して比べる。$F=\sum a_nx^n$、$G=\sum b_nx^n$、$H=\sum c_nx^n$ とする。
段 1(和の法則):$[x^n](F+G)=a_n+b_n=b_n+a_n=[x^n](G+F)$ である。結合法則も同様に、数の足し算の結合法則 $(a_n+b_n)+c_n=a_n+(b_n+c_n)$ から従う。
段 2(積の交換法則):$[x^n](FG)=\sum_{k=0}^na_kb_{n-k}$ である。和の番号を $j:=n-k$ に取り替えると、$k=0,1,\dots,n$ は $j=n,n-1,\dots,0$ に対応し、
$$ \sum_{k=0}^na_kb_{n-k}=\sum_{j=0}^na_{n-j}b_j=\sum_{j=0}^nb_ja_{n-j}=[x^n](GF) $$
である。
段 3(積の結合法則):まず $(FG)H$ の係数を求める。$FG$ の $x^m$ の係数は $\sum_{i=0}^ma_ib_{m-i}$ なので、
$$ [x^n]\bigl((FG)H\bigr)=\sum_{m=0}^n\Bigl(\sum_{i=0}^ma_ib_{m-i}\Bigr)c_{n-m} $$
である。ここで $j:=m-i$、$k:=n-m$ とおくと、$i,j,k$ は $0$ 以上の整数で $i+j+k=n$ を満たし、逆にそのような $(i,j,k)$ から $m=i+j$ が決まる。よってこの和は、$i+j+k=n$ となる $0$ 以上の整数の組 $(i,j,k)$ すべてについての $a_ib_jc_k$ の和である。$F(GH)$ についても、$GH$ の $x^l$ の係数 $\sum_{j=0}^lb_jc_{l-j}$ を使って同じ計算をすると、同じ和になる。したがって $(FG)H=F(GH)$ である。
段 4(分配法則):$[x^n]\bigl(F(G+H)\bigr)=\sum_{k=0}^na_k(b_{n-k}+c_{n-k})=\sum_{k=0}^na_kb_{n-k}+\sum_{k=0}^na_kc_{n-k}=[x^n](FG+FH)$ である。
段 5(単位元):$1$ の係数は $e_0=1$、$e_m=0\ (m\ge1)$ なので、$[x^n](1\cdot F)=\sum_{k=0}^ne_ka_{n-k}=e_0a_n=a_n$ である。$F+0=F$ は係数ごとに $a_n+0=a_n$ による。$\square$

この命題により、形式的冪級数は、多項式や数と同じ規則で計算してよい。たとえば $(1+x)^m(1+x)^n=(1+x)^{m+n}$ のような指数法則も、結合法則から従う。

計算の規則を使った確認

$F=1+x$、$G=1-x$、$H=1+x^2$ とすると、$FG=1-x^2$ なので $(FG)H=(1-x^2)(1+x^2)=1-x^4$ である。一方 $GH=1-x+x^2-x^3$ なので $F(GH)=(1+x)(1-x+x^2-x^3)=1-x^4$ である($x^1,x^2,x^3$ の係数はそれぞれ $-1+1=0$、$1-1=0$、$-1+1=0$)。2 通りの計算が一致する。

同じ係数の畳み込みが掛け算の筆算に現れることは 掛け算の筆算と畳み込み で扱う。

逆数

高校の等比数列の和の公式 $1+x+\cdots+x^n=\frac{1-x^{n+1}}{1-x}$ に対応するのは、「$1-x$ に掛けて $1$ になる級数」である。まず手で求めてみる。

1-x に掛けて 1 になる級数

$(1-x)G=1$ となる $G=\sum b_nx^n$ を探す。$(1-x)G$ の $x^n$ の係数は、$n=0$ で $b_0$、$n\ge1$ で $b_n-b_{n-1}$ である(ex-gfe-product-table と同じ計算)。これが $1,0,0,\dots$ に等しいので
$$ b_0=1,\qquad b_1-b_0=0,\qquad b_2-b_1=0,\qquad\dots $$
であり、順に $b_0=1$、$b_1=1$、$b_2=1$、… と決まる。よって
$$ \frac1{1-x}=1+x+x^2+x^3+\cdots $$
である。同じ計算で、$K$ の数 $a$ について $(1-ax)G=1$ から $b_n=ab_{n-1}$ となり、$\frac1{1-ax}=\sum_{n\ge0}a^nx^n$ である($a=3$ なら $1+3x+9x^2+27x^3+\cdots$)。

一般の場合は次のとおりである。

逆数をもつ条件

$F=\sum a_nx^n\in K[\![x]\!]$ について、$FG=1$ となる $G\in K[\![x]\!]$ が存在するための必要十分条件は、$a_0\ne0$ である。このとき $G$ はただ 1 つで、その係数は
$$ b_0=\frac1{a_0},\qquad b_n=-\frac1{a_0}\bigl(a_1b_{n-1}+a_2b_{n-2}+\cdots+a_nb_0\bigr)\quad(n\ge1) $$
によって $b_0,b_1,b_2,\dots$ の順に決まる。この $G$ を $F^{-1}$ または $\frac1F$ と書く。

係数の方程式を順に解く

方針:$FG=1$ を係数ごとの方程式の列に書き直し、それを $b_0,b_1,\dots$ の順に解く。
段 1(方程式に書き直す):$1$ の係数は $1,0,0,\dots$ なので、$FG=1$ は次の方程式がすべて成り立つことと同じである。
$$ a_0b_0=1,\qquad a_0b_n+a_1b_{n-1}+\cdots+a_nb_0=0\quad(n\ge1). $$
段 2($a_0=0$ なら解がない):$a_0=0$ なら、1 つ目の方程式の左辺は $0\cdot b_0=0$ であり、$1$ に等しくならない。よって $G$ は存在しない。
段 3($a_0\ne0$ なら解がただ 1 つある):$a_0\ne0$ とする。1 つ目の方程式から $b_0=\frac1{a_0}$ であり、$b_0$ はこの値以外にとれない。$n\ge1$ の方程式は $a_0b_n=-(a_1b_{n-1}+\cdots+a_nb_0)$ と書け、右辺は $b_0,\dots,b_{n-1}$ だけを含む。$b_0,\dots,b_{n-1}$ がすでにただ 1 通りに決まっていれば、両辺を $a_0$ で割って $b_n$ もただ 1 通りに決まり、それは主張の式である。$n$ についての数学的帰納法により、すべての $b_n$ がただ 1 通りに決まる。こうして決めた $G$ はすべての方程式を満たすので $FG=1$ であり、積の交換法則(prop-gfe-ring)から $GF=1$ でもある。$\square$

逆数の計算
  1. $F=1+x$:$a_0=1$、$a_1=1$、$a_n=0\ (n\ge2)$ なので $b_0=1$、$b_n=-b_{n-1}$ であり、$\frac1{1+x}=1-x+x^2-x^3+\cdots$ である。
  2. $F=2-x$:$a_0=2$、$a_1=-1$ なので $b_0=\frac12$、$b_n=-\frac12\cdot(-1)b_{n-1}=\frac12b_{n-1}$ であり、$\frac1{2-x}=\frac12+\frac14x+\frac18x^2+\cdots=\sum_{n\ge0}\frac{x^n}{2^{n+1}}$ である。
  3. $F=1+x+x^2$:$b_0=1$、$b_1=-b_0=-1$、$n\ge2$ で $b_n=-(b_{n-1}+b_{n-2})$ なので、$b_2=-(-1+1)=0$、$b_3=-(0-1)=1$、$b_4=-(1+0)=-1$、$b_5=-(-1+1)=0$、… となり、
    $$ \frac1{1+x+x^2}=1-x+0x^2+x^3-x^4+0x^5+x^6-\cdots $$
    と、$1,-1,0$ が繰り返される。これは $(1-x)(1+x+x^2)=1-x^3$ から $\frac1{1+x+x^2}=\frac{1-x}{1-x^3}=(1-x)(1+x^3+x^6+\cdots)$ としても確かめられる。
1/(1-x-x^2) の係数と漸化式

$F=1-x-x^2$ の逆数 $G=\sum b_nx^n$ を求める。$a_0=1$、$a_1=-1$、$a_2=-1$、$a_n=0\ (n\ge3)$ なので、prop-gfe-inverse の式は
$$ b_0=1,\qquad b_1=b_0=1,\qquad b_n=b_{n-1}+b_{n-2}\quad(n\ge2) $$
になる。順に計算すると $b_0,b_1,\dots,b_9=1,1,2,3,5,8,13,21,34,55$ である。分母の多項式 $1-x-x^2$ が、漸化式 $b_n=b_{n-1}+b_{n-2}$ を記録していることがわかる。この続きは Fibonacci数の母関数で扱う。

2 乗の逆数

$\frac1{(1-x)^2}$ は、$\frac1{1-x}$ の 2 乗である($(1-x)^2\cdot\bigl(\frac1{1-x}\bigr)^2=\bigl((1-x)\cdot\frac1{1-x}\bigr)^2=1$ で、逆数はただ 1 つだから)。$\frac1{1-x}$ の係数はすべて $1$ なので、2 乗の $x^n$ の係数は $\sum_{k=0}^n1\cdot1=n+1$ であり、
$$ \frac1{(1-x)^2}=1+2x+3x^2+4x^3+\cdots $$
である。これは ex-gfe-product-table の結果 $(1+2x+3x^2+\cdots)(1-x)=\frac1{1-x}$ の両辺に $\frac1{1-x}$ を掛けたものと一致する。

反例:定数項が 0 の級数は逆数をもたない

$F=x$($a_0=0$、$a_1=1$)は prop-gfe-inverse の条件 $a_0\ne0$ を満たさない。実際、どんな $G=\sum b_nx^n$ についても $xG=b_0x+b_1x^2+\cdots$ の定数項は $0$ なので、$xG=1$ にはならない。$F=2x+x^2$ も同じ理由で逆数をもたない。条件 $a_0\ne0$ を外すと、「逆数がある」という結論が崩れる。

等比数列の和の公式との関係をまとめておく。多項式の等式 $(1-x)(1+x+\cdots+x^n)=1-x^{n+1}$ は、次数が $n$ 以下の係数だけを見ると $1$ と一致する。ex-gfe-geometric の等式 $(1-x)\sum x^n=1$ は、この「$n$ 次以下では $1$」がすべての $n$ で成り立つことを 1 つの式で述べたものであり、極限を一度も使っていない。$x$ に $2$ を入れて $-1=1+2+4+\cdots$ とすると誤りになるのは、形式的な等式から数の等式に移るところに原因がある(母関数に数を代入してよいとき)。

さらに先へ

  • Fibonacci 数:漸化式を満たす数列の母関数は、分母が多項式の分数式になる。部分分数分解で一般項が求まる(Fibonacci数の母関数)。
  • 無限積と分割:$\frac1{1-x}\cdot\frac1{1-x^2}\cdot\frac1{1-x^3}\cdots$ のような無限個の積も、係数ごとに意味をもたせられる。これで整数の分割が数えられる(分割の母関数)。
  • 指数型母関数:$\sum a_n\frac{x^n}{n!}$ を使うと、番号の付いたものの並べ方(完全順列など)の数え上げが積になる(母関数)。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する