Relation
সম্পর্ক
`A × B`-এর একটা উপসেট — কে কার সাথে যুক্ত তার সংগ্রহ। Database-এর 'relational' শব্দটা এখান থেকেই।
R ⊆ A × B। (a,b) ∈ R লেখা হয় a R b।
তিনভাবে একই জিনিস: জোড়ার set, boolean matrix, বা directed [[graph]]। কোনটা ব্যবহার করবেন তা নির্ভর করে কী হিসাব করবেন তার উপর।
চারটা ধর্ম যা সব শ্রেণিবিভাগ নির্ধারণ করে:
| ধর্ম | সংজ্ঞা |
|---|---|
| Reflexive | ∀a (a R a) |
| Symmetric | a R b → b R a |
| Antisymmetric | a R b ∧ b R a → a = b |
| Transitive | a R b ∧ b R c → a R c |
RST → [[equivalence-relation]] (জিনিস শ্রেণিতে ভাগ করে) R + antisym + T → [[partial-order]] (আগে-পরে সাজায়)
Antisymmetric ≠ not symmetric — = দুটোই, “বন্ধু” শুধু
symmetric, “নির্ভর করে” শুধু antisymmetric, আর কিছু relation
কোনোটাই নয়।
Codd-এর ১৯৭০-এর পেপারে “relational” মানে UI-তে টেবিল দেখা নয়, বরং গাণিতিক relation — আর সেজন্যই SQL-এ set operation আর relational algebra কাজ করে।