1  集合演算と確率

Author

Ryo Nakagami

Published

2024-08-15

Modified

2024-09-11

集合演算

Exercise 1.1

以下の事象を簡単に表せ:

\[ \begin{align} &(A \cup B) \cup (C \cup B^c)\tag{a}\\[4pt] &A \cap (B \backslash A)\tag{b}\\[4pt] &(A\cap B) \cup (A \backslash B)\tag{c}\\[4pt] &(A\cup B) \cap (A \cup B^c)\tag{d}\\[4pt] &(A\cup B) \cap (A^c \cup B) \cap (A \cup B^c)\tag{e}\\[4pt] &A\cup (B - (A\cap B))\cup (C - (A\cap C))\tag{f} \end{align} \]

▶  (a)

結合法則より

\[ \begin{align*} (A\cup C) \cup (B \cup B^c) = (A\cup C) \cup \Omega = \Omega \end{align*} \]

▶  (b)

結合法則より

\[ \begin{align*} A \cap (B \cap A^c) = (A\cap A^c) \cap B = \emptyset \cap B = \emptyset \end{align*} \]

▶  (c)

分配法則より

\[ \begin{align*} (A\cap B) \cup (A \cap B^c) = A \cap (B \cup B^c) = A\cap \Omega = A \end{align*} \]

▶  (d)

分配法則より

\[ (A\cup B) \cap (A \cup B^c) = A \cup (B\cap B^c) = A\cup \emptyset = A \]

▶  (e)

結合法則と分配法則より

\[ \begin{align*} &(A\cup B) \cap (A^c \cup B) \cap (A \cup B^c)\\ &=((A\cup B) \cap (A^c \cup B)) \cap (A \cup B^c)\\ &= (B\cup (A\cap A^c))\cap (A \cup B^c)\\ &= B\cap (A \cup B^c)\\ &= (A\cap B) \cup (B\cap B^c)\\ &= (A\cap B) \end{align*} \]

▶  (f)

\[ \begin{align*} B - (A\cap B) &= B \cap (A\cap B)^c\\ &= (A^c \cap B) \cup (B \cap B^c)\\ &= (A^c \cap B) \end{align*} \]

したがって,

\[ \begin{align*} &A\cup (B - (A\cap B))\cup (C - (A\cap C))\\ &= A\cup (A^c \cap B) \cup ((A^c \cap C))\\ &= A\cup (A^c \cap B) \cup ((A^c \cap C)) \cup A\\ &= (\Omega \cap (A\cup B)) \cup (\Omega \cap (A\cup C))\\ &= (A\cup B) \cup ((A\cup C))\\ &= A\cup B \cup C \end{align*} \]

Exercise 1.2

A, Bが事象のとき, \[ A\cup B = (A\cap B) \cup (A\cap B^c) \cup (A^c \cap B) \tag{a} \]

であることを確かめよ.または,\(A\cap B, A\cap B^c , A^c \cap B\) は互いに排反であることを調べよ.

▶  (a)の成立について

\[ \begin{align*} A &= A\cap \Omega\\ &= A\cap (B\cup B^c)\\ &= (A\cap B) \cup (A\cap B^c) \end{align*} \]

同様に,\(B = (A\cap B) \cup (A^c\cap B)\) . 従って,

\[ \begin{align*} A \cup B &= ((A\cap B) \cup (A^c\cap B)) \cup (A\cap B) \cup (A\cap B^c)\\ &= (A\cap B) \cup (A^c\cap B) \cup (A\cap B^c) \end{align*} \]

▶  各事象の排反性について

\[ \begin{align*} (A\cap B) &\subset B\\ (A\cap B^c) &\subset B^c \end{align*} \]

より,\((A\cap B) \cap (A\cap B^c) = \emptyset\). 同様に

\[ \begin{align*} (A\cap B) &\subset A\\ (A^c\cap B) &\subset A^c\\ (A\cap B^c) &\subset A \end{align*} \]

従って,\((A\cap B) \cap (A^c\cap B) = \emptyset, (A\cap B^c) \cap (A^c\cap B) = \emptyset\) であることがわじゃry.

Exercise 1.3

\(A, B\) を空集合ではない集合としたとき,以下の関係式は正しいと言えるか?

\[ (A\cup B) - A = B \]

\[ A\cup B = A \cup (B - A) \]

と互いに交わりのない集合のUnionと表記できるので

\[ A\cup B - A = B - A \subset B \]

\(A \cap B \neq \emptyset\) のとき,\(B \not\subset B-A\), つまり \(B - A \neq B\)となるので関係式は正しくない.

Exercise 1.4

\(A, B, C\) を空集合ではない集合としたとき,以下の関係式は正しいと言えるか?

\[ (A\cup B) - C = A- (B - C) \]

\[ \begin{align*} \text{LHS} &= (A\cup B) \cap C^c\\ &= (A\cap C^c) \cup (B \cap C^c)\\ \Rightarrow& ((A\cap C^c) \cup (B \cap C^c))\cap C = \emptyset \end{align*} \]

\[ \begin{align*} \text{RHS} &= A\cap (B \cap C^c)^c\\ &= A\cap (B^c \cup C)\\ &= (A\cap B^c) \cup (A\cap C)\\ \Rightarrow& ((A\cap B^c) \cup (A\cap C)) \cap C \neq \emptyset \end{align*} \]

したがって,\(\text{LHS} \neq \text{RHS}\)となり,与えられた関係式は正しくない.

Exercise 1.5

\(A, B, C\) を空集合ではない集合としたとき,以下の関係式を示せ

\[ A\cap B \cap C \subset (A\cap B) \cup (B\cap C) \cup (A\cap C) \]

\[ \begin{align*} A\cap B \cap C &\subset A\cap B \subset (A\cap B) \cup (B\cap C) \cup (A\cap C) \end{align*} \]

Exercise 1.6 ポーカーと集合

ポーカーを考える.5枚のカードの組合せ全体を \(\Omega\) としたとき,以下の事象の包含関係を調べよ

  • 事象A: 同じ数字のカードが2枚以上存在する組み合わせ
  • 事象B: 同じ数字のカードが3枚以上存在する組み合わせ
  • 事象C: 同じ数字のカードが4枚以上存在する組み合わせ
  • 事象D: 同じ数字のカードが2枚以上あるのが2種類ある組み合わせ
  • 事象E: フルハウス
  • 事象F: ワンペア
  • 事象G: ツーペア
  • 事象H: スリーカーズ

\[ \begin{align*} C &\subset B \subset A\\ D &\subset A\\ E &= B \cap D\\ F &= (A - B) \cap (A - D) = A \cap (B\cup D)^c \\ G &= D - B\\ H &= (B - C) \cap (B - D) = B \cap (C \cup D)^c\\ B - D &= B - E\\ D - B &= D - E\\ \end{align*} \]

Exercise 1.7

上述のポーカーと集合問題において,\(\Omega\) 及び各 \(A\)~\(H\) 事象の個数(=カードの組み合わせ数)を求めよ.

以下では \(\sharp(\cdot)\) で集合の個数を表すとする.

\[ \begin{align*} \sharp(\Omega) = {}_{52}C_5 = 2598960 \end{align*} \]

\(\sharp(A) = \sharp(\Omega) - \sharp(A^c)\) なので

\[ \begin{align*} &\sharp(A^c) = {}_{13}C_5 \times 4^5 = 1317888\\ \Rightarrow &\sharp(A) = 2598960 - 1317888 = 1281072 \end{align*} \]

\(C\) の個数は,事実上フォーカーズの個数と同じなので

\[ \sharp(C) = {}_{13}C_1 \times 48 = 624 \]

フルハウス \(E\) の個数は

\[ \begin{align*} \sharp(E) &= {}_{13}C_2 \times 2 {}_{4}C_3 \times 2 {}_{4}C_2\\ &= 3744 \end{align*} \]

ツーペア \(G\) の個数は, ペアとして選ばれた数値のカード8枚分を引いた44枚の中からドベカードを選ぶ必要があるので

\[ \begin{align*} \sharp(G) &= {}_{13}C_2 \times {}_{4}C_2 \times {}_{4}C_2 \times 44\\ &= 123552 \end{align*} \]

スリーカーズ \(H\)\(H = B \cap (C \cup E)^c = (B - C) - E\) かつ \(E \subset (B - C)\) となるので,

\[ \begin{align*} &\sharp(B-C) = {}_{13}C_1 \times {}_{4}C_3 \times 48 = 58656\\ \Rightarrow& \sharp(H) = 58656 - 3744 = 54912 \end{align*} \]

また,同様の議論より

\[ \begin{align*} \sharp(B) = \sharp(B-C) + \sharp(C) = 58656 + 624 = 59280 \end{align*} \]

ワンペア集合 \(F\) は 集合 \(A\) から ツーペア \(G\), スリーカーズ \(H\), フォーカーズ \(C\), フルハウス \(E\) を引けば良いので

\[ \sharp(F) = 1281072 - 123552 - 54912 - 624 - 3744 = 1098240 \]

\(D - E = G\) 及び \(E \cap G = \emptyset\) という関係から \(\sharp(D) = \sharp(E) + \sharp(G)\) となる.従って,

\[ \sharp(D) = 3744 + 123552 = 127296 \]

📘 REMARKS

組み合わせで表された各標本点は同様に確からしいと考えられるので,各事象の確率は

\[ \Pr(A) = \frac{\sharp(A)}{\sharp(\Omega)} \]

で考えることができる.

また,ワンペア \(F\) 個数の別解として,ペアの数字を一つ選んでから残りはバラバラの数字となることとも考えられるので

\[ \sharp(F) = _{13}C_1 \times _{4}C_2 \times _{12}C_3 \times 4^3 = 1098240 \]

と求めても良い.

Exercise 1.8

Rをもちいて,ワンペア,ツーペア,フルハウス,スリーカーズ,フォーカーズの場合の数を確かめよ.

library(combinat)

Attaching package: 'combinat'
The following object is masked from 'package:utils':

    combn
library(parallel)

num_cores <- 20

# Generate the suits and ranks
suits <- c("H", "D", "H", "S")
ranks <- c("2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A")

# Create the deck of cards
deck <- paste(rep(ranks, each = 4), suits, sep = "-")

# Create all combinations
all_hands <- combn(deck, 5, simplify = FALSE)

# Function to check the rank frequency in a hand
check_hand <- function(hand) {
  hand_ranks <- sapply(strsplit(hand, "-"), `[`, 1)
  rank_table <- table(hand_ranks)
  return(rank_table)
}

hand_types <- mclapply(all_hands, function(hand) {
  rank_table <- check_hand(hand)
  
  if (max(rank_table) == 4) {
    return("Four Cards")
  } else if (max(rank_table) == 3 && any(rank_table == 2)) {
    return("Full House")
  } else if (max(rank_table) == 3) {
    return("Three Cards")
  } else if (sum(rank_table == 2) == 2) {
    return("Two Pair")
  } else if (any(rank_table == 2)) {
    return("One Pair")
  } else {
    return("High Card")
  }
}, mc.cores = num_cores)

# Summary of hand types
table(unlist(hand_types))

 Four Cards  Full House   High Card    One Pair Three Cards    Two Pair 
        624        3744     1317888     1098240       54912      123552 

事象と確率

Exercise 1.9

コインを一回投げて,表をH, 裏をTとした場合の標本空間と事象を列挙せよ

標本空間は

\[ \Omega = \{H, T\} \]

事象は \(2^\text{標本点の数} = 4\) 個存在する.それらを書き出すと以下,

\[ \{H, T\}, \{H\}, \{T\}, \emptyset \]

Exercise 1.10

\(A\subset B\) なる確率事象A, Bに対して \(\Pr(A)\leq \Pr(B)\) を示せ

\(B = A^c \cap B \cup A \cap B\) および \((A^c \cap B) \cap (A \cap B) = \emptyset\) より

\[ \begin{align*} \Pr(B) &= \Pr(A^c \cap B) + \Pr(A \cap B)\\ &\geq \Pr(A \cap B) \end{align*} \]

\(A\subset B\) より \(A \cap B = A\). 従って,

\[ \begin{align*} \Pr(B) &= \Pr(A^c \cap B) + \Pr(A \cap B)\\ &\geq \Pr(A \cap B) = \Pr(A) \end{align*} \]

よって,\(\Pr(A)\leq \Pr(B)\) が成立する.

Exercise 1.11

確率事象 \(A_1, A_2, \cdots, A_n\) について

\[ \Pr(\bigcup_{i=1}^n A_i) \leq \sum_{i=1}^n\Pr(A_i) \]

が成立することを示せ.

数学的帰納法を用いいて示す. \(n=1\) のときは,

\[ \Pr(A_{1}) \leq \Pr(A_{1}) \]

より成立.\(n=2\) のときも,

\[ \Pr(A_{1} \cup A_{2}) = \Pr(A_{1}) + \Pr(A_{2}) - \Pr(A_{1}\cap A_{2}) \leq \Pr(A_{1}) + \Pr(A_{2}) \]

より成立.\(n\) のとき成り立つと仮定すると,仮定より \(\Pr(\bigcup_{i=1}^n A_i)\leq \sum_{i=1}^n\Pr(A_i)\).

\[ \begin{align*} \Pr(\bigcup_{i=1}^{n+1} A_i) &= \Pr((\bigcup_{i=1}^n A_i)\cup A_{n+1})\\ &\leq \Pr(\bigcup_{i=1}^n A_i) + \Pr(A_{n+1})\\ &\leq \sum_{i=1}^n\Pr(A_i) + \Pr(A_{n+1})\\ &= \sum_{i=1}^{n+1}\Pr(A_i) \end{align*} \]

以上より,\(n+1\) のときにも成り立つことがわかる.

\(B_1 = A_1, B2 = A_2 \cap B_1^c, \cdots, B_i = A_i \cap (B_1\cup \cdots \cup B_{i-1})^c\) と定義する. このとき,\(B_i \cap B_j = \emptyset\)

\[ \bigcup_{i} A_i = \bigcup_{i} B_i \]

が成立することをまず確かめる.

▶  排反性

\(i < j\) について

\[ \begin{align*} B_j &= A_j \cap (B_1 \cup \cdots \cup B_i \cup \cdots B_{j-1})^c\\ &\subset (B_1 \cup \cdots \cup B_i \cup \cdots B_{j-1})^c\subset B_i^c \end{align*} \]

従って,\(B_i \cap B_j = \emptyset\)

▶  事象の和

\(B_i \subset A_i\) より

\[ \begin{align*} \bigcup B_i \subset \bigcup A_i \end{align*} \]

つぎに,\(w\in \bigcup A_i\) のとき,\(w \in A_1\) ならば \(w\in B_1\) なので \(w \in \bigcup B_i\). \(w \in A_i \ \ (i > 1)\) のときは,\(B_i = A_i \cap (B_1 \cup \cdots \cup B_{i-1})^c\) であることに留意すると,

  • \(w \in (B_1 \cup \cdots \cup B_{i-1})^c\) ならば \(w\in B_i\) となり, \(w \in \bigcup B_i\).
  • \(w \not \in (B_1 \cup \cdots \cup B_{i-1})^c\) ならば \(w \in B_1 \cup \cdots \cup B_{i-1}\) となり, \(w \in \bigcup B_i\)

従って,いずれの場合でも \(\bigcup A_i \subset \bigcup B_i\) が成立するので

\[ \bigcup B_i = \bigcup A_i \]

となる.

▶  Conclusion

\(B_i \subset A_i\) より \(\Pr(B_i) \leq \Pr(A_i)\) は自明.また上記と合わせると

\[ \begin{align*} \Pr(\bigcup_{i=1}^n A_i) &= \Pr(\bigcup_{i=1}^n B_i)\\ &= \sum_i \Pr(B_i)\\ &\leq \sum_i \Pr(A_i) \end{align*} \]

となり題意は示せた.

Exercise 1.12

A, B, Cを事象とする.次の事象を式で表せ

  1. A,B,CのうちAだけが発生する
  2. A,B,Cのうち少なくとも2つが起きる
  3. A,B,Cどれも起きない
  4. A,B,Cのうち,2つ以上の事象は同時には起きない
  5. A,B,Cのうち,3つ全部起きるか,どれも起きないかのいずれか

▶  (1) A,B,CのうちAだけが発生する

\[ A - (B\cup C) = A \cap B^c \cap C^c \]

▶  (2) A,B,Cのうち少なくとも2つが起きる

\[ (A\cap B) \cup (B\cap C) \cup (A\cap C) \]

▶  (3) A,B,Cどれも起きない

\[ (A\cup B\cup C)^c = A^c \cap B^c \cap C^c \]

▶  (4) A,B,Cのうち,2つ以上の事象は同時には起きない

(2)の余集合に相当するので

\[ \begin{align*} &(A - (B\cup C)) \cup (B - (A\cup C)) \cup (C - (A\cup B)) \cup (A^c \cap B^c \cap C^c)\\ &=((A\cap B) \cup (B\cap C) \cup (A\cap C))^c \end{align*} \]

RでRHSとLHSが一致するかを以下確認します.

Code
library(ggVennDiagram)
library(ggplot2)
set.seed(42)

# genesがsample space omegaに相当
genes <- paste("gene",1:1000,sep="")
x <- list(A=sample(genes,300),
          B=sample(genes,300),
          C=sample(genes,300))

ggVennDiagram(x)

Code
# RHS setoperation
rhs_set <- list(AB_inter=intersect(x$A, x$B),
                BC_inter=intersect(x$B, x$C),
                AC_inter=intersect(x$A, x$C))
union_set <- Reduce(union, rhs_set)
rhs_answer <- setdiff(genes, union_set)

# LHS setoperation
y <- list(A=setdiff(x$A, union(x$B, x$C)),
          B=setdiff(x$B, union(x$A, x$C)),
          C=setdiff(x$C, union(x$A, x$B)),
          D=setdiff(genes, Reduce(union, x)))
lhs_answer <- Reduce(union, y)

結果を確認してみると

# visualize
ggVennDiagram(list(LHS=lhs_answer, RHS=rhs_answer))

setequal(lhs_answer, rhs_answer)
[1] TRUE

上記のように結果が一致することを確かめられました.

▶  (5) A,B,Cのうち,3つ全部起きるか,どれも起きないかのいずれか

\[ (A\cap B\cap C) \cup (A^c \cap B^c \cap C^c) \]

Exercise 1.13
3つのボールa,b,cを3つの箱の中に分配するという実験を考える.この実験の結果,例えば第1の箱に3つとも入ったときには

\[ [abc|\emptyset|\emptyset] \]

と表記するとする.このとき,すべての標本点は何通り存在するか?

3つのボールについて3つのアサインメント先がそれぞれ考えられるので,

\[ 3^3 = 27 \text{通り} \]

Exercise 1.14
区別できない3つのボールを区別できる3つの箱の中に分配するという実験を考える.この実験の結果,

  • 第1の箱に3つとも入ったときには \([3,0,0]\)
  • 第1の箱に2つ, 第2の箱に1つ入ったときには \([2,1,0]\)

と表記するとする.このとき,すべての標本点は何通り存在するか?

区別できないボール3つに対して,両端を含むボールの間4つの候補から仕切りを2つ選ぶ問題と同じみなせるので 4つから2つ重複ありの組み合わせを選ぶ問題, \({}_4H_2\) と考えることができる.

したがって,

\[ \begin{align*} {}_4H_2 = {}_{4+2-1}C_2 = 10\text{通り} \end{align*} \]

Exercise 1.15
区別できない3つのボールを区別できる3つの箱の中に分配するという実験を考える.この実験の結果, 第1と第2の箱が空ではない確率を求めよ.

\([2, 1, 0], [1, 1, 1], [1, 2, 0]\)が条件を標本点となりことから,多項分布の問題の問題と考えることができます.

\[ \begin{align*} P((2, 1, 0)) &= \frac{3!}{2!1!}\left(\frac{1}{3}\right)^2\left(\frac{1}{3}\right)^1\\ P((1, 1, 1)) &= \frac{3!}{1!1!1!}\left(\frac{1}{3}\right)\left(\frac{1}{3}\right)\left(\frac{1}{3}\right)\\ P((1, 2, 0)) &= \frac{3!}{1!2!}\left(\frac{1}{3}\right)^1\left(\frac{1}{3}\right)^2 \end{align*} \]

それぞれの事象は排反なので,和を取ることで第1と第2の箱が空ではない確率が求まります.したがって,

\[ P(\text{第1と第2の箱が空ではない確率})=\frac{4}{9} \]

WARNING !

  • 標本点 \([2, 1, 0], [1, 1, 1], [1, 2, 0]\), 標本空間の要素数10通りというところから,\(4/10=0.4\)と計算することはできない
  • 標本点がすべて同程度に確からしい」という仮定を満たしていないのが理由

Exercise 1.16
上と同様に区別できない3つのボールを区別できる3つの箱の中に分配するという実験を考える.この実験の結果, 第1の箱に1つ以上のボールが入っている確率を求めよ

「第1の箱に1つ以上のボールが入っている」という事象Aは「第1の箱に0このボールが入っている」の余事象となるので \(1 - \Pr(A^c)\)で求まる.したがって,

\[ 1 - \Pr(A^c) = 1 - \left(\frac{2}{3}\right)^3 = \frac{19}{27} \]

が答えとなる.

Exercise 1.17

A国の人は10%がrich, 7%がfamous, 5%がrich and famousであることが知られている.このとき無作為に選ばれた1人について,以下の事象の確率を求めよ

  1. \(\Pr(\text{not rich})\)
  2. \(\Pr(\text{rich but not famous})\)
  3. \(\Pr(\text{rich or famous})\)

▶  (1) \(\Pr(\text{not rich})\)

事象richを\(R\)と表すと,事象not richは\(R^c\)と表せるので

\[ \Pr(\text{not rich}) = 1 - \Pr(R) = 0.9 \]

▶  (2) \(\Pr(\text{rich but not famous})\)

事象famousを\(F\)と表すと,事象rich but not famousは\(R \cap F^c\).したがって,

\[ \begin{align*} \Pr(\text{rich but not famous}) &= \Pr(R \cap F^c)\\ &= \Pr(R \backslash F)\\ &= \Pr(R) - \Pr(R\cap F)\\ &= 0.1 - 0.05 = 0.05 \end{align*} \]

▶  (3) \(\Pr(\text{rich or famous})\)

事象rich or famousは\(R\cup F\)と表現できるので

\[ \Pr(\text{rich or famous}) = \Pr(R) + \Pr(F) - \Pr(R\cap F) = 0.12 \]

Exercise 1.18 捕獲再捕獲法

池の魚の数 \(N\) を推定したい.まず \(m\) 匹の魚を捕り,マークをつけて池に再び放した. しばらくしてから,再び \(n\) 匹の魚をランダムに採取したところ,その内 \(k\) 匹の魚にマークがついていた.

どの魚も捕獲される否かは,独立に同一分布に従っていると仮定したとき,魚の総数 \(N\) の最尤推定値を求めよ.

Code
library(eulerr)
set.seed(42)
# move to new plotting page 
D <-list('Total N'=1:20,'m-k'=1:8, 
         'n-k'=6:10, 'k'= 6:6) 

# creating venn diagram for four sets 
D_eulerr <- euler(D)
plot(D_eulerr, quantities = FALSE, fill = "transparent", lty = c(1,1,1,0), labels = list(font = 4))

パラメーターが \(N\) の尤度関数 \(L(N)\)は.

\[ L(N) = \frac{{}_mC_k {}_{N-m}C_{n-k}}{{}_NC_n} \]

これを最大にする整数 \(N\) を求めたい.ここで以下のような式を露わに定義する

\[ \begin{align*} \frac{L(N)}{L(N-1)} &= \frac{{}_mC_k {}_{N-m}C_{n-k}}{{}_NC_n}\frac{{}_{N-1}C_n}{{}_mC_k {}_{N-1-m}C_{n-k}}\\[6pt] &= \frac{(N-m)(N-n)}{N(N-m-n+k)}\\[6pt] &= \frac{N^2 - (n+m)N +mn}{N^2 - (n+m)N +kN} \end{align*} \]

従って,

\[ \begin{align*} \frac{L(N)}{L(N-1)} &> 1 \Leftrightarrow N < mn/k\\ \frac{L(N)}{L(N-1)} &= 1 \Leftrightarrow N = mn/k\\ \frac{L(N)}{L(N-1)} &< 1 \Leftrightarrow N > mn/k \end{align*} \]

従って,

\[ \hat N = \begin{cases} mn/k, mn/k - 1 & (mn/k: \text{整数})\\ \lfloor mn/k, \rfloor & (\text{otherwise}) \end{cases} \]