You are on page 1of 63

‫ساختمانهای گسسته‬

‫‪Discrete Mathematics‬‬
‫فصل دوم‬
‫روابط‬
‫‪1‬‬
‫فصل دوم‬
‫روابط‬
‫ماتریس روابط‬ ‫‪.1‬‬
‫گراف های سودار‬ ‫‪.2‬‬
‫خواص روابط‬ ‫‪.3‬‬
‫روابط هم ارزی‬ ‫‪.4‬‬
‫عملیات بر روابط‬ ‫‪.5‬‬
‫بستارها‬ ‫‪.6‬‬
‫ترکیب روابط‬ ‫‪.7‬‬

‫‪2‬‬
‫مقدمه‬

‫• اصطالح رابطه بین دو مجموعه از اشیاء‪ ،‬اصطالح روشن و متداولی است‪.‬‬

‫• مثال‪ :‬اگر‬
‫– ‪ A‬مجموعه مردها‪xA ،‬‬

‫– ‪ B‬مجموعه زن ها‪yB ،‬‬

‫– رابطه ای مانند ‪ ( P‬رابطه پدری) را می توان از ‪ A‬به ‪ B‬تعریف نمود‪:‬‬

‫– ‪ P‬رابطه پدری‪ :‬هر گاه ‪ x‬پدر ‪ y‬باشد‪(xPy) .‬‬

‫– ‪ F‬رابطه فرزندی‪ :‬هر گاه ‪ x‬فرزند ‪ y‬باشد‪(xFy) .‬‬

‫– ‪ H‬رابطه همسری‪ :‬هر گاه ‪ x‬همسر ‪ y‬باشد‪(xHy) .‬‬

‫‪3‬‬
‫مقدمه‪...‬‬

‫• تعریف ‪:‬‬
‫– فرض کنید ‪ A,B‬دو مجموعه غیر تهی باشند‪،‬‬

‫– یک رابطه(دودویی) ‪ R‬از ‪ A‬به ‪،B‬‬

‫– زیر مجموعه ای از ‪(AxB‬حاصل ضرب دکارتی ‪ A‬در ‪ )B‬است‬

‫– اگر ‪ (a,b)  R‬و ‪ RAxB‬آنگاه گوییم که‬

‫– ‪ a‬از طریق ‪ R‬به ‪ b‬مربوط است‪aRb ،‬‬

‫– اگر ‪ a‬به ‪ b‬مربوط نباشد‪ ،‬خواهیم نوشت‪aRb :‬‬

‫• تعریف‪ :‬اگر ‪ A=B‬باشد‪ ،‬خواهیم گفت‪:‬‬


‫– ‪ R‬یک رابطه در ‪ A‬است‪.‬‬

‫‪4‬‬
‫مقدمه‪...‬‬

‫• مثال‪ :‬فرض کنید‬


‫}‪ A={a, b, c, d‬مجموعه دانشجویان –‬

‫–‬ ‫}‪ B={DM, NC, CG, DS, OS, OR‬مجموعه دروس‬

‫– ‪ AxB‬مجموعه تمامی دوتایی های ممکن از دانشجوبان و دروس را به دست میدهد‪.‬‬

‫– رابطه ای مثل زیر‪ ،‬برای توضیح اینکه چه دروسی را دانشجویان اخذ کرده اند‬

‫} )‪R = { (a,DM), (b,NC), (b,CG), (c,NC), (c,DS), (c,OS), (d,OS), (d,OR‬‬

‫– و رابطه ‪ T‬بیانگر این مطلب که کدام یک از دانشجویان در کدام یک از دروس مشکل دارند‪:‬‬

‫} )‪T = { (a,DM), (c,DS), (c,OS‬‬

‫‪5‬‬
‫مقدمه‪...‬‬

‫• مثال‪ :‬فرض کنید‬


‫}مجموعه اعداد صحیح و مثبت{‪– A=B=Z+‬‬

‫– رابطه ‪ R‬در ‪ Z+‬را بصورت زیر تعریف می کنیم‪:‬‬

‫– ‪ aRb‬اگر و تنها اگر ‪ b‬بر ‪ a‬بخش پذیر باشد‪ a(.‬مقدار ‪ b‬را بشمارد – عاد کند‪)-‬‬

‫– بعنوان نمونه داریم‪:‬‬


‫‪– 4R12, 3R27, 5R7‬‬

‫‪6‬‬
‫‪ -1‬ماتریس روابط‬

‫اگر ‪ A, B‬دو مجموعه متناهی با ‪ m, n‬عضو باشند‪:‬‬ ‫•‬

‫} ‪• A = { a1, a2, …, am‬‬


‫} ‪• B = { b1, b2, …, bn‬‬
‫و ‪ R‬یک رابطه از ‪ A‬به ‪ B‬باشد‪ ،‬آنگاه‪:‬‬ ‫•‬

‫رابطه ‪ R‬را می توان بصورت یک ماتریس ‪ mxn‬مثل ]‪ MR=[mij‬نمایش داد‪ ،‬که در آن‬ ‫•‬

‫‪1‬‬ ‫هر گاه ‪(ai,bj)R‬‬

‫=‪mij‬‬
‫‪0‬‬ ‫هر گاه ‪(ai,bj)R‬‬

‫‪ MR‬را ماتریس رابطۀ ‪ R‬می نامیم‪.‬‬

‫به چنین ماتریسی که فقط حاوی ‪0‬و‪ 1‬است ماتریس بولی گفته می شود‪.‬‬
‫‪7‬‬
‫‪ -1‬ماتریس روابط‪...‬‬

‫اگر ‪ A, B‬دو مجموعه باشند بصورت‪:‬‬ ‫•‬

‫} ‪• A = { 1, 2, 3‬‬
‫} ‪• B = { a, b‬‬
‫و ‪ R‬یک رابطه از ‪ A‬به ‪ B‬باشد بصورت ‪:‬‬ ‫•‬

‫} )‪• R = { (1, a), (2, b), (3, a‬‬

‫ماتریس رابطه ‪ R‬که‪ MR‬است خواهد شد‪:‬‬ ‫•‬


‫‪a‬‬ ‫‪b‬‬
‫‪1‬‬‫‪1 0‬‬
‫‪M R  2 0 1‬‬
‫‪3‬‬ ‫‪1 0‬‬

‫‪8‬‬
‫‪ -1‬ماتریس روابط‪...‬‬

‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫مثال‪:‬‬ ‫•‬


‫‪a‬‬‫‪1 0 0 1‬‬ ‫– ماتریس روابط زیر موجود است ‪:‬‬
‫‪M R  b 0 1 1 0‬‬
‫‪c‬‬ ‫‪1 0 1 0‬‬
‫– با فرض اینکه‬

‫– }‪ A={a,b,c‬و‬

‫– }‪B={1,2,3,4‬‬

‫– آنگاه رابطه ‪ R‬بصورت زیر خواهد شد‪:‬‬


‫} )‪• R={ (a,1), (a,4), (b,2), (b,3), (c,1), (c,3‬‬

‫‪9‬‬
‫‪ -1‬ماتریس روابط‪...‬‬
‫مجموعه نسبی‬

‫• تعریف‪:‬‬
‫– اگر ‪ R‬یک رابطه از ‪ A‬به ‪ B‬باشد‬

‫– آنگاه مجموعه نسبی ‪ x‬نسبت به ‪ R‬که با )‪ R(x‬نمایش میدهیم‬

‫} ‪R(x) = { y | yB , xRy‬‬

‫به طریق مشابه‬ ‫•‬


‫– اگر ‪A1A‬‬

‫– در اینصورت مجموعه نسبی ‪ A1‬نسبت به ‪ R‬بصورت زیر است‪:‬‬

‫}‪R(A1) = { y | yB, xRy for xA1‬‬

‫‪10‬‬
...‫ ماتریس روابط‬-1
‫مجموعه نسبی‬

‫• مثال‬

• A = B = { a, b, c, d }

• R = { (a,a), (a,b), (b,c), (c,a), (d,c), (c,b) }

: ‫• آنگاه‬

• R(a) = { a, b }
• A1 = { c, d }  R(A1) = { a, b, c }

11
‫‪ -1‬ماتریس روابط‪...‬‬
‫عملیات منطقی روی ماتریس های بولی‬

‫• فرض کنید ‪:‬‬


‫]‪• A = [aij‬‬ ‫‪nxm‬‬

‫]‪• B = [bij‬‬ ‫‪nxm‬‬

‫• آنگاه وست ‪ A, B‬ماتریسی ‪ nxm‬است بصورت ‪:‬‬

‫)‪• C =[cij] = A V B (join‬‬


‫‪1‬‬ ‫اگر )‪ bij=1‬یا ‪(aij=1‬‬

‫=‪cij‬‬
‫‪0‬‬ ‫در غیر اینصورت‬

‫‪12‬‬
‫‪ -1‬ماتریس روابط‪...‬‬
‫عملیات منطقی روی ماتریس های بولی ‪...‬‬

‫• فرض کنید ‪:‬‬


‫]‪• A = [aij‬‬ ‫‪nxm‬‬

‫]‪• B = [bij‬‬ ‫‪nxm‬‬

‫• آنگاه رسند ‪ A, B‬ماتریسی ‪ nxm‬است بصورت ‪:‬‬

‫)‪• D =[dij] = A Λ B (meet‬‬


‫‪1‬‬ ‫اگر )‪ bij=1‬و ‪(aij=1‬‬

‫=‪dij‬‬
‫‪0‬‬ ‫در غیر اینصورت‬

‫‪13‬‬
...‫ ماتریس روابط‬-1
... ‫عملیات منطقی روی ماتریس های بولی‬

‫• مثال‬
1 0 1 1 1 0 :‫– فرض کنید‬
0 1 1 1 0 1
A B
1 1 0 0 0 1
   
0 0 0 1 0 1

‫– آنگاه‬
1 1 1 1 0 0
1 1 1 0 0 1
AVB   AB  
1 1 1 0 0 0
   
1 0 1 0 0 0

14
‫‪ -1‬ماتریس روابط‪...‬‬
‫عملیات منطقی روی ماتریس های بولی ‪...‬‬

‫• حاصل ضرب بولی‬


‫– فرض کنید ‪:‬‬

‫]‪• A = [aij‬‬ ‫‪nxp‬‬

‫]‪• B = [bij‬‬ ‫‪pxm‬‬


‫– آنگاه حاصل ضرب بولی ‪ A, B‬ماتریسی ‪ mxp‬است بصورت ‪:‬‬

‫‪• AB = C = [cij] nxm‬‬


‫‪1‬‬ ‫اگر )‪k 1≤k≤p‬به نحوی که ‪ bkj=1‬و ‪(aik=1‬‬

‫=‪cij‬‬
‫‪0‬‬ ‫در غیر اینصورت‬

‫‪15‬‬
‫‪ -1‬ماتریس روابط‪...‬‬
‫عملیات منطقی روی ماتریس های بولی ‪...‬‬

‫• مثال‬
‫‪1‬‬ ‫‪1 0‬‬ ‫– فرض کنید‪:‬‬
‫‪0‬‬ ‫‪1 0 0 0‬‬
‫‪1 0‬‬
‫‪A‬‬ ‫‪B  0 1 1 0‬‬
‫‪1‬‬ ‫‪1 0‬‬
‫‪‬‬ ‫‪‬‬ ‫‪1 0 1 1‬‬
‫‪0‬‬ ‫‪0 1‬‬
‫‪3x4‬‬
‫‪4x3‬‬
‫– آنگاه‬
‫‪1‬‬ ‫‪1 1 0‬‬
‫‪0‬‬ ‫‪1 1 0‬‬
‫‪A B  ‬‬
‫‪1‬‬ ‫‪1 1 0‬‬
‫‪‬‬ ‫‪‬‬
‫‪1‬‬ ‫‪0 1 1‬‬
‫‪4x3‬‬

‫‪16‬‬
‫‪ -2‬گراف های سودار‬

‫• گراف سودار‬
‫– اگر ‪ A‬یک مجموعه متناهی‬
‫– ‪ R‬یک رابطه در ‪ A‬باشد‪،‬‬
‫– آنگاه رابطۀ ‪ R‬را می توان بصورت گراف سودار رسم نمود‪.‬‬
‫مثال‪ :‬اگر‬ ‫•‬

‫} ‪• A = { 1, 2, 3, 4‬‬

‫} )‪• R = { (1,1), (1,2), (2,1), (2,2), (2,3), (2,4), (3,4), (4,1‬‬


‫آنگاه گراف سودار ‪ R‬بصورت زیر خواهد شد‪.‬‬ ‫•‬
‫‪1‬‬ ‫‪2‬‬

‫‪4‬‬ ‫‪3‬‬

‫‪17‬‬
‫‪ -2‬گراف های سودار‪...‬‬
‫طبیعتاً یک مجموعه از رئوس به همراه یال های بین برخی از آنها نیز یک رابطه را تعریف می کند‬ ‫•‬

‫‪1‬‬ ‫‪2‬‬

‫‪4‬‬ ‫‪3‬‬
‫که می توان آن را بصورت رابطۀ زیر نوشت‪:‬‬ ‫•‬

‫} )‪• R = { (1,1), (1,3),(2,3), (3,2), (3,3) (4,3‬‬

‫‪18‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‬
‫• اگر ‪ R‬یک رابطه در ‪ A‬باشد‪:‬‬
‫– یک مسیر از ‪ a‬به ‪ b‬به طول ‪n‬‬
‫– رشته ای متناهی است‪ ،‬مانند‬
‫‪ = a, x1, x2, …, xn-1, b‬‬
‫– شروع از راس ‪ a‬و به راس ‪ b‬خاتمه می یابد‪ ،‬بگونه ای که‬
‫‪– aRx1, x1Rx2, …, xn-1Rb‬‬
‫– یک مسیر به طول ‪ n‬باید داری ‪ n+1‬عنصر از ‪ A‬باشد‪.‬‬
‫– (این عناصر الزاماً متمایز نیستند)‬

‫‪1‬‬ ‫‪2‬‬

‫‪4‬‬ ‫‪3‬‬

‫‪19‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‪...‬‬
‫• نمایش مسیر به کمک گراف سودار‬
‫• مسیر دنباله ای است از یالها‬
‫• که سوهای مشخص شده در آنها دنبال شود‪.‬‬
‫• طول مسیر برابر با تعداد یالهای آن تعریف می شود‪.‬‬
‫• مثال‪ :‬در گراف سودار زیر‬
‫‪1‬‬ ‫‪2‬‬

‫‪3‬‬
‫‪ 1= 1, 2, 5, 4, 3‬مسیری به طول ‪ 4‬از راس ‪ 1‬به راس ‪3‬‬
‫‪5‬‬ ‫‪4‬‬ ‫‪ 2= 1, 2, 5, 1‬مسیری به طول ‪ 3‬از راس ‪ 1‬به خودش‬
‫‪ 3= 2, 2‬مسیری به طول ‪ 1‬از راس ‪ 2‬به خودش‬

‫‪20‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‪...‬‬
‫• مدار‬
‫– مسیری که از یک راس شروع شود و به خودش خاتمه پیدا کند‪.‬‬
‫– ‪ 2‬و ‪ 3‬دو مدار با طولهای ‪ 3‬و ‪ 1‬می باشند‬
‫• حلقه‬
‫– مدار به طول ‪ 1‬را حلقه گویند‪.‬‬

‫‪1‬‬ ‫‪2‬‬ ‫• رابطه ‪ Rn‬در ‪ A‬بصورت زیر تعریف می شود‪:‬‬


‫– ‪ xRny‬هر گاه مسیری به طول ‪ n‬از ‪ x‬به ‪ y‬موجود باشد‪.‬‬
‫‪3‬‬
‫• رابطه ‪ R‬در ‪ A‬بصورت زیر تعریف می شود‪:‬‬
‫‪5‬‬ ‫‪4‬‬
‫– ‪ xRy‬هر گاه مسیری از ‪ x‬به ‪ y‬موجود باشد‪( .‬با هر طولی)‬

‫‪21‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‪...‬‬
‫• مثال – فرض کنید‪:‬‬
‫– ‪ A‬مجموعه شهرهای ایران‬
‫– ‪ xRy‬جاداه ای مستقیم از ‪ x‬به ‪ y‬باشد‬
‫– آنگاه ‪:‬‬
‫– ‪ xRny‬در صورتی که بتوان از شهر ‪ x‬با گذر از ‪ n-1‬شهر میانی به شهر ‪ y‬رسید‪.‬‬
‫– ‪ xRy‬اینکه مسیری از شهر ‪ x‬به شهر ‪ y‬وجود داشته باشد‪(.‬با هر طول)‬
‫‪a‬‬ ‫‪b‬‬ ‫• مثال – فرض کنید‬
‫– } ‪A={ a, b, c, d, e‬‬
‫‪d‬‬ ‫‪c‬‬ ‫– } )‪R = { (a, a), (a, b), (b, c), (c, e), (c, d), (d, e‬‬
‫• گراف سودار‪:‬‬
‫‪e‬‬
‫– ‪{(a, a), (a, b), (a, c), (b, e), (b, d), (c, e) }  R2‬‬
‫– ‪{ (a, a), (a, b), (a, c), (a, d), (a, e), (b, c), (b, d), (b, e), (c, d), (c, e), (d, e) }  R‬‬

‫‪22‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‪...‬‬
‫• قضیه – ارتباط بین ماتریس رابطه ‪ MR2‬و ماتریس رابطه ‪MR‬‬
‫‪• MR2 = MR  MR‬‬

‫‪1‬‬ ‫‪1 0 0 0‬‬


‫برای اختصار ‪ MR  MR‬را گاهی با ‪(MR)2‬‬ ‫•‬
‫‪0‬‬ ‫‪0 1 0 0‬‬
‫‪‬‬
‫‪M R  0‬‬ ‫‪0 0 1 1‬‬ ‫مثال ‪ :‬ماتریس ‪ MR2‬را برای رابطۀ ارائه شده زیر بدست آورید‪.‬‬ ‫•‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0 1‬‬
‫‪0‬‬ ‫‪0 0 0 0‬‬
‫‪a b c d e‬‬
‫‪1‬‬ ‫‪1 0 0 0 1‬‬ ‫‪1 0 0 0‬‬ ‫‪a‬‬ ‫‪1‬‬ ‫‪1 1 0 0‬‬
‫‪0‬‬ ‫‪0 1 0 0 0‬‬ ‫‪0 1 0 0‬‬ ‫‪0‬‬ ‫‪0 0 1 1‬‬
‫‪‬‬ ‫‪b‬‬ ‫‪‬‬
‫‪MR2 = MR  MR = 0‬‬ ‫‪0 0 1 1   0‬‬
‫‪ ‬‬
‫‪0 0 1 1 ‬‬
‫‪‬‬
‫‪c‬‬ ‫‪0‬‬
‫‪‬‬
‫‪0 0 1 1‬‬
‫‪‬‬
‫‪0‬‬ ‫‪0 0 0 1  0‬‬ ‫‪0 0 0 1‬‬ ‫‪d‬‬ ‫‪0‬‬ ‫‪0 0 0 0‬‬
‫‪0‬‬ ‫‪0 0 0 0 0‬‬ ‫‪0 0 0 0‬‬ ‫‪e‬‬ ‫‪0‬‬ ‫‪0 0 0 0‬‬

‫که همان نتیجه ای است که قبال بدست آمده بود‪.‬‬ ‫•‬


‫و روش بسیار ساده تری می باشد‪.‬‬ ‫•‬

‫‪23‬‬
‫‪ -2‬گراف های سودار…‬
‫مسیرها‪...‬‬
‫• قضیه – ارتباط بین ماتریس رابطه ‪ MRn‬و ماتریس رابطه ‪MR‬‬
‫‪• MRn = MR  … MR = (MR)n‬‬

‫• حال می توانیم نحوه محاسبه ‪ MR‬را بدست آوریم‪.‬‬

‫… ‪R = R U R2 U R3 u‬‬
‫… ‪MR = MR V MR2 V MR3… = MR V (MR)2 V (MR)3‬‬

‫‪24‬‬
‫‪ -3‬خواص روابط‬
‫رابطه بازتابی‪ ،‬ضد بازتابی‬
‫• رابطه ‪ R‬را در مجموعه ‪ A‬بازتابی گوییم هرگاه‪:‬‬
‫– برای هر ‪ ،aA‬داشته باشیم ‪( aRa‬هر عضو با خودش در ارتباط باشد)‬
‫• رابطه ‪ R‬را در مجموعه ‪ A‬بازتابی گوییم هرگاه‪:‬‬
‫– برای هر ‪ ،aA‬داشته باشیم ‪( aRa‬هر عضو با خودش در رابطه نباشد)‬

‫• مثال‬
‫– فرض کنید ‪ A‬مجموعه دروس ارائه شده توسط دانشکده و‬
‫– ‪ R‬رابطه ای در ‪ A‬بصورت زیر باشد‬
‫– برای هر درس ‪ a,b‬از ‪ aRb ،A‬اگر و تنها اگر امتحانات آنها همزمان باشد‪.‬‬
‫– بدیهی است که برای هر درسی مانند ‪  aRa ،a‬لذا ‪ R‬یک رابطه بازتابی است‪.‬‬

‫‪25‬‬
‫‪ -3‬خواص روابط‬
‫رابطه بازتابی‪ ،‬ضد بازتابی‪...‬‬
‫• شناسایی رابطه بازتابی و ضد بازتابی از روی ماتریس روابط آنها‬
‫– در ماتریس یک رابطه بازتابی‪ ،‬همه عناصر تمام قطر اصلی‪ ،‬یک هستند‪.‬‬
‫– در ماتریس یک رابطه ضد بازتابی‪ ،‬همه عناصر تمام قطر اصلی‪ ،‬صفر هستند‪.‬‬

‫• شناسایی رابطه بازتابی و ضد بازتابی از روی گراف سودار‬


‫– در رابطه بازتابی‪ ،‬تمام رئوس دارای حلقه هستند‪.‬‬
‫– در رابطه ضد بازتابی‪ ،‬هیچ حلقه ای وجود ندارد‪.‬‬

‫‪26‬‬
‫‪ -3‬خواص روابط‬
‫روابط متقارن و ضد متقارن‬
‫• رابطه ‪ R‬را در مجموعه ‪ A‬متقارن گوییم هرگاه‪:‬‬
‫– اگر هرگاه ‪ ، aRb‬آنگاه ‪bRa‬‬
‫• اگر برای بعضی از عناصر ‪ A‬مثل ‪a,b‬داشته باشیم‬
‫– ‪ aRb‬ولی ‪ ، bRa‬آنگاه ‪ R‬متقارن نخواهد بود‪.‬‬

‫• رابطه ‪ R‬را در مجموعه ‪ A‬ضد متقارن گوییم هرگاه‪:‬‬


‫– از ‪ aRb‬و ‪ bRa‬بتوان ‪ a=b‬را نتیجه گرفت‪.‬‬

‫• مثال‪ :‬فرض کنید‬


‫– ‪ A‬مجموعه دانشجویان و ‪ R‬رابطه همکالسی بودن‪ ،‬باشد‪ .‬آنگاه ‪:‬‬
‫– ‪ R‬متقارن است‪.‬‬
‫– ‪ R‬ضد متقارن نیست‬
‫‪27‬‬
‫‪ -3‬خواص روابط‬
‫روابط متقارن و ضد متقارن‪...‬‬
‫• مثال‪ :‬فرض کنید‬
‫‪A =Z ‬‬
‫‪ ‬و ‪ R‬رابطه ≤ باشد‪ .‬آنگاه ‪:‬‬
‫‪ R ‬متقارن نیست‪.‬‬
‫‪ R ‬ضد متقارن هست‪.‬‬

‫• ‪ R‬رابطه همکالسی بودن‪ ،‬باشد‬


‫– ‪ R‬متقارن است‪.‬‬
‫– ‪ R‬ضد متقارن نیست‬

‫‪28‬‬
‫‪ -3‬خواص روابط‬
‫روابط متقارن و ضد متقارن‪...‬‬
‫• مثال‪ :‬فرض کنید‬
‫} ‪A = { a, b, c‬‬
‫} )‪R = { (a, a), (b, b‬‬
‫} )‪T = { (a, b), (a, c), ( c, a‬‬
‫– ‪:R‬‬
‫• متقارن و‬
‫• ضد متقارن است‪.‬‬

‫– ‪:T‬‬
‫• نه متقارن و‬
‫• نه ضد متقارن است‪.‬‬

‫‪29‬‬
‫‪ -3‬خواص روابط‬
‫روابط متقارن و ضد متقارن‪...‬‬
‫• مثال‪ :‬ماتریس های روابط زیر مفروضند‬
‫‪0‬‬ ‫‪0 1 1‬‬
‫‪1 0 1‬‬ ‫‪0‬‬ ‫‪1 1 1‬‬
‫‪0 1 0‬‬
‫‪M R  0 0 1‬‬ ‫‪Ms  ‬‬ ‫‪M T  0 1 0‬‬
‫‪0‬‬ ‫‪0 0 1‬‬
‫‪1 1 1‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪0 0 0‬‬
‫‪1‬‬ ‫‪0 0 0‬‬

‫– ‪R‬‬
‫• متقارن‬
‫• ضد متقارن نیست‪.‬‬

‫– ‪S‬‬
‫• متقارن نیست‬
‫• ضد متقارن نیست‬

‫– ‪T‬‬
‫• متقارن نیست‬
‫• ضد متقارن هست‪.‬‬

‫‪30‬‬
‫‪ -3‬خواص روابط‬
‫رابطه متقارن و ضد متقارن از روی گراف سودار‬
‫• ‪ R‬متقارن است‬
‫– اگر یالی از ‪ i‬به ‪ j‬موجود باشد‬
‫– آنگاه یالی از ‪ j‬به ‪ i‬نیز موجود باشد‪.‬‬

‫• ‪ R‬ضد متقارن است‬


‫– برای دو راس متمایز ‪ i‬به ‪j‬‬
‫– نمی توان هم یک یال از ‪ i‬به ‪j‬‬
‫– و هم از ‪ j‬به ‪ i‬باشد‪.‬‬
‫– برای ‪ i=j‬شرطی موجود نیست‪.‬‬

‫‪31‬‬
‫‪ -3‬خواص روابط‬
‫رابطه متعدی‬
‫• رابطه ‪ R‬در ‪ A‬متعدی است ‪ ،‬هرگاه ‪:‬‬
‫– برای هر ‪a, b, c A‬‬
‫– اگر ‪ aRb‬و ‪bRc‬‬
‫– آنگاه ‪aRc‬‬

‫• رابطه ‪ R‬متعدی نیست ‪ ،‬اگر‪:‬‬


‫– اگر ‪ aRb‬و ‪bRc‬‬
‫– آنگاه ‪aRc‬‬

‫‪32‬‬
‫‪ -3‬خواص روابط‬
‫رابطه متعدی‪...‬‬
‫• مثال‪ :‬فرض کنید‬
‫– ‪ A‬مجموعه انسانها‬
‫– ‪ ، aRb‬اگر و تنها اگر ‪ a‬یکی از نیاکان ‪ b‬باشد‪.‬‬
‫– ‪ R‬متعدی است‪.‬‬
‫– رابطه پدری در ‪ A‬نمی تواند متعدی باشد‪.‬‬

‫• مثال‪ :‬فرض کنید‬


‫– ‪A = Z+‬‬
‫– ‪ b( aRb: a|b‬بر ‪ a‬قابل قسمت باشد ‪ .‬یا ‪ b ، a‬را می شمارد)‬
‫– ‪ R‬یک رابطه متعدی است‪.‬‬

‫‪33‬‬
‫‪ -3‬خواص روابط‬
‫رابطه متعدی‪...‬‬
‫• تشخیص متعدی بودن رابطه از روی ماتریس رابطه آن ‪MR‬‬
‫– رابطه ‪ R‬متعدی است اگر ‪(MR)2 ≤ MR‬‬

‫• مثال‬
‫‪1 1 1‬‬ ‫‪1 1 1‬‬ ‫– اگر } ‪A = { 1, 2, 3‬‬
‫‪M R 0 0 1 ‬‬‫‪( M R )2  0 0 1  M R‬‬
‫‪0 0 1‬‬ ‫‪0 0 1‬‬
‫رابطه ‪ R‬متعدی است‪.‬‬ ‫– پس‬
‫• تشخیص متعدی بودن رابطه از روی گراف سودار‬
‫– اگر برای ‪ 3‬راس ‪ a, b, c‬روابط ‪ aRb‬و ‪ bRc‬برقرار باشد‬
‫– برای متعدی بودن بایستی ‪ aRc‬نیز برقرار باشد‪.‬‬
‫– و این به معنی بودن مسیری به طول ‪ 2‬از ‪ a‬به ‪ c‬است‬
‫– یعنی ‪aR2c‬‬
‫‪34‬‬
‫‪ -3‬خواص روابط‬
‫رابطه متعدی‪...‬‬

‫• تشخیص متعدی بودن رابطه از روی گراف سودار‬


‫– اگر برای ‪ 3‬راس ‪ a, b, c‬روابط ‪ aRb‬و ‪ bRc‬برقرار باشد‬
‫– برای متعدی بودن بایستی ‪ aRc‬نیز برقرار باشد‪.‬‬
‫– و این به معنی بودن مسیری به طول ‪ 2‬از ‪ a‬به ‪ c‬است‬
‫– یعنی ‪aR2c‬‬
‫– بنابراین ‪ R‬متعدی است اگر ‪aRc=aR2c‬‬
‫‪a‬‬
‫– به تعبیر هندسی ‪ :‬یعنی یالی از ‪ a‬به ‪ c‬موجود باشد‪.‬‬

‫‪b‬‬

‫‪c‬‬

‫‪35‬‬
‫‪ -4‬خواص روابط‬
‫روابط هم ارزی‬

‫• رابطه ‪ R‬در ‪ A‬را یک رابطه هم ارزی گوییم هر گاه‬


‫– بازتابی‬
‫– متقارن و‬
‫– متعدی باشد‪.‬‬
‫• مثال ‪ -‬فرض کنید‬
‫‪ A‬مجموعه دانشجویان‬ ‫–‬
‫– ‪ :aRb‬اگر و تنها اگر ‪ a, b‬در یک خوابگاه زندگی کنند‪.‬‬
‫– ‪ R‬یک رابطه هم ارزی است‪( .‬بازتابی‪ ،‬متقارن و متعدی است)‬

‫‪36‬‬
‫ خواص روابط‬-4
...‫روابط هم ارزی‬
‫ فرض کنید‬- ‫• مثال‬
– A = Z , nZ+
– R = { (a, b)  AxA | n|(a-b) }
– aRb : aΞb (mod n) )n ‫ در پیمانه‬b ‫ همنهشت‬a(

.‫ یک رابطه بازتابی است‬R –


– n | (a-a)  a Ξ a (mod n)
: ‫ متقارن است زیرا‬R –
n|(a-b) ‫ آنگاه‬aΞb (mod n) ‫• اگر‬
• (a-b) = kn  b-a = (-k)n  n|(b-a)
: ‫ متعدی است زیرا اگر‬R –
• aΞb (mod n)  (a-b) = k1n
• bΞc (mod n)  (b-c) = k2n
• a-c = (k1+ k2)n  a-c=kn  aΞc (mod n)

37
‫‪ -5‬عملیات بر روابط‬

‫• فرض کنید که‬


‫– ‪ R‬و ‪ S‬دورابطه از ‪ A‬به ‪ B‬باشند‪.‬‬
‫– از آنجاییکه این دو رابطه مجموعه ای از زوج های مرتب هستند‬
‫– لذا تمامی اعمال مجموعه ها مانند‬
‫– اجتماع‪ ،‬اشتراک‪ ،‬تفاضل و متمم گیری و ‪ ...‬را می توان روی آنها اعمال نمود‪.‬‬

‫• برای مثال متمم ‪R‬‬


‫– که با ‪ R‬نمایش داده می شود بصورت زیر تعریف می شود‪:‬‬
‫– ‪ ، aRb‬اگر و تنها اگر ‪aRb‬‬

‫‪38‬‬
...‫ عملیات بر روابط‬-5

• a(R  S)b : aRb or aSb


• a(R  S)b : aRb and aSb

R-1‫• یک نوع عمل دیگر‬


aRb ‫ اگر و تنها اگر‬b R-1 a •
• Dom(R-1) = Ran(R)
• Ran(R-1) = Dom(R)
• (R-1)-1 = R

39
‫‪ -5‬عملیات بر روابط‪...‬‬

‫• مثال ‪ :‬فرض کنید‬


‫– } ‪ A = { a, b, c, d‬مجموعه دانشجویان و‬
‫– } ‪ B = { NC, DM, CG, DS, OR, OS‬مجموعه دروس ارائه شده توسط دانشکده کامپیوتر باشد و‬

‫‪1‬‬ ‫‪0 0 0 0 0‬‬ ‫‪1 0‬‬ ‫‪0 1 0 0‬‬


‫‪0‬‬ ‫‪1 1 0 0 0‬‬ ‫‪0 1‬‬ ‫‪0 0 1 0‬‬
‫‪MR  ‬‬ ‫‪,MS  ‬‬
‫‪0‬‬ ‫‪1 0 0 1 1‬‬ ‫‪0 0‬‬ ‫‪0 0 0 0‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 1 0 1‬‬ ‫‪0 0‬‬ ‫‪0 1 1 1‬‬
‫– برای نمونه اگر‬
‫– ‪ :R‬بیان کننده دروسی باشد که دانشجویان انتخاب کرده اند و‬
‫– ‪ :S‬بیان کننده دروسی باشد که دانشجویان عالقه مند هستند‪.‬‬
‫} )‪– (R  S) = { (a, NC), (b, DM), (d, DS), (d, OS‬‬
‫– بیان کننده دروسی خواهد بود که دانشجویان با عالقه انتخاب کرده اند‪.‬‬
‫‪40‬‬
‫‪ -5‬عملیات بر روابط‪...‬‬

‫)‪(R  S‬‬ ‫– و رابطه‬


‫‪– (R  S) = { (a, NC), (b, DM), (c, DM), (b, CG), (a, DS),(d, DS), (b, OR),‬‬
‫} )‪(c, OR), (d, OR), (c, OS), (d, OS‬‬
‫– بیان کننده مجموعه دروسی خواهد بود که یا دانشجویان انتخاب کرده اند و یا عالقه مند به آنها‬
‫هستند‪.‬‬
‫‪• (R  S) = (R – S)  (S – R) = { (a, DS), (b, CG), (b, OR), (c, DM), (c, OR),‬‬
‫} )‪(c, OS), (d, OR‬‬
‫بیان کننده مجموعه دروسی خواهد بود که یا دانشجویان انتخاب کرده اند ولی به آنها عالقه مند نیستند و‬ ‫•‬
‫یا عالقه مند به آنها هستند ولی انتخاب نکرده اند‪.‬‬
‫} )‪• (R – S) = { (b, CG), (c, DM), (c, OR), (c, OS‬‬
‫بیان کننده مجموعه دروسی خواهد بود که دانشجویان بدون عالقه انتخاب کرده اند‪.‬‬ ‫•‬
‫و ‪ ، R‬گویای دروسی است که دانشجویان انتخاب نکرده اند‪( .‬کدام زوج های مرتب؟ عناصر صفر در‬ ‫•‬
‫ماتریس رابطه)‬
‫‪41‬‬
‫‪ -5‬عملیات بر روابط‪...‬‬

‫• مثال‪ :‬فرض کنید‬


‫– } ‪ A = { a, b, c, d, e‬مجموعه دانشجویان و‬
‫– ‪ R,S‬روابطی باشند با گرافهای سودار زیر‪:‬‬

‫‪a‬‬ ‫‪b‬‬ ‫‪a‬‬ ‫‪b‬‬

‫‪d‬‬ ‫‪c‬‬ ‫‪d‬‬ ‫‪c‬‬

‫گراف سودار ‪S‬‬ ‫گراف سودار ‪R‬‬

‫گراف های سودار روابط ‪ R-1 ، R‬و ‪ R S‬را رسم نمایید‪.‬‬ ‫•‬
‫‪42‬‬
‫‪ -5‬عملیات بر روابط‪...‬‬

‫‪a‬‬ ‫‪b‬‬ ‫‪a‬‬ ‫‪b‬‬

‫‪d‬‬ ‫‪c‬‬ ‫‪d‬‬ ‫‪c‬‬


‫گراف سودار ‪R‬‬
‫گراف سودار ‪R S‬‬

‫‪a‬‬ ‫‪b‬‬

‫‪d‬‬ ‫‪c‬‬

‫گراف سودار ‪R-1‬‬

‫‪43‬‬
‫‪ -6‬بستارها‬
‫• اگر ‪ R‬یک رابطه در ‪ A‬باشد‬
‫– ممکن است برخی از خصوصیات بازتابی‪ ،‬متقارن و یا متعدی بودن را نداشته باشد‪.‬‬

‫• اگر ‪ R‬فاقد یکی از این ویژگیها باشد‪،‬‬


‫– می خواهیم با افزودن زوج های مرتبی به آن‬
‫– رابطه ای را بدست آوریم که‬
‫– ویژگی مورد نظر را داشته باشد‪.‬‬
‫– البته با حداقل زوج های مرتب اضافه شده!‬
‫• به عبارتی‬
‫– بدنبال کوچکترین رابطه ‪ R1‬هستیم که‬
‫– شامل ‪ R‬هم بوده و‬
‫– دارای خاصیت مورد نظر هم باشد‪.‬‬
‫– اگر چنین ‪R1‬ی وجود داشته باشد‪ ،‬به آن بستار ‪ ، R‬نسبت به آن خصوصیت‪ ،‬گفته می شود‪.‬‬
‫‪44‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار بازتابی‬
‫• ‪ R‬رابطه ای است در ‪ A‬که‬
‫– دارای خاصیت بازتابی نیست‬
‫– یعنی برخی از زوج های رابطۀ ‪ ={ (x, x) | xA } ،‬در ‪ R‬وجود ندارد‪.‬‬
‫– بنابراین ‪R1=R ‬‬

‫‪45‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متقارن‬
‫• ‪ R‬رابطه ای است در ‪ A‬که‬
‫– متقارن نیست‬
‫– زوجهایی مثل ‪ (x, y)  R‬ولی‬
‫– ‪(y, x) R‬‬
‫– بدیهی است ‪(y, x)  R-1‬‬
‫– بنابراین بایستی زوج های رابطۀ ‪ R-1‬را به ‪ R‬اضافه نماییم‪.‬‬
‫– بنابراین ‪R1=R R-1‬‬

‫‪46‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متقارن‪...‬‬
‫• مثال‪ :‬فرض کنید‬
‫– } ‪A = { a, b, c, d‬‬
‫– } )‪R = { (a, b), (b, c), (a, c), (c, d‬‬
‫– بستار متقارن ‪ R‬را بدست آورید‪.‬‬

‫} )‪– R-1 = { (b, a), (c, b), (c, a), (d, c‬‬

‫‪– R1=R R-1‬‬ ‫} )‪= { (a, b), (b, c), (a, c), (c, d) , (b, a), (c, b), (c, a), (d, c‬‬

‫‪47‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متقارن‪...‬‬
‫• نمایش بستار متقارن بصورت هندسی‬
‫– از روی گراف سودار آن‬
‫– همه یال ها در گراف سودار ‪ R‬به‬
‫– یالهای دو طرفه در ‪ R R-1‬تبدیل می شود‪.‬‬

‫‪a‬‬ ‫‪b‬‬
‫‪a‬‬ ‫‪b‬‬

‫‪d‬‬ ‫‪c‬‬
‫‪d‬‬ ‫‪c‬‬

‫‪48‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‬
‫• قضیه ‪:‬‬
‫– اگر‪ R‬رابطه ای است در ‪ A‬باشد‬
‫– بستار متعدی ‪ ،R‬رابطه ‪ R‬می باشد‪.‬‬
‫• یادآوری ‪:‬‬
‫– اگر ‪ a,b A‬باشند‪ ،‬آنگاه‬
‫– ‪ a R b‬به معنی مسیری ( با طول دلخواه)‬
‫– از ‪ a‬به ‪ b‬می باشد‪.‬‬
‫• ‪ R‬از دیدگاه هندسی رابطه ارتباطی خوانده می شود‪.‬‬
‫– زیرا نشان میدهد بین کدام رئوس‪،‬‬
‫– یک مسیر (ارتباطی) وجود دارد‪.‬‬

‫‪49‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال بستار متعدی ‪ R‬را بدست آورید‪:‬‬


‫– فرض کنید‪:‬‬
‫‪1‬‬ ‫‪2‬‬
‫– } ‪A = { 1, 2, 3, 4‬‬
‫– } )‪R = { (1, 2), (2, 3), (3, 4), (2, 1‬‬
‫– حل ‪ :‬گراف سودار ‪ R‬را رسم می نماییم‪.‬‬
‫‪4‬‬ ‫‪3‬‬
‫– از راس ‪ 1‬مسیری به ‪ 3 ، 2 ،1‬و ‪ 4‬هست‬
‫– پس زوج های )‪ (1, 1), (1, 2), (1, 3), (1,4‬در ‪ R‬هستند‪.‬‬
‫– از راس ‪ 2‬مسیری به ‪ 3 ،2 ،1‬و ‪ 4‬هست‬
‫– پس زوج های مرتب )‪ (2, 1), (2, 2), (2, 3), (2, 4‬نیز باید در ‪ R‬باشند‪.‬‬
‫– از راس ‪ 3‬مسیری به ‪ 4‬هست‪ ،‬لذا زوج مرتب )‪ (3, 4‬نیز باید به ‪ R‬اضافه شود‪.‬‬
‫– از راس ‪ 4‬به جایی نمی توانیم برویم!‬

‫‪50‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬
‫• گراف حاصل بصورت زیر خواهد شد‪:‬‬

‫‪1‬‬ ‫‪2‬‬

‫‪4‬‬ ‫‪3‬‬

‫‪51‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال بستار متعدی ‪ R‬را بدست آورید‪:‬‬


‫‪0‬‬ ‫‪1 0 0‬‬ ‫– فرض کنید‪:‬‬
‫‪1‬‬ ‫‪0 1 0‬‬ ‫– } ‪A = { 1, 2, 3, 4‬‬
‫‪MR  ‬‬
‫‪0‬‬ ‫‪0 0 1‬‬ ‫– } )‪R = { (1, 2), (2, 3), (3, 4), (2, 1‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬ ‫– حل ‪ :‬روش دوم‪ ،‬استفاده از ماتریس رابطه‬
‫– حال ماتریس های زیر را از روی ‪ MR‬بدست می آوریم‬

‫‪1‬‬ ‫‪0 1 0‬‬ ‫‪1‬‬ ‫‪0 1 0‬‬


‫‪0‬‬ ‫‪1 0 1‬‬
‫‪0‬‬
‫‪0‬‬ ‫‪1 0 1‬‬ ‫‪1‬‬ ‫‪0 1 0‬‬ ‫‪1 0 1‬‬
‫‪( M R ) 2  ‬‬ ‫‪(M R )  ‬‬
‫‪3‬‬ ‫‪( M R ) 4  ‬‬
‫‪0‬‬ ‫‪0 0 0‬‬ ‫‪0‬‬ ‫‪0 0 0‬‬ ‫‪0‬‬ ‫‪0 0 0‬‬
‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬ ‫‪0‬‬ ‫‪0 0 0‬‬ ‫‪0‬‬ ‫‪0 0 0‬‬

‫‪( M R )   M R  M R2  M R3  M R4  M R  ( M R ) 2  ( M R )3  ( M R ) 4‬‬

‫‪52‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫‪1‬‬ ‫‪1 1 1‬‬


‫‪1‬‬ ‫‪1 1 1‬‬
‫‪(M R )  ‬‬
‫‪0‬‬ ‫‪0 0 1‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬

‫• نکته‬
‫– برای محاسبه‪ R‬نیازی به در نظر گرفتن همه توانهای ‪ Rn‬نیست‪.‬‬
‫• قضیه‬
‫– با فرض آنکه ‪ |A| = n‬و ‪ R‬یک رابطه در ‪ A‬باشد داریم‪:‬‬

‫‪R = R  R2  ….  Rn‬‬

‫‪53‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• نکته ‪ -‬هر کدام از روشهای مورد استفاده‪ ،‬دارای اشکاالتی هستند‬


‫– گراف سودار ‪ :‬برای مجوعه ها و روابط بزرگ عملی نیست‬
‫– ماتریس رابطه ‪ :‬برای ‪ n‬های بزرگ کارایی ندارد‪.‬‬

‫• الگوریتم کارامدی برای محاسبه ‪ R‬وجود دارد به نام ارائه دهنده آن وارشال‬

‫– شامل ‪ n+1‬ماتریس بولی ) ‪ ، Wk (k=0,1,…,n‬است‬

‫– که بطور متوالی‪ ،‬هر ماتریس از روی ماتریس قبلی بدست می آید‪.‬‬

‫‪54‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• الگوریتم وارشال‬
‫– ‪W0=MR‬‬
‫– همه مقادیر ‪ Wk-1‬را به ‪ Wk‬منتقل می نماییم‬
‫– اگر در مکان های ‪ ...،p2،p1‬در ستون ‪k‬ام ماتریس ‪ Wk-1‬و‬
‫– همچنین در مکانهای ‪ ...،q2،q1‬در سطر ‪k‬ام همان ماتریس مقدار ”‪ “1‬باشد‬
‫– در آنصورت در مکان )‪ (pi,qi‬در ماتریس ‪ Wk‬مقدار ”‪ “1‬قرار میدهیم‬
‫– تکرار مراحل تا رسیدن به ‪Wn=MR‬‬

‫‪55‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال‪ :‬با استفاده از الگوریتم وارشال‪ ،‬بستار متعدی رابطه زیر را بدست آورید‪.‬‬
‫‪K=1‬‬
‫‪K=1 0‬‬ ‫‪1 0 0‬‬
‫‪1 0 1 0‬‬
‫‪W0  M R  ‬‬ ‫‪‬‬ ‫‪P=2‬‬
‫)‪(2,2‬‬
‫‪0 0 0 1 ‬‬ ‫‪q=2‬‬
‫‪‬‬ ‫‪‬‬
‫‪‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪‬‬

‫‪0 1 0 0 ‬‬
‫‪1 1 1 0‬‬
‫‪W1  ‬‬ ‫‪‬‬
‫‪0 0 0 1 ‬‬
‫‪‬‬ ‫‪‬‬
‫‪‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪‬‬

‫‪56‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال‪ :‬با استفاده از الگوریتم وارشال‪ ،‬بستار متعدی رابطه زیر را بدست آورید‪.‬‬
‫‪K=2‬‬
‫‪0‬‬ ‫‪1 0 0‬‬
‫‪K=2 ‬‬
‫‪1‬‬ ‫‪1 1 0‬‬
‫‪W1  ‬‬ ‫‪p=1,2‬‬ ‫)‪(1,1),(1,2),(1,3‬‬
‫‪0‬‬ ‫‪0 0 1‬‬ ‫‪q=1,2,3‬‬ ‫)‪(2,1),(2,2),(2,3‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬

‫‪1‬‬ ‫‪1‬‬ ‫‪0‬‬


‫‪1‬‬
‫‪‬‬ ‫‪‬‬
‫‪W2  ‬‬
‫‪1‬‬ ‫‪1 1 0‬‬
‫‪0‬‬ ‫‪0 0 1‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬

‫‪57‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال‪ :‬با استفاده از الگوریتم وارشال‪ ،‬بستار متعدی رابطه زیر را بدست آورید‪.‬‬
‫‪K=3‬‬
‫‪1‬‬ ‫‪1 1 0‬‬
‫‪1‬‬ ‫‪1 1 0‬‬ ‫)‪(1,4‬‬
‫‪W2  ‬‬ ‫‪p=1,2‬‬
‫)‪(2,4‬‬
‫‪K=3‬‬ ‫‪0‬‬ ‫‪0 0 1‬‬ ‫‪q=4‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬

‫‪1‬‬ ‫‪1 1‬‬ ‫‪1‬‬


‫‪‬‬
‫‪W3  ‬‬
‫‪1‬‬ ‫‪1 1‬‬ ‫‪1‬‬
‫‪0‬‬ ‫‪0 0 1‬‬
‫‪‬‬ ‫‪‬‬
‫‪0‬‬ ‫‪0 0 0‬‬

‫‪58‬‬
‫‪ -6‬بستارها‪...‬‬
‫بستار متعدی و الگوریتم وارشال‪...‬‬

‫• مثال‪ :‬با استفاده از الگوریتم وارشال‪ ،‬بستار متعدی رابطه زیر را بدست آورید‪.‬‬
‫‪K=4‬‬
‫‪1‬‬ ‫‪1 1 1‬‬
‫‪1‬‬ ‫‪1 1 1‬‬ ‫)‪(----‬‬
‫‪W3  ‬‬ ‫‪p=1,2,3‬‬
‫)‪(----‬‬
‫‪0‬‬ ‫‪0 0 1‬‬ ‫‪---‬‬
‫‪‬‬ ‫‪‬‬
‫‪K=4 0‬‬ ‫‪0 0 0‬‬

‫‪1‬‬ ‫‪2‬‬
‫‪1‬‬ ‫‪1 1 1‬‬
‫‪1‬‬ ‫‪1 1 1‬‬ ‫که معادل همان‬
‫‪W4  ‬‬ ‫‪ M R‬‬ ‫مقداری است که‬
‫‪0‬‬ ‫‪0 0 1‬‬ ‫از روش گراف‬
‫‪‬‬ ‫‪‬‬ ‫‪4‬‬ ‫‪3‬‬
‫‪0‬‬ ‫‪0 0 0‬‬ ‫بدست آمده است‬

‫‪59‬‬
‫‪ -7‬ترکیب روابط‬
‫• فرض کنید ‪ A, B, C‬سه مجموعه و‬
‫‪– R:AB‬‬
‫‪– S:BC‬‬
‫‪– SoR : A  C‬‬ ‫رابطه ترکیب ‪S,R‬‬
‫– اگر ‪ aA , cC‬آنگاه‬
‫– ‪ a(SoR)c‬اگر و تنها اگر‬
‫– برای عضوی مانند ‪ bB‬داشته باشیم‬
‫‪– aRb , bSc‬‬
‫– به عبارت دیگر‪:‬‬
‫– ‪ a‬از طریق ‪ SoR‬با ‪ c‬در ارتباط است اگر بتوان در دو مرحله‬
‫– ابتدا از راس ‪ a‬به راس واسطۀ ‪ b‬رسید‪ ،‬از طریق رابطه ‪R‬‬
‫– و سپس از راس ‪ b‬به راس ‪ c‬رسید‪ ،‬از طریق رابطۀ ‪S‬‬

‫‪60‬‬
‫‪ -7‬ترکیب روابط‪...‬‬

‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬

‫‪SoR‬‬

‫‪61‬‬
…‫ ترکیب روابط‬-7
‫• مثال‬
‫– فرض کنید‬
– A = B = C = { 1, 2, 3, 4 }
– R = { (1, 1), (1, 2), (1, 3), (2, 4), (3,2) }
– S = { (1, 4), (1, 3), (2, 3), (3, 1), (4, 1) }
– SoR = { (1,4), (1, 3), (1, 1), (2, 1), (3, 3) }

‫• نکته‬
– MSoR = MRMS
– If S = R  SoR = R2
– MSoR = MR2 = MRMS

62
…‫ ترکیب روابط‬-7
‫• مثال‬
‫– فرض کنید‬
– A = { 1, 2, 3, 4 }
:‫ دو رابطه با ماتریس های زیر هستند‬R ‫ و‬S –
1 1 1 0 0 0 1 1
0 0 0 1 0 0 1 0
MR   MS  
0 1 0 0 1 0 0 0
   
1 0 0 0
1 0 0 0

1 0 1 1
1 0 0 0
– MSoR = MRMS = 
0 0 1 0
 
0 0 1 1

63

You might also like