まずは数え上げの基礎を扱います。
次の 2 つの公式が基本となります。
命題(和の公式)
A,B を共通部分が空集合であるような有限集合とする。このとき
∣A∪B∣=∣A∣+∣B∣ が成り立つ。
命題(積の公式)
有限集合
A,B に対して、
A×B={(a,b)∣a∈A,b∈B} とおく。このとき、
∣A×B∣=∣A∣×∣B∣ が成り立つ。
ほぼ自明なので証明は見なくてもよいですが、「しっかり学ぶ組合せ論のエッセンス」ということで証明を載せます。
まず集合 A の要素数が n ということは、A と集合 {1,2,…,n} の間に全単射が存在するということです。ここで写像 f:X→Y が全単射であるとは、ある写像 g:Y→X が存在して
- g(f(x))=x がすべての x∈X について成り立つ。
- f(g(y))=y がすべての y∈Y について成り立つ。
をみたすことです。この写像 g を f の逆写像といいます。
和の公式の証明
∣A∣=m,∣B∣=n とする。
A と
{1,2,…,m} の間に全単射が存在するので、これにより
i (1≤i≤m) と対応する
A の元を
ai と書く。同様に
B の元
bi (1≤i≤n) を定める。
A∪B と
{1,2,…,m+n} の間に全単射を構成する。
x∈A∪B に対して、
x=ai のとき
i を対応させ、
x=bi のとき
i+m を対応させる。逆に、整数
i (1≤i≤m+n) に対して、
1≤i≤m ならば
ai を対応させ、
m+1≤i≤m+n ならば
bi−m を対応させる。これらは互いに逆写像の関係なので全単射である。よって
∣A∪B∣=m+n である。
積の公式の証明
∣A∣=m,∣B∣=n とし、上と同様に
A={a1,…,am},B={b1,…,bn} とする。
A×B と
{1,2,…,mn} の間に全単射を構成する。
(ai,bj) に対し、
(i−1)n+j を対応させる。整数
k (1≤k≤mn) に対して
k=(i−1)n+j をみたす整数
i,j (1≤i≤m,1≤j≤n) がただ 1 組存在するので、逆写像も構成できる。よって 2 つの集合の間に全単射が存在するので、
∣A×B∣=mn である。