【LaTeX】集合記号の書き方まとめ|∈ ⊂ ∪ ∩ ∖ ∅ ℝ をコピペ実例と図解でわかりやすく解説

「LaTeX で『集合に属する』記号ってどう書くんだっけ?」「subset(部分集合)は \subset\subseteq のどっちが正しい?」「実数全体の集合 $\mathbb{R}$ の黒板太字はどのコマンド?」——LaTeX や KaTeX で数式を書いていると、集合記号で手が止まることがよくあります。集合記号は種類が多く、$\subset$ と $\subseteq$ と $\subsetneq$、$\cup$ と $\bigcup$ のように見た目が似たものが並ぶため、正しいコマンドを覚えていないと毎回検索することになりがちです。

この記事は、そんな「集合記号をLaTeXでどう書くか」を一気に解決するための逆引きリファレンスです。元の帰属($\in$)、部分集合($\subset$, $\subseteq$, $\subsetneq$)、集合演算($\cup$, $\cap$, $\setminus$)、数の集合($\mathbb{R}$, $\mathbb{Z}$, $\mathbb{N}$)、内包的記法、さらに論理量化子($\forall$, $\exists$)まで、コピペできる実例を大量に載せて網羅します。

集合記号は数学の論文・レポートだけでなく、確率論(事象は集合です)、機械学習(データ集合や特徴空間 $\mathbb{R}^n$)、コンピュータサイエンス(型や定義域)など、理工系のあらゆる文書で日常的に使います。本記事で「迷ったらここを見れば書ける」状態を作っておきましょう。

本記事の内容

  • まず結論:集合記号 LaTeX コマンド逆引き早見表(コピペ用)
  • 元の帰属記号($\in$, $\notin$, $\ni$)
  • 部分集合記号($\subset$, $\subseteq$, $\subsetneq$, $\supset$)と subset の使い分け
  • 集合演算記号($\cup$, $\cap$, $\setminus$, $\triangle$, $\times$, 補集合)
  • 空集合・数の集合・べき集合($\emptyset$, $\mathbb{R}$, $\mathcal{P}(A)$)
  • 集合の記法(外延・内包・区間)と複数行・大きな括弧の書き方
  • 論理量化子($\forall$, $\exists$)と集合の対応
  • Pythonで集合演算とベン図を可視化して理解を確かめる

記号の数は多いのですが、実は6つのグループに整理できます。全体像を先に持っておくと、個々のコマンドが覚えやすくなります。

LaTeXの集合記号は6グループで整理できる

グループ①と②が「関係」を表す記号(左右に何かを置いて主張を作る)、③が「演算」(集合から新しい集合を作る)、④が「特定の集合そのもの」、⑤が「集合の書き表し方」、⑥が「集合についての主張を論理で書く記号」です。この分類で見ると、$\in$ と $\subset$ が別グループにいることがはっきりします。この2つの混同は最も多い間違いなので、後で図解します。

前提知識

この記事を読む前に、以下の記事を読んでおくと理解が深まります。

まず結論:集合記号LaTeXコマンド逆引き早見表

細かい解説の前に、まず「この記号を出したい」から逆引きできる早見表を置いておきます。急いでいる人はここからコピペしてください。各セクションで意味と使い方を詳しく説明します。

出したい記号 LaTeX コマンド 意味・読み方
$\in$ \in 〜に属する(element of)
$\notin$ \notin 〜に属さない(not element of)
$\ni$ \ni 〜を元として含む
$\subset$ \subset 部分集合(流儀により真部分集合)
$\subseteq$ \subseteq 部分集合(等号を含む、subset or equal)
$\subsetneq$ \subsetneq 真部分集合($A \neq B$ を明示)
$\supset$ \supset 上位集合(superset)
$\supseteq$ \supseteq 上位集合(等号を含む)
$\not\subset$ \not\subset 部分集合ではない
$\cup$ \cup 和集合(union)
$\cap$ \cap 共通部分(intersection)
$\bigcup$ \bigcup 大きな和集合(複数集合)
$\bigcap$ \bigcap 大きな共通部分(複数集合)
$\setminus$ \setminus 差集合($A$ にあって $B$ にない)
$\triangle$ \triangle 対称差
$A^c$ A^c 補集合
$\overline{A}$ \overline{A} 補集合(上線表記)
$\times$ \times 直積(デカルト積)
$\emptyset$ \emptyset 空集合
$\varnothing$ \varnothing 空集合(0と紛れにくい)
$\mathbb{N}$ \mathbb{N} 自然数の集合
$\mathbb{Z}$ \mathbb{Z} 整数の集合
$\mathbb{Q}$ \mathbb{Q} 有理数の集合
$\mathbb{R}$ \mathbb{R} 実数の集合
$\mathbb{C}$ \mathbb{C} 複素数の集合
$\mathcal{P}(A)$ \mathcal{P}(A) べき集合
$\mid$ \mid 内包記法の縦線「〜を満たす」
$\{\,\}$ \{ \} 集合の波括弧
$\forall$ \forall 全称量化子「すべての」
$\exists$ \exists 存在量化子「ある〜が存在」
$\subseteq$ の否定 $\nsubseteq$ \nsubseteq 部分集合でない

早見表だけで用が足りることも多いですが、$\subset$ と $\subseteq$ の使い分けや、内包記法の正しい縦線の書き方など、知らないと事故るポイントがあります。ここから先で一つずつ丁寧に見ていきましょう。

元の帰属記号(∈・∉)

「属する」と「属さない」

集合の中で最も基本的な関係は「ある要素がその集合に属しているか」です。たとえば、$3$ は自然数の集合に属しますが、$-1$ は属しません。スーパーの「果物売り場」という集合を考えると、りんごは属する($\in$)が、ハサミは属さない($\notin$)——この感覚がそのまま記号になっています。

記号 LaTeX 意味 読み方
$\in$ \in 〜に属する element of
$\notin$ \notin 〜に属さない not element of
$\ni$ \ni 〜を元として含む contains as member

使用例

$$ 3 \in \mathbb{N}, \quad -1 \notin \mathbb{N} $$

$$
3 \in \mathbb{N}, \quad -1 \notin \mathbb{N}
$$

$\mathbb{N}$ は自然数全体の集合を表す記号です(後述)。$3$ は自然数なので $\in$(属する)、$-1$ は自然数ではないので $\notin$(属さない)を使います。

$$ x \in A \quad \Leftrightarrow \quad A \ni x $$

$\ni$ は $\in$ の向きを逆にした記号で、「集合 $A$ が要素 $x$ を含む」と読みます。使用頻度は $\in$ より低いですが、「$A$ を主語にしたい」ときに便利です。なお \notin がない環境でも \not\in で同じ斜線付きの記号を作れます。

この $\in$ と、次に出てくる $\subset$ の取り違えが、集合記号でいちばん多いミスです。図で違いを押さえておきましょう。

∈ は元と集合、⊂ は集合と集合

左が $x \in A$ で、左側にあるのは「点」つまり元です。右が $A \subset B$ で、左側にあるのは「円」つまり集合です。袋の中に玉が入っているのが $\in$、袋の中に袋が入っているのが $\subset$ と覚えると混同しません。

この違いは記法にも効いてきます。たとえば $\{1\} \in \{1, 2\}$ は偽ですが、$\{1\} \subset \{1, 2\}$ は真です。$\{1\}$ は集合なので、$\{1,2\}$ の元($1$ と $2$)のどれとも一致しないからです。一方 $1 \in \{1, 2\}$ は真で、$1 \subset \{1,2\}$ は($1$ が集合でないので)そもそも意味を成しません。

帰属記号は「要素と集合の関係」を表しました。次は一段上がって、「集合と集合の関係」を表す部分集合記号、いわゆる subset を見ていきます。

部分集合記号(subset の使い分け)

部分集合とは

集合 $A$ のすべての要素が集合 $B$ にも属するとき、$A$ は $B$ の部分集合であると言います。学校に例えると、「理系クラスの生徒は全員、学年の生徒に含まれる」という関係が部分集合です。理系クラス $\subseteq$ 学年、というわけです。

記号 LaTeX 意味 備考
$\subset$ \subset 部分集合(流儀により真部分集合) 教科書によって意味が割れる
$\subseteq$ \subseteq 部分集合($A = B$ を含む) 最も安全で一般的
$\subsetneq$ \subsetneq 真部分集合(明示的) $A \neq B$ を強調
$\subsetneqq$ \subsetneqq 真部分集合(別字形)
$\supset$ \supset 上位集合(逆向き) $B \supset A$ は $A \subset B$ と同じ
$\supseteq$ \supseteq 上位集合($=$ を含む)
$\supsetneq$ \supsetneq 真上位集合
$\not\subset$ \not\subset 部分集合ではない
$\nsubseteq$ \nsubseteq 部分集合ではない(専用記号) amssymb / KaTeX対応

\subset\subseteq の使い分け(重要)

「latex subset」で検索した人が一番つまずくのがここです。$\subset$ の意味は教科書・分野によって異なります。

  • 集合論・フランス流: $\subset$ は $\subseteq$(等号を含む、つまり $A = B$ も許す)の意味
  • 解析・アメリカ流: $\subset$ は「真部分集合」($A \subsetneq B$、$A \neq B$)の意味

つまり $\subset$ という1つの記号が、文脈によって正反対の「等号を含む/含まない」を意味しうるのです。誤解を避けるには、$\subset$ を曖昧なまま使わず、次のように意図を明示するのが安全です。

  • $A = B$ を許す(等号込み)場合: $A \subseteq B$ (\subseteq
  • $A \neq B$ を明示したい場合: $A \subsetneq B$ (\subsetneq

こうしておけば、どの流儀の読者にも一意に伝わります。3つの記号の立ち位置を並べると次のようになります。

⊂ / ⊆ / ⊊ の使い分け

$\subset$ だけが「読者がどちらの流儀か」に依存する曖昧な記号で、$\subseteq$ と $\subsetneq$ はどちらの流儀でも意味が一意に定まります。論文やレポートでは後者2つを使い分けるのが安全です。$\subset$ を使うなら、冒頭で「本稿では $\subset$ は等号を含む意味で用いる」と一言断っておくと親切です。

なお、実務上は $\subset$ を $\subseteq$ の意味で読む人が多数派です。とはいえ「多数派だから伝わるはず」と考えるより、記号自体で意図が閉じているほうが読み手の負担は小さくなります。

$$
\mathbb{N} \subseteq \mathbb{Z} \subseteq \mathbb{Q} \subseteq \mathbb{R} \subseteq \mathbb{C}
$$

$$ \mathbb{N} \subseteq \mathbb{Z} \subseteq \mathbb{Q} \subseteq \mathbb{R} \subseteq \mathbb{C} $$

この式は「自然数 $\subseteq$ 整数 $\subseteq$ 有理数 $\subseteq$ 実数 $\subseteq$ 複素数」という数の集合の包含関係を表しています。どれも次の集合に「真に」含まれる(たとえば $0.5 \in \mathbb{Q}$ だが $0.5 \notin \mathbb{Z}$)ので、より厳密には $\subsetneq$ を使うこともできます。

部分集合は「片方がもう片方に含まれる」関係でした。では、2つの集合を組み合わせて新しい集合を作る——和や共通部分などの演算を次に見ていきましょう。

集合演算記号(∪・∩・∖)

和集合と共通部分

集合の演算で最も基本的なのは、和集合(union, $\cup$)と共通部分(intersection, $\cap$)です。ベン図をイメージすると一発です。2つの円が重なっている図で、「全体(どちらかに入っていれば塗る)」が和集合、「重なり(両方に入っているところだけ塗る)」が共通部分です。

差集合・対称差まで含めて、4つの演算をベン図で並べておきます。

集合演算のベン図

塗られている領域を見比べると、4つの演算の違いが一目で分かります。$\cup$ は両方の円を全部、$\cap$ は重なりだけ、$\setminus$ は $A$ から重なりを除いた三日月形、$\triangle$(対称差)は重なりだけを除いた「両端」です。対称差は $A \triangle B = (A \cup B) \setminus (A \cap B)$ と書けることも、図から読み取れます。

記号の形も覚えやすくできています。$\cup$ はカップ(cup)、$\cap$ はキャップ(cap)と読み、$\cup$ は「上が開いていて何でも受け入れる=和」、$\cap$ は「上が閉じていて絞り込む=共通部分」と対応づけると混同しません。

記号 LaTeX 意味 説明
$\cup$ \cup 和集合 どちらか一方(以上)に属する要素の集合
$\cap$ \cap 共通部分 両方に属する要素の集合
$\bigcup$ \bigcup 大きな和集合 複数の集合の和
$\bigcap$ \bigcap 大きな共通部分 複数の集合の共通部分
$\sqcup$ \sqcup 非交和(直和) 互いに素な和を強調

$$ A \cup B = \{x \mid x \in A \;\text{または}\; x \in B\} $$

$$ A \cap B = \{x \mid x \in A \;\text{かつ}\; x \in B\} $$

$$
A \cup B = \{x \mid x \in A \;\text{または}\; x \in B\}
$$
$$
A \cap B = \{x \mid x \in A \;\text{かつ}\; x \in B\}
$$

ここで $\{x \mid \dots\}$ は内包的記法で、「条件を満たす $x$ の集合」を表します(後で詳しく扱います)。和集合は「または(or)」、共通部分は「かつ(and)」に対応している点を押さえておきましょう。

複数の集合の和集合・共通部分は、添字付きの大きな演算子 \bigcup \bigcap を使うと綺麗に書けます。

$$ \bigcup_{i=1}^{n} A_i = A_1 \cup A_2 \cup \cdots \cup A_n $$

$$ \bigcap_{i=1}^{n} A_i = A_1 \cap A_2 \cap \cdots \cap A_n $$

$$
\bigcup_{i=1}^{n} A_i = A_1 \cup A_2 \cup \cdots \cup A_n
$$

\bigcup_{i=1}^{n} のように下付き・上付きで添字を付けられます。$\sum$ や $\prod$ と同じ感覚で、繰り返しの和集合・共通部分を1つの記号で表せるわけです。

差集合・対称差・補集合

記号 LaTeX 意味 説明
$A \setminus B$ A \setminus B 差集合 $A$ にあって $B$ にない要素
$A – B$ A - B 差集合(別表記) $\setminus$ と同義(紛らわしいので注意)
$A \triangle B$ A \triangle B 対称差 どちらか一方だけに属する要素
$A^c$ A^c 補集合 $A$ に属さない要素(全体集合の中で)
$\bar{A}$ \bar{A} 補集合(短い上線) 1文字向き
$\overline{A}$ \overline{A} 補集合(長い上線) 複数文字でも崩れない
$\complement A$ \complement A 補集合記号 専用記号

$$ A \setminus B = \{x \mid x \in A \;\text{かつ}\; x \notin B\} $$

$$
A \setminus B = \{x \mid x \in A \;\text{かつ}\; x \notin B\}
$$

差集合 $A \setminus B$ は「$A$ から $B$ の要素を取り除いた集合」です。引き算記号 - で書く流儀もありますが、数の引き算と紛れるので、集合では \setminus(バックスラッシュ)が推奨です。

対称差 $A \triangle B$ は「ちょうど片方にだけ属する要素」、つまり $(A \setminus B) \cup (B \setminus A)$ です。

$$ A \triangle B = (A \setminus B) \cup (B \setminus A) = (A \cup B) \setminus (A \cap B) $$

補集合は、全体集合 $U$ を背景にして「$A$ 以外」を指します。上線で書く場合、1文字なら \bar{A} でも足りますが、$\overline{A \cup B}$ のように複数文字や式に線を引くときは \overline{...} を使わないと線が短くなって崩れます。

$$ \overline{A \cup B} = \overline{A} \cap \overline{B} $$

これはド・モルガンの法則で、後で Python でも確かめます。まずはベン図で、左辺と右辺が同じ領域になることを見ておきましょう。

補集合とド・モルガンの法則

左が補集合そのもので、破線の四角が全体集合 $U$、その中で円 $A$ の外側が $\overline{A}$ です。補集合は全体集合を決めないと定まらないので、$U$ を明示するのが作法です。

中央が「$A$ か $B$ のどちらかに入っている部分」を除いた $\overline{A \cup B}$、右が「$A$ にも入っておらず、$B$ にも入っていない部分」$\overline{A} \cap \overline{B}$ です。この2枚は塗られた領域が完全に同じで、実際にピクセル単位で比較しても一致しました(図のタイトルの判定結果)。「どちらにも入っていない」と「両方に入っていない」が同じことを言っているわけです。

直積(デカルト積)

2つの集合の直積(すべての順序対 $(a,b)$ の集合)は $\times$ で表します。

$$ A \times B = \{(a, b) \mid a \in A, \; b \in B\} $$

$$
A \times B = \{(a, b) \mid a \in A, \; b \in B\}
$$

$\mathbb{R} \times \mathbb{R} = \mathbb{R}^2$ は2次元平面全体を表します。$n$ 回の直積 $\mathbb{R}^n$ は機械学習の特徴空間として頻出です。

演算記号が揃いました。次は、これらと組み合わせて使う「特別な集合」——空集合や数の集合の記号を見ていきます。

空集合と数の集合(∅・ℝ・ℤ・ℕ)

空集合

要素を1つも持たない集合を空集合と呼びます。$A \cap B = \emptyset$ なら「$A$ と $B$ は共通要素を持たない(互いに素)」という意味です。

記号 LaTeX 備考
$\emptyset$ \emptyset 標準的
$\varnothing$ \varnothing 斜線入りの丸。数字0と区別しやすい

$$ A \cap B = \emptyset \quad \text{($A$ と $B$ は互いに素)} $$

$$
A \cap B = \emptyset \quad \text{($A$ と $B$ は互いに素)}
$$

\varnothingamssymb(LaTeX)でも KaTeX でも使え、0 と紛れにくいため好む著者が多いです。なお空集合に $\phi$(ギリシャ文字ファイ)を使うのはよくある誤りです(後述)。

数の集合(黒板太字)

数の集合を表すには、黒板太字(blackboard bold)の \mathbb コマンドを使います。黒板にチョークで「太字」を表現するために二重線で書いた名残です。

記号 LaTeX 意味
$\mathbb{N}$ \mathbb{N} 自然数の集合
$\mathbb{Z}$ \mathbb{Z} 整数の集合(独語 Zahlen より)
$\mathbb{Q}$ \mathbb{Q} 有理数の集合(Quotient より)
$\mathbb{R}$ \mathbb{R} 実数の集合
$\mathbb{C}$ \mathbb{C} 複素数の集合
$\mathbb{H}$ \mathbb{H} 四元数の集合
$\mathbb{R}^n$ \mathbb{R}^n $n$ 次元実数空間
$\mathbb{R}_{>0}$ \mathbb{R}_{>0} 正の実数
$\mathbb{Z}^{+}$ \mathbb{Z}^{+} 正の整数

$$ \mathbb{N} = \{1, 2, 3, \dots\}, \qquad \mathbb{Z} = \{\dots, -2, -1, 0, 1, 2, \dots\} $$

$$
\mathbb{R}^n \quad \text{($n$次元実数空間)}
$$

$\mathbb{R}^n$ は $n$ 次元の実数ベクトル空間を表し、線形代数や機械学習で頻出します。たとえば「特徴ベクトル $\bm{x} \in \mathbb{R}^d$」という書き方は機械学習の論文の定番です。

これらの集合は入れ子になっています。

数の集合の入れ子構造

内側から外側へ、$\mathbb{N} \subset \mathbb{Z} \subset \mathbb{Q} \subset \mathbb{R} \subset \mathbb{C}$ と広がっていきます。各層に置いた数は「その層で初めて表せるようになる数」です。$-3$ は自然数では表せず整数で初めて登場し、$\frac{1}{2}$ は整数では表せず有理数で初めて登場し、$\sqrt{2}$ は有理数では表せず実数で初めて登場します。層がひとつ増えるたびに、それまで書けなかった数が書けるようになる、という積み上げ方です。

なお $\mathbb{N}$ に $0$ を含めるかどうかは流儀が分かれます。日本の高校数学や解析では $1$ から、集合論や計算機科学では $0$ から始めることが多く、必要なら $\mathbb{N}_0$ や $\mathbb{Z}_{\geq 0}$ と書いて明示します。

べき集合

集合 $A$ のすべての部分集合からなる集合をべき集合(power set)と呼びます。

$$ \mathcal{P}(A) = \{B \mid B \subseteq A\} $$

$$
\mathcal{P}(A) = \{B \mid B \subseteq A\}
$$

\mathcal{P} は花文字(カリグラフィー体)の $P$ を出力します。$2^A$ と書くこともあります。要素数 $n$ の集合のべき集合は $2^n$ 個の要素を持つので、$2^A$ という記法は理にかなっています。

$A = \{a, b, c\}$ の場合を全部描くと、次のようになります。

べき集合のハッセ図

一番下が空集合 $\emptyset$、一番上が $A$ 自身で、あいだに要素1個の部分集合が3つ、2個の部分集合が3つ並びます。合計 $1+3+3+1 = 8 = 2^3$ 個です。この $1, 3, 3, 1$ という並びは二項係数 $\binom{3}{k}$ そのもので、「$n$ 個から $k$ 個を選ぶ組み合わせ」を各段が表しているからです。$\sum_k \binom{n}{k} = 2^n$ が、べき集合の要素数の式にあたります。

線は $\subset$ の関係を表しています。空集合と $A$ 自身も部分集合に含まれる点に注意してください。「$\emptyset \subseteq A$ は常に真」というのは、定義($\emptyset$ の元はすべて $A$ の元である、という主張が空虚に真になる)から従います。

特別な集合の記号が出揃いました。これらを使って「集合そのものをどう定義して書くか」——外延・内包・区間の記法を次に見ていきます。

集合の記法(外延・内包・区間)

外延的記法(列挙法)

要素を直接列挙する方法です。

$$ A = \{1, 2, 3, 4, 5\} $$

$$
A = \{1, 2, 3, 4, 5\}
$$

波括弧は、LaTeXの数式モードでは \{ \} とバックスラッシュ付きで書く必要があります。{ } だけだとグルーピング(まとめる)の意味になり、画面には表示されません。ここは初心者が必ず一度はハマるポイントです。

同じ集合を、次に説明する内包的記法で書くこともできます。2つの流儀を並べておきます。

外延的記法と内包的記法

左の外延的記法は要素をそのまま並べる書き方で、要素が少なく有限のときに読みやすくなります。右の内包的記法は「どんな条件を満たす $x$ か」で定義する書き方で、無限集合や、要素そのものより条件が主役のときに向いています。両者は同じ集合を指しており、書き分けは読み手にとっての分かりやすさで決めます。

図の下に書いたとおり、内包記法の縦線は | ではなく \mid を使います。\mid は「二項関係子」として登録されているコマンドなので前後に適切な余白が入りますが、| は単なる縦棒なので前後が詰まって読みにくくなります。

内包的記法(条件法)

条件を指定して集合を定義する方法です。「latex 集合記号」で検索する人の多くが本当に書きたいのは、実はこの内包記法だったりします。

$$ B = \{x \in \mathbb{R} \mid x^2 < 4\} $$

$$
B = \{x \in \mathbb{R} \mid x^2 < 4\}
$$

\mid は条件を区切る縦線で、「〜を満たす」と読みます。この $B$ は「$x^2 < 4$ を満たす実数 $x$ の集合」、つまり開区間 $(-2, 2)$ です。

内包記法は「左に代表元、縦線、右に条件」という三部構成です。いくつかパターンを挙げます。

$$ \{ n \in \mathbb{Z} \mid n \;\text{は偶数} \}, \qquad \{ 2k \mid k \in \mathbb{Z} \}, \qquad \{ (x, y) \in \mathbb{R}^2 \mid x^2 + y^2 = 1 \} $$

$$
\{ n \in \mathbb{Z} \mid n \;\text{は偶数} \}
$$
$$
\{ 2k \mid k \in \mathbb{Z} \}
$$
$$
\{ (x, y) \in \mathbb{R}^2 \mid x^2 + y^2 = 1 \}
$$

最初の2つはどちらも「偶数全体」を表しますが、書き方が違います。左に条件付きの代表元を置く流儀($\{n \in \mathbb{Z} \mid \dots\}$)と、左に生成規則を置く流儀($\{2k \mid k \in \mathbb{Z}\}$)の両方があります。3つ目は単位円(半径1の円周上の点の集合)です。内包記法は「日本語の条件をそのまま縦線の右に書ける」のが強みです。

縦線とサイズ調整(複数行・大きな括弧)

条件が長くなったり、内側に大きな式が入ると、波括弧と縦線の高さが中身に合わなくなります。そんなときは \left\{ ... \right\}\middle| で自動サイズ調整します。

$$ \left\{ \frac{p}{q} \;\middle|\; p \in \mathbb{Z}, \; q \in \mathbb{Z}, \; q \neq 0 \right\} $$

$$
\left\{ \frac{p}{q} \;\middle|\; p \in \mathbb{Z},\; q \in \mathbb{Z},\; q \neq 0 \right\}
$$

これは有理数 $\mathbb{Q}$ の定義です。\left\{ \right\} で波括弧が分数の高さに合わせて伸び、\middle| で縦線も同じ高さに伸びます。固定の \mid だと中身の分数より縦線が短くなって不格好になるので、背の高い中身では \middle| を使い分けましょう。

条件が複数行にわたる場合は、aligned などの環境を波括弧の中に入れます。

$$ S = \left\{ x \in \mathbb{R} \;\middle|\; \begin{aligned} &x > 0, \\ &x^2 - 3x + 2 = 0 \end{aligned} \right\} $$

$$
S = \left\{ x \in \mathbb{R} \;\middle|\;
\begin{aligned}
&x > 0, \\
&x^2 - 3x + 2 = 0
\end{aligned}
\right\}
$$

\begin{aligned} ... \\ ... \end{aligned} で条件を2行に分け、\left\{ \right\} が全体を囲んで高さを合わせています。この $S$ は $\{1, 2\}$ です($x^2-3x+2=(x-1)(x-2)=0$ かつ $x>0$)。

区間の表記

実数の連続的な範囲(区間)は括弧を使って表します。区間は集合の一種($[a,b] = \{x \in \mathbb{R} \mid a \le x \le b\}$)なので、ここで一緒に押さえます。

表記 LaTeX 意味
$[a, b]$ [a, b] 閉区間($a \leq x \leq b$)
$(a, b)$ (a, b) 開区間($a < x < b$)
$[a, b)$ [a, b) 半開区間(左閉右開)
$(a, b]$ (a, b] 半開区間(左開右閉)
$[a, \infty)$ [a, \infty) 無限区間
$(-\infty, b]$ (-\infty, b] 無限区間

$$ x \in [0, 1] \quad \text{は} \quad 0 \leq x \leq 1 \quad \text{を意味する} $$

括弧の向きだけで意味が変わるので、数直線に並べて確認しておきます。

区間の4パターン

塗りつぶした丸(●)が「端点を含む」、白丸(○)が「含まない」を表します。角括弧 [ ] が●に、丸括弧 ( ) が○に対応していると覚えると、$[a, b)$ のような半開区間もすぐ読めます。

区間が集合であることを意識すると、$x \in [0, 1]$ という書き方が自然に見えてきます。これは「$x$ は $[0,1]$ という集合の元である」という帰属の主張で、$0 \leq x \leq 1$ と同じことを言っています。論文では不等式より区間表記のほうが短くて済むので、条件が多いときに重宝します。

なお開区間を $]a, b[$ と外向き角括弧で書くフランス流もあり、その場合は ]a, b[ とそのまま打てます。記法が出揃ったので、次は集合と表裏一体の「論理記号(量化子)」を見ていきましょう。

集合と論理量化子(∀・∃)

集合と論理は切り離せません。「すべての要素について…」「ある要素が存在して…」という主張は、集合の議論で頻繁に登場します。これを表すのが量化子(quantifier)です。

全称量化子と存在量化子

左の $\forall$(全称量化子)は「集合 $A$ の元すべてが条件 $P$ を満たす」という主張で、図では全部の点に色が付いています。ひとつでも灰色の点があれば主張は偽になります。右の $\exists$(存在量化子)は「条件を満たす元が少なくとも1つある」という主張で、図では1つだけ色が付いていれば十分です。

この非対称性が、証明の進め方を決めます。$\forall$ の主張を否定するには反例をひとつ挙げれば足り、$\exists$ の主張を証明するには実例をひとつ挙げれば足ります。逆に、$\forall$ を証明するときと $\exists$ を否定するときは、全要素を相手にした議論が必要になります。

記号 LaTeX 意味
$\forall$ \forall すべての(for all、全称量化子)
$\exists$ \exists ある〜が存在する(exists、存在量化子)
$\nexists$ \nexists 〜は存在しない
$\exists !$ \exists ! ただ1つ存在する
$\Rightarrow$ \Rightarrow ならば(含意)
$\Leftrightarrow$ \Leftrightarrow 同値(必要十分)
$\land$ \land かつ(論理積)
$\lor$ \lor または(論理和)
$\neg$ \neg 否定
$\therefore$ \therefore ゆえに
$\because$ \because なぜなら

これらを使うと、たとえば部分集合の定義そのものを論理式で書けます。

$$ A \subseteq B \quad \Longleftrightarrow \quad \forall x \, (x \in A \Rightarrow x \in B) $$

$$
A \subseteq B \;\Longleftrightarrow\; \forall x \, (x \in A \Rightarrow x \in B)
$$

これは「$A$ が $B$ の部分集合であるとは、$A$ のすべての要素 $x$ について $x$ が $B$ にも属すること」という、部分集合の厳密な定義です。集合記号 $\subseteq$ と論理記号 $\forall, \Rightarrow$ がきれいに対応しているのがわかります。

存在量化子の例も挙げておきます。

$$ A \cap B \neq \emptyset \quad \Longleftrightarrow \quad \exists x \, (x \in A \land x \in B) $$

「共通部分が空でない」とは「$A$ にも $B$ にも属する要素 $x$ が存在する」こと。やはり集合演算 $\cap$ と論理記号 $\exists, \land$ が対応します。量化子まで含めて書けると、定義や証明をそのまま数式で表現できるようになります。

記号の網羅はここまでです。次は、ここまでの集合演算が「本当にその通りに動くか」を Python で確かめ、ベン図で目に見える形にしてみましょう。

Pythonで集合演算とベン図を確かめる

LaTeX で書いた集合演算が、実際にどんな結果になるかを Python の組み込み set 型で確かめてみます。記号の意味を「コードで動かして」体感するのが目的です。

# Pythonの集合型で各演算を確認する
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

print("A ∪ B (和集合, \\cup):", A | B)          # union
print("A ∩ B (共通部分, \\cap):", A & B)         # intersection
print("A \\ B (差集合, \\setminus):", A - B)      # difference
print("A △ B (対称差, \\triangle):", A ^ B)       # symmetric difference
print("3 ∈ A (\\in):", 3 in A)                    # element of
print("{1,2} ⊆ A (\\subseteq):", {1, 2} <= A)     # subset
print("{1,2} ⊊ A (\\subsetneq):", {1, 2} < A)     # proper subset
print("A ∩ {9} = ∅ (\\emptyset):", A & {9} == set())  # disjoint

出力は次のようになります。

A ∪ B (和集合, \cup): {1, 2, 3, 4, 5, 6, 7, 8}
A ∩ B (共通部分, \cap): {4, 5}
A \ B (差集合, \setminus): {1, 2, 3}
A △ B (対称差, \triangle): {1, 2, 3, 6, 7, 8}
3 ∈ A (\in): True
{1,2} ⊆ A (\subseteq): True
{1,2} ⊊ A (\subsetneq): True
A ∩ {9} = ∅ (\emptyset): True

ここから、LaTeX記号と Python 演算子の対応がはっきり読み取れます。和集合 $\cup$ は |、共通部分 $\cap$ は &、差集合 $\setminus$ は -、対称差 $\triangle$ は ^ に対応します。対称差 $A \triangle B = \{1,2,3,6,7,8\}$ は「共通部分 $\{4,5\}$ を除いた残り」になっており、$(A \cup B) \setminus (A \cap B)$ の定義通りです。また <= が $\subseteq$、< が $\subsetneq$(真部分集合)に対応している点は、まさに本文で説明した使い分けと一致しています。

ド・モルガンの法則を検証する

本文で出てきたド・モルガンの法則 $\overline{A \cup B} = \overline{A} \cap \overline{B}$ を、全体集合 $U$ を決めて確かめます。

# 全体集合 U の中で補集合を取り、ド・モルガンの法則を検証
U = set(range(1, 11))   # U = {1, ..., 10}
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

lhs = U - (A | B)              # 左辺: \overline{A ∪ B}
rhs = (U - A) & (U - B)        # 右辺: \overline{A} ∩ \overline{B}

print("左辺 \\overline{A ∪ B}:", lhs)
print("右辺 \\overline{A} ∩ \\overline{B}:", rhs)
print("一致:", lhs == rhs)
左辺 \overline{A ∪ B}: {9, 10}
右辺 \overline{A} ∩ \overline{B}: {9, 10}
一致: True

左辺と右辺がどちらも $\{9, 10\}$ で一致しました。$U = \{1,\dots,10\}$ のうち $A \cup B = \{1,\dots,8\}$ に入らないのは $9, 10$ だけなので、確かに $\overline{A \cup B} = \{9, 10\}$ です。記号で書いた法則が、具体的な集合でも成り立つことを数値で確認できました。

ベン図で可視化する

最後に、和集合・共通部分・差集合を matplotlib のベン図で見える化します。記号の意味を図形として直感的に押さえるためです。

import matplotlib.pyplot as plt
from matplotlib_venn import venn2

A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

fig, ax = plt.subplots(figsize=(7, 5))
v = venn2([A, B], set_labels=('A', 'B'), ax=ax)
# 各領域に対応する集合演算の意味を注記
if v.get_label_by_id('10'): v.get_label_by_id('10').set_text('A \\ B\n{1,2,3}')
if v.get_label_by_id('01'): v.get_label_by_id('01').set_text('B \\ A\n{6,7,8}')
if v.get_label_by_id('11'): v.get_label_by_id('11').set_text('A ∩ B\n{4,5}')
ax.set_title("Venn diagram: union, intersection, difference")
plt.tight_layout()
plt.show()

このベン図から、3つの領域がそれぞれ集合演算に対応していることが一目でわかります。左の月形が差集合 $A \setminus B = \{1,2,3\}$、右の月形が $B \setminus A = \{6,7,8\}$、中央の重なりが共通部分 $A \cap B = \{4,5\}$ です。そして3つの領域すべてを合わせたものが和集合 $A \cup B$、左右の月形だけ(重なりを除いた部分)が対称差 $A \triangle B$ にあたります。LaTeX で書いた記号が、図のどの部分を指しているのかがはっきりするはずです(matplotlib-vennpip install matplotlib-venn で入ります)。

可視化まで終えたので、最後に実務で事故りやすいポイントを押さえておきましょう。

よくある間違いとTips

集合記号で事故りやすい4つを、先に並べて対比しておきます。

集合記号でよくある4つの間違い

左の赤い枠が「よく見かける書き方」、右の緑の枠が「正しい書き方」です。どれも組版としては通ってしまい、エラーが出ないまま見た目だけが崩れるのが厄介なところです。特に一番下の \bar\overline は、1文字だけなら差が分かりにくいのに、$A \cup B$ のような式に付けた途端に線の短さが目立ちます。以下、それぞれを詳しく見ていきます。

間違い1:波括弧をエスケープし忘れる

集合の波括弧は \{\} でエスケープする必要があります。{ } のままだと表示されません。

% NG: 波括弧が表示されない
$A = {1, 2, 3}$

% OK: エスケープする
$A = \{1, 2, 3\}$

間違い2:|\mid の混同

条件を区切る縦線には \mid を使うとスペーシングが正しくなります。

% 非推奨: 前後のスペースが狭い
$\{x | x > 0\}$

% 推奨: 適切なスペースが入る
$\{x \mid x > 0\}$

| は絶対値の縦線としても使われるため、文脈の混同を避ける意味でも \mid が推奨です。さらに、波括弧を \left\{ \right\} で伸ばすときは縦線も \middle| に揃えましょう。

間違い3:空集合に $\phi$ を使う

空集合に $\phi$(\phi)を使うのは誤りです。$\phi$ はギリシャ文字のファイであり、空集合ではありません。

% NG: ギリシャ文字のファイ
$A \cap B = \phi$

% OK: 空集合記号
$A \cap B = \emptyset$

間違い4:補集合の上線が短くなる

補集合の上線は、複数文字に引くなら \overline{...} を使います。\bar{...} は1文字向けで、複数文字だと線が中央の1文字分しか伸びません。

% NG: 線が短い
$\bar{A \cup B}$

% OK: 線が式全体を覆う
$\overline{A \cup B}$

Tips:集合記号を使った確率の表記

確率論では事象を集合とみなすため、集合記号が頻繁に登場します。

$$ P(A \cup B) = P(A) + P(B) - P(A \cap B), \qquad P(A^c) = 1 - P(A) $$

$$
P(A \cup B) = P(A) + P(B) - P(A \cap B)
$$

これは確率の加法定理で、和集合 $\cup$ と共通部分 $\cap$ の記号がそのまま使われています。集合記号に慣れておくと、確率や測度論の数式がぐっと読みやすくなります。

LaTeX と KaTeX の対応

本記事で紹介したコマンドはすべて、当ブログで使っている KaTeX でも問題なく動きます(\in, \subseteq, \subsetneq, \cup, \cap, \bigcup, \setminus, \emptyset, \varnothing, \mathbb{R}, \mathcal{P}, \mid, \middle|, \forall, \exists, \nsubseteq など)。LaTeX 側で \varnothing\nsubseteq\complement を使う場合は、プリアンブルに \usepackage{amssymb} を入れておけば確実です。

まとめ

本記事では、LaTeXで集合記号を書く方法を逆引きできる形で網羅しました。

  • 帰属記号: \in(属する)、\notin(属さない)、\ni
  • 部分集合(subset): \subseteq(等号込み、安全)、\subsetneq(真部分集合を明示)。\subset は流儀で意味が割れるので使い分けに注意
  • 集合演算: \cup(和)、\cap(共通部分)、\setminus(差)、\triangle(対称差)、\times(直積)、\overline{A}/A^c(補集合)、\bigcup/\bigcap(複数集合)
  • 空集合: \emptyset または \varnothing($\phi$ は誤り)
  • 数の集合: \mathbb{R}(実数)、\mathbb{Z}(整数)、\mathbb{N}(自然数)など黒板太字
  • 集合の記法: \{...\} で囲み、\mid(背が高ければ \middle|)で条件を区切る。複数行は aligned を併用
  • 論理量化子: \forall(すべての)、\exists(存在する)で定義や証明を数式化できる

集合記号は数学の基礎から、確率・機械学習・コンピュータサイエンスまで幅広く登場します。迷ったら本記事の早見表に戻れば、すぐ正しいコマンドにたどり着けるはずです。

次のステップとして、以下の記事も参考にしてください。

関連記事:LaTeX数式記法シリーズ

LaTeX数式記法 完全ガイド(実用チートシート)
頻出記法を一覧で俯瞰できるハブ記事
画像なし
LaTeXで確率記号P(X)・期待値E[X]をマスター 完全ガイド コピペ可
確率論と統計学の数式には、独特の記号体系があります。確率 $P(A)$、期待値 ...

をマスター" description="確率・期待値・分散の記法を網羅"]

LaTeXで条件付き独立を表す記号 完全ガイド
二重垂直線記号の作り方とnewcommand登録
画像なし
LaTeXで総和Σ・総乗Π
bigcupと組み合わせる大型演算子の使い方
画像なし
LaTeXで対数log・指数expを書く 完全ガイド
対数尤度・エントロピーの式で頻出
LaTeXでargmin・argmaxを書く 完全ガイド
最適化記法とoperatorname活用法
関連タグ: KaTeX 数式 記号 論理 集合