本記事では,集合$S$の要素の個数を絶対値記号$|S|$で表す.次の知識は前提とするため,知らなければこの先を読み進めるのは難しいと思う.
有限集合$A_1,A_2,A_3$に対して
$|A_1 \cup A_2|=|A_1|+|A_2|-|A_1 \cap A_2|$
$|A_1 \cup A_2 \cup A_3|=|A_1|+|A_2|+|A_3|-|A_1 \cap A_2|-|A_2 \cap A_3|-|A_3 \cap A_1|+|A_1 \cap A_2 \cap A_3|$
参考までに,次のような問題が難なく解ければ本記事は読めると思う.
$60$以下の正整数で,$2$または$3$または$5$で割り切れるものはいくつあるか.
(解答)$60$以下の正整数で,$2$で割り切れるものの集合を$A$,$3$で割り切れるものの集合を$B$,$5$で割り切れるものの集合を$5$とおく.求めるべきは$|A \cup B \cup C|$である.
$|A|=30, |B|=20, |C|=12, |A \cap B|=10, |B \cap C|=4, |C \cap A|=6, |A \cap B \cap C|=2$なので,$|A \cup B \cup C|=44$個である.
次の公式も,練習問題等で使っている.
有限集合$A_1, \cdots , A_n$に対して
$\overline{A_1 \cup \cdots \cup A_n}=\overline{A_1} \cap \cdots \cap \overline{A_n}$
$\overline{A_1 \cap \cdots \cap A_n}=\overline{A_1} \cup \cdots \cup \overline{A_n}$
証明は省略する.
高校の数学の教科書の多くには,公式1(集合が$2,3$個の場合)が載っている.そこで「集合が$4$つ以上だとどうなるのだろう」と考えるのは自然である.
答えは,冒頭の公式1から十分推測できるものであり(つまり覚えやすい),$|A_1 \cap \cdots \cap A_k|$の集合の個数が奇数個であれば$+1$,偶数個であれば$-1$が係数となる.
例えば$|A_1 \cup A_2 \cup A_3 \cup A_4|$であれば次のように書ける.
$\begin{aligned}
|A_1 \cup A_2 \cup A_3 \cup A_4|=&|A_1|+|A_2|+|A_3|+|A_4|\\
&-|A_1 \cap A_2|-|A_1 \cap A_3|-|A_1 \cap A_4|-|A_2 \cap A_3|-|A_2 \cap A_4|-|A_3 \cap A_4|\\
&+|A_1 \cap A_2 \cap A_3|+|A_1 \cap A_2 \cap A_4|+|A_1 \cap A_3 \cap A_4|+|A_2 \cap A_3 \cap A_4|\\
&-|A_1 \cap A_2 \cap A_3 \cap A_4|
\end{aligned}$
$|A_1 \cup A_2 \cup A_3 \cup A_4 \cup A_5|$であれば次のようになる.
$\begin{aligned}
|A_1 \cup A_2 \cup A_3 \cup A_4 \cup A_5|=&|A_1|+|A_2|+|A_3|+|A_4|+|A_5|\\
&-|A_1 \cap A_2|- \cdots -|A_4 \cap A_5|\\
&+|A_1 \cap A_2 \cap A_3|+ \cdots +|A_3 \cap A_4 \cap A_5|\\
&-|A_1 \cap A_2 \cap A_3 \cap A_4|- \cdots - |A_2 \cap A_3 \cap A_4 \cap A_5|\\
&+|A_1 \cap A_2 \cap A_3 \cap A_4 \cap A_5|
\end{aligned}$
これをさらに一般化したものが,次の式である.
有限集合$A_1, \cdots , A_n$に対して
$\left| \bigcup\limits_{i=1}^{n}A_i \right|=\sum\limits_{k=1}^{n} \left((-1)^{k-1} \sum\limits_{k\text{個}}\left| \bigcap\limits_{j}A_j \right| \right)$
右辺がわかりづらいと思うので補足しておく.$(-1)^{k-1}$の部分は,共通部分を取る集合の個数によって正負が入れかわることを表している.$\sum\limits_{k\text{個}}\left| \bigcap\limits_{j}A_j \right|$は,$k$個の集合の共通部分全てについて(つまり${}_n\mathrm{C}_k$通りについて),その要素の個数を足していく.
手始めに,全くありがたみのない例ではあるが,次の例を考えよう.
集合$A_1= \cdots = A_n = \{1\}$とすると,当然$\bigcup\limits_{i=1}^{n}A_i=\{1\}$であり,$\left| \bigcup\limits_{i=1}^{n}A_i \right|=1$である.
包除原理を適用して,こうなることを確かめよ.
もう少しまともな例として,次の問題を考えてみよ.オイラーの$\phi$関数を知っていたとしても,包除原理を用いて考えてほしい.
$210$以下の正整数で,$2$または$3$または$5$または$7$で割り切れるものはいくつあるか.
この問題3の一般化として,次の定理が得られる.
$n$以下で$n$と互いに素な正整数の個数を$\phi(n)$で表す(これは一般的な記法である).
$n$を素因数分解すると$n=p_1^{e_1} \cdots p_k^{e_k}$と表されるとき(ただし$e_k \neq 0$),
$\phi(n)=n\left( 1-\dfrac{1}{p_1} \right)\cdots \left( 1-\dfrac{1}{p_k} \right)$
まずは,有名な具体例を$2$つ挙げよう.
どちらも,できれば証明を見る前に,包除原理を適用して確かめてみてほしい.
$1,2,\cdots, n$の並べ替え$a_1, a_2, \cdots a_n$であって,任意の$k$に対して$a_k \neq k$であるようなものを,かく乱順列(または完全順列)と呼ぶ.
そのような順列の個数は,$n!\sum\limits_{k=0}^n \dfrac{(-1)^k}{k!}$である.
なお,その値は$\dfrac{n!}{e}$に最も近い整数値に一致する(この証明はマクローリン展開を使えばよい.本記事の主旨からは逸れるので省略する).
包除原理を使う問題(証明)においては,この例のように,それぞれの$A_i$が何なのかを明確にするとよい.
もう一つ,次の命題も有名な例である.
$k≦n$を満たす正整数に対して,次の条件を満たす数列を考える.
このような数列は$\sum\limits_{i=1}^k (-1)^{k-i}{}_k \mathrm{C}_i i^n$個存在する.
以上の$2$つの例は,非常に有名で,包除原理の解説をする際によく登場する例である.
ここから$3$題,オリジナルの練習問題を用意した.いずれもOMCの難易度で$300$前後のものだろう.計算がやや面倒なので,立式までで答え合わせをしてもよい.
$20$以下の正整数から$10$個の正整数を選ぶ方法で,次の条件を満たすものは何通りあるか.
(条件)$5$で割った余りが$0,1,2,3,4$であるような数を,それぞれ$1$つ以上含む.
(具体例)$\{1,2,3,4,5,6,7,8,9,10\}$は条件を満たす.$\{1,2,3,4,6,7,8,9,11,12\}$は,$5$で割った余りが$0$のものを含まず,条件を満たさない.
さいころを$9$個投げる.ちょうど$3$個出ているような目が存在する確率を求めよ.
(具体例)$9$個投げたときの出目が,$1,1,1,2,2,3,4,5,6$や$1,1,1,2,2,2,3,3,3$であれば条件を満たす.$1,1,2,2,3,3,4,5,6$や$1,1,1,1,2,2,2,2,2$であれば条件を満たさない.
$5×5$のマス目があり,各マスには白石,黒石のいずれか$1$つが置かれている.次の条件を満たす石の置き方は何通りか.
(条件)どの行,どの列を見ても,黒石が$1$つ以上置かれている.(白石については,置かれていなくてもよい.)
最後にOMCの例題である.ここに挙げた他にもいくつかあるだろうから,見つけたら更新していく.