Skip to content

সমাধান — Chapter 2.1: Sample Spaces, Axioms & Counting-Based Probability

অধ্যায় part-2-probability-foundations/02-01-sample-spaces-axioms.md-এর §৭ অনুশীলনীর পূর্ণ সমাধান।


৭.১ Conceptual

Q1 (★) — Sample space লেখা

(ক) মুদ্রা \(3\) বার toss। প্রতিবার H/T, ক্রম গুরুত্বপূর্ণ: $$ \Omega = {HHH, HHT, HTH, HTT, THH, THT, TTH, TTT}, \qquad \lvert \Omega \rvert = 2^3 = 8. $$ (0.2-এর multiplication principle: \(2\times2\times2\)।)

(খ) দুই আলাদা পাশার যোগফল। এখানে দুটো ভাবে \(\Omega\) ভাবা যায় — খেয়াল রাখতে হবে কোনটা চাই: - outcome হিসেবে জোড়া (সঠিক, সমসম্ভাব্য): \(\Omega = \{(i,j): 1\le i,j\le 6\}\), \(\lvert\Omega\rvert = 36\)। এখানে সব \(36\)টা outcome সমসম্ভাব্য। - outcome হিসেবে শুধু যোগফল: \(\Omega' = \{2,3,4,\dots,12\}\), \(\lvert\Omega'\rvert = 11\)সাবধান — এই \(11\)টা outcome সমসম্ভাব্য নয় (যোগফল \(7\) ছয় ভাবে, \(2\) মাত্র এক ভাবে আসে)। তাই classical সূত্র এখানে সরাসরি খাটবে না; probability হিসাবের জন্য জোড়ার \(\Omega\) (\(36\)) ব্যবহার করাই নিরাপদ।

(গ) প্রথম head না আসা পর্যন্ত toss। $$ \Omega = {H, TH, TTH, TTTH, \dots}, \qquad \lvert\Omega\rvert = \infty \ (\text{countably infinite}). $$ এটা অসীম কিন্তু গণনাযোগ্য (প্রতিটি outcome-কে \(1,2,3,\dots\) দিয়ে সূচিত করা যায়)। পরে geometric distribution-এর sample space এটাই (2.3)।

Q2 (★) — Event-কে set operation-এ অনুবাদ

\(\Omega=\{1,\dots,6\}\), \(A=\{2,4,6\}\), \(B=\{1,2,3\}\)

  • (ক) "\(A\) এবং \(B\)" \(= A \cap B = \{2\}\)
  • (খ) "\(A\) অথবা \(B\)" \(= A \cup B = \{1,2,3,4,6\}\)
  • (গ) "\(A\) কিন্তু \(B\) নয়" \(= A \setminus B = A \cap B^c = \{4,6\}\)
  • (ঘ) "\(A\)-ও না, \(B\)-ও না" \(= (A\cup B)^c = \{1,2,3,4,6\}^c = \{5\}\)

De Morgan যাচাই: \((A\cup B)^c = A^c \cap B^c\)। এখানে \(A^c=\{1,3,5\}\), \(B^c=\{4,5,6\}\), তাই \(A^c\cap B^c = \{5\}\) — উপরের সাথে মিলল ✓। (0.1-এর De Morgan সরাসরি কাজে লাগল।)

Q3 (★★) — Classical সূত্র vs axiom (loaded die)

কেন classical সূত্র loaded পাশায় খাটে না: সূত্র \(P(A)=\lvert A\rvert/\lvert\Omega\rvert\)-এর পেছনে একটা অনুমান আছে — সব outcome সমসম্ভাব্য, অর্থাৎ প্রত্যেকের probability \(1/N\) (§২.৪-এর উৎপাদন এই সমতার ওপর দাঁড়ানো)। loaded পাশায় এই সমতা ভাঙে — কোনো মুখ বেশি, কোনোটা কম আসে — তাই "favorable/total" ভুল উত্তর দেয়। শুধু outcome গুনে আর কাজ চলে না; এখন প্রতিটি outcome-এর আসল mass জানা চাই।

অথচ axiom তখনও মানে: Kolmogorov-এর তিন axiom কোথাও "সব outcome সমান" দাবি করে না। তারা শুধু বলে mass অঋণাত্মক (Ax.1), মোট mass \(1\) (Ax.2), disjoint হলে mass যোগ হয় (Ax.3)। অসম mass-ও এই তিন শর্ত দিব্যি মানতে পারে।

উদাহরণ (\(P(\{6\})=0.5\)): ধরা যাক $$ P({6})=0.5,\quad P({1})=P({2})=P({3})=P({4})=P({5})=0.1. $$ প্রতিটি \(\ge 0\) (Ax.1 ✓), যোগফল \(0.5+5(0.1)=1\) (Ax.2 ✓), আর যেকোনো event-এর probability সদস্যদের mass-এর যোগফল (Ax.3 ✓)। কিন্তু এখানে \(P(\{6\})=0.5 \ne 1/6\) — classical সূত্র ভুল হতো। (এই পাশাই §২.৩ ও §৬-এর mass-চিত্রের কাছাকাছি ধারণা।)


৭.২ Computational

Q4 (★) — দুই পাশা, \(\lvert\Omega\rvert = 36\)

(ক) যোগফল \(\le 4\): favorable \(=\{(1,1),(1,2),(2,1),(1,3),(3,1),(2,2)\}\), সংখ্যা \(6\)। $$ P = \frac{6}{36} = \frac{1}{6} \approx 0.1667. $$

(খ) Doubles (দুটো একই): \(\{(1,1),(2,2),\dots,(6,6)\}\), সংখ্যা \(6\)। $$ P = \frac{6}{36} = \frac{1}{6} \approx 0.1667. $$

(গ) যোগফল জোড়: যোগফল জোড় হয় যখন দুই পাশা একই parity-র (দুটোই জোড় বা দুটোই বিজোড়)। প্রতিটি পাশায় \(3\)টি জোড়, \(3\)টি বিজোড় → favorable \(=3\times3 + 3\times3 = 18\)। $$ P = \frac{18}{36} = \frac{1}{2} = 0.5. $$ (যাচাই: যোগফল জোড় বা বিজোড় — দুটো সমসম্ভাব্য, তাই \(0.5\) স্বজ্ঞাসঙ্গত।)

Q5 (★★) — Poker hand

(ক) মোট hand: \(52\) থেকে \(5\), ক্রম গোনা হয় না → $$ \lvert\Omega\rvert = \binom{52}{5} = 2{,}598{,}960. $$

(খ) ও (গ) ঠিক চারটা ace: চারটা ace অবশ্যই থাকবে (\(\binom{4}{4}=1\) ভাবে), আর পঞ্চম তাস বাকি \(48\)টা থেকে যেকোনো একটা (\(\binom{48}{1}=48\) ভাবে): $$ \lvert A \rvert = \binom{4}{4}\binom{48}{1} = 1 \times 48 = 48. $$ $$ P(\text{চারটা ace}) = \frac{48}{2{,}598{,}960} = \frac{1}{54{,}145} \approx 1.85\times10^{-5}. $$ (প্রশ্নের (খ) ও (গ) একই event — "ঠিক চারটা ace-সহ hand" — তাই উত্তরও একই; এটাই \(\approx 0.0000185\)।)

Q6 (★★) — Birthday problem, \(n=25\)

"অন্তত দুজনের একই জন্মদিন" সরাসরি গোনা কঠিন (অনেক কেস); complement rule-এ উল্টোটা — "সবার আলাদা জন্মদিন" — গোনা সহজ।

\(25\) জনের জন্মদিন আলাদা হওয়ার উপায়: প্রথম জনের \(365\) option, দ্বিতীয় জনের \(364\) (আগেরটা বাদ), …, \(25\)-তম জনের \(365-24=341\)। মোট সমসম্ভাব্য বিন্যাস \(365^{25}\)। তাই $$ P(\text{সবার আলাদা}) = \frac{365 \cdot 364 \cdots 341}{365^{25}} = \frac{P(365,25)}{365^{25}}. $$ সংখ্যায় (Python: from math import prod; prod(365-i for i in range(25))/365**25): $$ P(\text{সবার আলাদা}) \approx 0.4313. $$ তাই complement rule দিয়ে $$ P(\text{অন্তত দুজন একই}) = 1 - 0.4313 \approx \boxed{0.5687}. $$

💡 এটাই বিখ্যাত birthday paradox: মাত্র \(25\) জনেই ৫৭% সম্ভাবনা! আসলে \(n=23\)-তেই probability \(0.5\) ছাড়িয়ে যায় — অধিকাংশ মানুষের স্বজ্ঞার চেয়ে অনেক ছোট সংখ্যা। কারণ "জোড়া"-র সংখ্যা \(\binom{25}{2}=300\) — অনেক, তাই কোনো-না-কোনো জোড়া মেলার সুযোগ বেশি।

from math import prod
n = 25
p_all_diff = prod(365 - i for i in range(n)) / 365**n
print(round(1 - p_all_diff, 4))     # 0.5687

৭.৩ Proof-based

Q7 (★★) — Bonferroni inequality: \(P(A\cap B) \ge P(A)+P(B)-1\)

§৪.৩-এর addition rule দিয়ে শুরু করি: $$ P(A\cup B) = P(A) + P(B) - P(A\cap B). $$ \(P(A\cap B)\)-এর জন্য পুনর্বিন্যাস: $$ P(A\cap B) = P(A) + P(B) - P(A\cup B). $$ এখন \(A\cup B\) একটা event, তাই §৪.১-এর ফল অনুযায়ী \(P(A\cup B) \le 1\)। ডানদিকে \(-P(A\cup B) \ge -1\) বসালে: $$ P(A\cap B) = P(A) + P(B) - P(A\cup B) \ge P(A) + P(B) - 1. \qquad \blacksquare $$ অর্থ: দুই event-এর probability বড় হলে তাদের একসাথে ঘটার probability শূন্য হতে পারে না — অন্তত \(P(A)+P(B)-1\)। যেমন \(P(A)=P(B)=0.9\) হলে \(P(A\cap B)\ge 0.8\)

Q8 (★★★) — Union bound (induction)

দাবি: যেকোনো \(n\ge 1\) event-এর জন্য \(\displaystyle P\!\left(\bigcup_{i=1}^n A_i\right) \le \sum_{i=1}^n P(A_i)\)

Base case (\(n=1\)): \(P(A_1) \le P(A_1)\) — তুচ্ছভাবে সত্য (সমান)।

Inductive hypothesis: ধরো কোনো \(n\)-এর জন্য \(P\!\left(\bigcup_{i=1}^n A_i\right) \le \sum_{i=1}^n P(A_i)\)

Inductive step (\(n \to n+1\)): \(B = \bigcup_{i=1}^n A_i\) ধরি। তাহলে \(\bigcup_{i=1}^{n+1} A_i = B \cup A_{n+1}\)। দুই-event addition rule (§৪.৩): $$ P(B \cup A_{n+1}) = P(B) + P(A_{n+1}) - \underbrace{P(B \cap A_{n+1})}{\ge\, 0 \text{ (Axiom 1)}} \le P(B) + P(A). $$ (এখানে \(-P(B\cap A_{n+1}) \le 0\) ফেলে দিয়ে inequality পেলাম।) এবার inductive hypothesis \(P(B) \le \sum_{i=1}^n P(A_i)\) বসালে: $$ P!\left(\bigcup_{i=1}^{n+1} A_i\right) \le P(B) + P(A_{n+1}) \le \sum_{i=1}^n P(A_i) + P(A_{n+1}) = \sum_{i=1}^{n+1} P(A_i). $$ Induction-এর নীতি অনুসারে দাবিটি সব \(n\ge 1\)-এর জন্য সত্য। \(\;\blacksquare\)

(লক্ষ করো 0.1-এর induction কৌশল এখানে সরাসরি কাজে লাগল।)


৭.৪ Coding

Q9 (★★) — Simulation-এ convergence

import numpy as np

def estimate_prob(event_fn, n, seed=7):
    """দুই পাশা n বার simulate করে event_fn-এর relative frequency।"""
    rng = np.random.default_rng(seed)
    d1 = rng.integers(1, 7, size=n)
    d2 = rng.integers(1, 7, size=n)
    return float(np.mean(event_fn(d1, d2)))     # n_A / n

sum_is_7 = lambda d1, d2: (d1 + d2) == 7
for n in (1_000, 10_000, 100_000):
    print(f"n = {n:>7}:  estimate = {estimate_prob(sum_is_7, n):.4f}   (true 1/6 = 0.1667)")

আউটপুট (seed=7):

n =    1000:  estimate = 0.1570   (true 1/6 = 0.1667)
n =   10000:  estimate = 0.1634   (true 1/6 = 0.1667)
n =  100000:  estimate = 0.1660   (true 1/6 = 0.1667)

\(n\) যত বড়, estimate তত \(1/6 \approx 0.1667\)-এর কাছে (\(0.1570 \to 0.1634 \to 0.1660\))। ভুল মোটামুটি \(1/\sqrt{n}\) হারে কমছে — frequentist interpretation ও Law of Large Numbers-এর সংখ্যাগত প্রমাণ।

Q10 (★★★) — তিন-event inclusion–exclusion যাচাই

from itertools import product

omega = list(product(range(1, 7), repeat=2))      # |Omega| = 36
def P(event_fn):
    return sum(1 for o in omega if event_fn(o)) / len(omega)

A = lambda o: o[0] == 6              # প্রথমে 6
B = lambda o: o[0] + o[1] >= 10      # যোগফল >= 10
C = lambda o: o[1] % 2 == 0          # দ্বিতীয়টা জোড়

lhs = P(lambda o: A(o) or B(o) or C(o))
rhs = (P(A) + P(B) + P(C)
       - P(lambda o: A(o) and B(o))
       - P(lambda o: A(o) and C(o))
       - P(lambda o: B(o) and C(o))
       + P(lambda o: A(o) and B(o) and C(o)))

print(f"LHS  P(A u B u C) = {lhs:.6f}")
print(f"RHS  inclusion-excl = {rhs:.6f}")
print("equal:", abs(lhs - rhs) < 1e-12)

আউটপুট:

LHS  P(A u B u C) = 0.611111
RHS  inclusion-excl = 0.611111
equal: True

দুপাশ মিলল (\(22/36 = 0.6111\))। আলাদা আলাদা পদগুলো: $$ P(A)=\tfrac{6}{36},\; P(B)=\tfrac{6}{36},\; P(C)=\tfrac{18}{36};\quad P(A\cap B)=\tfrac{3}{36},\; P(A\cap C)=\tfrac{3}{36},\; P(B\cap C)=\tfrac{4}{36};\quad P(A\cap B\cap C)=\tfrac{2}{36}. $$ যোগ করে: \(\dfrac{6+6+18-3-3-4+2}{36} = \dfrac{22}{36} \approx 0.6111\) ✓ — §৪.৪-এর সাত-পদ সূত্র computation-এ প্রতিষ্ঠিত।