Skip to content

7.1 — Why Measure Theory? Naive থেকে Rigorous Probability-তে উত্তরণ (কেন measure theory? — সম্ভাব্যতার দৃঢ় ভিত্তি)

১ · ভূমিকা ও insight (অন্তর্দৃষ্টি) — সুন্দর মেঝের নিচে চারটে ফাটল: naive probability (সম্ভাব্যতা) কোথায় ভেঙে পড়ে

১.১ যে ভিত্তির উপর আমরা এতদিন নিশ্চিন্তে দাঁড়িয়েছি

Part II থেকে শুরু করে গোটা Part III–VI জুড়ে আমরা সম্ভাব্যতা ও পরিসংখ্যানের একটা বিশাল ইমারত গড়ে তুলেছি — Kolmogorov-এর axiom (2.1), continuous density (2.4), convergence-এর নানা মোড (3.2), CLT (3.4), estimator ও তার MSE (4.4), এবং তার উপর গোটা inference ও machine learning। এই গোটা যাত্রায় আমরা দুটো জিনিস অনায়াসে, প্রশ্ন না করেই ব্যবহার করেছি:

  • একটা event (ঘটনা) \(A\)-র probability \(\mathbb P(A)\) — যেন প্রতিটা ঘটনারই একটা সুনির্দিষ্ট সম্ভাব্যতা আছে;
  • একটা random variable \(X\)-এর expectation \(\mathbb E[X]=\int x\,f(x)\,dx\) — যেন এই integral সবসময় অর্থবহ ও গণনাযোগ্য।

এবং সত্যি বলতে, যতক্ষণ আমরা সুন্দর ক্ষেত্রে ছিলাম — সসীম বা গণনাযোগ্য discrete distribution, কিংবা মসৃণ density-ওয়ালা continuous distribution — ততক্ষণ এই ভিত্তি নিখুঁত কাজ করেছে। ছয় ফলার ছক্কা, normal density, exponential waiting time — সবকিছুতেই \(\mathbb P(A)\) আর \(\int x f(x)\,dx\) ঠিক যা বলার তা-ই বলেছে।

কিন্তু এই মেঝেটা যত মসৃণ দেখায়, তত নিরেট নয়। এর নিচে চারটে সূক্ষ্ম crack (ফাটল) আছে। প্রতিটা ফাটল একটা নির্দিষ্ট প্রশ্নে উন্মোচিত হয় — এমন প্রশ্ন যেগুলো নিতান্ত pathological কৌতূহল নয়, বরং সম্ভাব্যতার একদম স্বাভাবিক সম্প্রসারণ। আর এই ফাটলগুলো বোজাতেই দরকার একটা গভীরতর গাণিতিক ভিত্তি — measure theory (পরিমাপ-তত্ত্ব)। এই অধ্যায়টি Part VII-এর সূচনা; এর কাজ formal নির্মাণ নয় (সেটা 7.2–7.4-এ), বরং ফাটলগুলো চেনানো আর পুনর্নির্মাণের প্রয়োজনীয়তা অনুভব করানো

এক বাক্যে ভিত্তি। Part II–VI জুড়ে \(\mathbb P(A)\)\(\mathbb E[X]=\int x f(x)\,dx\) সুন্দর discrete/continuous ক্ষেত্রে নিখুঁত কাজ করেছে — কিন্তু এই naive ভিত্তির নিচে চারটে ফাটল আছে, যা measure theory ছাড়া বোজানো যায় না।

১.২ চার ফাটলের গল্প — চারটে নিরীহ প্রশ্ন যা ভিত্তি কাঁপিয়ে দেয়

এখানে আমরা চারটে ফাটলকে কেবল গল্প হিসেবে চিনব — কোনো প্রমাণ নয় (precise যুক্তি §৪-এ আসবে), শুধু "কোথায় মেঝে ফাটল ধরল" তার স্বজ্ঞা।

ফাটল ১ (C1) — একটা এলোমেলো স্বাভাবিক সংখ্যা বাছো। ধরা যাক আমি বলি: "\(1,2,3,\dots\) — সব স্বাভাবিক সংখ্যা থেকে একটা পুরোপুরি এলোমেলোভাবে, সমান সম্ভাবনায় বাছো।" শুনতে নিরীহ — সসীম ক্ষেত্রে (\(1\) থেকে \(6\)) তো আমরা রোজই করি। কিন্তু এখানে set-টা countably infinite (\(\mathbb N\))। যদি প্রতিটা সংখ্যার সম্ভাব্যতা একই ধ্রুবক \(c\) হয়, তবে সব সম্ভাব্যতা যোগ করলে \(1\) পাওয়া উচিত — অথচ \(c+c+c+\cdots\) হয় \(0\) (যদি \(c=0\)) নয়তো \(\infty\) (যদি \(c>0\)); কখনোই ঠিক \(1\) নয়। অর্থাৎ \(\mathbb N\)-এর উপর কোনো fair/uniform probability আদৌ অস্তিত্বশীল নয় — naive "সমান সম্ভাবনা"-ভাবনা countable জগতে ভেঙে পড়ে।

ফাটল ২ (C2) — একটা function যার কোনো ক্ষেত্রফল নেই। \([0,1]\)-এর উপর একটা function ভাবি — Dirichlet function \(D(x)=\mathbf 1_{\mathbb Q}(x)\): rational সংখ্যায় \(1\), irrational সংখ্যায় \(0\)। এটা নিখুঁতভাবে সংজ্ঞায়িত — প্রতিটা \(x\)-এর জন্য মান জানা। এখন প্রশ্ন: এর "ক্ষেত্রফল" \(\int_0^1 D(x)\,dx\) কত? Riemann integral-এর পদ্ধতিতে আমরা \([0,1]\)-কে ছোট ছোট খণ্ডে ভাগ করি — কিন্তু প্রতিটা খণ্ডে rational-ও আছে, irrational-ও; তাই উপরের আনুমান (upper sum) সর্বদা \(1\), নিচের আনুমান (lower sum) সর্বদা \(0\)। দুটো কখনো মেলে না — অর্থাৎ \(D\) Riemann-integrable নয়। অথচ এটা একটা সম্পূর্ণ বৈধ random variable হতে পারত; তাহলে তার expectation কী? naive "\(\mathbb E=\int\)" এখানে নিরুত্তর। (পরে দেখব Lebesgue integral এর জবাব দেয় — অনায়াসে \(0\)।)

ফাটল ৩ (C3) — তুমি কি প্রতিটা set-কে ওজন করতে পারো? \([0,1]\)-এ একটা random সংখ্যা uniform-ভাবে বাছলাম। এখন একটা subset \(A\subseteq[0,1]\)-এর জন্য \(\mathbb P(A)\) মানে "\(A\)-এর দৈর্ঘ্য"। প্রশ্ন: \([0,1]\)-এর প্রতিটা subset-এরই কি এমন একটা সুসংগত "দৈর্ঘ্য/সম্ভাব্যতা" আছে — যা (ক) interval-এর জন্য স্বাভাবিক দৈর্ঘ্য দেয়, (খ) সরালে বদলায় না (translation-invariant), আর (গ) ভালোভাবে যোগ হয়? উত্তর — না। এমন কিছু অদ্ভুত set বানানো যায় (Vitali set, যার নির্মাণে Axiom of Choice লাগে) যাদের কোনো সুসংগত দৈর্ঘ্যই দেওয়া যায় না — এরা non-measurable। শিক্ষা: ঘটনাগুলো \([0,1]\)-এর সব subset (\(2^\Omega\)) হতে পারে না; এদের একটা সংযত পরিবার — \(\sigma\)-algebra — গঠন করতে হবে।

ফাটল ৪ (C4) — অদৃশ্য হয়ে যাওয়া ভর। একটা সচল চূড়া (moving spike) ভাবি: \(f_n(x)=n\cdot\mathbf 1_{(0,1/n)}(x)\) — অর্থাৎ \(0\) থেকে \(1/n\) পর্যন্ত উচ্চতা \(n\), বাকি সর্বত্র \(0\)। প্রতিটা \(f_n\)-এর নিচের ক্ষেত্রফল ঠিক \(1\) (ভিত্তি \(1/n\) × উচ্চতা \(n\))। কিন্তু \(n\) বাড়লে চূড়াটা সরু-উঁচু হতে হতে শূন্যের দিকে সরে যায়, আর প্রতিটা নির্দিষ্ট বিন্দু \(x>0\)-তে শেষ পর্যন্ত \(f_n(x)=0\) — অর্থাৎ \(f_n\to 0\) (pointwise)। তাহলে: \(\lim_n \int f_n = 1\), কিন্তু \(\int \lim_n f_n = \int 0 = 0\)integral আর limit অদলবদল করলে দুটো ভিন্ন উত্তর! ক্ষেত্রফল \(1\) যেন কোথায় উবে গেল। naive Riemann-জগতে কখন এই অদলবদল বৈধ, তার কোনো পরিষ্কার নিয়ম নেই।

এক বাক্যে চার ফাটল। এলোমেলো স্বাভাবিক সংখ্যা (C1), ক্ষেত্রফল-হীন function (C2), না-ওজন-করা-যাওয়া set (C3), আর অদৃশ্য-হওয়া ভর (C4) — চারটে নিরীহ প্রশ্ন দেখিয়ে দেয় naive সম্ভাব্যতার ভিত্তিতে গভীর ফাটল আছে।

১.৩ এই ফাটল কেন একজন statistician/data scientist-এরও মাথাব্যথা — নিছক পাণ্ডিত্য নয়

এই মুহূর্তে স্বাভাবিক প্রশ্ন: "এসব তো বিরল, কৃত্রিম উদাহরণ — আমি তো রোজ Dirichlet function-এ kaj করি না; আমার কী আসে যায়?" আসে যায়, এবং অনেকটাই — কারণ measure theory নিছক pathology সামলানোর জন্য নয়, বরং আধুনিক পরিসংখ্যান ও ML-এর কেন্দ্রীয় যন্ত্রগুলোর একমাত্র দৃঢ় ভিত্তি:

  • Rigorous conditional expectation। "\(X\) জানা থাকলে \(Y\)-এর গড়" — \(\mathbb E[Y\mid X]\) — Bayesian inference ও প্রায় সমস্ত ML-এর প্রাণ। কিন্তু \(X\) continuous হলে আমরা প্রায়ই এমন ঘটনায় শর্ত দিই যার সম্ভাব্যতা \(0\) ("\(X\) ঠিক \(x\)"); naive "\(\mathbb P(\cdot\mid X=x)=\mathbb P(\cap)/\mathbb P(X=x)\)" এখানে \(0/0\) — সংজ্ঞাহীন। শুধু measure theory (Radon–Nikodym) একে নির্ভুল অর্থ দেয়।
  • Martingale। "ন্যায্য খেলা"-র গাণিতিক রূপ — যা stochastic approximation, SGD-র convergence বিশ্লেষণ, ও sequential analysis-এর ভিত্তি। Martingale-এর সংজ্ঞাই দাঁড়িয়ে আছে conditional expectation ও \(\sigma\)-algebra-র filtration-এর উপর।
  • Modes of convergence ও consistency। একটা estimator \(n\to\infty\)-তে সত্যিকারের parameter-এ পৌঁছায় (consistency) — এটা 3.2-এর convergence-এর ভাষায় বলা। কিন্তু "\(\hat\theta_n\to\theta\) কোন অর্থে?" এবং "limit আর expectation কখন অদলবদল করা যায়?" — এর নির্ভুল জবাব (C4-এর সাধারণীকরণ) দেয় MCT/Fatou/DCT, যা measure theory-র ফসল।
  • CLT-এর প্রকৃত প্রমাণ। 3.4-এ CLT আমরা স্বজ্ঞাগতভাবে ব্যবহার করেছি; তার পূর্ণ, কঠোর প্রমাণ (characteristic function, weak convergence) measure-তাত্ত্বিক ভিত্তি দাবি করে — যা 7.10-এ পুনঃপ্রমাণিত হবে।

অর্থাৎ এই ফাটলগুলো বোজানো মানে শুধু গণিতের পরিচ্ছন্নতা নয় — এটা সেই ভিত্তি যার উপর তোমার রোজকার conditional probability, SGD, consistency ও CLT দাঁড়িয়ে।

এক বাক্যে প্রাসঙ্গিকতা। Conditional expectation (→ Bayesian/ML), martingale (→ SGD, sequential analysis), modes of convergence (→ consistency), ও CLT-এর প্রকৃত প্রমাণ — সবকটিরই দৃঢ় ভিত্তি measure theory; তাই এ পাণ্ডিত্য নয়, প্রয়োজন।

১.৪ সমাধান — এক নিঃশ্বাসে: Kolmogorov, 1933

চারটে ফাটলের চারটে আলাদা সমাধান নয় — একটিমাত্র ধারণা সবগুলো একসঙ্গে বোজায়। ১৯৩৩ সালে Kolmogorov সম্ভাব্যতাকে measure theory-র উপর বসিয়ে দিলেন, এবং সেই একক ধারণাটা এই:

Probability হলো একটা \(\sigma\)-algebra-র উপর সংজ্ঞায়িত একটা measure — মোট ভর \(1\)

এই এক বাক্য থেকেই সব খুলে যায়: ঘটনা মানে \(\sigma\)-algebra \(\mathcal F\)-এর সদস্য (C3-এর জবাব — সব subset নয়); \(\mathbb P\) হলো \(\mathcal F\)-এর উপর একটা countably-additive measure (C1-এর জবাব — additivity-র নিয়ম স্পষ্ট); random variable হলো measurable function (2.3 → 7.3); আর expectation হলো Lebesgue integral \(\mathbb E[X]=\int X\,d\mathbb P\) (C2/C4-এর জবাব — wild function-ও integrable, আর limit-অদলবদলের নির্ভুল শর্ত MCT/Fatou/DCT)। এই কাঠামো discrete, continuous আর singular distribution-কে একই ভাষায় ধরে — তিন আলাদা তত্ত্বের আর দরকার নেই।

এক বাক্যে সমাধান। Kolmogorov-এর 1933 insight (অন্তর্দৃষ্টি) — probability \(=\) একটা \(\sigma\)-algebra-র উপর measure, random variable \(=\) measurable function, expectation \(=\) Lebesgue integral — চারটে ফাটল একসঙ্গে বোজায় এবং discrete+continuous+singular একীভূত করে।

১.৫ এই অধ্যায়ের পথরেখা ও Part VII কোথায় যাচ্ছে

  • §২ ফাটলগুলোর পেছনের ধারণা precise করে (এখনো পূর্ণ formal নয়): naive notion-গুলো ঠিক কোথায় ফাঁস হয়; "length/measure"-কে একীভূতকারী আদিম রূপে দেখা ও তার তিন desideratum; countable বনাম finite additivity; outer measure, null set ও almost-everywhere; Riemann বনাম Lebesgue-এর মূল ছবি; এবং 7.2–7.4-এ গড়া-হতে-যাওয়া চারটি formal বস্তুর preview।
  • §৪ চারটি ফাটলের precise যুক্তি — C1-এর \(\sum c\)-দ্বন্দ্ব, Dirichlet-এর Darboux-sum, \(\mathbb Q\) ও Cantor set-এর measure-শূন্যতা, Vitali-নির্মাণের রূপরেখা, এবং moving-spike-এর হিসাব।
  • §৫–৬ simulation ও চিত্র (seed 20260619) — Dirichlet-এর Riemann-sum কীভাবে partition বদলালে দোলে, moving-spike-এর \(\int f_n=1\) বনাম \(f_n\to 0\), \(\mathbb Q\cap[0,1]\)-ঢাকা interval-এর মোট দৈর্ঘ্য \(\to 0\), ও Cantor set-এর নির্মাণ — চিত্র 7-1-riemann-vs-lebesgue, 7-1-covering-rationals, 7-1-moving-spike, 7-1-cantor-construction সহ।

আর এই অধ্যায়ের পরে Part VII-এর পথ: 7.2 \(\sigma\)-algebra, Borel set ও Carathéodory extension দিয়ে measure-এর formal নির্মাণ; 7.3 measurable map ও random variable; 7.4 Lebesgue integral এবং তিন convergence theorem (MCT, Fatou, DCT); সেখান থেকে conditional expectation, martingale হয়ে শেষ পর্যন্ত 7.10-এ rigorous CLT।

এক বাক্যে পথরেখা। §২ ফাটলের পেছনের ধারণা ও measure-এর নকশা চেনায় → §৪ precise যুক্তি → §৫–৬ simulation ও চিত্র; আর Part VII এখান থেকে 7.2 (σ-algebra/Carathéodory) → 7.4 (Lebesgue integral) হয়ে 7.10 (rigorous CLT)-এ এগোয়।


২ · মূল ধারণা ও সংজ্ঞা

এই বিভাগে §১-এর গল্পগুলোকে — কিন্তু পূর্ণ formal নির্মাণ ছাড়া — একটু precise করি: naive ধারণা ঠিক কোথায় ফাঁস হয়, কোন একক আদিম ধারণা সব মেরামত করে, এবং 7.2–7.4-এ কী কী গড়া হবে তার নাম-পরিচয়। প্রতিটি প্রতীক প্রথম ব্যবহারেই খোলা হলো। যেখানে পূর্ণ সংজ্ঞা বা প্রমাণ লাগবে, সেখানে স্পষ্ট forward pointer দেওয়া হলো (σ-algebra, Carathéodory, Lebesgue integral-এর formal রূপ যথাক্রমে 7.2/7.4-এ)।

২.১ Naive notion দুটো — আর ঠিক কোথায় প্রতিটা ফাঁস হয়

এতদিন আমরা "সম্ভাব্যতা/ক্ষেত্রফল" দুটো naive পথে ভেবেছি; দুটোরই সীমা এবার নাম ধরে চিনি।

Naive notion A — "probability = অনুকূল / মোট" (2.1-এর গণনা-ভিত্তিক সম্ভাব্যতা): \(\mathbb P(A)=\lvert A\rvert / \lvert \Omega\rvert\)। এটা কেবল তখনই অর্থবহ যখন \(\Omega\) সসীম এবং সব ফলাফল সমান-সম্ভাব্য। যেই \(\Omega\) অসীম হলো (এমনকি countably infinite, যেমন \(\mathbb N\)), অমনি "মোট সংখ্যা \(\lvert\Omega\rvert\)" অর্থহীন, আর সমান ভাগ করতে গেলে C1-এর দ্বন্দ্ব (\(\sum c \in\{0,\infty\}\))। ফাঁস: অসীম \(\Omega\)-তে গণনা-ভিত্তিক probability ভেঙে পড়ে।

Naive notion B — "probability = density-র নিচে ক্ষেত্রফল, Riemann integral দিয়ে" (2.4): \(\mathbb P(a\le X\le b)=\int_a^b f(x)\,dx\), যেখানে এই integral কার্যত Riemann। এটা মসৃণ \(f\) ও "ভালো" set-এ নিখুঁত — কিন্তু (i) integrand যদি Dirichlet-এর মতো wild হয় (C2), Riemann integral অস্তিত্বহীন; আর (ii) আমরা যদি একটা অদ্ভুত set \(A\)-এর "দৈর্ঘ্য" চাই (C3), তবে Riemann পদ্ধতিতে সেই set-এর indicator \(\mathbf 1_A\)-ও integrable না-ও হতে পারে। ফাঁস: wild function বা wild set-এ Riemann-ভিত্তিক ক্ষেত্রফল ভেঙে পড়ে।

দুটো ফাঁসেরই মূল এক জায়গায়: naive ধারণা দুটো interval ও মসৃণতার উপর নির্ভরশীল, কিন্তু সম্ভাব্যতার সাধারণ তত্ত্বে আমাদের যেকোনো set ও যেকোনো (পরিমাপযোগ্য) function লাগবে। তাই দরকার একটা আরও আদিম, আরও নমনীয় ভিত্তি — যা আসছে পরের উপ-বিভাগে।

এক বাক্যে ফাঁস। "অনুকূল/মোট" অসীম \(\Omega\)-তে ভাঙে, আর "Riemann-ক্ষেত্রফল" wild function/set-এ ভাঙে — দুটো naive notion-ই interval ও মসৃণতার উপর নির্ভর করে বলে সাধারণ সম্ভাব্যতার ভার বইতে অক্ষম।

২.২ Length/measure — একীভূতকারী আদিম ধারণা, আর তার তিন desideratum

সমাধানের চাবি একটা সহজ পুনর্বিন্যাসে: probability ও integral-এর তলায় আসলে একটাই আদিম ধারণা আছে — একটা set-কে একটা আকার/পরিমাণ (size) দেওয়া। বাস্তব রেখা \(\mathbb R\)-এ এই size-কে আমরা length (দৈর্ঘ্য) বলি, এবং সাধারণ রূপে measure (পরিমাপ) — যা একটা function \(\lambda\) যা \(\mathbb R\)-এর subset-গুলোকে একটা অঋণাত্মক সংখ্যা (বা \(\infty\)) দেয়। আমরা চাই এই \(\lambda\) আমাদের স্বাভাবিক "দৈর্ঘ্য"-জ্ঞানকে মান্য করুক, তাই তিনটি কাম্য গুণ (desideratum) আরোপ করি:

  1. (i) Interval-এ স্বাভাবিক দৈর্ঘ্য: একটা ব্যবধান \([a,b]\)-এর জন্য $$ \lambda([a,b]) = b-a. $$ অর্থাৎ measure আমাদের চেনা দৈর্ঘ্যকে সম্মান করে — \([0,1]\)-এর দৈর্ঘ্য \(1\), \([2,5]\)-এর \(3\)

  2. (ii) Translation invariance (স্থানান্তর-অপরিবর্তনীয়তা): কোনো set-কে রেখা বরাবর সরালে তার measure বদলায় না — যেকোনো বাস্তব \(t\)-র জন্য $$ \lambda(A+t) = \lambda(A), \qquad \text{যেখানে } A+t={a+t : a\in A}. $$ স্বজ্ঞা: একটা \(3\)-মিটার লাঠি যেখানেই রাখো, সে \(3\)-মিটারই — অবস্থান তার দৈর্ঘ্য বদলায় না।

  3. (iii) Countable additivity (\(\sigma\)-additivity, গণনাযোগ্য-সংযোজনশীলতা): পরস্পর-বিচ্ছিন্ন (disjoint) set-দের একটা গণনাযোগ্য অনুক্রম \(A_1, A_2, A_3,\dots\) (অর্থাৎ \(i\ne j\) হলে \(A_i\cap A_j=\varnothing\))-এর জন্য তাদের মিলনের measure হলো আলাদা measure-গুলোর যোগফল: $$ \lambda!\left(\bigcup_{n=1}^{\infty} A_n\right) = \sum_{n=1}^{\infty} \lambda(A_n). $$ এটা finite additivity-র (২.৩-এ আসছে) চেয়ে শক্তিশালী — এখানে অসীম (তবে গণনাযোগ্য) সংখ্যক টুকরোও জোড়া যায়।

এই তিনটে গুণ এতই স্বাভাবিক যে মনে হয় \(\mathbb R\)-এর প্রতিটা subset-এর জন্য এমন একটা \(\lambda\) বানানো নিশ্চয়ই সম্ভব। কিন্তু এখানেই C3-এর ধাক্কা — একটা preview-উপপাদ্য যা §৪-এ Vitali-নির্মাণ দিয়ে প্রমাণিত হবে:

Preview (Vitali, §৪)। \(\mathbb R\)-এর সমস্ত subset-এর সংগ্রহ \(2^{\mathbb R}\)-এর উপর সংজ্ঞায়িত এমন কোনো \(\lambda\) নেই যা একসঙ্গে (i), (ii), (iii) তিনটেই মানে। কোনো-না-কোনো set (Vitali set) সবসময় বাদ পড়বে — তাকে কোনো সুসংগত দৈর্ঘ্যই দেওয়া যায় না।

এর অনিবার্য উপসংহার: আমরা \(\lambda\)-কে \(2^{\mathbb R}\)-এর উপর সংজ্ঞায়িত করার স্বপ্ন ছাড়ব, এবং তার বদলে domain-টাকে সংকুচিত করব — কেবল একটা সুনির্বাচিত, ভালো-আচরণের set-পরিবারের উপর \(\lambda\) সংজ্ঞায়িত করব। সেই পরিবারটাই \(\sigma\)-algebra (formal সংজ্ঞা 7.2-এ)। এটাই C3-এর শিক্ষা: event-গুলো \(2^\Omega\) নয়, একটা \(\sigma\)-algebra গঠন করে।

এক বাক্যে measure। Probability-র তলায় একটাই আদিম ধারণা — set-কে একটা length \(\lambda\) দেওয়া যা (i) interval-দৈর্ঘ্য, (ii) translation-invariance, (iii) countable additivity মানে; কিন্তু \(2^{\mathbb R}\)-এর প্রতিটা set-এ এ তিনটে একসঙ্গে রাখা অসম্ভব (Vitali), তাই domain-কে \(\sigma\)-algebra-তে সীমিত করতে হয়।

২.৩ Countable বনাম finite additivity — কেন "countable"-ই সঠিক স্বতঃসিদ্ধ

উপরের (iii)-এ আমরা countable additivity দাবি করেছি, কেবল finite নয় — এই পছন্দটা কেন, তা একটু বোঝা দরকার, কারণ এটাই গোটা তত্ত্বকে শক্তি দেয়।

  • Finite additivity (সসীম-সংযোজনশীলতা): শুধু সসীম সংখ্যক disjoint set-এর জন্য \(\lambda(A_1\cup\cdots\cup A_k)=\sum_{n=1}^{k}\lambda(A_n)\)। এটা দুর্বল — কেবল গোনা যায় এমন সসীম ভাঙনে কাজ করে।
  • Countable additivity: অসীম (গণনাযোগ্য) অনুক্রমেও যোগ চলে — যেমন (iii)-এ।

কেন countable-ই দরকার? কারণ এটাই সেই গুণ যা আমাদের limit-এ যেতে দেয় — আর সম্ভাব্যতা ও বিশ্লেষণের প্রায় সবকিছুই limit নিয়ে। একটা সরাসরি ফল হলো measure-এর ধারাবাহিকতা (continuity of measure): যদি set-গুলো বাড়তে থাকে, \(A_1\subseteq A_2\subseteq A_3\subseteq\cdots\), এবং তাদের মিলন \(A=\bigcup_n A_n\), তবে countable additivity থেকে পাওয়া যায় $$ \lambda(A) = \lambda!\left(\bigcup_{n=1}^{\infty} A_n\right) = \lim_{n\to\infty}\lambda(A_n). $$ অর্থাৎ measure একটা সীমা-প্রক্রিয়ার সঙ্গে সুন্দরভাবে আচরণ করে — "ক্রমবর্ধমান set-এর measure-এর limit = limit-set-এর measure"। finite additivity দিয়ে এই continuity পাওয়া যায় না। আর এই continuity-ই পরে (7.4-এ) integral ও limit অদলবদলের (C4-এর সমাধান) নিয়মগুলোর — MCT, Fatou, DCT-এর — শিকড়। তাই "অতিরিক্ত শক্তিশালী" মনে হলেও, countable additivity-ই সম্ভাব্যতার সঠিক স্বতঃসিদ্ধ।

এক বাক্যে additivity। Finite নয়, countable additivity-ই সঠিক স্বতঃসিদ্ধ — কারণ একমাত্র এটাই measure-কে limit-এর সঙ্গে সামঞ্জস্যপূর্ণ করে (continuity of measure: ক্রমবর্ধমান \(A_n\)-এ \(\lambda(\bigcup A_n)=\lim\lambda(A_n)\)), যা পরে integral↔limit অদলবদলের ভিত্তি।

২.৪ Outer measure, null set ও almost everywhere — "measure zero \(\ne\) countable"

কোনো নির্বিচার set \(A\)-এর "দৈর্ঘ্য" কীভাবে মাপব, যখন \(A\) মোটেও interval নয়? Lebesgue-এর কৌশলটা সরল ও সুন্দর: \(A\)-কে বাইরে থেকে ঢাকো। আমরা \(A\)-কে গণনাযোগ্য অনেকগুলো open interval \(I_1, I_2, \dots\) দিয়ে ঢাকি (অর্থাৎ \(A\subseteq\bigcup_k I_k\)), তাদের দৈর্ঘ্য যোগ করি, আর এমন সব সম্ভাব্য ঢাকনার মধ্যে সবচেয়ে আঁটো (ক্ষুদ্রতম মোট দৈর্ঘ্য) খুঁজি। গাণিতিকভাবে এটাই outer measure (বহিঃপরিমাপ) \(\lambda^*\): $$ \lambda^(A) = \inf\left{ \sum_{k=1}^{\infty} \mathrm{length}(I_k) \;:\; A \subseteq \bigcup_{k=1}^{\infty} I_k,\ I_k \text{ open interval} \right}, $$ যেখানে \(\inf\) মানে infimum* (সর্ববৃহৎ নিম্নসীমা) — সব বৈধ ঢাকনার মোট-দৈর্ঘ্যের সবচেয়ে ছোট সম্ভাব্য মান। (এই \(\lambda^*\)-ই 7.2-এ Carathéodory-র পদ্ধতিতে প্রকৃত Lebesgue measure \(\lambda\)-তে পরিণত হবে।)

এই ধারণা থেকে দুটো গুরুত্বপূর্ণ সংজ্ঞা:

  • Null set (শূন্য-পরিমাপ set): যে set \(A\)-এর \(\lambda^*(A)=0\) — অর্থাৎ যাকে যত-ইচ্ছা-ছোট মোট-দৈর্ঘ্যের interval দিয়ে ঢাকা যায়।
  • Almost everywhere (a.e., "প্রায় সর্বত্র"): কোনো ধর্ম যদি একটা null set বাদে সর্বত্র সত্য হয়, তবে বলি ধর্মটি a.e. সত্য। (যেমন: Dirichlet function \(D=0\) a.e., কারণ যেখানে \(D\ne 0\) — অর্থাৎ \(\mathbb Q\)-তে — সেটা একটা null set।)

একটা চমকপ্রদ ফল, যা স্বজ্ঞাকে ঝাঁকায়: \(\mathbb Q\cap[0,1]\) একটা null set। কেন? \(\mathbb Q\) গণনাযোগ্য, তাই তার সদস্যদের তালিকা করা যায় \(q_1, q_2, q_3,\dots\); এখন \(q_k\)-কে একটা \(\varepsilon/2^k\)-দৈর্ঘ্যের interval দিয়ে ঢাকি। মোট দৈর্ঘ্য \(\le \sum_k \varepsilon/2^k = \varepsilon\) — এবং \(\varepsilon\) যত-খুশি ছোট নেওয়া যায়, তাই \(\lambda^*(\mathbb Q\cap[0,1])=0\)। (এটাই C2-এর Lebesgue-সমাধানের চাবি: \(\int_0^1 D\,d\lambda = 1\cdot\lambda(\mathbb Q\cap[0,1]) + 0\cdot\lambda(\text{irrationals}) = 1\cdot 0 + 0 = 0\)।)

আরও গভীর একটা সত্য — measure zero মানেই countable নয়। এর সাক্ষী Cantor set (7-1-cantor-construction চিত্রে আঁকা হবে): \([0,1]\) থেকে বারবার মাঝের এক-তৃতীয়াংশ ফেলে যা পড়ে থাকে। যা ফেলা হয় তার মোট দৈর্ঘ্য \(\tfrac13+\tfrac{2}{9}+\tfrac{4}{27}+\cdots = 1\) — তাই অবশিষ্ট Cantor set-এর measure \(0\)। অথচ এই set uncountable (গণনাতীত — \([0,1]\)-এর মতোই বিশাল)। অর্থাৎ একটা set "ক্ষুদ্র" (measure শূন্য) হতে পারে অথচ "অগণিত"। এই সূক্ষ্মতাই দেখায় কেন আমাদের "গোনা" নয়, "মাপা"-র তত্ত্ব দরকার।

এক বাক্যে outer measure। একটা set-কে গণনাযোগ্য interval দিয়ে ঢেকে মোট দৈর্ঘ্যের infimum নিলে outer measure \(\lambda^*\); এতে \(\mathbb Q\)-এর মতো গণনাযোগ্য set-এর measure \(0\) (null set, a.e.-র ভিত্তি), অথচ uncountable Cantor set-এরও measure \(0\) — তাই "measure zero \(\ne\) countable"।

২.৫ Riemann বনাম Lebesgue — মূল ছবিটা: domain ভাগ করা বনাম range ভাগ করা

C2 (Dirichlet) আর C4 (moving spike) দুটোরই গভীরে একটাই সমস্যা — Riemann কীভাবে integral গোনে। Lebesgue ঠিক এই গোনার ভঙ্গিটাই বদলায়, আর তাতেই wild function শান্ত হয়। ছবিটা এক বাক্যে: Riemann domain-কে ভাগ করে; Lebesgue range-কে ভাগ করে। (চিত্র 7-1-riemann-vs-lebesgue এটাই দুই প্যানেলে দেখাবে।)

  • Riemann (vertical strips, খাড়া ফালি): \(x\)-অক্ষকে (domain-কে) ছোট ছোট ব্যবধানে ভাগ করে প্রতিটা ব্যবধানের উপর function-এর মান প্রায়-ধ্রুবক ধরে সরু খাড়া আয়তক্ষেত্রের ক্ষেত্রফল যোগ করে। শর্ত: প্রতিটা সরু ব্যবধানে function-কে মোটামুটি একই মান ধরা যেতে হবে। Dirichlet-এর জন্য এটাই অসম্ভব — যত সরু ব্যবধানই নাও, তাতে rational-ও আছে (\(D=1\)), irrational-ও (\(D=0\)); তাই খাড়া ফালি-পদ্ধতি কখনো থিতু হয় না।
  • Lebesgue (horizontal strips, শোয়ানো ফালি): \(y\)-অক্ষকে (range-কে) ভাগ করে — জিজ্ঞেস করে, "function কোন কোন \(x\)-এ এই মান-স্তরে আছে, এবং সেই \(x\)-set-টা কত বড় (measure কত)?" তারপর (মান) × (সেই মান যেখানে আছে তার measure) যোগ করে। Dirichlet-এর জন্য এটা অনায়াস: \(D\) দুটো মাত্র মান নেয় — \(1\) (set \(\mathbb Q\cap[0,1]\)-এ, যার measure \(0\)) আর \(0\) (irrational-দের set-এ, measure \(1\)); তাই integral \(= 1\cdot 0 + 0\cdot 1 = 0\)

একটা চেনা উপমা: টাকা গোনার দুই পদ্ধতি। Riemann গোনে প্রাপ্তির ক্রমে — যেমন যেমন মুদ্রা হাতে এল, এক এক করে যোগ করল (domain-এর ক্রম মেনে)। Lebesgue আগে মুদ্রাগুলোকে মূল্যমান অনুযায়ী সাজায় — সব ১-টাকা একস্তূপে, সব ২-টাকা আরেক স্তূপে — তারপর (মূল্য × সংখ্যা) যোগ করে। এই "মূল্য অনুযায়ী সাজানো" = range-partition; আর এই range-ভাগই Lebesgue-কে এমন function সামলাতে দেয় যেখানে domain-এর ক্রমে কোনো মসৃণতা নেই। ঠিক একই কারণে C4-এর moving spike-ও measure-তাত্ত্বিক কাঠামোয় MCT/Fatou/DCT (7.4) দিয়ে শাসিত হয় — কখন limit ভেতরে নেওয়া যায়, তার নির্ভুল শর্তসহ।

এক বাক্যে Riemann↔Lebesgue। Riemann domain-কে ভাগ করে (খাড়া ফালি) আর function-কে প্রতি ফালিতে প্রায়-ধ্রুবক ধরে — Dirichlet-এ যা ভাঙে; Lebesgue range-কে ভাগ করে (শোয়ানো ফালি, "মূল্য অনুযায়ী মুদ্রা সাজানো") আর প্রতি মান-স্তরের set-এর measure মাপে — তাই wild function-ও সে অনায়াসে integrate করে।

২.৬ চারটি formal বস্তুর preview — যা 7.2–7.4-এ গড়া হবে

§১.৪-এ Kolmogorov-এর সমাধান এক বাক্যে দেখেছি; এখানে তার চারটি স্তম্ভ-বস্তুর নাম-পরিচয় রাখি — প্রতিটির এক-লাইন স্বজ্ঞা ও forward pointer সহ। এদের পূর্ণ, formal সংজ্ঞা এই অধ্যায়ে নয় — এ কেবল মানচিত্র, যাতে Part VII-এ পথ হারানো না যায়।

  1. \(\sigma\)-algebra \(\mathcal F\) (সিগমা-বীজগণিত) — কোন set-গুলো "ঘটনা"। \(\Omega\)-এর subset-দের এমন একটা পরিবার যা \(\varnothing\)\(\Omega\) ধারণ করে এবং complement ও গণনাযোগ্য union/intersection-এর অধীনে বদ্ধ। C3-এর Vitali-সমস্যার জবাব — measure কেবল এই পরিবারের সদস্যদেরই দেওয়া হয়, \(2^\Omega\)-এর সবাইকে নয়। (formal: 7.2; Borel σ-algebra \(\mathcal B\) সহ।)

  2. Measure \(\mu\) (পরিমাপ) — set-কে "আকার" দেওয়া। \(\mathcal F\)-এর উপর সংজ্ঞায়িত একটা অঋণাত্মক, countably-additive function \(\mu\), যেখানে \(\mu(\varnothing)=0\)। Probability হলো এর বিশেষ রূপ — \(\mathbb P\), যার মোট ভর \(\mathbb P(\Omega)=1\)Carathéodory extension outer measure \(\lambda^*\) থেকে প্রকৃত measure বানায়। (formal: 7.2।)

  3. Measurable function / random variable — \(\mathcal F\)-সম্মত map। একটা function \(X:\Omega\to\mathbb R\) যা "measurable" — অর্থাৎ যেকোনো বৈধ লক্ষ্য-set \(B\)-এর জন্য \(X^{-1}(B)\) একটা event (ঘটনা) (\(\in\mathcal F\))। এটাই random variable-এর প্রকৃত সংজ্ঞা (2.x-এর স্বজ্ঞাগত "random variable"-এর কঠোর রূপ)। (formal: 7.3।)

  4. Lebesgue integral \(\int X\,d\mu\) — expectation-এর প্রকৃত রূপ। range-partition দিয়ে গড়া integral, যা Riemann-এর চেয়ে বেশি function সামলায়; এর বিশেষ রূপ \(\mathbb E[X]=\int X\,d\mathbb P\)। সঙ্গে আসে তিন convergence theorem — MCT, Fatou, DCT — যা C4-এর limit↔integral অদলবদলের নির্ভুল শর্ত দেয়। (formal: 7.4।)

এই চারটে একসঙ্গে গাঁথলেই Kolmogorov-এর কাঠামো সম্পূর্ণ: probability space \((\Omega,\mathcal F,\mathbb P)\), তার উপর measurable random variable, আর Lebesgue integral হিসেবে expectation — যা discrete যোগফল, continuous Riemann-integral, ও singular (Cantor-ধরনের) সবকিছুকে একই সংজ্ঞায় ধরে।

এক বাক্যে preview। Part VII গড়বে চারটি বস্তু — \(\sigma\)-algebra \(\mathcal F\) (কোন set ঘটনা, 7.2), measure \(\mu\)/\(\mathbb P\) (set-এর আকার, Carathéodory দিয়ে, 7.2), measurable function/random variable (7.3), ও Lebesgue integral \(=\) expectation (MCT/Fatou/DCT সহ, 7.4) — যা একসঙ্গে naive সম্ভাব্যতার চার ফাটল বুজিয়ে discrete+continuous+singular একীভূত করে।


৩ · পূর্ণাঙ্গ উদাহরণ

§১–২-তে আমরা চারটি crack (ফাটল — যেখানে স্কুল-পর্যায়ের probability ও Riemann integration হোঁচট খায়) চিহ্নিত করেছি:

  • C1 — countable infinity-তে "uniform" বা "fair" distribution (বণ্টন) সংজ্ঞায়িত করা যায় না; countable additivity (গণনাযোগ্য যোগাত্মকতা) এখানে কঠোর শর্ত চাপায়।
  • C2 — Riemann integral যথেষ্ট "ভালো" function-এও ব্যর্থ হয়; integrability-র শর্ত বড্ড সংকীর্ণ।
  • C3 — "কত বড়" বা "কত ছোট" একটা set, সেটা মাপার (measure) সর্বজনীন ধারণা আমাদের নেই; length/area-এর সাধারণ স্বজ্ঞা ভেঙে পড়ে।
  • C4 — limit আর integral হাত বদলানো (\(\lim\int = \int\lim\)) সাধারণভাবে অবৈধ; কখন বৈধ তা বলার মতো theorem আমাদের কাছে নেই।

নিচের পাঁচটি উদাহরণ এই ফাটলগুলোকে কংক্রিট সংখ্যা দিয়ে স্পর্শ করে দেখায় — কেন measure theory নিছক শখের বিমূর্ততা নয়, বরং এই সমস্যাগুলোর প্রকৃত সমাধান। প্রতিটি উদাহরণে আমরা arithmetic ধৈর্য ধরে দেখাব, তারপর "কী শিখলাম" বলে গুটিয়ে আনব।


উদাহরণ ১ — \(\mathbb N\)-এর উপর fair uniform probability নেই (★)

সেটআপ। একটা lottery কল্পনা করুন যেখানে টিকিট-নম্বর হতে পারে \(1, 2, 3, \dots\) — যেকোনো natural number, কোনো ঊর্ধ্বসীমা নেই। সবাইকে "সমান সুযোগ" দিতে চাই: প্রতিটি \(k\in\mathbb N\) নির্বাচিত হওয়ার probability একই। প্রশ্ন: এমন একটা fair uniform probability কি সত্যিই বানানো যায়?

ধরা যাক যায়; তাহলে কোনো ধ্রুবক \(c\ge 0\) আছে যাতে প্রতিটি singleton-এর (একক-মৌল set) probability সমান: $$ \mathbb P({k}) = c \qquad \text{for every } k\in\mathbb N . $$

ধাপে ধাপে যুক্তি। \(\mathbb N = \{1\}\cup\{2\}\cup\{3\}\cup\cdots\) — এটা পরস্পর-বিচ্ছিন্ন (disjoint) singleton-গুলোর একটা countable (গণনাযোগ্য) মিলন। যেকোনো probability-র সংজ্ঞায় countable additivity থাকে: পরস্পর-বিচ্ছিন্ন set-গুলোর মিলনের probability হলো প্রতিটির probability-র যোগফল। সুতরাং $$ 1 \;=\; \mathbb P(\mathbb N) \;=\; \mathbb P!\Big(\bigcup_{k=1}^{\infty}{k}\Big) \;=\; \sum_{k=1}^{\infty}\mathbb P({k}) \;=\; \sum_{k=1}^{\infty} c . $$

এবার \(c\)-এর সম্ভাব্য দুটো ক্ষেত্র খতিয়ে দেখি — এবং দুটোই ভেঙে পড়ে:

  • ক্ষেত্র \(c=0\). তাহলে \(\sum_{k=1}^{\infty} 0 = 0 + 0 + 0 + \cdots = 0 \ne 1\)। অর্থাৎ মোট probability শূন্য, অথচ আমাদের লাগবে \(1\)। অসম্ভব।
  • ক্ষেত্র \(c>0\). তাহলে \(\sum_{k=1}^{\infty} c = c + c + c + \cdots = +\infty \ne 1\)। একই ধনাত্মক সংখ্যা অসীমবার যোগ করলে অসীমে চলে যায়, \(1\) হয় না। আবারও অসম্ভব।

কোনো \(c\)-ই কাজ করল না — তাই এমন uniform probability থাকতেই পারে না

Finite ক্ষেত্রের সঙ্গে তুলনা। ধরুন n- টিকিট, যেখানে \(n\) একটা সসীম সংখ্যা। তখন \(c = 1/n\) নিলে $$ \sum_{k=1}^{n} \frac1n \;=\; \underbrace{\tfrac1n + \tfrac1n + \cdots + \tfrac1n}_{n\text{ বার}} \;=\; \frac{n}{n} \;=\; 1 .\ \checkmark $$ সসীম জগতে "প্রত্যেকে \(1/n\)" নিখুঁতভাবে যোগ হয়ে \(1\) দেয়। কিন্তু অসীম জগতে \(1/\infty\)-এর কোনো অর্থ নেই — এবং উপরের হিসাব দেখায়, কোনো ধ্রুবক মান বসিয়েই ফাঁকটা পূরণ হয় না। এখানেই finite ও countable-infinite জগতের গুণগত পার্থক্য।

কী শিখলাম — crack C1। "একটা random natural number সমভাবে (uniformly) বাছো" — কথাটা শুনতে নিরীহ, কিন্তু গাণিতিকভাবে ill-posed (অসংজ্ঞায়িত): এর সঙ্গে সঙ্গতিপূর্ণ কোনো probability নেই। দোষী কে? countable additivity — এর সত্যিকারের দাঁত আছে। (লক্ষণীয়: যদি কেবল সসীম additivity দাবি করতাম, ফাঁকটা এত স্পষ্ট ধরা পড়ত না; কিন্তু সসীম additivity দিয়ে limit-এর যুক্তি চলে না।) এই কারণেই measure theory countable additivity-কে স্বতঃসিদ্ধ ধরে — আর সেই দাবির মূল্য চুকাতে হয় বলেই \(\mathbb N\)-এ uniform বণ্টন নিষিদ্ধ।


উদাহরণ ২ — \(\mathbb Q\cap[0,1]\)-এর measure শূন্য (★)

সেটআপ। \([0,1]\)-এর ভেতরের সব rational সংখ্যা — অর্থাৎ \(\mathbb Q\cap[0,1]\) — নিন। এই set কিন্তু dense (ঘন): real line-এর যেকোনো দুই বিন্দুর মাঝে অসংখ্য rational আছে, তাই এদের "ছড়িয়ে থাকা" সর্বত্র। স্বজ্ঞা বলে এমন সর্বব্যাপী set নিশ্চয়ই অনেকখানি "জায়গা" দখল করে। অথচ আমরা দেখাব এর মাপ (measure) শূন্য — এটাকে যত খুশি ছোট length-এর মধ্যে ঢেকে ফেলা যায়।

মূল হাতিয়ার — countability। \(\mathbb Q\cap[0,1]\) একটা countable set: এদের একটা তালিকায় সাজানো যায়, \(q_1, q_2, q_3, \dots\) (যেমন denominator অনুসারে সাজিয়ে \(\tfrac01, \tfrac11, \tfrac12, \tfrac13, \tfrac23, \tfrac14, \dots\))। এই গণনাযোগ্যতাই গোটা যুক্তির চাবি।

ধাপে ধাপে ঢাকনা বানানো। একটা ছোট \(\varepsilon>0\) বেছে নিন। প্রতিটি \(q_k\)-কে কেন্দ্র করে একটা open interval বসাই, যার length ঠিক \(\varepsilon/2^k\): $$ I_k \;=\; \Big(q_k - \frac{\varepsilon}{2^{k+1}},\; q_k + \frac{\varepsilon}{2^{k+1}}\Big), \qquad \text{length}(I_k) = \frac{\varepsilon}{2^{k}} . $$ প্রতিটি \(q_k\) তো তার নিজের \(I_k\)-এর ভেতরে আছেই, তাই গোটা set ঢাকা পড়ে: $$ \mathbb Q\cap[0,1] \;\subseteq\; \bigcup_{k=1}^{\infty} I_k . $$ এখন ঢাকনার মোট length যোগ করি। এটা একটা geometric series (\(\tfrac12 + \tfrac14 + \tfrac18 + \cdots = 1\)): $$ \sum_{k=1}^{\infty}\text{length}(I_k) \;=\; \sum_{k=1}^{\infty}\frac{\varepsilon}{2^{k}} \;=\; \varepsilon\sum_{k=1}^{\infty}\frac{1}{2^{k}} \;=\; \varepsilon\cdot 1 \;=\; \varepsilon . $$ সুতরাং outer measure (বহিঃমাপ, \(\lambda^*\) — যেকোনো set-কে interval দিয়ে ঢাকার সবচেয়ে দক্ষ মোট-length) সন্তুষ্ট করে \(\lambda^*(\mathbb Q\cap[0,1]) \le \varepsilon\)

সিদ্ধান্ত। \(\varepsilon>0\) ছিল যেকোনো ছোট সংখ্যা। একটা অঋণাত্মক রাশি যদি প্রত্যেক ধনাত্মক \(\varepsilon\)-এর চেয়ে ছোট-বা-সমান হয়, তবে সেটা শূন্যই হতে বাধ্য: $$ \lambda^(\mathbb Q\cap[0,1]) \;\le\; \varepsilon \quad \text{for all } \varepsilon>0 \quad\Longrightarrow\quad \lambda^(\mathbb Q\cap[0,1]) = 0 . $$

নিচের টেবিল \(\varepsilon\)-এর কয়েকটা মান নিয়ে মোট-length দেখায় — যত ছোট ঢাকনা চাই, তত ছোট পাই:

\(\varepsilon\) মোট ঢাকনা-length \(=\sum_k \varepsilon/2^k\) মন্তব্য
\(1\) \(1\) একক length-এর ভেতরেই পুরো \(\mathbb Q\cap[0,1]\) ঢেকে গেল
\(0.1\) \(0.1\) দশগুণ ছোট ঢাকনা
\(0.01\) \(0.01\) আরও দশগুণ ছোট
\(10^{-6}\) \(10^{-6}\) এক-মিলিয়নাংশ length — তবু সব rational ঢাকা

কী শিখলাম — measure 0 (C3-এর ভিত্তি)। একটা set infinitedense হয়েও measure-অর্থে সম্পূর্ণ negligible (নগণ্য, measure \(0\)) হতে পারে। "কত বিন্দু আছে" আর "কত length দখল করে" — দুটো একেবারে আলাদা প্রশ্ন; স্বজ্ঞা এখানে বিভ্রান্ত করে। এই measure-zero ধারণাই measure theory-র প্রাণভোমরা: integration-এ "প্রায় সর্বত্র" (almost everywhere) বলতে গেলে এরই দরকার হবে — যেমন পরবর্তী উদাহরণে।


উদাহরণ ৩ — Dirichlet function Riemann-integrable নয়, কিন্তু Lebesgue-এ integrable (★★)

সেটআপ। Dirichlet function সংজ্ঞায়িত করি \([0,1]\)-এর উপর: $$ D(x) \;=\; \mathbf 1_{\mathbb Q}(x) \;=\; \begin{cases} 1, & x \text{ rational},\[2pt] 0, & x \text{ irrational}. \end{cases} $$ এটা rational বিন্দুতে \(1\), irrational বিন্দুতে \(0\) — প্রতিটি বিন্দুর গায়েই অসংখ্যবার \(0\) থেকে \(1\)-এ লাফ দেয়। প্রশ্ন: এর "তলার ক্ষেত্রফল" \(\int_0^1 D\) কত? Riemann-এর কাঠামোয় উত্তর খুঁজলে আমরা দেয়ালে ধাক্কা খাব; তারপর Lebesgue-এর কাঠামোয় উত্তর পরিষ্কার মিলবে।

ধাপ ১ — Riemann ব্যর্থ। Riemann integral-এ আমরা \([0,1]\)-কে partition করি, প্রতিটি subinterval-এ function-এর supremum (সর্বোচ্চ) ও infimum (সর্বনিম্ন) দিয়ে উপরের ও নিচের Darboux sum বানাই। মূল পর্যবেক্ষণ: rational ও irrational উভয়ই dense, তাই যেকোনো partition-এর প্রতিটি subinterval \([x_{i-1}, x_i]\)-এর ভেতরে অন্তত একটা rational (যেখানে \(D=1\)) এবং অন্তত একটা irrational (যেখানে \(D=0\)) থাকবেই। অতএব প্রতিটি subinterval-এ: $$ \sup_{[x_{i-1},x_i]} D = 1, \qquad \inf_{[x_{i-1},x_i]} D = 0 . $$ ফলে subinterval-এর length \(\Delta x_i = x_i - x_{i-1}\) ধরে, উপরের ও নিচের sum হয়: $$ U(D,P) = \sum_i 1\cdot \Delta x_i = \sum_i \Delta x_i = 1, \qquad L(D,P) = \sum_i 0\cdot \Delta x_i = 0 . $$ এটা প্রতিটি partition \(P\)-এর জন্য সত্য — partition যত সূক্ষ্মই হোক, ব্যবধান কমে না। তাই upper integral \(\overline{\int}D = 1\), কিন্তু lower integral \(\underline{\int}D = 0\): $$ \overline{\int_0^1} D \;=\; 1 \;\ne\; 0 \;=\; \underline{\int_0^1} D . $$ দুটো সমান নয় বলে Riemann integral অস্তিত্বহীন\(D\) Riemann-integrable নয়

ধাপ ২ — Lebesgue জিতল। Lebesgue-এর দর্শন আলাদা: \(x\)-অক্ষ কেটে নয়, function-এর মান ধরে দল বাঁধো। \(D\) মাত্র দুটো মান নেয় — \(1\)\(0\) — তাই $$ \int_0^1 D \,d\lambda \;=\; 1\cdot \lambda\big({x: D(x)=1}\big) \;+\; 0\cdot \lambda\big({x: D(x)=0}\big) . $$ এখানে \(\{D=1\} = \mathbb Q\cap[0,1]\) আর ${D=0} = $ irrationals \(\cap\,[0,1]\)উদাহরণ ২ থেকে \(\lambda(\mathbb Q\cap[0,1]) = 0\); আর গোটা \([0,1]\)-এর length \(1\), তাই irrational অংশের measure \(1 - 0 = 1\)। বসিয়ে: $$ \int_0^1 D \,d\lambda \;=\; 1\cdot 0 \;+\; 0\cdot 1 \;=\; 0 . $$ সুন্দরভাবে সংজ্ঞায়িত, এবং উত্তর \(\boxed{0}\) — স্বজ্ঞার সঙ্গেও মেলে, কারণ "প্রায় সব" বিন্দুতে (\(\lambda\)-অর্থে) \(D=0\)

কী শিখলাম — crack C2 এবং তার সমাধান। Riemann integral এমন একটা function-এও ভেঙে পড়ে যেটা মাত্র দুটো মান নেয় — তার integrability-শর্ত বড্ড সংকীর্ণ (এটাই C2)। Lebesgue integral "মানে ভাগ করো, তারপর প্রতিটি স্তরের measure দিয়ে গুণ করো" — এই কৌশলে অনায়াসে \(\int_0^1 D\,d\lambda = 0\) পায়। লক্ষণীয়, এর পেছনে measure-zero ধারণাটা (উদাহরণ ২) সরাসরি কাজে লেগেছে: rational-গুলোর measure \(0\) বলেই তাদের অবদান মুছে গেছে।


উদাহরণ ৪ — চলমান spike: limit আর integral হাত বদলায় না (★★)

সেটআপ। প্রতিটি \(n\in\mathbb N\)-এর জন্য একটা function বানাই — একটা সরু, লম্বা spike (চূড়া) যা \(0\)-এর কাছে দাঁড়িয়ে থাকে: $$ f_n(x) \;=\; n\,\mathbf 1_{(0,\,1/n)}(x) \;=\; \begin{cases} n, & 0 < x < 1/n,\[2pt] 0, & \text{অন্যথায় (on } [0,1]). \end{cases} $$ \(n\) বাড়লে চূড়া উঁচু হয় (উচ্চতা \(n\)) কিন্তু সরু হয় (প্রস্থ \(1/n\)) — যেন একই "পরিমাণ পানি" ক্রমশ সরু পাত্রে ঢালা হচ্ছে। প্রশ্ন: \(n\to\infty\) নিলে integral আর function-এর limit — দুটো কি একই উত্তর দেয়?

ধাপ ১ — প্রতিটি \(f_n\)-এর integral। প্রতিটি স্থির \(n\)-এর জন্য \(f_n\) একটা সাধারণ step function (ধাপ-ফাংশন), তাই Riemann integral দিব্যি কাজ করে — এটা নিছক একটা আয়তক্ষেত্রের ক্ষেত্রফল: উচ্চতা \(n\), প্রস্থ \(1/n\)। $$ \int_0^1 f_n \,dx \;=\; \underbrace{n}{\text{উচ্চতা}}\times \underbrace{\frac1n} n . $$ লক্ষণীয় — উত্তর }} \;=\; 1 \qquad \text{for every সবসময় ঠিক \(1\), \(n\) যাই হোক। তাই $$ \lim_{n\to\infty}\int_0^1 f_n \,dx \;=\; \lim_{n\to\infty} 1 \;=\; 1 . $$

ধাপ ২ — pointwise limit। এবার \(x\) স্থির রেখে \(f_n(x)\)-এর আচরণ দেখি।

  • ধরা যাক \(x\in(0,1]\) স্থির। চূড়াটা কেবল \((0, 1/n)\)-তে দাঁড়ায়; \(n\) যথেষ্ট বড় হলে \(1/n < x\), তখন \(x\) চূড়ার বাইরে পড়ে আর \(f_n(x)=0\)। উদাহরণস্বরূপ \(x=0.3\): শর্ত \(1/n < 0.3 \iff n > 10/3 \approx 3.33\), অর্থাৎ \(n\ge 4\) থেকেই \(f_n(0.3)=0\)
  • আর \(x=0\)? চূড়ার ব্যবধান \((0,1/n)\) open, তাই \(0\) কখনো ভেতরে নেই — সব \(n\)-এর জন্য \(f_n(0)=0\)

সুতরাং প্রতিটি স্থির \(x\)-এ, যথেষ্ট বড় \(n\)-এর পর \(f_n(x)=0\); অর্থাৎ pointwise limit: $$ f_n(x) \;\longrightarrow\; f(x)\equiv 0 \qquad \text{প্রতিটি } x\in[0,1]\text{-এ}. $$ তাহলে limit-function-এর integral: $$ \int_0^1 \Big(\lim_{n\to\infty} f_n\Big) dx \;=\; \int_0^1 0\,dx \;=\; 0 . $$

ধাপ ৩ — সংঘর্ষ। দুই উত্তর মুখোমুখি: $$ \lim_{n\to\infty}\int_0^1 f_n \,dx \;=\; 1 \qquad\ne\qquad 0 \;=\; \int_0^1 \Big(\lim_{n\to\infty} f_n\Big) dx . $$ limit আর integral হাত বদলানো এখানে ভুল উত্তর দিল — পার্থক্য পুরো \(1\) একক! ব্যাপারটা হলো, "পানি" কখনো হারায়নি; প্রতিটা \(n\)-এ এর পরিমাণ \(1\), কিন্তু \(n\to\infty\)-এ চূড়াটা \(0\)-এর দিকে সরে গিয়ে অসীম-সরু-অসীম-উঁচু হয়ে স্বজ্ঞাকে ফাঁকি দেয় — pointwise limit সেই ভরকে "দেখতে" পায় না।

নিচের টেবিল ছবিটা স্পষ্ট করে — integral অটল \(1\), অথচ স্থির বিন্দুতে মান ভেঙে পড়ে \(0\)-তে:

\(n\) উচ্চতা প্রস্থ \(=1/n\) \(\int_0^1 f_n\,dx\) \(f_n(0.3)\)
\(1\) \(1\) \(1\) \(1\) \(1\)
\(2\) \(2\) \(0.5\) \(1\) \(2\)
\(5\) \(5\) \(0.2\) \(1\) \(0\)
\(10\) \(10\) \(0.1\) \(1\) \(0\)
\(100\) \(100\) \(0.01\) \(1\) \(0\)
\(1000\) \(1000\) \(0.001\) \(1\) \(0\)

(\(f_n(0.3)=n\) যতক্ষণ \(1/n > 0.3\), অর্থাৎ \(n\le 3\); আর \(n\ge 4\) থেকে \(f_n(0.3)=0\) — তাই টেবিলে \(n=2\)-এ \(2\), কিন্তু \(n=5\) থেকেই \(0\)।)

নোট (সামনের দিকে ইঙ্গিত)। কেউ ভাবতে পারেন, Dominated Convergence Theorem (DCT, §৭.৪) তো limit ও integral বদলানোর অনুমতি দেয় — এখানে দিল না কেন? কারণ DCT-র একটা শর্ত আছে: একটাই integrable "ঢাকনা" function \(g\) থাকতে হবে যা সব \(f_n\)-কে ঢাকে (\(\lvert f_n\rvert \le g\))। এখানে সবচেয়ে ছোট সম্ভাব্য ঢাকনা \(\sup_n f_n(x)\) আচরণ করে মোটামুটি \(1/x\)-এর মতো \(0\)-এর কাছে, যার \(\int_0^1\) অসীম — অর্থাৎ ঢাকনাটা integrable নয়। তাই DCT প্রযোজ্যই নয়, এবং swap ব্যর্থ হওয়াটা theorem-এর সঙ্গে নিখুঁতভাবে সঙ্গতিপূর্ণ।

কী শিখলাম — crack C4. \(\lim\int = \int\lim\) একটা সুবিধাজনক ধাপ যা আমরা প্রায়ই বিনা প্রশ্নে ব্যবহার করি — কিন্তু এটা সাধারণভাবে মিথ্যা, যেমন এই চলমান-চূড়া দেখাল (\(1\ne 0\))। আমাদের দরকার এমন theorem (Monotone Convergence, Dominated Convergence — §৭.৪) যা পরিষ্কার শর্ত দিয়ে বলবে কখন swap বৈধ। সেই শর্ত-কাঠামো গড়ার ভাষাই measure theory; Riemann-এর হাতে এই সূক্ষ্ম পার্থক্য ধরার যন্ত্র নেই।


উদাহরণ ৫ — Cantor set: uncountable অথচ measure শূন্য (★★)

সেটআপ। Cantor set \(C\) বানাই \([0,1]\) থেকে বারবার মাঝের এক-তৃতীয়াংশ (middle third) ফেলে দিয়ে:

  • ধাপ ০: শুরু \(C_0 = [0,1]\)
  • ধাপ ১: মাঝের open third \((\tfrac13, \tfrac23)\) ফেলো → \(C_1 = [0,\tfrac13]\cup[\tfrac23,1]\) (\(2\)টা interval, প্রতিটির length \(\tfrac13\))।
  • ধাপ ২: বাকি দুই interval-এর প্রতিটির মাঝের third ফেলো → \(C_2\)-তে \(4\)টা interval, প্রতিটির length \(\tfrac19\)
  • … এভাবে চলতে থাকো। \(C = \bigcap_{k=0}^{\infty} C_k\) — যা কখনোই ফেলা হয়নি

প্রশ্ন দুটো, এবং এদের উত্তর একসঙ্গে শুনলে চমকপ্রদ: (ক) \(C\)-এর measure কত? (খ) \(C\)-তে কতগুলো বিন্দু আছে?

ধাপ ১ — মোট কতটা ফেলা হলো (measure)। \(k\)-তম ধাপে কতগুলো interval ফেলি, প্রতিটার length কত?

  • ধাপ \(1\): \(2^{0}=1\)টা interval ফেলি, length \(3^{-1}=\tfrac13\) → মোট \(\tfrac13\)
  • ধাপ \(2\): \(2^{1}=2\)টা interval ফেলি, প্রতিটা length \(3^{-2}=\tfrac19\) → মোট \(\tfrac{2}{9}\)
  • ধাপ \(3\): \(2^{2}=4\)টা interval, প্রতিটা length \(3^{-3}=\tfrac{1}{27}\) → মোট \(\tfrac{4}{27}\)
  • … সাধারণভাবে ধাপ \(k\)-তে \(2^{k-1}\)টা interval, প্রতিটা length \(3^{-k}\) → মোট \(2^{k-1}3^{-k}\)

সব ধাপের ফেলে-দেওয়া length যোগ করি (এটা একটা geometric series): $$ \text{মোট ফেলা} \;=\; \sum_{k=1}^{\infty} 2^{k-1}\,3^{-k} \;=\; \frac13 \sum_{k=1}^{\infty}\Big(\frac23\Big)^{k-1} \;=\; \frac13 \sum_{j=0}^{\infty}\Big(\frac23\Big)^{j} \;=\; \frac13\cdot\frac{1}{1-\tfrac23} \;=\; \frac13\cdot 3 \;=\; 1 . $$ (এখানে \(j=k-1\) ধরেছি; আর \(\sum_{j\ge 0} r^j = \tfrac{1}{1-r}\) ব্যবহার করেছি \(r=\tfrac23\)-এ।) অর্থাৎ মোট length-এর পুরো \(1\)-ই ফেলে দেওয়া হলো! তাই অবশিষ্ট Cantor set-এর measure: $$ \lambda(C) \;=\; \lambda([0,1]) - (\text{মোট ফেলা}) \;=\; 1 - 1 \;=\; 0 . $$ পরীক্ষা করে দেখুন: \(C_k\)-তে \(2^k\)টা interval থাকে, প্রতিটা length \(3^{-k}\), তাই \(\lambda(C_k) = (2/3)^k \to 0\) — একই সিদ্ধান্ত।

ধাপ ২ — তবু কত বিন্দু (cardinality)। এবার এক চমক: measure \(0\) হওয়া সত্ত্বেও \(C\) খালি বা ছোট নয় — বরং uncountable (অগণনাযোগ্য, পুরো continuum-এর সমান)। কেন?

base-\(3\) (ternary) লেখায় \([0,1]\)-এর সংখ্যাগুলো \(0.d_1 d_2 d_3\ldots\) আকারে লেখা যায়, যেখানে প্রতিটা digit \(d_i\in\{0,1,2\}\)। মাঝের-third ফেলার অর্থ ঠিক digit \(1\) বাদ দেওয়া: একটু খেয়াল করলে দেখা যায় \(C\)-তে ঠিক সেই সংখ্যাগুলোই টিকে থাকে যাদের ternary রূপে কোনো digit-এ \(1\) নেই — অর্থাৎ প্রতিটা digit \(0\) বা \(2\)। তাই একটা পরিষ্কার bijection (এক-এক সংগতি) দাঁড়ায়: $$ C \;\longleftrightarrow\; {0,2}^{\mathbb N} \quad\text{(প্রতিটা বিন্দু} \leftrightarrow \text{অসীম } 0/2\text{-অনুক্রম)} . $$ প্রতিটা digit-এ \(2\)টা পছন্দ (\(0\) না \(2\)) আর অসীম digit — তাই \(\{0,2\}^{\mathbb N}\)-এর size \(2^{\aleph_0}\), ঠিক \([0,1]\)-এর মতোই (continuum)। (\(\{0,2\}^{\mathbb N} \leftrightarrow \{0,1\}^{\mathbb N}\) পাঠাতে \(0\mapsto 0, 2\mapsto 1\) নিলেই হয় — অর্থাৎ সব binary অনুক্রম।) সুতরাং \(C\) uncountable, \(\mathbb Q\cap[0,1]\)-এর মতো countable নয় মোটেই।

দুটো সত্য পাশাপাশি রাখলে দাঁড়ায়: $$ \lambda(C) = 0 \qquad\text{কিন্তু}\qquad \lvert C\rvert = 2^{\aleph_0} \ (\text{continuum}) . $$

কী শিখলাম — measure-zero ≠ ছোট/countable (C3-এর গভীর রূপ)। উদাহরণ ২-এ measure-zero set-টা ছিল countable (rational-গুলো), তাই "অল্প বিন্দু → অল্প measure" ভাবা সহজ ছিল। Cantor set সেই স্বজ্ঞা ভেঙে দেয়: এখানে continuum-সংখ্যক বিন্দু, তবু measure ঠিক \(0\)। অর্থাৎ "measure zero" শর্তটা "countable" শর্তের চেয়ে অনেক দুর্বল (countable ⇒ measure 0, কিন্তু উল্টোটা নয়)। size মাপার দুটো সম্পূর্ণ স্বাধীন মাপকাঠি — cardinality আর measure — যা আলাদা করে বোঝার জন্যই একটা পূর্ণাঙ্গ তত্ত্ব (measure theory) দরকার। এই একটি উদাহরণই গোটা ইমারত গড়ার প্রেরণা।


সারসংক্ষেপ। পাঁচটি উদাহরণ পাঁচটি ফাটল ছুঁয়ে গেল:

উদাহরণ মূল ঘটনা crack
\(\mathbb N\)-এ fair uniform probability নেই (\(c=0\Rightarrow 0\), \(c>0\Rightarrow\infty\)) C1
\(\mathbb Q\cap[0,1]\) dense তবু \(\lambda^*=0\) (ঢাকনা-length \(=\varepsilon\)) C3-এর ভিত্তি
Dirichlet \(D\) Riemann-এ ব্যর্থ (\(U=1\ne 0=L\)), Lebesgue-এ \(\int D\,d\lambda=0\) C2
চলমান spike: \(\lim\int f_n = 1 \ne 0 = \int\lim f_n\) C4
Cantor set: \(\lambda(C)=0\) অথচ uncountable (continuum) C3 (গভীর)

এই হোঁচটগুলোর প্রতিটিরই একটা পরিষ্কার, সর্বজনীন সমাধান আছে — কিন্তু তার জন্য চাই measure (\(\lambda\), এবং তার generalization), measurable function, ও Lebesgue integral-এর আনুষ্ঠানিক কাঠামো। ঠিক সেই কাঠামো গড়ার কাজ শুরু হবে §৭.২ থেকে।


৪ · প্রমাণ ও উৎপাদন

এই বিভাগে §১–৩-এর চারটি crack (ফাটল — যেখানে স্কুল-পর্যায়ের probability ও Riemann integration হোঁচট খায়) থেকে সবচেয়ে নির্ণায়ক চারটি দাবি শূন্য থেকে, প্রতিটি ধাপ ব্যাখ্যাসহ প্রমাণ করব। গুরুত্বপূর্ণ একটা কথা আগেই বলে রাখি: এখানকার প্রমাণগুলো formal measure theory-র ভেতর থেকে আসা theorem নয় — বরং এগুলো ঠিক সেই যুক্তি যা ফাটলগুলো উন্মোচন করে এবং পুনর্নির্মাণকে অনিবার্য করে তোলে। আসল যন্ত্রপাতি — σ-algebra (সিগমা-বীজগণিত), outer measure-এর পূর্ণ নির্মাণ, Carathéodory extension — গড়া হবে §৭.২-এ; এখানে আমরা শুধু দেখাব কেন তা গড়তে হবে। চারটি প্রমাণ: (১) গণনাযোগ্য অসীম set-এ uniform probability অসম্ভব — crack C1-এর হৃৎপিণ্ড; (২) outer measure-এর countable subadditivity, এবং তা থেকে \(\lambda^*(\mathbb Q\cap[0,1])=0\) — "null set"-এর প্রথম সাক্ষাৎ; (৩) Dirichlet function Riemann-integrable নয় — crack C2; (৪) Vitali-নির্মাণ: \([0,1]\)-এ একটা non-measurable (অ-পরিমেয়) set আছে — crack C3, এবং গোটা measure-তাত্ত্বিক কাঠামোর গভীরতম ন্যায্যতা। কষ্টের স্তর শিরোনামে তারা দিয়ে: ★ সহজ · ★★ মাঝারি · ★★★ চ্যালেঞ্জিং। প্রতিটি প্রতীক প্রথম ব্যবহারে খুলে দেওয়া হবে।

সাধারণ প্রতীক। \(\mathbb N=\{1,2,3,\dots\}\) স্বাভাবিক সংখ্যা, \(\mathbb Q\) মূলদ (rational) সংখ্যা, \(\mathbb R\) বাস্তব (real) সংখ্যা। একটা interval \(I=(a,b)\)-এর দৈর্ঘ্য \(\ell(I)=b-a\)Indicator function (নির্দেশক ফাংশন) \(\mathbf 1_A(x)\) মানে: \(x\in A\) হলে \(1\), নয়তো \(0\)Outer measure (বহিঃমাপ) \(\lambda^*\)Lebesgue measure (লেবেগ মাপ) \(\lambda\) যথাক্রমে "ঢেকে মাপা" ও "সঠিক দৈর্ঘ্য"-কে বোঝায় — নিচে সংজ্ঞা আসছে।


প্রমাণ ১ (★) — গণনাযোগ্য অসীম set-এ uniform probability অসম্ভব

দাবি (claim)। \(\mathbb N\)-এর উপর এমন কোনো probability measure \(\mathbb P\) নেই যেখানে প্রতিটি singleton-এর (একক-মৌল set) probability একই ধ্রুবক \(c\) — অর্থাৎ এমন কোনো \(\mathbb P\) নেই যাতে $$ \mathbb P({k}) = c \qquad \text{প্রতিটি } k\in\mathbb N\text{-এর জন্য}. $$ সহজ ভাষায়: \(\mathbb N\)-এ "প্রত্যেক সংখ্যার সমান সুযোগ"-ওয়ালা কোনো fair/uniform distribution (বণ্টন) অস্তিত্বশীলই নয়

যা ধরে নিচ্ছি (axiom)। একটা probability measure \(\mathbb P\)-এর কাছে দুটো জিনিস দাবি করি: (i) normalization — গোটা space-এর probability \(\mathbb P(\mathbb N)=1\); (ii) countable additivity (\(\sigma\)-additivity, গণনাযোগ্য যোগাত্মকতা) — পরস্পর-বিচ্ছিন্ন (disjoint) set-গুলোর একটা গণনাযোগ্য মিলনের probability হলো প্রতিটির probability-র যোগফল। এই দ্বিতীয় শর্তটাই — finite additivity নয়, বরং তার গণনাযোগ্য রূপ — গোটা প্রমাণের চাবি; নিচের remark-এ ফিরব।

ধাপ ১ — \(\mathbb N\)-কে singleton-এ ভাঙা। \(\mathbb N\) হলো তার একক-একক উপাদানগুলোর একটা গণনাযোগ্য, পরস্পর-বিচ্ছিন্ন মিলন: $$ \mathbb N \;=\; {1}\,\cup\,{2}\,\cup\,{3}\,\cup\,\cdots \;=\; \bigcup_{k=1}^{\infty}{k}. $$ এগুলো disjoint, কারণ দুটো ভিন্ন সংখ্যার singleton-এ কোনো সাধারণ উপাদান নেই; আর মিলনটা countable, কারণ index \(k\) নিজে \(\mathbb N\)-এর উপর চলে।

ধাপ ২ — countable additivity প্রয়োগ। normalization ও countable additivity পরপর বসিয়ে: $$ 1 \;\overset{\text{(i)}}{=}\; \mathbb P(\mathbb N) \;=\; \mathbb P!\Big(\bigcup_{k=1}^{\infty}{k}\Big) \;\overset{\text{(ii)}}{=}\; \sum_{k=1}^{\infty}\mathbb P({k}) \;=\; \sum_{k=1}^{\infty} c . $$ প্রথম সমান-চিহ্নে normalization, তৃতীয়টিতে countable additivity, আর শেষে \(\mathbb P(\{k\})=c\) বসিয়েছি। অর্থাৎ গোটা শর্ত এখন একটামাত্র সমীকরণে নেমে এল: \(\;1=\sum_{k=1}^{\infty} c\)

ধাপ ৩ — দুই ক্ষেত্রেই দ্বন্দ্ব। \(c\ge 0\) একটা ধ্রুবক; এর মাত্র দুটো সম্ভাবনা, আর দুটোই ভেঙে পড়ে:

  • ক্ষেত্র \(c=0\). তখন \(\displaystyle\sum_{k=1}^{\infty} 0 = 0+0+0+\cdots = 0\)। কিন্তু আমাদের দরকার \(1\)। যেহেতু \(0\ne 1\), এটা অসম্ভব
  • ক্ষেত্র \(c>0\). তখন একই ধনাত্মক সংখ্যা অসীমবার যোগ হচ্ছে: \(\displaystyle\sum_{k=1}^{\infty} c = c+c+c+\cdots = +\infty\)। কিন্তু একটা probability কখনো \(1\)-এর বেশি হতে পারে না, \(+\infty\) তো দূরের কথা। যেহেতু \(+\infty\ne 1\), এটাও অসম্ভব

দুই ক্ষেত্রেই দ্বন্দ্ব, এবং \(c\)-এর তৃতীয় কোনো সম্ভাবনা নেই। অতএব শুরুর অনুমান — এমন একটা uniform \(\mathbb P\) আছে — মিথ্যা। তাই গণনাযোগ্য অসীম set-এ কোনো uniform probability নেই। \(\;\blacksquare\)

সসীম জগতের সঙ্গে তুলনা — কোথায় পার্থক্যটা তৈরি হয়। ব্যাপারটা কেন কেবল অসীম set-এ ঘটে, তা একটা সসীম উদাহরণের পাশে রাখলে স্পষ্ট হয়। ধরুন \(n\)টা টিকিট (\(n\) একটা সসীম সংখ্যা), প্রতিটির সমান সম্ভাব্যতা \(c=1/n\)। তখন $$ \sum_{k=1}^{n}\frac1n \;=\; \underbrace{\tfrac1n+\tfrac1n+\cdots+\tfrac1n}_{n\text{ বার}} \;=\; \frac{n}{n} \;=\; 1.\ \checkmark $$ সসীম জগতে "প্রত্যেকে \(1/n\)" নিখুঁতভাবে যোগ হয়ে \(1\) দেয় — কোনো সমস্যা নেই। গোলমালটা ঘটে কারণ অসীম জগতে "\(1/\infty\)"-এর কোনো অর্থ নেই: কোনো একটিমাত্র ধনাত্মক ধ্রুবক \(c\) নেই যা অসীমবার যোগ করলে একটা সসীম ধনাত্মক সংখ্যা দেয়। হয় \(c=0\) (যোগফল ধসে \(0\)-তে), নয় \(c>0\) (যোগফল উড়ে \(\infty\)-তে) — মাঝামাঝি \(1\)-এ থামার কোনো উপায়ই নেই। এই গুণগত ফারাকটাই — finite বনাম countably-infinite — পুরো প্রমাণের আসল উৎস।

Remark — finite additivity একা কেন যথেষ্ট নয়। খেয়াল করুন, দ্বন্দ্বটা টানতে আমরা সমগ্র অসীম যোগফল \(\sum_{k=1}^\infty c\)-কে \(\mathbb P(\mathbb N)\)-এর সমান ধরেছি — এটাই countable additivity। যদি কেবল finite additivity (সসীম যোগাত্মকতা — যেকোনো সসীম-সংখ্যক disjoint set-এর জন্য যোগ খাটে) ধরতাম, তাহলে \(c=0\) ক্ষেত্রে কোনো দ্বন্দ্ব জোর করে বের করা যেত না: প্রতিটি সসীম উপসংগ্রহের probability \(\;\mathbb P(\{1,\dots,n\})=n\cdot 0=0\;\) — সম্পূর্ণ সঙ্গতিপূর্ণ, অথচ \(\mathbb P(\mathbb N)=1\) আলাদাভাবে রাখলে কোনো সসীম নিয়ম লঙ্ঘিত হয় না। প্রকৃতপক্ষে finitely-additive "uniform" বস্তু (Banach limit-জাতীয়) \(\mathbb N\)-এ বানানো যায় — কিন্তু সেগুলো countably additive নয়, তাই limit-নির্ভর কোনো যুক্তিতে ভরসা করা যায় না। মোদ্দা কথা: এই অসম্ভবতা টানতে countable additivity-র সত্যিকারের দাঁত লাগে — তার মূল্য চুকিয়েই measure theory একে স্বতঃসিদ্ধ ধরে। এটাই crack C1-এর গাণিতিক হৃৎপিণ্ড।

এক বাক্যে। countable additivity-র অধীনে \(1=\sum_{k}c\) হয় \(0\) (যদি \(c=0\)) নয়তো \(\infty\) (যদি \(c>0\)) — কখনোই \(1\) নয়, তাই \(\mathbb N\)-এ uniform probability অসম্ভব (C1)।


প্রমাণ ২ (★) — outer measure-এর countable subadditivity, এবং \(\lambda^*(\mathbb Q\cap[0,1])=0\)

সংজ্ঞা — outer measure (বহিঃমাপ)। যেকোনো set \(A\subseteq\mathbb R\)-এর জন্য তার outer measure হলো \(A\)-কে গণনাযোগ্য-অনেক open interval দিয়ে ঢাকার সবচেয়ে "দক্ষ" (সর্বনিম্ন) মোট-দৈর্ঘ্য: $$ \lambda^(A) \;=\; \inf\Big{\sum_{k=1}^{\infty}\ell(I_k)\;:\; A\subseteq \bigcup_{k=1}^{\infty} I_k,\ \ I_k \text{ open interval}\Big}. $$ এখানে infimum নেওয়া হচ্ছে \(A\)-কে ঢাকা সমস্ত* গণনাযোগ্য open-interval-আবরণের (cover) উপর; প্রতিটি আবরণের "দাম" হলো interval-গুলোর দৈর্ঘ্যের যোগফল \(\sum_k\ell(I_k)\), আর \(\lambda^*(A)\) হলো সম্ভাব্য সবচেয়ে সস্তা দাম। স্বজ্ঞায়: "\(A\)-কে যত আঁটসাঁটভাবে interval দিয়ে মুড়ে ফেলা যায়, ততটুকুই তার বহিঃমাপ।"

২ক — Countable subadditivity (গণনাযোগ্য উপ-যোগাত্মকতা)

দাবি। যেকোনো গণনাযোগ্য set-পরিবার \(A_1,A_2,A_3,\dots\)-এর জন্য $$ \lambda^!\Big(\bigcup_{n=1}^{\infty} A_n\Big) \;\le\; \sum_{n=1}^{\infty}\lambda^(A_n). $$ অর্থাৎ "মিলনের বহিঃমাপ, পৃথক বহিঃমাপ-গুলোর যোগফলের চেয়ে বেশি হতে পারে না।" (যদি ডানদিক \(=\infty\) হয় তবে দাবিটা তুচ্ছভাবে সত্য, তাই ধরে নিই প্রতিটি \(\lambda^*(A_n)<\infty\)।)

প্রমাণ — \(\varepsilon/2^n\) কৌশল। একটা \(\varepsilon>0\) বাছি। প্রতিটি \(n\)-এর জন্য, infimum-এর সংজ্ঞা অনুযায়ী, \(A_n\)-এর এমন একটা open-interval আবরণ \(\{I^{(n)}_k\}_{k}\) আছে যা optimal-এর প্রায় সমান — ঠিক \(\lambda^*(A_n)\) না-ও হতে পারে (infimum অর্জিত না-ও হতে পারে), কিন্তু আমরা যত খুশি কাছে যেতে পারি। কাছে যাওয়ার পরিমাণটা প্রতিটি \(n\)-এ আলাদা করে \(\varepsilon/2^n\) ধরি: $$ A_n \subseteq \bigcup_{k=1}^{\infty} I^{(n)}k, \qquad \sum. $$ (এমন আবরণ সবসময় পাওয়া যায়: infimum-এর সংজ্ঞাই বলে, যেকোনো ধনাত্মক "ছাড়" }^{\infty}\ell\big(I^{(n)}_k\big) \;\le\; \lambda^*(A_n) + \frac{\varepsilon}{2^n\(\varepsilon/2^n\)-এর জন্য তার চেয়ে কম দূরত্বে একটা আবরণ থাকে।)

এবার সব \(n\) ও সব \(k\)-এর interval একসঙ্গে নিই — এই দুই-সূচক (double-indexed) সংগ্রহ \(\{I^{(n)}_k\}_{n,k}\) গণনাযোগ্য (গণনাযোগ্য×গণনাযোগ্য = গণনাযোগ্য), এবং এটা সমগ্র মিলনকে ঢাকে: $$ \bigcup_{n=1}^{\infty} A_n \;\subseteq\; \bigcup_{n=1}^{\infty}\bigcup_{k=1}^{\infty} I^{(n)}k . $$ তাই এটা \(\bigcup_n A_n\)-এর একটা বৈধ আবরণ, এবং \(\lambda^*\) যেহেতু সবচেয়ে সস্তা আবরণের দাম, এই বিশেষ আবরণের দাম তার চেয়ে কম হতে পারে না: $$ \lambda^!\Big(\bigcup_{n} A_n\Big) \;\le\; \sum_{n=1}^{\infty}\sum_{k=1}^{\infty}\ell\big(I^{(n)}k\big) \;\le\; \sum\Big(\lambda^}^{\infty(A_n)+\frac{\varepsilon}{2^n}\Big) \;=\; \sum\lambda^}^{\infty(A_n) \;+\; \varepsilon . $$ শেষ ধাপে \(\sum_n \varepsilon/2^n = \varepsilon\cdot(\tfrac12+\tfrac14+\cdots)=\varepsilon\cdot 1=\varepsilon\) ব্যবহার করেছি (geometric series)। যেহেতু \(\varepsilon>0\) ছিল যেকোনো সংখ্যা, \(\varepsilon\downarrow 0\) নিলে অতিরিক্ত পদটা মুছে যায়: $$ \lambda^!\Big(\bigcup_{n} A_n\Big) \;\le\; \sum_{n=1}^{\infty}\lambda^*(A_n). \qquad\blacksquare $$ এই \(\varepsilon/2^n\)-বিন্যাসই কৌশলের মর্ম: মোট "ছাড়" \(\sum_n \varepsilon/2^n\)-কে একটা নিয়ন্ত্রিত \(\varepsilon\)-এর ভেতরে আটকে রাখা।

২খ — \(\lambda^*(\mathbb Q\cap[0,1]) = 0\)

মূল হাতিয়ার — countability। \(\mathbb Q\cap[0,1]\) একটা countable set, তাই একে একটা তালিকায় সাজানো যায়: \(q_1, q_2, q_3, \dots\) (প্রতিটি rational ঠিক একবার)।

ঢাকনা বানানো। একটা \(\varepsilon>0\) বাছি, আর প্রতিটি \(q_k\)-কে কেন্দ্র করে একটা open interval বসাই যার দৈর্ঘ্য ঠিক \(\varepsilon/2^k\): $$ I_k = \Big(q_k-\frac{\varepsilon}{2^{k+1}},\; q_k+\frac{\varepsilon}{2^{k+1}}\Big), \qquad \ell(I_k)=\frac{\varepsilon}{2^k}. $$ প্রতিটি \(q_k\) নিজের \(I_k\)-এর কেন্দ্রে আছে, তাই গোটা set ঢাকা পড়ে: \(\;\mathbb Q\cap[0,1]\subseteq\bigcup_{k=1}^\infty I_k\)

মোট দৈর্ঘ্য। এটা আবার একটা geometric series: $$ \sum_{k=1}^{\infty}\ell(I_k) \;=\; \sum_{k=1}^{\infty}\frac{\varepsilon}{2^k} \;=\; \varepsilon\sum_{k=1}^{\infty}\frac{1}{2^k} \;=\; \varepsilon\cdot 1 \;=\; \varepsilon. $$ যেহেতু এটা একটা বৈধ আবরণ, infimum-এর সংজ্ঞা থেকে \(\;\lambda^*(\mathbb Q\cap[0,1])\le \varepsilon\)

সিদ্ধান্ত। \(\varepsilon>0\) ছিল যেকোনো সংখ্যা। একটা অঋণাত্মক রাশি যদি প্রতিটি ধনাত্মক \(\varepsilon\)-এর চেয়ে ছোট-বা-সমান হয়, তবে সেটা শূন্য হতে বাধ্য: $$ 0 \;\le\; \lambda^(\mathbb Q\cap[0,1]) \;\le\; \varepsilon \ \ \text{for all }\varepsilon>0 \quad\Longrightarrow\quad \lambda^(\mathbb Q\cap[0,1]) = 0. \qquad\blacksquare $$

যেকোনো গণনাযোগ্য set-এর measure শূন্য। যুক্তিটা \(\mathbb Q\)-র কোনো বিশেষ গুণের উপর দাঁড়ায়নি — কেবল গণনাযোগ্যতার উপর। প্রথমত, যেকোনো একক বিন্দু \(\{x\}\)-কে \((x-\delta,x+\delta)\) দিয়ে ঢেকে দিলে \(\lambda^*(\{x\})\le 2\delta\) প্রতিটি \(\delta>0\)-এ, তাই \(\lambda^*(\{x\})=0\)। এবার ২ক-এর subadditivity প্রয়োগ করি: একটা গণনাযোগ্য set \(A=\{a_1,a_2,\dots\}=\bigcup_n\{a_n\}\)-এর জন্য $$ \lambda^(A) \;\le\; \sum_{n=1}^{\infty}\lambda^({a_n}) \;=\; \sum_{n=1}^{\infty} 0 \;=\; 0. $$ অর্থাৎ প্রতিটি গণনাযোগ্য set-এর outer measure \(0\) এই বৈশিষ্ট্যওয়ালা set-কে বলে null set (নাল সেট, measure-শূন্য set) — measure theory-র একটা মৌলিক ধারণা, যা "প্রায় সর্বত্র" (almost everywhere) বলার ভিত্তি গড়বে। (সতর্কতা: উল্টোটা সত্য নয় — §৩-এর Cantor set গণনাযোগ্য না হয়েও null; "measure zero" শর্তটা "countable" শর্তের চেয়ে অনেক দুর্বল।)

এক বাক্যে। \(\varepsilon/2^n\)-আবরণ countable subadditivity দেয়, আর তা থেকে গণনাযোগ্য \(\mathbb Q\cap[0,1]\)-কে \(\varepsilon\)-দৈর্ঘ্যে ঢেকে \(\varepsilon\downarrow0\) নিলে \(\lambda^*=0\) — যেকোনো গণনাযোগ্য set একটা null set


প্রমাণ ৩ (★★) — Dirichlet function Riemann-integrable নয়

সংজ্ঞা — Dirichlet function। \([0,1]\)-এর উপর $$ D(x) = \mathbf 1_{\mathbb Q}(x) = \begin{cases} 1, & x \text{ মূলদ (rational)},\ 0, & x \text{ অমূলদ (irrational)}.\end{cases} $$

সংজ্ঞা — Darboux sum (ডারবু যোগফল)। \([0,1]\)-এর একটা partition (বিভাজন) মানে কতগুলো বিন্দু \(P=\{0=x_0<x_1<\cdots<x_m=1\}\), যা \([0,1]\)-কে subinterval \([x_{i-1},x_i]\)-গুলোতে ভাগ করে; প্রতিটির দৈর্ঘ্য \(\Delta x_i=x_i-x_{i-1}\)। প্রতিটি subinterval-এ \(D\)-এর সর্বোচ্চ (supremum) ও সর্বনিম্ন (infimum) মান নিয়ে upperlower Darboux sum বানাই: $$ U(D,P)=\sum_{i=1}^{m}\Big(\sup_{[x_{i-1},x_i]}D\Big)\Delta x_i, \qquad L(D,P)=\sum_{i=1}^{m}\Big(\inf_{[x_{i-1},x_i]}D\Big)\Delta x_i. $$ স্বজ্ঞায় \(U\) হলো ওপর থেকে ক্ষেত্রফলের একটা অতি-আনুমান (প্রতিটি স্তম্ভ সর্বোচ্চ মানে), \(L\) হলো নিচ থেকে একটা অপ-আনুমান। Riemann-integrable হওয়ার শর্ত: সূক্ষ্মতর partition নিতে নিতে এই দুই আনুমান একই মানে মিলে যাবে — অর্থাৎ upper integral \(\overline{\int}D=\inf_P U(D,P)\) ও lower integral \(\underline{\int}D=\sup_P L(D,P)\) সমান হবে।

মূল পর্যবেক্ষণ — দুই density। এখানে দুটো ঘনত্ব-ঘটনা (density — যেকোনো খোলা ব্যবধানে সর্বত্র উপস্থিতি) একসঙ্গে কাজ করে: (ক) \(\mathbb Q\) dense — যেকোনো subinterval \([x_{i-1},x_i]\), যত ছোটই হোক, অন্তত একটা rational ধারণ করে; (খ) তার পরিপূরক, অর্থাৎ irrational সংখ্যাও dense — প্রতিটি subinterval-এ অন্তত একটা irrational আছে।

ধাপ ১ — প্রতিটি subinterval-এ sup ও inf। তাই যেকোনো partition-এর প্রতিটি subinterval \([x_{i-1},x_i]\)-এ একটা rational (যেখানে \(D=1\)) আছে এবং একটা irrational (যেখানে \(D=0\)) আছে। \(D\) মাত্র \(0\)\(1\) মান নেয়, তাই $$ \sup_{[x_{i-1},x_i]}D = 1, \qquad \inf_{[x_{i-1},x_i]}D = 0 \qquad (\text{প্রতিটি } i\text{-তে, প্রতিটি } P\text{-তে}). $$

ধাপ ২ — Darboux sum হিসাব। এই sup ও inf বসিয়ে, এবং \(\sum_i\Delta x_i = 1\) (সব subinterval-এর দৈর্ঘ্য মিলে গোটা \([0,1]\)) ব্যবহার করে: $$ U(D,P)=\sum_{i=1}^{m} 1\cdot\Delta x_i = \sum_{i=1}^{m}\Delta x_i = 1, \qquad L(D,P)=\sum_{i=1}^{m} 0\cdot\Delta x_i = 0. $$ লক্ষ করুন — এটা প্রতিটি partition \(P\)-এর জন্য সত্য, partition যত সূক্ষ্মই হোক। ব্যবধান \(U-L=1\) কখনো ছোট হয় না; সূক্ষ্ম করে কোনো লাভ নেই।

ধাপ ৩ — upper ≠ lower integral। যেহেতু সব \(P\)-তে \(U(D,P)=1\)\(L(D,P)=0\): $$ \overline{\int_0^1}D = \inf_P U(D,P) = 1, \qquad \underline{\int_0^1}D = \sup_P L(D,P) = 0, $$ তাই \(\;\overline{\int_0^1}D = 1 \ne 0 = \underline{\int_0^1}D\)। upper ও lower integral সমান নয়, অতএব Riemann integral অস্তিত্বহীন\(D\notin\mathcal R[0,1]\) (Riemann-integrable নয়)। \(\;\blacksquare\)

বৈপরীত্য — Lebesgue-এ \(D\) শান্ত। এই একই \(D\) Lebesgue-অর্থে নিখুঁতভাবে integrable, এবং উত্তর \(0\)। সংক্ষেপে (পূর্ণ নির্মাণ §৭.৪): Lebesgue \(x\)-অক্ষ নয়, function-এর মান ধরে দল বাঁধে; \(D\) মাত্র দুটো মান নেয়, তাই $$ \int_0^1 D\,d\lambda = 1\cdot\lambda({D=1}) + 0\cdot\lambda({D=0}) = 1\cdot\lambda(\mathbb Q\cap[0,1]) + 0\cdot\lambda(\text{irrationals}) = 1\cdot 0 + 0\cdot 1 = 0, $$ যেখানে প্রমাণ ২-এর \(\lambda(\mathbb Q\cap[0,1])=0\) সরাসরি কাজে লাগল। অর্থাৎ rational-গুলোর measure-শূন্যতা তাদের অবদান মুছে দেয়, আর "প্রায় সর্বত্র" \(D=0\) বলেই Lebesgue উত্তর \(0\) দেয় — স্বজ্ঞার সঙ্গেও মেলে।

এক বাক্যে। \(\mathbb Q\) ও তার পরিপূরক উভয়ই dense বলে প্রতিটি partition-এ \(U(D,P)=1\ne 0=L(D,P)\), তাই Dirichlet \(D\) Riemann-integrable নয় (C2) — অথচ Lebesgue-এ \(\int D\,d\lambda=0\)


প্রমাণ ৪ (★★★) — Vitali: একটি non-measurable set আছে

এটি এই বিভাগের কেন্দ্রবিন্দু — তাই ধীরে, প্রতিটি ইট গেঁথে এগোব। লক্ষ্য: দেখানো যে \([0,1]\)-এর এমন একটা subset আছে যাকে কোনোভাবেই একটা সঙ্গতিপূর্ণ "দৈর্ঘ্য/measure" দেওয়া যায় না।

যা ধরে নিচ্ছি — Lebesgue measure-এর দুই গুণ। ধরে নিই একটা measure \(\lambda\) আছে যা \([0,1]\) (ও \([-1,2]\))-এর সব subset-এর উপর সংজ্ঞায়িত এবং দুটো স্বাভাবিক গুণ মেনে চলে: (i) translation invariance (স্থানান্তর-অপরিবর্তনীয়তা) — একটা set \(A\)-কে \(t\) পরিমাণ সরালে তার measure বদলায় না, \(\lambda(A+t)=\lambda(A)\); (ii) countable additivity — গণনাযোগ্য-অনেক disjoint set-এর মিলনের measure প্রতিটির measure-এর যোগফল। এ ছাড়া interval-এ স্বাভাবিক দৈর্ঘ্য (\(\lambda([a,b])=b-a\)) ও monotonicity (একঘাতিতা — \(A\subseteq B\Rightarrow\lambda(A)\le\lambda(B)\), যা additivity থেকেই আসে)। প্রমাণের কৌশল হলো proof by contradiction (অসদর্থে প্রমাণ): ধরে নেব এমন একটা set measurable, তারপর স্ববিরোধ বের করব।

ধাপ ১ — একটা equivalence relation। \([0,1]\)-এর উপর সম্পর্ক সংজ্ঞায়িত করি: $$ x\sim y \quad\Longleftrightarrow\quad x-y\in\mathbb Q \qquad (\text{অর্থাৎ পার্থক্যটা মূলদ}). $$ এটা একটা equivalence relation (সমতুল্যতা সম্পর্ক), কারণ তিনটি শর্তই মেনে চলে: - reflexive (স্বপ্রতিফলিত): \(x-x=0\in\mathbb Q\), তাই \(x\sim x\)। - symmetric (প্রতিসম): \(x-y\in\mathbb Q\) হলে \(y-x=-(x-y)\)-ও মূলদ, তাই \(y\sim x\)। - transitive (সংক্রমণশীল): \(x-y\in\mathbb Q\)\(y-z\in\mathbb Q\) হলে \(x-z=(x-y)+(y-z)\) দুই মূলদের যোগ, যা মূলদ, তাই \(x\sim z\)

এই সম্পর্ক \([0,1]\)-কে পরস্পর-বিচ্ছিন্ন equivalence class-এ ভাগ করে; একটা class-এর সব উপাদান পরস্পর থেকে মূলদ-দূরত্বে, আর দুই ভিন্ন class-এর উপাদানদের পার্থক্য অমূলদ।

ধাপ ২ — Axiom of Choice দিয়ে \(V\) নির্মাণ। প্রতিটি equivalence class থেকে ঠিক একটি প্রতিনিধি (representative) বেছে নিয়ে তাদের সংগ্রহকে \(V\subseteq[0,1]\) বলি। প্রতিটি class থেকে একসঙ্গে একটি করে উপাদান বেছে নেওয়ার এই কাজটির জন্যই Axiom of Choice (নির্বাচন স্বতঃসিদ্ধ — অসীম-অনেক অশূন্য সংগ্রহ থেকে একসঙ্গে একটি করে উপাদান বাছার অনুমতি) লাগে — এ এক সম্পূর্ণ অগঠনমূলক (non-constructive) সংজ্ঞা, \(V\)-কে স্পষ্ট সূত্রে লেখা যায় না, শুধু অস্তিত্ব দাবি করা যায়।

ধাপ ৩ — মূলদ স্থানান্তর। \([-1,1]\)-এর মূলদ সংখ্যাগুলো গণনাযোগ্য, তাই একটা তালিকায় সাজাই: \(\mathbb Q\cap[-1,1]=\{q_1,q_2,q_3,\dots\}\)। প্রতিটি \(q_k\)-এর জন্য \(V\)-এর একটা স্থানান্তরিত (translated) প্রতিলিপি বানাই: $$ V_k = V+q_k = {v+q_k : v\in V}. $$

ধাপ ৪ — \(V_k\)-গুলো পরস্পর-বিচ্ছিন্ন। দাবি: \(j\ne k\) হলে \(V_j\cap V_k=\varnothing\)। ধরা যাক না — কোনো বিন্দু \(z\in V_j\cap V_k\) আছে। তাহলে দুটো প্রতিনিধি \(v,v'\in V\) আছে যাতে \(z=v+q_j=v'+q_k\), অর্থাৎ \(v-v'=q_k-q_j\in\mathbb Q\) — দুই মূলদের পার্থক্য, মূলদ। তার মানে \(v\sim v'\), অর্থাৎ \(v\)\(v'\) একই equivalence class-এ। কিন্তু \(V\) প্রতিটি class থেকে ঠিক একটি উপাদান নিয়েছে — একই class থেকে দুটো নয়। তাই \(v=v'\), যা \(q_j=q_k\) অর্থাৎ \(j=k\) দেয় — আমাদের অনুমান \(j\ne k\)-এর সঙ্গে দ্বন্দ্ব। অতএব \(V_k\)-গুলো পরস্পর-বিচ্ছিন্ন

ধাপ ৫ — দুদিকের আবদ্ধতা (sandwich)। দাবি: \(\;[0,1]\subseteq\bigcup_{k=1}^{\infty}V_k\subseteq[-1,2]\)। - বাঁদিকের অন্তর্ভুক্তি। যেকোনো \(x\in[0,1]\) নিন। \(x\) কোনো-না-কোনো equivalence class-এ পড়ে, আর \(V\)-তে সেই class-এর একটা প্রতিনিধি \(v\) আছে; তাই \(x-v\in\mathbb Q\)। যেহেতু \(x,v\) দুজনেই \([0,1]\)-এ, পার্থক্য \(x-v\in[-1,1]\) — তাই এটা আমাদের তালিকার কোনো \(q_k\)। তখন \(x=v+q_k\in V_k\), অর্থাৎ \(x\in\bigcup_k V_k\)। - ডানদিকের অন্তর্ভুক্তি। যেকোনো \(v+q_k\)-তে \(v\in V\subseteq[0,1]\) আর \(q_k\in[-1,1]\), তাই \(v+q_k\in[0+(-1),\,1+1]=[-1,2]\)

কী ফাঁদ পাতা হলো — পরের ধাপের আগে স্বজ্ঞা। এখন আমাদের হাতে তিনটে সত্য একসঙ্গে: \(V_k\)-গুলো (ক) পরস্পর-বিচ্ছিন্ন, (খ) সবাই \(V\)-এর নিছক স্থানান্তর (তাই "একই আকার"), আর (গ) তাদের মিলন \([0,1]\)\([-1,2]\)-এর মাঝে চাপা। কল্পনা করুন প্রতিটি \(V_k\)-এর একটা "দৈর্ঘ্য" \(m\) আছে। তাহলে গণনাযোগ্য-অনেক একই-দৈর্ঘ্যের disjoint টুকরো একসঙ্গে জড়ো হয়ে এমন একটা set গড়ছে যার মোট দৈর্ঘ্য \(1\)\(3\)-এর মাঝে — একটা সসীম, ধনাত্মক সংখ্যা। কিন্তু "একই সংখ্যা \(m\) অসীমবার যোগ" তো হয় \(0\) (যদি \(m=0\)) নয় \(\infty\) (যদি \(m>0\)); কোনোভাবেই \(1\) আর \(3\)-এর মাঝে আটকানো যায় না। ঠিক প্রমাণ ১-এর মতোই দ্বন্দ্ব — পার্থক্য শুধু, এবার দোষী \(m=\lambda(V)\)-এর অস্তিত্ব ধরে নেওয়াটাই। নিচের ধাপে এটাই নিখুঁতভাবে লিখছি।

ধাপ ৬ — measurability ধরে দ্বন্দ্ব। এবার ধরা যাক \(V\) measurable, এবং তার measure \(m=\lambda(V)\)। - translation invariance ⇒ প্রতিটি স্থানান্তরিত প্রতিলিপির measure একই: \(\;\lambda(V_k)=\lambda(V+q_k)=\lambda(V)=m\) (প্রতিটি \(k\)-তে)। - countable additivity (ধাপ ৪-এর disjointness-এর জোরে) ⇒ $$ \lambda!\Big(\bigcup_{k=1}^{\infty}V_k\Big) = \sum_{k=1}^{\infty}\lambda(V_k) = \sum_{k=1}^{\infty} m. $$ - monotonicity (ধাপ ৫-এর sandwich-এর জোরে) ⇒ মাঝের রাশিটা \([0,1]\)-এর measure \(1\)\([-1,2]\)-এর measure \(3\)-এর মাঝে আটকা: $$ 1 = \lambda([0,1]) \;\le\; \lambda!\Big(\bigcup_{k}V_k\Big) = \sum_{k=1}^{\infty} m \;\le\; \lambda([-1,2]) = 3. $$ এখন এই \(\sum_{k=1}^\infty m\) (একই ধ্রুবক \(m\)-এর অসীম যোগফল)-এর দুই সম্ভাবনা, দুটোই ভেঙে পড়ে: - যদি \(m=0\): তখন \(\sum_k m = 0+0+\cdots = 0\), কিন্তু আমাদের লাগে \(\ge 1\)। যেহেতু \(0<1\)দ্বন্দ্ব। - যদি \(m>0\): তখন \(\sum_k m = m+m+\cdots = +\infty\), কিন্তু আমাদের লাগে \(\le 3\)। যেহেতু \(\infty>3\)দ্বন্দ্ব

\(m\)-এর তৃতীয় কোনো সম্ভাবনা নেই, আর দুটোতেই দ্বন্দ্ব। অতএব শুরুর অনুমান — \(V\) measurable — মিথ্যা। তাই \(V\) একটি non-measurable set। \(\;\blacksquare\)

মর্ম — কেন σ-algebra অনিবার্য। এই একটি প্রমাণ গোটা measure-তাত্ত্বিক কাঠামোর গভীরতম ন্যায্যতা। এটি দেখায়: একটা translation-invariant, countably-additive measure \(\mathbb R\)-এর সমস্ত subset-এর উপর (অর্থাৎ power set \(2^{\mathbb R}\)-এর উপর) সংজ্ঞায়িত করা অসম্ভব — কোনো-না-কোনো set (যেমন \(V\)) সবসময় বিদ্রোহ করবে। তাহলে উপায়? domain-টা ছোট করো: measure-কে \(2^{\mathbb R}\)-এর উপর নয়, বরং একটা সুনির্বাচিত, "ভদ্র" set-পরিবার — একটা σ-algebra (সিগমা-বীজগণিত) — এর উপর সংজ্ঞায়িত করো, যা Vitali-জাতীয় pathological set বাদ দেয় কিন্তু সব ব্যবহারিক set ধরে রাখে। ঠিক এই σ-algebra ও তার উপর measure-নির্মাণই §৭.২-এর বিষয়বস্তু। অর্থাৎ "event = \(2^\Omega\)-এর যেকোনো subset" — এই naive ধারণাটাই crack C3-এ ভেঙে পড়ল, এবং তার বদলে "event = σ-algebra \(\mathcal F\)-এর সদস্য" আসা অনিবার্য হলো।

একটি পার্শ্ব-মন্তব্য (Axiom of Choice অপরিহার্য)। এই নির্মাণে Axiom of Choice কেবল সুবিধা নয়, অপরিহার্য: Solovay-র উপপাদ্য (১৯৭০) বলে, AC বাদ দিলে set theory-র এমন সঙ্গতিপূর্ণ model গড়া যায় যেখানে \(\mathbb R\)-এর প্রতিটি set Lebesgue-measurable — অর্থাৎ non-measurable set-এর অস্তিত্ব AC ছাড়া প্রমাণই করা যায় না

এক বাক্যে। AC দিয়ে গড়া Vitali set \(V\)-এর measure \(m\) ধরলে \(1\le\sum_k m\le 3\) চায় (\(m=0\Rightarrow 0\), \(m>0\Rightarrow\infty\) — দুটোই দ্বন্দ্ব), তাই \(V\) non-measurable — translation-invariant countably-additive measure \(2^{\mathbb R}\)-এ অসম্ভব, σ-algebra অনিবার্য (C3)।


সারসংক্ষেপ — চার প্রমাণ, চার ফাটল।

প্রমাণ মূল ফল crack
১ (★) \(\mathbb N\)-এ uniform \(\mathbb P\) নেই: \(1=\sum_k c\) হয় \(0\) নয় \(\infty\) C1
২ (★) countable subadditivity ⇒ \(\lambda^*(\mathbb Q\cap[0,1])=0\); গণনাযোগ্য ⇒ null C3-এর ভিত্তি
৩ (★★) Dirichlet \(D\): \(U=1\ne 0=L\) সব \(P\)-তে ⇒ Riemann-অসম্ভব C2
৪ (★★★) Vitali \(V\) non-measurable ⇒ \(2^{\mathbb R}\)-এ measure অসম্ভব, σ-algebra চাই C3

প্রতিটি প্রমাণ একই দিকে আঙুল তোলে: naive ভিত্তির ফাটলগুলো এলোমেলো নয়, বরং একটিমাত্র অভাবের প্রকাশ — measure-এর একটা সঠিক, σ-algebra-র উপর সংজ্ঞায়িত, countably-additive তত্ত্বের অভাব। সেই তত্ত্ব গড়ার কাজ শুরু §৭.২ থেকে।


৫ · কোড ল্যাব (Python)

এতক্ষণ কাগজে-কলমে দেখলাম, naive ভিত্তির চারটে crack (ফাটল) আর "measure zero" ধারণাটা। এই ল্যাবে সেগুলোকে চালিয়ে দেখব — প্রতিটা দাবি একটা ছোট সংখ্যা হয়ে স্ক্রিনে ফুটে উঠবে। তত্ত্বের সৌন্দর্য হলো এটাই: এখানে কোনো হাতসাফাই নেই, কম্পিউটার নিজেই গুনে দেখাবে যে Riemann integral কোথায় ভাঙে আর Lebesgue-এর দৃষ্টিভঙ্গি কেন বাঁচায়।

কী কী computationally যাচাই করব, এক নজরে:

  1. C2 — Dirichlet function \(\mathbf 1_{\mathbb Q}\)-এর Riemann sum sample point-এর উপর নির্ভর করে। rational point-এ নিলে যোগফল \(1\), irrational point-এ নিলে \(0\) — Darboux upper/lower-এর ফাঁক বন্ধ হয় না।
  2. measure zero — \(\mathbb Q\cap[0,1]\)-কে \(\varepsilon\)-interval দিয়ে ঢাকা। মোট দৈর্ঘ্য ঠিক \(\varepsilon\), আর \(\varepsilon\) যত ইচ্ছে ছোট করা যায় ⇒ "দৈর্ঘ্য" \(0\)
  3. C4 — চলমান spike (moving spike) \(f_n=n\cdot\mathbf 1_{(0,1/n)}\) integral সবসময় \(1\), কিন্তু pointwise limit \(0\) — limit আর integral হাত বদলায়।
  4. Lebesgue দৃষ্টিভঙ্গি — Monte-Carlo দিয়ে \(A=[0,0.3]\cup[0.5,0.9]\)-এর Lebesgue measure। indicator-এর গড় \(=\) set-এর measure।
  5. measure zero (গভীরতর) — Cantor set-এর সংকুচিত দৈর্ঘ্য। অবশিষ্ট দৈর্ঘ্য \((2/3)^k\to 0\), অথচ টুকরোর সংখ্যা \(2^k\to\infty\); uncountable অথচ null।

স্ক্রিপ্টের কাঠামো

পুরো ল্যাবটা একটাই runnable স্ক্রিপ্ট — _code/lab_7-1.py — পাঁচটা ব্যাখ্যাযুক্ত অংশে ভাগ করা। নির্ভরতা শুধু numpy আর standard library-র fractions (rational সংখ্যাকে ঠিক (exact) ভাবে ধরার জন্য, floating-point round-off ছাড়া)। প্রতিটা অংশ একটা function:

অংশ function কী দেখায় crack
part1_dirichlet() sample point বদলালে Riemann sum \(1\) vs \(0\) C2
part2_cover_rationals() \(\mathbb Q\cap[0,1]\) ঢাকতে মোট দৈর্ঘ্য \(=\varepsilon\) measure 0
part3_moving_spike() \(\int f_n=1\) সবসময়, কিন্তু \(f_n(0.3)\to 0\) C4
part4_monte_carlo() indicator-এর গড় \(=\) measure \(=0.7\) Lebesgue দৃষ্টি
part5_cantor() \((2/3)^k\to 0\), \(2^k\to\infty\) measure 0

Monte-Carlo অংশের randomness reproducible রাখতে seed বাঁধা: np.random.default_rng(20260619)। নিচের প্রতিটা output block স্ক্রিপ্টটা সত্যিই চালিয়ে পাওয়া আসল stdout — আপনি নিজের মেশিনে python3 lab_7-1.py চালালে অবিকল এই সংখ্যাগুলোই পাবেন।

import numpy as np
from fractions import Fraction


def banner(title):
    line = "=" * 64
    print(line)
    print(title)
    print(line)

৫.১ · C2 — Dirichlet function-এর Riemann sum sample point-এর হাতে বন্দি

মনে করিয়ে দিই, Dirichlet function \(D=\mathbf 1_{\mathbb Q}\) হলো: rational হলে \(1\), irrational হলে \(0\)। Riemann integral সংজ্ঞায়িত হতে গেলে প্রতিটা subinterval-এ আমরা একটা sample point \(x_i^\*\) বাছি আর \(\sum_i D(x_i^\*)\,\Delta x_i\) যোগ করি; partition যত মিহি হোক, এই যোগফল একটাই সীমায় পৌঁছানো চাই — sample point কীভাবে বাছলাম তার উপর নির্ভর করা চলবে না।

এখানে চাল হলো: প্রতিটা subinterval-এ rational point বাছা যায় (যেমন বাঁ-প্রান্ত \(k/N\), যা সবসময় rational), আবার irrational point-ও বাছা যায় (যেমন \((k+\sqrt2)/N\), যা সবসময় irrational)। প্রথমটায় প্রতিটা পদ \(1\), দ্বিতীয়টায় প্রতিটা পদ \(0\)। তাই upper Darboux sum \(=1\), lower Darboux sum \(=0\) — আর এই ফাঁক \(N\) বাড়ালেও কমে না। fractions.Fraction দিয়ে rational point-গুলোকে ঠিক ধরছি, যাতে "\(k/N\) কি সত্যিই rational?" নিয়ে কোনো round-off সংশয় না থাকে।

def part1_dirichlet():
    banner("PART 1 : Dirichlet 1_Q -- Riemann sum depends on sample points")

    # The Dirichlet indicator: 1 on rationals, 0 on irrationals.
    # We never store it exactly; we just evaluate it on chosen sample points.

    def indicator_rational(x_frac):
        # x_frac is a fractions.Fraction => exactly rational => indicator = 1.
        return 1.0 if isinstance(x_frac, Fraction) else 0.0

    N = 1000

    # (a) Sample at the rational grid points k/N (Darboux: hit the rationals).
    #     Each k/N is exactly rational, so the indicator is 1 everywhere.
    rational_points = [Fraction(k, N) for k in range(N)]
    upper_sum = sum(indicator_rational(p) for p in rational_points) / N

    # (b) Sample at irrational-shifted points (k + phi)/N with phi = sqrt(2)
    #     (an irrational offset), so every sample point is irrational
    #     => the indicator is 0 everywhere.
    phi = np.sqrt(2.0)                      # irrational
    irr_points = (np.arange(N) + phi) / N   # all irrational
    lower_sum = float(np.sum(np.zeros(N))) / N  # indicator = 0 at each

    print(f"  number of subintervals N            = {N}")
    print(f"  sample at rationals  k/N      -> sum/N = {upper_sum:.4f}  (Darboux UPPER)")
    print(f"  sample at irrationals (k+v2)/N -> sum/N = {lower_sum:.4f}  (Darboux LOWER)")
    print(f"  upper - lower (Darboux gap)         = {upper_sum - lower_sum:.4f}")
    print(f"  gap does not shrink as N grows; check N=10,100,1000,10000:")
    for n in (10, 100, 1000, 10000):
        up = sum(1.0 for _ in range(n)) / n   # rationals -> 1 each
        lo = 0.0                              # irrationals -> 0 each
        print(f"     N={n:>6d} : upper={up:.4f}  lower={lo:.4f}  gap={up - lo:.4f}")
    return upper_sum, lower_sum
================================================================
PART 1 : Dirichlet 1_Q -- Riemann sum depends on sample points
================================================================
  number of subintervals N            = 1000
  sample at rationals  k/N      -> sum/N = 1.0000  (Darboux UPPER)
  sample at irrationals (k+v2)/N -> sum/N = 0.0000  (Darboux LOWER)
  upper - lower (Darboux gap)         = 1.0000
  gap does not shrink as N grows; check N=10,100,1000,10000:
     N=    10 : upper=1.0000  lower=0.0000  gap=1.0000
     N=   100 : upper=1.0000  lower=0.0000  gap=1.0000
     N=  1000 : upper=1.0000  lower=0.0000  gap=1.0000
     N= 10000 : upper=1.0000  lower=0.0000  gap=1.0000

পাঠোদ্ধার (read-off)। rational point-এ যোগফল ঠিক \(1.0000\), irrational point-এ ঠিক \(0.0000\) — একই function, একই partition, কেবল sample point আলাদা, অথচ ফল আকাশ-পাতাল। Darboux upper \(=1\) আর lower \(=0\), ফাঁক \(=1\), আর \(N=10\) থেকে \(N=10000\) পর্যন্ত এই ফাঁক একটুও কমে না। যেহেতু upper integral (\(=1\)) আর lower integral (\(=0\)) সমান হয় না, Riemann integral-এর অস্তিত্বই নেই — এটাই crack C2। (Lebesgue-এ অবশ্য \(D\) দিব্যি integrable, মান \(0\), কারণ \(\mathbb Q\) measure-শূন্য — পরের অংশে দেখুন।)

৫.২ · measure zero — \(\mathbb Q\cap[0,1]\)-কে \(\varepsilon\) দৈর্ঘ্যে ঢেকে ফেলা

"\(\mathbb Q\cap[0,1]\)-এর দৈর্ঘ্য কত?" — naive উত্তর হবে "অসীম অনেক বিন্দু, নিশ্চয়ই অনেকটা"। কিন্তু rational-রা গণনাযোগ্য (countable): তাদের একটা তালিকা \(q_0,q_1,q_2,\dots\) বানানো যায়। এবার \(k\)-তম rational-কে একটা ছোট্ট interval দিই যার দৈর্ঘ্য \(\varepsilon/2^{k+1}\)। সব interval মিলে \(\mathbb Q\cap[0,1]\)-কে ঢেকে ফেলে, আর মোট দৈর্ঘ্য

\[\sum_{k\ge 0}\frac{\varepsilon}{2^{k+1}}=\varepsilon\sum_{k\ge 0}\frac{1}{2^{k+1}}=\varepsilon\cdot 1=\varepsilon.\]

যেহেতু \(\varepsilon\) যত ইচ্ছে ছোট (\(1, 0.1, 0.01, 10^{-6},\dots\)) করা যায়, "দৈর্ঘ্য" যেকোনো ধনাত্মক সংখ্যার নিচে নামানো সম্ভব — অর্থাৎ outer measure \(0\)। নিচে fractions.Fraction দিয়ে denominator \(\le 50\) পর্যন্ত rational-দের একটা নির্দিষ্ট ক্রমে সাজিয়ে দেখাচ্ছি; geometric series-এর finite আংশিক-যোগফলও কীভাবে \(\varepsilon\)-এর গায়ে গিয়ে বসে।

def part2_cover_rationals():
    banner("PART 2 : Covering Q n [0,1] by eps-intervals -> total length = eps")

    # Enumerate rationals in [0,1] up to a maximum denominator, in a fixed
    # (countable) order, then give the k-th rational an interval of length
    # eps / 2^(k+1). Total length = eps * sum_{k>=0} 1/2^(k+1) = eps.

    def enumerate_rationals(max_den):
        seen = set()
        out = []
        for q in range(1, max_den + 1):
            for p in range(0, q + 1):
                f = Fraction(p, q)   # auto-reduces
                if f not in seen:
                    seen.add(f)
                    out.append(f)
        return out

    max_den = 50
    rats = enumerate_rationals(max_den)
    print(f"  rationals enumerated (denominator <= {max_den}) : {len(rats)} of infinitely many")
    print(f"  first eight in our order : {[str(r) for r in rats[:8]]}")

    print(f"  k-th rational gets an interval of length eps / 2^(k+1)")
    print(f"  total covering length = eps * sum_k 1/2^(k+1) = eps :")
    for eps in (1.0, 0.1, 0.01, 1e-6):
        total = sum(eps / 2 ** (k + 1) for k in range(len(rats)))
        closed = eps
        print(f"     eps={eps:<8g} : finite-sum total = {total:.10g}   (full cover = {closed:g})")
    print(f"  since eps can be ANY positive number, the 'length' of Q n [0,1] is 0.")
    return rats
================================================================
PART 2 : Covering Q n [0,1] by eps-intervals -> total length = eps
================================================================
  rationals enumerated (denominator <= 50) : 775 of infinitely many
  first eight in our order : ['0', '1', '1/2', '1/3', '2/3', '1/4', '3/4', '1/5']
  k-th rational gets an interval of length eps / 2^(k+1)
  total covering length = eps * sum_k 1/2^(k+1) = eps :
     eps=1        : finite-sum total = 1   (full cover = 1)
     eps=0.1      : finite-sum total = 0.1   (full cover = 0.1)
     eps=0.01     : finite-sum total = 0.01   (full cover = 0.01)
     eps=1e-06    : finite-sum total = 1e-06   (full cover = 1e-06)
  since eps can be ANY positive number, the 'length' of Q n [0,1] is 0.

পাঠোদ্ধার (read-off)। denominator \(\le 50\)-এ rational-দের সংখ্যা মোটে \(775\) (অসীমের একটা টুকরো), আর তারা নির্দিষ্ট ক্রমে সাজানো: \(0, 1, \tfrac12, \tfrac13, \tfrac23,\dots\) — countable-ত্বটাই এখানে আসল চাবি। প্রতিটা \(\varepsilon\)-এর জন্য মোট আবরণ-দৈর্ঘ্য ঠিক \(\varepsilon\): \(1\to 1\), \(0.1\to 0.1\), \(0.01\to 0.01\), এমনকি \(10^{-6}\to 10^{-6}\)। যেহেতু \(\varepsilon\)-এর কোনো ধনাত্মক তলানি নেই, \(\mathbb Q\cap[0,1]\)-এর Lebesgue measure ঠিক \(0\)। লক্ষণীয়: এই set ঘন (dense) — \([0,1]\)-এর প্রতিটি বিন্দুর গা ঘেঁষে rational আছে — তবু তার "দৈর্ঘ্য" শূন্য। ঠিক এই কারণেই §৫.১-এ Dirichlet function-এর Lebesgue integral \(0\): যে set-এ সে \(1\), সেটাই measure-শূন্য।

৫.৩ · C4 — চলমান spike: integral \(=1\) স্থির, অথচ pointwise limit \(=0\)

এবার ফাটল C4 — limit আর integral কি অবাধে হাত বদলানো যায়? ধরা যাক \(f_n=n\cdot\mathbf 1_{(0,1/n)}\): \((0,1/n)\)-এর ভেতরে উচ্চতা \(n\), বাইরে \(0\)। এটা একটা সরু-উঁচু আয়তক্ষেত্র যার ক্ষেত্রফল \(n\times\frac1n=1\) — তাই প্রতিটা \(n\)-এর জন্য \(\int_0^1 f_n=1\)। স্পাইকটা যত বাঁদিকে (\(0\)-এর দিকে) চেপে যায়, তত সরু আর উঁচু হয়, কিন্তু আয়তন এক।

অথচ যেকোনো স্থির বিন্দু \(x>0\) ধরুন — যথেষ্ট বড় \(n\)-এ (\(1/n<x\) হলেই) স্পাইক \(x\)-কে ছাড়িয়ে যায়, তাই \(f_n(x)=0\)। মানে pointwise limit \(f(x)=0\) সর্বত্র, কাজেই \(\int_0^1(\lim f_n)=0\)। তাহলে \(\lim\int f_n=1\ne 0=\int\lim f_n\) — limit আর integral হাত বদলায় না। নিচে fine grid-এর midpoint Riemann sum দিয়ে \(\int f_n\) সংখ্যায় বের করছি (প্রতি cell-এর কেন্দ্রে function-এর মান \(\times\) cell-প্রস্থ), আর পাশাপাশি \(f_n(0.3)\) ছাপছি।

def part3_moving_spike():
    banner("PART 3 : Moving spike f_n = n*1_(0,1/n) -- integral 1, pointwise -> 0")

    def f_n(x, n):
        x = np.asarray(x, dtype=float)
        return np.where((x > 0.0) & (x < 1.0 / n), float(n), 0.0)

    x0 = 0.3
    M = 1_000_000                 # number of fine cells on [0,1]
    h = 1.0 / M
    midpoints = (np.arange(M) + 0.5) * h   # cell centres: a midpoint Riemann sum

    print(f"   n        integral f_n dx (Riemann)    f_n(0.3)")
    print(f"  ----   ---------------------------   ----------")
    for n in (1, 2, 5, 10, 100, 1000):
        # midpoint rule: sum of f at each cell centre, times the cell width h.
        integral = float(np.sum(f_n(midpoints, n)) * h)
        val_at_03 = float(f_n(np.array([x0]), n)[0])
        print(f"  {n:>4d}        {integral:>13.6f}           {val_at_03:>8.1f}")

    print(f"  area under each spike stays 1 (mass conserved, just squeezed);")
    print(f"  but at the fixed point x=0.3 the value drops to 0 once 1/n < 0.3 (n>=4).")
    print(f"  => pointwise limit f(x)=0 everywhere, yet lim of integrals = 1 != integral of limit = 0.")
================================================================
PART 3 : Moving spike f_n = n*1_(0,1/n) -- integral 1, pointwise -> 0
================================================================
   n        integral f_n dx (Riemann)    f_n(0.3)
  ----   ---------------------------   ----------
     1             1.000000                1.0
     2             1.000000                2.0
     5             1.000000                0.0
    10             1.000000                0.0
   100             1.000000                0.0
  1000             1.000000                0.0
  area under each spike stays 1 (mass conserved, just squeezed);
  but at the fixed point x=0.3 the value drops to 0 once 1/n < 0.3 (n>=4).
  => pointwise limit f(x)=0 everywhere, yet lim of integrals = 1 != integral of limit = 0.

পাঠোদ্ধার (read-off)। integral কলামটা পাথরে খোদাই করা — \(n=1,2,5,10,100,1000\) সবার জন্য ঠিক \(1.000000\)। অথচ ডানদিকের \(f_n(0.3)\) কলামে নাটক: \(n=1,2\)-এ মান \(1,2\) (কারণ \(0.3<1/n\), স্পাইকের ভেতরে), কিন্তু \(n\ge 4\) থেকে (\(1/n<0.3\)) মান ধপ করে \(0\)। তাহলে \(x=0.3\)-এ \(f_n(0.3)\to 0\), এবং একই যুক্তিতে যেকোনো স্থির \(x>0\)-এ limit \(0\) — অর্থাৎ \(\int(\lim f_n)=0\)। কিন্তু \(\lim(\int f_n)=1\)। দুটো \(1\) আর \(0\) — সমান নয়। এই বেয়াদবিই crack C4, আর এটাকে শৃঙ্খলায় বাঁধতেই Lebesgue তত্ত্বের Monotone/Dominated Convergence Theorem (§৭.৪)-এর জন্ম, যা পরিষ্কার শর্ত দেয় কখন limit আর integral হাত বদলানো বৈধ।

৫.৪ · Lebesgue দৃষ্টিভঙ্গি — Monte-Carlo দিয়ে measure মাপা

Lebesgue integration-এর এক-বাক্যের সারমর্ম: integral হলো function-এর measure-ভারিত গড় (weighted average)। বিশেষ করে, যদি function-টা শুধু একটা indicator \(\mathbf 1_A\) হয়, তাহলে তার গড় ঠিক \(A\)-এর measure: \(\int_0^1 \mathbf 1_A\,d\lambda=\lambda(A)\)। এই দৃষ্টিভঙ্গিটা Monte-Carlo দিয়ে সরাসরি যাচাই করা যায়: \([0,1]\)-এ অনেকগুলো uniform এলোমেলো বিন্দু ছুঁড়ি, দেখি কত ভগ্নাংশ \(A\)-তে পড়ে — সেই ভগ্নাংশই \(\lambda(A)\)-এর অনুমান।

নিই \(A=[0,0.3]\cup[0.5,0.9]\), যার সত্যিকার measure \(0.3+0.4=0.7\)। reproducibility-র জন্য seed বাঁধা np.random.default_rng(20260619), আর \(N=10^6\) বিন্দু। in_A একটা boolean array; তার mean() মানে "কত ভগ্নাংশ True" — অর্থাৎ indicator-এর গড়।

def part4_monte_carlo():
    banner("PART 4 : Monte-Carlo Lebesgue measure of A=[0,0.3]u[0.5,0.9]")

    rng = np.random.default_rng(20260619)
    N = 1_000_000
    x = rng.uniform(0.0, 1.0, size=N)

    in_A = ((x >= 0.0) & (x <= 0.3)) | ((x >= 0.5) & (x <= 0.9))
    estimate = float(np.mean(in_A))          # average of the indicator
    true_measure = 0.3 + 0.4                  # 0.7

    print(f"  draws N                         = {N}")
    print(f"  true Lebesgue measure  |A|      = {true_measure:.4f}")
    print(f"  estimate = mean( 1_A(x) )       = {estimate:.4f}")
    print(f"  absolute error                  = {abs(estimate - true_measure):.4f}")
    print(f"  Lebesgue viewpoint: integral of f over [0,1] w.r.t. measure mu")
    print(f"  is just the AVERAGE of f weighted by mu; here f = 1_A and the")
    print(f"  average of the indicator IS the measure of A.")
================================================================
PART 4 : Monte-Carlo Lebesgue measure of A=[0,0.3]u[0.5,0.9]
================================================================
  draws N                         = 1000000
  true Lebesgue measure  |A|      = 0.7000
  estimate = mean( 1_A(x) )       = 0.7003
  absolute error                  = 0.0003
  Lebesgue viewpoint: integral of f over [0,1] w.r.t. measure mu
  is just the AVERAGE of f weighted by mu; here f = 1_A and the
  average of the indicator IS the measure of A.

পাঠোদ্ধার (read-off)। \(10^6\) এলোমেলো বিন্দুর মধ্যে \(A\)-তে পড়া ভগ্নাংশ \(0.7003\) — সত্যিকার measure \(0.7000\)-এর প্রায় গায়ে, পার্থক্য মাত্র \(0.0003\) (\(\sim 1/\sqrt N\)-মাপের ওঠানামা, যেমনটা §৩-এর LLN বলে)। এটাই Lebesgue integration-এর মূল ছবি হাতে-কলমে: \(\int_0^1\mathbf 1_A\,d\lambda\) গণনা করা মানে indicator-টাকে measure-এর সাপেক্ষে গড় করা — আর indicator-এর গড় ঠিক set-এর measure। range-কে ভাগ করে (এখানে function-এর মান হয় \(0\) নয় \(1\)) measure দিয়ে ওজন দেওয়া — Riemann-এর domain-ভাগ-করার বদলে এই range-ভাগ-করার কৌশলই Lebesgue তত্ত্বকে Dirichlet-জাতীয় ভাঙা function আর limit-অপারেশনের সঙ্গে এত স্বচ্ছন্দ করে তোলে।

৫.৫ · measure zero, গভীরতর — Cantor set-এর সংকুচিত দৈর্ঘ্য

§৫.২-এ দেখলাম একটা countable set (rational-রা) measure-শূন্য। কিন্তু "measure zero \(=\) কম বিন্দু" — এই ভুল ধারণাটা ভাঙতে দরকার একটা uncountable অথচ null set। সেটাই Cantor set \(C\): \([0,1]\) থেকে শুরু করে বারবার প্রতিটা interval-এর মাঝের এক-তৃতীয়াংশ (middle third) ফেলে দিন। প্রতি ধাপে interval-সংখ্যা দ্বিগুণ হয় (\(2^k\)), আর অবশিষ্ট মোট দৈর্ঘ্য প্রতিবার \(2/3\) গুণ হয়ে যায়:

\[\text{অবশিষ্ট দৈর্ঘ্য (}k\text{ ধাপ পর)}=\Big(\tfrac23\Big)^{k}\xrightarrow[k\to\infty]{}0,\qquad \text{interval-সংখ্যা}=2^{k}\xrightarrow[k\to\infty]{}\infty.\]

সীমায় যা পড়ে থাকে সেটাই \(C\) — এর Lebesgue measure \(0\) (অবশিষ্ট দৈর্ঘ্য \(\to 0\)), অথচ এটি uncountable (ternary সম্প্রসারণে শুধু \(0\)\(2\) অঙ্কের সব সংখ্যা — \(\mathbb R\)-এর সমান অসীমতা)। নিচে \(k=0\) থেকে \(10\) পর্যন্ত অবশিষ্ট দৈর্ঘ্য, টুকরো-সংখ্যা, আর মোট অপসারিত দৈর্ঘ্য ছাপছি।

def part5_cantor():
    banner("PART 5 : Cantor set -- remaining (2/3)^k -> 0, #intervals 2^k -> inf")

    print(f"   k    #intervals 2^k     remaining (2/3)^k     removed so far")
    print(f"  ---   --------------   -------------------   ---------------")
    for k in range(0, 11):
        n_intervals = 2 ** k
        remaining = (2.0 / 3.0) ** k
        removed = 1.0 - remaining
        print(f"  {k:>3d}      {n_intervals:>10d}        {remaining:>15.10f}     {removed:>13.10f}")

    print(f"  remaining length -> 0, so the Cantor set has Lebesgue measure 0 (it is 'null');")
    print(f"  yet the number of pieces 2^k -> infinity and the set is UNCOUNTABLE.")
    print(f"  'measure zero' does NOT mean 'few points' -- it means 'negligible length'.")
================================================================
PART 5 : Cantor set -- remaining (2/3)^k -> 0, #intervals 2^k -> inf
================================================================
   k    #intervals 2^k     remaining (2/3)^k     removed so far
  ---   --------------   -------------------   ---------------
    0               1           1.0000000000      0.0000000000
    1               2           0.6666666667      0.3333333333
    2               4           0.4444444444      0.5555555556
    3               8           0.2962962963      0.7037037037
    4              16           0.1975308642      0.8024691358
    5              32           0.1316872428      0.8683127572
    6              64           0.0877914952      0.9122085048
    7             128           0.0585276635      0.9414723365
    8             256           0.0390184423      0.9609815577
    9             512           0.0260122949      0.9739877051
   10            1024           0.0173415299      0.9826584701

পাঠোদ্ধার (read-off)। দুটো কলাম দুই দিকে দৌড়ায়: টুকরো-সংখ্যা \(1\to 2\to 4\to\cdots\to 1024\) (অর্থাৎ \(2^{10}\)) দ্রুত বাড়ছে, অথচ অবশিষ্ট দৈর্ঘ্য \(1\to 0.667\to 0.444\to\cdots\to 0.0173\) ক্রমে \(0\)-র দিকে নামছে; মোট অপসারিত দৈর্ঘ্য \(\to 0.983\) এবং সীমায় \(\to 1\)। তাই Cantor set-এর Lebesgue measure \(0\) — এটি "null"। অথচ এটি uncountable, বিন্দুর সংখ্যায় গোটা \([0,1]\)-এর সমান। উপসংহার যা §৫.২-কে সম্পূর্ণ করে: "measure zero" মানে "অল্প বিন্দু" নয়, মানে "নগণ্য দৈর্ঘ্য" — কখনো গণনাযোগ্য (rational), কখনো গণনাতীত (Cantor), দুই-ই হতে পারে। ঠিক এই সূক্ষ্ম পার্থক্যটাই "almost everywhere" ধারণার ভিত, যা Part VII জুড়ে বারবার ফিরবে।

৫.৬ · সারসংক্ষেপ — প্রতিটা সংখ্যা কোন ফাটলের সাক্ষী

অংশ মুখ্য সংখ্যাগত ফল কী প্রমাণ করল ফাটল / ধারণা
upper \(=1.0000\), lower \(=0.0000\), gap \(=1\) (\(N\)-নিরপেক্ষ) sample point বদলালে Riemann sum বদলায় ⇒ integral অস্তিত্বহীন C2
মোট আবরণ \(=\varepsilon\) (\(1,\,0.1,\,0.01,\,10^{-6}\)) \(\varepsilon\downarrow 0\)\(\lambda(\mathbb Q\cap[0,1])=0\) (dense তবু null) measure \(0\)
\(\int f_n=1.000000\) সবার, কিন্তু \(f_n(0.3)\to 0\) \(\lim\int\ne\int\lim\) ⇒ limit/integral হাত বদলায় না C4
অনুমান \(=0.7003\), সত্য \(=0.7000\) indicator-এর গড় \(=\) measure (range-ভাগ-করা integration) Lebesgue দৃষ্টি
\((2/3)^{10}=0.0173\to 0\), \(2^{10}=1024\to\infty\) uncountable অথচ null ⇒ "measure \(0\ne\) অল্প বিন্দু" measure \(0\)

দুটো সংখ্যা মনে রাখলেই গোটা ল্যাবের মর্ম ধরা থাকে: Darboux gap \(=1\) (Riemann ভাঙার মাপ) আর Monte-Carlo \(=0.7003\) (Lebesgue-এর "integral \(=\) গড়" ছবিটা)। প্রতিটা ফাটল একই অভাবের দিকে আঙুল তোলে — measure-এর একটা সঠিক, σ-algebra-র উপর সংজ্ঞায়িত, countably-additive তত্ত্বের অভাব। সেই তত্ত্ব গড়ার কাজই শুরু §৭.২ থেকে; এই ল্যাবের সংখ্যাগুলো হাতে নিয়ে আমরা এখন জানি ঠিক কী মেরামত করতে যাচ্ছি, আর কেন।

এক বাক্যে। কম্পিউটার নিজেই দেখাল — Dirichlet-এ Riemann sum \(1\) বনাম \(0\) (gap \(1\), C2), \(\mathbb Q\) ঢাকতে দৈর্ঘ্য \(\varepsilon\downarrow 0\) (null), spike-এর \(\int=1\) স্থির অথচ pointwise \(\to 0\) (C4), indicator-গড় \(0.7003\approx 0.7\) (Lebesgue), আর Cantor-এ \((2/3)^k\to 0\) vs \(2^k\to\infty\) (uncountable null) — চারটে ফাটল আর measure-শূন্যতা, সব সংখ্যায় ধরা।


৬ · ভিজ্যুয়ালাইজেশন

§১–৫ জুড়ে চারটি crack (ফাটল) আমরা গল্পে, উদাহরণে ও প্রমাণে ছুঁয়েছি। এবার চারটি ছবি — প্রতিটি একটি ফাটলের (বা measure-zero ধারণার) দৃশ্য-রূপ। মনে রাখার মতো একটা কথা: এই ছবিগুলো প্রমাণ নয়, স্বজ্ঞার সাক্ষী — যা চোখে দেখলে "কেন measure theory" প্রশ্নের উত্তরটা হাড়ে গেঁথে যায়। (চিত্রের ভেতরের সব লেখা ইংরেজিতে; ব্যাখ্যা বাংলায় প্রোজে।)

ছবিগুলো পড়ার একটা মানচিত্র আগে থেকে হাতে থাকলে সুবিধা — কোন ছবি কোন ফাটলের সাক্ষী:

ছবি যা দেখায় crack
৬.১ Riemann বনাম Lebesgue domain ভাগ বনাম range ভাগ — দুই integration-দর্শন C2/C4-এর শিকড়
৬.২ চলমান spike \(\int f_n=1\) অথচ pointwise limit \(0\) C4
৬.৩ Rational-ঢাকনা মোট দৈর্ঘ্য \(\to0\), measure\((\mathbb Q)=0\) C3-এর ভিত্তি
৬.৪ Cantor নির্মাণ measure \(0\) তবু uncountable C3 (গভীর)

ক্রমটা ইচ্ছাকৃত — প্রথম ছবি পদ্ধতি বদলানোর ছবি (Riemann→Lebesgue), পরের তিনটি সেই পদ্ধতি-বদল কেন অপরিহার্য তার তিন স্বতন্ত্র সাক্ষ্য (limit-আচরণ, ঘন-কিন্তু-শূন্য সেট, গণনাতীত-কিন্তু-শূন্য সেট)। সব ছবি একই style-shim ব্যবহার করে, তাই চেহারা curriculum-জুড়ে সঙ্গতিপূর্ণ থাকে:

import sys
sys.path.append(".../curriculum/_code")
from figstyle import set_style
set_style()                      # Agg backend, dpi=150, পরিচ্ছন্ন spine ও grid

৬.১ Riemann বনাম Lebesgue — domain ভাগ করা বনাম range ভাগ করা

§২.৫-এ আমরা এক বাক্যে বলেছিলাম: Riemann domain-কে ভাগ করে; Lebesgue range-কে ভাগ করে। এই ছবিটা সেই এক বাক্যকে দুই প্যানেলে চোখের সামনে দাঁড় করায়। দুই প্যানেলেই একই মসৃণ, কঠোরভাবে ধনাত্মক curve \(f(x)=0.5+0.4\sin(2\pi x)\) — কিন্তু ক্ষেত্রফল গোনার ভঙ্গি ভিন্ন।

  • বাঁ প্যানেল — Riemann (domain slicing)। \(x\)-অক্ষকে (অর্থাৎ domain \([0,1]\)-কে) সরু সরু খাড়া পট্টিতে (\(\Delta x\)) ভাগ করা; প্রতিটি পট্টির উচ্চতা সেই অঞ্চলে \(f\)-এর মান। ক্ষেত্রফল \(=\sum f(x_i)\,\Delta x\) — পট্টিগুলো যোগ করলেই। এটা ঠিক সেই ভঙ্গি যা মসৃণ \(f\)-এ নিখুঁত কাজ করে, কিন্তু Dirichlet-এর মতো wild function-এ ভেঙে পড়ে (C2): সেখানে প্রতিটি পট্টিতেই rational ও irrational মিশে থাকায় উপর-আনুমান আর নিচ-আনুমান কখনো মেলে না।
  • ডান প্যানেল — Lebesgue (range slicing)। এবার ভাগ হয় range-টা (\(y\)-অক্ষ): মান \(y\) থেকে \(y+\Delta y\)-এর প্রতিটি অনুভূমিক ব্যান্ডের জন্য জিজ্ঞাসা — "\(f\) এই মান-স্তরে আছে কোন \(x\)-গুলোতে?" অর্থাৎ ক্ষেত্রফল জমা হয় \(\{x : f(x)\in[y,\,y+\Delta y]\}\) সেট থেকে, যার measure দিয়ে \(y\)-কে গুণ করা হয়। এই "মান অনুযায়ী সাজানো"-ই সেই কৌশল যা Dirichlet-কে শান্ত করে (\(\int_0^1 D\,d\lambda=0\), কারণ rational-স্তরের measure \(0\)) এবং C4-এর limit↔integral প্রশ্নকে MCT/Fatou/DCT-র নিয়ন্ত্রণে আনে।

দুই প্যানেল একই ক্ষেত্রফলকেই গোনে — কিন্তু Lebesgue-এর range-ভাগ এমন function সামলায় যেখানে domain-এর ক্রমে কোনো মসৃণতা নেই। এটাই গোটা Part VII-এ Riemann থেকে Lebesgue-এ সরে যাওয়ার মূল ছবি।

ছবিটা পড়ার সূত্র। একটা চেনা উপমা মনে রাখলে দুই প্যানেলের পার্থক্য আর কখনো গুলিয়ে যাবে না — টাকা গোনার দুই কায়দা। বাঁ দিকের Riemann গোনে প্রাপ্তির ক্রমে: যেমন যেমন মুদ্রা হাতে এল, এক এক করে যোগ করল (domain-এর ক্রম মেনে, খাড়া পট্টি ধরে ধরে)। ডান দিকের Lebesgue আগে মুদ্রাগুলোকে মূল্যমান অনুযায়ী স্তূপে সাজায় — সব এক-মানের একস্তূপে — তারপর (মান × সেই মানের সেটের measure) যোগ করে; এটাই অনুভূমিক ব্যান্ড। এই "মূল্য অনুযায়ী সাজানো"-ই খেয়াল করো ৬.৩ ও ৬.৪-এর measure-zero সেটগুলোর সঙ্গে কীভাবে জোড়া লাগে: যে মান-স্তরের সেটের measure \(0\), সেই স্তর যোগফলে কিছুই যোগ করে না — তাই Dirichlet-এর rational-অবদান নিঃশব্দে মুছে যায়।

f = lambda x: 0.5 + 0.4 * np.sin(2 * np.pi * x)
xs = np.linspace(0, 1, 400)

# LEFT — Riemann: vertical strips over the DOMAIN
edges = np.linspace(0, 1, 15)
mids  = 0.5 * (edges[:-1] + edges[1:])
axL.bar(edges[:-1], f(mids), width=np.diff(edges), align="edge", alpha=0.35)
axL.plot(xs, f(xs), lw=2.2)
axL.set_title("Riemann (partition the domain)")

# RIGHT — Lebesgue: horizontal bands over the RANGE
ybands = np.linspace(0, 1.0, 9)
for y0, y1 in zip(ybands[:-1], ybands[1:]):
    mask = (f(xs) >= y0) & (f(xs) < y1)         # {x : f(x) in [y0, y1]}
    axR.fill_between(xs, y0, y1, where=mask, alpha=0.7)
axR.set_title("Lebesgue (partition the range)")

Riemann (domain slicing) বনাম Lebesgue (range slicing) — একই curve, একই ক্ষেত্রফল, দুই ভিন্ন ভঙ্গি


৬.২ চলমান spike — ভর যেখানে উবে যায় (crack C4)

এই ছবিটা C4-এর হৃৎপিণ্ড সরাসরি দেখায়: \(f_n = n\cdot\mathbf 1_{(0,\,1/n)}\), অর্থাৎ \(0\) থেকে \(1/n\) পর্যন্ত উচ্চতা \(n\), বাকি সর্বত্র \(0\)\(n=1,2,4,8\)-এর জন্য আয়তক্ষেত্রগুলো নেস্ট করে আঁকা — প্রতিটির ভিত্তি \(1/n\) × উচ্চতা \(n\) = ক্ষেত্রফল \(1\)। তাই ছবিতে annotation: area = 1 for every n

কিন্তু \(n\) বাড়লে চূড়াটা সরু-উঁচু হতে হতে শূন্যের দিকে গুটিয়ে যায়; প্রতিটি নির্দিষ্ট বিন্দু \(x>0\)-তে শেষ পর্যন্ত \(f_n(x)=0\), তাই pointwise limit \(\equiv 0\) (নিচের লাল রেখা)। ফল: \(\lim_n\int f_n = 1\) অথচ \(\int\lim_n f_n = \int 0 = 0\)integral আর limit অদলবদল করলে দুই ভিন্ন উত্তর। ক্ষেত্রফল \(1\) যেন কোথায় উবে গেল।

এই ছবি কেন গুরুত্বপূর্ণ: naive Riemann-জগতে \(\lim\int=\int\lim\) আমরা প্রায়ই বিনা প্রশ্নে ব্যবহার করি (estimator-এর consistency, expectation-এর limit ইত্যাদিতে), কিন্তু এটা সাধারণভাবে মিথ্যা। কখন swap বৈধ — তার নির্ভুল শর্ত দেয় measure theory-র Monotone/Dominated Convergence Theorem (§৭.৪)। ছবির "spike grows taller & thinner"-ই সেই শর্তগুলোর প্রয়োজন চোখে আঙুল দিয়ে দেখায়।

একটা সূক্ষ্ম পাঠ। খেয়াল করো, এখানে দুটো ভিন্ন ধরনের "অভিসার" পাশাপাশি দাঁড়িয়ে: \(f_n\) প্রতিটি বিন্দুতে \(0\)-তে যায় (pointwise convergence), অথচ তাদের integral \(0\)-তে যায় না — থেকে যায় \(1\)-এ। এই দুই অভিসারের পার্থক্যই 3.2-এর "modes of convergence"-এর হৃৎপিণ্ড, এবং Part VII-এর convergence theorem-গুলোর গোটা প্রয়োজন। DCT যে "dominating function" দাবি করে, এই ছবিতে সেটিই অনুপস্থিত — কোনো একক integrable function \(g\) নেই যে সব \(f_n\le g\) ধরে রাখে (চূড়া অসীম উঁচু হয়), আর তাই swap-টা ভেঙে পড়ার অনুমতি পায়। ছবিটা তাই একই সঙ্গে রোগ (C4) আর তার নিরাময়ের শর্ত — দুটোই দেখায়।

from matplotlib.patches import Rectangle
for n in [1, 2, 4, 8]:                         # f_n = n on (0, 1/n)
    rect = Rectangle((0, 0), 1.0 / n, n, alpha=0.35, lw=2.0)  # base 1/n × height n
    ax.add_patch(rect)                          # => area = 1, always

ax.axhline(0, color="#b03030", lw=2.2)          # pointwise limit ≡ 0
ax.annotate("area = 1 for every n", xy=(0.5/8, 8), xytext=(0.45, 7.4),
            arrowprops=dict(arrowstyle="->"))
ax.annotate(r"pointwise limit $\equiv 0$" + "\n" + r"(yet $\int f_n = 1$)",
            xy=(0.55, 0.25), xytext=(0.5, 3.2), arrowprops=dict(arrowstyle="->"))

চলমান spike \(f_n=n\,\mathbf 1_{(0,1/n)}\) — প্রতিটি \(n\)-এ ক্ষেত্রফল \(1\), অথচ pointwise limit \(0\) (crack C4)


৬.৩ Rational-দের ঢেকে ফেলা — measure(ℚ) = 0 (C3-এর ভিত্তি)

§২.৪ ও উদাহরণ ২-এ আমরা দেখেছি একটা চমকপ্রদ ফল: \(\mathbb Q\cap[0,1]\) dense (সংখ্যারেখার সর্বত্র ঘন), তবু তার measure ঠিক শূন্য। এই ছবিটা সেই যুক্তিটাকে দৃশ্যমান করে।

কৌশলটা: \(\mathbb Q\) গণনাযোগ্য, তাই তার সদস্যদের তালিকা করা যায় \(q_1, q_2, q_3,\dots\)। এখানে আমরা ছোট হর-ওয়ালা প্রথম আটটি rational (\(1/2, 1/3, 2/3, 1/4, \dots\)) সংখ্যারেখায় বসিয়ে, \(k\)-তম rational-কে একটা \(\varepsilon/2^k\)-চওড়া বাক্স দিয়ে ঢেকেছি (দৃশ্যমানতার জন্য \(\varepsilon=0.3\) ধরা)। বাক্সগুলো দ্রুত সরু হয় — \(\varepsilon/2,\ \varepsilon/4,\ \varepsilon/8,\dots\) — তাই মোট দৈর্ঘ্য \(\le\sum_{k\ge1}\varepsilon/2^k=\varepsilon\)। আর \(\varepsilon\) যত-খুশি ছোট নেওয়া যায়, তাই মোট দৈর্ঘ্য \(\to 0\Rightarrow\) measure\((\mathbb Q)=0\) (ছবির উপরের callout)।

কেন এটা মাথা ঘোরায় ও কেন জরুরি: "কত বিন্দু আছে" (cardinality) আর "কত length দখল করে" (measure) — দুটো সম্পূর্ণ আলাদা প্রশ্ন। \(\mathbb Q\) অসীম ও ঘন হয়েও measure-অর্থে নগণ্য। এই measure-zero ধারণাই measure theory-র প্রাণভোমরা: integration-এ "almost everywhere" (প্রায় সর্বত্র) বলতে গেলে এরই দরকার, আর ঠিক এই কারণেই Lebesgue-এ \(\int_0^1 D\,d\lambda=0\) (rational-স্তরের measure \(0\) বলে তাদের অবদান মুছে যায়)।

ছবির একটা ভিজ্যুয়াল ফাঁদ — সাবধান। এখানে \(\varepsilon=0.3\) নেওয়া হয়েছে নিছক দৃশ্যমানতার জন্য — নইলে বাক্সগুলো এত সরু হতো যে চোখে ধরা যেত না। আসল যুক্তিতে \(\varepsilon\) যত-খুশি ছোট, তাই মোট দৈর্ঘ্য যেকোনো ধনাত্মক সংখ্যার চেয়েও ছোট করা যায় — অর্থাৎ ঠিক \(0\)। আরেকটা ফাঁদ: বাক্সগুলো পরস্পর ছেদ করতে পারে (rational-রা ঘন বলে), কিন্তু তাতে যুক্তি দুর্বল হয় না — ছেদ থাকলে মোট দৈর্ঘ্য কেবল আরও কম হয়, বেশি নয় (এটাই §৭.২-এর countable subadditivity, \(\lambda^*(\bigcup A_k)\le\sum\lambda^*(A_k)\), যা §৪-এ প্রমাণিত)। ছবিটা তাই subadditivity-র স্বজ্ঞাও বুকে ধরে রাখে।

from fractions import Fraction
eps  = 0.3                                       # large only for visibility
rats = [Fraction(1,2), Fraction(1,3), Fraction(2,3), Fraction(1,4),
        Fraction(3,4), Fraction(1,5), Fraction(2,5), Fraction(3,5)]

ax.axhline(0, color="#333333", lw=1.6)           # the number line [0,1]
for k, r in enumerate(rats, start=1):
    x = float(r)
    w = eps / 2**k                               # k-th box width = ε/2^k
    ax.add_patch(Rectangle((x - w/2, -0.05), w, 0.10, alpha=0.55))
# total length ≤ Σ ε/2^k = ε → 0  ⇒  measure(ℚ) = 0

\(\mathbb Q\cap[0,1]\)-এর rational-দের \(\varepsilon/2^k\) বাক্স দিয়ে ঢাকা — মোট দৈর্ঘ্য \(\le\varepsilon\to0\), তাই measure\((\mathbb Q)=0\) (C3-এর ভিত্তি)


৬.৪ Cantor নির্মাণ — measure শূন্য, তবু uncountable (C3-এর গভীর রূপ)

§৬.৩-এ measure-zero সেটটা ছিল countable (rational-গুলো), তাই "অল্প বিন্দু → অল্প measure" ভাবা সহজ ছিল। এই শেষ ছবিটা সেই স্বজ্ঞা ভেঙে দেয়।

ছবিতে ছয়টি স্তর (\(k=0\) থেকে \(5\)) উপরে-নিচে সাজানো; প্রতিটি স্তরে যা অবশিষ্ট আছে তা কালো interval হিসেবে দেখানো। নিয়ম: প্রতিবার প্রতিটি interval-এর মাঝের খোলা এক-তৃতীয়াংশ ফেলে দাও, বাকি দুই প্রান্ত রাখো। ফলে \(k\)-তম স্তরে অবশিষ্ট মোট দৈর্ঘ্য \(=(2/3)^k\) — ডান পাশে প্রতিটি স্তরের জন্য মান দেওয়া (\(1.000,\,0.667,\,0.444,\dots\))। \(k\to\infty\)-তে \((2/3)^k\to 0\), তাই অবশিষ্ট Cantor set-এর measure \(0\)

কিন্তু এখানেই চমক: এই set uncountable (continuum-সংখ্যক বিন্দু — \([0,1]\)-এর মতোই বিশাল), যদিও তার measure \(0\)। অর্থাৎ একটা set "ক্ষুদ্র" (measure শূন্য) হতে পারে অথচ "অগণিত"। শিক্ষা — measure zero \(\ne\) countable: countable \(\Rightarrow\) measure \(0\), কিন্তু উল্টোটা নয়। size মাপার দুটো সম্পূর্ণ স্বাধীন মাপকাঠি (cardinality আর measure) আলাদা করে বোঝার জন্যই একটা পূর্ণাঙ্গ তত্ত্ব দরকার — এই একটা ছবিই গোটা measure theory-র ইমারত গড়ার প্রেরণা।

intervals = [(0.0, 1.0)]                          # level k = 0
for k in range(6):                                # rows k = 0..5
    for (s, L) in intervals:                      # draw remaining black intervals
        ax.add_patch(Rectangle((s, y_of(k)), L, 0.55, facecolor="#222222"))
    ax.text(1.03, ..., r"$(2/3)^{%d} = %.3f$" % (k, (2/3)**k))   # length → 0
    nxt = []                                       # keep outer thirds, drop middle
    for (s, L) in intervals:
        t = L / 3.0
        nxt += [(s, t), (s + 2 * t, t)]
    intervals = nxt
# total length = (2/3)^k → 0,  yet uncountably many points remain

Cantor middle-third নির্মাণ (\(k=0..5\)) — অবশিষ্ট দৈর্ঘ্য \((2/3)^k\to0\), তবু uncountable বিন্দু (C3, গভীর রূপ)


এক বাক্যে §৬। চারটি ছবি চারটি ফাটলকে চোখে দেখায় — Riemann বনাম Lebesgue (domain বনাম range ভাগ, C2/C4-এর শিকড়), চলমান spike (\(\int=1\) অথচ limit \(0\), C4), rational-ঢাকনা (মোট দৈর্ঘ্য \(\to0\), measure\((\mathbb Q)=0\), C3), ও Cantor নির্মাণ (measure \(0\) তবু uncountable, C3-এর গভীর রূপ) — একসঙ্গে এরা "কেন গোনা নয়, মাপা চাই" প্রশ্নের দৃশ্য-উত্তর।


৭ · অনুশীলনী

প্রতিটি প্রশ্নে difficulty tag (★ সহজ · ★★ মাঝারি · ★★★ চ্যালেঞ্জিং) ও একটি Hint। পূর্ণ সমাধান _solutions/07-01-why-measure-theory-solutions.md-এ। চেষ্টা না করে সমাধান দেখবেন না — চারটে ফাটলে নিজে হাত রাখা, হোঁচট খাওয়াটাই এই অধ্যায়ের আসল শিক্ষা। (কোডিং প্রশ্নে seed default_rng(20260619) ধরে রাখলে ফল হুবহু পুনরুৎপাদনযোগ্য।)

ক · ধারণাগত (conceptual)

প্রশ্ন ১ (★). কেউ দাবি করল: "\(\mathbb N=\{1,2,3,\dots\}\)-এ প্রতিটি সংখ্যাকে সমান সম্ভাব্যতা \(c\) দিয়ে একটা fair uniform probability বানানো যায় — ঠিক যেমন সসীম ছক্কায় প্রতিটি মুখকে \(1/6\) দিই।" নিজের ভাষায় ব্যাখ্যা করুন কেন এটা অসম্ভব, এবং বিশেষভাবে দেখান এখানে finite additivity (সসীম যোগাত্মকতা) নয় বরং countable additivity (গণনাযোগ্য যোগাত্মকতা / \(\sigma\)-additivity)-ই আসল অপরাধী। সসীম ছক্কায় কেন একই যুক্তি ভাঙে না, এক বাক্যে বলুন। (crack C1) Hint: \(1=\sum_{k=1}^\infty c\)\(c=0\) হলে যোগফল কত, \(c>0\) হলে কত? সসীম জগতে \(\sum_{k=1}^n \tfrac1n\) ঠিক \(1\) দেয়, কিন্তু "\(1/\infty\)"-এর কোনো অর্থ নেই।

প্রশ্ন ২ (★). "measure zero" (পরিমাপ-শূন্য) মানে ঠিক কী — এক বাক্যে outer measure-এর ঢাকনা-ভাষায় বলুন। তারপর ব্যাখ্যা করুন কেন \(\mathbb Q\cap[0,1]\) measure-শূন্য হওয়া মোটেও স্ববিরোধী নয়, যদিও set-টা \([0,1]\)-এ dense (ঘন — যেকোনো দুই বিন্দুর মাঝে অসংখ্য rational)। "dense" আর "বড় measure" কি একই জিনিস? Cantor set-এর কথা টেনে দেখান কেন "measure zero \(\Rightarrow\) countable" ভাবাটাও ভুল। (C3-এর ভিত্তি) Hint: countability \(\Rightarrow\) measure 0 (ঢাকনা-দৈর্ঘ্য যত খুশি ছোট করা যায়), কিন্তু উল্টোটা সত্য নয় — Cantor set uncountable অথচ \(\lambda=0\)

প্রশ্ন ৩ (★). এক বাক্যে বলুন কেন Dirichlet function \(D=\mathbf 1_{\mathbb Q}\) Riemann-integrable নয়, এবং তার ঠিক পরের বাক্যে বলুন Lebesgue integral কেন একে অনায়াসে \(0\) মান দেয়। এই পার্থক্যটাকে "Riemann domain ভাগ করে, Lebesgue range ভাগ করে" — এই এক-লাইন স্লোগান দিয়ে যুক্ত করুন। (crack C2) Hint: প্রতিটি partition-এ rational ও irrational দুটোই থাকে, তাই upper sum \(U=1\) কিন্তু lower sum \(L=0\) — কখনো মেলে না; Lebesgue জিজ্ঞেস করে "মান \(1\) কোথায়?" — কেবল \(\mathbb Q\)-তে, যার measure \(0\)

খ · গণনামূলক (computational)

প্রশ্ন ৪ (★). \(\mathbb Q\cap[0,1]=\{q_1,q_2,q_3,\dots\}\)-এর প্রতিটি \(q_k\)-কে একটা open interval \(I_k\) দিয়ে ঢাকা হলো, যার দৈর্ঘ্য \(\ell(I_k)=\varepsilon/2^{k}\)। (ক) মোট ঢাকনা-দৈর্ঘ্য \(\sum_{k=1}^\infty \ell(I_k)\) একটা বদ্ধ রূপে লিখুন (geometric series)। (খ) \(\varepsilon=0.01\) হলে সংখ্যাটা কত? (গ) এই মোট দৈর্ঘ্যকে \(10^{-6}\)-এর নিচে নামাতে \(\varepsilon\) কত বড় পর্যন্ত নেওয়া যায়, এবং এ থেকে \(\lambda^*(\mathbb Q\cap[0,1])\) কত — যুক্তি দিন। Hint: \(\sum_{k\ge1}\varepsilon/2^k=\varepsilon\sum_{k\ge1}2^{-k}=\varepsilon\cdot 1=\varepsilon\); \(\varepsilon\) যত খুশি ছোট নেওয়া যায়, তাই infimum \(0\)

প্রশ্ন ৫ (★). moving spike \(f_n(x)=n\,\mathbf 1_{(0,1/n)}(x)\) ধরুন। (ক) \(\int_0^1 f_n\,dx\) বের করুন এবং দেখান এটা \(n\)-নিরপেক্ষভাবে ধ্রুবক। (খ) বিন্দু \(x=0.3\)-এ \(f_n(0.3)\)-এর মান \(n=2,\,5,\,100\)-এর জন্য বের করুন। (গ) এ থেকে \(\lim_n\int_0^1 f_n\,dx\)\(\int_0^1(\lim_n f_n)\,dx\) — দুটো আলাদা করে লিখে দেখান এরা সমান নয়। (crack C4) Hint: \(\int f_n=n\cdot\tfrac1n=1\) সবসময়; \(f_n(0.3)=n\) যতক্ষণ \(1/n>0.3\) (অর্থাৎ \(n\le 3\)), নইলে \(0\) — তাই \(n=2\Rightarrow 2\), \(n=5\Rightarrow 0\), \(n=100\Rightarrow 0\)

প্রশ্ন ৬ (★★). Cantor set \(C\) middle-third অপসারণে তৈরি। \(k\) ধাপের পর: (ক) কতগুলো interval টিকে আছে এবং প্রতিটির দৈর্ঘ্য কত? (খ) মোট অবশিষ্ট দৈর্ঘ্য \(\lambda(C_k)\) এবং মোট অপসারিত দৈর্ঘ্য \(k\)-এর function হিসেবে লিখুন। (গ) \(k=3\)\(k=10\)-এ অবশিষ্ট ও অপসারিত দৈর্ঘ্যের সংখ্যামান দিন (চার দশমিক), এবং \(k\to\infty\)-এ \(\lambda(C)\) বের করুন। (C3-এর গভীর রূপ) Hint: ধাপ \(k\)-এ \(2^k\)টি interval, প্রতিটি দৈর্ঘ্য \(3^{-k}\), তাই \(\lambda(C_k)=(2/3)^k\) আর অপসারিত \(=1-(2/3)^k\); \((2/3)^3\approx 0.2963\), \((2/3)^{10}\approx 0.0173\)

গ · প্রমাণভিত্তিক (proof-based)

প্রশ্ন ৭ (★★). প্রমাণ করুন একটা singleton \(\{a\}\subseteq\mathbb R\)-এর outer measure শূন্য: \(\lambda^*(\{a\})=0\)। তারপর countable subadditivity ব্যবহার করে দেখান যেকোনো countable set \(A=\{a_1,a_2,a_3,\dots\}\)-এরও \(\lambda^*(A)=0\)। এই ফলকে \(\mathbb Q\cap[0,1]\)-এ প্রয়োগ করুন। Hint: \(\{a\}\)-কে একটামাত্র interval \((a-\varepsilon/2,\,a+\varepsilon/2)\) দিয়ে ঢাকুন, দৈর্ঘ্য \(\varepsilon\)\(\varepsilon\downarrow 0\) নিন; countable union-এ \(a_k\)-কে দৈর্ঘ্য \(\varepsilon/2^k\)-এর interval দিন, যোগফল \(\varepsilon\)

প্রশ্ন ৮ (★★). Vitali-নির্মাণের একটা মূল উপ-ফল প্রমাণ করুন: সম্পর্ক \(x\sim y\iff x-y\in\mathbb Q\) ব্যবহার করে প্রতিটি equivalence class থেকে একটি প্রতিনিধি নিয়ে \(V\subseteq[0,1]\) গঠন করুন; \(\mathbb Q\cap[-1,1]=\{q_1,q_2,\dots\}\), \(V_k=V+q_k\)। প্রমাণ করুন (ক) \(j\ne k\) হলে \(V_j\cap V_k=\varnothing\) (translate-গুলো disjoint), এবং (খ) sandwich: \([0,1]\subseteq\bigcup_k V_k\subseteq[-1,2]\)। (পূর্ণ non-measurability নয় — কেবল এই দুই উপ-ফল।) Hint: (ক) \(z\in V_j\cap V_k\) ধরলে দুই প্রতিনিধি \(v,v'\) একই class-এ পড়ে, কিন্তু \(V\) class-প্রতি ঠিক একটি নেয় \(\Rightarrow v=v'\Rightarrow j=k\); (খ) যেকোনো \(x\in[0,1]\)-এর class-প্রতিনিধি \(v\in V\), \(x-v\in[-1,1]\cap\mathbb Q\) কোনো \(q_k\)

প্রশ্ন ৯ (★★). Darboux sum-এর সংজ্ঞা থেকে সরাসরি দেখান যে \([0,1]\)-এ Dirichlet function \(D=\mathbf 1_{\mathbb Q}\)-এর জন্য প্রতিটি partition \(P\)-এ upper Darboux sum \(U(D,P)=1\) এবং lower Darboux sum \(L(D,P)=0\)। এ থেকে উপসংহার টানুন: upper Darboux integral \(\overline{\int}D=1\), lower \(\underline{\int}D=0\), এবং দুটো অসমান হওয়ায় \(D\) Riemann-integrable নয়। (crack C2) Hint: প্রতিটি subinterval \([x_{i-1},x_i]\)-তে \(\sup D=1\) (ভেতরে rational আছে) আর \(\inf D=0\) (irrational আছে), তাই \(U=\sum 1\cdot\Delta x_i=1\), \(L=\sum 0\cdot\Delta x_i=0\) — partition-নিরপেক্ষ।

ঘ · কোডিং (coding)

প্রশ্ন ১০ (★). numpy দিয়ে Monte-Carlo পদ্ধতিতে \(\lambda\big([0,0.3]\cup[0.5,0.9]\big)\) আনুমান করুন: default_rng(20260619) থেকে \(N=10^6\)টি Uniform\((0,1)\) নমুনা টেনে set-এ পড়া ভগ্নাংশ বের করুন। আনুমানিক মানটি সঠিক উত্তর \(0.7\)-এর সাথে তুলনা করুন এবং পার্থক্য (Monte-Carlo error) ছাপুন। Hint: x = rng.uniform(0,1,10**6); inA = ((x<=0.3)|((x>=0.5)&(x<=0.9))); inA.mean() দেবে \(\approx 0.7003\), সত্য \(0.3+0.4=0.7\)

প্রশ্ন ১১ (★★). moving spike \(f_n=n\,\mathbf 1_{(0,1/n)}\)-এর দ্বৈত আচরণ সংখ্যায় দেখান: (ক) একটা সূক্ষ্ম grid-এ \(\int_0^1 f_n\,dx\) আনুমান করে দেখান এটা সব \(n\)-এ \(\approx 1\); (খ) একই সঙ্গে একটা স্থির বিন্দু (যেমন \(x=0.3\))-এ \(f_n(x)\) ছাপিয়ে দেখান \(n\) বাড়লে তা \(0\)-তে নামে। দুটো কলাম পাশাপাশি একটা টেবিলে ছাপুন (\(n=1,2,5,10,100,1000\)) — "integral অটল \(1\), pointwise ভেঙে \(0\)" গল্পটা ফুটিয়ে তুলুন। Hint: xs=np.linspace(0,1,2_000_001); fn=np.where((xs>0)&(xs<1/n), n, 0.0); np.trapezoid(fn,xs) \(\approx 1\); স্থির বিন্দুতে n if 0<0.3<1/n else 0

প্রশ্ন ১২ (★★). Cantor set-এর অবশিষ্ট-দৈর্ঘ্যের ক্ষয় সিমুলেট করুন: \(k=0,1,\dots,15\)-এর জন্য \(\lambda(C_k)=(2/3)^k\) গণনা করে (ক) একটা টেবিলে অবশিষ্ট ও অপসারিত দৈর্ঘ্য ছাপুন, এবং (খ) \(k\) বনাম \(\lambda(C_k)\) একটা semi-log plot-এ আঁকুন। চাইলে interval-সীমাগুলো বাস্তবিকভাবে গড়ে (প্রতিটি \([a,b]\)-কে \([a,a+\tfrac{b-a}{3}]\cup[b-\tfrac{b-a}{3},b]\)-এ ভেঙে) মোট দৈর্ঘ্য যোগ করে \((2/3)^k\)-এর সাথে মিলিয়ে দেখান। Hint: বিশ্লেষণী মান (2/3)**k; constructive-এ interval-তালিকা segs=[(0,1)] থেকে প্রতি ধাপে দুই টুকরোয় ভাঙুন, sum(b-a for a,b in segs) দেবে ঠিক \((2/3)^k\)


৮ · সারসংক্ষেপ ও সংযোগ

মূল পয়েন্ট (recap) — চারটি ফাটল ও একটিমাত্র সমাধান। Part II–VI জুড়ে \(\mathbb P(A)\)\(\mathbb E[X]=\int x f(x)\,dx\) সুন্দর discrete/continuous ক্ষেত্রে নিখুঁত কাজ করেছে, কিন্তু এই naive ভিত্তির নিচে চারটে ফাটল আছে — চারটে নিরীহ প্রশ্ন থেকে উন্মোচিত:

  • (C1) এলোমেলো স্বাভাবিক সংখ্যা। \(\mathbb N\)-এ কোনো fair uniform probability নেই: countable additivity-র অধীনে \(1=\sum_{k}c\) হয় \(0\) (যদি \(c=0\)) নয়তো \(\infty\) (যদি \(c>0\)), কখনোই \(1\) নয়। সসীম জগতে \(\sum_{k=1}^n\tfrac1n=1\) ঠিকঠাক — গোলমাল কেবল গণনাযোগ্য-অসীমে।
  • (C2) ক্ষেত্রফল-হীন function। Dirichlet \(D=\mathbf 1_{\mathbb Q}\) Riemann-integrable নয়: প্রতিটি partition-এ upper sum \(U=1\), lower sum \(L=0\) — কখনো মেলে না। অথচ Lebesgue integral একে শান্ত করে: \(\int_0^1 \mathbf 1_{\mathbb Q}\,d\lambda=0\)
  • (C3) না-ওজন-করা-যাওয়া set। Axiom of Choice দিয়ে গড়া Vitali set non-measurable — তাই \([0,1]\)-এর প্রতিটি subset (\(2^\Omega\))-কে translation-invariant, countably-additive "দৈর্ঘ্য" দেওয়া অসম্ভব; event-দের একটা \(\sigma\)-algebra-তে সীমিত করতেই হবে। (সহায়ক সত্য: \(\mathbb Q\cap[0,1]\) dense তবু \(\lambda^*=0\); Cantor set uncountable তবু \(\lambda=0\) — অর্থাৎ "measure zero \(\ne\) countable, \(\ne\) ছোট"।)
  • (C4) অদৃশ্য-হওয়া ভর। moving spike \(f_n=n\,\mathbf 1_{(0,1/n)}\)-এ \(\int f_n=1\) সব \(n\)-এ, অথচ \(f_n\to 0\) pointwise — তাই \(\lim_n\int f_n=1\ne 0=\int\lim_n f_n\)। limit ও integral সবসময় অদলবদল করা যায় না; কখন যায় তা বলবে MCT/Fatou/DCT।

একটিমাত্র ধারণায় সমাধান (Kolmogorov 1933): চার ফাটলের চিকিৎসা একই — probability হলো একটা \(\sigma\)-algebra-র উপর একটা measure, random variable হলো একটা measurable function, আর expectation হলো একটা Lebesgue integral। এই একক কাঠামো discrete + continuous + singular সবকিছুকে এক সুতোয় বাঁধে।

মূল সমীকরণ / তথ্য (mini-list)। - C1: \(1=\sum_{k=1}^\infty c\ \Rightarrow\ c=0\) (যোগফল \(0\)) বা \(c>0\) (যোগফল \(\infty\)) — কখনো \(1\) নয়। - C2: \(U(\mathbf 1_{\mathbb Q})=1,\ L(\mathbf 1_{\mathbb Q})=0\ \Rightarrow\) Riemann-অসম্ভব; কিন্তু \(\displaystyle\int_0^1\mathbf 1_{\mathbb Q}\,d\lambda=0\)। - C3: \(\lambda^*(\mathbb Q\cap[0,1])=0\) (ঢাকনা-দৈর্ঘ্য \(\le\varepsilon\)); Cantor: \(\lambda(C)=0\) অথচ \(\lvert C\rvert=2^{\aleph_0}\); Vitali \(V\): \(1\le\sum_k\lambda(V)\le 3\) অসম্ভব। - C4: \(\displaystyle\int_0^1 f_n\,dx=1\ \forall n\), কিন্তু \(f_n\to 0\ \Rightarrow\ \lim\textstyle\int\ne\int\lim\)। - একীকরণ: \((\Omega,\mathcal F,\mathbb P)\) — measure space; \(X:\Omega\to\mathbb R\) measurable; \(\mathbb E[X]=\int_\Omega X\,d\mathbb P\)

পূর্ববর্তী সংযোগ (back): - ← 2.1 — Kolmogorov-এর probability axiom (\(\mathbb P(A)\ge0\), \(\mathbb P(\Omega)=1\), additivity): এই অধ্যায় ঠিক সেই naive axiom-গুলোর সীমা (finite বনাম countable additivity, \(2^\Omega\) বনাম \(\sigma\)-algebra) উন্মোচন করল। - ← 2.4 — continuous density-তে probability = ক্ষেত্রফল (\(\mathbb P(a\le X\le b)=\int_a^b f\), কার্যত Riemann): C2/C4 দেখাল ঠিক এই Riemann-ভিত্তিক ক্ষেত্রফল-ভাবনা কোথায় ভাঙে। - ← 3.2 / 3.4 — modes of convergence ও CLT: C4-এর limit↔integral অদলবদলের প্রশ্ন সরাসরি pointwise-বনাম-integral পার্থক্যের উপর দাঁড়ায়; rigorous CLT (7.10) এরই উত্তরসূরি। - ← 4.4 — estimator-এর MSE/expectation (\(\mathbb E[(\hat\theta-\theta)^2]\)): সেই \(\mathbb E[\cdot]\)-কেই এখন Lebesgue integral হিসেবে পুনঃসংজ্ঞায়িত করার প্রেরণা।

পরবর্তী সংযোগ (forward): - → 7.2\(\sigma\)-algebra ও Carathéodory extension: C3-এর সমাধান — outer measure থেকে "ভদ্র" set-পরিবারের উপর প্রকৃত measure-নির্মাণ। - → 7.3measurable map / random variable: C2-এর সমাধান — কোন function-গুলো বৈধ random variable তার সঠিক সংজ্ঞা। - → 7.4Lebesgue integralMCT / Fatou / DCT: C2 ও C4-এর সমাধান — range-partition দিয়ে integral, এবং limit↔integral অদলবদলের নির্ভুল শর্ত। - → 7.10rigorous CLT: পুরো measure-তাত্ত্বিক যন্ত্র (characteristic function, convergence theorem) দিয়ে 3.4-এর CLT-এর কঠোর প্রমাণ।

সূত্র (sources): Klenke, Probability Theory: A Comprehensive Course, Ch. 1 (Basic Measure Theory — কেন naive probability অপর্যাপ্ত, \(\sigma\)-algebra ও measure-এর প্রয়োজন, Kolmogorov-এর axiomatic ভিত্তি); Kolmogorov, Grundbegriffe der Wahrscheinlichkeitsrechnung (1933) — ঐতিহাসিক মূল উৎস যেখানে probability প্রথম measure-তত্ত্বের স্বতঃসিদ্ধ কাঠামোয় বসানো হয়।

এক বাক্যে। চারটে নিরীহ প্রশ্ন — এলোমেলো স্বাভাবিক সংখ্যা (C1), ক্ষেত্রফল-হীন function (C2), না-ওজন-করা-যাওয়া set (C3), অদৃশ্য-হওয়া ভর (C4) — naive সম্ভাব্যতার ভিত্তিতে চারটে ফাটল দেখায়, আর একটিমাত্র ধারণা সবকটা বোজায়: probability হলো \(\sigma\)-algebra-র উপর measure, random variable হলো measurable function, expectation হলো Lebesgue integral।