σ-加法族

Definition:σ-algebra

$\mathcal{F} \subseteq 2^\Omega$ がσ-加法族であるとは、次の条件を満たすことである。

  • $\Omega \in \mathcal{F}$
  • $A \in \mathcal{F} \Rightarrow A^c \in \mathcal{F}$
  • $A_1, A_2, \dots \in \mathcal{F} \Rightarrow \bigcup_{n=1}^{\infty} A_n \in \mathcal{F}$

σ-加法族が確率に必須な理由は、一言で言えば、「確率が矛盾なく計算できる事象の範囲を、ちょうどよく定める枠組み」だからである。

「すべての部分集合に確率を定義したい」という欲求は自然である。しかし、同時に満たしたい性質が3つある。

  • 正規化:$P([0,1])=1$
  • 平行移動不変性:集合をずらしても確率は変わらない $P(A)=P(A+r)$
  • 可算加法性:互いに素な可算個の集合の確率は足し算できる

この3つを同時に満たすことは、選択公理のもとで不可能。選択公理を否定すれば「すべての部分集合が可測」な世界も論理的には無矛盾ではある。しかし、選択公理は数学の至る所で使われているので、代わりに「確率を定義する集合の範囲を最初から限定する」という方針をとった。その限定の枠組みがσ-加法族である。

1. 前史:「長さ」を測るとはどういうことか(19世紀まで)

σ-加法族という概念は、突如として生まれたわけではない。その根底には「どんな図形の面積・長さも測れるのか」という、古くから数学者を悩ませてきた問いがある。リーマン積分(1854年)の時代まで、積分論は比較的単純な関数と区間にのみ適用できるものだった。しかし19世紀後半、カントールによる無限集合論(1870〜80年代)の登場が状況を一変させる。カントールが実数の部分集合の構造を精緻に分析したことで、「長さが定義できない集合」や「直感に反する集合」が続々と姿を現し始め、測度論の整備が急務となった。それ以前にも、ペアノ(1887年)やジョルダン(1892年)が有限個の区間の合併で集合を内外から近似することで「ジョルダン測度」を定義していた。しかし有限個の区間では捉えきれない複雑な集合には無力であり、より精密な理論が求められていた。

ボレルの革新(1894〜1898年)

σ-加法族の直接の起源は、エミール・ボレル(1871〜1956)の研究にある。ペアノやジョルダンが区間の有限合併で集合を近似していたのに対し、ボレルは可算無限個の合併を用いる点で決定的に異なっていた。

ボレルの動機は複素解析にあった。1894年の博士論文(1895年出版)で、ボレルは閉曲線上の稠密な点集合で発散することが知られていた級数を研究していた。ボレルは、発散が起きる点の集合が稠密であっても、可算個の区間で任意に小さな全長に覆えることを発見した。曲線上のほぼすべての点で級数は収束し、解析接続が可能になるという結論であった。

この発見をきっかけにボレルは [0,1] の部分集合に対する新しい可測性理論を構築し、1898年に発表した。この著作が "Leçons sur la théorie des fonctions"(函数論講義)であり、これがボレル集合概念の原典となった。

ボレルの核心的な貢献は「可算加法性(countable additivity)」の導入である。互いに素な可算無限個の集合の測度は、それぞれの測度の和に等しいという性質を、初めて測度論の中心に据えたのだ。これは有限加法性しか持たないジョルダン測度との根本的な違いであり、σ-加法族が「有限合併」ではなく「可算合併」で閉じることを要請する理由の直接の源泉である。ボレルはこの功績により、実変数関数の近代理論の創始者の一人として評価されている。

ルベーグ積分の誕生(1901〜1902年)

ボレルの革新はアンリ・ルベーグ(1875〜1941)によって直ちに継承された。ルベーグはボレルのアイデアを基盤として、1901年に強力な積分理論を最初に発表した。

ルベーグは1901年に測度と積分の理論を記述し、翌1902年にはその記述を続けた。両者は1902年の博士論文 Intégrale, Longueur, Aire(積分、長さ、面積)の一部として発表された。

ルベーグの積分論の鍵は「可測集合」の概念にある。すべての実数の部分集合に測度を定義することはできないが、「十分に良い」集合の族を定め、その上で一貫した測度を構築できる。この「十分に良い集合の族」こそが、後にσ-加法族として公理化されるものの原型である。

ルベーグ積分はリーマン積分を大幅に一般化し、リーマン積分では扱えなかった関数を積分できるようになった。たとえば有理数上で 1、無理数上で 0 をとるディリクレ関数はリーマン積分不可能だが、ルベーグ積分では値が 0 と計算できる。これは解析学における革命であった。

非可測集合の発見とσ-加法族の必然性(1905年)

ルベーグの理論が「すべての集合が可測ではない」という衝撃的な事実を含むことを示したのが、ジュゼッペ・ヴィタリ(1875〜1932)である。

ヴィタリ集合は、1905年にジュゼッペ・ヴィタリが発見した、ルベーグ可測でない実数集合の初等的な例である。

1905年、ヴィタリは [0,1)[0,1)

[0,1) を可算無限個の互いに素な部分集合に分割する構成を発表した。これらの集合はそれぞれ実軸上の平行移動で一致する。もしこれらが平行移動不変な可算加法的測度によって可測ならば、[0,1)[0,1)

[0,1) の測度はこれらの測度の和に等しくなるはずである。しかし各集合の測度が等しいため、和は 0 か無限大にしかなれず、矛盾が生じる。これは $\mathbb{R}$ の部分集合にルベーグ測度のような測度に関して非可測な集合が存在することを証明した。

この非可測集合の存在は、選択公理を前提とする集合論の体系から従う結論である。さらに1970年にロバート・ソロヴェイが、選択公理なしの ZF 公理系の下では「すべての実数の部分集合がルベーグ可測」という命題が無矛盾であることを証明し、非可測集合の存在が選択公理と不可分であることが確定した。

ヴィタリの結果は測度論に重大な含意をもたらした。すべての集合に測度を定義することは不可能であり、測度を定義できる集合を何らかの形で限定する「器」が必要だという認識が共有されたのである。σ-加法族はまさにこの「器」として機能する。

抽象化の進展:カラテオドリ・ラドン・フレシェ(1910年代)

20世紀初頭、測度論は急速に抽象化・一般化の方向へ進んだ。

コンスタンチン・カラテオドリ(1873〜1950)は1914年頃、外測度(outer measure)の概念と、それを用いて可測集合を特徴付ける「カラテオドリの条件」を定式化した。これはσ-加法族を外側から構成する方法であり、後の測度論の標準的な構築法となった。

ヨハン・ラドン(1887〜1956)は1913年に、ユークリッド空間上での積分を一般の測度に対して定式化し(ラドン測度)、後の「ラドン・ニコディム定理」の基礎を築いた。

モーリス・フレシェ(1878〜1973)は抽象的な測度空間の整備に貢献し、確率論と測度論を橋渡しする役割を果たした。

近代測度論の基礎は、エミール・ボレル、アンリ・ルベーグ、ニコライ・ルジン、ヨハン・ラドン、コンスタンチン・カラテオドリ、モーリス・フレシェらの業績によって築かれた。

コルモゴロフによる公理化(1933年)

σ-加法族の概念が確率論と結びつき、現代的な公理体系として結実したのが、アンドレイ・コルモゴロフ(1903〜1987)の著作 Grundbegriffe der Wahrscheinlichkeitsrechnung(確率論の基礎概念)である。

この著作の中でコルモゴロフは、集合論と測度論の言葉で確率論の基礎を定式化し、過去30年間の確率論者の思想に決定的な形を与えた。この著書は近代的な測度論的確率論の象徴となり、1933年という出版年は転換点として認識されている。

コルモゴロフは1932年11月、クリャージマ川のほとりのコテージで Grundbegriffe を執筆したと伝えられている。

コルモゴロフの体系では、確率空間は三つ組 $(\Omega, \mathcal{F}, P)$ として定義される。$\Omega$ は標本空間、$\mathcal{F}$ はσ-加法族(可能な事象の全体)、$P$ は確率測度である。このとき σ-加法族 $\mathcal{F}$ が担う役割は、「確率が定義できる事象の集まり」を数学的に厳密に特定することにある。

コルモゴロフの Grundbegriffe に対して、フレシェはこう評した。「ボレルが1909年に可算加法性を確率の計算に導入した瞬間に、(近代化された古典的な)確率論の公理全体を明示的に定式化するために必要な要素はすべて揃っていた。それらを明示的にまとめ、理論を構成するためにそれ以上は不要と宣言する責任を負ったのがコルモゴロフである。これが彼の功績である。」

1933年のドイツ語版の英訳は1950年に刊行され、1956年に第2版が出版されるころには、コルモゴロフの公理化は万人に受け入れられていた。コルモゴロフは序文で、抽象測度論が確立された時点で、それを確率論の形式化に用いる方法は専門家にとって明らかであったと述べている。

「σ」という記号の意味

σ という記号は、ドイツ語の Summe(和)に由来する。可算な合併(集合の"和")で閉じているという性質を表すために、この文字が採用された。有限合併のみで閉じた族は「加法族」あるいは「代数(algebra)」と呼ばれ、σ-加法族(σ-algebra)は可算無限の合併まで許容するその拡張版である。

20世紀後半以降の発展

コルモゴロフの公理化以降、σ-加法族はさまざまな方向へ発展した。

コルモゴロフ自身が1930年代に展開したマルコフ過程の理論、さらに伊藤清(1944〜1951年)による伊藤積分は、確率微分方程式を σ-加法族の増大列(フィルトレーション)によって定式化することで成立する。フィルトレーション $\{\mathcal{F}_t\}_{t \geq 0}$ 「時刻 $t$ までに得られた情報」を表すσ-加法族の族であり、確率過程論の中核概念である。

ブラック・ショールズモデルに代表される数理ファイナンスの発展において、フィルトレーションと σ-加法族は確率的最適制御や裁定理論の言語として不可欠の役割を果たしている。

また、ボレル集合族の研究から発展した記述的集合論では、集合の複雑さをσ-加法族の階層(ボレル階層)で分類する。ルシン(1883〜1950)らモスクワ学派がこの分野を牽引した。

Pythonによる実装

セットアップ

# 必要なライブラリのインポート
from itertools import combinations, chain
from typing import List, Set, FrozenSet, Collection
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
import networkx as nx
import numpy as np

# 日本語フォント設定(Colab用)
!pip install japanize-matplotlib -q
import japanize_matplotlib

plt.rcParams['figure.dpi'] = 100
print('セットアップ完了!')

σ-加法族の条件チェッカー

与えられた集合族がσ-加法族かどうかを判定。

def powerset(s):
"""べき集合を返す"""
s = list(s)
return [frozenset(c) for r in range(len(s)+1) for c in combinations(s, r)]

def check_sigma_algebra(omega: set, family: List[set], verbose: bool = True) -> bool:
"""
family が omega 上の σ-加法族かどうか判定する。

Parameters
----------
omega : 全体集合
family : 判定したい集合族(リスト形式)
verbose : 詳細を表示するか
"""
omega = frozenset(omega)
F = [frozenset(a) for a in family]
F_set = set(F)
ok = True

def label(s):
if len(s) == 0:
return '∅'
return '{' + ', '.join(str(x) for x in sorted(s)) + '}'

print(f'全体集合 Ω = {label(omega)}')
print(f'集合族 F = {{ {" , ".join(label(a) for a in F)} }}')
print('=' * 50)

# 条件1: 空集合
c1 = frozenset() in F_set
print(f'[条件1] ∅ ∈ F → {"✅ OK" if c1 else "❌ NG"}')
if not c1:
ok = False

# 条件2: Ω自身
c2 = omega in F_set
print(f'[条件2] Ω ∈ F → {"✅ OK" if c2 else "❌ NG"}')
if not c2:
ok = False

# 条件3: 補集合で閉じている
comp_ok = True
for a in F:
comp = omega - a
if comp not in F_set:
print(f'[条件3] 補集合: {label(a)}^c = {label(comp)} ∉ F → ❌ NG')
comp_ok = False
ok = False
if comp_ok:
print('[条件3] 補集合で閉じている → ✅ OK')

# 条件4: 合併で閉じている(有限集合なので有限合併で確認)
union_ok = True
for r in range(2, len(F)+1):
for combo in combinations(F, r):
u = frozenset().union(*combo)
if u not in F_set:
print(f'[条件4] 合併: {" ∪ ".join(label(c) for c in combo)} = {label(u)} ∉ F → ❌ NG')
union_ok = False
ok = False
if union_ok:
print('[条件4] 合併で閉じている → ✅ OK')

print('=' * 50)
if ok:
print('✅ この集合族はσ-加法族です!')
else:
print('❌ この集合族はσ-加法族ではありません。')
return ok


# --- 例1: 最小のσ-加法族 ---
print('【例1】最小のσ-加法族 {∅, Ω}')
print()
omega = {1, 2, 3}
F = [set(), {1,2,3}]
check_sigma_algebra(omega, F)

結果は次のようになる。

【例1】最小のσ-加法族 {∅, Ω}

全体集合 Ω = {1, 2, 3}
集合族 F = { ∅ , {1, 2, 3} }
==================================================
[条件1] ∅ ∈ F → ✅ OK
[条件2] Ω ∈ F → ✅ OK
[条件3] 補集合で閉じている → ✅ OK
[条件4] 合併で閉じている → ✅ OK
==================================================
✅ この集合族はσ-加法族です!
True

Mathematics is the language with which God has written the universe.





















数理統計学 機械学習