포함·배제의 원리

역사 raw
대문 랜덤 문서 최근 토론
1. 개요2. 진술3. 증명4. 예시 및 활용, 확장


包含·排除의 原理, inclusion-exclusion principle

1. 개요[편집]

조합론에서 여러 개의 합집합의 크기를 구할 때 사용하는 공식이다. 이산수학 및 확률론에서 중요하고 유용한 원리 중 하나이다.
비교적 친숙한 ∣A∪B∣=∣A∣+∣B∣−∣A∩B∣|A \cup B| = |A| + |B| - |A \cap B|, ∣A∪B∪C∣=∣A∣+∣B∣+∣C∣−∣A∩B∣−∣B∩C∣−∣C∩A∣+∣A∩B∩C∣|A \cup B \cup C| = |A| + |B| + |C| - |A \cap B| - |B \cap C| - |C \cap A| + |A \cap B \cap C| 등의 공식을 nn개짜리 합집합으로 일반화했다고 생각할 수 있다. 이름의 유래는 AA, BB, ……에 속하는 원소들을 포함시키고(더하고), 두 번 세어준 A∩BA \cap B, ……의 원소들을 배제하고(빼고), 다시 33개짜리 교집합이 빠졌으므로 더해주고, ……의 아이디어에서 나왔다.

2. 진술[편집]

포함·배제의 원리(inclusion-exclusion principle)
유한집합인 전체집합 UU의 부분집합 A1, A2,⋯⋯ , AnA_1,~A_2, \cdots\cdots,~A_n에 대해, 이들의 합집합의 원소의 개수는 다음과 같이 주어진다.
∣⋃i=1nAi∣=∑∅≠I⊂[n](−1)∣I∣−1∣⋂i∈IAi∣\displaystyle \left| \bigcup_{i=1}^n A_i \right| = \sum_{\emptyset \ne I \subset [n]} \left( -1 \right)^{|I|-1} \left| \bigcap_{i \in I} A_i \right|
여기서 [n]={1, 2,⋯⋯ , n}[n] = \{1,~2, \cdots\cdots,~n\}이고, ∣⋅∣| \cdot |은 집합의 크기(원소의 개수)이다. 이를 풀어쓰면 다음과 같다.
∣A1∪A2∪⋯⋯∪An∣=(∣A1∣+∣A2∣+⋯⋯+∣An∣)−(∣A1∩A2∣+⋯⋯+∣An−1∩An∣)+⋯⋯+(−1)n−1∣A1∩A2∩⋯⋯∩An∣|A_1 \cup A_2 \cup \cdots \cdots \cup A_n| = (|A_1|+|A_2| + \cdots \cdots + |A_n|) - (|A_1 \cap A_2| + \cdots \cdots + |A_{n-1} \cap A_n|) + \cdots \cdots + \left( -1 \right)^{n-1}|A_1 \cap A_2 \cap \cdots \cdots \cap A_n|
홀수 개의 교집합은 더하고, 짝수 개의 교집합을 뺀다는 식으로 기억하면 된다. 다음과 같은 여집합 형태도 많이 등장하는데 (I=∅I=\emptyset일 때는 전체집합을 더하는 것으로 간주) 이 경우에는 부호가 반대가 된다.
∣U∖⋃i=1nAi∣=∑I⊂[n](−1)∣I∣∣⋂i∈IAi∣ \displaystyle \left| U \setminus \bigcup_{i=1}^n A_i \right| = \sum_{I \subset [n]} \left( -1 \right)^{|I|} \left| \bigcap_{i \in I} A_i \right|
사실 원소의 개수가 가장 생각하기 쉽지만 집합의 크기를 재는 어떤 함수이건 측도라던가 적용할 수 있다. 확률론에서의 다음 버전도 많이 쓰인다.
확률공간의 사건 A1, A2,⋯⋯ , AnA_1,~A_2, \cdots \cdots,~A_n에 대해, 이들의 합집합의 확률은 다음과 같이 주어진다.
P(⋃i=1nAi)=∑∅≠I⊂[n](−1)∣I∣−1P(⋂i∈IAi)\displaystyle P \left( \bigcup_{i=1}^n A_i \right) = \sum_{\emptyset \ne I \subset [n]} \left( -1 \right)^{|I|-1} P \left( \bigcap_{i \in I} A_i \right)

3. 증명[편집]

원소의 개수를 다룬 버전을 서술한다. 일반적인 확률 및 측도 버전은 비슷하게 접근하면 된다. (합 및 개수를 확률/측도로 바꾼다던지 등등)

전체집합 UU의 원소들은 AiA_i에 속하냐, 속하지 않냐 두 가지의 기준으로 나눌 수 있다. 어떤 원소 x∈Ux \in U가 i=i1, i2,⋯⋯ , iki=i_1,~i_2, \cdots \cdots,~i_k에 대해선 x∈Aix \in A_i이고 나머지에 대해선 x∉Aix \notin A_i라 하자. J={i1,⋯⋯ , ik}J = \{ i_1, \cdots \cdots,~i_k \}라고 놓자. 이제 임의의 II에 대해서 ⋂i∈IAi\displaystyle \bigcap_{i \in I} A_i가 xx를 포함할 필요충분조건은 I⊂JI \subset J가 되고, 따라서 공식의 우변에서 xx가 세어지는 횟수는 ∑∅≠I⊂J(−1)∣I∣−1\displaystyle \sum_{\emptyset \ne I \subset J} \left( -1 \right)^{|I|-1} 가 된다. 만약 JJ가 공집합이라면 그런 II는 없으므로 횟수는 00번이 된다. JJ가 공집합이 아니라면 저 횟수는
∑∅≠I⊂J(−1)∣I∣−1=∑I⊂J(−1)∣I∣−1−(−1)∣∅∣−1=∑l=0k(kl)(−1)l−1+1=1\displaystyle \sum_{\emptyset \ne I \subset J} \left( -1 \right)^{|I|-1} =\sum_{I \subset J} \left( -1 \right)^{|I|-1} - \left( -1 \right)^{|\emptyset|-1} =\sum_{l=0}^k \binom{k}{l} \left( -1 \right)^{l-1} +1 = 1
(이항정리를 활용한다) 이 되어 1번 세어진다. 이상을 종합하면 우변의 식은 ∪Ai\cup A_i의 원소들을 한 번씩만 센다고 할 수 있다.

4. 예시 및 활용, 확장[편집]

교과과정에선 다음과 비슷한 문제로 이 원리가 등장하곤 한다.
ㅁㅁ초등학교 어느 한 반의 4040명 중 2525명은 리그 오브 레전드를, 1818명은 오버워치를, 99명은 둘다 한다. 이 때 롤과 옵치를 둘다 안하는 사람의 수는?
두 합집합의 원소의 수가 (25+18)−9=34(25+18)-9=34이므로 이 여집합이므로 답은 66명이다. 간간히 집합이 3개인 경우도 나오는 듯하다.

조합론 중 특히 enumerative combinatorics 계열에선 집합의 개수가 nn개인 경우 각 잡고 제대로 쓴다면 꽤나 강력한 도구가 되는데, 예로 다음과 같은 문제들에 포함·배제의 원리를 적용할 수 있다.
  • 교란순열, 즉 일대일대응 σ:[n]→[n]\sigma: [n] \rightarrow [n] 중 모든 xx에 대해 σ(x)≠x\sigma \left( x \right) \neq x인 σ\sigma의 개수
  • 제한된 순열 문제. 집합 A⊂[n]×[n]A \subset[n] \times [n]이 주어졌을 때 (x, σ(x))∉A(x,~\sigma \left( x \right)) \notin A인 순열의 개수. 위 교란순열 문제의 일반화이다.
  • 전사함수 f:[n]→[m]f: [n] \rightarrow [m]의 개수. 제2종 스털링 수(Stirling numbers of the second kinds)와도 연관이 있다.
  • 어떤 수 nn이 주어졌을 때 1≤m≤n1 \le m \le n인 정수 mm 중 nn과 서로소인 mm의 개수 (즉 오일러 정리에 나오는 오일러 파이 함수 φ(n)\varphi \left( n \right) 구하기)
  • 변의 길이가 정수고 둘레가 nn인 삼각형의 개수(변의 순서가 다르면 다른 것으로 취급할 때).
일반적으로 여러 개의 제약조건이 복합적으로 작용할 때, 보통 이들의 교집합을 생각하는 건 쉽지만 합집합 및 여집합을 생각하는 건 어려울 때가 많은데, 이럴 때 이 포함 배제의 원리를 범용적으로 쓸 수 있다.

한편 확률론에선 다음 부등식 버전의 포함배제의 원리를 생각하기도 한다.
본페로니 부등식(Bonferroni inequality)
위의 포함·배제 공식을 ∣I∣≤j|I| \le j인 범위까지만 더했을 때, jj가 홀수이면
P(⋃i=1nAi)≤∑I⊂[n], ∣I∣≤j(−1)∣I∣P(⋂i∈IAi)\displaystyle P \left( \bigcup_{i=1}^n A_i \right) \le \sum_{I \subset [n],~|I| \le j} \left( -1 \right)^{|I|} P \left( \bigcap_{i \in I} A_i \right)
jj가 짝수이면
P(⋃i=1nAi)≥∑I⊂[n], ∣I∣≤j(−1)∣I∣P(⋂i∈IAi)\displaystyle P \left( \bigcup_{i=1}^n A_i \right) \ge \sum_{I \subset [n],~|I| \le j} \left( -1 \right)^{|I|} P \left( \bigcap_{i \in I} A_i \right)
가 성립한다.
예를 들어서 n=3n=3이면
P(A∪B∪C)≤P(A)+P(B)+P(C)P \left( A \cup B \cup C \right) \le P \left( A \right) + P \left( B \right) + P \left( C \right)
P(A∪B∪C)≥P(A)+P(B)+P(C)−P(A∩B)−P(B∩C)−P(C∩A)P \left( A \cup B \cup C \right) \ge P \left( A \right) + P \left( B \right) + P \left( C \right) - P \left( A \cap B \right) - P \left( B \cap C \right) - P \left( C \cap A \right)
등이 성립하는 식. 교집합의 개수가 많은 항의 기여도가 비교적 작고 계산이 더러울 때, 몇 번째 교집합까지만 더해서 근사를 하고 싶은 상황에서 이 부등식을 활용할 수 있다. 예로 nx≪1nx \ll 1일 때 확률 xx로 일어나는 nn개의 독립사건의 합집합 왜인지 던파확률의 법칙에 나와있는거 같다 의 확률을 위 부등식에 근거해 다음처럼 근사할 수 있다.
1−nx≤(1−x)n≤1−nx+n(n−1)2x21-nx \le \left( 1-x \right)^n \le 1-nx + \dfrac{n \left( n-1 \right)}2 x^2