1 分割の数え上げ:Stirling 数と Bell 数
定義 1.1. 非負整数nに対し[n]={1,2,…,n}と書く([0]=∅)。非負整数n,kに対し、[n]の分割のうちちょうどk個のブロックからなるものの個数を 第二種 Stirling 数 (Stirling number of the second kind) といい、S(n,k)と書く。
Aをn元集合とし、全単射u:A→[n]をとると、P↦{u(B)∣B∈P}はAの分割全体から[n]の分割全体への全単射であり、ブロックの個数を変えない。したがってn元集合の分割のうちちょうどk個のブロックからなるものの個数は、どのn元集合をとってもS(n,k)に等しい。
∅の分割はブロックを一つももたない空族に限るからS(0,0)=1である。n≥1のとき空族の合併は[n]にならないからS(n,0)=0である。分割のブロックは空でなく互いに交わらないから、[n]がk個のブロックからなる分割をもてばk≤nであり、k>nのときS(n,k)=0である。
命題 1.2.n≥1かつ1≤k≤nを満たす整数n,kに対しS(n,k)=kS(n−1,k)+S(n−1,k−1)が成り立つ。
証明.Sを[n]のちょうどk個のブロックからなる分割全体の集合とする。分割のブロックは互いに交わらず合併が[n]であるから、P∈Sに対してnを含むPのブロックはただ一つ定まる。そこでS1を{n}をブロックにもつP∈Sの全体、S2をnを含むブロックが二元以上であるP∈Sの全体とすると、S=S1∪S2かつS1∩S2=∅である。
P∈S1にP∖{{n}}を対応させる写像は、S1から[n−1]のちょうどk−1個のブロックからなる分割全体への全単射である。逆写像はQ↦Q∪{{n}}で与えられる。ゆえに∣S1∣=S(n−1,k−1)である。
[n−1]のちょうどk個のブロックからなる分割Qと、QのブロックBの組(Q,B)に、QのBをB∪{n}で置き換えて得られる分割を対応させる写像は、そのような組の全体からS2への全単射である。逆写像は、P∈S2のnを含むブロックCをC∖{n}で置き換えたものをQ、C∖{n}をBとすることで与えられる。Qの選び方はS(n−1,k)通り、QごとにBの選び方はk通りであるから、§D2.2 定理 2.3により組の個数はkS(n−1,k)であり、∣S2∣=kS(n−1,k)である。
S1とS2は互いに素であるから、§D2.2 定理 2.1によりS(n,k)=∣S1∣+∣S2∣=S(n−1,k−1)+kS(n−1,k)である。▨
証明.Eを[n]から[k]への全射全体、Tを[n]のちょうどk個のブロックからなる分割全体とする。f∈Eに対して
π(f)={f−1(i):i∈[k]}とおく。fは全射であるから、π(f)はTの元である。任意のP∈Tと全単射h:P→[k]に対し、a∈[n]を含むPのブロックをBaとしてfh(a)=h(Ba)と定めると、fh∈Eかつπ(fh)=Pである。逆に、π(f)=Pを満たすf∈Eは、B∈P上で一定であるfの値をh(B)とする全単射h:P→[k]を定める。したがってπ:E→Tは全射であり、各P∈Tの逆像はPから[k]への全単射全体と一対一に対応するので、ちょうどk!個の元をもつ。
k!は正整数であるから、§D2.2 命題 2.2により∣E∣=k!∣T∣=k!S(n,k)である。一方、§D2.3 命題 2.1により
∣E∣=j=0∑k(−1)j(jk)(k−j)nである。二つの等式から結論を得る。▨
定義 1.4. 非負整数nに対し、[n]の分割の総数を Bell 数 (Bell number) といい、Bnと書く。分割をブロックの個数で類別すると、ブロックの個数は0以上n以下であるから、§D2.2 定理 2.1によりBn=∑k=0nS(n,k)であり、とくにB0=S(0,0)=1である。定義 1.1で述べた全単射による対応から、n元集合の分割の総数は、どのn元集合をとってもBnに等しい。
系 1.5. 非負整数nに対し、[n]上の同値関係の個数はBnである。
証明.§D2.5 系 2.6により[n]上の同値関係全体と[n]の分割全体は同じ元の個数をもち、定義 1.4により後者の個数はBnである。▨
命題 1.6. 非負整数nに対しBn+1=∑k=0n(kn)Bkが成り立つ。
証明.Bを[n+1]の分割全体の集合とする。P∈Bに対してn+1を含むPのブロックをC(P)と書き、e(P)=[n+1]∖C(P)とおく。n+1∈C(P)であるからe(P)⊆[n]であり、∣e(P)∣は0以上n以下の整数である。0≤k≤nに対しBk={P∈B∣∣e(P)∣=k}とおくと、BはB0,…,Bnの互いに素な合併である。
kを固定する。P∈Bkに対し、A=e(P)とQ=P∖{C(P)}を対応させる。QのブロックはC(P)と交わらず、その合併はAであるから、QはAの分割である。逆に、[n]のk元部分集合AとAの分割Qに対しQ∪{[n+1]∖A}とおくと、[n+1]∖Aはn+1を含むので空でなく、これはBkの元であって、二つの対応は互いに逆である。ゆえにBkは、[n]のk元部分集合AとAの分割Qの組(A,Q)全体と一対一に対応する。
Aの選び方は§D2.2 命題 3.1により(kn)通りであり、AごとにQの選び方は、Aがk元集合であることと定義 1.4によりBk通りである。§D2.2 定理 2.3により∣Bk∣=(kn)Bkである。B0,…,Bnは互いに素であるから、§D2.2 定理 2.1によりBn+1=∣B∣=∑k=0n(kn)Bkである。▨
例 1.8. 漸化式を実際に回して値を求め、独立な数え方で二重に確かめる。
まず命題 1.2によりS(4,2)=2S(3,2)+S(3,1)である。ここでS(3,2)=2S(2,2)+S(2,1)=2⋅1+1=3、S(3,1)=1⋅S(2,1)+S(2,0)=1+0=1であるからS(4,2)=2⋅3+1=7.直接列挙しても、[4]={1,2,3,4}を2ブロックに分ける仕方は、1を含むブロックで分割が定まることから{1}∣{2,3,4}、{1,2}∣{3,4}、{1,3}∣{2,4}、{1,4}∣{2,3}、{1,2,3}∣{4}、{1,2,4}∣{3}、{1,3,4}∣{2}の7通りで一致する。
次に、S(4,1)=1⋅S(3,1)+S(3,0)=1、S(4,3)=3S(3,3)+S(3,2)=3+3=6、S(4,4)=4S(3,4)+S(3,3)=0+1=1であるから、定義 1.4によりB4=S(4,1)+S(4,2)+S(4,3)+S(4,4)=1+7+6+1=15.これを命題 1.6でも確かめる。同じ計算によりB0=1、B1=S(1,1)=1、B2=S(2,1)+S(2,2)=2、B3=S(3,1)+S(3,2)+S(3,3)=1+3+1=5であるからB4=(03)B0+(13)B1+(23)B2+(33)B3=1⋅1+3⋅1+3⋅2+1⋅5=15,確かに一致する。
最後に、Stirling 数と写像の数え上げの橋渡しを確かめる。命題 2.3 (3)により[4]から[2]への全射の個数は2!S(4,2)=2⋅7=14である。一方§D2.3 命題 2.1によれば同じ個数は∑j=02(−1)j(j2)(2−j)4とも書け、(02)24−(12)14+(22)04=16−2+0=14となって一致する。さらに命題 2.3 (1)により[4]から[2]への写像は全部で24=16個であり、全射でないものは像が一点である写像すなわち2個の定値写像に限るから、16−2=14が三度目の一致を与える。
2 写像の数え上げ:十二相
NからXへの写像を数えるとき、Nの元どうし、Xの元どうしを区別するかどうかによって、何を同じ写像とみなすかが変わります。区別しないことは、Nの全単射またはXの全単射で移り合う写像を同一視することとして定式化されます。区別の有無の2×2通りと、写像へ課す条件(任意・単射・全射)の3通りとの組合せで12通りの数え上げが得られ、これらをまとめて十二相(twelvefold way)と呼びます。Nの元を球、Xの元を箱とみなして、球を箱へ入れる入れ方を数える問題としても同じものが述べられます。
例 2.1.N={a,b,c}、X={0,1}とし、写像f,g:N→Xを
(f(a),f(b),f(c))=(0,1,1),(g(a),g(b),g(c))=(1,0,1)で定めます。aとbを入れ替えてcを固定する全単射をσ:N→Nとするとg=f∘σです。したがってfとgは写像としては異なりますが、定義域Nの元を区別しない∼Nによる数え上げでは同じ同値類に属します。
定義 2.2.nを非負整数とする。λ1≥λ2≥⋯≥λm≥1とλ1+λ2+⋯+λm=nを満たす整数の有限列λ=(λ1,…,λm)をnの 整数の分割 (partition of an integer) といい、各λiをその 部分 (part)、mを部分の個数という。m=0の空列は0の整数の分割であり、n≥1のときはnの整数の分割ではない。
非負整数kに対し、部分の個数がちょうどkであるnの整数の分割の個数をpk(n)と書き、部分の個数がk以下であるnの整数の分割の個数をp≤k(n)と書く。
命題 2.3 (十二相).n,kを非負整数、Nをn元集合、Xをk元集合とする。条件Pに対して[P]はPが真のとき1、偽のとき0を表すものとし、00=1と読む。また整数mと非負整数jに対して(jm)=j!m(m−1)⋯(m−j+1)(j=0のときは空積により(0m)=1)と読む。
NからXへの写像f,gに対し、g=f∘σを満たす全単射σ:N→Nが存在するときf∼Ngと書き、g=τ∘fを満たす全単射τ:X→Xが存在するときf∼Xgと書き、g=τ∘f∘σを満たす全単射σ:N→Nとτ:X→Xが存在するときf∼N,Xgと書く。∼N、∼X、∼N,XはNからXへの写像全体の上の同値関係であり、単射全体と全射全体はそれぞれこの三つの同値関係で閉じている。その同値類について次が成り立つ。
- 写像N→Xの個数はknである。
- 単射N→Xの個数は、n≤kのとき(k−n)!k!、n>kのとき0である。
- 全射N→Xの個数はk!S(n,k)である。
- 写像N→Xの∼Nによる同値類の個数は(nn+k−1)である。
- 単射N→Xの∼Nによる同値類の個数は(nk)である。
- 全射N→Xの∼Nによる同値類の個数は、n≥1かつk≥1のとき(k−1n−1)、n=k=0のとき1、それ以外のとき0である。
- 写像N→Xの∼Xによる同値類の個数は∑j=0kS(n,j)である。
- 単射N→Xの∼Xによる同値類の個数は[n≤k]である。
- 全射N→Xの∼Xによる同値類の個数はS(n,k)である。
- 写像N→Xの∼N,Xによる同値類の個数はp≤k(n)である。
- 単射N→Xの∼N,Xによる同値類の個数は[n≤k]である。
- 全射N→Xの∼N,Xによる同値類の個数はpk(n)である。
証明. 全単射u:N→[n]とv:X→[k]をとる。Θ(f)=v∘f∘u−1はNからXへの写像全体から[n]から[k]への写像全体への全単射であり、全単射との合成は単射性と全射性を変えないから、Θは単射を単射へ、全射を全射へ写す。またg=τ∘f∘σとΘ(g)=(vτv−1)∘Θ(f)∘(uσu−1)は同値であり、σ↦uσu−1はNの全単射全体から[n]の全単射全体への全単射、τ↦vτv−1はXの全単射全体から[k]の全単射全体への全単射であるから、Θは三つの関係を両向きに保つ。よって主張の 12 個の個数はnとkだけで定まる。以下N=[n]、X=[k]とする。
∼N,Xについて、σとτを恒等写像にとれば反射律が、σとτを逆写像に取り替えれば対称律が、二組の全単射を合成すれば推移律が得られる。∼Nはτを恒等写像に限った場合、∼Xはσを恒等写像に限った場合であり、同じ議論が通る。全単射との合成は単射性と全射性を変えないから、単射全体と全射全体はこの三つの同値関係で閉じている。
(1)を示す。n=0のときN→Xの写像は空写像ただ一つであり、k0=1である。n≥1かつk=0のとき、1∈Nの行き先がX=∅に存在しないので写像はなく、0n=0である。n≥1かつk≥1のとき、1,2,…,nの行き先を順に選ぶn段階の手続きは各段階でXのk個の元から一つを選ぶものであり、選択列(f(1),…,f(n))と写像fは一対一に対応する。§D2.2 定理 2.3により写像の個数はknである。
(2)を示す。fが単射ならばfはNからf(N)への全単射を与えるので∣f(N)∣=nであり、f(N)⊆Xからn≤kが従う。ゆえにn>kのとき単射は存在せず、その個数は0である。n≤kのとき、単射fに列(f(1),…,f(n))を対応させると、これはXのk個の元からn個を選んで並べる順列と一対一に対応するから、§D2.2 命題 3.1により単射の個数は(k−n)!k!である。
(3)を示す。Eを全射N→X全体、Tを[n]のちょうどk個のブロックからなる分割全体とする。f∈Eに対しΦ(f)={f−1(x)∣x∈X}とおくと、fが全射であることから各f−1(x)は空でなく、相異なるxの逆像は交わらず、その合併はNであり、また相異なるxの逆像は互いに異なるから、Φ(f)はちょうどk個のブロックからなる[n]の分割である。P∈Tを固定すると、Φ(f)=Pを満たすf∈Eは、a∈Nの属するブロックをBaとしてf(a)=h(Ba)と書くことにより、PからXへの全単射hと一対一に対応する。Pの元を並べてB1,…,Bkとすると、そのようなhはXのk個の元すべてを重複なく並べた列(h(B1),…,h(Bk))と一対一に対応するから、§D2.2 命題 3.1によりその個数はk!である。とくにΦ:E→Tは全射であり、各P∈Tの逆像はちょうどk!個の元をもつ。k!は正整数であるから、§D2.2 命題 2.2により∣E∣=k!∣T∣=k!S(n,k)である。
∼Nによる同値類を数えるために、写像f:N→Xに対して各x∈Xにmf(x)=∣f−1(x)∣を対応させる族mfを考える。Nは逆像f−1(x)(x∈X)の互いに素な合併であるから、§D2.2 定理 2.1により∑x∈Xmf(x)=nである。g=f∘σならばg−1(x)=σ−1(f−1(x))でありσは全単射であるからmg=mfである。逆にmf=mgとすると、各x∈Xについて全単射σx:g−1(x)→f−1(x)がとれ、Nがg−1(x)(x∈X)の互いに素な合併であることからこれらを合わせたσ:N→Nは全単射であり、a∈g−1(x)に対しf(σ(a))=x=g(a)となるのでg=f∘σである。さらに、非負整数の族(mx)x∈Xで∑x∈Xmx=nを満たすものが与えられたとき、Nを∣Ax∣=mxを満たす互いに素な部分集合Ax(x∈X)の合併に分け、a∈Axに対しf(a)=xと定めればmf=(mx)x∈Xである。ゆえにf↦mfは、∼Nによる同値類全体から、和がnである非負整数の族(mx)x∈X全体への全単射を与える。またfが単射であることは各mf(x)が1以下であることと同値であり、fが全射であることは各mf(x)が1以上であることと同値である。
(4)を示す。k≥1のとき、和がnである非負整数の族(mx)x∈Xは、Xのk種類の元から重複を許してn個を選ぶ選び方(元xをmx回選ぶ)と一対一に対応するから、§D2.2 命題 4.1によりその個数は(nk+n−1)である。k=0のときは族が空族に限り、その和は0であるから、n=0のとき個数は1、n≥1のとき個数は0である。他方(nn−1)は、n=0のとき空積により1であり、n≥1のときは分子の積(n−1)(n−2)⋯0が因子0を含むので0である。いずれの場合も個数は(nn+k−1)に等しい。
(5)を示す。各mxが1以下で和がnである族(mx)x∈Xは、{x∈X∣mx=1}によりXのn元部分集合と一対一に対応する。n≤kのとき、§D2.2 命題 3.1によりその個数は(nk)である。n>kのときXはn元部分集合をもたないので個数は0であり、(nk)の分子の積k(k−1)⋯(k−n+1)は因子0を含むので(nk)=0である。
(6)を示す。数える対象は、各mxが1以上で和がnである族(mx)x∈Xである。k=0のとき族は空族に限り、その和は0であるから、個数はn=0のとき1、n≥1のとき0である。k≥1かつn=0のときは、1以上のk個の値の和はk≥1となって0にならないので個数は0である。k≥1かつn≥1のとき、mx′=mx−1とおくと、対象は和がn−kである非負整数の族(mx′)x∈Xと一対一に対応する。n<kならばn−k<0であるからそのような族はなく個数は0であり、このとき(k−1n−1)の分子の積(n−1)(n−2)⋯(n−k+1)はn−k+1≤0≤n−1より因子0を含むので(k−1n−1)=0である。n≥kならば、§D2.2 命題 4.1によりその個数は(n−kk+(n−k)−1)=(n−kn−1)であり、§D2.2 命題 3.1の階乗による表示から(n−kn−1)=(k−1n−1)である。
∼Xによる同値類を数えるために、写像f:N→Xに対してΨ(f)={f−1(x)∣x∈X, f−1(x)=∅}とおく。Ψ(f)の元は空でなく互いに交わらず、その合併はNであるから、Ψ(f)はNの分割であり、そのブロックの個数は∣X∣=k以下である。g=τ∘fならばg−1(x)=f−1(τ−1(x))でありτは全単射であるからΨ(g)=Ψ(f)である。逆にΨ(f)=Ψ(g)とする。a,b∈Nに対し、f(a)=f(b)であることとa,bがΨ(f)の同じブロックに属することは同値であり、gについても同様であるから、τ0(f(a))=g(a)という対応はf(N)上の写像として矛盾なく定まり、f(N)からg(N)への全単射である。∣X∖f(N)∣=k−∣Ψ(f)∣=∣X∖g(N)∣であるから、X∖f(N)からX∖g(N)への全単射をとってτ0と合わせれば全単射τ:X→Xが得られ、g=τ∘fである。さらに、ブロックの個数がk以下のNの分割Pが与えられたとき、単射h:P→Xをとりaの属するブロックをBaとしてf(a)=h(Ba)と定めればΨ(f)=Pである。ゆえにf↦Ψ(f)は、∼Xによる同値類全体から、ブロックの個数がk以下であるNの分割全体への全単射を与える。またfが単射であることはΨ(f)のすべてのブロックが一元集合であることと同値であり、fが全射であることはΨ(f)のブロックの個数がkであることと同値である。
(7)を示す。ブロックの個数がk以下である[n]の分割をブロックの個数jで類別すると、§D2.2 定理 2.1とその個数の定義により、総数は∑j=0kS(n,j)である。
(8)を示す。すべてのブロックが一元集合である[n]の分割は、一元集合の全体{{a}∣a∈[n]}に限り、そのブロックの個数はnである。これがブロックの個数k以下という条件を満たすこととn≤kは同値であるから、求める個数は[n≤k]である。
(9)を示す。ブロックの個数がちょうどkである[n]の分割の個数は、定義によりS(n,k)である。
∼N,Xによる同値類を数えるために、写像f:N→Xに対してΨ(f)のブロックの大きさを大きい順に並べた列をλ(f)とおく。Ψ(f)のブロックは互いに素で合併がNであるから、§D2.2 定理 2.1により大きさの総和はnであり、λ(f)は部分の個数がk以下であるnの整数の分割である。g=τ∘f∘σとすると、Ψ(g)={σ−1(B)∣B∈Ψ(f)}であってσは全単射であるから、Ψ(g)とΨ(f)のブロックの大きさは重複を込めて一致し、λ(g)=λ(f)である。逆にλ(f)=λ(g)=(λ1,…,λr)とする。Ψ(f)のブロックを大きさの大きい順にF1,…,Fr、Ψ(g)のブロックを同様にG1,…,Grと並べると∣Fi∣=∣Gi∣=λiである。各iについて全単射Gi→Fiをとり、Ψ(g)がNの分割であることからこれらを合わせて全単射σ:N→Nを得る。Fi=f−1(xi)、Gi=g−1(yi)を満たすXの相異なる元x1,…,xrと相異なる元y1,…,yrをとると、f∘σはGiの各元をxiへ写す。xi↦yiをXの全単射τへ延長すれば、τ∘f∘σはGiの各元をyiへ写すのでg=τ∘f∘σである。さらに、部分の個数がk以下であるnの整数の分割(λ1,…,λr)が与えられたとき、Nを大きさλ1,…,λrの互いに素な部分集合に分け、Xの相異なる元x1,…,xrをとってi番目の部分集合の元をxiへ写す写像fを定めればλ(f)=(λ1,…,λr)である。ゆえにf↦λ(f)は、∼N,Xによる同値類全体から、部分の個数がk以下であるnの整数の分割全体への全単射を与える。またfが単射であることはλ(f)のすべての部分が1であることと同値であり、fが全射であることはλ(f)の部分の個数がkであることと同値である。
(10)を示す。部分の個数がk以下であるnの整数の分割の個数は、定義によりp≤k(n)である。
(11)を示す。すべての部分が1であるnの整数の分割は、1をn個並べた列に限り、その部分の個数はnである。これが部分の個数k以下という条件を満たすこととn≤kは同値であるから、求める個数は[n≤k]である。
(12)を示す。部分の個数がちょうどkであるnの整数の分割の個数は、定義によりpk(n)である。▨
12 個の個数を表にまとめます。各欄は命題 2.3の対応する項で与えられる値であり、n>kやk=0のように式が退化する場合の値は同項で個別に与えます。
| 写像の型 |
N区別・X区別 |
N非区別・X区別 |
N区別・X非区別 |
N非区別・X非区別 |
| 任意 |
kn |
(nn+k−1) |
j=0∑kS(n,j) |
p≤k(n) |
| 単射 |
(k−n)!k! |
(nk) |
[n≤k] |
[n≤k] |
| 全射 |
k!S(n,k) |
(k−1n−1) |
S(n,k) |
pk(n) |
例 2.4.命題 2.3に(n,k)=(4,2)を適用する。例 1.8によりS(4,1)=1、S(4,2)=7である。また、部分の個数が2以下である4の整数の分割は
(4),(3,1),(2,2)であるからp≤2(4)=3であり、そのうち部分の個数がちょうど2であるものは後二つなのでp2(4)=2である。したがって十二相の各欄は次の値をもつ。
| 写像の型 |
N区別・X区別 |
N非区別・X区別 |
N区別・X非区別 |
N非区別・X非区別 |
| 任意 |
16 |
5 |
8 |
3 |
| 単射 |
0 |
0 |
0 |
0 |
| 全射 |
14 |
3 |
7 |
2 |
命題 2.3に(n,k)=(2,3)を適用する。[2]の一ブロックの分割は{{1,2}}、二ブロックの分割は{{1},{2}}に限るから、S(2,1)=S(2,2)=1である。部分の個数が3以下である2の整数の分割は(2)と(1,1)であるから、p≤3(2)=2かつp3(2)=0である。したがって十二相の各欄は次の値をもつ。
| 写像の型 |
N区別・X区別 |
N非区別・X区別 |
N区別・X非区別 |
N非区別・X非区別 |
| 任意 |
9 |
6 |
2 |
2 |
| 単射 |
6 |
3 |
1 |
1 |
| 全射 |
0 |
0 |
0 |
0 |