포함–배제의 원리
합집합 세기, 교란순열
개요 — 동기·문제의식
셈의 기본 원리의 합의 법칙은 집합들이 서로소일 때만 $|A\cup B|=|A|+|B|$를 보장한다. 그러나 실제 셈 문제에서 조건들은 거의 항상 겹친다 — "2의 배수 또는 3의 배수", "적어도 한 과목을 수강하는 학생", "적어도 하나의 값을 빠뜨리는 함수". 겹침이 있으면 단순 합은 교집합의 원소를 여러 번 세고, 포함–배제의 원리(principle of inclusion–exclusion, PIE)는 이 중복을 교집합들의 크기를 교대로 더하고 빼서 정확히 상쇄시키는 체계적 보정 공식이다.
이 원리의 진짜 힘은 합집합 세기 자체보다 그 여집합 형태(체 공식)에 있다. "나쁜 성질 $A_1,\dots,A_n$을 하나도 갖지 않는 원소의 수"를 각 교집합 $|A_{i_1}\cap\cdots\cap A_{i_k}|$가 쉽게 계산되는 상황에서 구하는 것 — 전사함수의 개수, 고정점 없는 순열(교란순열) $D_n$, $n$과 서로소인 수의 개수 $\varphi(n)$이 모두 이 한 가지 틀에서 나온다. 어려운 "정확히 조건을 만족" 문제를 쉬운 "적어도 이만큼 위반" 문제들의 교대합으로 바꾸는 것이 PIE의 요체다.
이름이 시사하듯 공식의 구조는 단순하다 — 하나짜리는 포함하고, 둘짜리 겹침은 배제하고, 셋짜리는 다시 포함하고. 어려움은 공식 자체가 아니라 전체집합 $S$와 나쁜 성질 $A_i$를 무엇으로 잡을 것인가의 모형화에 있으며, 이 장의 응용 세 가지(전사함수·교란순열·$\varphi$)는 그 모형화의 표준 견본이다.
직관
두 집합의 벤 다이어그램에서 $|A|+|B|$를 계산하면 겹치는 부분이 두 번 세어지므로 $|A\cap B|$를 한 번 빼 준다. 세 집합에서 쌍끼리의 교집합을 모두 빼면 이번에는 한가운데 $A\cap B\cap C$의 원소가 $3-3=0$번 세어져 버려서 다시 한 번 더해야 한다. 과하게 세고(포함), 과하게 빼고(배제), 다시 보정하는 진동이 집합 개수만큼 이어진다 — 각 원소가 결국 정확히 한 번씩만 세어지도록.
이 진동이 왜 정확히 $1$에서 멈추는지는 이항정리가 설명한다. 어떤 원소가 $n$개의 집합 중 정확히 $m\ge1$개에 속하면, 크기 $k$짜리 교집합 항들 중 $\binom{m}{k}$개에서 등장하므로 총 기여는 $\sum_k(-1)^{k-1}\binom{m}{k}=1-(1-1)^m=1$이다. 즉 PIE는 $(1-1)^m=0$이라는 항등식을 집합 세기의 언어로 번역한 것이며, 아래 모든 증명이 이 한 줄로 환원된다.
정의
기호
정의. 유한 전체집합 $S$와 부분집합 $A_1,\dots,A_n\subseteq S$에 대해, 색인집합 $J\subseteq\{1,\dots,n\}$마다 $A_J=\bigcap_{j\in J}A_j$ (단 $A_\emptyset=S$)로 쓰고, $k$번째 대칭합을 $S_k=\sum_{\lvert J\rvert=k}\lvert A_J\rvert$로 정의한다. $A_i$를 "성질 $i$를 갖는 원소들의 집합"으로 읽으면, 합집합은 "적어도 한 성질을 가짐", 여집합 $S\setminus\bigcup A_i$는 "아무 성질도 갖지 않음"이다.
교란순열
정의. $\{1,\dots,n\}$의 순열 $\sigma$가 교란순열(derangement, 완전순열) $\iff$ 모든 $i$에 대해 $\sigma(i)\ne i$ (고정점이 없음). 교란순열의 개수를 $D_n$으로 쓴다. 편의상 $D_0=1$ (빈 순열은 공허하게 고정점이 없다).
오일러 φ 함수
정의. 양의 정수 $n$에 대해 $\varphi(n)=\bigl|\{k:1\le k\le n,\ \gcd(k,n)=1\}\bigr|$ — $n$ 이하의 양의 정수 중 $n$과 서로소인 것의 개수.
주요 정리
정리 1 (두·세 집합의 포함–배제). $|A\cup B|=|A|+|B|-|A\cap B|$이고, $|A\cup B\cup C|=|A|+|B|+|C|-|A\cap B|-|A\cap C|-|B\cap C|+|A\cap B\cap C|$.
증명 보기
증명. $A\cup B=A\cup(B\setminus A)$는 서로소 분해이고 $B=(B\setminus A)\cup(A\cap B)$도 서로소 분해이므로, 합의 법칙에서 $|A\cup B|=|A|+|B\setminus A|=|A|+|B|-|A\cap B|$. 세 집합의 경우 $|A\cup B\cup C|=|A\cup B|+|C|-|(A\cup B)\cap C|$에 두 집합 공식을 적용하고, $(A\cup B)\cap C=(A\cap C)\cup(B\cap C)$에 다시 두 집합 공식을 적용해 전개하면 진술된 식을 얻는다. $\blacksquare$
정리 2 (일반 포함–배제의 원리). 유한집합 $A_1,\dots,A_n$에 대해 $$\Bigl|\bigcup_{i=1}^{n}A_i\Bigr|=\sum_{k=1}^{n}(-1)^{k-1}S_k=\sum_{k=1}^{n}(-1)^{k-1}\sum_{1\le i_1<\cdots<i_k\le n}\bigl|A_{i_1}\cap\cdots\cap A_{i_k}\bigr|.$$
증명 보기
증명. 양변에 대한 각 원소의 기여를 비교한다. $x\in S$가 $A_1,\dots,A_n$ 중 정확히 $m$개에 속한다고 하자. $m=0$이면 $x$는 좌변에도, 우변의 어떤 교집합에도 나타나지 않아 기여가 양쪽 다 $0$이다. $m\ge1$이면 좌변 기여는 $1$이고, 우변에서 $x$는 자신이 속한 $m$개 중에서 고른 $k$개짜리 교집합 $\binom{m}{k}$개에 등장하므로 기여는 $$\sum_{k=1}^{m}(-1)^{k-1}\binom{m}{k}=\binom{m}{0}-\sum_{k=0}^{m}(-1)^{k}\binom{m}{k}=1-(1-1)^{m}=1$$ (이항정리). 모든 원소의 기여가 양변에서 일치하므로 등식이 성립한다. $\blacksquare$
따름정리 3 (체 공식 — 여집합 형태). 어떤 $A_i$에도 속하지 않는 원소의 개수는 $$\Bigl|S\setminus\bigcup_{i=1}^{n}A_i\Bigr|=\sum_{J\subseteq\{1,\dots,n\}}(-1)^{\lvert J\rvert}\lvert A_J\rvert=|S|-S_1+S_2-\cdots+(-1)^nS_n.$$
증명 보기
증명. $\bigl|S\setminus\bigcup A_i\bigr|=|S|-\bigl|\bigcup A_i\bigr|$에 정리 2를 대입하면 부호가 하나씩 밀려 진술된 교대합이 된다. $\blacksquare$
정리 4 (전사함수의 개수). $n\ge k\ge1$일 때 $\{1,\dots,n\}$에서 $\{1,\dots,k\}$로 가는 전사함수의 개수는 $$\operatorname{Sur}(n,k)=\sum_{j=0}^{k}(-1)^{j}\binom{k}{j}(k-j)^{n}.$$
증명 보기
증명. $S$를 모든 함수 $f:\{1,\dots,n\}\to\{1,\dots,k\}$의 집합($|S|=k^n$, 곱의 법칙)으로, $A_i$를 "값 $i$를 하나도 취하지 않는 함수"의 집합으로 놓는다. 함수가 전사 $\iff$ 어떤 $A_i$에도 속하지 않음. $|J|=j$이면 $A_J$는 치역이 $k-j$개 값에 제한된 함수 전체이므로 $|A_J|=(k-j)^n$이고, 크기 $j$의 색인집합은 $\binom{k}{j}$개다. 따름정리 3을 적용하면 진술된 합을 얻는다. (전사함수를 $k!$로 나누면 제2종 스털링 수 $S(n,k)$, 즉 $n$원소 집합을 $k$개의 비공 블록으로 분할하는 수가 된다 — 집합과 함수의 분할과 연결.) $\blacksquare$
정리 5 (교란순열의 공식). $n\ge0$에 대해 $$D_n=\sum_{k=0}^{n}(-1)^{k}\binom{n}{k}(n-k)!=n!\sum_{k=0}^{n}\frac{(-1)^{k}}{k!}.$$
증명 보기
증명. $S$를 $\{1,\dots,n\}$의 모든 순열($n!$개)로, $A_i=\{\sigma:\sigma(i)=i\}$로 놓는다. 교란순열 $\iff$ 어떤 $A_i$에도 속하지 않는 순열. $|J|=k$이면 $A_J$는 $J$의 원소들을 고정한 채 나머지 $n-k$개를 임의로 배열한 순열 전체이므로 $|A_J|=(n-k)!$. 따름정리 3에서 $D_n=\sum_{k=0}^{n}(-1)^k\binom{n}{k}(n-k)!$이고, $\binom{n}{k}(n-k)!=n!/k!$이므로 둘째 등식이 따라온다. $\blacksquare$
정리 6 ($D_n$과 $1/e$). $\dfrac{D_n}{n!}\to\dfrac1e$ ($n\to\infty$)이고, $n\ge1$이면 $D_n$은 $n!/e$에 가장 가까운 정수다.
증명 보기
증명. 정리 5에서 $D_n/n!=\sum_{k=0}^{n}(-1)^k/k!$은 $e^{-1}=\sum_{k=0}^{\infty}(-1)^k/k!$의 부분합이므로 극한은 $1/e$다. 오차는 절댓값이 감소하는 교대급수의 나머지가 첫 항보다 작다는 추정으로 $$\Bigl|D_n-\frac{n!}{e}\Bigr|=n!\,\Bigl|\sum_{k=n+1}^{\infty}\frac{(-1)^{k}}{k!}\Bigr|<\frac{n!}{(n+1)!}=\frac{1}{n+1}\le\frac12\qquad(n\ge1).$$ $n!/e$와의 거리가 $1/2$ 미만인 정수는 반올림값뿐이므로 $D_n$은 $n!/e$의 반올림이다. $\blacksquare$
정리 7 (오일러 φ 함수의 곱 공식). $n\ge2$의 서로 다른 소인수가 $p_1,\dots,p_r$이면 $$\varphi(n)=n\prod_{i=1}^{r}\Bigl(1-\frac{1}{p_i}\Bigr).$$
증명 보기
증명. $S=\{1,\dots,n\}$, $A_i=\{k\in S:p_i\mid k\}$로 놓는다. $\gcd(k,n)=1$ $\iff$ $k$가 어떤 $p_i$로도 나누어지지 않음 $\iff$ $k$가 어떤 $A_i$에도 속하지 않음. $J\subseteq\{1,\dots,r\}$에 대해 $A_J$는 $\prod_{i\in J}p_i$의 배수들이고, 이 곱이 $n$을 나누므로 $|A_J|=n/\prod_{i\in J}p_i$ (내림 없이 정확한 값 — 여기가 $p_i\mid n$ 가정이 쓰이는 지점). 따름정리 3에서 $\varphi(n)=\sum_{J}(-1)^{\lvert J\rvert}\dfrac{n}{\prod_{i\in J}p_i}=n\prod_{i=1}^{r}\Bigl(1-\dfrac{1}{p_i}\Bigr)$ — 마지막 등식은 곱을 전개하면 각 $J$가 정확히 한 항으로 나타나기 때문이다. $\blacksquare$
예제
예제 1 (배수 세기). $1$부터 $1000$까지 중 $2$, $3$, $5$ 중 적어도 하나의 배수는 몇 개인가. $|A_2|=500$, $|A_3|=333$, $|A_5|=200$, $|A_6|=166$, $|A_{10}|=100$, $|A_{15}|=66$, $|A_{30}|=33$이므로 정리 1에서 $500+333+200-166-100-66+33=734$. 따라서 셋 모두와 서로소인 수는 $1000-734=266$개다. 교집합의 크기가 최소공배수의 배수 세기로 즉시 계산된다는 점이 PIE가 잘 작동하는 전형적 상황이다.
예제 2 (전사함수). $\operatorname{Sur}(4,3)=3^4-\binom{3}{1}2^4+\binom{3}{2}1^4=81-48+3=36$. 검산: $S(4,3)=6$ (4개 원소를 3블록으로 분할 — 한 블록만 2원소, $\binom42=6$가지)이므로 $3!\cdot S(4,3)=36$으로 일치한다.
예제 3 (모자 맡기기 문제). $n=4$명이 맡긴 모자를 무작위로 돌려받을 때 아무도 자기 모자를 받지 못하는 경우는 $D_4=4!\bigl(1-1+\tfrac12-\tfrac16+\tfrac1{24}\bigr)=24-24+12-4+1=9$가지. 확률은 $9/24=0.375$로 이미 $1/e\approx0.3679$에 가깝다 — 정리 6의 수렴은 $1/(n+1)!$ 속도로 매우 빠르다.
예제 4 (φ 계산). $360=2^3\cdot3^2\cdot5$이므로 $\varphi(360)=360\cdot\tfrac12\cdot\tfrac23\cdot\tfrac45=96$. 곱 공식은 소인수의 지수와 무관하게 서로 다른 소인수 하나당 인자 하나만 곱한다.
예제 5 (르장드르 방식의 소수 세기 — 에라토스테네스 체의 정량화). $100$ 이하의 합성수는 반드시 $\sqrt{100}=10$ 이하의 소인수($2,3,5,7$)를 가지므로, $2,3,5,7$ 중 어느 것으로도 나누어지지 않는 $n\le100$은 $1$과 "$7$보다 큰 소수"뿐이다. 따름정리 3으로 세면 ($|A_J|=\lfloor 100/\prod p\rfloor$) $$100-(50+33+20+14)+(16+10+7+6+4+2)-(3+2+1+0)+0=100-117+45-6=22.$$ 따라서 $\pi(100)=22-1+4=25$ ($1$을 빼고 소수 $2,3,5,7$을 되돌려 더함). 에라토스테네스의 체가 합성수를 "지워 나가는" 과정을 PIE가 정확한 개수로 바꿔 준다 — 이것이 해석적 수론의 체 방법(sieve method)의 출발점이다. 정리 7과의 차이도 눈여겨볼 것: 여기서는 $p\nmid 100$인 소수도 끼어들어 $|A_J|$에 내림 $\lfloor\cdot\rfloor$이 필요하다.
예제 6 (고정점이 정확히 $m$개인 순열). $\{1,\dots,n\}$의 순열 중 고정점이 정확히 $m$개인 것은 고정점 위치를 고르고($\binom{n}{m}$) 나머지를 교란시키면($D_{n-m}$) 되므로 $\binom{n}{m}D_{n-m}$개다. 무작위 순열이 고정점을 정확히 $m$개 가질 확률은 $\binom{n}{m}D_{n-m}/n!=\frac{1}{m!}\cdot\frac{D_{n-m}}{(n-m)!}\to\frac{e^{-1}}{m!}$ ($n\to\infty$, 정리 6) — 고정점 개수가 평균 $1$인 푸아송 분포로 수렴한다는, 확률적 방법에서 다시 만날 사실의 조합적 원형이다.
흔한 오해와 함정
- "세 집합이면 쌍끼리 교집합만 빼면 끝" — $A\cap B\cap C$의 원소는 세 번 더해지고 세 번 빼져서 $0$번 세어진다. 삼중 교집합을 다시 더해야 하며, 일반적으로 짝수 크기 교집합은 빼고 홀수 크기는 더하는 교대가 끝까지 이어진다.
- "고정점이 적어도 하나 있는 순열은 $n\cdot(n-1)!$개" — 고정점 위치 $n$가지 × 나머지 배열 $(n-1)!$은 고정점이 둘 이상인 순열을 중복 계산한다. 실제로 $n\cdot(n-1)!=n!$이 되어 "모든 순열이 고정점을 갖는다"는 틀린 결론이 나온다. 올바른 값은 $n!-D_n$.
- "$D_n=n!/e$" — $n!/e$는 무리수이므로 정수 $D_n$과 같을 수 없다. 정확한 관계는 반올림: $D_n=\bigl\lfloor n!/e+\tfrac12\bigr\rfloor$ ($n\ge1$).
- "전사함수는 $k^n-k(k-1)^n$개" — 첫 두 항에서 멈춘 것. 값 두 개를 빠뜨리는 함수가 두 번 빼져서 과소평가된다. 교대합을 $j=k$까지 끝까지 써야 한다.
- "$\varphi(p^a)=p^a-p$" — $p^a$ 이하의 $p$의 배수는 $p$개가 아니라 $p^{a-1}$개다. 옳은 값은 $\varphi(p^a)=p^a-p^{a-1}$이고, 곱 공식 $p^a(1-1/p)$와 일치한다.
- "교대합을 중간에서 잘라도 등호가 성립한다" — 일반적으로 거짓. 다만 홀수 번째 대칭합까지 자르면 상한, 짝수 번째까지 자르면 하한이 된다(Bonferroni 부등식). 이 절단 부등식은 확률적 방법의 합집합 상계(union bound)의 정밀화다.
큰 그림 / 연결
포함–배제는 셈의 기본 원리의 합의 법칙을 "겹침 허용" 버전으로 완성하는 조합론의 기본 도구이며, 계산의 재료(교집합 크기, 이항계수)는 순열과 조합에서 온다. 교란순열은 이 장의 닫힌 공식 외에도 점화식 $D_n=(n-1)(D_{n-1}+D_{n-2})$로 접근할 수 있고(점화식, 연습문제 6), 지수생성함수 $e^{-x}/(1-x)$로도 압축된다(생성함수) — 같은 수열을 세 가지 언어로 보는 대표적 사례다. 정리 4의 전사함수 세기는 집합과 함수의 분할·스털링 수와 직결된다.
더 높은 관점에서 PIE는 부분순서집합(관계와 동치관계) 위의 뫼비우스 반전 공식의 특수한 경우다 — 부분집합 격자에서 뫼비우스 함수가 $(-1)^{\lvert J\rvert}$이기 때문에 교대합이 나타나고, 수론의 뫼비우스 함수 $\mu$는 약수 격자에서의 같은 현상이다(정리 7이 그 접점). 예제 5의 르장드르 셈법은 에라토스테네스의 체를 등식으로 정량화한 것으로, 항의 개수가 지수적으로 늘어나는 약점을 절단·가중으로 다스리는 것이 현대 체 방법의 주제다. 확률 버전 $P(\bigcup A_i)=\sum_k(-1)^{k-1}\sum P(A_{i_1}\cap\cdots\cap A_{i_k})$와 Bonferroni 절단 부등식은 확률적 방법의 출발 도구가 된다.
연습문제
- $1$부터 $600$까지의 정수 중 $4$의 배수 또는 $6$의 배수는 몇 개인가.
- 학생 $100$명 중 $A$ 수강 $60$, $B$ 수강 $45$, $C$ 수강 $30$, $A\cap B$ $25$, $A\cap C$ $15$, $B\cap C$ $10$, 셋 다 수강 $5$명일 때 아무것도 수강하지 않는 학생 수를 구하라.
- $1$부터 $10^4$까지의 정수 중 완전제곱수도 완전세제곱수도 아닌 것은 몇 개인가.
- $\operatorname{Sur}(5,3)$을 정리 4로 계산하고, $S(5,3)=25$를 이용해 검산하라.
- $D_5$를 정리 5로 계산하고, 점화식 $D_5=4(D_4+D_3)$으로 검산하라.
- 점화식 $D_n=(n-1)(D_{n-1}+D_{n-2})$ ($n\ge2$)를 조합적으로 증명하라.
- 원소가 $A_1,\dots,A_n$ 중 정확히 $m$개에 속하는 개수가 $E_m=\sum_{k=m}^{n}(-1)^{k-m}\binom{k}{m}S_k$임을 증명하라 (따름정리 3은 $m=0$인 경우).
- "$x$ 이하의 정수 중 $\sqrt{x}$ 이하의 어떤 소수로도 나누어지지 않는 것의 개수 $=\pi(x)-\pi(\sqrt{x})+1$"임을 논증하고, 이를 이용해 $\pi(50)$을 계산하라.
힌트 / 정답
- $\lfloor600/4\rfloor+\lfloor600/6\rfloor-\lfloor600/12\rfloor=150+100-50=200$ — 교집합은 $\operatorname{lcm}(4,6)=12$의 배수임에 주의 ($4\cdot6=24$가 아니다).
- $|A\cup B\cup C|=60+45+30-25-15-10+5=90$이므로 $100-90=10$명.
- 제곱수 $\lfloor\sqrt{10^4}\rfloor=100$개, 세제곱수 $\lfloor10^{4/3}\rfloor=21$개, 둘 다인 수는 여섯제곱수 $\lfloor10^{4/6}\rfloor=4$개. $10^4-100-21+4=9883$.
- $3^5-\binom{3}{1}2^5+\binom{3}{2}1^5=243-96+3=150$이고 $3!\cdot25=150$으로 일치.
- $D_5=5!\bigl(1-1+\tfrac12-\tfrac16+\tfrac1{24}-\tfrac1{120}\bigr)=60-20+5-1=44$이고 $4(9+2)=44$로 일치.
- 교란순열 $\sigma$에서 $\sigma(n)=i$ ($i\ne n$, $n-1$가지). 경우 1: $\sigma(i)=n$이면 $n$과 $i$가 서로 교환된 것이고 나머지 $n-2$개가 교란 — $D_{n-2}$가지. 경우 2: $\sigma(i)\ne n$이면 $n$을 제거하고 "$i$의 상이 $n$이 되면 안 된다"는 조건을 "$i$가 고정되면 안 된다"로 읽어 $n-1$개 원소의 교란순열과 일대일대응 — $D_{n-1}$가지. 합의 법칙과 곱의 법칙으로 $D_n=(n-1)(D_{n-2}+D_{n-1})$.
- 기여도 논법: 정확히 $t$개에 속하는 원소의 우변 기여는 $\sum_{k=m}^{t}(-1)^{k-m}\binom{k}{m}\binom{t}{k}$. 항등식 $\binom{k}{m}\binom{t}{k}=\binom{t}{m}\binom{t-m}{k-m}$으로 $\binom{t}{m}\sum_{j=0}^{t-m}(-1)^{j}\binom{t-m}{j}=\binom{t}{m}(1-1)^{t-m}$ — $t=m$이면 $1$, $t>m$이면 $0$, $t<m$이면 항이 없어 $0$.
- 합성수 $n\le x$는 $\sqrt{x}$ 이하의 소인수를 반드시 가지므로, 걸러지지 않고 남는 수는 $1$과 $\sqrt{x}<p\le x$인 소수뿐 — 개수는 $\pi(x)-\pi(\sqrt{x})+1$. $x=50$: 체의 소수는 $2,3,5,7$이고 $50-(25+16+10+7)+(8+5+3+3+2+1)-(1+1+0+0)+0=50-58+22-2=12$. 따라서 $\pi(50)=12-1+4=15$.