Kang Nur


Suka main, njajan, dan data
Share: 

Diperbarui Kamis, 28 Des 2023

Ditulis oleh Kang Nur

Relasi dan Fungsi

Pengantar matriks

Sebelum membahas tentang relasi dan fungsi, di sini kita akan belajar sedikit tentang matriks yang nantinya digunakan untuk salah satu representasi matriks. Matriks adalah kumpulan elemen yang disusun dalam bentuk baris dan kolom. Sebagai contoh, sebuah matriks $$2\times3$$ memiliki dua baris dan tiga kolom. Matriks acap kali dinotasikan dalam bentuk berikut:

$$A = \left[\begin{array}{rrrr} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{array}\right]$$

Di mana $$a_{ij}$$ adaah elemen matriks yang terletak pada baris ke-$$i$$ dan kolom ke-$$j$$, dan $$m\times n$$ menunjukkan ukuran matriks dengan $$m$$ baris dan $$n$$ kolom.

Di pengantar matriks kali ini, saya akan menjelaskan dua jenis matriks saja, yaitu: Matriks bujur sangkar dan matriks zero-one.

  1. Matriks bujur sangkar

    Matriks bujur sangkar adalah matriks yang memiliki jumlah baris dan kolom yang sama. Dengan kata lain, matriks bujur sangkar memiliki ukuran $$n\times n$$, di mana $$n$$ adalah jumlah baris dan jumlah kolom. Notasi umum untuk matriks bujur sangkar adalah:

    $$B = \left[\begin{array}{rrrr} b_{11} & b_{12} & \cdots & b_{1n} \\ b_{21} & b_{22} & \cdots & b_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ b_{n1} & b_{n2} & \cdots & b_{nn} \end{array}\right]$$

  2. Matriks zero-one

    Matriks zero-one adalah jenis matriks di mana setiap elemennya hanya dapat bernilai 0 atau 1. Matriks ini umumnya digunakan untuk merepresentasikan graf atau hubungan biner di antara himpunan objek atau elemen. Contoh matriks zero-one dengan ukuran $$m\times n$$ adalah sebagai berikut:

    $$M = \left[\begin{array}{rrrr} 0 & 1 & \cdots & 0 \\ 1& 0 & \cdots & 1 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 1 & \cdots & 1 \end{array}\right]$$

    Dalam matriks ini, setiap elemen hanya bisa berisi 0 atau 1, dan matriks tersebut dapat digunakan untuk menyajikan koneksi atau relasi biner antara objek atau simpul dalam suatu sistem.

  3. Matriks satuan

    Matriks satuan, juga dikenal sebagai matriks identitas, adalah suatu jenis matriks yang memiliki elemen 1 di sepanjang diagonal utama dan elemen 0 di luar diagonal utama. Matriks identitas sering disimbolkan dengan $$I$$ atau $$I_{n}$$​, tergantung pada konteks ordo matriks tersebut. Dalam notasi umum, matriks identitas ordo $$n$$ adalah sebagai berikut:

    $$I_{n} = \left[\begin{array}{rrrr} 1 & 0 & \cdots & 0 \\ 0& 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \end{array}\right]$$

    Misalnya, jika kita bicara tentang matriks identitas ordo 3, itu akan terlihat seperti ini:

    $$I_{3} = \left[\begin{array}{rrr} 1 & 0 & 0 \\ 0& 1 & 0 \\ 0 & 0 & 1 \end{array}\right]$$

    Matriks identitas memiliki sifat khusus yang penting. Jika $$A$$ adalah matriks ordo $$m\times n,$$ maka $$A⋅I_{n}=A$$ dan $$I_{m}​⋅A=A$$. Artinya, perkalian matriks identitas dengan matriks lain tidak mengubah matriks tersebut.

    Matriks identitas memiliki peran penting dalam berbagai bidang matematika, terutama dalam operasi matriks dan dalam sistem persamaan linier.

  4. Matriks simetris

    Matriks simetris adalah jenis matriks yang sama dengan transpose-nya. Dengan kata lain, sebuah matriks dikatakan simetris jika elemen-elemen yang terletak di sepanjang diagonal utama dan di atas diagonal utama sama dengan elemen-elemen yang berada di bawah diagonal utama.

    Secara formal, matriks $$A$$ dikatakan simetris jika $$A=A^{T},$$ di mana $$A^{T}$$ adalah matriks transpose dari $$A$$. Untuk matriks simetris, elemen-elemen pada posisi $$(i,j)$$ dan $$(j,i)$$ akan sama untuk setiap $$i$$ dan $$j.$$

    Contoh matrix simetris dengan ordo $$3\times 3:$$

    $$A = \left[\begin{array}{rrr} 1 & 2 & 3 \\ 2 & 4 & 5 \\ 3 & 5 & 6 \end{array}\right]$$

    Dalam matriks ini, $$A^{T}$$ juga sama dengan $$A$$, sehingga matriks ini dikategorikan sebagai matriks simetris.

    Matriks simetris memiliki sifat-sifat khusus dan sering muncul dalam berbagai konteks matematika dan aplikasi ilmu pengetahuan, seperti dalam teori matriks, analisis numerik, dan mekanika struktur.

Apa itu relasi?

Relasi adalah hubungan antara dua himpunan, di mana setiap elemen dari himpunan pertama (domain) dihubungkan dengan satu atau lebih elemen dari himpunan kedua (kodomain). Secara formal, dinotasikan dengan:

$$R\subseteq (A\times B)$$

Dimana, relasi $$R$$ dari himpunan $$A$$ ke himpunan $$B$$ dinyatakan sebagai subset dari $$A\times B$$, yang berisi pasangan-pasangan terurut $$(a,b)$$ di mana $$a$$ adalah elemen dari $$A$$ dan $$b$$ adalah elemen dari $$B$$ $$((a,b)\in R).$$

Contoh:

Misalkan kita memiliki dua himpunan:

$$A=\{1,2,3\}$$ dan $$B=\{x,y,z\}$$

Kita bisa mendefinisikan relasi $$R$$ dari $$A$$ ke $$B$$ sebagai berikut:

$$R=\{(1,x),(2,y),(2,z),(3,x)\}$$

Dalam hal ini, setiap elemen dari $$A$$ memiliki hubungan dengan elemen-elemen tertentu dari $$B$$. Sebagai contoh, $$1$$ terhubung dengan $$x$$, $$2$$ terhubung dengan $$y$$ dan $$z$$, dan $$3$$ terhubung dengan $$x.$$

Jika digambarkan dengan diagram panah sebagai berikut:

Gambar 1. Hubungan antara himpunan $$A$$ dan $$B$$

Relasi pada sebuah himpunan

Relasi pada sebuah himpunan adalah relasi yang khusus, di mana melibatkan hubungan antar elemen-elemen dalam himpunan tersebut. Dalam notasi matematis :

$$R\subseteq A\times A$$

Dimana, Relasi $$R$$ pada himpunan $$A$$ adalah suatu himpunan bagian dari $$A\times A.$$ Dengan kata lain, $$R$$ terdiri dari pasangan terurut $$(a,b)$$ di mana $$a$$ dan $$b$$ adalah elemen-elemen dari $$A.$$

Contoh:

Misalkan $$A=\{1,2,3\}$$, dan kita ingin mendefinisikan relasi $$R$$ yang menunjukkan bahwa dua elemen dalam $$A$$ memiliki selisih yang merupakan bilangan genap. Maka, $$R$$ dapat didefinisikan sebagai berikut:

$$R=\{(1,3),(2,2),(3,1)\}$$

Dalam hal ini, setiap pasangan terurut $$(a,b)$$ dalam $$R$$ memenuhi kriteria bahwa $$a−b$$ adalah bilangan genap. Misalnya, pasangan $$(1,3)$$ dipilih karena $$1−3=−2$$, yang merupakan bilangan genap.

Notasi matematis yang lebih formal dapat ditulis sebagai berikut:

$$R=\{(a,b)\in A\times A ∣ a−b\ adalah\ bilangan\ genap\}$$

Definisi ini mengindikasikan bahwa $$R$$ adalah himpunan pasangan terurut dari $$A\times A$$ di mana selisih antara elemen-elemen dalam pasangan tersebut adalah bilangan genap.

Apa saja jenis representasi relasi?

  1. Diagram panah (arrow diagram)

    Representasi relasi menggunakan diagram panah adalah representasi visual yang menunjukkan hubungan antar elemen-elemen dari dua himpunan dengan menggunakan panah.

    Jika $$R$$ adalah relasi dari himpunan $$A$$ ke $$B$$ dengan pasangan terurut $$(a,b),$$ maka setiap panah dari $$a$$ ke $$b$$ dalam diagram panah mewakili elemen $$R.$$

    Contoh:

    Himpunan: $$A=\{1,2,3\}$$ dan $$B=\{2,3,4\}$$

    Relasi: $$R=\{(1,2),(2,3),(1,4),(2,4)\}$$

    Maka diagram panahnya:

    Gambar 2. Representasi relasi dengan diagram panah
  2. Tabel (table)

    Representasi relasi menggunakan tabel adalah representasi tabular yang menunjukkan pasangan-pasangan terurut dari suatu relasi.

    Jika $$R$$ adalah relasi dari himpunan $$A$$ ke $$B$$ dengan pasangan terurut $$(a,b),$$ maka tabel $$R$$ akan memiliki dua kolom, satu untuk elemen $$A$$ dan satu untuk elemen $$B$$, dengan setiap baris berisi pasangan terurut $$a$$ dan $$b.$$

    Contoh:

    Himpunan: $$A=\{1,2,3\}$$ dan $$B=\{2,3,4\}$$

    Relasi: $$R=\{(1,2),(2,3),(1,4)\}$$

    Maka tabelnya:

    Elemen $$A$$ Elemen $$B$$
    1 2
    2 3
    1 4
  3. Matriks (matrix)

    Representasi relasi menggunakan matriks relasi adalah representasi tabel dalam bentuk matriks, di mana baris dan kolom mewakili elemen-elemen dari himpunan, dan elemen di posisi $$(i,j)$$ menunjukkan apakah terdapat relasi antara $$a_{i}$$​ dan $$b_{j}​.$$

    Jika $$R$$ adalah relasi dari himpunan $$A$$ ke $$B$$ dengan pasangan terurut $$(a,b),$$ maka matriks $$R$$ akan memiliki $$1$$ di posisi $$(i,j)$$ jika $$a_{i}$$ terhubung dengan $$b_{j}$$ dan $$0$$ sebaliknya.

    Notasinya:

    $$M =\begin{array}{c c} & \begin{array}{c c c} b_{1} & b_{2} & \cdots & b_{n} \\ \end{array} \\ \begin{array}{c c c}a_{1}\\a_{2}\\\vdots\\ \ a_{m} \end{array} & \left[ \begin{array}{c c c} m_{11} & m_{12} & \cdots & m_{1n}\\ m_{21} & m_{22} & \cdots & m_{2n} \\ \vdots & \vdots & \vdots & \vdots \\ m_{m1} & m_{m1} & \cdots & m_{mn} \end{array} \right] \end{array} \longrightarrow m_{ij} = \Biggl\{_{0,\ (a_{i},b_{j}) \ \notin \ R}^{1,\:(a_{i},b_{j}) \ \in \ R}$$

    Contoh:

    Himpunan: $$A=\{1,2,3\}$$ dan $$B=\{2,3,4\}$$

    Relasi: $$R=\{(1,2),(2,3),(1,4),(3,2)\}$$

    Maka matriksnya:

    $$M =\begin{array}{c c} & \begin{array}{c c c} 2 & 3 & 4 \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 1 & 0 & 1 \\ 0 & 1 & 0 \\ 1 & 0 & 0 \\ \end{array} \right] \end{array}$$

  4. Graf berarah (directed graph)

    Graf berarah adalah representasi visual yang menggunakan simpul/vertex dan panah untuk menunjukkan hubungan arah antar elemen-elemen dari himpunan.

    Jika $$R$$ adalah relasi dari himpunan $$A$$ ke $$B$$ dengan pasangan terurut $$(a,b),$$ maka setiap simpul akan mewakili elemen dari $$A$$ dan $$B$$, dan setiap panah akan menunjukkan arah hubungan antar mereka.

    Dan pada graf berarah pada sebuah himpunan: Jika $$R$$ adalah relasi dari himpunan $$A$$ dengan pasangan terurut $$(a,b),$$ maka setiap simpul pada graf berarah mewakili elemen $$a$$ dari $$A,$$ dan panah mengindikasikan arah hubungan antara $$a$$ dan $$b$$ sesuai dengan pasangan terurut dalam relasi $$R.$$

    Contoh:

    Himpunan: $$A=\{1,2,3\}$$

    Relasi: $$R=\{(1,1),(1,2),(2,3),(3,1)\}$$

    Maka graf berarahnya:

    Gambar 3. Representasi relasi dengan graf berarah
  5. Diagram kartesian (cartesian diagram)

    Representasi relasi menggunakan diagram kartesian adalah representasi visual dari pasangan terurut pada koordinat kartesian.

    Jika $$R$$ adalah relasi dari himpunan $$A$$ ke $$B$$ dengan pasangan terurut $$(a,b),$$ maka setiap titik pada diagram kartesian mewakili pasangan terurut $$a$$ dan $$b.$$

    Contoh:

    Himpunan: $$A=\{1,2,3\}$$ dan $$B=\{2,3,4\}$$

    Relasi: $$R=\{(1,2),(2,3),(1,4)\}$$

    Maka diagram kartesiannya:

    Gambar 4. Representasi relasi dengan diagram kartesian

Apa saja sifat-sifat relasi?

  1. Refleksif (Reflexive)

    Definisi: Suatu relasi $$R$$ pada himpunan $$A$$ dikatakan refleksif jika setiap elemen $$a$$ dari $$A$$ berada dalam relasi dengan dirinya sendiri, yaitu $$aRa.$$

    Notasi: $$\forall a\in A:aRa$$

    Contoh:

    • Misal $$A=\{1,2,3\}$$ dan $$R=\{(1,1),(2,2),(3,3)\},$$ relasi ini dikatakan refleksif.

    • Matriks $$R$$:

      $$M =\begin{array}{c c} & \begin{array}{c c c} 1 & 2 & 3 \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{array} \right] \end{array}$$

      Jika direpresentasikan relasi menggunakan matriks, membentuk matriks satuan.

    • Graf berarah:

      Gambar 5. Representasi relasi graf berarah dari refleksif
  2. Menghantar (Transitive)

    Definisi: Relasi $$R$$ pada himpunan $$A$$ dikatakan transitif jika dari $$aRb$$ dan $$bRc$$ selalu menghasilkan $$aRc.$$

    Notasi: $$\forall a,b,c\in A: (aRb\land bRc)\to aRc$$

    Contoh:

    • Misal $$A=\{1,2,3,4\}$$ dan $$R=\{(1,2),(2,3),(1,3)\},$$ relasi ini dikatakan transitif. Mari kita buktikan dengan tabel.

    • Tabel pasangan berbentuk:

      $$(a,b)$$ $$(b,c)$$ $$(a,c)$$
      $$(1,2)$$ $$(2,3)$$ $$(1,3)$$
    • Matrix $$R$$:

      $$M =\begin{array}{c c} & \begin{array}{c c c} 1 & 2 & 3 & 4 \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ 4 \\ \end{array} & \left[ \begin{array}{c c c c} 0 & 1 & 1 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ \end{array} \right] \end{array}$$

    • Graf berarah

      Gambar 6. Representasi relasi graf berarah dari transitif
    • Relasi $$R=\{(1,1),(2,2),(3,3),(4,4)\}$$ Juga dianggap transitif karena tidak ada hubungan 2 relasi elemen yang saling terhubung

    • Relasi $$R=\{(1,2),(3,4)\}$$ Juga dianggap transitif karena tidak bisa dihubungkan.

    • Relasi $$R=\{(3,4)\}$$ Juga dianggap selalu transitif karena cuman berisi satu relasi.

  3. Setangkup (Symmetric)

    Definisi: Relasi $$R$$ pada himpunan $$A$$ dikatakan simetris jika dari $$aRb$$ menghasilkan $$bRa.$$

    Notasi: $$\forall a,b\in A: aRb \to bRa$$

    Contoh:

    • Misal $$A=\{1,2,3,4\}$$ dan $$R=\{(1,2),(2,1),(3,4),(4,3)\},$$ relasi ini dikatakan simetris. Karena $$(1,2)$$ dan $$(2,1)\in R,$$ begitu juga $$(3,4)$$ dan $$(4,3)\in R.$$

    • Tabel pasangan berbentuk:

      $$(a,b)$$ $$(b,a)$$
      $$(1,2)$$ $$(2,1)$$
      $$(3,4)$$ $$(4,3)$$
    • Matrix $$R$$:

      $$M =\begin{array}{c c} & \begin{array}{c c c} 1 & 2 & 3 & 4\\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ 4 \\ \end{array} & \left[ \begin{array}{c c c} 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \\ \end{array} \right] \end{array}$$

      Jika direpresentasikan relasi menggunakan matriks, membentuk matriks simetris.

    • Graf berarah

      Gambar 7. Representasi relasi graf berarah dari setangkup/simetris
    • Relasi $$R=\{(1,1),(2,2),(3,3),(4,4)\}$$ Juga dianggap simetris.

  4. Tolak setangkup (Antisymmetric)

    Definisi: Relasi $$R$$ pada himpunan $$A$$ dikatakan antisimetris jika dari $$aRb$$ dan $$bRa$$ selalu menghasilkan $$a=b.$$

    Notasi: $$\forall a,b\in A: (aRb \land bRa) \to a=b$$

    Contoh:

    • Jika $$A=\{1,2,3,4\}$$ dan $$R=\{(1,1),(1,2),(1,3)\},$$ relasi ini bersifat antisimetris, karena $$(1,1)\in R$$ dan $$1=1.$$ Relasi ini dikatakan juga tidak simetris karena $$(1,2)\in R$$ namun $$(2,1)\notin R,$$ begitu juga $$(1,3)\in R$$ namun $$(3,1)\notin R.$$

    • Matriks $$R$$:

      $$M =\begin{array}{c c} & \begin{array}{c c c} 1 & 2 & 3 & 4\\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ 4 \\ \end{array} & \left[ \begin{array}{c c c} 1 & 1 & 1 & 0 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ \end{array} \right] \end{array}$$

    • Graf berarah

      Gambar 8. Representasi relasi graf berarah dari tolak setangkup/antisimetris

Apa itu relasi inversi?

Relasi invers dari suatu relasi $$R$$ pada himpunan $$A$$ dan $$B$$ adalah relasi yang membalik arah panah dari $$R$$. Jika $$(a,b)$$ adalah anggota dari $$R$$ dengan $$a$$ berasal dari $$A$$ dan $$b$$ berasal dari $$B$$, maka $$(b,a)$$ adalah anggota dari relasi inversnya, disimbolkan sebagai $$R^{-1}$$.

Notasi:

Jika $$R$$ adalah relasi pada himpunan $$A$$ dan $$B$$, maka relasi invers $$R^{-1}$$ dinotasikan sebagai:

$$R^{-1}=\{(b,a)|(a,b)\in R\}$$

Contoh:

Apa itu kombinasi relasi?

Kombinasi relasi melibatkan penggabungan, irisan, selisih, dan beda setangkup dari dua relasi. Mari kita gunakan notasi matematis untuk setiap operasi:

Misal kita mempunyai himpunan $$A=\{1,2,3\}$$ dan himpunan $$B=\{x,y,z\}$$, serta relasi $$R$$ sebagai berikut:

$$R_{1}=\{(1,x),(2,y),(3,z)\}$$

$$R_{2}=\{(3,z),(1,y)\}$$

Mari dua relasi di atas kita buat matriksnya, kemudian kita melakukan gabungan dan irisan dengan notasi sebagai berikut:

$$M_{R_{1}\cup R_{2}}=M_{R_{1}\lor R_{2}}$$ dan $$M_{R_{1}\cap R_{2}}=M_{R_{1}\land R_{2}}$$

$$M_{R^{1}} =\begin{array}{c c} & \begin{array}{c c c} x & y & z \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{array} \right] \end{array}$$

$$M_{R^{2}} =\begin{array}{c c} & \begin{array}{c c c} x & y & z \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 0 & 1 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 1 \\ \end{array} \right] \end{array}$$

Maka:

$$M_{R_{1}\cup R_{2}}=M_{R_{1}\lor R_{2}} =\begin{array}{c c} & \begin{array}{c c c} x & y & z \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 1 & 1 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{array} \right] \end{array}$$

$$M_{R_{1}\cap R_{2}}=M_{R_{1}\land R_{2}} =\begin{array}{c c} & \begin{array}{c c c} x & y & z \\ \end{array} \\ \begin{array}{c c c} 1 \\ 2 \\ 3 \\ \end{array} & \left[ \begin{array}{c c c} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 1 \\ \end{array} \right] \end{array}$$

Apa itu komposisi relasi?

Komposisi relasi adalah operasi gabungan dua relasi untuk membentuk relasi baru. Jika $$R$$ adalah relasi dari $$A$$ ke $$B$$ dan $$S$$ adalah relasi dari $$B$$ ke $$C$$, maka komposisi relasi $$R$$ dan $$S$$ adalah relasi $$T$$ dari $$A$$ ke $$C$$.

Notasi:

$$T=R\circ S$$

$$T=\{(a,c)|a\in A, c\in C, untuk\ beberapa\ b\in B,(a,b)\in R,dan\ (b,c)\in S\}$$

Contoh:

Apa itu relasi n-ray?

Relasi n-ray (baca: ener) adalah jenis relasi matematika yang melibatkan lebih dari dua himpunan, biasanya terdiri dari $$n$$ himpunan, dengan $$n$$ lebih besar dari 2 $$(n>2)$$. Relasi ini dapat didefinisikan sebagai himpunan tupel nilai yang diambil dari himpunan-himpunan tersebut. Secara formal, relasi n-ary dapat direpresentasikan sebagai himpunan tupel $$(a_{1},a_{2},\dots,a_{n})$$, di mana setiap $$a_{i}$$ adalah elemen dari himpunan yang sesuai.

Notasi:

Jika $$A_{1},A_{2},\dots,A_{n}$$ adalah himpunan-himpunan, maka relasi n-ray $$R$$ dapat diwakili sebagai himpunan semua n-tuple $$(a_{1},a_{2},\dots,a_{n})$$ di mana $$a_{i}\in A_{i}$$ untuk $$i=1,2,\dots,n$$. Notasi matematisnya:

$$R\subseteq A_{1}\times A_{2}\times\dots\times A_{n}$$

Contoh:

Misal kita mempunyai himpunan:

$$Nama=\{Ainur,Badrus,Caca,Danang,Anwar\}$$

$$Mata\ Kuliah=\{Matematika, Fisika, Biologi\}$$

$$ilai=\{A,B,C\}$$

$$Semester =\{Ganjil, Genap\}$$

$$Tahun\ Ajaran=\{2021,2022\}$$

Mari kita buat relasi 5-ray Mahasiswa:

$$Mahasiswa\subseteq Nama\times Mata\ Kuliah\times Nilai\times Semester\times Tahun\ Ajaran$$

$$Mahasiswa=\{\\(Ainur,Matematika,A,Ganjil,2021),\\(Badrus,Fisika,B,Genap,2021),\\(Caca,Biologi,C,Ganjil,2022),\\(Danang,Matematika,B,Genap,2021),\\ (Anwar,Biologi,B,Genap,2022)\\\}$$

Relasi Mahasiswa di atas juga dapat disajikan dalam bentuk tabel:

Nama Mata Kuliah Nilai Semester Tahun Ajaran
Ainur Matematika A Ganjil 2021
Badrus Fisika B Genap 2021
Caca Biologi C Ganjil 2022
Danang Matematika B Genap 2021
Anwar Biologi B Genap 2022

Apa itu basis data?

Basis Data adalah kumpulan informasi yang terorganisir secara terstruktur untuk diakses, dikelola, dan diperbarui dengan efisien. Basis data biasanya terdiri dari tabel-tabel yang saling terhubung. Dalam basis data, n-ray digunakan pada relasi atau hubungan antara tabel. Misalnya, n-ray 1 (one-to-one) jika setiap baris di tabel pertama berhubungan dengan satu baris di tabel kedua, n-ray $$n$$ (many-to-many) jika satu baris di tabel pertama dapat berhubungan dengan banyak baris di tabel kedua.

Operator dalam basis data

Operator dalam basis data mengacu pada berbagai operasi yang dapat dilakukan pada data atau tabel dalam suatu sistem manajemen basis data (DBMS). Beberapa operator umum dalam basis data melibatkan manipulasi, penyaringan, dan penggabungan data. Di bawah ini merupakan jenis-jenis operator dalam basis data. Sebelum menjelaskan lebih detail, mari kita buat dahulu dua tabel untuk dipraktikkan di setiap contoh operator.

Tabel Mahasiswa

NIM Nama Mata_Kuliah Nilai Semester
361551 Ainur Matematika 85 2
361552 Ika Fisika 78 2
361553 Novi Kimia 92 1

Tabel Mahasiswa_Info

NIM Nama Jenis_Kelamin
361551 Ainur Laki-laki
361552 Ika Perempuan
361553 Novi Perempuan
  1. Seleksi $$(\sigma)$$

    Seleksi digunakan untuk memilih baris tertentu berdasarkan kondisi tertentu.

    Contoh:

    Misal kita mempunyai query seperti ini: $$\sigma Nilai>80^{(Mahasiswa)}$$

    Query tersebut dibaca: "Pilih semua mahasiswa yang mendapatkan nilai di atas 80 dari tabel Mahasiswa". Hasilnya:

    NIM Nama Mata_Kuliah Nilai Semester
    361551 Ainur Matematika 85 2
    361553 Novi Kimia 92 1

    Untuk kode SQL nya:

        
    
          SELECT * FROM Mahasiswa WHERE Nilai > 80;
    
        
        
  2. Proyeksi $$(\pi)$$

    Proyeksi digunakan untuk memilih kolom tertentu dari sebuah tabel. Jika ada baris yang nilainya sama, maka yang diambil hanya satu data.

    Contoh:

    Misal kita mempunyai query seperti ini: $$\pi NIM, Nama, Nilai^{(Mahasiswa)}$$

    Query tersebut dibaca: "Pilih hanya kolom NIM, Nama, dan Nilai dari tabel Mahasiswa". Hasilnya:

    NIM Nama Nilai
    361551 Ainur 85
    361552 Ika 78
    361553 Novi 92

    Untuk kode SQL nya:

        
    
          SELECT NIM, NAMA, Nilai FROM Mahasiswa;
    
        
        
  3. Join $$(\tau)$$

    Join digunakan untuk menggabungkan baris dari dua atau lebih tabel berdasarkan kondisi tertentu.

    Contoh:

    Misal kita mempunyai query seperti ini: $$\tau NIM^{(Mahasiswa, Mahasiswa\_Info)}$$

    Query tersebut dibaca: "Gabungkan tabel Mahasiswa dan Mahasiswa_Info berdasarkan NIM". Hasilnya:

    NIM Nama Mata_Kuliah Nilai Semester Jenis_Kelamin
    361551 Ainur Matematika 85 2 Laki-laki
    361552 Ika Fisika 78 2 Perempuan
    361553 Novi Kimia 92 1 Perempuan

    Untuk kode SQL nya:

        
    
          SELECT * FROM Mahasiswa JOIN Mahasiswa_Info ON Mahasiswa.NIM = Mahasiswa_Info.NIM;
    
        
        

Apa itu fungsi?

Fungsi disebut juga pemetaan atau transformasi adalah relasi khusus di antara dua himpunan, di mana setiap elemen dari himpunan pertama (domain) dihubungkan/dipetakan dengan satu elemen di himpunan kedua (kodomain). Dengan kata lain, jika $$(a,b)\in f$$ dan $$(a,c)\in f$$, maka $$b=c$$. Jika satu elemen dari himpunan pertama memiliki lebih dari satu relasi ke elemen kedua, itu bukanlah fungsi.

Notasi:

$$f:A\to B$$

Di mana:

Notasi di atas menjelaskan bahwa setiap elemen di himpunan $$A$$ memiliki nilai yang unik di himpunan $$B$$. Inilah yang membuat fungsi dikatakan sebagai relasi yang khusus. Selain itu dapat dinotasikan $$f(a)=b$$, di mana $$a$$ adalah elemen dari himpunan $$A$$ yang dihubungkan dengan elemen $$b$$ dari himpunan $$B$$. Sebagai catatan, $$b$$ disebut bayangan (image) dari $$a$$, sedangkan $$a$$ disebut pra-bayangan (pre-image) dari $$b$$.

Contoh:

Spesifikasi fungsi

  1. Himpunan pasangan terurut

    Fungsi dapat direpresentasikan dalam bentuk himpunan pasangan terurut, di mana setiap pasangan terdiri dari elemen-elemen dari dua himpunan, yaitu domain dan kodomain. Setiap elemen domain dipetakan ke elemen dalam kodomain secara unik.

    Contoh:

    Jika $$f$$ adalah fungsi yang memetakan bilangan bulat $$(\mathbb{Z})$$ ke bilangan genap $$(\mathbb{E})$$, maka $$f=\{(1,2),(2,4),(3,6),\cdots\}$$ adalah himpunan pasangan terurut yang merepresentasikan fungsi tersebut.

  2. Formula pengisian nilai (assignment)

    Fungsi dapat direpresentasikan dengan cara formula pengisian nilai atau assignment, di mana diberikan formula matematis yang menggambarkan bagaimana nilai output muncul berdasarkan nilai input.

    Contoh:

    Pada fungsi linear $$f(x)=mx+b$$ memiliki formula pengisian nilai $$f(x)$$, di mana $$m$$ adalah kemiringan garis dan $$b$$ adalah perpotongan sumbu $$y$$.

  3. Kata-kata/deskripsi

    Fungsi dapat dijabarkan menggunakan kata-kata, yaitu dengan mendeskripsikan secara verbal hubungan antara elemen-elemen dalam domain dan kodomain.

    Contoh:

    Misalkan $$g$$ adalah fungsi yang menggambarkan peningkatan gaji berdasarkan pengalaman kerja. Deskripsi atau kata-kata fungsinya adalah: "Fungsi $$g$$ memetakan setiap tahun pengalaman kerja $$(x)$$ ke gaji $$(g(x))$$, di mana gaji meningkat seiring dengan bertambahnya pengalaman."

  4. Kode program

    Fungsi dapat diimplementasikan ke dalam bahasa pemrograman. Kode program ini menjelaskan cara nilai output keluar berdasarkan nilai input.

    Contoh:

    Mari kita gunakan bahasa pemrogaman Python untuk membuat fungsi kuadrat:

        
    
          def kuadrat(x):
            return x**2
    
        
        

    Fungsi ini mengambil $$x$$ dan mengembalikan $$x^{2}$$ sebagai output.

  5. Kurva/grafik kartesian

    Fungsi dapat direpresentasikan secara visual menggunakan grafik kartesian dalam bentuk kurva atau garis pada sistem koordinat kartesian. Setiap titik pada grafik merepresentasikan pasangan nilai input dan output fungsi.

    Contoh:

    Grafik fungsi kuadrat $$f(x)=x^{2}$$ membentuk parabola yang membuka ke atas pada bidang kartesian. Titik-titik pada parabola ini merepresentasikan pasangan input dan output dari fungsi kuadrat.

    Berikut grafik kartesian dari $$f(x)=x^{2}$$

    Gambar 9. Grafik kartesian dari fungsi kuadrat

    Oh iya, grafik ini saya buat dengan bahasa python dengan bantuan library numpy dan matplotlib, berikut kodenya:

      
    
        import matplotlib.pyplot as plt
        import numpy as np
    
        # Fungsi kuadrat
        def quadratic_function(x):
          return x**2
    
        # Generate nilai x dari -10 hingga 10 dengan selang 0.1
        x_values = np.arange(-10, 10.1, 0.1)
    
        # Hitung nilai y untuk setiap x menggunakan fungsi kuadrat
        y_values = quadratic_function(x_values)
    
        # Plot grafik
        plt.plot(x_values, y_values, label='f(x) = x^2')
    
        # Menambahkan label dan judul
        plt.xlabel('Nilai x')
        plt.ylabel('Nilai f(x)')
        plt.title('Grafik Fungsi Kuadrat')
    
        # Menambahkan grid
        plt.grid(True)
    
        # Menampilkan legenda
        plt.legend()
    
        # Menampilkan grafik
        plt.show()
    
      
      

Sifat-sifat fungsi

  1. Satu ke satu atau injektif (injective)

    Suatu fungsi dikatakan bersifat injektif jika setiap elemen dalam domain dipetakan ke elemen yang berbeda dalam kodomain. Dengan kata lain, tidak ada dua atau lebih elemen berbeda dalam domain yang dipetakan ke elemen yang sama dalam kodomain.

    Notasi: $$a,b\in A, f(a)\neq f(b)\ hanya\ jika\ a\neq b; f(a)=f(b)\ hanya\ jika\ a=b$$

    Contoh:

    Misal kita mempunyai himpunan:

    $$A=\{1,2,3\}$$, $$B=\{x,y,z\}$$

    • Relasi $$f$$ dari $$A$$ ke $$B$$

      $$f=\{(1,x),(2,y),(3,z)\}$$

      Relasi ini dikatakan fungsi yang bersifat injektif, dikarenakan tidak ada elemen yang sama yang dipetakan dalam himpunan $$B$$.

    • Relasi $$f$$ dari $$A$$ ke $$B$$

      $$f=\{(1,x),(2,x),(3,z)\}$$

      Relasi ini dikatakan fungsi yang tidak bersifat injektif, dikarenakan ada elemen yang sama yang dipetakan dalam himpunan $$B$$, yaitu elemen $$(x)$$.

  2. Pada (onto) atau surjektif (surjective)

    Suatu fungsi dikatakan bersifat surjektif jika setiap elemen dalam kodomain memiliki setidaknya satu elemen dalam domain yang dipetakan.

    Contoh:

    Misal kita mempunyai himpunan:

    $$A=\{1,2,3\}, B=\{x,y,z\}$$

    • Relasi $$f$$ dari $$A$$ ke $$B$$

      $$f=\{(1,x),(2,y),(3,z)\}$$

      Relasi ini dikatakan fungsi yang bersifat surjektif, dikarenakan semua elemen dari himpunan $$B$$ dipetakan pada elemen dari himpunan $$A$$.

    • Relasi $$f$$ dari $$A$$ ke $$B$$

      $$f=\{(1,x),(2,x),(3,z)\}$$

      Relasi ini dikatakan fungsi yang tidak bersifat surjektif, dikarenakan ada elemen pada himpunan $$B$$ yang tidak dipetakan pada elemen dari himpunan $$A$$, yaitu elemen $$(z)$$.

  3. Berkoresponden satu ke satu atau bijeksi (bijection)

    Suatu fungsi dikatakan bersifat bijeksi jika fungsi tersebut bersifat injektif dan surjektif.

    Contoh:

    Misal kita mempunyai himpunan:

    $$A=\{1,2,3\}$$, $$B=\{x,y,z\}$$

    Relasi $$f$$ dari $$A$$ ke $$B$$

    $$f=\{(1,x),(2,y),(3,z)\}$$

    Relasi ini dikatakan fungsi yang bersifat bijeksi, karena bersifat injektif dan surjektif.

  4. Fungsi inversi

    Fungsi inversi adalah fungsi yang memetakan setiap elemen dalam kodomain ke elemen yang sesuai dalam domain. Dengan kata lain, jika $$f$$ memetakan $$a$$ ke $$b$$, maka fungsi invers $$f^{-1}$$ memetakan $$b$$ kembali ke $$a$$. Oh iya, fungsi invers hanya ada jika fungsi $$f$$ bersifat injektif dan surjektif ya.

    Notasi: $$a\in A,b\in B,f(a)=b\to f^{-1}(b)=(a)$$

    Contoh:

    Misal kita mempunyai himpunan:

    $$A=\{1,2,3\}$$, $$B=\{x,y,z\}$$

    Relasi $$f$$ dari $$A$$ ke $$B$$

    $$f=\{(1,x),(2,y),(3,z)\}$$

    Maka relasi inversnya adalah

    $$f^{-1}=\{(x,1),(y,2),(z,3)\}$$

Apa itu komposisi fungsi?

Komposisi fungsi adalah operasi matematika yang digunakan untuk menggabungkan dua atau lebih fungsi untuk membentuk fungsi baru.

Notasi:

Jika $$g:A\to B$$ dan $$f:B\to C$$, maka komposisi fungsi $$f$$ dengan $$g$$ dinyatakan sebagai: $$(f\circ g)(x)=f(g(x))$$

Contoh:

Misal kita punya himpunan:

$$A=\{1,2,3\}$$, $$B=\{x,y,z\}$$, $$C=\{i,j,k\}$$

relasi $$g$$ dari $$A$$ ke $$B$$: $$g=\{(1,x),(2,y),(3,z)\}$$

relasi $$f$$ dari $$B$$ ke $$C$$: $$f=\{(x,i),(y,j),(z,k)\}$$

Maka, $$f\circ g=\{(1,i),(2,j),(3,k)\}$$

Komposisi fungsi sendiri tidak komutatif. Artinya, urutan fungsi dalam komposisi mempengaruhi hasilnya. Secara formal, jika $$g:A\to B$$ dan $$f:B\to C$$, maka:

$$(f\circ g)(x)\neq(f\circ g)(x)$$

Artinya, $$f\circ g$$ tidak sama dengan $$g\circ f$$.

Contoh:

Misal kita memiliki dua fungsi:

$$f(x)=2x$$ dan $$g(x)=x^{2}$$

Kemudian kita bentuk komposisi $$f\circ g$$ dan $$g\circ f$$:

$$(f\circ g)(x)=f(g(x))=f(x^{2})=2x^{2}$$

$$g\circ f(x)=g(f(x))=g(2x)=(2x)^{2}=4x^{2}$$

Dengan demikian, $$f\circ g$$ tidak sama dengan $$g\circ f$$ dalam contoh ini. Oleh karena itu, komposisi fungsi tidak bersifat komutatif secara umum, kecuali jika $$f$$ = $$g$$.

Apa saja beberapa fungsi khusus?

  1. Floor

    Fungsi floor digunakan untuk membulatkan nilai ke bawah.

    Notasi: $$\lfloor x\rfloor=max\{n\in \mathbb{Z}|n\le x\}$$

    Contoh: $$\lfloor3.8 \rfloor=3,\ \lfloor-2.5\rfloor=-3$$

    Kode python:

          
    
            import math
    
            x = 3.8
            result = math.floor(x)
            print(result)
    
          
          
  2. Ceiling

    Fungsi ceiling digunakan untuk membulatkan nilai ke atas.

    Notasi: $$\lceil x\rceil=min\{n\in \mathbb{Z}|n\ge x\}$$

    Contoh: $$\lceil 3.2\rceil=4,\ \lceil -1.6 \rceil=-1$$

    Kode python:

          
    
            import math
    
            x = 3.2
            result = math.ceil(x)
            print(result)
    
          
          
  3. Modulo

    Fungsi modulo digunakan untuk menghitung sisa bagi.

    Notasi: $$a\ mod\ b=a-b\lfloor\frac{a}{b}\rfloor$$

    Contoh: $$17\ mod\ 5=2,\ -14\ mod\ 3=1$$

    Kode python:

          
    
            a = 17
            b = 5
            result = a % b
            print(result)
    
          
          
  4. Faktorial

    Faktorial dari suatu bilangan $$n(n!)$$ adalah hasil perkalian semua bilangan positif dari $$1$$ hinggan $$n$$. Penerapan pada bidang komputer, digunakan dalam perhitungan kombinatorika, algoritma

    Notasi: $$n!=n\times (n-1)\times\cdots\times2\times1$$

    Contoh: $$5!=5\times4\times3\times2\times1=120$$

    Kode python:

          
    
            import math
    
            n = 5
            result = math.factorial(n)
            print(result)
    
          
          
  5. Eksponensial

    Eksponensial adalah fungsi matematika yang menghitung pertumbuhan eksponesial. Nilai $$e$$ adalah konstanta Euler. Apa itu konstanta euler?. Konstanta euler adalah suatu bilangan irrasional yang memiliki nilai kira-kira $$2.71828$$. Konstanta ini memiliki peran penting dalam banyak cabang matematika, fisika, dan rekayasa.

    Notasi:

    • Eksponen positif: $$a_{n}=a\times a\times \cdots\times a$$

    • Eksponen negatif: $$a^{-n}=\frac{1}{a^{n}}$$

    Contoh

    • Eksponen positif: $$2^{3}=2\times 2\times 2=8$$

    • Eksponen negatif: $$2^{-3}=\frac{1}{2^{3}}=\frac{1}{8}$$

    Kode python:

          
    
          # Perpangkatan dengan eksponen positif
          base_pos = 2
          exponent_pos = 3
          result_pos = base_pos ** exponent_pos
          print(f"{base_pos}^{exponent_pos} = {result_pos}")
    
          
          
          
    
          # Perpangkatan dengan eksponen negatif
          base_neg = 2
          exponent_neg = -3
          result_neg = base_neg ** exponent_neg
          print(f"{base_neg}^{exponent_neg} = {result_neg}")
    
          
          
  1. Logaritmik

    Fungsi logaritma adalah kebalikan dari fungsi eksponensial. Logaritma sering digunakan dalam analisis kompleksitas algoritma.

    Notasi: $$^{b}log\ x=y\leftrightarrow b^{y}=x$$

    Contoh: $$^{2}log(8)=3 \leftrightarrow 2^{3} = 8$$

    Kode python:

          
    
          import math
    
          x = 8
          base = 2
          result = math.log(x, base)
          print(result)
    
          
          

Apa itu fungsi rekursif?

Fungsi rekursif adalah suatu fungsi yang memanggil dirinya sendiri. Fungsi rekursif, membagi masalah menjadi submasalah yang lebih kecil, dan untuk mengatasi sebuah masalah, rekursif menggabungkan solusi-solusi dari submasalah tersebut.

Mari kita membuat analogi sederhana. Anggap kita sedang menyelesaikan permainan teka-teki yang kompleks. Dalam teka-teki tersebut, kita menemukan kata yang sulit pada teka-teki tersebut. Untuk memecahkan masalah ini, kita bisa menggunakan pendekatan rekursif dengan memecah masalah ini menjadi pencarian kata untuk setiap baris dan kolom, di mana setiap pencarian kata itu sendiri adalah masalah yang lebih kecil. Dengan teknik ini, kita secara bertahap menemukan jawaban kata yang sulit dari teka-teki. Inilah cara kerja fungsi rekursif, menangani submasalah untuk menyelesaikan masalah keseluruhan.

Notasi: $$f(n)=g(n)+f(n-1)$$

Kode python:

  

    def recursive_function(n):
      return g(n) + recursive_function(n-1)

  
  

Fungsi rekursif disusun oleh dua bagian, yaitu:

  1. Basis

    Basis adalah kondisi di mana fungsi rekursif berhenti memanggil dirinya sendiri. Basis digunakan untuk mencegah kondisi infinite loop (pemanggilan terus-menerus tak terbatas).

  2. Rekurensi

    Rekurensi adalah ekspresi matematika atau logika yang mendefinisikan hubungan antara masalah keseluruhan dengan submasalah yang lebih kecil. Rekursi digunakan untuk memberikan rule tentang bagaimana fungsi harus memanggil dirinya sendiri dengan masalah yang lebih sederhana, sehingga secara bertahap mencapai basis rekursi.

Contoh:

  1. Fungsi Faktorial

    Notasi:

    $$f(n) = \begin{cases} 1, & \text{jika } n = 0 \\ n\times f(n-1), & \text{jika } n > 0 \end{cases}$$

    Kode python:

        
    
        def factorial(n):
          if n == 0:
              return 1
          else:
              return n * factorial(n-1)
    
        result = factorial(5)
        print("Fungsi factorial:",result)
    
        
        
  2. Fungsi Chebyshev

    Fungsi chebyshev adalah fungsi matematika yang didefinisikan pada interval tertentu dan memiliki sifat rekursif.

    Notasi:

    $$T(n,x) = \begin{cases} 1, & \text{jika } n = 0 \\ x, & \text{jika } n = 1 \\ 2xT(n-1,x)-T(n-2,x), & \text{jika } n > 1 \end{cases}$$

    Kode python:

        
    
        def chebyshev(n, x):
          if n == 0:
              return 1
          elif n == 1:
              return x
          else:
              return 2 * x * chebyshev(n-1, x) - chebyshev(n-2, x)
    
        result = chebyshev(3, 0.5)
        print("Fungsi chebyshev:",result)
    
        
        
  3. Fungsi Fibonacci

    Fungsi fibonacci adalah urutan bilangan yang dimulai dengan 0 dan 1, dan setiap elemen berikutnya diperoleh dengan menjumlahkan dua elemen sebelumnya.

    Notasi:

    $$f(n) = \begin{cases} 0, & \text{jika } n = 0 \\ 1, & \text{jika } n = 1 \\ f(n-1)+f(n-2), & \text{jika } n > 1 \end{cases}$$

    Kode python:

        
    
        def fibonacci(n):
          if n == 0:
              return 0
          elif n == 1:
              return 1
          else:
              return fibonacci(n-1) + fibonacci(n-2)
    
        result = fibonacci(5)
        print("Fungsi fibonacci:",result)
    
        
        

Apa itu relasi kesetaraan?

Relasi kesetaraan adalah suatu relasi biner yang memenuhi tiga sifat relasi, yaitu: refleksif, transitif, dan simetris. Relasi kesetaraan digunakan untuk membagi himpunan elemen-elemen ke dalam kelas kesetaraan, di mana elemen-elemen dalam kelas yang sama dianggap setara satu sama lain.

Contoh:

Misalkan himpunan $$A$$ adalah himpunan keluarga, dan $$R$$ adalah relasi kesetaraan "seseorang adalah saudara kandung dari orang lain". Artinya $$xRy$$, di mana $$x$$ dan $$y$$ adalah individu dalam himpunan keluarga.

Refleksif

Setiap individu adalah saudara kandung dari dirinya sendiri. Jika dinotasikan: $$x\equiv x$$ karena setiap orang adalah saudara kandung dari dirinya sendiri.

Transitif

jika $$A$$ adalah saudara kandung dari $$B$$ dan $$B$$ adalah saudara kandung dari $$C$$, maka $$A$$ juga saudara kandung dari $$C$$. Jika dinotasikan: Jika $$x\equiv y$$ dan $$y\equiv z$$, maka $$x\equiv z$$.

Simetris

jika $$A$$ adalah saudara kandung dari $$B$$, maka $$B$$ juga saudara kandung dari $$A$$. Jika dinotasikan: Jika $$x\equiv y$$, maka $$y\equiv x$$.

Apa itu relasi pengurutan parsial?

Relasi pengurutan parsial adalah relasi biner yang memenuhi tiga sifat relasi, yaitu: refleksif, transitif, dan antisimetris. Dalam suatu himpunan, relasi pengurutan parsial memberikan suatu cara untuk membandingkan elemen-elemen dalam hal "lebih kecil dari" atau "kurang dari atau sama dengan."

Notasi:

Jika $$R$$ adalah relasi pengurutan parsial pada suatu himpunan $$A$$, notasi matematisnya adalah $$a\leq b$$ atau $$aRb$$, yang berarti elemen $$a$$ kurang dari atau sama dengan elemen $$b$$.

Contoh

Misalkan $$A$$ adalah himpunan bilangan bulat, dan $$R$$ adalah relasi pengurutan parsial yang didefinisikan sebagai "lebih kecil dari atau sama dengan."

Simetris

Transitif

Antisimetris

Apa itu klosur relasi?

Klosur relasi adalah himpunan terkecil dari elemen-elemen yang ditambahkan ke relasi asal untuk memasikan bahwa relasi tersebut memenuhi sifat-sifat tertentu. Ada tiga jenis klosur yang umum: klosur refleksif, klosur simetris, dan klosure transitif. Mari kita bahas dengan detail:

  1. Klosur Refleksif

    Klosur refleksif dari suatu relasi $$R$$ pada himpunan $$A$$ adalah himpunan terkecil yang terdapat $$R$$ dan bersifat refleksif. Proses pembentukan klosur refleksif melibatkan penambahan elemen refleksif $$(a,a)$$ untuk setiap $$a$$ dalam $$A$$.

    Notasi: $$R^{+}=R\cup \{(a,a)|a\in A\}$$

    Contoh:

    Misal kita mempunyai himpunan $$A = \{1,2,3,4\}$$ dan relasi $$R=\{(1,2),(3,4)\}$$.

    Relasi ini tidak bersifat refleksif karena $$(a,a)\notin R$$. Mari kita buat relasi yang bersifat refleksif:

    $$\{(1,1),(2,2),(3,3),(4,4)\}$$

    Lalu kita buat klosur refleksifnya dengan menggabungkan $$R$$ dengan relasi yang baru dibuat:

    $$R^{+}=\{(1,1),(2,2),(3,3),(4,4),(1,2),(3,4)\}$$

    Kode python:

        
    
        def reflexiveClosure(R, A):
          result = set(R)  # Inisialisasi dengan himpunan R
    
          # Menambahkan elemen refleksif
          for a in A:
              result.add((a, a))
    
          return result
    
        # Contoh:
        A = {1, 2, 3, 4}
        R = {(1, 2), (3, 4)}
    
        reflexive_closure_result = reflexiveClosure(R, A)
        print("Klosur Refleksif R:", reflexive_closure_result)
    
        
        
  2. Klosur Simetris

    Klosur simetris dari suatu relasi $$R$$ pada himpunan $$A$$ adalah himpunan terkecil yang terdapat $$R$$ dan bersifat simetris. Proses pembentukan klosur simetris melibatkan penambahan elemen simetris $$(b,a)$$ untuk setiap $$(a,b)$$ dalam $$R$$.

    Notasi: $$R^{sym}=R\cup \{(b,a)|(a,b)\in R\}$$

    Contoh:

    Misal kita mempunyai himpunan $$A = \{1,2,3,4\}$$ dan relasi $$R=\{(1,2),(3,4)\}$$.

    Relasi ini tidak bersifat simetris karena $$(a,b)\in R$$ namun $$(b,a)\notin R$$. Mari kita buat relasi yang bersifat simetris:

    $$\{(2,1),(4,3)\}$$

    Lalu kita buat klosur simetrisnya dengan menggabungkan $$R$$ dengan relasi yang baru dibuat:

    $$R^{sym}=\{(1,2),(2,1),(3,4),(4,3)\}$$

    Kode python:

        
    
        def symmetricClosure(A, R):
          result = set(R)  # Inisialisasi dengan himpunan R
    
          # Menambahkan elemen simetris
          for (x, y) in result.copy():
              new_pair = (y, x)
              # Menambahkan elemen simetris jika belum ada dalam hasil
              if new_pair not in result:
                  result.add(new_pair)
    
          return result
    
        # Contoh:
        A = {1, 2, 3, 4}
        R = {(1, 2), (3, 4)}
    
        symmetric_closure_result = symmetricClosure(A, R)
        print("Klosur Simetris R:", symmetric_closure_result)
    
        
        
  3. Klosur Transitif

    Klosur transitif dari suatu relasi $$R$$ pada himpunan $$A$$ adalah himpunan terkecil yang mengandung $$R$$ dan bersifat transitif. Proses pembentukan klosur transitif agak beda dan agak sulit dari klosur sebelumnya.

    Notasi: $$R^{*}=R\cup R^{2}\cup R^{3}\cup \cdots\cup R^{n}$$

    Contoh:

    Misal kita mempunyai himpunan $$A = \{1,2,3,4\}$$ dan relasi $$R=\{(1,2),(1,4),(2,1),(3,2)\}$$.

    Relasi ini tidak bersifat transitif karena $$(a,b)\in R\ dan\ (b,c)\in R$$ namun $$(a,c)\notin R$$. Mari kita buat relasi yang bersifat transitif:

    • Perhitungan $$R^{2}$$

      $$R^{2}=R\circ R$$

      $$R\circ R=\{(1,2),(1,4),(2,1),(3,2)\}\circ \{(1,2),(1,4),(2,1),(3,2)\}$$

      $$R\circ R=\{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

    • Perhitungan $$R^{3}$$

      $$R^{3}=R\circ R^{2}$$

      $$R\circ R^{2}=\{(1,2),(1,4),(2,1),(3,2)\}\circ \\ \{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

      $$R\circ R^{2}=\{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

    • Perhitungan $$R^{4}$$

      $$R^{4}=R\circ R^{3}$$

      $$R\circ R^{3}=\{(1,2),(1,4),(2,1),(3,2)\}\circ \\ \{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

      $$R\circ R^{3}=\{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

    • Klosur Transitif $$R^{*}$$

      $$R^{*}=R\cup R^{2}\cup R^{3}$$

      $$R^{*}=\{(1,2),(1,4),(2,1),(3,2)\}\cup \\ \{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

      $$R^{*}=\{(1,1),(1,2),(1,4),(2,1),(2,2),(2,4),(3,1),(3,2),(3,4)\}$$

    Kode python:

        
    
          def transitiveClosure(A, R):
            closure = set(R)  # Inisialisasi dengan relasi R
    
            while True:
                new_pairs = set()
                # Mencari pasangan baru yang dapat ditambahkan ke klosur
                for (x, y) in closure:
                    for z in A:
                        if (y, z) in closure and (x, z) not in closure:
                            new_pairs.add((x, z))
    
                # Menghentikan iterasi jika tidak ada pasangan baru yang ditemukan
                if not new_pairs:
                    break
    
                closure.update(new_pairs)
    
            return closure
    
          # Contoh:
          A = {1, 2, 3, 4}
          R = {(1, 2), (1, 4), (2, 1), (3, 2)}
    
          transitive_closure_result = transitiveClosure(A, R)
          print("Klosur Transitif R:", transitive_closure_result)
    
        
        
,