Chapter 1.5 — Linear Combination & Span (লিনিয়ার কম্বিনেশন ও স্প্যান)¶
🎯 এই chapter-এ যা শিখবে¶
- Linear Combination(লিনিয়ার কম্বিনেশন) — যোগ আর scalar গুণ মিলিয়ে vector-দের "রেসিপি" বানানো
- Coefficient(সহগ) — রেসিপির মাপগুলো; আর কয়েকটা বিখ্যাত রেসিপি: sum, average, midpoint
- Span(স্প্যান) — হাতের vector-গুলো দিয়ে "কতদূর পৌঁছানো যায়": কখনো লাইন, কখনো plane, কখনো পুরো space
- Linear Independence(লিনিয়ার স্বাধীনতা) ও Dependence(নির্ভরতা) — কোন vector আসলে নতুন খবর আনে, কোনটা পুরনোদের ছায়া
- "\(w\) কি span-এ আছে?" প্রশ্নটা কীভাবে equation solve-এ বদলে যায় — Part II-এর দরজা
🖼️ এক ছবিতে মূল idea¶

Linear combination মানে একটা রেসিপি: আগে scale, তারপর যোগ। এখানে \(a = (2,1)\)-কে \(2\) গুণ, \(b = (1,2)\)-কে \(1.5\) গুণ করে tip-to-tail জুড়লে পাই \(w = 2a + 1.5b = (5.5, 5)\)। সংখ্যা-জোড় \((2, 1.5)\)-ই রেসিপির মাপ — বদলালেই অন্য কোথাও পৌঁছাবে। প্রশ্ন হলো: সব মাপ মিলিয়ে কোথায় কোথায় পৌঁছানো সম্ভব?
১. কি? (What)¶
রং মেশানোর দোকানের কথা ভাবো। দোকানির কাছে আছে মাত্র দুটো টিউব — লাল আর সবুজ। ক্রেতা এসে বললো, "কমলা রং চাই।" দোকানি ১ ভাগ লাল আর \(0.65\) ভাগ সবুজ মিশিয়ে দিলো — কমলা হাজির! আরেকজন চাইলো হলদেটে-সবুজ — এবার লাল কম, সবুজ বেশি। দুটো টিউব, অথচ মাপ বদলে বদলে অগুনতি রং বানানো যায়।
Vector-দের জগতে এই "মাপ দিয়ে মেশানো"-র নামই Linear Combination(লিনিয়ার কম্বিনেশন)।
আগের চার chapter-এ তুমি দুটো অস্ত্র পেয়েছো: vector যোগ আর scalar গুণ (Chapter 1.2)। Linear combination হলো এই দুটোকে একসাথে খাটানো — কয়েকটা vector-কে scalar দিয়ে scale করে সব যোগ করে দেওয়া। আনুষ্ঠানিক সংজ্ঞা:
\(a_1, a_2, \dots, a_k \in \mathbb{R}^n\) এবং scalar \(\beta_1, \beta_2, \dots, \beta_k\) হলে
vector-টিকে বলে \(a_1, \dots, a_k\)-এর একটি linear combination, আর \(\beta_1, \dots, \beta_k\) সংখ্যাগুলোকে বলে combination-এর Coefficient(সহগ)।
ছোট উদাহরণ: \(a = (2, 1)\), \(b = (1, 2)\) নিয়ে coefficient \((2, 1.5)\) বসালে —
— opening figure-এর সেই \(w\)।
মজার ব্যাপার: তুমি না জেনেই এতদিন linear combination করে এসেছো। মিলিয়ে দেখো —
| আগে যা করেছো | আসলে যা ছিল | Coefficients |
|---|---|---|
| \(a + b\) (Ch 1.2) | দুই vector-এর combination | \(\beta_1 = 1, \beta_2 = 1\) |
| \(b - a\) (Ch 1.2) | combination | \(\beta_1 = -1, \beta_2 = 1\) |
| \(2v\) (Ch 1.2) | এক vector-এর combination | \(\beta_1 = 2\) |
| Midpoint \(\frac{1}{2}(p+q)\) (Ch 1.2) | combination | \(\beta_1 = \beta_2 = \frac12\) |
| \((3,2) = 3e_1 + 2e_2\) (Ch 1.1) | unit vector-দের combination | \(\beta_1 = 3, \beta_2 = 2\) |
শেষ লাইনটা আলাদা করে দেখো — Chapter 1.1-এই বলেছিলাম "যেকোনো vector আসলে unit vector-দের recipe।" এখন তার আসল নাম জানলে: \(\mathbb{R}^n\)-এর প্রতিটি vector হলো \(e_1, \dots, e_n\)-এর একটা linear combination, যার coefficient-রা হলো vector-টার নিজের entry: \(x = x_1 e_1 + \cdots + x_n e_n\)।
কয়েকটা বিখ্যাত রেসিপির নামও শিখে রাখো (VMLS-এর প্রিয় তালিকা):
| রেসিপি | Coefficients | ফল |
|---|---|---|
| Sum | সব \(\beta_i = 1\) | \(a_1 + \cdots + a_k\) |
| Average | সব \(\beta_i = \frac1k\) | vector-দের গড় |
| Affine combination | \(\beta_1 + \cdots + \beta_k = 1\) | যেমন midpoint; রেখা-বরাবর interpolation |
| Trivial combination | সব \(\beta_i = 0\) | সবসময় \(\mathbf{0}\) — "কিছুই মেশাইনি" |
এবার এই chapter-এর কেন্দ্রীয় প্রশ্ন। হাতে কয়েকটা vector আছে; coefficient-গুলো তোমার ইচ্ছামতো — যেকোনো real সংখ্যা, ধনাত্মক-ঋণাত্মক-ভগ্নাংশ সব চলবে। তাহলে সব সম্ভব রেসিপি মিলিয়ে কোন কোন vector বানানো যায়? সেই "পৌঁছানো-যায়" জায়গাগুলোর সেটের নাম Span(স্প্যান):
পড়ো এভাবে: "\(a_1, \dots, a_k\)-এর সব linear combination-এর সেট।" রং-দোকানির ভাষায়: টিউবগুলো দিয়ে বানানো-সম্ভব সব রঙের ক্যাটালগ। ভ্রমণের ভাষায়: এই দিকগুলোতে হাঁটার স্বাধীনতা থাকলে যেসব ঠিকানায় পৌঁছানো যায় — তোমার রাজ্যের মানচিত্র।
২. দেখতে কেমন?¶
Span-এর চেহারা নির্ভর করে হাতে ক'টা vector আছে আর তারা কেমন — চলো ছোট থেকে শুরু করি।
একটা মাত্র nonzero vector \(v\): রেসিপিতে উপকরণ একটাই — \(\beta v\)। Chapter 1.2-এ দেখেছিলে scalar গুণ vector-কে তার নিজের লাইন থেকে নামাতে পারে না। তাই \(\beta\)-কে \(-\infty\) থেকে \(+\infty\) পর্যন্ত ঘোরালে \(\beta v\) আঁকে origin দিয়ে যাওয়া একটা পুরো সরলরেখা:

\(v = (2,1)\)-এর নানা গুণিতক — \(-1.5v\) থেকে \(2.5v\) পর্যন্ত কয়েকটা আঁকা হয়েছে। সব arrow একই ধূসর লাইনে শুয়ে; \(\operatorname{span}\{v\}\) হলো ওই পুরো লাইনটাই। এক vector = এক দিকের স্বাধীনতা = ১-মাত্রিক রাজ্য।
দুটো vector \(a, b\) (ভিন্নমুখী): এবার দুটো "নব (knob)" — \(\alpha\) আর \(\beta\), রেসিপি \(\alpha a + \beta b\)। এলোমেলোভাবে শত শত \((\alpha, \beta)\) বসিয়ে ফলগুলো এঁকে দেখো:

\(a = (2,1)\), \(b = (1,2)\)-এর ৩০০টা এলোমেলো combination (নীল বিন্দু)। বিন্দুগুলো কোনো লাইনে সীমাবদ্ধ নেই — চারদিকে ছড়িয়ে গেছে। Coefficient-এর সীমা বাড়ালে পুরো \(\mathbb{R}^2\)-ই ভরে যাবে: \(\operatorname{span}\{a, b\} = \mathbb{R}^2\)। দুটো সত্যিকারের ভিন্ন দিক = plane-এর সব ঠিকানায় পৌঁছানোর ক্ষমতা।
বিশ্বাস হচ্ছে না যে যেকোনো vector-এ পৌঁছানো যায়? §৭-এর Example 2-এ আমরা একটা নির্দিষ্ট target ধরে রেসিপিটা হিসাব করে বের করবো — অনুমান নয়, নিখুঁত হিসাব।
কিন্তু সাবধান — "দুটো vector থাকলেই plane" নয়। দুটো vector যদি একই লাইনে শুয়ে থাকে, তাহলে দ্বিতীয়টা কোনো নতুন দিক দেয় না — সে গল্প §৪-এ।
৩. কোথায় ইউজ হয়?¶
Linear combination আর span — এ দুটো Data Science-এর অদৃশ্য মেরুদণ্ড:
- রং: স্ক্রিনের প্রতিটা রং হলো তিনটা vector-এর combination — \(c = \beta_1 \cdot \text{red} + \beta_2 \cdot \text{green} + \beta_3 \cdot \text{blue}\)। তোমার মনিটর প্রতি pixel-এ এই হিসাবটাই করে। RGB-র span-এর বাইরের রং (যেমন কিছু গাঢ় বেগুনি-সবুজ) মনিটর দেখাতেই পারে না — বাস্তবের "span-সীমাবদ্ধতা"!
- Audio mixing(অডিও মিক্সিং): গানের ফাইনাল ট্র্যাক \(= 0.8 \times \text{ভোকাল} + 0.5 \times \text{গিটার} + 0.3 \times \text{ড্রামস}\) — প্রতিটা ট্র্যাক একটা লম্বা vector (Chapter 1.1-এর time series!), মিক্সিং কনসোলের slider-গুলো হলো coefficient।
- Portfolio(পোর্টফোলিও): বিনিয়োগকারীর সম্পদ = \(\beta_1 \times\) শেয়ার-১-এর return-vector \(+ \beta_2 \times\) শেয়ার-২-এর \(+ \cdots\) — টাকা ভাগ করার সিদ্ধান্তটাই একটা coefficient vector।
- Feature engineering / ML: একটা linear model-এর ভেতরে যা ঘটে তার অর্ধেকই "কলাম-vector-দের weighted মেশানো"; neural network-এর প্রতিটা layer input vector-দের linear combination নিয়েই শুরু করে (তারপর একটু বাঁকায়)।
- Word analogy আবার: Chapter 1.2-এর \(\text{king} - \text{man} + \text{woman}\) — এটাও একটা linear combination, coefficients \((1, -1, 1)\)!
- "সমাধান আছে কি নেই": কোনো সমস্যার data-র চাহিদা যদি তোমার হাতের vector-দের span-এর ভেতরে থাকে, সমাধান আছে; বাইরে থাকলে নেই। Part II-এর systems of equations, Part V-এর least squares — দুটোই আসলে এই এক প্রশ্নের দুই রূপ: "target-টা কি span-এ?"
মোদ্দা কথা: যেখানেই "উপকরণ মিশিয়ে কিছু বানানো" — সেখানেই linear combination; আর "কী কী বানানো সম্ভব" — সেটাই span।
৪. Properties¶
Span জিনিসটার কয়েকটা পাকা ধর্ম আছে। \(S = \operatorname{span}\{a_1, \dots, a_k\}\) লিখি।
(ক) \(\mathbf{0}\) সবসময় \(S\)-এ থাকে। Trivial combination: সব coefficient \(0\) দিলেই \(\mathbf 0\)। তাই span কখনো খালি নয় — origin সবসময় তোমার রাজ্যে।
(খ) \(a_i\)-রা নিজেরাও \(S\)-এ থাকে। \(a_1 = 1\cdot a_1 + 0 \cdot a_2 + \cdots + 0 \cdot a_k\) — নিজের রেসিপি নিজেই।
(গ) \(S\) যোগ ও scalar গুণে "বন্ধ" (closed)। দুটো combination যোগ করলে আরেকটা combination-ই পাওয়া যায়:
(মাঝে Chapter 1.2-এর distributivity কাজ করলো!) scalar গুণেও তাই: \(\gamma(\beta_1 a_1 + \cdots) = (\gamma\beta_1)a_1 + \cdots\)। অর্থাৎ span-এর ভেতরে যত খুশি খেলো, বাইরে ছিটকে পড়বে না। এই "closed থাকা" ধর্মটাই Part IV-তে Subspace(সাবস্পেস) নামের ধারণার সংজ্ঞা হয়ে উঠবে — মনে রেখো।
(ঘ) Span-এ-থাকা vector যোগ করলে রাজ্য বাড়ে না। যদি \(w \in \operatorname{span}\{a, b\}\) হয়, তাহলে \(\operatorname{span}\{a, b, w\} = \operatorname{span}\{a, b\}\) — \(w\) তো এমনিতেই বানানো যেত; তাকে টিউব-তালিকায় তোলা মানে "কমলা রং" নামে আলাদা টিউব কেনা — নতুন কোনো রং যোগ হলো না।
(ঙ) কোনটা রাজ্য বাড়ায়, কোনটা নয় — এটাই আসল প্রশ্ন। দুটো vector-এর ক্ষেত্রে উত্তরটা চোখেই দেখা যায়:

একই পরীক্ষা, দুই ফল। বাঁয়ে: \(u_1 = (2,1)\), \(u_2 = (-1,1)\) — ভিন্নমুখী জুটি; এলোমেলো combination-রা 2D জুড়ে ছড়ালো। ডানে: \(w_1 = (2,1)\), \(w_2 = (-3,-1.5) = -1.5\,w_1\) — একই লাইনের জুটি; শত শত combination-ও এক লাইনে বন্দী। দ্বিতীয় "টিউব"-টা আসলে প্রথমটারই ঘন সংস্করণ — নতুন দিক শূন্য।
এই পার্থক্যটার আনুষ্ঠানিক নাম দেওয়া যাক। Vector-গুলোকে বলে —
- Linearly Dependent(লিনিয়ারলি ডিপেন্ডেন্ট/পরনির্ভর): যদি তাদের কেউ একজন বাকিদের linear combination হয় — অর্থাৎ কেউ "পুরনোদের ছায়া", নতুন খবর আনে না।
- Linearly Independent(লিনিয়ারলি ইন্ডিপেন্ডেন্ট/স্বাধীন): যদি কেউই বাকিদের combination না হয় — প্রত্যেকে সত্যিকারের নতুন দিক।
দুটো vector-এর সহজ পরীক্ষা: \(a, b\) dependent \(\iff\) একটা আরেকটার scalar গুণিতক (\(b = \beta a\)) \(\iff\) দুটো একই লাইনে (collinear)। যেমন \((2,4)\) আর \((3,6)\) dependent (\((3,6) = 1.5\,(2,4)\)); কিন্তু \((2,1)\) আর \((1,2)\) independent — কোনো \(\beta\)-তেই \(\beta(2,1) = (1,2)\) হয় না (প্রথম entry চায় \(\beta = 0.5\), দ্বিতীয়টা চায় \(\beta = 2\) — Chapter 1.2-এর Problem 3-এর যুক্তি!)।
আর একটা সূক্ষ্ম কথা: zero vector যে দলে, সে দল সবসময় dependent — কারণ \(\mathbf 0 = 0 \cdot a\), সে তো সবারই ছায়া।
সব মিলিয়ে \(\mathbb{R}^2\)-এর ছবি এখন পরিষ্কার:
| হাতে যা আছে | Span |
|---|---|
| কিছুই না / শুধু \(\mathbf 0\) | \(\{\mathbf 0\}\) — এক বিন্দুর "রাজ্য" |
| একটা nonzero \(v\) | origin দিয়ে যাওয়া লাইন |
| দুটো independent vector | পুরো \(\mathbb{R}^2\) |
| দুটো dependent vector | একটাই লাইন (একজন থাকা-না-থাকা সমান) |
৫. Intuition — কেন সত্য?¶
নব-ঘোরানো মেশিনের ছবিটা মাথায় বসাও। \(\alpha a + \beta b\) মানে একটা মেশিন যার দুটো নব: \(\alpha\)-নব ঘোরালে \(a\)-দিকে সরো, \(\beta\)-নব ঘোরালে \(b\)-দিকে। প্রশ্নটা হলো: দুই নব মিলিয়ে কতটুকু জায়গা কভার করা যায়?
দুই নব সত্যিই আলাদা হলে (independent): ভাবো \(a\) আর \(b\)-কে একটা বাঁকা coordinate system হিসেবে — \(a\) যেন "নতুন পূর্ব", \(b\) যেন "নতুন উত্তর"। Plane-এর যেকোনো ঠিকানায় যেতে চাও? আগে \(a\)-রাস্তা ধরে ঠিক পরিমাণ হাঁটো, তারপর \(b\)-রাস্তা ধরে — যেভাবে ঢাকার গলিপথে "এই রোড ধরে তিন বাড়ি, তারপর ওই গলিতে দুই বাড়ি" বলে পৌঁছাও। রাস্তা দুটো লম্ব হওয়ারও দরকার নেই — শুধু সত্যিকারের ভিন্নমুখী হলেই হলো। এ কারণেই fig 3-এর বিন্দুরা পুরো plane ভরিয়ে দেয়।
দুই নব আসলে এক হলে (dependent): \(b = -1.5a\) হলে রেসিপি \(\alpha a + \beta b = \alpha a - 1.5\beta a = (\alpha - 1.5\beta)\,a\) — যত জটিল মাপই দাও, ফল সবসময় "\(a\)-এর কোনো গুণিতক"। দ্বিতীয় নবটা ভুতুড়ে — ঘোরে, কিন্তু নতুন কিছু করে না। দুই নব মিলে স্বাধীনতা সেই এক dimension-ই। Fig 4-এর ডান প্যানেল ঠিক এটাই দেখালো।
এই গল্পটা \(\mathbb{R}^3\)-এ নিয়ে গেলে আরো সুন্দর দেখায়। দুটো independent vector \(u, v \in \mathbb{R}^3\) নাও — তাদের সব combination মিলে বানায় origin দিয়ে যাওয়া একটা plane — ত্রিমাত্রিক ঘরের ভেতরে ভাসমান এক অসীম কাগজ:

\(u = (2,0,1)\), \(v = (0,2,1)\)-এর span (নীল আভার plane) — \(\mathbb{R}^3\)-এর ভেতরে একটা ২-মাত্রিক জগত। বেগুনি vector \(w = (1,-1,2.5)\) plane-টা ভেদ করে বেরিয়ে গেছে — সে \(\operatorname{span}\{u,v\}\)-এর বাইরে; \(u, v\)-এর কোনো রেসিপিই তাকে বানাতে পারবে না। দুই নবে তিন dimension জয় করা যায় না!
এখান থেকেই এই বইয়ের অন্যতম বড় থিমের জন্ম: ক'টা vector, ক'টা সত্যিকারের দিক, ক'মাত্রার রাজ্য — এই তিনের সম্পর্ক। \(k\)টা independent vector দেয় \(k\)-মাত্রিক span। "মাত্রা" শব্দটাকে অঙ্কের ভাষায় ধরার জন্যই Part IV-তে আসবে Basis(ভিত্তি) আর Dimension(মাত্রা) — আর তাদের পুরো কাঠামো দাঁড়িয়ে থাকবে আজকের এই দুই পায়ের ওপর: linear combination আর span।
শেষ intuition — "span-এ আছে কি?" = "equation solve করো।" \(w = (4,5)\) কি \(\operatorname{span}\{(2,1), (1,2)\}\)-এ? প্রশ্নটা মানে: এমন \(\alpha, \beta\) আছে কি যেন
— entry ধরে ধরে লিখলেই জ্যামিতির প্রশ্ন হয়ে গেল দুই অজানার দুই equation! সমাধান থাকলে \(w\) span-এ, না থাকলে বাইরে। আর "অনেক equation, অনেক অজানা" systematically solve করা — সেটাই Part II-এর পুরো গল্প। Span বুঝলে তুমি আসলে আগেভাগেই জেনে গেলে equation system কখন সমাধানযোগ্য।
৬. Code-এ কেমনে লিখে¶
NumPy-তে linear combination লেখা মানে প্রায় গণিতের লাইনটাই টাইপ করা:
import numpy as np
import matplotlib.pyplot as plt
a = np.array([2., 1.])
b = np.array([1., 2.])
# linear combination: 2a + 1.5b
w = 2 * a + 1.5 * b
print(w) # [5.5 5. ] <- opening figure-এর w
# বিখ্যাত রেসিপিগুলো
print(1*a + 1*b) # [3. 3.] sum
print(0.5*a + 0.5*b) # [1.5 1.5] average/midpoint
print(0*a + 0*b) # [0. 0.] trivial -> zero vector
Span-এর অনুভূতি পেতে এলোমেলো coefficient ছুঁড়ে ছবি আঁকো (fig 3–4 ঠিক এভাবেই বানানো):
np.random.seed(42)
coeffs = np.random.uniform(-2, 2, size=(300, 2)) # ৩০০ জোড়া (alpha, beta)
pts = coeffs @ np.vstack([a, b]) # প্রতি সারি: alpha*a + beta*b
plt.scatter(pts[:, 0], pts[:, 1], s=12, alpha=0.4)
plt.gca().set_aspect('equal'); plt.title('random combinations of a, b')
plt.show()
(@-টা এখানে ৩০০টা combination একসাথে করে দিলো — Part III-তে দেখবে এটা আসলে matrix multiplication; আজ শুধু ফলটা উপভোগ করো।)
"\(w\) কি span-এ?" — কোডে: দুই অজানার equation system NumPy এক লাইনে solve করে:
# alpha*a + beta*b = target solve করা
A = np.column_stack([a, b]) # কলামে a আর b
target = np.array([4., 5.])
alpha, beta = np.linalg.solve(A, target)
print(alpha, beta) # 1.0 2.0
print(np.allclose(alpha*a + beta*b, target)) # True -> span-এ আছে!
np.linalg.solve ভেতরে কী জাদু করে — Part II-তে আমরা সেটা নিজ হাতে বানাবো (Gaussian elimination)। আর dependent ক্ষেত্রে কী হয় দেখো:
w1 = np.array([2., 1.])
w2 = np.array([-3., -1.5]) # w2 = -1.5 * w1 — একই লাইনে!
A_bad = np.column_stack([w1, w2])
try:
np.linalg.solve(A_bad, np.array([1., 2.]))
except np.linalg.LinAlgError as e:
print("LinAlgError:", e) # Singular matrix
NumPy অভিযোগ করলো "Singular matrix" — অনুবাদ: "তোমার দুটো vector আসলে এক দিকের; \((1,2)\) ওই লাইনের বাইরে, পৌঁছানো অসম্ভব।" Dependence শুধু তত্ত্ব নয় — কোডে সে error হয়ে কামড়ায়!
দুটো vector dependent কিনা দ্রুত check: \(\mathbb{R}^2\)-এ \((a_1 b_2 - a_2 b_1)\) রাশিটা শূন্য হলে dependent:
def is_dependent_2d(u, v):
return np.isclose(u[0]*v[1] - u[1]*v[0], 0.0)
print(is_dependent_2d(a, b)) # False (independent)
print(is_dependent_2d(w1, w2)) # True (একই লাইন)
এই ছোট্ট রাশিটার নাম determinant — Part III-এর তারকা; আপাতত একে "collinearity-ডিটেক্টর" বলে ডাকো।
৭. Worked Examples¶
Example 1 — রেসিপি থেকে vector। \(a_1 = (1, 0, 2)\), \(a_2 = (0, 1, -1)\), coefficients \((3, -2)\)। Combination-টা কত?
ধাপ ১: scale করি: \(3a_1 = (3, 0, 6)\); \(-2a_2 = (0, -2, 2)\)। ধাপ ২: যোগ: \((3+0,\; 0-2,\; 6+2) = (3, -2, 8)\)। লক্ষ করো: ফলের প্রথম দুই entry হুবহু coefficient দুটো — কারণ \(a_1, a_2\)-এর প্রথম দুই entry-তে \(e_1, e_2\)-এর মতো গঠন। রেসিপির মাপ মাঝে মাঝে ফলের ভেতরেই পড়া যায়!
Example 2 — vector থেকে রেসিপি (উল্টো যাত্রা)। \(w = (4, 5)\)-কে \(a = (2,1)\), \(b = (1,2)\)-এর combination হিসেবে লেখো।
ধাপ ১: চাই \(\alpha a + \beta b = w\), entry ধরে: \(2\alpha + \beta = 4\) এবং \(\alpha + 2\beta = 5\)। ধাপ ২: প্রথমটা থেকে \(\beta = 4 - 2\alpha\); দ্বিতীয়টায় বসাই: \(\alpha + 2(4 - 2\alpha) = 5 \Rightarrow \alpha + 8 - 4\alpha = 5 \Rightarrow -3\alpha = -3 \Rightarrow \alpha = 1\)। ধাপ ৩: \(\beta = 4 - 2 = 2\)। যাচাই: \(1\,(2,1) + 2\,(1,2) = (2,1) + (2,4) = (4,5)\) ✓। তাই \(w \in \operatorname{span}\{a, b\}\), রেসিপি \((1, 2)\)।
Example 3 — span-এর বাইরে ধরা পড়া। \(t = (3, 4)\) কি \(\operatorname{span}\{(1, 2), (2, 4)\}\)-এ আছে?
ধাপ ১: আগে দেখি vector দুটো কেমন: \((2,4) = 2\,(1,2)\) — dependent! Span তাহলে শুধু \((1,2)\)-এর লাইন। ধাপ ২: \(t\) কি ওই লাইনে? \(t = \beta(1,2)\) চাইলে প্রথম entry বলে \(\beta = 3\), কিন্তু তখন দ্বিতীয় entry \(2 \times 3 = 6 \neq 4\)। উত্তর: না — \(t\) span-এর বাইরে। equation-এর ভাষায়: \(\alpha + 2\beta = 3\), \(2\alpha + 4\beta = 4\) — দ্বিতীয়টা প্রথমটার ঠিক \(2\) গুণ হওয়া উচিত ছিল (\(6\)), কিন্তু আছে \(4\) — self-contradictory system, সমাধান নেই।
৮. Problems ও Solutions¶
Problem 1. \(u = (1, -1, 2)\), \(v = (2, 0, 1)\)। হিসাব করো: (ক) \(3u + 2v\); (খ) \(-u + v\); (গ) \(0u + 0v\); (ঘ) \(\frac12 u + \frac12 v\) — আর (ঘ)-র বিশেষ নামটা কী?
Solution
(ক) \(3u = (3, -3, 6)\), \(2v = (4, 0, 2)\); যোগ: \((7, -3, 8)\)। (খ) \((-1, 1, -2) + (2, 0, 1) = (1, 1, -1)\)। (গ) \((0, 0, 0) = \mathbf 0\) — trivial combination; যেকোনো vector-দল থেকেই এটা মেলে। (ঘ) \(\left(\frac32, -\frac12, \frac32\right)\) — এটা \(u\) ও \(v\)-এর average (coefficients সমান ও যোগফল \(1\), তাই affine combination-ও বটে)।
Problem 2. \(w = (7, 2)\)-কে লেখো: (ক) \(e_1, e_2\)-এর combination হিসেবে; (খ) \(p = (1, 1)\), \(q = (1, -1)\)-এর combination হিসেবে।
Solution
(ক) সোজা: \(w = 7e_1 + 2e_2\) — coefficients হলো entry-গুলোই। (খ) \(\alpha(1,1) + \beta(1,-1) = (7,2)\): \(\;\alpha + \beta = 7\), \(\alpha - \beta = 2\)। দুটো যোগ করলে \(2\alpha = 9 \Rightarrow \alpha = 4.5\); তখন \(\beta = 2.5\)। যাচাই: \(4.5\,(1,1) + 2.5\,(1,-1) = (4.5+2.5,\; 4.5-2.5) = (7, 2)\) ✓। শিক্ষা: একই vector, ভিন্ন "টিউব-সেট", ভিন্ন রেসিপি — কোন vector-দলে কাজ করছো তার ওপর coefficients নির্ভর করে। (Part IV-তে এরই নাম হবে "ভিন্ন basis-এ coordinates"।)
Problem 3. \(v = (2, 4)\)। (ক) \((-1, -2)\) কি \(\operatorname{span}\{v\}\)-এ? (খ) \((5, 1)\)? (গ) \(\operatorname{span}\{v\}\)-কে ছবির ভাষায় এক বাক্যে বর্ণনা করো।
Solution
(ক) হ্যাঁ — \((-1, -2) = -\frac12\,(2, 4)\); coefficient ঋণাত্মক-ভগ্নাংশ হলেও কোনো সমস্যা নেই। (খ) \((5,1) = \beta(2,4)\) চাইলে \(\beta = 2.5\) (প্রথম entry) কিন্তু \(4\beta = 10 \ne 1\) — না, বাইরে। (গ) Origin দিয়ে যাওয়া, \((2,4)\)-মুখী (ঢাল \(2\)) একটা অসীম সরলরেখা।
Problem 4. কোন জোড়াগুলো linearly dependent? কারণসহ: (ক) \((1,2)\) ও \((2,4)\); (খ) \((1,2)\) ও \((2,1)\); (গ) \((0,0)\) ও \((3,5)\); (ঘ) \((1,2,3)\) ও \((-2,-4,-6)\)।
Solution
(ক) Dependent — \((2,4) = 2(1,2)\)। (খ) Independent — \(\beta(1,2) = (2,1)\) চাইলে \(\beta = 2\) ও \(\beta = 0.5\) একসাথে লাগে; অসম্ভব। (Determinant-check: \(1\cdot1 - 2\cdot2 = -3 \ne 0\)।) (গ) Dependent — zero vector যে দলে সে দল সবসময় dependent: \((0,0) = 0\,(3,5)\)। (ঘ) Dependent — \((-2,-4,-6) = -2\,(1,2,3)\); \(\mathbb{R}^3\)-এ থেকেও জুটিটা একই লাইনে।
Problem 5 (রং-মিশ্রণ)। টিউব: লাল \(r = (255, 0, 0)\), সবুজ \(g = (0, 255, 0)\) (RGB, Chapter 1.1-এর Problem 7 মনে করো)। (ক) কমলা \((255, 165, 0)\) বানানোর coefficients বের করো। (খ) সাদা \((255, 255, 255)\) কি \(\operatorname{span}\{r, g\}\)-এ? (গ) \(\operatorname{span}\{r, g\}\)-এর সব রঙের সাধারণ বৈশিষ্ট্য কী?
Solution
(ক) \(\alpha r + \beta g = (255\alpha, 255\beta, 0)\)। চাই \((255, 165, 0)\): \(\alpha = 1\), \(\beta = \frac{165}{255} \approx 0.647\)। — দোকানির "১ ভাগ লাল, \(0.65\) ভাগ সবুজ"! (খ) না। যেকোনো combination-এর তৃতীয় entry (Blue) \(= 255\alpha \cdot 0 + 255\beta \cdot 0 = 0\), কিন্তু সাদার Blue \(= 255 \neq 0\)। নীল টিউব ছাড়া সাদা অসম্ভব। (গ) সবার Blue-entry শূন্য — \(\operatorname{span}\{r, g\}\) হলো \(\mathbb{R}^3\)-এর ভেতরে "Blue \(= 0\)" plane-টা (fig 5-এর মতোই একটা ২-মাত্রিক জগত)।
Problem 6. \(u = (1, 0, 0)\), \(v = (0, 1, 0) \in \mathbb{R}^3\)। (ক) \(\operatorname{span}\{u, v\}\) কোন সেট — বর্ণনা করো। (খ) \((2, 3, 0)\) কি এতে আছে? রেসিপিসহ। (গ) \((0, 0, 1)\)? (ঘ) \(\operatorname{span}\{u, v, (0,0,1)\}\) কত বড়?
Solution
(ক) \(\alpha u + \beta v = (\alpha, \beta, 0)\) — তৃতীয় entry-শূন্য সব vector, অর্থাৎ \(xy\)-plane। (খ) হ্যাঁ: \((2, 3, 0) = 2u + 3v\)। (গ) না — তৃতীয় entry \(1 \ne 0\); \(xy\)-plane থেকে উপরে ওঠার কোনো নব আমাদের হাতে নেই। (ঘ) তিনটাই \(e_1, e_2, e_3\) — আর \(x = x_1e_1 + x_2e_2 + x_3e_3\) সূত্রে যেকোনো vector বানানো যায়; তাই span \(= \mathbb{R}^3\) — পুরো space।
Problem 7. সত্য/মিথ্যা — কারণসহ: (ক) \(\mathbf 0\) যেকোনো vector-দলের span-এ থাকে; (খ) \(v \neq \mathbf 0\) হলে \(\operatorname{span}\{v\} = \operatorname{span}\{2v\}\); (গ) \(w \in \operatorname{span}\{a, b\}\) হলে \(\operatorname{span}\{a, b, w\} = \operatorname{span}\{a, b\}\); (ঘ) \(\mathbb{R}^2\)-এর যেকোনো দুটো nonzero vector-এর span \(= \mathbb{R}^2\)।
Solution
(ক) সত্য। সব coefficient \(0\) (trivial combination) দিলেই \(\mathbf 0\)। (খ) সত্য। \(\beta v = \frac{\beta}{2}(2v)\) — \(v\)-এর প্রতিটা গুণিতক \(2v\)-এরও গুণিতক, আর উল্টোটাও। একই লাইন, শুধু "টিউবের ঘনত্ব" আলাদা। (গ) সত্য। \(w\) এমনিতেই বানানো যেত; \(w\)-ওয়ালা যেকোনো রেসিপিতে \(w\)-এর জায়গায় তার \(a,b\)-রেসিপি বসিয়ে দাও — ফল \(a, b\)-এর combination-ই থাকে (property ঘ)। (ঘ) মিথ্যা। Collinear হলে আটকে যাবে: \(\operatorname{span}\{(1,1), (2,2)\}\) শুধুই একটা লাইন। "দুটো vector" যথেষ্ট নয় — লাগে "দুটো independent vector"।
Problem 8 (চ্যালেঞ্জ — রেসিপি কি একটাই?)। তিনটা vector: \(e_1 = (1,0)\), \(e_2 = (0,1)\), \(c = (3,4)\)। (ক) দেখাও দলটা linearly dependent। (খ) \(t = (5, 6)\)-কে এই তিনজনের combination হিসেবে দুটি ভিন্ন রেসিপিতে লেখো। (গ) এ থেকে কী শিখলে — কখন রেসিপি unique হয়?
Solution
(ক) \(c = 3e_1 + 4e_2\) — তৃতীয়জন প্রথম দুজনের combination; সংজ্ঞামতেই dependent। (খ) রেসিপি ১ (\(c\)-কে না ছুঁয়ে): \(t = 5e_1 + 6e_2 + 0\,c\)। রেসিপি ২ (\(c\)-এর এক চামচ): \(t = 1\cdot c + (5-3)e_1 + (6-4)e_2 = 2e_1 + 2e_2 + 1\,c\)। যাচাই: \(2(1,0) + 2(0,1) + (3,4) = (5, 6)\) ✓। (আসলে \(c\)-এর চামচ যত খুশি — অসীম রেসিপি!) (গ) Dependent দলে রেসিপি কখনোই unique নয় — redundant সদস্যের ভাগ কমিয়ে-বাড়িয়ে একই ফল বানানো যায়। রেসিপি unique হয় তখনই যখন দলটা independent — এই "unique রেসিপি"-র ধারণাটাই Part IV-তে Basis আর Coordinates-এর প্রাণ।
৯. Common ভুল¶
- Span-কে ছোট্ট তালিকা ভাবা — "\(\operatorname{span}\{a,b\}\) মানে \(a\), \(b\), আর \(a+b\)" — ভুল! Span মানে সব সম্ভব \(\alpha a + \beta b\), যেখানে \(\alpha, \beta\) যেকোনো real সংখ্যা — প্রায় সবসময়ই একটা অসীম সেট (লাইন/plane/space)।
- "দুটো vector = plane" মুখস্থ করা — collinear জুটি plane নয়, লাইন spans করে (fig 4-এর ডান প্যানেল)। আগে independence check, তারপর সিদ্ধান্ত।
- Coefficient-দের ধনাত্মক পূর্ণসংখ্যা ভাবা — \(\beta\)-রা ঋণাত্মক, ভগ্নাংশ, শূন্য — সব হতে পারে। \((-1, -2) = -0.5\,(2,4)\) দিব্যি বৈধ combination।
- "\(w\) কি span-এ" চোখের আন্দাজে বলা — 2D ছবিতে আন্দাজ চলে, কিন্তু \(\mathbb{R}^5\)-এ চোখ নেই! ভরসা একটাই: equation system বানাও, solve করো — সমাধান থাকলে ভেতরে, না থাকলে বাইরে (Example 3)।
- Dependent মানে "দুটো vector সমান" ভাবা — না; dependent মানে একই লাইনে/একজন অন্যদের রেসিপি — \((2,4)\) আর \((-1,-2)\) মোটেই সমান না, তবু dependent। আর উল্টোদিকে, zero vector-ওয়ালা দল দেখলেই বলে দাও: dependent।
১০. এক নজরে¶
| ধারণা | সূত্র/সংজ্ঞা | মনে রাখার ছবি |
|---|---|---|
| Linear combination | \(\beta_1 a_1 + \cdots + \beta_k a_k\) | scale করে যোগ — রেসিপি |
| Coefficient | \(\beta_1, \dots, \beta_k\) | রেসিপির মাপ / মেশিনের নব |
| Trivial combination | সব \(\beta_i = 0\), ফল \(\mathbf 0\) | "কিছুই মেশাইনি" |
| Span | সব combination-এর সেট | "কতদূর পৌঁছানো যায়" — রাজ্যের মানচিত্র |
| \(\operatorname{span}\{v\}\), \(v \ne \mathbf 0\) | \(\{\beta v\}\) | origin দিয়ে যাওয়া লাইন |
| \(\operatorname{span}\{a, b\}\) (independent) | \(\mathbb{R}^2\)-এ পুরো plane | দুই ভিন্ন নব = 2D স্বাধীনতা |
| Linearly dependent | কেউ বাকিদের combination | ভুতুড়ে নব — নতুন দিক নেই |
| Linearly independent | কেউই বাকিদের combination নয় | প্রত্যেকে নতুন খবর |
| দুই vector-এর test | \(b = \beta a\)? / \(a_1b_2 - a_2b_1 = 0\)? | collinear কি না |
| Span-membership | equation system solve | সমাধান আছে \(\iff\) ভেতরে |
পরের Part-এর সেতু: Part I শেষ — তুমি এখন vector চেনো, মেশাতে-মাপতে-তুলনা করতে পারো, আর জানো কয়েকটা vector মিলে কত বড় রাজ্য শাসন করে। শেষ প্রশ্নটা খেয়াল করেছো? "\(w\) কি span-এ?" জিজ্ঞেস করা মাত্রই বেরিয়ে এলো কয়েকটা অজানার কয়েকটা equation। দুটো অজানায় হাতে-কলমে পারলে; কিন্তু ১০০টা অজানার ১০০টা equation? Part II-তে আমরা শিখবো মানুষের ইতিহাসের অন্যতম দরকারি algorithm — Gaussian Elimination — যে যন্ত্র যেকোনো linear system-কে ধাপে ধাপে নিরস্ত্র করে। Span-এর দার্শনিক প্রশ্ন আর সমীকরণের কারিগরি হিসাব — দুটো যে একই মুদ্রার দুই পিঠ, সেটাই হবে সামনের বড় উপলব্ধি।
📓 Notebook Project¶
notebooks/part-01/ch05-project.ipynb — scratch-এ linear-combination মেশিন বানাও, এলোমেলো coefficient ছুঁড়ে span-এর ছবি আঁকো (লাইন বনাম plane নিজের চোখে), "\(w\) কি span-এ?" solver লেখো (হাতে-বানানো ও np.linalg.solve — দুইভাবে), আর RGB রং-মিশ্রণ experiment-এ দেখো কোন রং লাল-সবুজের রাজ্যের বাইরে।