Anda di halaman 1dari 10

TRANSITIF KLOSUR DARI GABUNGAN DUA RELASI EKUIVALENSI

PADA SUATU HIMPUNAN DENGAN STRUKTUR DATA DINAMIS

Sukmawati Nur Endah


Program Studi Ilmu Komputer Jurusan Matematika FMIPA UNDIP
Jl. Prof. H. Soedarto, S.H, Semarang 50275

Abstract. A relation R on set A is an equivalence relation on A if and only if R is reflexive,


symmetric and transitive. If two equivalence relations on set A are combined, the combination
of them is not surely an equivalence relation, because it is not surely transitive relation. In this
paper is found the smallest transitive relation (transitive closure) of the combination, to be an
equivalence relation. Then the steps to determine transitive closure are programmed in Pascal
programming language with dynamic data structure that is multilist.

Keywords: transitive closure, equivalence relation, dynamic data structure

1. PENDAHULUAN Permasalahan yang diambil dalam


Salah satu konsep dasar bidang penulisan ini adalah menentukan relasi
matematika adalah relasi. Relasi pada him- ekuivalensi terkecil yang mengandung dua
punan A sering memenuhi sifat-sifat re- relasi ekuivalensi pada suatu himpunan.
fleksif, simetris, dan transitif. Namun ada Dengan kata lain, permasalahannya adalah
juga relasi yang tidak memenuhi salah satu menentukan transitif klosur dari gabungan
dari ketiga sifat di atas. Hal ini dapat di- dua relasi ekuivalensi. Kemudian diimple-
tambahkan pasangan relasi pada R sampai mentasikan ke dalam program komputer
mendapat relasi dengan sifat yang di- dengan bahasa pemrograman Turbo Pascal
inginkan. Untuk menambahkan sesedikit dan menggunakan struktur data dinamis,
pasangan relasi baru yang mungkin, maka yaitu senarai berantai.
harus dicari relasi terkecil R′ pada him- Untuk membatasi ruang lingkup
punan A yang mengandung R dan memi- permasalahan, maka dalam penulisan ini
liki sifat yang diinginkan. Relasi R′ seperti diberikan batasan sebagai berikut:
di atas disebut klosur (closure) dari R [4]. 1. Dua relasi ekuivalensi sebagai input un-
Dengan demikian suatu relasi dapat dicari tuk mencari relasi ekuivalensi terkecil
refleksif klosur (reflexive closure), simetris yang mengandung keduanya merupakan
klosur (symmetric closure), dan transitif relasi pada himpunan yang sama.
klosur (transitive closure). 2. Penentuan transitif klosur menggunakan
Salah satu aplikasi transitif klosur algoritma Warshall.
yang menarik adalah pada relasi ekuiva- 3. Program yang dibuat menggunakan
lensi (equivalence relation). Misalkan R struktur data dinamis.
dan S adalah relasi ekuivalensi pada him-
punan A. Jika R dan S digabungkan, maka Tujuan penulisan ini adalah
R ∪ S belum tentu relasi ekuivalensi. Hal 1. Untuk mencari relasi ekuivalensi terke-
ini disebabkan R ∪ S belum tentu transitif. cil yang memuat dua relasi ekuivalensi
Untuk membentuk relasi ekuivalensi pada suatu himpunan.
terkecil yang mengandung R dan S maka 2. Untuk memahami program dengan
perlu dicari transitif klosur dari R ∪ S ter- struktur data dinamis.
sebut.

78
Sukmawati Nur Endah (Transitif Klosur dari Gabungan Dua Relasi Ekuivalensi pada … )

2. PEMBAHASAN (a,b)∈Rk+1. ⇔ (a,b) ∈ RkR (sebab Rk+1


A. Transitif Klosur = RkR).
Definisi 2.1. [2] Misalkan R relasi pada ⇔ ∃c ∈ A ∋ (a,c) ∈ Rk ∧ (c,b) ∈ R.
himpunan A. Transitif klosur dari R adalah ⇔ (a,c) ∈ t(R) ∧ (c,b) ∈ t(R) (dari
relasi R′ sedemikian hingga: langkah induksi Rk ⊆ t(R) dan
(i). R′ adalah transitif langkah basis)
(ii). R ⊆ R′ ⇔ (a,b) ∈ t(R) (karena t(R)
(iii). Untuk suatu relasi transitif R″, jika transitif).
R ⊆ R″ maka R′ ⊆ R″. Karena sebarang [(a,b) ∈ Rk+1 ⇒
Transitif klosur dari relasi R dinotasikan (a,b) ∈ t(R)] , maka Rk+1 ⊆ t(R).
dengan t(R). Sehingga berdasarkan prinsip
Jika R relasi pada himpunan A, induksi matematik Rn ⊆ t(R) untuk
maka transitif klosurnya dapat dibentuk setiap n ≥ 1.
dengan menambahkan pada relasi R semua Sesudah terbukti Rn ⊆ t(R) untuk setiap
pasangan terurut yang diperlukan untuk n ≥ 1, dapat disimpulkan bahwa
membentuk relasi transitif yang baru. Te- ∞
tapi bagian (iii) dari definisi 1 menyatakan ∪ R i ⊆ t(R) .
i =1
bahwa tak ada pasangan yang ditambahkan ∞
kecuali kalau diperlukan. Jadi R′ adalah (ii). t(R) ⊆ ∪ R i
relasi transitif terkecil dan R⊆R′. Jika R i =1

transitif, maka relasi transitif terkecil yang Akan ditunjukkan terlebih dulu ∪ R i
mengandung R adalah R itu sendiri. i =1
transitif. Misalkan (a,b) dan (b,c)

Teorema 2.1. [5] Misalkan R relasi pada sebarang elemen dari ∪ R i . Untuk
himpunan A. R transitif jika dan hanya jika i =1

t(R) = R. suatu integer s ≥ 1 dan t ≥ 1, (a,b) ∈ Rs


Bukti. dan (b,c) ∈ Rt, sehingga (a,c) ∈ Rs+t.
(⇒) Jika R transitif, maka jelas R adalah ∞

relasi transitif terkecil yang mengan- Jadi (a,c) ∈ ∪ R i dan oleh karena itu
i =1
dung R. Sehingga R = t(R). ∞

(⇐) Jika t(R) = R, maka berdasarkan sifat ∪ R i adalah transitif. Karena setiap
i =1
(i) dari definisi 1, R adalah transitif. ■ relasi transitif yang mengandung R

Teorema 2.2. [2] Misalkan R relasi pada berisi t(R), maka t(R) ⊆ ∪ R i .
i =1


himpunan A maka t(R) = ∪R
i =1
i
. Dari (i) dan (ii) terbukti t(R) = ∪ R i . ■
i =1
Bukti.
Bukti ini dibagi dalam dua bagian, yaitu : Definisi 2.2. [2] Misalkan R relasi pada

(i). ∪ R i ⊆ t(R) himpunan A dan n bilangan bulat positif,
i =1 maka relasi Rn pada A adalah relasi yang
Akan ditunjukkan terlebih dulu menunjukkan path dengan panjang n
bahwa Rn ⊆ t(R) untuk setiap n > 0. dalam R. Dengan menuliskan aRnb berarti
(1). (Basis). Untuk n=1, berdasarkan terdapat path dengan panjang n dari a ke b
definisi 1 bagian (ii) jelas bahwa R1 = dalam R.
R ⊆ t(R).
(2). (Induksi). Misalkan Rk ⊆ t(R) benar Definisi 2.3. [2] Misalkan R relasi pada
untuk setiap k ≥ 1, akan ditunjukkan himpunan A. Relasi R* ={(a,b) ∈ A x A
bahwa Rk+1⊆ t(R). Ambil sebarang terdapat suatu path dalam R dari a ke b}
disebut relasi keterhubungan (connectivity

79
Jurnal Matematika Vol. 8, No.3, Desember 2005: 78-87

relation) pada A. Panjang dari path ini , ..., an adalah path pada R maka semua
secara umum tergantung pada a dan b. vertek selain a1 dan an disebut vertek-
Dengan menuliskan aR*b berarti terdapat vertek interior (interior vertices) dari path
path dalam R dengan suatu panjang dari a tersebut.
ke b.
Definisi 4 [4] Misalkan R adalah relasi
Teorema 2.3. [2] Jika R relasi pada pada himpunan A = { a1 , a2 , ..., an}.
∞ Untuk k = 1,2, …,n, matriks Boolean Wk
himpunan A maka R* = ∪ R i . mempunyai nilai 1 pada elemen ke (i,j)
i =1
Bukti. jika dan hanya jika terdapat path dari ai ke
Dari definisi 2, untuk setiap n > 0, Rn = aj dalam R yang vertek interiornya (jika
{(a,b) ∈ A x Aterdapat path dalam R ada) berasal dari himpunan Ak= {a1,a2, ...,
dengan panjang n dari a ke b}. Sehingga ak}.
∞ Dari definisi 4, matriks Wn mempu-
berdasarkan definisi 3, R* = ∪ R i . nyai nilai 1 pada elemen ke (i,j) jika dan
i =1
Dari teorema 2 dan teorema 3, didapatkan hanya jika terdapat path dalam R yang
transitif klosur t(R) = R*. ■ menghubungkan ai ke aj. Dengan kata lain
Wn = MR*. Jika didefinisikan W0 sebagai
Teorema 2.4. [5] Jika R relasi pada MR, maka dipunyai barisan W0, W1, …, Wn
himpunan A yang mempunyai n elemen, dengan suku pertama adalah MR dan suku
n terakhir = MR* (matriks transitif klosur dari
maka t(R) = R* = ∪ R i . R). Masing-masing matriks Wk ditentukan
i =1 dari matriks Wk-1. Langkah-langkah dalam
Bukti. mencapai matiks R* dari matriks R inilah
Teorema ini cukup ditunjukkan bahwa Rk yang dinamakan algoritma Warshall. Beri-
n
kut akan ditunjukkan bagaimana menentu-
⊆ ∪ R i untuk setiap k > 0. Misalkan (x,y)
i =1 kan matriks Wk dari matriks Wk-1.
∈ Rk, maka terdapat path terhubung Misalkan Wk = [tij] dan Wk-1 = [sij].
dengan panjang k dari x ke y dalam Jika tij = 1 maka harus ada path dari ai ke
digraphnya dan dengan menghapus cycle aj yang vertek interiornya berada dalam
dari path ini, dapat dibentuk sebuah path himpunan Ak ={a1 , a2 , ..., ak}. Jika vertek
terhubung sederhana dari x ke y. Karena ak bukan vertek interior dari path ini, maka
path sederhana terpanjang yang mungkin semua vertek interior harus berasal dari
dalam digraph dengan n vertek mempunyai himpunan Ak – 1 = { a1 , a2 , ..., ak-1},
panjang n, maka (x,y) ∈ Ri untuk suatu 0 sehingga sij = 1. Jika ak vertek interior dari
n path, maka situasinya seperti dalam gam-
< i ≤ n. Oleh karena itu Rk ⊆ ∪ R i untuk k bar 1.
i =1
n ak
> 0. Jadi terbukti t(R) = ∪ R i . ■ subpath 1 subpath 2
i =1
ai aj
Ada beberapa metode/cara untuk
menentukan transitif klosur yaitu: Gambar 1. ak termasuk vertek interior
a. Metode graphical dari path ai ke aj
b. Metode matriks Diasumsikan bahwa semua vertek interior
c. Algoritma Warshall adalah berbeda. Jadi ak hanya terlihat seka-
Dalam penulisan ini, metode yang diguna- li di dalam path ini, sehingga semua vertek
kan dalam menentukan transitif klosur ada- interior dari subpath 1 dan subpath 2 harus
lah algoritma Warshall. berasal dari himpunan { a1 , a2 , ..., ak-1}.
Misalkan R adalah relasi pada Ini berarti bahwa sik = 1 dan skj = 1.
himpunan A = { a1 , a2 , ..., an}. Jika a1 , a2

80
Sukmawati Nur Endah (Transitif Klosur dari Gabungan Dua Relasi Ekuivalensi pada … )

Sehingga diperoleh tij = 1 jika dan hanya W0 mempunyai nilai 1 pada lokasi ke 2
jika: dari kolom 1 dan lokasi ke 2 pada baris
(i). s ij = 1 atau  1. Jadi W1 seperti W0 ditambah nilai 1
... (2.1) yang baru pada elemen ke (2,2).
(ii). s ik = 1 dan s kj = 1
0 1 0 0 
Persamaan (2.1) merupakan dasar dari 1 1 1 0 
algoritma Warshall. Jika matriks Wk-1 ber- W1 =  
nilai 1 pada elemen ke (i,j) maka dengan 0 0 0 1
persamaan (2.1) (i) Wk juga bernilai 1 pada  
0 0 0 0 
elemen ke (i,j). Dengan menggunakan
persamaan (2.1) (ii), nilai 1 yang baru b. Menentukan W2 (k = 2)
dapat ditambahkan pada elemen ke (i,j) Perhatikan kolom 2 dan baris 2 dari W1.
pada matrik Wk jika dan hanya jika kolom Matriks W1 mempunyai nilai 1 pada
ke k dari Wk-1 bernilai 1 di posisi i dan lokasi 1 dan 2 dari kolom 2 dan lokasi
baris k dari Wk-1 bernilai 1 pada posisi j. 1, 2 dan 3 dari baris 2 sehingga untuk
Jadi prosedur untuk menentukan Wk dari mendapatkan W2, nilai 1 harus
Wk-1 sesuai dengan referensi [4] adalah diletakkan pada elemen ke (1,1), (1,2),
sebagai berikut. (1,3), (2,1), (2,2) dan (2,3) dari matriks
Langkah 1 : Transfer ke Wk semua nilai 1 W1 (jika pada elemen tersebut belum
dalam Wk-1. bernilai 1). Jadi:
Langkah 2 : Tandai lokasi p1 , p2 , ... da- 1 1 1 0
lam kolom k dari Wk-1 yang 1 1 1 0
inputnya 1 dan lokasi q1,q2 , W2 =  
0 0 0 1 
... dalam baris k dari Wk-1 ya-  
ng inputnya 1. 0 0 0 0 
Langkah 3 : Letakkan 1 pada semua posisi c. Menentukan W3 (k = 3)
pi , qj yang ditandai dari Wk Kolom ke 3 dari W2 bernilai 1 pada lo-
(jika elemen pada (pi,qj) ber- kasi 1 dan 2, dan baris ke 3 dari W2
nilai 0) bernilai 1 pada lokasi 4. Untuk menda-
Contoh 1 patkan W3, pada elemen ke (1,4) dan
A = {1, 2, 3, 4} dan relasi pada himpunan (2,4) dari W2 harus bernilai 1, Jadi:
A adalah:
1 1 1 1
R = {(a,b) ∈ A x Aa2+b2 =5 ∨ 1 1 1 1
b=a+1}, sehingga R = {(1,2), (2,3), W3 =  
(3,4), (2,1)}. 0 0 0 1 
 
Transitif klosur dari R dengan algoritma 0 0 0 0 
Warshall dapat diselesaikan sebagai be- d. Menentukan W4 (k = 4)
rikut. W3 mempunyai nilai pada lokasi 1, 2, 3
Matriks relasi R adalah: dari kolom 4 dan tidak ada nilai pada
0 1 0 0  baris ke 4, sehingga tidak ada nilai 1
1 0 1 0  yang baru yang ditambahkan jadi MR*
M R = W0 =   = W4 = W3.
0 0 0 1
  MR* merupakan matriks transitif klosur
0 0 0 0  dari R. Jadi transitif klosur dari R adalah:
Karena himpunan A mempunyai 4 anggota, t(R) = {(1,1), (1,2), (1,3), (1,4), (2,1),
maka n = 4. Kemudian menentukan Wk, (2,2), (2,3), (2,4), (3,4)}.
untuk k = 1, 2, 3, dan 4
a. Menentukan W1 (k = 1)

81
Jurnal Matematika Vol. 8, No.3, Desember 2005: 78-87

B. Relasi Ekuivalensi adalah relasi dari B ke A yang didefinisi-


Definisi 2.5. [1] Relasi R pada himpunan i kan sebagai berikut
disebut refleksif jika dan hanya jika aRa R-1 = {(y,x)xRy}.
untuk setiap a ∈A. Teorema 2.4. [4] Misalkan R1, R2 relasi
Dengan melihat matriks suatu relasi dapat dari A ke B maka (R1 ∪ R2)-1 = R1-1 ∪ R2-1.
ditentukan apakah relasi tersebut refleksif Bukti.
atau bukan. Diagonal utama dari matriks (x,y) ∈ (R1 ∪ R2)-1 ⇔ (y,x) ∈ R1 ∪ R2
relasi refleksif semuanya bernilai 1. ⇔ (y,x) ∈ R1 ∨ (y,x) ∈ R2
⇔ (x,y) ∈ R1-1 ∨ (x,y) ∈ R2-1
Definisi 2.6. [1] Relasi pada himpunan A ⇔ (x,y) ∈ R1-1 ∪ R2-1 ■
disebut simetris jika dan hanya jika aRb
maka bRa, untuk semua a, b ∈ A. Teorema 2.5. [4] Misalkan R relasi pada
Matriks relasi simetris MR = [mij] mempu- A. R simetris jika dan hanya jika R = R-1.
nyai sifat sebagai berikut : Bukti.
Jika mij = 1 maka mji = 1 atau jika mij (⇒) Bukti ini ada dua bagian, yaitu :
= 0 maka mji = 0. [4] (i). Ambil sebarang (x,y) ∈ R. Karena
Jadi matriks tersebut simetris terhadap
R simetris maka (y,x) ∈ R. Dari
diagonal utama atau MR = MRT.
definisi invers, maka (x,y) ∈ R-1.
Definisi 2.7. [1] Relasi R pada himpunan A Sehingga R ⊆ R-1.
disebut transitif jika dan hanya jika aRb (ii). Ambil sebarang (x,y) ∈ R-1. Dari
dan bRc maka aRc, untuk semua a, b, c∈A. definisi invers maka (y,x) ∈ R.
Dilihat dari matriksnya, menentukan relasi Karena R simetris maka (x,y) ∈
transitif tidaklah semudah pada relasi re- R. Sehingga R-1 ⊆ R.
fleksif dan simetris. Matriks relasi transitif Jadi dari (i) dan (ii), terbukti R = R-1.
MR = [mij] mempunyai ciri–ciri sebagai (⇐)Ambil sebarang (x,y)∈ R. Dari definisi
berikut: invers maka (y,x) ∈ R-1. Karena R =
Jika mij = 1 dan mjk = 1 maka mik = 1 R-1 maka (y,x) ∈ R. Sehingga jika
(x,y) ∈ R maka (y,x) ∈ R. Berdasarkan
Definisi 8 [1] Relasi R pada himpunan A definisi simetris, maka R simetris. ■
disebut relasi ekuivalensi jika dan hanya
jika R mempunyai sifat refleksif, simetris Teorema 6 [4] Jika R dan S relasi
dan transitif. ekuivalensi pada himpunan A maka relasi
ekuivalensi terkecil yang memuat R dan S
C. Transitif Klosur dari Gabungan Dua adalah (R ∪ S)*.
Relasi Ekuivalensi pada Suatu Bukti.
Himpunan Misalkan E adalah relasi persamaan
Salah satu aplikasi transitif klosur (equality relation) yang didefinisikan
adalah pada relasi ekuivalensi. Misal R dan sebagai berikut : E = {(x,x)x ∈ A}. Suatu
S adalah relasi ekuivalensi pada himpunan relasi adalah refleksif jika hanya jika relasi
A, akan dicari suatu relasi ekuivalensi ter- tersebut memuat E. E ⊆ R, E ⊆ S sebab
kecil yang di dalamnya memuat R dan S. keduanya refleksif. Jadi E ⊆ R ∪ S ⊆
Untuk mencari relasi tersebut berarti sama (R∪S)*, sehingga (R ∪ S)* juga refleksif.
dengan menentukan transitif klosur dari Karena R dan S simetris, maka R= R-1 dan
gabungan dua relasi ekuivalensi yang ada
S = S-1. Jadi (R ∪ S)-1= R-1 ∪ S -1 = R ∪
(R dan S).
S, dan R ∪ S juga simetris. Oleh karena itu,
Definisi 2.9. [2] Misalkan R relasi dari A semua path dalam R ∪ S mempunyai dua
jalur yang arahnya berlawanan, sehingga
ke B. Invers dari relasi R dinotasikan R-1
(R ∪ S)* juga simetris. Karena telah

82
Sukmawati Nur Endah (Transitif Klosur dari Gabungan Dua Relasi Ekuivalensi pada … )

diketahui bahwa (R ∪ S)* transitif, maka a). Menentukan W1 (k = 1)


(R ∪ S)* adalah relasi ekuivalensi yang Karena W0 mempunyai nilai 1 di lokasi
memuat R ∪ S. Relasi (R ∪ S)* adalah 1 dan 2 dari kolom 1 dan di lokasi 1 dan
yang terkecil, sebab tidak ada himpunan 2 pada baris 1, maka tidak ada nilai 1
terkecil yang memuat R ∪ S yang dapat yang baru yang ditambahkan pada W0.
transitif, sesuai dengan definisi transitif Jadi W1 = W0.
klosur. ■ b). Menentukan W2 (k = 2)
Karena W1 mempunyai nilai 1 di lokasi
(R ∪ S)* ini merupakan transitif klosur 1 dan 2 dari kolom 2 dan di lokasi 1 dan
sekaligus relasi ekuivalensi terkecil dari 2 dari baris 2, maka tidak ada nilai 1
gabungan dua relasi ekuivalensi R dan S yang baru yang ditambahkan pada W1.
pada himpunan A. Jadi W2 = W1.
Contoh 2 c). Menentukan W3 (k = 3)
Misalkan A = {1, 2, 3, 4, 5} dan relasi pada Karena W2 bernilai 1 di lokasi 3 dan 4
himpunan A adalah: dari kolom 3 dan di lokasi 3 dan 4 dari
R = {(a,b) ∈ A x Aa=b ∨ (a ganjil, baris 3, maka tidak ada nilai 1 yang
baru yang ditambahkan pada W2. Jadi
b=a+1) ∨ (a genap, b=a-1)}, dan
W3 = W2.
S = {(a,b) ∈ A x Aa=b ∨ a2+b2=41},
d). Menentukan W4 (k = 4)
sehingga:
Karena W3 bernilai 1 di lokasi 3, 4 dan 5
R = {(1,1), (1,2), (2,1), (2,2), (3,3),
dari kolom 4 dan di lokasi 3, 4 dan 5
(3,4), (4,3), (4,4), (5,5)}
dari baris 4, maka untuk membentuk W4
S = {(1,1), (2,2), (3,3), (4,4), (4,5),
harus ditambahkan nilai 1 baru pada W3
(5,4), (5,5)}
di elemen ke (3,5) dan (5,3). Jadi :
Jelas bahwa R dan S adalah relasi ekuiva-
lensi. Akan dicari relasi ekuivalensi terke- 1 1 0 0 0 
1 1 0 0 0 
cil yang memuat R dan S. Matriks dari  
relasi R dan S adalah sebagai berikut: W4 = 0 0 1 1 1
1 1 0 0 0   
1 1 0 0 0  0 0 1 1 1
  0 0 1 1 1
MR = 0 0 1 1 0  dan e). Menentukan W5 (k = 2)
 
0 0 1 1 0  Karena W4 mempunyai nilai 1 pada
0 0 0 0 1 lokasi 3, 4 dan 5 dari kolom 5 dan
lokasi 3, 4 dan 5 dari baris 5, maka
1 0 0 0 0  tidak ada nilai 1 baru yang ditambahkan
0 1 0 0 0 
  pada W5. Jadi W4 = W5.
MS = 0 0 1 0 0  Jadi t(R ∪ S) = {(1,1), (1,2), (2,1), (2,2),
  (3,3), (3,4), (3,5), (4,3), (4,4), (4,5), (5,3),
0 0 0 1 1 (5,4), (5,5)}. Hasil t(R ∪ S) ini merupakan
0 0 0 1 1
relasi ekuivalensi terkecil yang memuat R
1 1 0 0 0  dan S.
1 1 0 0 0  Penyelesaian dengan menggunakan
  program dapat dilihat pada contoh output
MR ∪ S = MR ∨ MS = 0 0 1 1 0  di halaman selanjutnya.
 
0 0 1 1 1
0 0 0 1 1 D. Implementasi dalam Program Pascal
dengan Struktur Data Dinamis
Untuk mencari M (R ∪ S)* dengan menggu-
Dari pembahasan sebelumnya,
nakan algoritma Warshall. Pertama W0 =
langkah-langkah dalam menentukan transi-
MR ∪ S. tif klosur dari gabungan dua relasi ekuiva-

83
Jurnal Matematika Vol. 8, No.3, Desember 2005: 78-87

lensi pada suatu himpunan agar mendapat- Contoh 3


kan relasi ekuivalensi terkecil dapat di- Matriks relasi R pada contoh 2 =
gambarkan pada Gambar 2. 1 1 0 0 0 
Langkah-langkah tersebut kemudi- 1 1 0 0 0 
an dibuat ke dalam program dengan baha-  
sa pemrograman Turbo Pascal dan meng- 0 0 1 1 0 
 
gunakan struktur data dinamis. 0 0 1 1 0 
Dalam membuat program, senarai 0 0 0 0 1
yang digunakan adalah senarai banyak
(multilist), sebab terkadang relasi yang ada
Penyajian matriks di atas dengan senarai
pada suatu himpunan, hanya melibatkan
berantai banyak adalah sebagai berikut.
beberapa elemen yang ada dalam himpu-
nan tersebut. Sehingga struktur simpul ma-
R
triks relasi dapat dilihat pada Gambar 3.
0 0 0 1 0 2 0 3 0 4 0 5
Relasi Ekuivalensi Relasi Ekuivalensi
(Misal : Relasi R) (Misal : Relasi S)
1 0 1 1 12

Membuat matriks Membuat matriks 2 0 2 1 2 2


relasi R, MR relasi S, MS

3 0 3 3 3 4

Menggabungkan matriks MR ∪ S = MR ∨ MS 4 0 4 3 4 4

Menentukan transitif klosur dari R ∪ S 5 0 5 5


dengan algoritma Warshall
Gambar 4. Penyimpanan matriks relasi de-
Relasi ekuivalensi yang memuat R dan S ngan senarai berantai banyak
Deklarasi simpul seperti di atas
Gambar 2. Langkah-langkah menentukan
seperti dalam referensi [3] adalah:
relasi ekuivalensi terkecil dari
type Mat = ^ Elemen;
gabungan dua relasi ekuiva-
Elemen = record
lensi pada suatu himpunan
Baris, Kolom : integer;
Kanan, Bawah : Mat;
end;
Baris Kolom
Procedure yang digunakan dalam program
Bawah Kanan
adalah:
Gambar 3. Struktur simpul untuk matriks a) Procedure BUAT_SIMPUL:
relasi Digunakan untuk membuat simpul baru.
b) Procedure ADA_BARIS:
Baris dan Kolom menunjukkkan nomor Digunakan untuk mencek apakah no-
baris dan nomor kolom yang bernilai 1. mor baris sudah ada.
Tipe Baris dan Kolom adalah integer. Ba- c) Procedure ADA_KOLOM:
wah dan Kanan masing-masing adalah po- Digunakan untuk mencek apakah no-
inter yang bertipe sama seperti gambar 3. mor kolom sudah ada.
Pointer Bawah menunjuk ke nomor baris d) Procedure SISIP_ELEMEN:
berikutnya, pointer Kanan menunjuk ke Digunakan untuk menyisipkan elemen
kolom berikutnya. matriks pada posisinya yang tepat.

84
Sukmawati Nur Endah (Transitif Klosur dari Gabungan Dua Relasi Ekuivalensi pada … )

e) Procedure TAMBAH_DATA: ¦2. Jika Anda ingin mengakhiri ¦


Digunakan untuk menambah data pada ¦ pemasukan data, ketikkan ¦
¦ bilangan 0 sesudah kata ¦
relasi yang telah ada. ¦ Nomor baris ¦
f) Procedure CETAK_MATRIKS: +--------------------------------+
Digunakan untuk mencetak bentuk ma- Tampilan contoh pemasukan data relasi
triks yang bernilai 1 dan 0. ekuivalensi (misal untuk data di contoh
g) Procedure CETAK_RELASI: 2 halaman sebelumnya)
Digunakan untuk mencetak relasi dari
suatu bentuk matriks. PROGRAM TRANSITIF KLOSUR DARI
h) Procedure GABUNGAN_MATRIKS: GABUNGAN DUA RELASI EKUIVALENSI
DALAM SUATU HIMPUNAN
Digunakan untuk menggabungkan dua DENGAN STRUKTUR DATA DINAMIS
buah matriks relasi.
i) Procedure TRANSITIF_KLOSUR: MASUKKAN POSISI ELEMEN YANG
Digunakan untuk menentukan transitif BERNILAI 1 PADA MATRIKS RELASI
klosur dari sebuah matriks. EKUIVALENSI PERTAMA:
j) Procedure CEK_REFLEKSIF: Nomor baris : 1 Nomor kolom : 1
Digunakan untuk mengecek sifat reflek- Nomor baris : 1 Nomor kolom : 2
sif dari suatu relasi. Nomor baris : 2 Nomor kolom : 1
k) Procedure CEK_SIMETRIS: Nomor baris : 2 Nomor kolom : 2
Nomor baris : 3 Nomor kolom : 3
Digunakan untuk mengecek sifat sime- Nomor baris : 3 Nomor kolom : 4
tris dari suatu relasi. Nomor baris : 4 Nomor kolom : 3
l) Procedure CEK_TRANSITIF: Nomor baris : 4 Nomor kolom : 4
Digunakan untuk mengecek sifat transi- Nomor baris : 5 Nomor kolom : 5
tif dari suatu relasi. Nomor baris : 0

MASUKKAN POSISI ELEMEN YANG


Berikut contoh output program: BERNILAI 1 PADA MATRIKS RELASI
Tampilan menu pilihan EKUIVALENSI KEDUA:

PROGRAM TRANSITIF KLOSUR DARI Nomor baris : 1 Nomor kolom : 1


GABUNGAN DUA RELASI EKUIVALENSI Nomor baris : 2 Nomor kolom : 2
DALAM SUATU HIMPUNAN Nomor baris : 3 Nomor kolom : 3
DENGAN STRUKTUR DATA DINAMIS Nomor baris : 4 Nomor kolom : 4
Nomor baris : 4 Nomor kolom : 5
>>> MENU PILIHAN <<< Nomor baris : 5 Nomor kolom : 4
Nomor baris : 5 Nomor kolom : 5
A. INPUT DATA (DUA RELASI Nomor baris : 0
EKUIVALENSI)
B. MENAMBAH DATA
C. OUTPUT MATRIKS RELASI >> CEK TERPENUHINYA SYARAT RELASI
EKUIVALENSI EKUIVALENSI <<
D. OUTPUT MATRIKS GABUNGAN DUA
RELASI EKUIVALENSI Ingat : Relasi dikatakan relasi
E. TRANSITIF KLOSUR DARI GABUNGAN ekuivalensi jika dan hanya
DUA RELASI EKUIVALENSI jika relasi tersebut
F. KESIMPULAN mempunyai sifat refleksif,
G. SELESAI simetris, dan transitif

PILIH SALAH SATU (A..G atau a..g): Relasi PERTAMA merupakan relasi
Tampilan menu pilihan A (Input Data) refleksif
+--------------------------------+ Relasi PERTAMA merupakan relasi
¦ PERHATIAN ¦ simetris
¦1. Pemasukan data relasi ¦ Relasi PERTAMA merupakan relasi
¦ ekuivalensi berdasarkan ¦ transitif
¦ matriks relasinya yaitu hanya¦ Relasi PERTAMA merupakan relasi
¦ pada elemen yang bernilai 1. ¦ ekuivalensi

85
Jurnal Matematika Vol. 8, No.3, Desember 2005: 78-87

Relasi KEDUA merupakan relasi Tampilan menu pilihan E (Transitif


refleksif
Klosur dari Gabungan Dua Relasi
Relasi KEDUA merupakan relasi
simetris Ekuivalensi)
Relasi KEDUA merupakan relasi
transitif PROGRAM TRANSITIF KLOSUR DARI
Relasi KEDUA merupakan relasi GABUNGAN DUA RELASI EKUIVALENSI
ekuivalensi DALAM SUATU HIMPUNAN
DENGAN STRUKTUR DATA DINAMIS

Tampilan menu pilihan C (Matriks >>TRANSITIF KLOSUR DARI


Relasi Ekuivalensi) GABUNGAN DUA BUAH MATRIKS
RELASI EKUIVALENSI<<
PROGRAM TRANSITIF KLOSUR DARI ===================================
GABUNGAN DUA RELASI EKUIVALENSI Matriks W(1):
DALAM SUATU HIMPUNAN 1 1 0 0 0
DENGAN STRUKTUR DATA DINAMIS 1 1 0 0 0
0 0 1 1 0
>> MATRIKS RELASI EKUIVALENSI << 0 0 1 1 1
================================== 0 0 0 1 1

MATRIKS RELASI EKUIVALENSI Matriks W(2):


PERTAMA: 1 1 0 0 0
1 1 0 0 0
1 1 0 0 0 0 0 1 1 0
1 1 0 0 0 0 0 1 1 1
0 0 1 1 0 0 0 0 1 1
0 0 1 1 0
0 0 0 0 1 TEKAN ENTER UNTUK MELANJUTKAN !!

MATRIKS RELASI EKUIVALENSI KEDUA:


Matriks W(3):
1 0 0 0 0 1 1 0 0 0
0 1 0 0 0 1 1 0 0 0
0 0 1 0 0 0 0 1 1 0
0 0 0 1 1 0 0 1 1 1
0 0 0 1 1 0 0 0 1 1

Matriks W(4):
Tampilan menu pilihan D (Matriks 1 1 0 0 0
Gabungan Dua Relasi Ekuivalensi) 1 1 0 0 0
0 0 1 1 1
PROGRAM TRANSITIF KLOSUR DARI 0 0 1 1 1
GABUNGAN DUA RELASI EKUIVALENSI 0 0 1 1 1
DALAM SUATU HIMPUNAN
DENGAN STRUKTUR DATA DINAMIS TEKAN ENTER UNTUK MELANJUTKAN !!

>> GABUNGAN DUA BUAH MATRIKS


RELASI EKUIVALENSI << Matriks W(5):
================================== 1 1 0 0 0
1 1 0 0 0
MATRIKS HASIL GABUNGAN: 0 0 1 1 1
0 0 1 1 1
1 1 0 0 0 0 0 1 1 1
1 1 0 0 0
0 0 1 1 0 MATRIKS HASIL TRANSITIF KLOSUR :
0 0 1 1 1 1 1 0 0 0
0 0 0 1 1 1 1 0 0 0
0 0 1 1 1
0 0 1 1 1
0 0 1 1 1

86
Sukmawati Nur Endah (Transitif Klosur dari Gabungan Dua Relasi Ekuivalensi pada … )

Jadi transitif klosur dari gabung- merupakan relasi ekuivalensi terkecil


an dua relasi ekuivalensi(R dan S) yang mengandung dua relasi yang dike-
adalah
t(R U S) = {(1,1),(1,2),(2,1), tahui.
(2,2),(3,3),(3,4),(3,5),(4,3), 2. Algoritma Warshall dapat digunakan un-
(4,4),(4,5), (5,3),(5,4),(5,5)} tuk menentukan relasi ekuivalensi terke-
cil dari gabungan dua relasi ekuivalensi
Tampilan menu pilihan F (Kesimpulan) pada suatu himpunan dengan cara me-
nentukan transitif klosur dari gabungan
PROGRAM TRANSITIF KLOSUR DARI kedua relasi ekuivalensi tersebut.
GABUNGAN DUA RELASI EKUIVALENSI
DALAM SUATU HIMPUNAN
3. Penyimpanan matriks relasi dengan se-
DENGAN STRUKTUR DATA DINAMIS narai berantai banyak dapat menghemat
>> KESIMPULAN << memori sebab elemen nol pada matriks
============ tersebut tidak ikut tersimpan.
Dua relasi ekuivalensi R dan S
dari matriks relasi yang diketahui 4. DAFTAR PUSTAKA
adalah : [1] Barnier, W., Feidman, N. (1990), In-
R = {(1,1),(1,2),(2,1),(2,2), troduction to Advanced Mathematics,
(3,3),(3,4),(4,3),(4,4),(5,5)} Prentice-hall International, New Jer-
S = {(1,1),(2,2),(3,3),(4,4),
(4,5),(5,4),(5,5)}
sey: 116 - 153.
[2] Fletcher, Hoyle, Patty (1991), Founda-
Relasi ekuivalensi terkecil yang tions of Discrete Mathematics. PWS
mengandung R dan S adalah Kent Publishing Company, Boston:
{(1,1),(1,2),(2,1),(2,2),(3,3), 319 - 409.
(3,4),(3,5),(4,3),(4,4),(4,5),
(5,3),(5,4),(5,5)} [3] Insap Santosa, P. (1992) Struktur Data
Menggunakan Turbo Pascal 6.0, Andi
3. PENUTUP Offset, Yogyakarta: 221-246.
Dari pembahasan yang telah dikemu- [4] Kolman, B. (1987), Discrete Mathe-
kakan sebelumnya, maka dapat diambil ke- matical Structures for Computer
simpulan sebagai berikut: Science, Prentice-hall Inc, New Jersey:
1. Transitif klosur dari suatu relasi merupa- 85 - 151.
kan relasi transitif terkecil yang me- [5] Ross, K A., Wright, C.R.B. (1992),
ngandung R, sedangkan transitif klosur Discrete Mathematics, Third Edition,
dari gabungan dua relasi ekuivalensi Prentice-hall International, New Jer-
sey: 563 - 571.

87

Anda mungkin juga menyukai