1 왜 공리가 필요한가
“동전을 던지면 앞면이 나올 확률은 1/2이다”라는 문장은 직관적으로 명확하다. 하지만 다음 질문들은 어떻게 답할 것인가?
- 확률 1/2는 어디서 나오는가? 대칭성? 오랜 반복 실험?
- “내일 비가 올 확률 70%”는 반복 실험으로 정의할 수 있는가?
- 두 사건의 확률을 더하거나 곱하는 것은 항상 유효한가?
이 물음들에 일관된 답을 주려면 확률을 공리(axiom) 위에 세워야 한다. 공리적 접근은 “확률이 무엇인가”를 정의하는 대신, 확률이 만족해야 할 규칙을 명시하고 그 위에서 모든 성질을 유도한다.
공리적 확률론의 목표: \[ \text{3개의 공리} \xrightarrow{\text{논리적 유도}} \text{확률의 모든 성질} \]
공리가 옳다고 가정하면, 나머지는 증명의 문제다.
2 확률의 세 가지 해석
공리를 소개하기 전에, 역사적으로 확률을 어떻게 해석했는지 살펴본다. 이 해석들이 공리적 체계를 필요로 한 동기이기도 하다.
| 해석 | 정의 | 강점 | 한계 |
|---|---|---|---|
| 고전적(Classical) | 동등 가능한 결과 중 유리한 결과의 비율: \(P(A) = |A| / |\Omega|\) | 직관적, 계산 간단 | 동등 가능성 가정이 필요, 무한 표본공간 불가 |
| 빈도주의(Frequentist) | 실험을 무한히 반복할 때 상대빈도의 극한: \(P(A) = \lim_{n\to\infty} n_A / n\) | 객관적, 반복 가능한 실험에 자연스러움 | 일회성 사건(내일 날씨)에 적용 불가, 극한의 존재 가정 |
| 주관적(Subjective/Bayesian) | 개인의 믿음의 정도(degree of belief), 코히런시(coherency) 조건 | 모든 상황에 적용 가능 | 주관성, 사람마다 다를 수 있음 |
| 공리적(Axiomatic) | 세 공리를 만족하는 함수 | 세 해석을 모두 포괄, 수학적 엄밀성 | 해석 자체는 제공하지 않음 |
공리적 접근은 “확률이 무엇인지”를 논쟁하는 대신, 어떤 규칙을 만족하면 확률이라 부를 수 있는지를 정한다. 고전·빈도·주관적 확률은 모두 이 규칙을 만족하므로, 공리적 체계 안에 포함된다.
3 콜모고로프 공리 (Kolmogorov’s Axioms, 1933)
확률 공간 \((\Omega, \mathcal{F})\) 위의 함수 \(P: \mathcal{F} \to \mathbb{R}\) 이 다음 세 공리를 만족하면 확률 측도(probability measure) 라 하고, \((\Omega, \mathcal{F}, P)\) 를 확률 공간(probability space) 이라 한다.
공리 1 (비음성, Non-negativity) \[ P(A) \geq 0 \quad \text{for all } A \in \mathcal{F} \]
공리 2 (정규화, Normalization) \[ P(\Omega) = 1 \]
공리 3 (가산 가법성, Countable Additivity / σ-Additivity)
\(A_1, A_2, \ldots \in \mathcal{F}\) 가 쌍마다 서로소(pairwise disjoint), 즉 \(i \neq j \Rightarrow A_i \cap A_j = \emptyset\) 이면: \[ P\!\left(\bigcup_{i=1}^{\infty} A_i\right) = \sum_{i=1}^{\infty} P(A_i) \]
3.1 각 공리의 의미
공리 1 — 비음성: 확률은 음수일 수 없다. “불가능한 것보다 더 불가능한 것”은 없다.
공리 2 — 정규화: 표본공간 전체에서 무언가가 반드시 일어난다. 확률의 총합은 1.
공리 3 — 가산 가법성: 서로 겹치지 않는 사건들의 확률은 더할 수 있다. 단, 유한 가법성이 아닌 가산(countably infinite) 가법성이다. 이 조건이 극한·연속성 정리들을 가능하게 한다.
유한 가법성만으로는 다음이 성립하지 않을 수 있다:
\[ \lim_{n \to \infty} P(A_n) = P\!\left(\lim_{n \to \infty} A_n\right) \]
연속성 정리(Continuity of Probability), 대수의 법칙, CLT 모두 가산 가법성에 의존한다. 유한 가법성은 너무 약하다.
4 공리로부터 유도되는 성질
공리 3개만으로 확률의 모든 성질이 논리적으로 따라온다.
4.1 기본 성질 목록
\((\Omega, \mathcal{F}, P)\) 를 확률 공간이라 하면 다음이 성립한다:
- \(P(\emptyset) = 0\)
- 유한 가법성: \(A_1, \ldots, A_n\) 이 쌍마다 서로소 \(\Rightarrow P\!\left(\bigcup_{i=1}^n A_i\right) = \sum_{i=1}^n P(A_i)\)
- 여사건: \(P(A^c) = 1 - P(A)\)
- 단조성: \(A \subseteq B \Rightarrow P(A) \leq P(B)\)
- 유계성: \(0 \leq P(A) \leq 1\)
- 포함-배제 원리: \(P(A \cup B) = P(A) + P(B) - P(A \cap B)\)
4.2 증명
성질 1: \(P(\emptyset) = 0\)
\(A_1 = \emptyset, A_2 = \emptyset, \ldots\) 로 설정하면 쌍마다 서로소이고 \(\bigcup_{i=1}^\infty A_i = \emptyset\). 공리 3에 의해: \[ P(\emptyset) = \sum_{i=1}^\infty P(\emptyset) \] 이것이 유한 값이 되려면 \(P(\emptyset) = 0\) 이어야 한다. \(\quad\blacksquare\)
성질 2: 유한 가법성
\(A_1, \ldots, A_n\) 이 쌍마다 서로소일 때, \(A_{n+1} = A_{n+2} = \cdots = \emptyset\) 으로 확장하면 공리 3을 적용할 수 있다: \[ P\!\left(\bigcup_{i=1}^n A_i\right) = P\!\left(\bigcup_{i=1}^\infty A_i\right) = \sum_{i=1}^\infty P(A_i) = \sum_{i=1}^n P(A_i) + \sum_{i=n+1}^\infty P(\emptyset) = \sum_{i=1}^n P(A_i) \quad\blacksquare \]
성질 3: \(P(A^c) = 1 - P(A)\)
\(A\) 와 \(A^c\) 는 서로소이고 \(A \cup A^c = \Omega\) 이므로 성질 2에 의해: \[ P(A) + P(A^c) = P(A \cup A^c) = P(\Omega) = 1 \quad\Rightarrow\quad P(A^c) = 1 - P(A) \quad\blacksquare \]
성질 4: \(A \subseteq B \Rightarrow P(A) \leq P(B)\)
\(B = A \cup (B \setminus A)\) 이고 \(A\) 와 \(B \setminus A\) 는 서로소이므로: \[ P(B) = P(A) + P(B \setminus A) \geq P(A) \] 마지막 부등호는 공리 1(\(P(B \setminus A) \geq 0\))에 의한다. \(\quad\blacksquare\)
성질 6: 포함-배제 원리
\(A \cup B = A \cup (B \setminus A)\) 이고 두 집합은 서로소: \[ P(A \cup B) = P(A) + P(B \setminus A) \] 그런데 \(B = (A \cap B) \cup (B \setminus A)\) 이고 두 집합은 서로소이므로: \[ P(B) = P(A \cap B) + P(B \setminus A) \quad\Rightarrow\quad P(B \setminus A) = P(B) - P(A \cap B) \] 대입하면: \[ P(A \cup B) = P(A) + P(B) - P(A \cap B) \quad\blacksquare \]
5 포함-배제 원리의 일반화
두 사건의 경우를 \(n\) 개 사건으로 확장한다.
\[ P\!\left(\bigcup_{i=1}^n A_i\right) = \sum_i P(A_i) - \sum_{i<j} P(A_i \cap A_j) + \sum_{i<j<k} P(A_i \cap A_j \cap A_k) - \cdots + (-1)^{n+1} P\!\left(\bigcap_{i=1}^n A_i\right) \]
\(n=3\) 예시: \[ P(A \cup B \cup C) = P(A)+P(B)+P(C) - P(A\cap B) - P(A\cap C) - P(B\cap C) + P(A\cap B\cap C) \]
\(P(A) + P(B)\) 를 계산하면 \(A \cap B\) 부분을 두 번 센다. → \(P(A \cap B)\) 한 번 빼야 한다. 셋 이상이면 빼고 더하는 과정이 반복된다.
6 확률의 연속성 (Continuity of Probability)
가산 가법성의 강력함은 극한에서 드러난다.
(단조 증가) \(A_1 \subseteq A_2 \subseteq \cdots\) (increasing sequence)이면: \[ P\!\left(\bigcup_{n=1}^\infty A_n\right) = \lim_{n \to \infty} P(A_n) \]
(단조 감소) \(A_1 \supseteq A_2 \supseteq \cdots\) (decreasing sequence)이면: \[ P\!\left(\bigcap_{n=1}^\infty A_n\right) = \lim_{n \to \infty} P(A_n) \]
A/B 테스트에서 표본 크기를 \(n=100, 200, 500, \ldots\) 으로 점점 키운다고 하자. \(A_n\) = “표본 크기 \(n\) 에서 효과를 탐지”라 하면 \(A_1 \subseteq A_2 \subseteq \cdots\) (검정력 단조 증가).
연속성 정리가 보장하는 것: \[ \lim_{n \to \infty} P(A_n) = P\!\left(\bigcup_n A_n\right) \]
즉, 표본을 무한히 키우면 검정력이 극한값에 수렴한다. 이 교환이 안 되면 “큰 표본이 항상 낫다”는 직관조차 수학적으로 정당화할 수 없다.
증명 (단조 증가 경우)
\(B_1 = A_1\), \(B_n = A_n \setminus A_{n-1}\) (\(n \geq 2\))로 정의하면 \(B_n\) 들은 쌍마다 서로소이고 \(\bigcup_{k=1}^n B_k = A_n\) 이므로:
\[ P\!\left(\bigcup_{n=1}^\infty A_n\right) = P\!\left(\bigcup_{n=1}^\infty B_n\right) = \sum_{n=1}^\infty P(B_n) = \lim_{n\to\infty} \sum_{k=1}^n P(B_k) = \lim_{n\to\infty} P(A_n) \quad\blacksquare \]
이 정리는 “\(n \to \infty\) 로 커지는 사건의 확률”을 계산할 때 극한과 확률 기호를 교환할 수 있음을 보장한다. 대수의 법칙 증명에서 이 교환이 핵심 역할을 한다.
7 부울 부등식 (Boole’s Inequality / Union Bound)
\[ P\!\left(\bigcup_{i=1}^n A_i\right) \leq \sum_{i=1}^n P(A_i) \]
가산 무한의 경우: \[ P\!\left(\bigcup_{i=1}^\infty A_i\right) \leq \sum_{i=1}^\infty P(A_i) \]
증명
포함-배제 원리에서 빼는 항들(\(P(A_i \cap A_j)\) 등)이 모두 \(\geq 0\) 이므로: \[ P\!\left(\bigcup_{i=1}^n A_i\right) = \sum_i P(A_i) - \underbrace{\sum_{i<j} P(A_i \cap A_j)}_{\geq\, 0} + \cdots \leq \sum_i P(A_i) \quad\blacksquare \]
\(n\) 개의 나쁜 일이 일어날 수 있을 때, 적어도 하나가 일어날 확률은 각각의 확률을 그냥 더한 것보다 크지 않다. 사건들이 겹칠수록 실제 확률은 이 상한보다 훨씬 작아진다.
이 단순한 부등식이 놀랍도록 유용한 이유: 겹침 정보 없이도 쓸 수 있기 때문이다. 정확한 포함-배제 계산이 어려울 때(사건이 수백~수천 개일 때) Union Bound가 유일한 실용적 도구가 된다.
\(n\) 개의 가설을 각각 유의수준 \(\alpha\) 로 검정할 때, 적어도 하나의 1종 오류가 발생할 확률: \[ P(\text{적어도 하나 오류}) = P\!\left(\bigcup_{i=1}^n E_i\right) \leq \sum_{i=1}^n P(E_i) = n\alpha \] 본페로니 보정(Bonferroni correction)은 이 Union Bound를 직접 활용한다: \(\alpha^* = \alpha / n\).
8 응용 분야
| 분야 | 공리의 역할 | 구체적 예시 |
|---|---|---|
| 통계적 추론 | 검정, 신뢰구간의 수학적 토대 | 1종/2종 오류 확률의 합산 규칙 |
| 기계학습 | 확률 모델의 일관성 보장 | Naive Bayes 분류: 사건 독립성 가정 |
| 다중 검정 | Union Bound로 오류율 관리 | Bonferroni, Holm, BH 보정 |
| 베이지안 추론 | 사전·사후 분포의 정규화 조건 | \(\int p(\theta) d\theta = 1\) (공리 2) |
| 정보이론 | 엔트로피 정의의 기반 | \(H(X) = -\sum P(A_i)\log P(A_i) \geq 0\) (공리 1) |
9 예시: 공리 검증
9.1 고전적 확률이 공리를 만족함을 확인
\(\Omega = \{1,2,3,4,5,6\}\), \(P(A) = |A|/|\Omega|\) 에 대해:
- 공리 1: \(|A| \geq 0\) 이므로 \(P(A) \geq 0\) ✓
- 공리 2: \(P(\Omega) = 6/6 = 1\) ✓
- 공리 3: \(A \cap B = \emptyset\) 이면 \(|A \cup B| = |A| + |B|\) 이므로 \(P(A \cup B) = (|A| + |B|)/6 = P(A) + P(B)\) ✓
9.2 부정적 예시: 공리를 위반하는 “확률”
다음 함수는 공리를 만족하지 않으므로 확률 측도가 아니다.
| 함수 | 위반하는 공리 |
|---|---|
| \(Q(A) = -0.1\) for some \(A\) | 공리 1 (음수) |
| \(Q(\Omega) = 0.8\) | 공리 2 (정규화 실패) |
| \(Q(A \cup B) = 0.7\) 이지만 \(Q(A)=0.5, Q(B)=0.4\) (서로소) | 공리 3 (\(0.7 \neq 0.9\)) |
10 코드 예시
10.1 Step 1: 순수 Python — 공리 검증기
from itertools import combinations
def check_probability_axioms(Omega, prob_dict, tol=1e-9):
"""
Omega: 표본공간 (list 또는 set)
prob_dict: 각 원소의 확률 {omega: p}
고전적 균등 확률을 가정 — 공리 1, 2, 3 검증
"""
Omega = list(Omega)
n = len(Omega)
# 공리 1: 비음성
for omega, p in prob_dict.items():
if p < -tol:
print(f"공리 1 위반: P({{{omega}}}) = {p} < 0")
return False
# 공리 2: 정규화
total = sum(prob_dict.values())
if abs(total - 1.0) > tol:
print(f"공리 2 위반: P(Ω) = {total:.6f} ≠ 1")
return False
# 공리 3: 유한 가법성 검증 (모든 서로소 쌍에 대해)
# 단순화: 원소별 확률이 정의된 경우
print("공리 1, 2, 3 모두 만족 — 유효한 확률 측도")
return True
# 주사위: 균등 분포
Omega = {1, 2, 3, 4, 5, 6}
prob = {i: 1/6 for i in Omega}
check_probability_axioms(Omega, prob)
# → 공리 1, 2, 3 모두 만족
# Union Bound 검증
A = {2, 4, 6} # 짝수
B = {1, 2, 3} # 3 이하
P = lambda E: len(E) / len(Omega)
print(f"P(A ∪ B) = {P(A | B):.4f}") # 5/6 ≈ 0.8333
print(f"P(A) + P(B) = {P(A) + P(B):.4f}") # 1.0 (Union Bound 상한)
print(f"Union Bound 성립: {P(A | B) <= P(A) + P(B)}") # True
# 포함-배제 검증
inclusion_exclusion = P(A) + P(B) - P(A & B)
print(f"포함-배제: {inclusion_exclusion:.4f} == P(A∪B): {P(A|B):.4f}") # True10.2 Step 2: 연속성 정리 시뮬레이션
import numpy as np
# 단조 증가 사건의 극한: A_n = [0, 1 - 1/n) ⊂ [0,1)
# P(A_n) = 1 - 1/n → 1 as n → ∞
# P(∪ A_n) = P([0,1)) = 1
n_values = [1, 2, 5, 10, 50, 100, 1000]
print("n\t\tP(A_n) = 1 - 1/n")
print("-" * 35)
for n in n_values:
p_an = 1 - 1/n
print(f"{n:5d}\t\t{p_an:.6f}")
# 출력:
# 1 0.000000
# 2 0.500000
# 5 0.800000
# 10 0.900000
# 50 0.980000
# 100 0.990000
# 1000 0.999000
# 극한 = 1 = P([0,1)) ← 연속성 정리 확인
# 다중 검정에서 Bonferroni 보정
alpha = 0.05
n_tests = [1, 5, 10, 20, 50, 100]
print(f"\n다중 검정: 목표 FWER = {alpha}")
print(f"{'n_tests':>10} {'Union Bound':>15} {'Bonferroni α*':>15}")
print("-" * 42)
for n in n_tests:
union_bound = min(n * alpha, 1.0) # n * α (상한)
bonferroni = alpha / n # 보정 후 개별 α
print(f"{n:10d} {union_bound:15.4f} {bonferroni:15.6f}")11 관련 주제
선행 지식
- 확률론의 언어: 집합론 — 표본공간, 사건, σ-대수의 정의
후속 주제
- Calculus of Probabilities — 공리로부터 유도되는 연산 규칙들
- Basics of Probability Theory - Probability — 고전적 확률 계산
- Conditional Probability — \(P(A|B) = P(A \cap B)/P(B)\)
- Bayes’ Rule — 조건부 확률의 응용
관련 개념
- Convergence in Probability — 연속성 정리를 활용한 수렴
- Moment Generating Function — 확률 측도 위의 적분