R = { ( a , c ) , ( b , d ) , ( c , a ) , ( c , e ) , ( d , b ) , ( d , f ) , ( e , c ) , ( f , d ) } R = \{(a,c), (b,d), (c,a), (c,e), (d,b), (d,f), (e,c), (f,d)\} R = {( a , c ) , ( b , d ) , ( c , a ) , ( c , e ) , ( d , b ) , ( d , f ) , ( e , c ) , ( f , d )}
Here are the steps of the Warshall’s algorithm:
Step 1. Assign initial values W = M R , k = 0 W=M_R, k=0 W = M R , k = 0 .
Step 2. Execute k : = k + 1. k:=k+1. k := k + 1.
Step 3. For all i ≠ k i\ne k i = k such that w i k = 1 w_{ik}=1 w ik = 1 , and for j j j execute the operation w i j = w i j ∨ w k j . w_{ij}=w_{ij}\lor w_{kj}. w ij = w ij ∨ w kj .
Step 4. If k = n k=n k = n , then stop: we have the solution W = M R ∗ W=M_{R^*} W = M R ∗ , else go to the step 2.
n = ∣ A ∣ = 6. n=|A|=6. n = ∣ A ∣ = 6.
W ( 0 ) = M R = ( 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ) W^{(0)}=M_R=\left(\begin{array} {cccccc} 0 & 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 & 0 & 0\\ 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0\end{array}\right) W ( 0 ) = M R = ⎝ ⎛ 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ⎠ ⎞
W ( 1 ) = ( 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ) W^{(1)}=\left(\begin{array} {cccccc} 0 & 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 & 0 & 0\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0\end{array}\right) W ( 1 ) = ⎝ ⎛ 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ⎠ ⎞
W ( 2 ) = ( 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ) W^{(2)}=\left(\begin{array} {cccccc} 0 & 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 & 0 & 0\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0\end{array}\right) W ( 2 ) = ⎝ ⎛ 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 0 ⎠ ⎞
W ( 3 ) = ( 1 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 ) W^{(3)}=\left(\begin{array} {cccccc} 1 & 0 & 1 & 0 & 1 & 0\\ 0 & 0 & 0 & 1 & 0 & 0\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 \\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0\end{array}\right) W ( 3 ) = ⎝ ⎛ 1 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 ⎠ ⎞
W ( 4 ) = ( 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ) W^{(4)}=\left(\begin{array} {cccccc} 1 & 0 & 1 & 0 & 1 & 0\\ 0 & 1 & 0 & 1 & 0 & 1\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 \\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1\end{array}\right) W ( 4 ) = ⎝ ⎛ 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ⎠ ⎞
W ( 5 ) = ( 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ) W^{(5)}=\left(\begin{array} {cccccc} 1 & 0 & 1 & 0 & 1 & 0\\ 0 & 1 & 0 & 1 & 0 & 1\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 \\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1\end{array}\right) W ( 5 ) = ⎝ ⎛ 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ⎠ ⎞
M R ∗ = W ( 6 ) = ( 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ) M_{R^*}=W^{(6)}=\left(\begin{array} {cccccc} 1 & 0 & 1 & 0 & 1 & 0\\ 0 & 1 & 0 & 1 & 0 & 1\\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 \\ 1 & 0 & 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1\end{array}\right) M R ∗ = W ( 6 ) = ⎝ ⎛ 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 ⎠ ⎞
Therefore, the transitive closure of R R R is the following:
R ∗ = { ( a , a ) , ( a , c ) , ( a , e ) , ( b , b ) , ( b , d ) , ( b , f ) , ( c , a ) , ( c , c ) , ( c , e ) , ( d , b ) , ( d , d ) , R^* = \{(a,a),(a,c),(a,e), (b,b),(b,d),(b,f), (c,a),(c,c), (c,e), (d,b),(d,d), R ∗ = {( a , a ) , ( a , c ) , ( a , e ) , ( b , b ) , ( b , d ) , ( b , f ) , ( c , a ) , ( c , c ) , ( c , e ) , ( d , b ) , ( d , d ) ,
( d , f ) , ( e , a ) , ( e , c ) , ( e , e ) , ( f , b ) , ( f , d ) , ( f , f ) } (d,f),(e,a), (e,c),(e,e),(f,b), (f,d),(f,f) \} ( d , f ) , ( e , a ) , ( e , c ) , ( e , e ) , ( f , b ) , ( f , d ) , ( f , f )}
Comments