Anda di halaman 1dari 150

Matematika Diskret1

Sugi Guritman Prapto Tri Supriyo

Departemen Matematika
Fakultas Matematika dan Ilmu Pengetahuan Alam
Institut Pertanian Bogor
BOGOR
2004

1 Diktat Kuliah - Hibah Pengajaran SP4


Contents

1 Prinsip Dasar Mencacah 1


1.1 Aturan Jumlah dan Kali . . . . . . . . . . . . . . . . . . . . . 1
1.2 Permutasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Kombinasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Kombinasi dengan pengulangan . . . . . . . . . . . . . . . . . 17

2 Sifat Dasar Intejer 25


2.1 Prinsip Induksi Matematik . . . . . . . . . . . . . . . . . . . . 25
2.2 De…nisi Rekursif . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3 Algoritma Pembagian . . . . . . . . . . . . . . . . . . . . . . . 39
2.3.1 Representasi Basis . . . . . . . . . . . . . . . . . . . . 42
2.3.2 Representasi Bilangan Negatif . . . . . . . . . . . . . . 46
2.4 Algoritme Euclid . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.5 Aritmatik Intejer Modulo n . . . . . . . . . . . . . . . . . . . 57

3 Relasi dan Fungsi 61


3.1 Produk Cartesian dan Relasi . . . . . . . . . . . . . . . . . . . 61
3.2 Fungsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua . . . . . . 71
3.4 Komposisi Fungsi dan Fungsi Invers . . . . . . . . . . . . . . . 81
3.5 Relasi Ekuivalensi . . . . . . . . . . . . . . . . . . . . . . . . . 89

4 Tiga Topik Pilihan 94


4.1 Kompleksitas Komputasi . . . . . . . . . . . . . . . . . . . . . 94
4.1.1 Dominasi Fungsi . . . . . . . . . . . . . . . . . . . . . 95
4.1.2 Analisis Algoritme . . . . . . . . . . . . . . . . . . . . 98

i
CONTENTS ii

4.1.3 Algoritme Pelacaan Linear . . . . . . . . . . . . . . . . 104


4.2 Bahasa: Mesin Status Berhingga . . . . . . . . . . . . . . . . 107
4.2.1 Bahasa: Teori Himpunan String . . . . . . . . . . . . . 107
4.2.2 Mesin Status Berhingga . . . . . . . . . . . . . . . . . 112
4.3 Relasi Rekurensi . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.3.1 Relasi Rekurensi Linear Order Pertama . . . . . . . . . 113
4.3.2 Relasi Rekurensi Linear Homogen Order Kedua den-
gan Koe…sien Konstan . . . . . . . . . . . . . . . . . . 116
4.3.3 Relasi Rekurensi Tak-homogen . . . . . . . . . . . . . 120

5 Pengantar Teori Graf 122


5.1 Konsep Dasar Graf . . . . . . . . . . . . . . . . . . . . . . . . 122
5.1.1 Subgraf, Komplemen, dan Isomor…sma . . . . . . . . . 131
5.1.2 Derajat Verteks . . . . . . . . . . . . . . . . . . . . . . 139
5.2 Mengenal Beberapa Graf Khusus . . . . . . . . . . . . . . . . 142
5.2.1 Graf Euler . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.2.2 Graf Planar . . . . . . . . . . . . . . . . . . . . . . . . 143
5.2.3 Graf Hamilton . . . . . . . . . . . . . . . . . . . . . . . 145
5.3 Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Chapter 1

Prinsip Dasar Mencacah

Enumerasi atau pencacahan merupakan bahasan awal dari matematika diskret


yang digunakan sebagai alat dasar untuk mempelajari materi-materi lainnya
yang umumnya bersifat kombinatorik. Disamping itu ia juga mempunyai ap-
likasi di banyak area seperti: teori peluang, statistika, teori graf, teori koding,
kriptogra… dan analisis algoritme. Materi1 pembahasannya akan ditekankan
pada:

Aturan Jumlah dan Kali,


Permutasi,
Kombinasi, dan
Kombinasi dengan Pengulangan.

1.1 Aturan Jumlah dan Kali


De…nisi 1.1 (Aturan Jumlah) Jika tugas jenis pertama dapat dilakukan
dengan m cara, tugas jenis kedua dapat dilakukan dengan n cara, dan kedua
jenis tugas itu tidak dapat dilakukan secara simultan, maka banyaknya cara
untuk menyelesaikan tugas-tugas tersebut adalah m + n cara.

Contoh 1.1 Di dalam suatu laboratorium komputer ada 4 printer (merk)


jenis laserjet dan 6 printer jenis deskjet. Jika seorang praktikan diperbolehkan
menggunakan kedua jenis printer tersebut, maka ada 4 + 6 = 10 printer yang
bisa dipilih untuk dipakai.
1
Beberapa bahasan disampaikan hanya sebagai review karena telah diberikan pada
matakuliah Matematika Dasar (MAT 212).

1
1.1 Aturan Jumlah dan Kali 2

Contoh 1.2 Aturan jumlah dapat diperluas untuk lebih dari dua tugas. Mis-
alnya, seorang instruktur laboratorium komputer memiliki 4 jenis buku bahasa
pemrograman: 5 buku (judul) tentang C++, 4 buku tentang FORTRAN, 3
buku tentang Java, dan 5 buku tentang Pascal: Jika seorang praktikan dian-
jurkan untuk meminjam satu buku bahasa pemrograman dari sang instruktur,
maka ada 5 + 4 + 3 + 5 = 17 buku yang bisa dia pinjam.

De…nisi 1.2 (Aturan Kali) Jika suatu prosedur dapat dipecah menjadi
dua tahap, dan jika tahap pertama menghasilkan m keluaran yang mungkin
dan masing-masing keluaran dilanjutkan ke tahap kedua dengan n keluaran
yang mungkin, maka prosedur tersebut akan menghasilkan mn keluaran yang
mungkin.

Contoh 1.3 Pada Contoh 1.2, jika seorang praktikan diwajibkan menguasai
keempat jenis bahasa pemrograman yang masing-masing diberi waktu satu
bulan untuk mempelajarinya, maka ada 5 4 3 5 = 120 cara belajar yang
mungkin.

Dengan aturan kali, de…nisi berikut dengan mudah dapat dipahami.

De…nisi 1.3 Jika dalam suatu kotak berisi n obyek (benda) yang berbeda,
maka banyaknya cara memilih (mengambil) r obyek dari kotak itu dengan
urutan diperhatikan dan pengulangan (pengembalian) dibolehkan adalah

nr

Ungkapan dari de…nisi di atas bisa diganti dengan: “banyaknya cara men-
empatkan n obyek yang berbeda ke dalam r posisi yang berbeda pula dengan
pengulangan dibolehkan adalah nr cara”.

Contoh 1.4 Untuk penyimpanan data, suatu memori utama komputer me-
muat sejumlah besar sirkuit, masing-masing mampu menyimpan suatu bit (0
atau 1). Sirkuit simpanan ini disusun berdasarkan satuan-satuan yang dise-
but dengan sel. Untuk mengidenti…kasi sel di dalam memori utama, masing-
masing diberikan satu dan hanya satu nama yang disebut dengan adres.
Pada beberapa jenis mesin komputer, adres direpresentasikan sebagai daftar
terurut terdiri atas 8 bit yang secara kolektif disebut dengan byte. Dengan
aturan kali, maka ada 28 adres yang bisa digunakan untuk mengidenti…kasi
sel dimana informasi akan disimpan.

Aturan jumlah dan kali merupakan pengertian dasar untuk memahami


bahasan-bahasan selanjutnya yang berkenaan dengan kombinatorika.
1.1 Aturan Jumlah dan Kali 3

Soal 1.1.1 Seorang turis asing akan melakukan perjalanan dari Jakarta ke
Bandung menggunakan mobil. Pemandu Wisata menjelaskan bahwa ada 2 al-
ternatif yang bisa dipilih, yaitu lewat Purwakarta atau Cianjur. Jika memilih
jalur Cianjur, ada 2 alternatif yang bisa dipilih, yaitu lewat Jonggol atau Bo-
gor. Jika memilih jalur Bogor, ada 3 alternatif yang bisa dipilih, yaitu lewat
Parung, Cibinong, atau Tol, kemudian dari Bogor dilanjutkan dengan 2 al-
ternatif, yaitu lewat Puncak atau Sukabumi. Ada berapa cara perjalanan yang
bisa ditempuh turis tersebut dari Jakarta ke Bandung, apabila:

1. tanpa batasan apapun.

2. Turis tidak memilih jalur Purwakarta karena tujuannya melancong.

3. Turis ingin mengujungi Kebun Raya Bogor.

4. Turis tidak memilih jalur Puncak karena sering terjadi kemacetan.

Soal 1.1.2 Aminah mempunyai 20 buku yang berberda akan ditempakan di


3 rak berbeda. Tentukan banyaknya cara penempatan jika:

1. tidak ada batasan apapun.

2. tidak ada rak yang kosong.

Soal 1.1.3 Syarat penulisan plat nomor mobil untuk wilayah Bogor dan sek-
itarnya adalah:

a. dijit petama harus huruf F,

b. dijit terakhir harus dipilih dari huruf A, B, D, atau E;

c. dijit kedua harus angka yang bukan 0;

d. dijit sisanya harus angka (bebas), dan maksimum ada 3 dijit.

Dengan menggunakan aturan jumlah dan kali, tentukan banyaknya nomor


mobil yang tersedia di wilayah Bogor dan sekitarnya.
1.2 Permutasi 4

1.2 Permutasi
Diberikan suatu himpunan yang beranggota n obyek, sembarang susunan
linear (mendatar) dari obyek-obyek tersebut disebut permutasi. Permutasi
berukuran r dari n obyek bisa diartikan sebagai menempatkan n obyek yang
berbeda ke dalam r posisi yang berbeda pula dengan cara pengulangan tidak
dibolehkan. Jika n obyek dinotasikan dengan a1 ; a2 ; :::; an ; dan r adalah
intejer positif dengan 1 r n; maka banyaknya permutasi berukuran r
dari n obyek, dinotasikan P (n; r); adalah
n!
n (n 1) (n 2) ::: (n r + 1) = (n r)!
pos-1 pos-2 pos-3 pos-r

Jelas bahwa P (n; n) = n! dan P (n; 1) = n: Berikut ini adalah pende…nisian


permutasi dengan ungkapan yang lain.

De…nisi 1.4 Permutasi berukuran r dari n obyek dapat diartikan sebagai


seleksi (pengambilan) sebanyak r dari kumpulan yang beranggota n obyek
dengan urutan diperhatikan dan pengulangan (pengembalian) tidak di-
bolehkan.

Contoh 1.5 Di dalam suatu kelas yang terdiri 10 mahasiswa, dipilih 5 dan
disuruh berjajar dalam suatu baris untuk difoto. Tentukan banyaknya susunan
yang mungkin.

Jawab. Banyaknya susunan yang mungkin adalah langsung mengikuti


kaidah banyaknya permutasi, yaitu P (10; 5) = 10 9 8 7 6: z

Contoh 1.6 Susunan huruf (kata) akan dibentuk dengan mengambil huruf-
huruf yang ada di dalam kata KOMPUTER. Tentukan banyaknya kata (susun-
an huruf tidak harus mempunyai arti) yang bisa dibentuk:

1. jika yang diambil semua huruf.

2. jika yang diambil hanya 5 huruf.

3. jika kata terdiri atas 12 huruf dengan syarat pengulangan huruf di-
bolehkan.

Jawab. Banyaknya kata yang bisa dibentuk:

1. jika yang diambil semua huruf adalah P (8; 8) = 8!:


1.2 Permutasi 5

8!
2. jika yang diambil hanya 5 huruf adalah P (8; 5) = (8 5)!
:

3. jika kata terdiri atas 12 huruf dengan syarat pengulangan huruf di-
bolehkan adalah 812 :

Teorema 1.1 Diberikan n obyek, n1 diantaranya berjenis sama (tidak dapat


dibedakan) dan disebut jenis pertama; n2 berjenis kedua; :::; dan nr berjenis
ke r dengan
n1 + n2 + ::: + nr = n;
maka banyaknya susunan berukuran n dari n obyek tersebut adalah
n!
:
n1 ! n2 ! ::: nr !

Bukti. Misalkan K adalah banyaknya semua susunan yang dimaksud


oleh teorema. Ambil sembarang satu susunan diantara K susunan tersebut,
jika semua anggota dari susunan ini dianggap berbeda, maka satu susunan
tersebut akan menghasilkan n1 ! n2 ! ::: nr ! susunan yang berbeda. Dengan
demikian, K(n1 ! n2 ! ::: nr !) = n! atau
n!
K= :
n1 ! n2 ! ::: nr !
z

Contoh 1.7 Tentukan banyaknya kata yang mungkin dibentuk dengan meng-
ambil semua huruf di dalam kata MATEMATIKA.

Jawab. Berdasarkan Teorema 1.1, banyaknya kata yang mungkin diben-


tuk dengan mengambil semua huruf di dalam kata MATEMATIKA (2M; 3A;
10!
2T; 1E; 1I; dan 1K) adalah (2!)(3!)(2!)(1!)(1!)(1!) : z

Contoh 1.8 Buktikan bahwa jika n dan k adalah intejer positif dengan n =
2k; maka 2n!k adalah intejer.

Bukti. 2 n = 2k diartikan sebagai kumpulan n obyek yang mempunyai k


jenis dengan masing-masing jenis beranggota 2 obyek yang sama. Banyaknya
n! n! n!
permutasi berukuran n dari n obyek tersebut adalah (2!)k = 2k : Jadi 2k adalah

intejer. z
2
Ini merupakan suatu contoh pembuktian dengan pendekatan kombinatorika.
1.2 Permutasi 6

Contoh 1.9 Jika 6 orang didudukkan mengelilingi meja melingkar, maka


banyaknya susunan melingkar yang mungkin adalah

5 4 3 2 1 = 5!

Secara umum, jelaskan bahwa banyaknya susunan melingkar berukuran n


adalah
n!
= (n 1)!:
n

Jawab. Setiap satu susunan melingkar menghasilkan n susunan linear


(mendatar). Jika banyaknya semua susunan melingkar adalan K; maka nK =
n! ,
n!
K= = (n 1)!:
n
z

Contoh 1.10 5 pasang suami-istri didudukkan mengelilingi meja melingkar.


Jika duduknya disyaratkan selang-seling laki-laki dan perempuan, tentukan
banyaknya susunan yang mungkin.

Jawab. Format susunan melingkar dapat dipandang sebagai format


susunan linear dengan membuat satu posisi tetap yang bebas dari pemil-
ihan obyek, sedangkan posisi-posisi lainnya mengikuti pola susunan linear.
Dalam kasus di contoh ini, ambil satu posisi tetap untuk satu orang dari
5 pasang suami istri tersebut. Selanjutnya, 9 posisi lainnya mengikuti pola
susunan linear selang-seling, sehingga diperoleh rumusan

5 4 4 3 3 2 2 1 1 = (5!)(4!):

Soal 1.2.1 Daftarkan semua permutasi untuk huruf x; y; z; w:

Soal 1.2.2 Tentukan jumlah permutasi untuk 7 huruf a; b; c; d; x; y; z. Ke-


mudian, tentukan jumlah permutasi yang diawali huruf d: Tentukan jumlah
permutasi yang diawali huruf d dan diakhiri huruf x atau z:

Soal 1.2.3 Ada berapa cara huruf a; d; c; d; x; x; x; x; x dapat disusun sehingga


tidak ada huruf x yang bersebelahan.
1.3 Kombinasi 7

Soal 1.2.4 Dalam bahasa pemrograman “Celebes”, identi…er dituliskan den-


gan satu huruf yang diikuti oleh 7 simbol yang berupa huruf atau angka.
(Diasumsikan komputer tidak mampu membedakan huruf besar dan kecil,
jadi jumlah huruf ada 26). Seperti layaknya bahasa pemrogrman yang lain,
Celebes mempunyai “keyword” yang tidak bisa digunakan sebagai identi…er.
Jika ada 36 keyword di dalam Celebes, ada berapa identi…er bisa dituliskan?

Soal 1.2.5 Ada berapa susunan dari huruf-huruf di dalam kata SOCIOLOG-
ICAL? Kemudian, ada berapa susunan agar A dan G bersebelahan? Ada
berapa susunan agar semua vokal bersebelahan?

Soal 1.2.6 Ada berapa intejer positif n yang bisa dibentuk dengan menggu-
nakan angka 3; 4; 4; 5; 5; 6; dan 7 sehingga n 5000000:

Soal 1.2.7 Tunjukkan bahwa untuk setiap intejer n; r 0; jika n + 1 > r;


maka
n+1
P (n + 1; r) = P (n; r):
n+1 r

Soal 1.2.8 Tentukan nilai n sehingga:

1. P (n; 2) = 90:

2. P (n; 3) = 3P (n; 2):

3. 2P (n; 2) + 50 = P (2n; 2):

Soal 1.2.9 Ada berapa cara jika 7 orang duduk mengelilingi meja bundar?
Kemudian, jika 2 orang ingin duduk bersebelahan, ada berapa susunan yang
mungkin?

1.3 Kombinasi
De…nisi 1.5 Kombinasi berukuran r dari n obyek dapat diartikan sebagai
seleksi (pengambilan) berukuran r dari kumpulan beranggota n obyek den-
gan urutan tidak diperhatikan dan pengulangan (pengembalian) tidak
dibolehkan.

Kombinasi berukuran r dari n obyek bisa juga diungkapkan sebagai men-


empatkan r obyek yang identik (sama) ke dalam n posisi yang
1.3 Kombinasi 8

berbeda. Banyaknya kombinasi berukuran r dari n obyek, dinotasikan den-


gan C(n; r) atau nr dan dibaca ”n memilih r”, adalah

n! P (n; r)
C(n; r) = = :
(n r)!r! r!
Rumus ini dijelaskan dengan argumen berikut. Setiap satu kombinasi beruku-
ran r dari n obyek akan menentukan r! permutasi berukuran r dari n obyek,
sehingga untuk C(n; r) kombinasi akan menghasikan

C(n; r) (r!) = P (n; r)

Dengan mudah dimengerti bahwa, untuk sembarang intejer positif n,

n n n
= 1, = n, dan = 1:
0 1 n
n
Selanjutnya, dide…nisikan bahwa r
= 0 jika:

n tak-positif dengan r semua intejer, atau

n positif dengan r negatif atau r > n.

Contoh 1.11 Dalam ujian tengah semester Matematika Diskret diberikan


12 soal. Tentukan banyaknya cara mengerjakan soal jika:

1. seorang mahasiswa di wajibkan hanya mengerjakan 8 soal.

2. mahasiswa yang bersangkutan diwajibkan memilih 3 soal dari 5 nomor


soal pertama dan memilih 5 soal dari 7 nomor soal terakhir.

3. dari 8 soal yang dikerjakan mahasiswa tersebut, dipilih sedikitnya 3


soal dari 5 nomor soal pertama dan sisanya diambil dari 7 nomor soal
terakhir.

Jawab. Perhatikan jawaban-jawaban berikut ini.

12 12!
1. Banyaknya cara mengerjakan 8 soal dari 12 soal adalah 8
= 4!8!
:
5
2. Banyaknya cara mengerjakan 3 soal dari 5 soal pertama adalah 3
;
7
dan banyaknya cara mengerjakan 5 soal dari 7 soal terakhir adalah 5
:
Secara keseluruhan proses mengikuti aturan kali, sehingga ada 53 7
5
cara mengerjakan soal.
1.3 Kombinasi 9

3. Mengerjakan sedikitnya 3 soal dari 5 nomor soal pertama dan sisanya


diambil dari 7 nomor soal terakhir mempunyai tiga alternatif penger-
jaan:

(a) 3 soal dari 5 nomor soal pertama dan 5 soal dari 7 nomor soal
terakhir, berarti ada 53 7
5
cara pengerjaan.
(b) 4 soal dari 5 nomor soal pertama dan 4 soal dari 7 nomor soal
terakhir, berarti ada 54 7
4
cara pengerjaan.
(c) 5 soal dari 5 nomor soal pertama dan 3 soal dari 7 nomor soal
terakhir, berarti ada 55 7
3
cara pengerjaan.

Selanjutnya, secara keseluruhan mengikuti aturan jumlah, berarti ada

5 7 5 7 5 7
+ +
3 5 4 4 5 3

cara pengerjaan soal.

Contoh 1.12 Banyaknya susunan huruf di dalam kata ANTABRANTA ada-


lah
10!
4!2!2!1!1!
: 37 800 Jika disyaratkan tidak ada dua huruf A yang berdampingan, buktikan
bahwa banyaknya susunan huruf menjadi

6! 7
2!2!1!1! 4

Bukti. Pertama, dipandang bahwa huruf A tidak ada, maka banyaknya


susunan huruf tanpa A adalah

6!
:
2!2!1!1!

Kemudian setiap satu susunan huruf tanpa A tersebut disisipkan 4 huruf A


dengan gambaran sebagai berikut

N T T R N B
;
" " " " " " "
1.3 Kombinasi 10

maka banyaknya cara penyisipan mempunyai arti sama dengan banyaknya


kombinasi berukuran 4 dari 7 obyek, yaitu

7
:
4

Akhirnya dengan aturan kali kita dapatkan jawaban yang dimaksud di atas.
z

Contoh 1.13 Di dalam Teori Pengkodean atau Teori Bahasa Komputer,


kita mengenal istilah kata(word) atau string yang dide…nisikan sebagai susu-
nan simbol (alfabet). Banyaknya simbol dalam string disebut panjang string,
misalnya diberikan simbol 0, 1, dan 2, maka 02, 22, 12, dan 10 adalah empat
contoh string yang panjangnya 2. Secara umum, jika intejer positif n adalah
panjang string, maka banyaknya semua string yang mungkin adalah 3n ; di-
mana 3 adalah banyaknya simbol. Misalkan x = x1 x2 :::xn adalah salah satu
dari string tersebut, bobot dari x, dengan notasi wt(x); dide…nisikan sebagai

wt(x) := x1 + x2 + ::: + xn :

Ambil contoh: wt(22) = 4; wt(10) = 1; dan wt(102) = 3: Dengan pede…nisian


ini, maka banyaknya semua string yang panjangnya 10 adalah

310 :

Buktikan bahwa banyaknya string yang panjangnya 10 dan berbobot genap


adalah
10 8 10 6 10 4 10 2
210 + 2 + 2 + 2 + 2 +1
2 4 6 8
X5
10 10 2i
= 2
i=0
2i

Bukti. Dari de…nisi jelas bahwa suatu string yang panjangnya 10 dan
berbobot genap jika dan hanya jika banyaknya simbol 1 dalam string terse-
but juga genap. Dengan demikian banyaknya simbol 1 dalam string yang
mungkin adalah 0; 2; 4; ..., 10: Misalkan banyaknya simbol 1 dalam string
adalah j; maka banyaknya string yang mungkin adalah

10 10 j
2
j
1.3 Kombinasi 11

Bilangan ini diperoleh dari menempatkan simbol 1 sebanyak j ke dalam 10


posisi simbol dalam string:

simbol:
:
posisi: 1 2 3 5 6 7 8 9 10

Banyaknya penempatan yang mungkin adalah 10 j


: Selanjutnya, setiap satu
penempatan tersebut, (10 j) posisi simbol sisanya ditempati simbol 0 atau
2 (urutan diperhatikan dan pengulangan dibolehkan), sehingga banyaknya
penempatan yang mungkin adalah 210 j : Kemudian penerapan aturan kali
menghasilkan 10j
210 j . Akhirnya, untuk semua nilai j yang mungkin diter-
apkan aturan jumlah, sehingga diperoleh

10 8 10 6 10 4 10 2
210 + 2 + 2 + 2 + 2 + 1:
2 4 6 8

Teorema 1.2 (Teorema Binomial) Jika x dan y adalah variabel dan n adalah
intejer positif, maka
Xn
n i n i
n
(x + y) = xy : (1.1)
i=0
i

Bukti. (x + y)n dapat ditulis sebagai perkalian dengan n faktor (x + y):

(x + y)(x + y)(x + y) (x + y):

Ekspansi dari perkalian tersebut menghasilkan jumlahan dengan suku-suku


bertipe xi y n i untuk i = 0; 1; 2; :::; n: Banyaknya suku xi y n i dalam ekspansi
tersebut merupakan koe…sien dari xi y n i ; yaitu ni . Bilangan ini diperoleh
dari banyaknya cara memilih i faktor dari n faktor. z

Akibat 1.1 Untuk setiap intejer positif n 1;

P
n
n
1. i
= 2n :
i=0

P
n
n
2. ( 1)i i
= 0:
i=0

Bukti. Substitusikan pada Persamaan 1.1 untuk:


1.3 Kombinasi 12

1. x = 1 dan y = 1;
2. x = 1 dan y = 1;

Contoh 1.14 Himpunan kuasa (power set) dari suatu himpunan A; dino-
tasikan dengan P(A); adalah koleksi (himpunan) semua subhimpunan dari
A: Jika jAj = n; dengan n intejer positif, jelaskan bahwa banyaknya subhim-
punan berkardinal k; dengan 0 k n; adalah nk ; dan
Xn
n
jP(A)j = = 2n :
k=0
k

Jawab. Menentukan banyaknya subhimpunan berkardinal k dari suatu


himpunan berkardinal n mempunyai arti sama dengan menentukan banyaknya
pemilihan berukuran k dari n obyek dengan syarat pengulangan tidak di-
bolehkan dan urutan tidak diperhatikan. Dengan demikian, banyaknya sub-
himpunan berkardinal k; dengan 0 k n; adalah nk : Selanjutnya, berda-
sarkan Akibat 1.1 No. 1, maka
Xn
n
jP(A)j = = 2n :
k=0
k

Contoh 1.15 Tentukan koe…sien dari x5 y 2 di dalam ekspansi (2x 3y)7 :

Jawab. Berdasarkan Teorema Binomial,

(2x 3y)7 = [(2x) + ( 3y)]7


X 7
7
= (2x)i ( 3y)7 i

i=0
i
X
7
7
= [ (2)i ( 3)7 i ]xi y 7 i

i=0
i

Dengan demikian koe…sien dari x5 y 2 adalah (yaitu untuk i = 5)


7
(25 )( 3)2 :
5
z
1.3 Kombinasi 13

Teorema 1.3 Untuk sembarang intejer n; r dengan n r 1;

n+1 n n
= +
r r r 1

Bukti. Walaupun teorema ini bisa dibuktikan secara aljabar, yaitu den-
gan menggunakan de…nisi nr = r!(nn! r)! ; namun disini pembuktian akan di-
lakukan secara kombinatorik. Misalkan

A = fx; a1 ; a2 ; :::; an g;

banyaknya subhimpunan berkardinal r dari A adalah n+1r


: Setiap subhim-
punan tersebut hanya ada dua kemungkinan: memuat x atau tidak memuat
x: Banyaknya subhimpunan yang memuat x adalah r n 1 , sedangkan yang
tidak memuat x adalah nr : Dengan aturan jumlah, kita dapatkan rumusan
yang dimaksud. z

Teorema 1.4 (Teorema Multinomial) Untuk intejer positif n dan t; koe…sien


dari
xn1 1 xn2 2 xn3 3 :::xnt t
dalam ekspansi (x1 + x2 + ::: + xt )n adalah

n!
n1 !n2 !:::nt !
dan dinotasikan dengan
n
:
n1 ; n2 ; :::; nt

Bukti. Banyaknya suku x1n1 xn2 n3 nt


2 x3 :::xt dalam ekspansi (x1 +x2 +:::+xt )
n

adalah banyaknya cara memilih secara berurutan n1 faktor, n2 faktor,:::, dan


nt faktor dari n faktor (x1 + x2 + ::: + xt ); yaitu

n n n1 n n1 n2 n (n1 + n2 + :::nt 1 ) = nt
::: =
n1 n2 n3 nt

n!
;
n1 !n2 !:::nt !
dan merupakan koe…sien dari suku xn1 1 xn2 n3 nt
2 x3 :::xt dalam ekspansi (x1 + x2 +
::: + xn )n . z
1.3 Kombinasi 14

Contoh 1.16 Tentukan koe…sien dari a2 b3 c2 d5 dalam ekspansi

(a + 2b 3c + 2d + 5)16 :

Jawab. Karena

(a + 2b 3c + 2d + 5)16 = [(a) + (2b) + ( 3c) + (2d) + (5)]16 ;

dan berdasarkan Teorema Multinomial, maka


16!
(2!)(3!)(2!)(5!)(4!)

adalah koe…sien dari (a)2 (2b)3 ( 3c)2 (2d)5 (5)4 : Dengan demikian,

16!
(1)2 (2)3 ( 3)2 (2)5 (5)4
(2!)(3!)(2!)(5!)(4!)
adalah koe…sien dari a2 b3 c2 d5 : z

Soal 1.3.1 Hitunglah 62 ; dan periksalah jawabannya dengan mendaftarkan


semua pemilihan berukuran 2 yang bisa dibuat dari huruf a; b; c; x; y; dan z:

n
Soal 1.3.2 Jika n adalah intejer positif dan n > 1; buktikan bahwa 2
+
n 1
2
merupakan bentuk kuadratik.

Soal 1.3.3 Suatu panitia terdiri dari 12 orang yang dipilih dari 10 pria dan
10 wanita. Tentukan banyaknya cara pemilihan, jika:

1. tidak ada batasan apapun.

2. ada 6 pria dan 6 wanita.

3. jumlah wanita harus genap.

4. jumlah wanita harus lebih besar dari pria.

5. ada sedikitnya 8 pria.

Soal 1.3.4 Tentukan banyaknya byte yang memuat banyaknya simbol “1”
sedikitnya 5:

Soal 1.3.5 Tentukan banyaknya cara jika 12 buku yang berbeda didistribusi-
kan ke 4 anak sehingga:
1.3 Kombinasi 15

1. masing-masing anak mendapatkan 3 buku.

2. dua anak yang tertua masing-masing mendapat 4 buku, sedangkan dua


yang termuda masing-masing mendapatkan 2 buku.

Soal 1.3.6 Tentukan banyaknya huruf di dalam kata MISSISSIPPI sehingga


tidak ada huruf S yang bersebelahan.

Soal 1.3.7 Dari Contoh 1.13, tentukan banyaknya string dengan panjangnya
10 yang:

1. memuat 4 simbol “0”, 3 simbol “1”, dan 3 simbol “2”.

2. memuat sedikitnya 8 simbol “1”.

3. berbobot 4:

Soal 1.3.8 Misalkan string dengan panjang 10 dibentuk dari afabet 0; 1; 2;


dan 3:

1. Tentukan banyaknya string yang berbobot 3:

2. Tentukan banyaknya string yang berbobot genap.

Soal 1.3.9 Tentukan koe…sien dari x9 y 3 di dalam ekspansi:

1. (x + y)12 :

2. (x + 2y)12 :

3. (2x 3y)12 :

Soal 1.3.10 Tentukan koe…sien dari:

1. xyz 2 di dalam (w + x + y + z)4 :

2. xyz 2 di dalam (2x y z)4 :


2
3. xyz di dalam (x 2y + 3z 1 )4 :

4. w2 x2 yz 2 di dalam (2w x + 3y 2z)8 :


1.3 Kombinasi 16

Soal 1.3.11 Tentukan jumlah semua koe…sien di dalam ekspansi:

1. (x + y)10 :

2. (x + y + z)10 :

3. (w + x + y + z)5 :

4. (2s 3t + 5u + 6v 11w + 3x + 2y)10 :

Soal 1.3.12 Untuk sembarang intejer positif n; tentukan:

P
n
1
1. i!(n 1)!
:
i=0

P
n
( 1)i
2. i!(n 1)!
:
i=0

Soal 1.3.13 Tunjukkan bahwa untuk sembarang intejer positif m dan n ber-
laku
m+n m+n
n = (m + 1) :
m m+1

Soal 1.3.14 Misalkan n adalah intejer positif, evaluasi (sederhanakan) jum-


lahan
n n n n n
+2 + 22 + + 2k + + 2n :
0 1 2 k n

Soal 1.3.15 Untuk x suatu bilangan nyata dan n intejer positif, tunjukkan
bahwa:

1. 1 = (1 + x)n n
1
x1 (1 + x)n 1
+ n
2
x2 (1 + x)n 2
+ ( 1)n n
n
xn :

2. 2n = (2 + x)n n
1
x1 (2 + x)n 1
+ n
2
x2 (2 + x)n 2
+ ( 1)n n
n
xn :

Soal 1.3.16 Tentukan x jika

X50
50 i
8 = x100 :
i=0
i
1.4 Kombinasi dengan pengulangan 17

1.4 Kombinasi dengan pengulangan


De…nisi 1.6 Kombinasi dengan pengulangan berukuran r dari n obyek
adalah seleksi (pengambilan) berukuran r dari kumpulan beranggota n obyek
dengan urutan tidak diperhatikan dan pengulangan (pengembalian) di-
bolehkan.

Teorema 1.5 Banyaknya kombinasi dengan pengulangan berukuran r


dari n obyek adalah
(n + r 1)! n+r 1 n+r 1
= = (1.2)
r!(n 1)! r n 1

Untuk memperoleh dari mana bilangan dalam teorema tersebut diper-


oleh, berikut ini diberikan contoh sebagai ilustrasi untuk menuju ke suatu
generalisasi.

Contoh 1.17 Untuk memenuhi syarat kelulusan, 7 orang mahasiwa De-


partemen Matematika IPB yang terancam DO (drop out) diwajibkan mengam-
bil 1 mata kuliah pilihan yang dipilih dari 4 mata kuliah pilihan yang ditawar-
kan: Kriptologi, Teori Pengkodean, Matematika Finansial, dan Optimisasi
Kombinatorial. Ada berapa cara pemilihan 4 mata kuliah oleh ketujuh maha-
siswa yang bersangkutan?

Jawab. Misalkan K, T, M, dan O menyatakan Kriptologi, Teori Pengko-


dean, Matematika Finansial, dan Optimisasi Kombinatorial. Sebagai gam-
baran, suatu contoh cara pemilihan yang mungkin adalah K dipilih oleh 2
mahasiswa, T oleh 2 mahasiswa, M oleh 2 mahasiswa, dan O oleh 1 ma-
hasiswa, kemudian dinotasikan dengan K,K,T,T,M,M,O dan ditulis sebagai
xxjxxjxxjx. Agar lebih jelas beberapa cara pemilihan yang mungkin lainnya
diberikan dalam tabel berikut ini.
Cara pemilihan yang mungkin Ditulis sebagai
K,K,K,K,T,M,O xxxxjxjxjx
K,K,K,K,O,O,O xxxxjjjxxx
T,T,M,M,M,M,O jxxjxxxxjx
K,T,T,T,T,T,T xjxxxxxxjj
O,O,O,O,O,O,O jjjxxxxxxx
K,K,K,T,M,O,O xxxjxjxjxx
M,M,M,M,M,M,M jjxxxxxxxj
Beberapa contoh dalam tabel di atas mengarahkan kita pada suatu kesimpu-
lan bahwa masalah menentukan jumlah semua cara pemilihan yang mungkin
1.4 Kombinasi dengan pengulangan 18

dapat dibawa ke masalah mencari banyaknya permutasi berukuran 10 den-


gan 2 jenis, yaitu 7 obyek berjenis ”x ”dan tiga obyek berjenis ”j ”. Dengan
demikian ada
10! 10
=
3!7! 7
cara ketujuh mahasiswa tersebut memilih 4 mata kuliah yang ditawarkan. z
Bentuk umum dari Contoh 1.17 adalah banyaknya kombinasi dengan pen-
gulangan berukuran r dari n obyek yaitu Persamaan 1.2.

Contoh 1.18 Ada berapa cara apabila 13 kelereng yang identik didistribusikan
ke dalam 5 lubang yang berbeda?

Jawab. Dengan argumen yang sama dengan jawaban Contoh 1.17 diper-
oleh jawaban
17! 17
= :
4!13! 13
z

Contoh 1.19 Tentukan banyaknya semua penyelesaian intejer dari persa-


maan
x1 + x2 + x3 + x4 + x5 + x6 = 20;
dimana xi 0 untuk setiap 1 i 6:

Jawab. Dengan argumen yang sama dengan jawaban Contoh 1.17 diper-
oleh jawaban
25! 25
= :
5!20! 20
z

Catatan 1.1 Dari ketiga contoh terakhir di atas, kita sampai pada kesim-
pulan bahwa ketiga pernyataan berikut adalah ekuivalen:

1. Banyaknya pemilihan berukuran r dari koleksi beranggota n obyek den-


gan urutan tidak diperhatikan dan pengulang dibolehkan.

2. Banyaknya solusi intejer dari persamaan

x1 + x2 + ::: + xn = r;

dimana xi 0 untuk setiap 1 i n:


1.4 Kombinasi dengan pengulangan 19

3. Banyaknya cara pendistribusian apabila r obyek yang identik didis-


tribusikan ke dalam n wadah yang berbeda.

Contoh 1.20 Ada berapa cara apabila kita ingin memberikan 7 apel dan 6
jeruk kepada 4 orang anak apabila masing-masing anak sedikitnya menerima
1 apel?

Jawab. Tetapkan dulu bahwa masing-masing anak telah menerima 1


apel, sehingga ada 4+33 1 cara pendistribusian 3 apel sisanya. Setiap cara
ini kemudian diikuti dengan pendistribusian 6 jeruk yaitu 4+66 1 . Dengan
aturan kali diperoleh jawab

6 9
1 :
3 6

Contoh 1.21 Tentukan banyaknya solusi intejer dari persamaan

x1 + x2 + x3 + x4 + x5 + x6 < 200; (1.3)

dimana xi 0 dengan 1 i 6: Jelaskan problem komputasinya!

Jawab. 3 Misalkan

x1 + x2 + x3 + x4 + x5 + x6 = k; (1.4)

maka banyaknya solusi yang dimaksud adalah semua solusi Persamaan 1.4,
untuk 0 k 199: Dengan aturan jumlah diperoleh jawaban

X
199
6+k 1
:
k=0
k

Jawaban ini kalau dicari nilainya cukup melelahkan; apalagi kalau ruas kanan
Pertidaksamaan 1.3 jauh lebih besar dari 200; katakanlah 2000: Berikut ini
diberikan penyelesaian dengan pendekatan identitas kombinatorial. Men-
cari banyaknya solusi intejer dari Pertidaksamaan 1.3 setara dengan mencari
banyaknya semua solusi persamaan

x1 + x2 + x3 + x4 + x5 + x6 + x7 = 200;
3
Ini merupakan suatu contoh solusi yang berhubungan dengan analisis komputasi.
1.4 Kombinasi dengan pengulangan 20

dimana xi 0 untuk setiap 1 i 6 dan x7 > 0: Problem ini juga setara


dengan problem mencari jumlah solusi intejer untuk
y1 + y2 + y3 + y4 + y5 + y6 + y7 = 199;
dimana xi = yi untuk setiap 1 i 6 dan y7 = x7 1 (sekarang yi 0
untuk setiap 1 i 7): Dengan demikian solusinya adalah
199 + 7 1 205 205
= =
199 199 6
205 204 203 202 201 200
=
1 2 3 4 5 6
= 68:937:810:984:000:
z

Contoh 1.22 Setiap intejer positif m dapat dinyatakan sebagai jumlahan


intejer-intejer positif lainnya yang tidak lebih dari m dengan urutan diper-
hatikan. Jumlahan yang demikian disebut komposisi dari m: Misalnya, se-
mua komposisi dari 4 ada 8; yaitu: 4; 3 + 1; 1 + 3; 2 + 2; 2 + 1 + 1; 1 + 2 + 1;
1 + 1 + 2; dan 1 + 1 + 1 + 1: Secara umum, berapa banyaknya komposisi dari
m?

Jawab. Problem menentukan banyaknya semua komposisi dari m setara


dengan problem menentukan banyaknya solusi intejer dari persamaan:
x1 + x2 + ::: + xk = m;
dimana xi 1 untuk setiap 1 i k; dan k adalah intejer dengan 1
k m: Dengan mengambil yi = xi 1 untuk setiap 1 i k; kemudian
persamaan itu ditransformasikan menjadi
y1 + y2 + ::: + yk = m k;
dimana yi 0 untuk setiap 1 i k dan 1 k m: Banyaknya solusi
intejer dari persamaan terakhir ini adalah
Xm
k + (m k) 1 Xm
k + (m k) 1
=
k=1
m k k=1
k 1
Xm
m 1
=
k=1
k 1
X1
m
m 1
=
i=0
i
m 1
= 2
1.4 Kombinasi dengan pengulangan 21

Contoh 1.23 Perhatikan segmen program berikut, dimana i; j; dan k adalah


peubah-peubah intejer.
for i := 1 to 20 do
for j := 1 to i do
for k := 1 to j do
print (i j + k)
Berapa kali perintah print dieksekusi?

Jawab. Sebagai gambaran, beberapa contoh pilihan i; j; dan k (dalam


urutan: i pertama, j kedua, dan k ketiga) adalah: (1; 1; 1); (2; 1; 1);
(2; 2; 1); (3; 2; 1); (17; 12; 5); (16; 16; 2); dan (13; 6; 6): Catatan bahwa (1; 2; 1)
dan (1; 1; 2) tidak mungkin; demikian juga (17; 5; 12); (12; 17; 5); (12; 5; 17);
(5; 12; 17); dan (5; 17; 12): Gambaran ini membawa kita pada suatu kesimpu-
lan bahwa banyaknya kali perintah print dieksekusi setara dengan pemili-
han berukuran 3 dari kumpulan obyek f1; 2; :::; 20g dengan pengurutan tidak
diperhatikan dan pengulangan dibolehkan, yaitu
20 + 3 1
:
3
Jawaban ini juga dapat diperoleh dengan cara lain, misalnya menggunakan
diagram pohon. z

Contoh 1.24 Perhatikan segmen program berikut, dimana i; j; n dan CO


U N T ER adalah peubah-peubah intejer dengan COU N T ER di berikan nilai
awal 0:
COU N T ER := 0
for i := 1 to n do
for j := 1 to i do
COU N T ER := COU N T ER + 1
Pertanyaannya, berapa nilai COU N T ER setelah segmen tersebut diek-
sekusi?

Jawab. Nilai COU N T ER tersebut setara dengan banyaknya pemilihan


nilai-nilai i dan j yang mungkin, yaitu
n+2 1 n(n + 1)
= :
2 2
Nilai yang sama juga diperoleh apabila kita pakai diagram pohon. z
1.4 Kombinasi dengan pengulangan 22

Ringkasan

Ringkasan bahasan dalam bab ini adalah membandingkan pengertian pemil-


ihan berukuran r dari kumpulan beranggota n obyek, yang diberikan dalam
tabel berikut.

Urutan (YA) Urutan (TIDAK)


(n+r 1)!
Ulangan (YA) nr r!(n 1)!
n! n!
Ulangan (TIDAK) P (n; r) = (n r)!
C(n; r) = r!(n r)!

Soal 1.4.1 Tentukan ada berapa cara pendistribusian 10 koin kepada 5 orang
anak jika:

1. tidak ada batasan apapun,

2. setiap anak sedikitnya mendapatkan 1 koin, dan

3. anak yang tertua sedikitnya mendapatkan 2 koin.

Soal 1.4.2 Tentukan banyaknya semua solusi intejer dari persamaan

x1 + x2 + x3 + x4 = 32;

apabila:

1. xi 0; 1 i 4;

2. xi > 0; 1 i 4;

3. x1 ; x2 5; x3 ; x4 7;

4. xi 8; 1 i 4;

5. xi 2; 1 i 4; dan

6. x1 ; x2 ; x3 > 0; 0 < x4 25:

Soal 1.4.3 Dua intejer berdijit-n (awalan 0 dibolehkan) disebut ekuivalen


jika yang satu merupakan permutasi dari yang lain. Ilustrasi: 12033; 20331;
dan 01332 adalah contoh tiga intejer berdijit-5 yang saling ekuivalen.

1. Tentukan banyaknya semua intejer berdijit-5 yang saling tidak ekuiv-


alen.
1.4 Kombinasi dengan pengulangan 23

2. Jika dijit 1; 3; dan 7 harus muncul paling banyak satu kali, tentukan
banyaknya semua intejer berdijit-5 yang saling tidak ekuivalen.

Soal 1.4.4 Tentukan jumlah solusi intejer dari persamaan


x1 + x2 + x3 + x4 + x5 < 500;
jika:

1. xi 0; 1 i 5:
2. xi 2; 1 i 5:

Soal 1.4.5 Perhatikan segmen program berikut, dimana i; j; k dan m adalah


peubah-peubah intejer.
for i := 1 to 20 do
for j := 1 to i do
for k := 1 to j do
for m := 1 to k do
print (i j) + (k m)
Berapa kali perintah print dieksekusi?

Soal 1.4.6 Perhatikan segmen program berikut, dimana i; j; k dan CO


U N T ER adalah peubah-peubah intejer dengan COU N T ER di berikan nilai
awal 10:
COU N T ER := 10
for i := 1 to 15 do
for j := 1 to 15 do
for k := 1 to 15 do
COU N T ER := COU N T ER + 1
Pertanyaannya, berapa nilai COU N T ER setelah segmen tersebut diek-
sekusi?

Soal 1.4.7 Perhatikan segmen program berikut, dimana i; j; k; IN CREA-


M EN T dan SU M adalah peubah-peubah intejer.
IN CREAM EN T := 0
SU M := 0
for i := 1 to 10 do
for j := 1 to i do
for k := 1 to j do
IN CREAM EN T := IN CREAM EN T + 1
SU M := SU M + IN CREAM EN T
Pertanyaannya, berapa nilai SU M setelah segmen tersebut dieksekusi?
1.4 Kombinasi dengan pengulangan 24

Soal 1.4.8 Tulislah program komputer (atau, bangunlah suatu algoritme)


yang outputnya semua solusi intejer dari:

1. x1 + x2 + x3 = 10; 0 xi ; 1 i 3:

2. x1 + x2 + x3 + x4 = 4; 2 xi ; 1 i 4:
Chapter 2

Sifat Dasar Intejer

Di dalam bab ini, pembicaraan banyak terkait dengan sifat-sifat dasar inte-
jer (bilangan bulat). Materinya ditekankan pada bahasan tentang: induksi
matematik, de…nisi rekursif, dan algoritme pembagian.

2.1 Prinsip Induksi Matematik


Topik bahasan intejer tidak terlepas dari notasi himpunan bilangan. Be-
berapa notasi himpunan bilangan yang umum dipakai diantaranya: Z meno-
tasikan himpunan semua bilangan bulat yang anggotanya disebut intejer, Z+
menotasikan himpunan semua intejer positif, N menotasikan himpunan se-
mua intejer tak-negatif, R menotasikan himpunan semua bilangan nyata, dan
Q menotasikan himpunan semua bilangan rasional. Secara sama, penotasian
R+ dan Q+ adalah untuk himpunan bilangan nyata dan rasional positif.
Pada setiap himpunan bilangan di atas dapat dikenai relasi urutan: " =
"; " < ", atau " > ". Artinya untuk setiap dua bilangan a dan b; satu dan
hanya satu berlaku:

"a = b"; "a < b"; atau "a > b":

Sifat dasar intejer yang melandasi induksi matematik dinyatakan pada prin-
sip berikut ini.
Prinsip Pengurutan Baik (well-ordering principle): Setiap subhimpunan
tak-kosong dari Z+ mempunyai unsur terkecil.

Teorema 2.1 (Prinsip induksi matematik) Misalkan S(n) menotasikan


suatu pernyataan matematik terbuka yang melibatkan peubah intejer positif
n: Jika:

25
2.1 Prinsip Induksi Matematik 26

(a) S(1) benar, dan

(b) untuk sembarang pilihan k 2 Z+ ; berlaku: S(k) ) S(k + 1);

kesimpulannya: S(n) benar untuk semua n 2 Z+ :

Bukti. Misalkan S(n) adalah suatu pernyataan terbuka yang memenuhi


syarat (a) dan (b), dan misalkan F = ft 2 Z+ S(t) salahg: Akan dibuktikan
bahwa F = ?: Andaikan F 6= ?; berdasarkan prinsip pengurutan baik, maka
F mempunyai unsur terkecil s: Karena S(1) benar, maka jelas bahwa s > 1;
dan akibatnya s 1 2 Z+ : Karena s terkecil, maka (s 1) 2 = F; ini berarti
S(s 1) benar. Dari fakta ini dan berdasarkan syarat (b), maka S(s) harus
benar, suatu kontradiksi bahwa s 2 F yang berarti S(s) salah. Pengandaian
harus diingkar dan kita simpulkan bahwa F = ?: z
Prinsip induksi matematik disebut juga prinsip induksi berhingga. Di
dalam teorema di atas, syarat (a) disebut langkah basis dan syarat (b) disebut
langkah induktif. Catatan bahwa pada langkah basis S(n) benar tidak harus
dimulai untuk n = 1; tetapi secara umum bisa digantikan untuk n = n0
dimana n0 adalah suatu intejer berhingga dan bisa bernilai negatif. Jika
demikian halnya, kesimpulan akhir menjadi S(n) benar untuk semua nilai
n n0 ; n 2 Z:

Contoh 2.1 Buktikan bahwa 8n 2 Z+ ; berlaku:

P
n
(n)(n+1)
1. 1 + 2 + 3 + ::: + n = i= 2
:
i=1

P
n
(n)(n+1)(2n+1)
2. i2 = 6
:
i=1

P
n
(n2 )(n+1)2
3. i3 = 4
:
i=1

P
n
(n)(3n 1)
4. 1 + 4 + 7 + ::: + (3n 2) = (3i 2) = 2
:
i=1

1 1 1 1
P
n
1 n
5. 1:2
+ 2:3
+ 3:4
+ ::: + n(n+1)
= i(i+1)
= n+1
:
i=1

P
n
2i+1 n(n+2)
6. i2 (i+1)2
= (n+1)2
:
i=1
2.1 Prinsip Induksi Matematik 27

Disini yang akan dibuktikan hanya contoh nomor 1, pembuktian 5 nomor


yang lainnya disisakan sebagai latihan.
P
n
Bukti. Misalkan S (n): i = (n)(n+1)
2
:
i=1
P
1
(1)(1+1) 2
(1) Langkah Basis ! S (1): i= 2
,1= 2
adalah benar.
i=1
P
k
(k)(k+1)
(2) Langkah Induktif ! Diasumsikan S (k): i = 2
benar
i=1
untuk suatu k 2 Z+ : Akan dibuktikan bahwa S (k + 1) juga benar, ini berarti
harus dibuktikan bahwa
X
k+1
(k + 1)(k + 2)
i= :
i=1
2

P
k
(k)(k+1)
Berdasarkan asumsi diketahui i= 2
; maka
i=1

X
k
(k)(k + 1)
i + (k + 1) = + (k + 1) ,
i=1
2
X
k+1
(k)(k + 1) + 2 (k + 1)
i = ,
i=1
2
X
k+1
(k + 1)(k + 2)
i = :
i=1
2

Contoh 2.2 Buktikan bahwa 8n 2 Z+ berlaku:

1. Jika n 3; maka 2n 2n + 1:
n3
2. 12 + 22 + ::: + (n 1)2 < 3
:

3. Jika n 10; maka 2n > n3

Disini yang akan dibuktikan hanya contoh nomor 1, pembuktian 2 nomor


lainnya disisakan sebagai latihan.
Bukti. Misalkan S (n): 2n 2n + 1 dengan n 3:
(1) Langkah Basis ! S (3): 23 2:3 + 1 , 8 7 benar.
2.1 Prinsip Induksi Matematik 28

(2) Langkah Induktif ! Diasumsikan S (k): 2k 2k + 1 benar untuk


suatu k 2 Z+ dan k 3: Akan dibuktikan bahwa S (k + 1) juga benar, ini
berarti harus dibuktikan

2k+1 2(k + 1) + 1:

Berdasarkan asumsi diketahui 2k 2k + 1; maka

2k :2 (2k + 1):2 ,
2k+1 (2k + 1) + (2k + 1) ,
2k+1 (2k + 2) + 2k ,
2k+1 2(k + 1) + 2k:

Karena k 3; maka 2k 1: Jadi

2k+1 2(k + 1) + 2k 2(k + 1) + 1:

z
Perhatikan dua prosedur pseudocode berikut ini.
PROSEDUR 1
procedure SumOfSquares1 (n: positive integer)
begin
sum := 0
for i := 1 to n do
sum := sum + i2
end

PROSEDUR 2
procedure SumOfSquares1 (n: positive integer)
begin
sum := n (n + 1) (2 n + 1) =6
end
Terlihat bahwa kedua prosedur di atas sama-sama menghitung jumlah
kuadrat intejer positif dari 1 sampai dengan n. Karena Prosedur 1 meng-
gunakan perintah loop for, maka total operasinya melibatkan n adisi dan
n multiplikasi (ini belum termasuk n 1 adisi untuk penambahan variabel
counter i): Sedangkan Prosedur 2 hanya melibatkan 2 adisi, 3 multiplikasi, 1
divisi; dan yang lebih penting lagi jumlah operasinya tidak tergantung pada
nilai n: Akibatnya, Prosedur 2 jauh lebih e…sien dibandingkan Prosedur 1.
Hal ini memperlihatkan salah satu pentingnya prinsip induksi matematik
dalam masalah komputasi. Lebih jauh lagi kita perhatikan beberapa contoh
berikut ini.
2.1 Prinsip Induksi Matematik 29

Contoh 2.3 Kita amati jumlah intejer positif ganjil berurutan berikut.
1) 1 = 1 (= 12 )
2) 1 + 3 = 4 (= 22 )
3) 1 + 3 + 5 = 9 (= 32 )
4) 1 + 3 + 5 + 7 = 16 (= 42 )
Dari 4 intejer positif pertama ini, kita dapatkan pola untuk membuat suatu
konjektur (suatu proposisi yang belum diketahui benar dan salahnya) yang
berbunyi: Jumlah n intejer positif ganjil pertama yang berurutan
adalah n2 ; dengan kata lain, 8n 2 Z+ ;
X
n
S (n) : (2i 1) = n2 :
i=1

Selanjutnya, buktikan kebenaran konjektur itu dengan prinsip induksi matem-


atik.

Bukti. Dari tabel di atas, telah diketahui


Pk benar untuk S(1); S (2) ; S(3);
dan S(4): Misalkan diketahui S(k) : i=1 (2i 1) = k 2 benar untuk suatu
intejer k > 4; maka S(k + 1) :

X
k+1 X
k
(2i 1) = (2i 1) + [2(k + 1) 1]
i=1 i=1
2
= k + [2(k + 1) 1]
= k 2 + 2k + 1
= (k + 1)2 :

Contoh 2.4 Diantara banyak barisan bilangan yang cukup menarik di dalam
matematika diskret dan kombinatorika adalah barisan bilangan harmonik:
H1 ; H2 ; H3 ; :::, dimana

H1 = 1
1
H2 = 1 +
2
1 1
H3 = 1+ +
2 3
..
.

dan secara umum Hn = 1 + 12 + 31 + ::: + n1 untuk setiap n 2 Z+ : Dengan prin-


sip induksi matematik, buktikan bahwa jumlah n bilangan harmonik pertama
2.1 Prinsip Induksi Matematik 30

dapat dirumuskan dengan


X
n
+
8n 2 Z ; Hi = (n + 1)Hn n:
i=1

Bukti. Untuk n = 1;

X
1
Hi = (1 + 1)H1 1,
i=1
H1 = 2:H1 1 ,
1 = 2:1 1 ,
1 = 1; benar.
P
Misalkan ki=1 Hi = (k + 1)Hk k benar untuk suatu intejer k > 1: Dari
asumsi ini, maka

X
k+1 X
k
Hi = Hi + Hk+1
i=1 i=1
= [(k + 1)Hk k] + Hk+1
= ((k + 1)Hk+1 1) k + Hk+1
= [(k + 1) + 1]Hk+1 1 k
= [(k + 1) + 1]Hk+1 (k + 1):

Teorema 2.2 (Bentuk Alternatif - Prinsip Induksi Berhingga) Mis-


alkan S(n) menotasikan suatu pernyataan matematik terbuka yang meli-
batkan satu atau lebih variabel intejer positif n; dan misalkan n0 ; n1 2 Z+
dengan n0 n1 : Jika:

(a) S(n0 ); S(n0 + 1); S(n0 + 2); :::; S(n1 1); S(n1 ) benar, dan

(b) untuk sembarang pilihan k 2 Z+ ; k n1 ; berlaku:

Jika S(n0 ); S(n0 + 1); :::; S(n1 ); :::; S(k) benar, maka S(k + 1)benar

kesimpulannya S(n) benar untuk semua n n0 :

Sebagaimana pada prinsip induksi matematik sebelumnya, kondisi (a)


disebut Langkah Basis dan kondisi (b) disebut Langkah Induktif.
2.1 Prinsip Induksi Matematik 31

Contoh 2.5 Kita perhatikan barisan intejer a0 ; a1 ; a2 ; :::; dimana

a0 = 1; a1 = 2; a2 = 3; dan
an = an 1 + an 2 + an 3; 8n 2 Z; n 3:

Buktikan bahwa 8n 2 N; an 3n :

Bukti. Misalkan S 0 (n): an 3n ; 8n 2 N:


Langkah Basis: Kita amati bahwa S 0 (0) ; S 0 (1) ; dan S 0 (2) benar:
(1) a0 = 1 = 30 30 ;
(2) a1 = 2 3 = 31 ; dan
(3) a2 = 3 9 = 32 :
Langkah Induktif: Andaikan S 0 (0) ; S 0 (1) ; S 0 (2) ; :::; S 0 (k) benar un-
tuk suatu k 2 N; dan k 2: Ini berarti k + 1 pernyataan berikut adalah
benar
a0 30
a1 31
a2 32
..
.
ak 3k
Berdasarkan asumsi tersebut, maka

ak+1 = ak + ak 1 + ak 2
3k + 3k 1 + 3k 2
3k + 3k + 3k = 3k+1 :

Soal 2.1.1 Perhatikan empat persamaan berikut:

1 = 1 (1)
2+3+4 = 1+8 (2)
5+6+7+8+9 = 8 + 27 (3)
10 + 11 + 12 + 13 + 14 + 15 + 16 = 27 + 64 (4)

Buatlah konjektur rumus umum dari keempat persamaan di atas, dan buk-
tikan kebenaran konjektur yang anda buat.

Soal 2.1.2
2.2 De…nisi Rekursif 32

1. Untuk n = 3; misalkan X3 = f1; 2; 3g: Perhatikan jumlahan


1 1 1 1 1 1 1 X 1
s3 = + + + + + + = ;
1 2 3 1:2 1:3 2:3 1:2:3 6=A X3
PA

dimana PA adalah produk dari semua anggota subhimpunan tak-kosong


A dari X3 : Evaluasi (tentukan nilai) jumlahan tersebut.

2. Ulangi perhitungan Soal 1: untuk s2 (dimana n = 2 dan X2 = f1; 2g)


dan s4 (dimana n = 4 dan X2 = f1; 2; 3; 4g)

3. Buatlah konjektur hasil umum yang digeneralisasi dari Soal 1: dan Soal
2:, kemudian buktikan kebenaran konjektur yang anda buat.

Soal 2.1.3 Untuk n 2 Z+ ; misalkan Hn adalah bilangan harmonik ke-n:

1. Untuk semua n 2 N; buktikan bahwa (1 + n2 ) H2 :

2. Untuk semua n 2 N; buktikan bahwa


X
n
(n + 1)n (n + 1)n
jHj = Hn+1 :
j=1
2 4

2.2 De…nisi Rekursif


Untuk memahami de…nisi rekursif, terlebih dahulu perhatikan barisan intejer
genap tak-negatif: 0; 2; 4; 6; 8; .... Barisan itu bisa kita tuliskan dengan:
bn = 2n; 8n 2 N: Suku ke berapapun dari barisan itu bisa kita peroleh secara
langsung, misalnya: suku ke-125 adalah b125 = 250: Barisan yang demikian
kita sebut dengan barisan dengan rumus eksplisit.
Sebagai badingannya, sekarang kita perhatikan barisan pada Contoh 2.5,
untuk mendapatkan suku ke-k, yaitu ak ; kita tidak mempunyai rumus ek-
splisit, sebagai gantinya dibutuhkan nilai tiga suku sebelumnya, yaitu ak 1 ;
ak 2 ; dan ak 3 , sehingga ak = ak 1 + ak 2 + ak 3 : Kemudian nilai ketiga
suku itu, masing-masing juga membutuhkan nilai tiga suku sebelumnya lagi.
Demikian seterusnya, pada akhirnya semua nilai ak ; untuk k 3; bergantung
pada nilai awal suku: a0 = 1; a1 = 2; dan a2 = 3: Barisan yang demikian
disebut barisan dengan rumus rekusif. Rumus rekursif secara lengkap dise-
but juga dengan de…nisi rekursif yang terdiri dari basis rekursi dan proses
rekursi. Basis rekursi yaitu pende…nisian awal (pemberian nilai awal), pada
2.2 De…nisi Rekursif 33

contoh tersebut: a0 = 1; a1 = 2; dan a2 = 3: Proses rekursi memberikan ni-


lai suku berikutnya secara rekursif didasarkan pada nilai basis rekursi, pada
contoh tersebut ak = ak 1 + ak 2 + ak 3 :
De…nisi rekursif merupakan suatu jawaban ketika untuk menentukan ru-
mus eksplisit suatu barisan sangat rumit atau bahkan mustahil. Hal ini
terjadi tidak hanya pada barisan bilangan, tetapi juga paling sering terjadi
pada beberapa konsep matematika yang lain, seperti: operasi himpunan,
proposisi dalam logika, relasi, fungsi, bahasa mesin, dll.

Contoh 2.6 Misalkan p1 ; p2 ; p3 ; ..., pn adalah n proposisi. Untuk menen-


tukan nilai kebenaran
p1 ^ p2 ^ p3 ^ ::: ^ pn ;
dimana n 2; diperlukan konsep rekursif atas dasar hukum asosiatif kon-
jungsi.
Basis Rekursi: p1 ^ p2 :
Proses Rekursi: Untuk n 2;

p1 ^ p2 ^ p3 ^ ::: ^ pn 1 ^ pn , (p1 ^ p2 ^ p3 ^ ::: ^ pn 1 ) ^ pn

De…nisi rekursif berdasarkan hukum asosiatif pada contoh tersebut bisa


diperumum melalui ilustrasi berikut ini. Ambil untuk kasus n = 4; maka

p1 ^ p2 ^ p3 ^ p4 , (p1 ^ p2 ^ p3 ) ^ p4
, [(p1 ^ p2 ) ^ p3 ] ^ p4
, (p1 ^ p2 ) ^ (p3 ^ p4 )
, p1 ^ [p2 ^ (p3 ^ p4 )]
, p1 ^ (p2 ^ p3 ^ p4 ):

Dari fakta ini dapat diambil suatu kesimpulan bahwa berdasarkan sifat asosi-
atif tanda kurung bisa diletakkan secara bebas. Hasil ini dimantabkan secara
lebih umum pada penyataan di dalam contoh berikut ini.

Contoh 2.7 Misalkan n 2 Z+ dengan n 3; dan misalkan r 2 Z+ dengan


1 r < n: Maka, untuk sembarang proposisi p1 ; p2 ; :::; pr ; pr+1; ...; pn berlaku

(p1 ^ p2 ^ ::: ^ pr ) ^ (pr+1 ^ ::: ^ pn )


, p1 ^ p2 ^ ::: ^ pr ^ pr+1 ^ ::: ^ pn :

Bukti. Akan dibuktikan dengan induksi matematik. Sebagai basis in-


duksi, untuk n = 3; kebenaran jelas diterima mengikuti hukum asosiatif
2.2 De…nisi Rekursif 34

dasar. Sekarang diasumsikan benar untuk n = k dan untuk setiap 1 r < k;


ini berarti berlaku

(p1 ^ p2 ^ ::: ^ pr ) ^ (pr+1 ^ ::: ^ pk )


, p1 ^ p2 ^ ::: ^ pr ^ pr+1 ^ ::: ^ pk :

Berdasarkan asumsi ini harus dibuktikan benar untuk n = k + 1 dan untuk


setiap 1 r < k + 1: Dalam hal ini perhatikan dua kasus berikut ini.

1. Jika r = k; berdasarkan de…nisi rekursif jelas berlaku

(p1 ^ p2 ^ p3 ^ ::: ^ pk ) ^ pk+1 , p1 ^ p2 ^ p3 ^ ::: ^ pk ^ pk+1 :

2. Jika 1 r < k; maka

(p1 ^ p2 ^ ::: ^ pr ) ^ (pr+1 ^ ::: ^ pk ^ pk+1 )


, (p1 ^ p2 ^ ::: ^ pr ) ^ [(pr+1 ^ ::: ^ pk ) ^ pk+1 ]
, [(p1 ^ p2 ^ ::: ^ pr ) ^ (pr+1 ^ ::: ^ pk )] ^ pk+1
, (p1 ^ p2 ^ ::: ^ pr ^ pr+1 ^ ::: ^ pk ) ^ pk+1
, p1 ^ p2 ^ ::: ^ pr ^ pr+1 ^ ::: ^ pk ^ pk+1 :

Contoh 2.8 Contoh 2.4 memenuhi pola pende…nisian rekursif:


Basis Rekursi: H1 = 1:
1
Proses Rekursi: Untuk n 1; Hn+1 = Hn + n+1 :

Contoh 2.9 Menghitung n! untuk n 0 mengikuti pola pende…nisian rekur-


sif:
Basis Rekursi: 0! = 1:
Proses Rekursi: Untuk n 0; (n + 1)! = (n + 1) (n!):

Contoh 2.10 Pende…nisian rekursif bilangan Fibonacci.


Basis Rekursi: F0 = 0; :F1 = 1
Proses Rekursi: Untuk n 2 Z+ dan n 2;

Fn = Fn 1 + Fn 2

Suatu pende…nisian secara rekursif yang melibatkan dua intejer sekaligus


diberikan pada dua contoh berikut ini.
2.2 De…nisi Rekursif 35

Contoh 2.11 Pada Bab 1 telah diperkenalkan koe…sien binomial nr untuk


n; r 2 N dengan 0 r n: Berikut ini diberikan pede…nisian secara rekursif,
n+1 n n
= + ; untuk 0 r n;
r r r 1
dengan basis rekursi:
0
= 1;
0
n
= 0; untuk r > n; dan
r
n
= 0; untuk r < 0:
r
Berdasarkan de…nisi rekursif ini, penentuan nilai nr ; dimana 0 n 4 dan
0 k n dapat dinyatakan dalam tabel segitiga Pascal:

n k
0 1
1 1 1
2 1 2 1
3 1 3 3 1
4 1 4 6 4 1

Contoh 2.12 Untuk m 2 Z+ dan k 2 N; bilangan Euler am;k dide…nisikan


secara rekursif dengan
am;k = (m k) am 1;k 1 + (k + 1) am 1;k ; untuk 0 k m;
dengan basis rekursi:
a0;0 = 1;
am;k = 0; untuk k m; dan
am;k = 0; untuk k < 0:
Berdasarkan de…nisi rekursif ini, penentuan nilai am;k ; dimana 1 m 5
dan 0 k m 1 dapat dinyatakan dalam tabel berikut.
Jml. Brs.
(m = 1) 1 1 = 1!
(m = 2) 1 1 2 = 2!
(m = 3) 1 4 1 6 = 3!
(m = 4) 1 11 11 1 24 = 4!
(m = 5) 1 26 66 26 1 120 = 5!
2.2 De…nisi Rekursif 36

Dari tabel ini didapat suatu pola bahwa jumlah baris P


ke-m adalah m!:
Secara umum, buktikan bahwa untuk suatu m 2 Z ; berlaku m
+ 1
k=0 am;k = m!:

Bukti. Berdasarkan de…nisi rekursif diperoleh


X
m X
m
am+1;k = [(m + 1 k)am;k 1 + (k + 1)am;k ] =
k=0 k=0
[(m + 1)am; 1 + am;0 ] + [mam;0 + 2am;1 ] +
[(m 1)am;1 + 3am;2 ] + ::: + [3am;m 3 + (m 1)am;m 2 ]
+[2am;m 2 + mam;m 1 ] + [am;m 1 + (m + 1)am;m ]:

Karena am; 1 = 0 dan am;m = 0; maka


X
m
am+1;k = [am;0 + mam;0 ] + [2am;1 + (m 1)am;1 ] + :::
k=0
+[(m 1)am;m 2 + 2am;m 2 ] + [mam;m 1 + am;m 1 ]
= (m + 1)[am;0 + am;1 + ::: + am;m 2 + am;m 1 ]
X1
m
= (m + 1) am;k
k=0

Dari fakta ini, dan berdasarkan induksi matematik, jika diasumsikan


X1
m
am;k = m!
k=0

benar untuk m 2 Z+ ; maka


X
m
am+1;k = (m + 1)(m!) = (m + 1)!:
k=0

Soal 2.2.1 Barisan intejer a1 ; a2 ; a3 ; ::: dide…nisikan secara eksplisit dengan


rumus an = 5n untuk n 2 Z+ ; dapat juga secara rekursif

a) a1 = 5; dan
b) an+1 = an + 5; untuk n 1:

Barisan intejer b1 ; b2 ; b3 ; ::: dide…nisikan secara eksplisit dengan rumus


bn = n(n + 2) untuk n 2 Z+ ; dapat juga secara rekursif
2.2 De…nisi Rekursif 37

a)’ b1 = 3; dan

b)’ bn+1 = bn + 2n + 3; untuk n 1:

Buatlah de…nisi rekursif untuk setiap barisan intejer c1 ; c2 ; c3 ; ::: berikut


ini, dimana untuk n 2 Z+ ;

1. cn = 7n:

2. cn = 7n :

3. cn = 3n + 7:

4. cn = 7:

5. cn = n2 :

6. cn = 2 ( 1)n :

Soal 2.2.2

1. Buatlah de…nisi rekursif untuk dijungsi dari proposisi p1 ; p2 ; p3 ; :::pn+1 ;


n 1:

2. Buktikan bahwa jika n; r 2 Z+ ; dengan n 3 dan 1 r < n; maka

(p1 _ p2 _ ::: _ pr ) _ (pr+1 _ pr+2 _ ::: _ pn )


, p1 _ p2 _ ::: _ pr _ pr+1 _ ::: _ pn :

Soal 2.2.3

1. Bangunlah suatu de…nisi rekursif untuk adisi (jumlahan) dari n bilan-


gan nyata x1 ; x2 ; :::; xn ; dimana n 2:

2. Berdasarkan hukum asosiatif untuk adisi bilangan nyata, buktikan bahwa


jika n; r 2 Z+ ; dengan n 3 dan 1 r < n; maka

(x1 + x2 + ::: + xr ) + (xr+1 + ::: + xn ) = x1 + x2 + ::: + xr + xr+1 + ::: + xn


2.2 De…nisi Rekursif 38

Soal 2.2.4 Perhatikan bahwa untuk setiap x; y 2 R;

jx + yj2 = (x + y)2
= x2 + 2xy + y 2
x2 + 2 jxj jyj + y 2
= jxj2 + 2 jxj jyj + jyj2
= (jxj + jyj)2 :

Akibatnya, jx + yj jxj + jyj : Sekarang, buktikan bahwa jika n 2 Z+ ; n 2;


dan x1 ; x2 ; :::; xn 2 R; maka

jx1 + x2 + ::: + xn j jx1 j + jx2 j + ::: + jxn j :

Soal 2.2.5 Dide…nisikan barisan intejer a0 ; a1 ; a2 ; :::; an secara rekursif den-


gan

a) a0 = 1; a1 = 1; a2 = 1; dan

b) untuk n 3; an = an 1 + an 3 :
p n
Buktikan bahwa an+2 2 untuk setiap n 0:

Soal 2.2.6 Misalkan Fn adalah bilangan Fibonacci ke-n:

P
n
1. untuk n 0; buktikan bahwa Fi = Fn+2 1:
i=0

P
n
Fi 1 Fn+2
2. untuk n 1; buktikan bahwa 2i
=1 2n
:
i=1

Soal 2.2.7

1. Untuk i 2 Z+ ; periksalah bahwa

i i+1
i2 = + :
2 2

2. Untuk n 2 Z+ ; buktikan bahwa

n+1 n+2 n (n + 1) (2n + 1)


+ = :
3 3 6
2.3 Algoritma Pembagian 39

3. Untuk i 2 Z+ ; periksalah bahwa

i i+1 i+2
i3 = +4 + :
3 3 3

4. Untuk n 2 Z+ ; buktikan bahwa

n+1 n+2 n+3 n2 (n + 1)2


+4 + = :
4 4 4 4

2.3 Algoritma Pembagian


Walaupun Z tidak tertutup terhadap pembagian, namun ada beberapa inte-
jer yang dapat dibagi oleh intejer yang lain.

De…nisi 2.1 Misalkan a; b 2 Z; dan b 6= 0: Kita sebut b membagi a; ditulis


b j a; jika ada intejer n sehingga a = bn: Dalam hal ini b disebut juga
pembagi/faktor dari a atau a disebut kelipatan dari b: Dalam hal b tidak
membagi a dinotasikan dengan b - a:

Sebagai ilustrasi, 7 j 42 karena 42 = 7:6; sedangkan 7 - 18 karena tidak


ada n 2 Z sehingga 18 = 7n: Terkait dengan pengertian pembagian, suatu
sifat yang cukup penting yang dimiliki oleh Z adalah bahwa Z tidak memuat
pembagi nol, artinya

(8a; b 2 Z) ab = 0 ) a = 0 _ b = 0;

atau lebih mudah dimegerti kotraposisinya

(8a; b 2 Z) a 6= 0 ^ b 6= 0 ) ab 6= 0;

Teorema 2.3 (Sifat-sifat Dasar Pembagian) Untuk semua a; b; c 2 Z;


berlaku:

1. 1 j a dan a j 0:

2. [(a j b) ^ (b j a)] ) a = b:

3. [(a j b) ^ (b j c)] ) a j c:

4. [(a j b) ^ (a j c)] ) [(8x; y 2 Z) a j (bx + cy)] :


2.3 Algoritma Pembagian 40

5. (x = y + z) ^ ((a j x) ^ (a j y)) ) a j z:

6. (8a; b 2 Z+ ) (a j b) ) a b:

7. Untuk 1 i n; misalkan ci 2 Z: Jika a j ci ; maka

a j c1 x1 + c2 x2 + ::: + cn xn

dimana xi 2 Z untuk setiap 1 i n:

Bukti. Disini hanya akan dibuktikan yang No. 4, lainnya disisakan


sebagai latihan. a j b dan a j c; berarti ada m; n 2 Z sehingga b = ma
dan c = na: Dengan demikian untuk setiap x; y 2 Z berlaku xb = xma dan
yc = yna: Akibatnya,

bx + cy = xma + yna
= (xm + yn)a;

dan ini berarti a j (bx + cy) : z

Contoh 2.13 Adakah x; y; z 2 Z yang memenuhi persamaan 14x + 21y


7z = 64:

Jawab. Perhatikan bahwa 7 j 14; 7 j 21 dan 7 j ( 7); maka berdasarkan


Teorema 2.3 (No 7), 7 j (14x + 21y 7x): Dilain pihak 7 - 64; kesimpulannya
tidak ada x; y; z 2 Z yang memenuhi persamaan 14x + 21y 7x = 64: z

Contoh 2.14 Misalkan a; b 2 Z sehingga 2a + 3b merupakan kelipatan dari


17: Buktikan bahwa 17 j 9a + 5b:

Bukti. Perhatikan bahwa 17 j 2a + 3b ) 17 j ( 4)(2a + 3b); di lain pihak


17 j 17a + 17b: Dengan demikian

17 j [( 4)(2a + 3b) + (17a + 17b)] ,


17 j (9a + 5b):

z
Bukti untuk teorema berikut ini dianjurkan sebagai kegiatan mandiri,
dan ini telah dibahas secara lengkap matakuliah Pengantar Teori Bilangan.
2.3 Algoritma Pembagian 41

Teorema 2.4 (Algoritma Pembagian) Jika a; b 2 Z dengan b > 0; maka


ada tepat satu q; r 2 Z sehingga

a = qb + r; 0 r < b:

Dalam hal ini a disebut yang dibagi, b adalah yang membagi, q adalah
hasil bagi, dan r adalah sisa pembagian. Selanjutnya sisa pembagian
dinotasikan dengan r = a mod b dan hasil bagi dinotasikan q = a div b:

Fakta bahwa misalkan a; b 2 Z; b 6= 0; maka


a
a div b = b c; dan
b
a
a mod b = a b:b c;
b
notasi bxc mengartikan bilangan bulat terbesar yang x:

Contoh 2.15 Berdasarkan algoritma pembagian, berikut ini diberikan beber-


apa ilustrasi.

1. Misalkan a = 67 dan b = 7; maka


67
q=b c = 9 dan r = 67 7:9 = 4:
7

2. Misalkan a = 48 dan b = 6; maka


48
q=b c = 8 dan r = 48 6:8 = 0:
6

3. Misalkan a = 72 dan b = 11; maka


72
q=b c= 7 dan r = ( 72) (11)( 7) = 5:
11

4. Misalkan a; b 2 Z+ :

(a) Jika a = qb untuk suatu q 2 Z+ ; maka a = ( q)b: Dalam hal


ini, a(< 0) dibagi oleh b(> 0) diperoleh hasil bagi q(< 0) dan
sisanya r = 0:
2.3 Algoritma Pembagian 42

(b) Jika a = qb + r untuk suatu q 2 N dan 0 < r < b; maka

a = ( q)b r
= ( q)b b + b r
= ( q 1)b + (b r):

Dalam hal ini, a(< 0) dibagi oleh b(> 0) diperoleh hasil bagi
q 1(< 0) dan sisanya b r; dimana 0 < b r < b:

Untuk lebih jelasnya, proses mendapatkan q dan r dalam algoritme pem-


bagian dirinci dengan pseudocode dalam Prosedur 3.
PROSEDUR 3
procedure AlgPbg(a 2 Z, b 2 Z+ ) PROSEDUR 3 (Lanjutan)
begin if a > 0 then
if a = 0 then begin
begin hasilbagi := q
hasilbagi := 0 sisa := r
sisa := 0 end
end else if r = 0 then
else begin
begin hasilbagi := q
r := abs(a) sisa := 0
q := 0 end
while r b do else
begin begin
r := r b hasilbagi := q 1
q := q + 1 sisa := b r
end
Salah satu penerapan algoritma pembagian adalah digunakan untuk men-
gubah sistem basis bilangan, misalnya: desimal ke biner, oktal, heksadesimal,
dll. Lengkapnya hal ini dinyatakan pada bagian berikut ini.

2.3.1 Representasi Basis


Intejer positif dapat direpresentasikan dalam berbagai cara, namun paling
umum dipakai adalah sistem desimal atau sistem basis 10. Jadi apabila
diberikan suatu intejer positif tanpa keterangan apapun, maka yang di-
maksud adalah intejer tersebut memiliki representasi basis 10. Misalnya
a = 1367; ini berarti

a = 1:103 + 3:102 + 6:101 + 7:100 :


2.3 Algoritma Pembagian 43

Sistem lain yang cukup populer adalah sistem biner atau representasi basis
2 yang dipakai dalam kerja mesin komputasi. Misalnya a = 110101 basis 2;
ini berarti
a = 1:25 + 1:24 + 0:23 + 1:22 + 0:21 + 1:20 :
Tabel berikut ini mengilutrasikan hubungan antara sistem representasi desi-
mal, biner, oktal (basis 8), dan heksadesimal (basis 16) untuk intejer dari 0
sampai 15: Faktanya keempat sistem inilah yang paling sering dipakai dalam
bidang terapan, khususnya ilmu komputer.

Basis 10 Basis 2 Basis 8 Basis 16


0 0000 0 0
1 0001 1 1
2 0010 2 2
3 0011 3 3
4 0100 4 4
5 0101 5 5
6 0110 6 6
7 0111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

Secara umum representasi basis dari suatu intejer dinyatakan dalam de…nisi
berikut ini.

De…nisi 2.2 Jika b 2 adalah suatu intejer, maka sembarang intejer positf
a dapat diekspresikan secara tunggal sebagai

a = an bn + an 1 bn 1
+ ::: + a1 b + a0 ; (2.1)

dimana 0 ai < b untuk i = 0; 1; :::; n dan an 6= 0: Ruas kanan Persamaan


2.1 disebut representasi basis b dari a; dan dinotasikan dengan

a = (an an 1 :::a1 a0 )b :

Selanjutnya dari de…nisi di atas, intejer ai ; untuk 0 i n; disebut dijit.


Khususnya, an disebut dijit berorder tinggi, dan a0 disebut dijit berorder
2.3 Algoritma Pembagian 44

rendah. Catatan bahwa jika b = 10; representasi a cukup ditulis

a = an an 1 :::a1 a0 :

Banyaknya dijit dari a disebut dengan presisi atau panjang dari a: Dalam
de…nisi di atas terlihat bahwa presisi dari a adalah n: Jika n = 0; maka a
disebut intejer presisi tunggal. Sedangkan jika n > 0; maka a disebut sebagai
intejer presisi ganda.
Dari De…nisi 2.2, berikut ini diberikan prosedur untuk mengubah repre-
sentasi basis-b dari intejer a kebentuk standar desimal dari a:
PROSEDUR 4
procedure ChangeDecimal((an an 1 :::a1 a0 )b : intejer)
begin
a := 0
for i := 0 to n do
a := a + ai bi
return(a)
end

Contoh 2.16 Misalkan (1110101)2 adalah representasi basis-2 dari intejer


a: Tentukan intejer a:

Jawab. Nilai intejer a adalah

(1110101)2 = 1:26 + 1:25 + 1:24 + 0:23 + 1:22 + 0:21 + 1:20


= 64 + 32 + 16 + 0 + 4 + 0 + 1
= 117:

z
Dalam langkah-langkah berikut ini perhatikan bahwa algoritma pemba-
gian melandasi sistem perubahan representasi basis.

1. Persamaan (2.1) dapat dituliskan sebagai

a = (an bn 1
+ an 1 b n 2
+ ::: + a2 b + a1 )b + a0 :

Ini berarti a0 merupakan sisa dari a dibagi oleh b: Dalam hal ini hasil
baginya adalah

q 1 = an b n 1
+ an 1 b n 2
+ ::: + a2 b + a1 (2.2)
2.3 Algoritma Pembagian 45

2. Persamaan (2.2) dapat dituliskan sebagai


q1 = (an bn 2
+ an 1 b n 3
+ ::: + a3 b + a2 )b + a1 :
Ini berarti a1 merupakan sisa dari q1 dibagi oleh b: Dalam hal ini hasil
baginya adalah
q 2 = an b n 2
+ an 1 b n 3
+ ::: + a3 b + a2 (2.3)

3. Persamaan (2.3) dapat dituliskan sebagai


q2 = (an bn 3
+ an 1 b n 4
+ ::: + a4 b + a3 )b + a2 :
Ini berarti a2 merupakan sisa dari q2 dibagi oleh b: Dalam hal ini hasil
baginya adalah
q 3 = an b n 3
+ an 1 b n 4
+ ::: + a4 b + a3

4. Proses berlanjut sampai didapatkan an merupakan sisa dari qn dibagi


oleh b dan hasil baginya adalah 0:
Contoh 2.17 Nyatakan intejer a = 938 sebagai representasi:
1. basis 8; dan
2. basis 2:
3. basis 16:
Jawab. Berdasarkan uraian di atas perhatikan proses berikut ini.
Bagi 8 Hasil Bagi Sisa
a
8
= 938
8
q1 = 117 a0 = 2
q1
1. 8 = 117 8
q2 = 14 a1 = 5 . Jadi 938 = (1652)8 :
q2 14
8
= 8
q3 = 1 a2 = 6
q3 1
8
= 8
q4 = 0 a3 = 1

Bagi 2 Hasil Bagi Sisa


a
2
= 938
2
q1 = 469 a0 = 0
q1 469
2
= 2
q2 = 234 a1 = 1
q2 234
2
= 2
q3 = 117 a2 = 0
q3
2
= 1172
q4 = 58 a3 = 1
2. q24 = 582
q5 = 29 a4 = 0 . Jadi 938 = (1110101010)2 :
q5 29
2
= 2
q6 = 14 a5 = 1
q6
2
= 142
q7 = 7 a6 = 0
q7 7
2
= 2
q8 = 3 a7 = 1
q8
2
= 32 q9 = 1 a8 = 1
q9
2
= 12 q10 = 0 a9 = 1
2.3 Algoritma Pembagian 46

Bagi 16 Hasil Bagi Sisa


a
16
= 938
16
q1 = 117 a0 = 2
q1
3. 16 = 117
16
q2 = 14 a1 = 5 . Jadi 938 = (1652)8 :
q2 14
8
= 8
q3 = 1 a2 = 6
q3
8
= 18 q4 = 0 a3 = 1
z
Algoritme representasi basis b dinyatakan dalam prosedur berikut dengan
input intejer a 0 dan b 2:
PROSEDUR 5
procedure Basis-bRepresetation(a, b : intejer positif )
begin
i := 0
x := a
q := b xb c
ai := x q b
while q > 0 do
begin
i := i + 1
x := q
q := b xb c
ai := x q b
end
return((an an 1 :::a1 a0 )b )
end

2.3.2 Representasi Bilangan Negatif


Intejer negatif dapat direpresentasikan dalam beberapa cara. Dua diantaranya
akan dibahas dalam tulisan ini, yaitu: representasi besaran-bertanda dan rep-
resentasi komplemen.

Representasi Besaran-bertanda

Tanda dari suatu intejer (baik positif maupun negatif) dan besarannya (nilai
mutlak) direprsentasikan sebagai representasi besaran-bertanda. Intejer posi-
tif diberi suatu tanda dijit 0; sementara intejer negatif diberi suatu tanda dijit
b 1: Untuk suatu representasi basis-b bedijit n (berupa barisan) terdiri dari:
bn 1 1 intejer positif, bn 1 1 intejer negatif, dan 0 mempunyai dua rep-
resentasi. Sebagai ilustrasi, berikut ini diberikan tabel representasi besaran
bertanda untuk biner dari intejer dalam selang [ 7; 7]:
2.3 Algoritma Pembagian 47

Barisan Besaran- Barisan Besaran-


Bertanda Besaran-
0111 7 1111 7
0110 6 1110 6
0101 5 1101 5
0100 4 1100 4
0011 3 1011 3
0010 2 1010 2
0001 1 1001 1
0000 0 1000 0

Representasi Komplemen

Penjumlahan dan pengurangan representasi komplemen tanpa perlu me-


meriksa dijit tanda. Intejer tak-negatif dalam selang [0; bn 1] direpresen-
tasikan sebagai barisan basis-b dengan panjang dijit n dan dijit order tinggi
0: Misalkan x adalah intejer positif yang direpresentasikan sebagai barisan
(xn ; xn 1 ; :::; x1 ; x0 )b
dimana xn = 0: Maka x direpresentasikan sebagai barisan
(xn ; xn 1 ; :::; x1 ; x0 ) + 1
dimana xi = b 1 xi dan + adalah jumlahan standar. Sebagai ilustrasi,
berikut ini diberikan tabel representasi komplemen untuk biner dari intejer
dalam selang [ 7; 7]:

Barisan Komple- Barisan Komple-


mennya 2 mennya 2
0111 7 1111 1
0110 6 1110 2
0101 5 1101 3
0100 4 1100 4
0011 3 1011 5
0010 2 1010 6
0001 1 1001 7
0000 0 1000 8

Soal 2.3.1

1. Jika a; b; c 2 Z+ dan a j bc; apakah dapat disimpulkan bahwa a j b atau


b j c?
2.3 Algoritma Pembagian 48

2. Untuk setiap a; b; c 2 Z; buktikan bahwa jika a - bc; maka a - b dan a - c:


3. Misalkan a; b 2 Z+ : Jika b j a dan b j (a + 2) ; buktikan bahwa b = 1
atau b = 2:
4. Jika n 2 Z+ dan n ganjil, buktikan bahwa 8 j (n2 1) :
5. Jika a; b 2 Z+ dan keduanya ganjil, buktikan bahwa 2 j (a2 + b2 ) tetapi
4 - (a2 + b2 ):
6. Jika n 2 N; buktikan bahwa 3 j (7n 4n ):

Soal 2.3.2 Tentukan hasil bagi q dan sisa r dari pembagian a oleh b yang
diketahui berikut ini.

1. a = 23 dan b = 7:
2. a = 115 dan b = 12:
3. a = 0 dan b = 42:
4. a = 434 dan b = 31:

Soal 2.3.3 Tuliskan intejer berbasis-10 berikut ini ke dalam basis-2, basis-4;
dan basis-8:
a) 137 b) 6243 c) 12:345.

Soal 2.3.4 Tuliskan intejer berbasis-10 berikut ini ke dalam basis-2 dan basis-
16:
a) 22 b) 527 c) 1234 d) 6923.

Soal 2.3.5 Konversikan masing-masing dari bilangan heksadesimal berikut


ini ke dalam bilangan basis-10 dan basis-2:

a) A7 b) 4C2 c) 1C2B d) A2DF E.

Soal 2.3.6 Konversikan masing-masing dari bilangan biner berikut ini ke


dalam bilangan basis-10 dan basis-16:

a) 11001110 b) 00110001 c) 11110000 d) 01011110.

Soal 2.3.7 Tuliskan masing-masing dari bilangan biner berikut ini ke dalam
representasi komplemen dua, hasilnya mengikuti pola 8-bit.

a) 15 b) 15 c) 100 d) 65 e) 127 f ) 128.


2.4 Algoritme Euclid 49

Soal 2.3.8 Jika suatu mesin menyimpan intejer dengan metode komplemen
dua, berapa intejer terbesar dan terkecil yang dapat disimpan apabila meng-
gunakan pola 8-bit.

a) 4-bit b) 8-bit c) 16-bit d) 32-bit e) 2n -bit, n 2 Z+

Soal 2.3.9 Dide…nisikan himpunan X Z+ secara rekursif sebagai berikut:

a) 3 2 X; dan
b) jika a; b 2 X; maka a + b 2 X:

Buktikan bahwa X = f3k k 2 Z+ g; himpunan semua intejer positif yang


habis dibagi 3:

Soal 2.3.10 Misalkan n 2 Z+ dengan

n = rk :10k + ::: + r2 :102 + r1 :10 + r0 :

Buktikan bahwa

1. 2 j n jika dan hanya jika 2 j r0 :


2. 4 j n jika dan hanya jika (r1 :10 + r0 ):
3. 8 j n jika dan hanya jika (r2 :102 + r1 :10 + r0 ):

Buatlah generalisasi dari hasil tersebut.

2.4 Algoritme Euclid


Bahasan yang diberikan pada bagian ini dan pada bagian berikutnya meru-
pakan landasan dasar dari teori bilangan. Berapa teorema dan sifat-sifat
diberikan tanpa disertai bukti dengan alasan bahwa seluruh materinya akan
dibahas lebih rinci di matakuliah Pengantar Teori Bilangan.

De…nisi 2.3 Untuk a; b 2 Z, suatu intejer positif x dikatakan pembagi


bersama dari a dan b jika x j a dan x j b: Selanjutnya, untuk a dan b
tidak keduanya nol, c 2 Z+ disebut pembagi bersama terbesar dari a dan
b; dinotasikan dengan c = gcd (a; b) ; jika c adalah yang terbesar diantara
semua pembagi bersama dari a dan b, atau dengan kata lain

c = maxfx 2 Z+ (x j a) ^ (x j b)g:
2.4 Algoritme Euclid 50

Teorema 2.5 Misalkan c = gcd (a; b) : Jika pembagi bersama d dari a dan
b; maka d j c:
Teorema 2.6 Untuk setiap a; b 2 Z+ ; ada tepat satu c 2 Z+ sehingga c =
gcd (a; b) : Selanjutnya ada x; y 2 Z sehingga c = xa + yb (c adalah suatu
kombinasi linear dari a dan b):
Sifat-sifat dasar dari pembagi bersama terbersar dapat dirinci sebagai
berikut. Misalnya c = gcd (a; b) ; maka:
1. c adalah intejer positif terkecil dari himpunan fxa + yb=x; y 2 Zg:
2. Jika d = sa + tb untuk suatu s; t 2 Z; maka c j d:
3. gcd (a; b) = gcd ( a; b) = gcd (a; b) = gcd ( a; b) = gcd (b; a) :
4. gcd (a; 0) = jaj dan gcd (0; 0) tak terde…nisikan.
a b
5. c = gcd (a; b) ) gcd ;
c c
= 1:
Intejer a dan bdisebut prima relatif jika gcd (a; b) = 1; selanjutnya ada
x; y 2 Z sehingga xa + yb = 1:
Contoh 2.18 Karena gcd (42; 70) = 14; maka ada x; y 2 Z; sehingga
42x + 70y = 14 , 3x + 5y = 1:
Mudah diperiksa bahwa x = 2 dan y = 1 adalah solusinya. Kemudian
untuk k 2 Z;
3(2 + 5k) + 5( 1 3k) = 1;
juga
42(2 5k) + 70( 1 + 3k) = 14:
Jadi nilai x dan y tidak tunggal.
Teorema 2.7 (Algoritme Euclid) Misalkan a; b 2 Z+ ; jika dengan algo-
ritme pembagian berlaku langkah-langkah berikut ini:
Langkah ke-1 a = q1 b + r 1 0 < r1 < b
Langkah ke-2 b = q2 r 1 + r 2 0 < r2 < r1
Langkah ke-3 r1 = q3 r2 + r3 0 < r3 < r2
.. .. ..
. . .
,
Langkah ke-(i+2) ri = qi+2 ri+1 + ri+2 0 < ri+2 < ri+1
.. .. ..
. . .
Langkah ke-k rk 2 = qk r k 1 + r k 0 < rk < rk 1
Langkah ke-(k+2) rk 1 = qk+1 rk :
maka rk = gcd (a; b) :
2.4 Algoritme Euclid 51

Contoh 2.19 Dengan algoritma Euclid, tentukan gcd(250; 111); kemudian


tentukan x; y 2 Z sehingga gcd(250; 111) = 250x + 111y:

Jawab. Perhatikan langkah-langkah berikut ini.

Langkah ke-1 250 = 2(111) + 28 0 < 28 < 111


Langkah ke-2 111 = 3 (28) + 27 0 < 27 < 28
Langkah ke-3 28 = 1(27) + 1 0 < 1 < 27
Langkah ke-4 27 = 27(1) + 0
Maka gcd(250; 111) = 1: Perhatikan bahwa langkah-langkah algotima Euclid
bisa diringkas penulisannya dengan menggunakan sifat-sifat gcd berikut

gcd(250; 111) = gcd(111; 28) = gcd(28; 27)


= gcd(28; 27) = gcd(27; 1)
= gcd(1; 0) = 1:

Selanjutnya, untuk mendapatkan kombinasi linearnya kita lakukan langkah


balik. Perhatikan pada Langkah ke-3:

1 = 28 1 (27)
= 28 1 (111 3 (28))
= ( 1) (111) + (4) (28)
= ( 1) (111) + (4) (250 2 (111))
= (4) 250 + ( 9) (111) :

Secara umum, untuk k 2 Z;

1 = (4 111k) 250 + ( 9 + 250k) 111:

z
Terkait dengan implementasi, algoritme Euclid dapat dirinci dalam Prose-
dur 6 untuk mencari gcd (a; b) dimana a; b 2 Z+ :
2.4 Algoritme Euclid 52

PROSEDUR 6
procedure gcd(a; b: intejer positif, a b)
begin
r := a mod b
d := b
while r > 0 do
begin
c := d
d := r
r := c mod d
end
return(d)
end

De…nisi 2.4 Misalkan a; b 2 Z: Suatu interjer positif x disebut kelipatan


bersama dari a dan b jika x adalah kelipatan dari kedua a dan b; atau dengan
kata lain
(a j x) ^ (b j x)
Untuk a dan b semuanya tak nol, c disebut kelipatan bersama terkecil dari
a dan b; dinotasikan c = lcm (a; b) ; jika c adalah yang terkecil dari semua
kelipatan bersama dari a dan b; atau dengan kata lain

c = minfx 2 Z+ (a j x) ^ (b j x)g:

Sifat-sifat dasar dari kelipatan bersama terkecil dinyatakan sebagai berikut.

1. 8n 2 Z+ ; berlaku
lcm(1; n) = lcm(n; 1) = n:

2. 8a; n 2 Z+ ; berlaku
lcm(a; na) = na:

3. Jika a; m; n 2 Z+ dengan m n; maka

lcm(am ; an ) = an dan gcd(am ; an ) = am :

Teorema 2.8 Misalnya c = lcm (a; b) : Jika y adalah kelipatan bersama dari
a dan b; maka c j y:
2.4 Algoritme Euclid 53

Teorema 2.9 Untuk a; b 2 Z+ ;

ab = lcm (a; b) : gcd (a; b) :

Jelas bahwa, jika a dan b adalah prima relatif, maka

lcm (a; b) = ab:

Contoh 2.20 Tentukan lcm(168; 456):

Jawab. Periksalah bahwa gcd(168; 456) = 24: Akibatnya,

(168)(456)
lcm(168; 456) = = 3192:
24
z
Algoritme Euclid dapat diperluas sehingga tidak hanya mengasilkan pem-
bagi bersama terbesar dari dua intejer a dan b; tetapi juga menghasilkan
intejer x dan y yang memenuhi ax + by = d; diberikan dalam Prosedur 7.
PROSEDUR 7
procedure gcd(a; b: intejer positif, positif, a b)
begin
if b = 0 then
begin
d := a; x := 1; y := 0
return(d; x; y)
end
x2 := 1; x1 := 0; y2 := 0; y1 := 1
while b > 0 do
begin
q := b ab c; r := a qb; x := x2 qx1 ; y := y2 qy1
a := b; b := r; x2 := x1 ; x1 := x; y2 := y1 ; y1 := y
end
d := a; x := x2 ; y := y2
return(d; x; y)
end

Contoh 2.21 Gunakan Prosedur 7 untuk untuk menentukan gcd(a; b), x,


dan y, sehingga gcd(a; b) = ax + by jika diketahui a = 4864 dan b = 3458:

Jawab. Tabel berikut menunjukkan langkah-langkah Prosedur 7 dengan


input a = 4864 dan b = 3458; diperoleh gcd(4864; 3458) = 38 sehingga
2.4 Algoritme Euclid 54

(4864)(32) + (3458)( 45) = 38:

q r x y a b x2 x1 y2 y1
4864 3458 1 0 0 1
1 1406 1 1 3458 1406 0 1 1 1
2 646 2 3 1406 646 1 2 1 3
2 114 5 7 646 114 3 5 3 7
5 76 27 38 114 76 5 27 7 38
1 38 32 45 76 38 27 32 38 45
2 0 91 28 38 0 32 91 45 128

z
Catatan bahwa jawaban dengan tabel pada contoh di atas dapat diseder-
hanakan sebagai berikut, demi perhitungan menggunakan pensil dan kertas.

i qi+1 ri xi yi
0 4864 1 0
1 1 3458 0 1
2 2 1406 1 1
3 2 646 2 3
4 5 114 5 7
5 1 76 27 38
6 2 38 32 45
7 0

Perhatikan bahwa isian awal tabel ini adalah r0 = a; x0 = 1; y0 = 0; r1 = b;


x1 = 0; dan y1 = 1: Isian selanjutnya dihitung:
ri 1
qi = b c; untuk i 1;
ri
xi = xi 2 qi 1 :xi 1 ; untuk i 2; dan
yi = yi 2 qi 1 :yi 1 ; untuk i 2:

Jika rs = 0; maka proses berhenti. Dalam hal ini gcd(a; b) = rs 1 ; x = xs 1 ,


dan y = ys 1 :

De…nisi 2.5 Intejer positif p disebut prima jika faktor dari p hanyalah 1
dan dirinya sendiri p: Intejer positif yang bukan prima disebut komposit.

Dari de…nisi tersebut jelas bahwa suatu intejer positif p adalah prima jika
memenuhi
p = ab ) a = 1 _ b = 1:
2.4 Algoritme Euclid 55

Suatu intejer positif n adalah komposit jika

(9n1 ; n2 2 Z; 1 < n1 < n; 1 < n2 < n) n = n1 n2 :

Sebagai ilutrasi, barisan prima dapat ditulikan

2; 3; 5; 7; 11; 13; 17; :::

Lemma 2.1 Jika n 2 Z+ adalah komposit, maka ada prima p sehingga p j n:

Bukti. Andaikan ada komposit n yang tidak mempunyai faktor prima,


dan de…nisikan himpunan S yang anggotanya semua komposit ini, maka jelas
bahwa S 6= ?: Berdasarkan prinsip keterurutan dengan baik, maka S memuat
unsur terkecil, sebut saja s: Karena s komposit, maka 9s1 ; s2 2 Z; dengan
1 < s1 < s dan1 < s2 < s sehingga s = s1 s2 : Karena s tidak mepunyai
faktor prima, maka s1 dan s2 haruslah juga tidak mempunyai faktor prima.
Akibatnya, s1 ; s2 2 S; suatu kontradiksi, karena s adalah terkecil di dalam
S: Kesimpulannya, S = ? atau n mempunyai faktor prima. z

Lemma 2.2 Jika p prima dan p j ab; maka p j a atau p j b:

Lemma 2.3 Misalkan ai 2 Z+ untuk setiap 1 i n: Jika p prima dan


p j a1 a2 :::an ; maka p j ai untuk suatu 1 i n:

Teorema 2.10 (Teorema Dasar Aritmatika) Setiap intejer n 2 dapat di-


faktorisasikan secara tunggal sebagai produk kuasa prima:

n = pe11 pe22 :::pekk ;

dimana pi prima berbeda dan ei intejer positif.

Ilustrasi untuk teorema di atas: 63 = 32 :7; 100 = 22 :52 ; 4864 = 28 :19;


3458 = 2:7:13:19:

Contoh 2.22 Tentukan faktorisasi intejer 980220:


Jawab. Perhatikan langkah-langkah berikut ini

980220 = 21 (490110) = 22 (245055) = 22 31 (81685)


= 22 31 51 (16337) = 22 31 51 171 (961) = 22 31 51 171 312 :

z
2.4 Algoritme Euclid 56

Contoh 2.23 Misalkan n 2 Z+ dan

10:9:8:7:6:5:4:3:2:n = 21:20:19:17:16:15:14:

Tunjukkan bahwa 17 j n:

Jawab. Perhatikan bahwa karena 17 membagi ruas kanan, maka

17 j 10:9:8:7:6:5:4:3:2:n:

Dari fakta ini dan karena 17 - 10; 17 - 9; 17 - 8; 17 - 7; 17 - 6; 17 - 5; 17 - 4;


17 - 3; dan 17 - 2; berdasarkan Lemma 2.3 maka dapat disimpulkan bahwa
17 j n: z

Soal 2.4.1 Untuk masing-masing dari pasangan a; b 2 Z+ berikut ini, ten-


tukan gcd(a; b) dan nyatakan sebagai kombinasi linear dari a; b:

a) a = 231; b = 1820 b) a = 1369; b = 2597 c) a = 2689; b = 4001.

Soal 2.4.2

1. Untuk a; b 2 Z+ dan d = gcd(a; b); buktikan bahwa

a b
gcd( ; ) = 1
d d

2. Untuk a; b; n 2 Z+ dan d = gcd(a; b); buktikan bahwa

gcd(na; nb) = n: gcd(a; b)

3. Misalkan a; b; c 2 Z+ dengan c = gcd(a; b); buktikan bahwa

c2 j ab:

4. Untuk a; b; c; d 2 Z+ ; buktikan bahwa jika d = a + bc; maka

gcd(b; d) = gcd(a; b):

5. Misalkan a; b; c 2 Z+ dengan gcd(a; b) = 1: Jika a j bc; buktikan bahwa


a j c:

Soal 2.4.3 Misalkan n 2 Z+ ;


2.5 Aritmatik Intejer Modulo n 57

1. Buktikan bahwa gcd(n; n + 2) = (1 _ 2):

2. Berapa nilai yang mungkin dari gcd(n; n+3)? Bagaimana dengan gcd(n; n+
4)?

3. Secara umum, untuk k 2 Z+ ; berapa nilai yang mungkin dari gcd(n; n+


k)? Buktikan dengan induksi matematik.

Soal 2.4.4 Tentukan nilai-nilai dari c 2 Z+ ; 10 < c < 20; sedemikian se-
hingga persamaan Diophantine 84x+990y = c tidak mempunyai solusi. Ten-
tukan solusi untuk nilai-nilai c yang lainnya (nilai c dalam kasus persamaan
mempunyai solusi).

Soal 2.4.5

1. Jika a; b 2 Z+ dengan a = 630; gcd(a; b) = 105; dan lcm(a; b) =


242550; tentukan b:

2. Untuk setiap n 2 Z+ ; tentukan gcd(n; n + 1) dan lcm(n; n + 1):

2.5 Aritmatik Intejer Modulo n


Misalkan n adalah intejer positif.

De…nisi 2.6 Jika a dan b adalah intejer, maka a disebut kongruen ke b


modulo n; ditulis a b(mod n); apabila n membagi (a b): Intejer n disebut
modulus dari kongruensi.

Contoh 2.24 24 9(mod 5) karena 24 9 = 3:5; dan 11 17(mod 7)


karena 11 17 = ( 4)(7):

Teorema 2.11 (Sifat-sifat kongruensi) Untuk semua a; a1 ; b; b1 ; c 2 Z; maka


berlaku berikut ini.

1. a b(mod n) , a dan b mempunyai sisa yang sama apabila dibagi n:

2. Re‡eksif.: a a(mod n):

3. Simetrik: jika a b(mod n); maka b a(mod n):

4. Transitif: jika a b(mod n) dan b c(mod n); maka a c(mod n):


2.5 Aritmatik Intejer Modulo n 58

5. Jika a a1 (mod n) dan b b1 (mod n); maka a + b a1 + b1 (mod n)


dan ab a1 b1 (mod n):

De…nisi 2.7 Intejer modulo n; dinotasikan Zn ; adalah himpunan (kelas


ekuavalensi) intejer f0; 1; 2; :::; n 1g yang dikenai operasi: jumlah dan kali
diperlakukan dalam modulo n. Untuk a; b; c 2 Zn ;

a + b = c , a + b c(mod n)
ab = c , ab c(mod n)

Contoh 2.25 Z10 = f0; 1; 2; :::; 9g: Di dalam Z10 ;

6+7 = 3
4 8 = 2
3 9 = 3 + 1 = 4:

De…nisi 2.8 Misalkan a 2 Zn ; Invers multiplikatif dari a modulo n


adalah suatu intejer x 2 Zn sehingga ax 1(mod n): Faktanya tidak se-
mua anggota Zn mempunyai invers (x belum tentu ada). Dalam hal x yang
bersangkutan ada, maka a disebut invertibel dan x disebut invers dari a;
dinotasikan x = a 1 : Selanjutnya, a dibagi b modulo n diartikan sebagai a
kali b 1 modulo n:

gcd (227; 1000)


2512

: 13 407 807 929 942 597 099 574 024 998 205 846 127 479 365 820 592 393 377 723 561 443
721 764 030 073 546 976 801 874 298 166 903 427 690 031 858 186 486 050 853 753 882
811 946 569 946 433 649 006 084 096

Teorema 2.12 Misalkan a 2 Zn ; a adalah invertible jika dan hanya jika


gcd(a; n) = 1:

Contoh 2.26 Di dalam Z9 ; unsur-unsur yang invertibel adalah 1; 2; 4; 5; 7;


dan 8: Dalam hal ini, 7 1 = 4 karena 7:4 1 (mod 9):

Catatan 2.1 Berdasarkan Teorema 2.6, gcd(a; n) = 1 jika dan hanya jika
ada intejer x dan y sehingga

ax + ny = 1 , ax 1= ny , ax 1 (mod n):
2.5 Aritmatik Intejer Modulo n 59

Ini berarti x adalah invers dari a modulo n dan untuk menghitung x dapat
digunakan Prosedur 7, dengan input a dan n:
1
327 mod 500

: (263 162) mod 500 = 106

De…nisi 2.9 Grup multiplikatif dari Zn adalah himpunan

Zn = fa 2 Zn = gcd(a; n) = 1g

Contoh: Z10 = f1; 3; 7; 9g, Z15 = f1; 2; 4; 7; 8; 11; 13; 14g, dan Z5 =
f1; 2; 3; 4g: Kardinalitas dari Zn ; yaitu jZn j; disebut dengan bilangan Phi
Euler dinotasikan dengan (n) ;

(n) = jZn j:

Teorema 2.13 (Teorema Fermat) Misalkan p adalah prima. Jika gcd(a; p) =


1; maka
ap 1 1 (mod p):
Khususnya, untuk sembarang intejer a;

ap a (mod p)

Teorema 2.14 (Teorema Euler) Jika a 2 Zn ; maka


(n)
a 1 (mod n):

Teorema 2.15 Jika p dan q adalah dua intejer positif dengan gcd(p; q) = 1;
maka
(pq) = (p): (q):
Khususnya, jika p dan q keduanya prima, maka

(pq) = (p 1)(q 1)

Soal 2.5.1 Tanpa melakukan “perkalian yang panjang”, tunjukkan bahwa:

1. 1234567 90123 1(mod 10):

2. 2468 13579 3(mod 25):


2.5 Aritmatik Intejer Modulo n 60

Soal 2.5.2 Misalkan diberikan intejer x dan m 2: Apabila x dibagi m,


maka ada intejer r yang memenuhi

x r(mod m); 0 r<m

dan sering kali disebut residu tak-negatif terkecil dari x (mod m): Ten-
tukan residu tak-negatif terkecil dari

315 (mod 17) dan 1581 (mod 13):

Soal 2.5.3 Misalkan (xn xn 1 :::x0 )10 adalah representasi basis 10 dari intejer
positif x: Tunjukkan bahwa

x x0 x1 + x2 x3 + ::: + ( 1)n xn (mod 11);

dan gunakan hasil ini untuk memeriksa apakah 1213141516171819 habis dibagi
11:

Soal 2.5.4 Tentukan invers dari

a) 2 di dalam Z11 ; b) 7 di dalam Z15 ;


c) 7 di dalam Z16 ; d) 5 di dalam Z13 :

Soal 2.5.5 Gunakan Prosedur 7 untuk menentukan invers dari

a) 37 di dalam Z120 ; b) 123 di dalam Z550 ;


c) 400 di dalam Z1923 ; d) 1115 di dalam Z2664 :

Soal 2.5.6 Gunakan teorema Fermat untuk

1. menghitung sisa apabila 347 dibagi 23:

2. membuktikan bahwa

(a + b)p ap + bp (mod p)

dimana a; b; p 2 Z dan p prima.

Soal 2.5.7 Misalkan p prima, dengan memperhatikan produk semua unsur


tak-nol di dalam Zp ; buktikan bahwa

(p 1)! 1(mod p):


Chapter 3

Relasi dan Fungsi

Konsep relasi dan fungsi adalah salah satu landasan terpenting yang digu-
nakan untuk memahami banyak konsep lain di dalam matematika seperti:
aljabar, kalkulus, teori graf, dsb. Namun demikian, sesuai dengan tema
matematika diskret, bahasan relasi dan fungsi disini akan digunakan pen-
dekatan teori himpunan yang kebanyakan melibatkan konsep kombinatorial.

3.1 Produk Cartesian dan Relasi


De…nisi 3.1 Produk Cartesian atau produk silang dari dua himpunan
A dan B, notasi A B; adalah himpunan
A B = f(a; b)=a 2 A; b 2 Bg:

Setiap anggota dari A B; misalnya (a; b); disebut pasangan terurut


(ordered pair), kemudian a dan b disebut komponen pertama dan kedua
dari (a; b). Sembarang dua anggota dari A B; misalnya (a; b) dan (c; d);
dikatakan sama (notasinya: (a; b) = (c; d)) jika dan hanya jika a = c dan
b = d:
Jika A dan B berhingga dengan jAj = m dan jBj = n, berdasarkan aturan
kali jelas bahwa
jA Bj = mn:
De…nisi produk Cartesian dapat diperumum dengan melibatkan lebih dari
dua himpunan. Jika n 2 Z+ ; n 3; dan A1 ; A2 ; :::; An adalah n himpunan,
maka produk lipat-n dari A1 ; A2 ; :::; An ; notasinya: A1 A2 ::: An ;
dide…nisikan sebagai
A1 A2 ::: An := f(a1 ; a2 ; :::; an )=ai 2 Ai ; 1 i ng:

61
3.1 Produk Cartesian dan Relasi 62

Sembarang anggota (a1 ; a2 ; :::; an ) 2 A1 A2 ::: An disebut rangkai-


n terurut (ordered n-tuple). Kesamaan dua anggota A1 A2 ::: An
dide…nisikan sebagai
(a1 ; a2 ; :::; an ) = (b1 ; b2 ; :::; bn ) , ai = bi ; 1 i n:
A A dinotasikan dengan A2 ; dan secara umum produk lipat-n dari A dinota-
sikan dengan An ; juga
jAn j = jAjn :

Contoh 3.1 Misalkan A = fa; bg dan B = f1; 2; 3g; tentukan A B; B A;


A2 ; B 2 ; dan A3 :

Jawab. Berdasarkan de…nisinya, maka


A B = f(a; 1); (a; 2); (a; 3); (b; 1); (b; 2); (b; 3)g;
B A = f(1; a); (1; b); (2; a); (2; b); (3; a); (3; b)g;
A2 = f(a; a); (a; b); (b; a); (b; b)g
B2 = f(1; 1); (1; 2); (1; 3); (2; 1); (2; 2); (2; 3); (3; 1); (3; 2); (3; 3)g
A3 = f(a; a; a); (a; a; b); (a; b; a); (a; b; b); (b; a; a); (b; a; b); (b; b; a); (b; b; b)g
z
Dari contoh di atas terlihat bahwa secara umum A B tidak sama dengan
B A; namun aturan kali menjamin bahwa jA Bj = jB Aj :
R R = R2 dikenal sebagai bidang (bilangan nyata) dari koordinat geometri
atau kalkulus berdimensi dua. R+ R+ adalah interior dari kuadran pertama
dari bidang yang bersangkutan. Secara sama, R3 merupakan ruang-3 Euclid-
ean.

De…nisi 3.2 Relasi dari himpunan A ke himpunan B adalah sembarang


subhimpunan dari A B: Sembarang subhimpunan dari A A disebut
relasi biner pada A:

Dari Contoh 3.1, beberapa contoh relasi dari A ke B adalah:


R1 = f(a; 1); (b; 3)g; R2 = f(a; 1); (a; 3); (b; 2); (b; 3)g;
R3 = f(b; 2)g; R4 = ?; R5 = A B:
Karena jA Bj = 6; berdasarkan Contoh 1.14, maka banyaknya semua sub-
himpunan dari A B adalah 26 : Ini berarti banyaknya semua relasi yang
bisa dide…nisikan dari A ke B adalah 26 : Secara umum, fakta ini dinyatakan
konklusi berikut ini.
3.1 Produk Cartesian dan Relasi 63

Konklusi 1 Untuk sembarang himpunan berhingga A dan B dengan jAj =


m dan jBj = n; maka ada sebanyak 2mn relasi dari A ke B; termasuk di
dalamnya relasi kosong dan A B sendiri. Secara umum, A B tidak sama
dengan B A; tetapi jA Bj = jB Aj: Akibatnya, banyaknya relasi dari
B ke A juga 2mn :

Contoh 3.2 Misalkan A = f0; 1; 2; 3; 4g: Relasi biner R pada A dide…n-


isikan sebagai: xRy (dibaca: x berrelasi dengan y) jika dan hanya jika x y:
Tentukan relasi R:

Jawab. Berdasarkan de…nisi relasi R; maka

R = f(x; y) 2 A A x yg; atau

R = f(0; 0); (0; 1); (0; 2); (0; 3); (0; 4); (1; 1); (1; 2); (1; 3); (1; 4);
(2; 2); (2; 3); (2; 4); (3; 3); (3; 4); (4; 4)g:

Gambarkan R dalam sistem koordinat bidang! z

Contoh 3.3 Misalkan B = fx 2 Z j 0 x 10g: Jika relasi biner R pada


B dide…nikan: xRy jhj y = 3x 1: Tentukan relasi R:

Jawab. Berdasarkan de…nisi relasi R; maka

R = f(x; y) 2 B 2 y = 3x 1g
= f(1; 2); (2; 5); (3; 8)g

Teorema 3.1 Untuk sembarang himpunan A; B; dan C; berlaku:

1. A (B \ C) = (A B) \ (A C) :

2. A (B [ C) = (A B) [ (A C) :

3. (A \ B) C = (A C) \ (B C) :

4. (A [ B) C = (A C) [ (B C) :

Soal 3.1.1 Misalkan A = f1; 2; 3; 4g; B = f2; 5g; dan C = f3; 4; 7g; ten-
tukan A B; B A; A (B [ C); (A [ B) C; dan (A C) [ (B C):
3.2 Fungsi 64

Soal 3.1.2 Jika A = f1; 2; 3g dan B = f2; 4; 5g;

1. buatlah tiga contoh relasi tak-nol dari A ke B:


2. buatlah tiga contoh relasi biner tak-nol pada A:
3. tentukan jA Bj :
4. tentukan banyaknya semua relasi dari A ke B:
5. tentukan banyaknya semua relasi biner pada A:
6. tentukan banyaknya relasi dari A ke B yang memuat (1; 2) dan (1; 5):
7. tentukan banyaknya relasi dari A ke B yang memuat tepat lima pasan-
gan terurut.
8. tentukan banyaknya relasi biner pada A yang memuat sedikitnya 7
anggota.

3.2 Fungsi
De…nisi 3.3 Fungsi (pemetaan) f dari himpunan A ke himpunan B; dino-
tasikan f : A ! B; adalah suatu relasi dari A ke B yang setiap anggota dari
A muncul hanya sekali sebagai komponen pertama dari pasangan terurut
keanggotaan relasi yang bersangkutan.

Dari de…nisi di atas, jika (a; b) 2 f; maka dapat ditulis b = f (a): Dalam
hal ini b disebut imej dari a dibawa oleh f; sedangkan a disebut preimej dari
b oleh f: Penulisan ringkas dengan menerapkan lambang logika dari de…nisi
di atas dapat dinyatakan sebagai berikut.
f : A ! B jhj (8a 2 A)(9!b 2 B) b = f (a); atau
f : A ! B jhj (8a 2 A) [b = f (a) ^ c = f (a)] ) b = c

De…nisi 3.4 Dalam hal fungsi f : A ! B; A disebut domain dan B disebut


kodomain dari f: Subhimpunan dari B yang anggotanya adalah imej dari
semua anggota A disebut range dari f; dinotasikan dengan f (A):

Contoh 3.4 Misalkan A = f1; 2; 3g dan B = fw; x; y; zg; perhatikan bahwa


f = f(1; w); (2; x); (3; x)g adalah fungsi dari A ke B; sedangkan
g = f(1; w); (2; x)g dan h = f(1; w); (2; w); (2; x); (3; z)g
bukan merupakan fungsi (hanya relasi) dari A ke B:
3.2 Fungsi 65

Contoh 3.5 Beberapa contoh fungsi yang muncul di bidang ilmu komputer:

1. Fungsi ‡oor, adalah fungsi f : R ! Z yang dide…nisikan sebagai


f (x) = bxc
dimana bxc adalah intejer terbesar yang x: Sebagai ilustrasi:

(a) b3; 8c = 3; b3c = 3; b 3; 8c = 4; b 3c = 3:


(b) b7; 1 + 8; 2c = b15; 3c = 15 = 7 + 8 = b7; 1c + b8; 2c
(c) b7; 7 + 8; 4c = b16; 1c = 16 6= 7 + 8 = b7; 7c + b8; 4c

2. Fungsi ceiling, adalah fungsi f : R ! Z yang dide…nisikan sebagai


f (x) = dxe
dimana dxe adalah intejer terkecil yang x: Sebagai ilustrasi:

(a) d3e = 3; d3; 001e = 4 = d4e; d 3e = 3 = d 3; 8e = d 3; 0001e.


(b) d7; 5 + 8; 6e = d16; 1e = 17 = 8 + 9 = d7; 5e + d8; 6e:
(c) d7; 1 + 8; 4e = d15; 5e = 16 6= 8 + 9 = d7; 1e + d8; 4e

3. Fungsi trunc adalah fungsi trunc : R ! Z yang dide…nisikan sebagai


trunc(x) = menghapus bagian pecahaan dari x: Sebagai ilustrasi:

(a) trunc(2; 74) = 2 = b2; 74c; trunc(6) = 6 = b6c:


(b) trunc( 2; 74) = 2 = d 2; 74e 6= b 2; 74c = 3:

Berikut ini merupakan sisi kombinatorik yang terkait dengan pende…n-


isian fungsi.

Konklusi 2 Diberikan himpunan berhingga tak-kosong A dan B dengan


jAj = m dan jBj = n:
Jika A dan B dituliskan sebagai
A = fa1 ; a2 ; :::; am g dan B = fb1 ; b2 ; :::; bn g;
Mende…nisikan fungsi f : A ! B, berarti mende…nisikan himpunan bertipe
f = f(a1 ; x1 ); (a2 ; x2 ); :::; (am ; xm )g:
dimana x1 ; x2 ; :::; xm dipilih dari anggota B dengan pengulangan dibolehkan.
Dengan demikian, ada sebanyak nm cara mende…nisikan fungsi dari A ke B:
3.2 Fungsi 66

Contoh 3.6 Misalkan A = f1; 2; 3g dan B = fa; bg: De…nisikan semua


fungsi dari A ke B:

Jawab. Semuanya ada 23 = 8 fungsi dari A ke B; yaitu:


f1 = f(1; a); (2; a); (3; a)g;
f2 = f(1; a); (2; a); (3; b)g;
f3 = f(1; a); (2; b); (3; a)g;
f4 = f(1; a); (2; b); (3; b)g;
f5 = f(1; b); (2; a); (3; a)g;
f6 = f(1; b); (2; a); (3; b)g;
f7 = f(1; b); (2; b); (3; a)g; dan
f8 = f(1; b); (2; b); (3; b)g:
z

De…nisi 3.5 Suatu fungsi f : A ! B disebut injektif (satu-satu), jika


setiap anggota B muncul paling banyak satu kali sebagai bayangan dari suatu
anggota A:

Dari de…nisi di atas jelas bahwa untuk fungsi f : A ! B yang injektif,


maka jelas jAj jBj : Dengan menggunakan konsep logika de…nisi fungsi
injektif dinyatakan sebagai
f : A ! B adalah injektif , (8a1 ; a2 2 A) f (a1 ) = f (a2 ) ) a1 = a2 :

Contoh 3.7 Misalkan A = f1; 2; 3g dan B = fa; b; c; d; eg: Jelaskan bahwa


fungsi f = f(1; c); (2; a); (3; d)g adalah injektif, sedangkan fungsi
g = f(1; a); (2; a); (3; e)g
tidak injektif.

Jawab. Perhatikan bahwa komponen kedua dari semua anggota f muncul


hanya sekali, sehingga f adalah fungsi injektif. Sekarang perhatikan fungsi
g; unsur a muncul dua kali sebagai komponen kedua di dalam keanggotaan
g; sehingga g tidak injektif. z

Contoh 3.8 Diberikan fungsi f : R ! R dengan rumus pemadanan f (x) =


3x + 7 untuk setiap x 2 R: Buktikan bahwa f adalah fungsi injektif. Selanjut-
nya, diberikan pula fungsi g : R! R dengan rumus pemadaan g(x) = x4 x
untuk setiap x 2 R: Jelaskan bahwa g tidak injektif.
3.2 Fungsi 67

Bukti. Ambil sembarang a; b 2 R; maka

f (a) = f (b) , 3a + 7 = 3b + 7 , 3a = 3b ) a = b:

Berdasarkan de…nisinya dapat disimpulkan bahwa f adalah fungsi injektif.


Perhatikan bahwa g(0) = 04 0 = 0 dan g(1) = 14 1 = 0: Dengan
demikian, g tidak injektif, karena g(0) = g(1) tetapi 0 6= 1: Atau dengan
kata lain g tidak injektif, karena 9x; y 2 R (dalam hal ini ditunjukkan x = 0
dan y = 1) dimana g(x) = g(y) ; x = y: z
Berikut ini merupakan sisi kombinatorik yang terkait dengan pende…n-
isian fungsi injektif.

Konklusi 3 Diberikan himpunan berhingga tak-kosong A dan B; dan mis-


alkan jAj = m dan jBj = n dengan m n: Jika A dan B dituliskan sebagai

A = fa1 ; a2 ; :::; am g dan B = fb1 ; b2 ; :::; bn g;

Mende…nisikan fungsi injektif f : A ! B, berarti mende…nisikan himpunan


bertipe
f = f(a1 ; x1 ); (a2 ; x2 ); :::; (am ; xm )g:
dimana x1 ; x2 ; :::; xm dipilih dari anggota B yang tidak boleh sama (artinya
pengulangan tidak dibolehkan). Dengan demikian, ada sebanyak P (n; m) =
n!
(n m)!
cara mende…nisikan fungsi injektif dari A ke B:

Contoh 3.9 Misalkan A = f1; 2g dan B = fa; b; cg: De…nisikan semua


fungsi injektif dari A ke B:

3!
Jawab. Semuanya ada P (3; 2) = 1!
= 6 fungsi injektif dari A ke B;
yaitu:

f1 = f(1; a); (2; b)g; f2 = f(1; b); (2; a)g;


f5 = f(1; a); (2; c)g; f4 = f(1; c); (2; a)g;
f5 = f(1; b); (2; c)g; f6 = f(1; c); (2; b)g:

De…nisi 3.6 Misalkan f : A ! B dan A1 A; dide…nisikan

f (A1 ) = fb 2 B b = f (a); untuk a 2 A1 g:

Dalam hal ini, f (A1 ) disebut imej dari A1 oleh f:


3.2 Fungsi 68

Contoh 3.10 Misalkan A = f1; 2; 3; 4; 5g dan B = fx; y; z; wg: Fungsi f


dide…nisikan dengan

f = f(1; w); (2; x); (3; x); (4; y); (5; y)g:

Jika A1 = f1; 2g; A2 = f2; 3g; dan A3 = f2; 3; 4; 5g; tentukan f (A1 ); f (A2 )
dan f (A3 ):

Jawab. Berdasarkan de…nisinya, maka f (A1 ) = fw; xg; f (A2 ) = fxg;


dan f (A3 ) = fx; yg: z

Teorema 3.2 Misalkan f : A ! B dengan A1 ; A2 A; maka

1. f (A1 [ A2 ) = f (A1 ) [ f (A2 ):

2. f (A1 \ A2 ) f (A1 ) \ f (A2 )

3. f (A1 \ A2 ) = f (A1 ) \ f (A2 ) apabila f injektif.

Bukti. Disini hanya akan dibuktikan untuk No. 2., lainnya disisakan
sebagai latihan.
Ambil sembarang b 2 f (A1 \ A2 ); maka 9a 2 A1 \ A2 sehingga f (a) = b:
Karena a 2 A1 \ A2 ; berarti a 2 A1 dan a 2 A2 ; akibatnya f (a) 2 f (A1 ) dan
f (a) 2 f (A2 ); dan ini berarti f (a) = b 2 f (A1 ) \ f (A2 ): Kesimpulannya

f (A1 \ A2 ) f (A1 ) \ f (A2 ):

De…nisi 3.7 Misalkan f : A ! B dengan A1 A: Restriksi dari f ke


A1 ; dinotasikan dengan f jA1 ; adalah fungsi f jA1 : A1 ! B dengan rumus

f jA1 (a) = f (a); 8a 2 A:

De…nisi 3.8 Misalkan A1 A dan f : A1 ! B: Jika fungsi g : A ! B


dengan rumus
g(a) = f (a); 8a 2 A1 ;
maka g disebut ekstensi dari f ke A:
3.2 Fungsi 69

Contoh 3.11 Misalkan A = f1; 2; 3; 4; 5g dan fungsi f : A ! R dide…n-


isikan
f = f(1; 10); (2; 13); (3; 16); (4; 19); (5; 22)g:
Misalkan pula dide…nisikan fungsi g : Q ! R dengan

g(q) = 3q + 7; 8q 2 Q;

dan fungsi h : R ! R dengan

h(r) = 3r + 7; 8r 2 R:

Maka:

1. g adalah ekstensi dari f ke Q:

2. f adalah restriksi dari g ke A:

3. h adalah ekstensi dari f ke R:

4. f adalah restriksi dari h ke A:

5. h adalah ekstensi dari g ke R:

6. g adalah restriksi dari h ke Q:

Soal 3.2.1 Tentukan apakah relasi-relasi berikut ini merupakan fungsi, dan
jika merupakan fungsi, carilah imejnya.

1. f(x; y) x; y 2 Z; y = x2 + 7g; suatu relasi dari Z ke Z:

2. f(x; y) x; y 2 R; y 2 = xg; suatu relasi dari R ke R:

3. f(x; y) x; y 2 R; y = 3x + 1g; suatu relasi dari R ke R:

4. f(x; y) x; y 2 Q; x2 + y 2 = 1g; suatu relasi dari Q ke Q:

5. R adalah suatu relasi dari A ke B; dimana jAj = 5; jBj = 6; dan


jRj = 6:

Soal 3.2.2 Misalkan A = f1; 2; 3; 4g dan B = fx; y; zg:

1. Buatlah lima contoh fungsi dari A ke B:

2. Tentukan banyaknya semua fungsi dari A ke B:


3.2 Fungsi 70

3. Tentukan banyaknya fungsi injektif dari A ke B:

4. Tentukan banyaknya semua fungsi dari B ke A:

5. Tentukan banyaknya fungsi injektif dari B ke A:

6. Tentukan banyaknya fungsi f : A ! B yang memenuhi f (1) = x:

7. Tentukan banyaknya fungsi f : A ! B yang memenuhi f (1) = f (2) =


x:

8. Tentukan banyaknya fungsi f : A ! B yang memenuhi f (1) = x dan


f (2) = y:

Soal 3.2.3

1. Jika ada 2187 fungsi f : A ! B dan jBj = 3; tentukan jAj :

2. Jika A = f1; 2; 3; 4; 5g dan ada 6720 fungsi injektif dari A ke B; ten-


tukan jBj :

Soal 3.2.4 Tentukan apakah pernyataan-pernyataan benar atau salah. Jika


salah berikan contoh sanggahan.

1. bac = dae untuk semua a 2 Z:

2. bac = dae untuk semua a 2 R:

3. bac = dae 1 untuk semua a 2 R r Z:

4. dae = b ac untuk semua a 2 R:

Soal 3.2.5

1. Tentukan semua bilangan nyata yang memenuhi d3xe = 3dxe:

2. Misalkan n 2 N+ dimana n > 1; tentukan semua x 2 R yang memenuhi


dnxe = ndxe:

Soal 3.2.6 Misalkan a1 ; a2 ; a3 ; ::: adalah barisan intejer yang dide…nisikan


secara rekursif dengan

a) a1 = 1; dan
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 71

b) Untuk semua n 2 N+ dimana n > 1; an = 2ab n2 c ;

1. tentukan an untuk semua 2 n 8:


2. buktikan bahwa an n untuk semua n 2 Z+ :

Soal 3.2.7 Misalkan A = f1; 2; 3; 4; 5g; B = fw; x; y; zg; A1 = f2; 3; 5g A;


dan g : A1 ! B: Tentukan banyaknya cara memperluas (ekstensi) g menjadi
fungsi f : A ! B:

Soal 3.2.8 Untuk n 2 Z+ , dide…nisikan Xn = f1; 2; :::; ng: Diberikan m; n 2


Z+ ; fungsi f : Zm ! Zn disebut naik monoton jika untuk setiap i; j 2 Zm
berlaku
1 i < j m ) f (i) f (j):

1. Ada berapa banyak fungsi naik monoton dari X7 ke X5 :


2. Ada berapa banyak fungsi naik monoton dari X6 ke X9 :
3. Buatlah generalisasi dari jawaban Pertanyaan 1: dan 2:
4. Tentukan banyaknya fungsi naik monoton f : X10 ! X6 dimana f (4) =
4:
5. Tentukan banyaknya fungsi naik monoton f : X7 ! X12 dimana f (5) =
9:
6. Buatlah generalisasi dari jawaban Pertanyaan 4: dan 6:

3.3 Fungsi Surjektif dan Bilangan Stirling Je-


nis Kedua
De…nisi 3.9 Suatu fungsi f : A ! B disebut surjektif (onto), jika f (A) =
B; artinya
(8y 2 B)(9x 2 A) y = f (x):

Contoh 3.12 Jika A = f1; 2; 3; 4g dan B = fx; y; zg; Jelaskan bahwa


f1 = f(1; z); (2; y); (3; x); (4; y)g dan
f2 = f(1; x); (2; x); (3; y); (4; z)g
adalah dua fungsi surjektif dari A ke B; sedangkan fungsi
g = f(1; x); (2; x); (3; y); (4; y)g
tidak surjektif.
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 72

Jawab. Perhatikan bahwa semua anggota B muncul sebagai komponen


kedua di dalam keanggotaan f1 dan f2 , sehingga f1 dan f2 adalah fungsi
surjektif. Sekarang perhatikan fungsi g; ada anggota B yaitu z yang tidak
muncul sebagai komponen kedua di dalam keanggotaan g; sehingga g tidak
surjektif. z

Contoh 3.13 Jelaskan bahwa fungsi f : Z ! Z yang dide…nisikan dengan

f (x) = 3x + 1; 8x 2 Z;

dan fungsi g : R ! R yang dide…nisikan dengan

g(x) = x2 ; 8x 2 Z;

adalah tidak surjektif.

Jawab. Ambil y = 2; maka 3x + 1 = 2 tidak mempunyai solusi di dalam


Z: Ini berarti 9y 2 Z (dalam hal ini ditunjukkan y = 2) sehingga @x 2 Z
yang berlaku y = f (x):
Ambil y = 1; maka x2 = 1 tidak mempunyai solusi di dalam R: Ini
berarti 9y 2 R (dalam hal ini ditunjukkan y = 1) sehingga @x 2 R yang
berlaku y = g(x): z

Contoh 3.14 Buktikan bahwa fungsi g : Q ! Q yang dide…nisikan dengan

g(x) = 3x + 1; 8x 2 Q;

dan fungsi h : R ! R yang dide…nisikan dengan

h(x) = x3 ; 8x 2 R;

adalah surjektif.

Bukti. Ambil sembarang y 2 Q; maka y = 3x + 1 , x = y 3 1 dan jelas


bahwa x 2 Q: Dengan demikian, (8y 2 Q)(9x = y 3 1 2 Q) sehingga berlaku

y 1
g(x) = g( )
3
y 1
= 3(( )+1
3
= y:

Kesimpulannya, g adalah surjektif.


3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 73

p
Ambil sembarang y 2 R; maka y = x3 , x = 3 y dan jelas bahwa x 2 R:
p
Dengan demikian, (8y 2 R)(9x = 3 y 2 R) sehingga berlaku
p
h(x) = h( 3 y)
p
= ( 3 y)3
= y:
Kesimpulannya, h adalah surjektif. z
Dari de…nisi di atas jelas bahwa untuk A dan B himpunan berhingga, jika
f : A ! B adalah surjektif, maka jAj jBj : Dua contoh berikut ini akan
mengarah ke konklusi tentang banyaknya cara pende…nisian fungsi surjektif.

Contoh 3.15 Jika A = fx; y; zg dan B = f1; 2g; jelaskan bahwa semua
fungsi f : A ! B adalah surjektif kecuali f merupakan fungsi konstan.
Selanjutnya, simpulkan bahwa ada 6 cara mende…nisikan fungsi surjektif dari
A ke B: Kemudian, nyatakan secara umum untuk A sembarang himpunan
dengan jAj = m 2; sedangkan ditetapkan B = f1; 2g; maka ada
2m 2
cara mende…nisikan fungsi surjektif dari A ke B:

Jawab. Fungsi kosntan dari A ke B ada 2; yaitu


f1 = f(x; 1); (y; 1); (z; 1)g dan f1 = f(x; 2); (y; 2); (z; 2)g:
Jika f : A ! B tidak kontan, maka jelas bahwa semua anggota B muncul
sebagai komponen kedua di dalam keanggotaan f; akibatnya f pasti surjektif.
Dengan demikian, karena ada jBjjAj = 23 = 8 cara mende…nisikan semua
fungsi dari A ke B; sedangkan hanya dua yang tidak surjektif, maka ada
8 2 = 6 cara mende…nisikan fungsi surjektif dari A ke B: z

Contoh 3.16 Misalkan A = fx; y; z; wg dan B = f1; 2; 3g: Buktikan bahwa


ada
3 4 3 4 3 4
3 2 + 1
3 2 1
cara mende…nisikan fungsi surjektif dari A ke B: Kemudian, nyatakan se-
cara umum untuk A sembarang himpunan dengan jAj = m 3; sedangkan
ditetapkan B = f1; 2; 3g; maka ada
3 m 3 m 3 m
3 2 + 1
3 2 1
cara mende…nisikan fungsi surjektif dari A ke B:
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 74

Bukti. Berdasarkan Konklusi 2, jumlah fungsi yang bisa kita de…nisikan


dari A ke B adalah 34 : Berdasarkan Contoh 1.14, ada 32 = 3 subhimpunan
dari B yang berkardinalitas 2; yaitu f1; 2g; f1; 3g; dan f2; 3g: Jumlah fungsi
dari A ke f1; 2g adalah 24 termasuk fungsi konstan dari A ke f1g dan dari
A ke f2g: Secara sama, jumlah fungsi dari A ke f1; 3g adalah 24 termasuk
fungsi konstan dari A ke f1g dan dari A ke f3g: Demikian pula, jumlah fungsi
dari A ke f2; 3g adalah 24 termasuk fungsi konstan dari A ke f2g dan dari A
ke f3g: Dengan demikian, total jumlah fungsi dari A ke semua subhimpunan
dari B yang berkardinalitas 1 atau 2 adalah

3 4 3 4
2 1
2 1

(Perhatikan bahwa fungsi konstan masing-masing terhitung 2 kali; dalam


hal ini fungsi kontan ada 31 jenis, yaitu A ke f1g; A ke f2g; dan A ke f3g;
dimana masing-masing berjumlah 1jAj = 14 ). Jelas bahwa jumlah tersebut
merupakan jumlah semua fungsi ini bukan merupakan fungsi surjektif dari
A ke B: Kesimpulannya, jumlah semua fungsi yang surjektif dari A ke B
adalah
3 4 3 4 3 4 3 4 3 4
34 2 1 = 3 2 + 1 = 36
2 1 3 2 1

z
Dua contoh terakhir di atas mengarah ke suatu pola (generalisasi) yang
di berikan berikut ini, tanpa pembuktian.

Konklusi 4 Untuk sembarang himpunan berhingga tak-kosong A dan B den-


gan jAj = m dan jBj = n; maka ada sebanyak

n m n n
n (n 1)m + (n 2)m :::
n n 1 n 2
n m n m
+( 1)n 2
2 + ( 1)n 1
1
2 1
X
n 1
n
= ( 1)k (n k)m
k=0
n k
X
n
n
= ( 1)k (n k)m
k=0
n k

cara mende…nisikan fungsi surjektif dari A ke B:


3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 75

Contoh 3.17 Misalkan A = f1; 2; 3; 4; 5; 6; 7g dan B = fw; x; y; zg: Ada


berapa cara mende…nisikan fungsi surjektif dari A ke B?

Jawab. Dengan menerapkan Konklusi 4, banyaknya fungsi surjektif dari


A ke B adalah
X
4
4 4 7 4 7 4 7 4 7
( 1)k (4 k)7 = 4 3 + 2 1
k=0
4 k 4 3 2 1
= 8400:

Contoh 3.18 Departemen Pertahanan mempunyai 7 proyek yang berkaitan


dengan keamanan tingkat tinggi. Telah ditunjuk 4 perusahaan untuk menan-
gani ketujuh proyek tersebut. Demi memaksimalkan tingkat keamanan, setiap
proyek tidak boleh ditangani oleh lebih dari satu perusahaan. Ada berapa cara
pemberian proyek agar keempat perusahaan terlibat?

Jawab. Contoh ini dapat dimodelkan ke dalam Contoh 3.17 dengan


memisalkan A adalah himpunan proyek dan B adalah himpunan perusahaan.
Banyaknya cara pemberian proyek merupakan merupakan banyaknya cara
pende…nisian fungsi surjektif dari A ke B; sehingga jawabannya adalah 8400
cara. z

Contoh 3.19 7 orang yang tidak saling kenal berada di lantai dasar sebuah
gedung yang secara bersamaan akan menggunakan suatu lift untuk naik ke
lantai atas. Jika gedung tersebut mempunyai 4 lantai (tingkat) diatas lantai
dasar, tentukan probabilitas bahwa lift harus berhenti di setiap lantai lantaran
ada diantara ketujuh orang tersebut yang keluar dari lift.

Jawab. Ukuran ruang contoh dari contoh soal ini adalah banyaknya
cara 7 orang memilih 4 lantai (atau banyaknya cara pende…nisian fungsi
dari domain berukuran 7 ke kodomain berukuran 4), yaitu 47 = 16384 cara.
Sedangkan ukuran ruang kejadiannya merupakan model Contoh 3.17, yaitu
8400 cara. Dengan demikian, probabilitas bahwa lift harus berhenti di setiap
8400
lantai adalah 16384 = 0; 5127: z

Contoh 3.20 Staf TU Departemen Matematika terdiri dari Kepala TU dan


3 asisten administratif. Misalkan ada 7 dokumen Departemen yang harus
diproses oleh staf TU dan diharuskan tidak ada staf yang nganggur. Ada
berapa cara Sekretaris Departemen menugasi staf TU apabila:
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 76

1. tidak batasan lagi?


2. Kepala TU harus mengerjakan satu dokumen yang paling penting?
3. Selain mengerjakan satu dokumen yang paling penting, Kepala TU
masih dibolehkan mengerjakan dokumen yang lain?

Jawab. Pertanyaan pada contoh soal ini merupakan model Contoh 3.17.
Dengan demikian,

1. apabila tidak ada batasan lagi, jawabannya adalah 8400 cara.


2. Kepala TU harus mengerjakan satu dokumen yang paling penting, be-
rarti 6 dokumen tersisa harus dikerjakan oleh 3 staf, sehingga jawaban-
nya adalah
X 3
3
( 1)k (3 k)6 = 540 cara.
k=0
3 k

3. apabila Kepala TU masih dibolehkan mengerjakan dokumen yang lain,


berarti 6 dokumen tersisa harus dikerjakan oleh 4 staf, sehingga jawa-
bannya adalah
X
4
4
( 1)k (4 k)6 = 1560 cara.
k=0
4 k

z
Contoh berikut ini akan mengarah generalisasi bilangan Stirling jenis ke-
dua.

Contoh 3.21 Jika A = fa; b; c; dg dan B = f1; 2; 3g; maka ada 36 fungsi
surjektif dari A ke B: Bentuk verbal dari pernyataan ini adalah ada 36
cara mendistribusikan 4 obyek yang berbeda ke dalam 3 wadah “yang da-
pat dibedakan” (urutan wadah diperhatikan), dengan syarat tidak ada wadah
yang kosong. Dari 36 cara tersebut, perhatikan 6 contoh berikut ini:

1) fa; bg1 fcg2 fdg3 2) fa; bg1 fdg2 fcg3


3) fcg1 fa; bg2 fdg3 4) fcg1 fdg2 fa; bg3
5) fdg1 fa; bg2 fcg3 6) fdg1 fcg2 fa; bg3

dimana, misalnya, notasi fcg2 diartikan sebagai c ada di dalam wadah kedua.
Sekarang, jika wadah “tidak lagi dapat dibedakan”(urutan wadah tidak diper-
hatikan), maka keenam (3!) contoh tersebut dianggap identik (tidak dibedakan).
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 77

Dengan demikian, ada 363!


= 6 cara mendistribusikan 4 obyek yang berbeda
ke dalam 3 wadah “yang identik” (urutan wadah tidak diperhatikan), dengan
syarat tidak ada wadah yang kosong.

Konklusi 5 Untuk m n; banyaknya cara mendistribusikan m obyek yang


berbeda ke dalam n wadah yang identik, dengan tidak dibolehkan ada wadah
yang kosong, adalah

1 X
n
n
( 1)k (n k)m :
n! k=0 n k

Bilangan ini dinotasikan dengan S(m; n); dan disebut bilangan Stirling
jenis kedua. Perhatikan bahwa jika jAj = m n = jBj ; maka banyaknya
fungsi surjektif dari A ke B adalah n!:S(m; n):

Teorema 3.3 Bilangan Stirling jenis kedua S(m; n) dapat dirumuskan se-
cara rekursif dengan

S(m; 1) = 1; S(m; m) = 1;
S(m; n) = S(m 1; n 1) + n:S(m 1; n); untuk 2 n m 1:

Bukti. Dari Konklusi 5, jelas bahwa S(m; 1) = 1 dan S(m; m) = 1: Mis-


alkan A = fa1 ; a2 ; ::; am g; banyaknya cara mendistribusikan anggota-anggota
A ke dalam n wadah yang identik adalah S(m; n): Dari S(m; n) cara pendis-
tribusian ini hanya ada dua kemungkinan, yaitu:

1. am berada di dalam suatu wadah sedirian, atau


2. am berada di dalam suatu wadah tidak sedirian.

Pencacahan kasus yang pertama. Tempatkan am pada salah satu wadah,


kemudian anggota A yang tersisa didistribusikan ke dalam wadah yang ter-
sisa, dengan tidak ada wadah yang kosong, sehingga ada S(m 1; n 1) cara
pendistribusian.
Pencacahan kasus yang kedua. Distribusikan anggota A yang tersisa
(tanpa am ) ke dalam ke dalam n wadah tanpa ada yang kosong, sehingga ada
S(m 1; n) cara pendistribusian. Pada setiap cara ini, kemudian diikuti pen-
empatan am pada n wadah, sehingga ada n cara penempatan. Bedasarkan
Aturan Kali, secara keseluruhan n:S(m 1; n) cara pendistribusian.
Akhirnya, berdasarkan Aturan Jumlah,

S(m; n) = S(m 1; n 1) + n:S(m 1; n):


3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 78

z
Dari teorema di atas, sebagaimana bilangan binomial, kalkulasi bilangan
Stirling dapat disusun berdasarkan segitiga Pascal.
m
1 1
2 1 1
3 1 3 1
4 1 7 6 1
5 1 15 25 10 1
6 1 31 90 65 15 1
7 1 63 301 350 140 21 1
Dari tabel di atas, perhatikan perhitungan berikut.

S(5; 3) = S(4; 2) + 3:S(4; 3) = 7 + 3:6 = 25:


S(7; 5) = S(6; 4) + 5:S(6; 5) = 65 + 5:15 = 140:
S(8; 4) = S(7; 3) + 4:S(7; 4) = 101 + 4:350 = 1501:

P
n
Contoh 3.22 Untuk m n; S(m; i) adalah banyaknya cara yang mungkin
i=1
untuk mendistribusikan m obyek yang berbeda ke dalam n wadah yang iden-
tik dengan ada wadah yang kosong diperbolehkan. Perhatikan dari baris ke-4
dalam tabel bilangan Stirling di atas, bahwa ada 1 + 6 + 7 = 14 cara mendis-
tribusikan 4 obyek yang berbeda ke dalam 3 wadah yang identik, dengan ada
wadah yang kosong diperbolehkan.

Soal 3.3.1 Berikan suatu contoh himpunan berhingga A dan B dengan jAj ;
jBj 4 dan fungsi f : A ! B sedemikian sehingga

1. f bukan fungsi injektif maupun surjektif.


2. f fungsi injektif tetapi tidak surjektif.
3. f surjektif tetapi tidak injektif.
4. f surjektif maupun injektif.

Soal 3.3.2 Untuk setiap fungsi f : Z ! Z berikut ini, tentukan apakah f


merupakan fungsi injektif dan apakah surjektif. Jika f bukan fungsi surjektif,
tentukan imejnya.

a) f (x) = x + 7 b) f (x) = 2x 3 c) f (x) = x + 5


d) f (x) = x2 e) f (x) = x2 + x f ) f (x) = x3
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 79

Soal 3.3.3 Misalkan A = f1; 2; 3; 4g dan B = f1; 2; 3; 4; 5; 6g:

1. Ada berapa banyak fungsi dari A ke B?

2. Ada berapa banyak fungsi dari A ke B yang injektif?

3. Ada berapa banyak fungsi dari A ke B yang surjektif?

4. Ada berapa banyak fungsi dari B ke A?

5. Ada berapa banyak fungsi dari B ke A yang injektif?

6. Ada berapa banyak fungsi dari B ke A yang surjektif?

Soal 3.3.4

1. Periksalah bahwa
X
n
n
( 1)k (n k)m = 0
k=0
n k

untuk n = 5 dan m = 2; 3; 4:
P
5
m
2. Periksalah bahwa 57 = i
(i!)S(7; i):
i=1

3. Berilah argumen kombinatorial untuk membuktikan bahwa


Xn
m
n
m = (i!)S(n; i); 8m; n 2 Z+ :
i=1
i

Soal 3.3.5

1. Misalkan A = f1; 2; 3; 4; 5; 6g dan B = fv; w; x; y; zg: Tentukan banyaknya


fungsi f : A ! B dimana

(a) f (A) = fv; xg;


(b) jf (A)j = 2;
(c) f (A) = fw; x; yg;
(d) jf (A)j = 3;
(e) f (A) = fv; x; y; zg; dan
(f) jf (A)j = 3:
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua 80

2. Misalkan A dan B adalah himpunan dengan jAj = m n = jBj :


+
Jika k 2 Z dengan 1 k n; berapa banyaknya fungsi f : A ! B
sehingga jf (A)j = k:

Soal 3.3.6 Seorang instruktur laboratorium komputasi mempunyai 5 orang


asisten yang diminta untuk menyelesaikan suatu program yang terdiri atas 9
modul. Ada berapa cara sang instruktur menugasi asistennya dengan syarat
semua asisten mendapat tugas dan setiap modul tidak boleh dikerjakan oleh
lebih dari satu asisten?

Soal 3.3.7 Misalkan kita mempunyai 8 bola dengan warna yang berbeda dan
3 wadah yang diberi nomor I; II; III:

1. Ada berapa cara kita dapat mendistribusikan bola ke dalam wadah se-
hingga tidak ada wadah yang kosong?
2. Diketahui salah satu bola berwarna biru. Ada berapa cara kita dapat
mendistribusikan bola ke dalam wadah sehingga tidak ada wadah yang
kosong dan bola biru ada di wadah nomor II?
3. Jika nomor wadah kita hapus sehingga kita tidak mampu membedakan-
nya, ada berapa cara kita dapat mendistribusikan bola ke dalam wadah
sehingga tidak ada wadah yang kosong?
4. Jika nomor wadah kita hapus sehingga kita tidak mampu membedakan-
nya, ada berapa cara kita dapat mendistribusikan bola ke dalam wadah,
dengan ada wadah yang kosong diperbolehkan?

Soal 3.3.8

1. Tentukan dua baris berikutnya (yaitu m = 8 dan m = 9) dalam tabel


bilangan Stirling.
2. Tuliskan program komputer (atau membuat algoritme) untuk menghi-
tung bilangan Stirling S(m; n) jika 1 m 12 dan 1 n m:

Soal 3.3.9

1. Untuk m; n:r 2 Z+ dengan m nr; misalkan Sr (m; n) menotasikan


banyaknya cara mendistribusikan m obyek yang berbeda ke dalam n
obyek yang identik, dimana setiap wadah menerima sedikitnya r obyek.
Periksalah bahwa
m 1
Sr (m; n) = :Sr (m r; n 1) + n:Sr (m 1; n):
r 1
3.4 Komposisi Fungsi dan Fungsi Invers 81

2. Untuk S(m; n) bilangan Stirling dengan m 2; buktikan bahwa


X1
m
1
S(m; 2) = (m 1)! :
i=1
i

3.4 Komposisi Fungsi dan Fungsi Invers


De…nisi 3.10 Suatu fungsi f : A ! B disebut bijektif (korespondensi satu-
satu), jika f injektif dan sekaligus bijektif.

Contoh 3.23 Jika A = f1; 2; 3; 4g dan B = fw; x; y; zg; perhatikan bahwa


f = f(1; z); (2; y); (3; w); (4; x)g
adalah dua fungsi bijektif dari A ke B; sedangkan
g = f(w; 3); (x; 4); (y; 2); (z; 1)g
adalah dua fungsi bijektif dari B ke A:

Dari de…nisi di atas jelas bahwa jika f : A ! B adalah bijektif, maka


jAj = jBj: Terkait dengan konsep pencacahan, sisi kombinatorik dari de…nisi
fungsi bijektif diberikan dalam konklusi berikut.

Konklusi 6 Untuk sembarang himpunan berhingga tak-kosong A dan B den-


gan jAj = n dan jBj = n; maka ada sebanyak
n! = n(n 1)(n 2):::1
cara mende…nisikan fungsi bijektif dari A ke B:

De…nisi 3.11 Jika suatu fungsi f : A ! A adalah bijektif , maka f disebut


permutasi pada A.

Contoh 3.24 Misalkan A = f1; 2; 3; 4; 5g; suatu permutasi p : A ! A


dide…nisikan sebagai:
p(1) = 3; p(2) = 5; p(3) = 4; p(4) = 2; p(5) = 1:
Permutasi dapat dinyatakan dalam berbagai macam cara. Salah satu cara
penulisan yang cukup sering dipakai adalah sebagai berikut:
1 2 3 4 5
p= ;
3 5 4 2 1
dimana baris yang atas adalah larik (array) sebagai domain dari p; sedangkan
baris yang bawah adalah larik sebagai imej dari p:
3.4 Komposisi Fungsi dan Fungsi Invers 82

De…nisi 3.12 Fungsi bijektif 1A : A ! A yang dide…nisikan dengan 1A (a) =


a; 8a 2 A; disebut fungsi (permutasi) identitas pada A:

De…nisi 3.13 Dua fungsi f; g : A ! B dikatakan sama, ditulis f = g; jika


f (a) = g(a), 8a 2 A:

Contoh 3.25 Perhatikan dua fungsi f; g : R ! Z yang dide…nisikan dengan


x; jika x 2 Z
f (x) =
bxc + 1; jika x 2 R r Z
g(x) = dxe; 8x 2 R:

Jika x 2 Z; maka f (x) = x = dxe = g(x): Untuk x 2 R r Z; dapat ditulis

x = n + r; dimana n 2 Z dan 0 < r < 1;

maka
f (x) = bxc + 1 = n + 1 = dxe = g(x):
Kesimpulannya, walaupun f dan g mempunyai rumus yang berbeda, f = g:

De…nisi 3.14 Misalkan f : A ! B dan g : B ! C; fungsi komposit dari


f dan g; dinotasikan g f : A ! C; dide…nisikan dengan

(g f )(a) = g(f (a)); 8a 2 A:

Contoh 3.26 Misalkan A = f1; 2; 3; 4g; B = fa; b; cg, dan C = fw; x; y; ; zg


dengan f : A ! B dan g : B ! C dirumuskan

f = f(1; a); (2; a); (3; b); (4; c)g dan g = f(a; x); (b; y); (c; z)g:

Untuk setiap a 2 A; diperoleh

(g f )(1) = g(f (1)) = g(a) = x (g f )(2) = g(f (2)) = g(a) = x


(g f )(3) = g(f (3)) = g(b) = y (g f )(4) = g(f (4)) = g(c) = z;

Jadi
g f = f(1; x); (2; x); (3; y); (4; z)g:

Dengan mudah dapat dilihat bahwa secara umum fungsi komposit tidak
komutatif. Dalam hal ini, ada pasangan fungsi f dan g sehingga g f 6= f g:

Teorema 3.4 Jika fungsi f : A ! B dan g : B ! C keduanya bijektif,


maka g f juga bijektif.
3.4 Komposisi Fungsi dan Fungsi Invers 83

Bukti. Asumsikan bahwa f dan g bijektif. Akan dibuktikan bahwa g f


bijektif, yaitu:

1. g f injektif. Untuk sembarang x; y 2 A

(g f ) (x) = (g f ) (y) ) g (f (x)) = g (f (y)) ) f (x) = f (y) ) x = y

2. g f surjektif. Ambil sembarang z 2 C: Karena g surjektif, maka


9y 2 B sehingga z = g (y) : Dari adanya y 2 B; karena f surjektif,
maka 9x 2 B sehingga y = f (x) : Akibatnya,

z = g (y) = g (f (x)) = (g f ) (x) :

Teorema 3.5 (Hukum Asosiatif) Jika fungsi f : A ! B, g : B ! C, dan


h : C ! D; maka
(h g) f = h (g f ):

Bukti. Ambil sembarang x 2 A; maka

[(h g) f ] (x) = (h g) (f (x)) = h (g (f (x))) = h ((g f ) (x))


= [h (g f )] (x)

De…nisi 3.15 Jika f : A ! A; dide…nisikan f 1 = f; dan 8n 2 Z+ ; f n+1 =


f f n:

Contoh 3.27 Misalkan A = f1; 2; 3; 4g dan f : A ! A dide…nisikan dengan

f = f(1; 2); (2; 3); (3; 4); (4; 3)g;

maka

f2 = f f = f(1; 2); (2; 2); (3; 2); (4; 1)g


f3 = f f 2 = f f f = f(1; 2); (2; 2); (3; 2); (4; 2)g:

De…nisi 3.16 Jika R adalah relasi dari himpunan A ke B; maka konvers


dari R; dinotasikan Rc ; dide…nisikan

Rc := f(b; a)=(a; b) 2 Rg:


3.4 Komposisi Fungsi dan Fungsi Invers 84

Contoh 3.28 Misalkan A = f1; 2; 3g dan B = fw; x; yg; fungsi f : A ! B


dirumuskan
f = f(1; w); (2; x); (3; y)g;
maka
f c = f(w; 1); (x; 2); (y; 3)g
adalah fungsi dari B ke A, dan perhatikan bahwa

f c f = 1A dan f f c = 1B :

De…nisi 3.17 Misalkan f : A ! B; maka f dikatakan invertibel apabila


ada fungsi g : B ! A sedemikian sehingga

g f = 1A dan f g = 1B :

Contoh 3.29 Misalkan f; g : R ! R dirumuskan dengan


1
f (x) = 2x + 5 dan g(x) = (x 5);
2
maka
1
(g f )(x) = g(f (x)) = g(2x + 5) = ((2x + 5) 5) = x = 1R (x)
2
1 1
(f g)(x) = f (g(x)) = f ( (x 5)) = 2( (x 5)) + 5 = x = 1R (x):
2 2
Kesimpulannya, f dan g adalah dua fungsi yang saling invertibel.

Teorema 3.6 Jika f : A ! B adalah invertibel dan g : B ! A memenuhi

g f = 1A dan f g = 1B ;

maka g adalah tunggal (unik). Dalam hal ini g disebut invers dari f; dino-
tasikan g = f 1 ; selanjutnya
1
f = f c dan (f 1
) 1
= f:

Bukti. Misalkan fungsi h : B ! A juga memenuhi

h f = 1A dan f h = 1B ;

maka
h = h 1B = h (f g) = (h f ) g = 1A g = g
z
3.4 Komposisi Fungsi dan Fungsi Invers 85

Teorema 3.7 f : A ! B invertibel jika dan hanya jika f bijektif.

1
Bukti. ()) Misalkan f invertibel, maka ada tepat satu f sehingga
1 1
f f = 1A dan f f = 1B :

Akan dibuktikan f bijektif, yaitu:

1. f injektif. Untuk sembarang x; y 2 A,


1 1
f (x) = f (y) ) f (f (x)) = f (f (y)) ) 1A (x) = 1A (y) ) x = y

2. f surjektif. Ambil sembarang y 2 B; maka ada x 2 A; yaitu x =


f 1 (y) ; sehingga
1
f (x) = f f (y) = 1B (y) = y:

(() Asumsikan bahwa f bijektif, maka (8y 2 B) (9!x 2 A) sehingga y =


f (x) : Akibatnya, dapat dide…nisikan fungsi g : B ! A dengan g (y) = x
sehingga
g (f (x)) = x , (g f ) (x) = x , 1A (x) = x
dan
f (g (y)) = f (x) = y , (f g) (y) = y , 1B (y) = y
Jadi, g = f 1
sehingga f invertibel. z

Contoh 3.30 Fungsi f : R ! R yang dirumuskan dengan f (x) = x2 tidak


invertibel karena f tidak bijektif. Akan tetapi fungsi g : A ! B dimana
A = B = [0; +1) dan gpdirumuskan dengan g(x) = x2 adalah invertibel.
Dalam hal ini, g 1 (x) = x:

Teorema 3.8 Jika fungsi f : A ! B dan g : B ! C keduanya invertibel,


maka g f : A ! C adalah invertibel dan
1 1
(g f ) =f g 1:

1
Bukti. Asumsikan f dan g invertibel, maka ada funsi f : B ! A dan
1
g : C ! B sehingga
1 1
f f = 1A dan f f = 1B :
1 1
g g = 1B dan g g = 1C
3.4 Komposisi Fungsi dan Fungsi Invers 86

1
Berdasarkan Teorema 3.4, g f juga invertibel dengan invers (g f ) dan
1
(g f ) (g f ) = 1A

Di lain pihak,
1
(f g 1 ) (g f ) = f 1
g 1 g f= f 1
1B f
1
= f f = 1A

Jadi, (g f ) 1
=f 1
g 1: z

Contoh 3.31 Untuk m; b 2 R; m 6= 0; fungsi f : R ! R dide…nisikan den-


gan f = f(x; y) y = mx + bg merupakan fungsi invertibel, karena jelas f
bijektif. Untuk mendapatkan f 1 ; perhatikan bahwa
1
f = f(x; y) y = mx + bgc = f(y; x) y = mx + bg
1
= f(x; y) x = my + bg = f(x; y) y = (x bg:
m
1 1 1
Jadi, f : R ! R dide…nisikan dengan f (x) = m
(x bg:

De…nisi 3.18 Jika f : A ! B dan B1 B; maka


1
f (B1 ) = fx 2 A f (x) 2 B1 g

disebut preimej dari B1 oleh f:

Contoh 3.32 Misalkan A; B 2 Z+ dimana A = f1; 2; 3; 4; 5; 6g dan B =


f6; 7; 8; 9; 10g: Jika f : A ! B dengan

f = f(1; 7); (2; 7); (3; 8); (4; 6); (5; 9); (6; 9)g;

maka perhatikan contoh-contoh berikut.

1. Untuk B1 = f6; 8g B; diperoleh f 1 (B1 ) = f3; 4g; karena f (3) = 8


dan f (4) = 6; dan untuk sembarang a 2 A; f (a) 2 = B1 kecuali jika
1
a = 3 atau a = 4: Dalam hal ini jf (B1 )j = 2 = jB1 j :

2. Dalam hal B2 = f7; 8g B; karena f (1) = f (2) = 7 dan f (3) = 8;


maka kita dapatkan bahwa f 1 (B2 ) = f1; 2; 3g: Dalam hal ini, jf 1 (B2 )j =
3 > 2 = jB2 j :

3. Untuk B3 = f8; 9g B; maka f 1 (B3 ) = f3; 5; 6g karena f (5) =


f (6) = 9 dan f (3) = 8: Dalam hal ini, jf 1 (B3 )j = 3 > 2 = jB3 j :
3.4 Komposisi Fungsi dan Fungsi Invers 87

4. Untuk B4 = f8; 9; 10g B; maka f 1 (B3 ) = f3; 5; 6g karena f (5) =


f (6) = 9 dan f (3) = 8: Perhatikan bahwa jf 1 (B4 )j = jf 1 (B3 )j
walaupun B4 B3 : Hal ini karena tidak ada a 2 A sehingga f (a) = 10;
berarti f 1 (f10g) = ?:

Teorema 3.9 Jika f : A ! B dan B1 ; B2 B; maka

1 1 1
1. f (B1 \ B2 ) = f (B1 ) \ f (B2 ) ;
1 1 1
2. f (B1 [ B2 ) = f (B1 ) [ f (B2 ) ; dan
1 1
3. f B1 = f (B1 ):

Teorema 3.10 Misalkan f : A ! B untuk A dan B himpunan berhingga


dimana jAj = jBj ; maka ketiga pernyataan berikut ekuivalen:

1. f fungsi injektif,

2. f fungsi surjektif, dan

3. f fungsi invertibel.

Soal 3.4.1

1. Untuk A = f1; 2; 3; 4; 5; 6; 7g; ada berapa banyak fungsi bijektif f : A !


A yang memenuhi f (1) 6= 1?

2. Jika A = fx x 2 Z+ ; 1 x ng untuk suatu n 2 Z+ ; ada berapa


banyak fungsi bijektif f : A ! A yang memenuhi f (1) 6= 1?

Soal 3.4.2

1. Untuk A = f 2; 7g R dide…nisikan fungsi g; f : A ! R dengan

2x2 8
f (x) = 2x 4 dan g (x) = :
x+2
Periksalah bahwa f = g:

2. Dari Pertanyaan 1 apakah masih tetap f = g apabila g; f : A ! B


dimana B = f 7; 2g:
3.4 Komposisi Fungsi dan Fungsi Invers 88

Soal 3.4.3 Misalkan f; g; h : Z ! Z dide…nisikan dengan f (x) = x 1;


g(x) = 3x; dan
0; jika x genap
h(x) =
1; jika x ganjil.
Tentukan:

1. f g; g f; g h; h g; f (g h) ; dan (f g) h:

2. f 2 ; f 3 ; g 2 ; g 3 ; h2 ; h3 ; dan h500 :

Soal 3.4.4 Misalkan f : A ! B dan g : B ! C. Buktikan bahwa:

1. Jika g f surjektif, maka g surjektif.

2. Jika g f injektif, maka f injektif.

Soal 3.4.5 Pada masing-masing fungsi f : R ! R yang dide…nisikan berikut


ini, tentukan apakah f invertibel, jika ya, tentukan f 1 :

1. f = f(x; y) 2x + 3y = 7g:

2. f = f(x; y) ax + by = c; b 6= 0g:

3. f = f(x; y) y = x3 g:

4. f = f(x; y) y = x4 + xg:

Soal 3.4.6 Jika A; B Z+ dengan A = f1; 2; 3; 4; 5; 6; 7g, B = f2; 4; 6; 8; 10; 12g;


dan f : A ! B dimana

f = f(1; 2) ; (2; 6) ; (3; 6) ; (4; 8) ; (5; 6) ; (6; 8) ; (7; 12)g;

tentukan preimej B1 oleh f yang diketahui berikut ini.

a) B1 = f2g b) B1 = f6g c) B1 = f6; 8g


d) B1 = f6; 8; 10g e) B1 = f6; 8; 10; 12g f ) B1 = f10; 12g

Soal 3.4.7 Misalkan f : R ! R dide…nisikan dengan


8
< x + 7; x 0
f (x) = 2x + 5; 0 < x 3 :
:
x 1; 3 x
Tentukan:
3.5 Relasi Ekuivalensi 89

1 1 1 1 1 1
1. f ( 10); f (0); f (4); f (6); f (7); dan f (8):

2. preimej oleh f dari selang

a) [ 5; 1] b) [ 5; 0] c) [ 2; 4] d) [5; 10] e) [11; 17]

Soal 3.4.8 Misalkan f : R ! R dide…nisikan dengan f (x) = x2 ; Untuk


setiap subhimpunan B R berikut ini, carilah f 1 (B):

a) B = f0; 1g b) B = f 1; 0; 1g c) B = [0; 1]
d) B = [0; 1) e) B = [0; 4] f ) B = (0; 1] [ (4; 9)

Soal 3.4.9

1. Misalkan A = f1; 2; 3; 4; 5g dan B = f6; 7; 8; 9; 10; 11; 12g: Ada berapa


cara mende…nisikan fungsi f : A ! B sehingga f 1 (f6; 7; 8g) = f1; 2g?

2. Jika jAj = jCj = 5; ada berapa cara mende…nisikan fungsi f : A ! C


sehingga f invertibel.

Soal 3.4.10 Buktikan semua teorema di didalam subbab ini!

3.5 Relasi Ekuivalensi


De…nisi 3.19 Suatu relasi (biner) R pada himpunan A disebut re‡eksif
apabila berlaku
(x; x) 2 R; 8x 2 A:

Contoh 3.33 Jika A = f1; 2; 3; 4g; jelaskan bahwa

R1 = f(1; 1); (1; 4); (2; 2); (2; 1); (3; 4); (4; 4)g

tidak re‡eksif, sedangkan

R2 = f(x; y) 2 A A x yg

adalah re‡eksif.

Jawab. Perhatikan bahwa, karena (3; 3) 2


= R1 sedangkan 3 2 A; maka R1
tidak re‡eksif. Karena untuk setiap x 2 A berlaku x x; maka (x; x) 2 R2
untuk setiap x 2 A; akibatnya setiap x 2 A re‡eksif. z
3.5 Relasi Ekuivalensi 90

Konklusi 7 Berdasarkan Konklusi 1, jika jAj = n; maka diperoleh bahwa


2
jA Aj = n2 dan banyaknya relasi pada A adalah 2n : Sekarang, banyaknya
relasi re‡eksif pada A adalah
2
2(n n) :

Bukti. Misalkan A = fa1 ; a2 ; :::; an g; relasi R pada himpunan A re‡eksif


jika dan hanya jika A1 = f(ai ; ai ) ai 2 Ag R (perhatikan bahwa jA1 j =
n): Keanggotaan R yang lain merupakan anggota subhimpunan dari

A2 = f(ai ; aj ) ai ; aj 2 A; ai 6= aj g;

(perhatikan bahwa jA2 j = jA Aj jA1 j = n2 n). Dengan demikian ada


z
2
sebanyak 2(n n) cara untuk untuk mengkonstruksi R:

De…nisi 3.20 Suatu relasi R pada himpunan A disebut simetrik apabila


berlaku
(x; y) 2 R ) (y; x) 2 R; 8x; y 2 A:

Contoh 3.34 Misalkan A = f1; 2; 3g; maka relasi

1. R1 = f(1; 2); (2; 1); (1; 3); (3; 1)g adalah simetrik tetapi tidak re‡eksif
pada A:

2. R2 = f(1; 1); (2; 2); (3; 3); (3; 2)g adalah re‡eksif tetapi tidak simetrik
pada A:

3. R3 = f(1; 1); (2; 2); (3; 3)g adalah re‡eksif sekaligus simetrik pada A:

4. R4 = f(1; 1); (2; 2); (3; 3); (2; 3); (3; 2)g adalah re‡eksif sekaligus simetrik
pada A:

5. R5 = f(1; 1); (2; 3); (3; 3)g adalah bukan re‡eksif maupun simetrik pada
A:

Konklusi 8 Jika jAj = n; maka banyaknya relasi simetrik pada A adalah


n2 +n
2( 2
)
;

dan banyaknya relasi yang re‡eksif dan sekaligus simetrik adalah


n2 n
2( 2
)
:
3.5 Relasi Ekuivalensi 91

Bukti. Misalkan A = fa1 ; a2 ; :::; an g: Perhatikan bahwa himpunan A A


bisa dituliskan sebagai A A = A1 [ A2 ; dimana

A1 = f(ai ; ai ) 1 i ng dan
A2 = f(ai ; aj ) 1 i; j n; i 6= jg:

Dalam hal ini, A1 \ A2 = ?; jA1 j = n; dan

jA2 j = jA Aj jA1 j = n2 n

Perhatikan pula bahwa keanggotaan A2 dapat dibuat berpasang-pasangan,


yaitu (ai ; aj ) berpasangan dengan (aj ; ai ); sehingga di dalam A2 ada sebanyak
n2 n
2
pasang.
Untuk mengkonstruksi suatu relasi simetrik berarti mende…nisikan him-
punan yang anggotanya beberapa anggota dari A1 (boleh tidak ada) dan
beberapa pasang dari A2 (boleh tidak ada). Dengan demikian banyaknya
cara mengkonstruksi relasi simetrik adalah
n2 +n
n2 n
2n 2 2 =2 2
:

Untuk mengkonstruksi suatu relasi simetrik dan sekaligus re‡eksif berarti


mende…nisikan himpunan yang anggotanya semua anggota dari A1 dan be-
berapa pasang dari A2 (boleh tidak ada). Dengan demikian banyaknya cara
mengkonstruksi relasi simetrik dan sekaligus re‡eksif adalah
n2 n
n2 n 2
1 2 2 =2 :

De…nisi 3.21 Suatu relasi R pada himpunan A disebut transitif apabila


berlaku
(x; y) dan (y; z) 2 R ) (x; z) 2 R; 8x; y; z 2 A:

Contoh 3.35 Misalkan A = f1; 2; 3; 4g; maka relasi

R1 = f(1; 1); (2; 3); (3; 4); (2; 4)g

adalah transitif, sedangkan

R2 = f(1; 3); (3; 2)g

tidak transitif karena (1; 3); (3; 2) 2 R2 sedangakan (1; 2) 2


= R2 :
3.5 Relasi Ekuivalensi 92

De…nisi 3.22 Suatu relasi R pada himpunan A disebut antisimetrik apa-


bila berlaku
(x; y) dan (y; x) 2 R ) x = y; 8x; y 2 A:

Contoh 3.36 Diberikan himpunan semesta U; dan misalkan P(U ) adalah


himpunan kuasa dari U: Suatu R pada P(U ) yang dide…nisikan dengan (A; B) 2
R , A B merupakan relasi antisimetrik. Selain itu, perhatikan bahwa R
juga merupakan relasi re‡eksif dan transitif. Tetapi, R tidak simetrik karena
A B tidak selalu berakibat B A (ambil kasus A B; maka B * A).

Contoh 3.37 Misalkan A = f1; 2; 3g: Jika relasi R pada A dide…nisikan


dengan R = f(1; 2); (2; 1); (2; 3)g; maka R tidak simetrik karena (3; 2) 2 =
R; dan R juga bukan antisimetrik karena 1 6= 2: Jika dide…nisikan relasi
R1 = f(1; 1); (2; 2)g; maka R1 adalah simetrik dan juga antisimetrik. Jika
dide…nisikan relasi R2 = f(1; 1); (2; 2); (1; 2)g; maka R2 adalah antisimetrik,
tetapi tidak simetrik.

Sebagai latihan, buktikan konklusi berikut ini.

Konklusi 9 Jika jAj = n > 0; maka ada sebanyak


n2 n
(2n )(3 2
)

cara untuk mende…nisikan relasi antisimetrik pada A:

De…nisi 3.23 Relasi R pada himpunan A disebut ekuivalensi jika R adalah


sekaligus re‡eksif, simetrik, dan transitif.

Contoh 3.38 Misalkan A = f1; 2; 3g; maka relasi:

1. R1 = f(1; 1); (2; 2); (3; 3)g;


2. R2 = f(1; 1); (2; 2); (2; 3); (3; 2); (3; 3)g;
3. R3 = f(1; 1); (1; 3); (3; 1); (2; 2); (3; 3)g; dan
4. R4 = f(1; 1); (1; 2); (1; 3); (2; 2); (2; 3); (3; 2); (3; 3); (2; 1); (3; 1)g:

semuanya adalah relasi ekuivalensi.

De…nisi 3.24 Diberikan himpunan indeks I = f1; 2; :::; kg: Suatu partisi
P dari himpunan X adalah keluarga subhimpunan tak-kosong dari X;
ditulis P = fXi i 2 Ig; yang memenuhi:
3.5 Relasi Ekuivalensi 93

S
k
1. Xi = X; dan
i=1

2. untuk setiap i 6= j; Xi \ Xj = ?:

Masing-masing subhimpunan Xi disebut part dari partisi P: Berdasarkan


de…nisi tersebut, untuk sembarang x 2 X; maka ada tepat satu part dari P
(dengan kata lain ada tepat satu s 2 I) sehingga x 2 Xs :

Contoh 3.39 Misalkan X = f1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16g:
Keluarga subhimpunan fX1 ; X2 ; X3 ; X4 ; X5 g dengan

X1 = f1; 5; 9g; X2 = f2; 3; 4; 6; 7g; X3 = f8g;


X4 = f10; 11; 13; 14g; X5 = f12; 15; 16g

merupakan suatu partisi pada X:

Teorema 3.11 Misalkan S(n; k) menotasikan banyaknya partisi dari him-


punan X berangota n obyek ke dalam k part merupakan bilangan stirling
jenis kedua, yaitu
S(n; k); untuk 1 k n:

Teorema 3.12 Setiap relasi ekuivalensi R pada X menentukan suatu par-


tisi pada X: Dalam hal demikian, untuk sembarang x 2 X; suatu part yang
memuat x; yaitu
Cx = fy 2 X yRxg
disebut kelas ekuivalensi dari x:

Konvers dari teorema di atas juga benar, yaitu: setiap partisi dari X akan
menentukan suatu relasi ekuivalensi R pada X: Dalam hal ini, xRy jika dan
hanya jika x dan y berada di dalam suatu part yang sama.

Contoh 3.40 Misalkan X = f1; 2; 5; 6; 7; 9; 11g: Relasi R pada X dide…n-


isikan: xRy jika dan hanya jika (x y) habis dibagi 5: Dengan mudah dapat
diperiksa bahwa R adalah relasi ekuivalensi. Selanjutnya, partisi P pada X
yang ditentukan oleh R adalah

P = ff1; 6; 11g; f2; 7g; f5g; f9gg:


Chapter 4

Tiga Topik Pilihan

Pada bab ini dibahas tiga yang terkait dengan masalah komputasi:

Kompleksitas Komputasi.

Bahasa: Mesin Status Berhingga.

Relasi Rekurensi.

4.1 Kompleksitas Komputasi


Apabila syarat-syarat kebenaran suatu algoritme telah dipenuhi, maka per-
tanyaan yang muncul adalah berapa lama algoritme tersebut mampu menye-
lesaikan suatu problem. Kemudian, apabila satu problem dapat diselesaikan
oleh lebih dari satu algoritme, maka algoritma mana yang terbaik. Un-
tuk menjawab bertanyaan-pertanyaan ini diperlukan suatu parameter untuk
mengukur baik tidaknya suatu algoritma.
Faktanya, banyak hal yang mempengaruhi lama tidaknya suatu algoritma
menyelesaikan suatu problem, diantaranya: compiler, kecepatan eksekusi,
atau karakteristik komputer yang digunakan. Terlepas dari ukuran-ukuran
…sik ini, ada suatu ukuran matematis yang akan kita kedepankan dalam ba-
hasan ini, yaitu fungsi kompleksitas waktu (time-complexity function).
Fungsi kompleksitas waktu f (n) adalah yang mengambil nilai input intejer
positif n dan mepunyai sifat f (n) akan membesar jika n membesar. Sifat
inilah yang akan membawa kita pada masalah analisis algoritme yang terkait
dengan masalah nilai n besar. Untuk mempelajari fungsi kompleksitas waktu
diperlukan suatu pengertian atau konsep yang disebut dominasi fungsi.

94
4.1 Kompleksitas Komputasi 95

4.1.1 Dominasi Fungsi


De…nisi 4.1 Misalkan f; g : Z+ ! R: Kita katakan bahwa g mendominasi
f (atau f didominasi g) jika ada konstata m 2 R+ dan konstanta k 2 Z+
sedemikian sehingga

jf (n)j m jg (n)j ; dimana n k; 8n 2 Z+ :

Dari de…nisi di atas terlihat bahwa pembatasan nilai fungsi f oleh keli-
patan m nilai fungsi g berlaku untuk nilai n k; sedangkan untuk k < n
tidak menjadi perhatian. Ini menunjukkan bahwa dominansi fungsi hanya
berkaitan dengan batasan-batasan fungsi untuk nilai n besar.
Apabila f didominasi oleh g; maka f dikatakan berorder (paling banyak)
g dan ditulis dengan f 2 O (g) ; dimana O (g) dibaca dengan ”order g”atau
”Oh-besar dari g”. O (g) merepresentasikan himpunan semua fungsi dengan
domain Z+ dan kodomain R+ yang didominansi oleh g:

Contoh 4.1 Misalkan f; g : Z+ ! R+ dengan f (n) = 5n dan g (n) = n2 :


Dengan mudah dapat diperiksa bahwa f (n) > g (n) untuk 1 n 4: Akan
tetapi, jika 5 n; maka 5n n2 ; sehingga

jf (n)j = 5n n2 = jg (n)j ; untuk n 5:

Akibatnya, f 2 O (g) dengan m = 1 dan k = 5:

Berdasarkan De…nisi 4.1 bisa dibuktikan bahwa g 2 = O (f ) : Secara umum,


fungsi linear didominasi oleh fungsi kuadrat, akan tetapi fungsi kuadrat tidak
didominasi oleh fungsi linear.

Contoh 4.2 Misalkan f; g : Z+ ! R+ dengan f (n) = 5n2 + 3n + 1 dan


g (n) = n2 : Maka

jf (n)j = 5n2 + 3n + 1 = 5n2 + 3n + 1 5n2 + 3n2 + n2 = 9n2 = 9 jg (n)j ;

untuk semua n 1: Kesimpulannya, f 2 O (g) dengan m = 9 dan k = 1:


Dilain pihak

jg (n)j = n2 = n2 5n2 + 3n + 1 = 5n2 + 3n + 1 = jf (n)j ;

untuk semua n 1: Kesimpulannya, g 2 O (f ) : Jadi

O (f ) = O (g) = O(n2 ):

Dengan kata lain f dan g saling mendominasi satu sama lain.


4.1 Kompleksitas Komputasi 96

Dari contoh di atas ini, secara umum bisa dibuktikan bahwa fungsi kuadrat
saling mendominasi satu sama lain. Jadi, untuk sembarang fungsi kuadrat
adalah anggota dari O (n2 ) :

Contoh 4.3 Misalkan f; g : Z+ ! R+ dengan f (n) = 3n3 + 7n2 4n + 2


dan g (n) = n3 : Maka

jf (n)j = 3n3 + 7n2 4n + 2


3n3 + 7n2 + j 4nj + j2j
3n3 + 7n3 + 4n3 + 2n3 = 16n3 = 16 jg (n)j ;

untuk semua n 1: Kesimpulannya, f 2 O (g) dengan m = 16 dan k = 1:


Dilain pihak karena (7n 4) > 0 untuk semua n 1; kita dapatkan

jg (n)j = n3 = n3 3n3 + (7n 4) n + 2 = 3n3 + (7n 4) n + 2 = jf (n)j

untuk semua n 1: Kesimpulannya, g 2 O (f ) dengan m = 1 dan k = 1:


Jadi
O (f ) = O (g) = O(n3 ):
Dengan kata lain f dan g saling mendominasi satu sama lain.

Dari contoh di atas ini, secara umum bisa dibuktikan bahwa fungsi ku-
bik saling mendominasi satu sama lain. Jadi, untuk sembarang fungsi ku-
bik adalah anggota dari O (n3 ) : Juga bisa dibuktikan bahwa fungsi kuadrat
didominasi oleh fungsi kubik, tetapi fungsi kuadrat tidak mendominasi fungsi
kubik.

Contoh 4.4 Misalkan f; g : Z+ ! R+ dengan

f (n) = 1 + 2 + 3 + ::: + n; dan g (n) = 12 + 22 + 32 + ::: + n2 :

Dengan induksi matematika bisa dibuktikan bahwa


n (n + 1) n (n + 1) (2n + 1)
f (n) = ; dan g (n) = :
2 6
Jadi, f adalah fungsi kuadrat dan g adalah fungsi kubik, sehingga

f 2 O n2 ; dan g 2 O n3

Dari beberapa contoh dominansi fungsi di atas, sampailah kita pada dua
observasi berikut ini yang nantinya bisa di manfaatkan untuk analisis algo-
ritme.
4.1 Kompleksitas Komputasi 97

1. Misalkan f; g; h : Z+ ! R; dimana f 2 O (g) dan g 2 O (h) ; maka bisa


dibuktikan bahwa f 2 O (h) : Akan tetapi, jika h 2
= O (g) ; maka dapat
kita simpulkan bahwa: ”pernyataan f 2 O (g) " mempunyai batasan
lebih baik dari pada ”pernyataan f 2 O (h) ": Contonya, jika f (n) = 5,
g (n) = 5n; dan h (n) = n2 untuk setiap n 2 Z+ ; maka f 2 O (g), g 2
O (h) ; dan f 2 O (h) : Karena h 2
= O (g) ; maka f 2 O (g) mempunyai
batasan lebih baik dari pada f 2 O (h) :

2. Dalam tabel berikut diberikan beberapa bentuk Oh-besar yang sering


muncul dalam aplikasi analisis algoritme. Urutan batasan lebih baik
disusun dari atas ke bawah.
Tabel Oh-Besar
Bentuk Oh-besar Nama
O (1) Konstan
O (log2 n) Logaritmik
O (n) Linear
O (n log2 n) n log2 n
O (n2 ) Kuadratik
O (n3 ) Kubik
m
O (n ) ; m = 0; 1; 2; ::: Polinomial
O (cn ) ; c > 1 Eksponesial
O (n!) Faktorial

Contoh 4.5 Misalkan f; g; h : Z+ ! R dide…sikan dengan f (n) = 57,


g (n) = 5n 1; dan h (n) = 10 log2 n + 11: Maka f 2 O (1), g 2 O (n) ;
dan f 2 O (log2 n) :

Soal 4.1.1 Gunakan Tabel Oh-besar untuk menentukan bentuk Oh-besar fungsi-
fungsi f : Z+ ! R berikut. (Beberapa diantaranya kemudian buktikan!)

1. f (n) = n3 5n2 + 25n 165: Buktikan!


1
2. f (n) = 3 + sin n
: Buktikan!

3. f (n) = 5n + cos (2n 1) : Buktikan!

4. (n) = 3n5 + 5:2n : Buktikan!

5. f (n) = 5n2 + 3n log2 n + 3n

6. f (n) = 4n + (n 1)4 : Buktikan!


4.1 Kompleksitas Komputasi 98

7. f (n) = 1 + 3 + 5 + ::: + (2n 1) : Buktikan!

8. f (n) = 1 + 4 + 7 + ::: + (3n 2) : Buktikan!

9. f (n) = 7n + 5n log2 n 20:

10. f (n) = 3n + (n 2)! + 7n 12:

11. f (n) = 5n + 100n5 + 10n 10:

12. f (n) = 3n10 n2 log2 n + 3n:

13. f (n) = n3 n2 log2 n + 4n2 + 1:

14. f (n) = n! n10 log2 n2 + 42n + 1:

4.1.2 Analisis Algoritme


Tibalah saatnya sekarang kita akan menerapkan konsep dominansi fungsi un-
tuk mengukur berapa lama algoritme mampu menyelesaikan suatu problem,
dan pada gilirannya dapat juga digunakan untuk memilih algoritme mana
yang terbaik apabila ada lebih dari satu algoritme yang digunakan untuk
menyelesaikan satu problem.
Dalam hal ini kita de…nisikan fungsi komplesitas waktu f (n) sebagai
fungsi yang mengukur banyaknya operasi dalam suatu algoritme yang mem-
punyai variabel input n: Yang dimaksud dengan banyaknya operasi adalah
banyaknya operasi dasar (jumlah, kurang, kali, dan bagi), ditambahkan den-
gan assignment, dan perbandingan (ekspresi logika). Setelah kita mende…n-
isikan f (n) untuk suatu algoritme, kemudian dengan Tabel O-Besar kita
tentukan order dari f atau bentuk Oh-besar dari f sebagai ukuran e…siensi
algoritme yang bersangkutan.

Contoh 4.6 Misalkan diketahui Prosedur 8. De…nisikan fungsi f (n) yang


menyatakan banyaknya operasinya. Kemudian tentukan oder dari f:

Jawab. Berikut ini rincian untuk menghitung jumlah operasi dalam


prosedur 8:

1. Ada 4 operasi assignment sebagai statemen nilai awal untuk variabel-


variabel: sld, s, b, dan i.

2. Dalam blok statemen while yang diulang sebanyak n kali terdapat 6


operasi, yaitu: 2 assignmen, 3 jumlah, dan 1 kali.
4.1 Kompleksitas Komputasi 99

3. Jumlah operasi perbandingan ada (n + 1), yaitu:

(a) untuk i = 1 sampai dengan n yang menghasilkan keputusan diek-


sekusinya blok statemen while.
(b) untuk i = n + 1 yang menghasilkan keputusan berhentinya ek-
sekusi blok statemen while.

Dengan demikian kita dapat mende…nisikan fungsi f sebagai

f (n) = 4 + 6n + (n + 1) = 7n + 5; untuk n 1 dan n 2 Z+ :

Jadi f 2 O (n) ; berarti Prosedur 8 mempunyai ukuran waktu eksekusi


yang linear: z
PROSEDUR 8
procedure Saldo(n : intejer positif)
begin
sld := 100000
s := 50000
b := 0:01
i := 1
while i < n + 1 do
begin
sld := sld + s + b sld
i := i + 1
end
return(sld)
end

Contoh 4.7 Misalkan diketahui Prosedur 9 dan Prosedur 10. De…n-


isikan fungsi f (n) untuk masing-masing prosedur itu yang menyatakan jum-
lah operasinya. Kemudian tentukan oder dari f:

Jawab. Kita catat bahwa Prosedur 9 dan Prosedur 10 adalah sama-


sama algoritme yang digunakan untuk menghitung jumlah n intejer positif
pertama. Mereka juga menggunakan jenis statemen yang sama (berulang),
yang berbeda cuma penggunaan statemen for dan while. Dengan rincian
perhitungan yang sama dengan jawaban pada Contoh 4.6, maka de…nisi
fungsi f (n) untuk Prosedur 9 adalah

f (n) = 3n + 1:
4.1 Kompleksitas Komputasi 100

Nilai ini berasal dari: 1 assignment untuk nilai awal variabel y; n assignment
untuk variabel i; dan 2 operasi pada blok statemen for yang diulang sebanyak
n kali. Sedangkan de…nisi f (n) untuk Prosedur 10 adalah

f (n) = 5n + 3:

Nilai ini berasal dari: 2 assignment untuk nilai awal variabel y dan i; 4 operasi
pada blok statemen while yang diulang sebanyak n kali, dan ada (n + 1)
perbandingan pada statemen while. Jadi, Prosedur 9 dan Prosedur 10
sama-sama mempunyai ukuran waktu eksekusi yang linear: z
PROSEDUR 10
procedure Sum(n 2 Z+ )
PROSEDUR 9 begin
procedure Sum(n 2 Z+ ) y := 0
begin i := 1
y := 0 while (i < n) _ (i = n) do
for i := 1 to n do begin
y := y + i y := y + i
return(y) i := i + 1
end end
return(y)
end
Dapat kita simpulkan bahwa penggunaan statemen berulang untuk for
dan while adalah sama jika ditinjau pada ukuran waktu eksekusimya untuk
suatu problem yang sama. Sekarang kita perhatikan bahwa jumlah n intejer
positif pertama mepunyai rumus
X
n
n (n + 1)
i=
i=1
2

yang bisa dibuktikan dengan induksi matematik. Dengan mudah prosedur


perhitungan ruas kanan persamaan di atas dapat dituliskan dalam Prosedur
11.
PROSEDUR 11
procedure Sum(n : intejer)
begin
y := n (n + 1) =2
return(y)
end
Prosedur ini mempunyai fungsi komplesitas waktu f (n) = 4; sehingga f 2
O (1) : Jadi problem menghitung jumlah n intejer positif pertama yang ditulis
4.1 Kompleksitas Komputasi 101

dalam Prosedur 11 jauh lebih baik dari pada Prosedur 9 atau Prosedur
10.

Contoh 4.8 Misalkan diketahui Prosedur 12 untuk menghitung an . De…n-


isikan fungsi f (n) yang menyatakan jumlah operasinya, kemudian tentukan
order dari f (n):

PROSEDUR 12
procedure Power(a : real; n : intejer positif)
begin
y := 1:0
for i := 1 to n do
y := y a
return(y)
end
Jawab. Dengan rincian perhitungan yang sama dengan jawaban pada
contoh-contoh sebelumnya diperoleh bahwa

f (n) = 3n + 1:

Nilai ini berasal dari: 1 assignment untuk nilai awal variabel y; n assignment
untuk variabel i; dan 2 operasi pada blok statemen for yang diulang sebanyak
n kali. Jadi, f 2 O (n) ; sehingga lamanya waktu Prosedur 12 menghitung
an adalah linear. z
Pertanyaan yang timbul menyusul jawaban Contoh 1.17 adalah adakah
algoritme yang lain untuk menghitung an yang mempunyai fungsi komplek-
sitas waktu lebih baik. Untuk itu perhatikan analisis perhitungan berikut.
Berdasarkan de…nisi
an := aa:::a
| {z }
n kali
dan dengan sifat asosiatif perkalian diperoleh bahwa, untuk n genap:
n
an := (aa)(aa)::: (aa) = (a2 ) 2
| {z }
n
2
kali
dan untuk n ganjil:
bn c
an := (aa)(aa)::: (aa) a = (a2 )2
a
| {z } :
n
b 2 c kali
Dengan analisa di atas, perhatikan algoritma berikut ini.
4.1 Kompleksitas Komputasi 102

PROSEDUR 13
procedure Power(a : real, n : intejer positif)
begin
y := 1:0
i := n
while i > 0 do
begin
if i 6= 2 b 2i c then
y := y a
i := b 2i c
if i > 0 then
a := a a
end
return(y)
end

Contoh 4.9 Berdasarkan Prosedur 13, apabila diketahui sembarang bilan-


gan a : real; tentukan langkah-langkah untuk menghitung:
(a) a7 dan
(b) a8 :

Jawab.

1. Nilai awal: y := 1:0; i := n = 7: Karena i = 7 > 0; maka dilakukan


langkah-langkah pengulangan:

(a) i = 7; berarti ganjil, maka:


y := y a = 1:0 a = a
i := b 72 c = 3: Karena i = 3 > 0; maka
a := a a = a2 dan pengulangan berlanjut.
(b) i = 3; berarti i ganjil, maka:
y := y a = a a2 = a3
i := b 23 c = 1: Karena i = 1 > 0; maka
a := a2 a2 = a4 dan pengulangan berlanjut.
(c) i = 1; berarti i ganjil, maka:
y := y a = a3 a4 = a7
i := b 21 c = 0: Karena i = 0; maka proses BERHENTI.

Outputnya adalah y = a7 :
4.1 Kompleksitas Komputasi 103

2. Nilai awal: y = 1:0; i = n = 8: Karena i = 8 > 0; maka dilakukan


langkah-langkah pengulangan:

(a) i = 8; berarti genap, maka:


y := 1:0
i := b 28 c = 4: Karena i = 4 > 0; maka
a := a a = a2 dan pengulangan berlanjut.
(b) i = 4; berarti i genap, maka:
y := 1:0
i := b 24 c = 2: Karena i = 2 > 0; maka
a := a2 a2 = a4 dan pengulangan berlanjut.
(c) i = 2; berarti i genap, maka hitung:
y := 1:0
i := b 22 c = 1: Karena i = 1 > 0; maka:
a := a4 a4 = a8 dan pengulangan berlanjut.
(d) i = 1; berarti i ganjil, maka:
y := y a = 1:0 a8 = a8
i := b 21 c = 0: Karena i = 0; maka proses BERHENTI.

Outputnya adalah y = a8 :

z
Dari Contoh 4.9, bisa kita amati bahwa banyaknya proses pengulangan
untuk n = 7 adalah 3 = log2 4 + 1; dan untuk n = 8 adalah 4 = log2 8 + 1:
Sedangkan banyaknya perbandingan dalam proses pengulangan untuk n =
7 adalah 4; dan untuk n = 8 adalah 5: Secara umum untuk menentukan
fungsi komplesitas komputasi Prosedur 13, perhatikan pola perhitungan
banyaknya proses pengulangan dan perbandingan dalam tabel berikut ini.
n Banyaknya ulangan Banyaknya perbandingan
2 2 = log2 2 + 1 3 = log2 2 + 2
3 2 3
4 3 = log2 4 + 1 4 = log2 4 + 2
5 3 4
6 3 4
7 3 4
8 4 = log2 8 + 1 5 = log2 8 + 2
4.1 Kompleksitas Komputasi 104

n Banyaknya ulangan Banyaknya perbandingan


9 15 4 5
16 5 = log2 16 + 1 6 = log2 16 + 2
17 31 5 6
32 6 = log2 32 + 1 7 = log2 32 + 2
33 63 6 7
.. .. ..
. . .
2i i + 1 = log2 2i + 1 i + 2 = log2 2i + 2
(2i + 1) (2i+1 1) i+1 i+2
.. .. ..
. . .
Jadi order fungsi kompleksitas komputasi Prosedur 13 adalah O (log2 n) :
Hasil ini menunjukkan bahwa Prosedur 13 lebih baik dari Prosedur 12
untuk problem yang sama.

4.1.3 Algoritme Pelacaan Linear


Sebelum kita akhiri subbab ini, berikut ini diberikan algoritme untuk prob-
lem yang disebut pelacakan linear (linear search).
Misalkan diberikan barisan n bilangan: a1 ; a2 ; :::; an dan suatu bilangan
k yang disebut kunci. Problemnya adalah mencari k dalam barisan yang
bersangkutan. Artinya, apabila k sama dengan salah satu bilangan dalam
barisan, sebut saja k = ai ; maka output yang diberikan adalah nilai indeks
dari ai ; yaitu i. Apabila tidak ada satupun bilangan dalam barisan yang sama
dengan k; maka output yang diberikan adalah 0: Algoritme untuk problem
ini diberikan dalam prosedur berikut.
PROSEDUR 14
procedure LinearSearch(k : real, a1 ; a2 ; :::; an : real)
begin
i := 1
while ((i < n _ i = n) ^ k 6= ai ) do
i := i + 1
if (i < n _ i = n) then
lokasi := i
else
lokasi := 0
return(lokasi)
end
Untuk menentukan kompleksitan komputasi Prosedur 14, perhatikan
statemen pengulangan while. Kita amati bahwa selesainya proses pengu-
4.1 Kompleksitas Komputasi 105

langan bisa sangat cepat, rata-rata, atau bisa jadi lebih lama. Apabila k = a1
atau k = ai untuk suatu nilai konstan i yang kecil, maka proses cepat selesai.
Inilah yang disebut dengan kasus terbaik (best case). Dalam problem ini
komplesitas komputasi untuk kasus terbaiknya berorder konstan O (1) : Apa-
bila k = an atau k = ai untuk suatu nilai i yang cukup besar atau bahkan
k 6= ai untuk setiap nilai i, maka proses pengulangan berlangsung lama. In-
ilah yang disebut dengan kasus terburuk (worst case). Dalam problem ini
komplesitas komputasi untuk kasus terburuknya berorder linear O (n) : Dis-
amping kasus terbaik dan terburuk adalah kasus rata-rata (average case).
Penentuan ordernya diperlukan pengertian teori peluang yang pembahasan-
nya diluar jangkauan diktat ini.
Sebagai rangkuman subbab ini, sekali lagi kita tekankan bahwa apa yang
kita pelajari dalam kompleksitas komputasi adalah berkenaan dengan nilai
n yang besar. Sedangkan untuk nilai n yang kecil, bisa diselesaikan dalam
kasus per kasus (case by case). Ini dapat kita perhatikan dalam ilustrasi
berikut.
Misalkan ada dua algoritme, yaitu A dan B; untuk menyelesaikan suatu
problem yang sama. Misalkan pula f adalah fungsi kompleksitas komputasi
untuk A dengan f (n) = 1000n, dan g adalah fungsi kompleksitas komputasi
untuk B dengan g (n) = n2 : Jelas bahwa karena f linear dan g kuadratik,
berdasarkan urutan pada Tabel O-Besar, algoritme A lebih baik dari B: Je-
las pernyataan ini mengacu untuk nilai n yang besar. Namun yang menjadi
pernyataan berikutnya adalah sejauh mana n dianggap ”besar”dan n diang-
gap ”kecil”. Untuk itu diperlukan informasi tambahan yang intinya adalah
menentukan nilai k sehingga

jf (n)j m:jg (n) j; untuk setiap n k:

Dalam kasus kita ini,

jf (n)j = 1000n n2 = jg (n) j; untuk setiap n 1000:

Jadi yang dimaksud dengan n ”besar” kalau n 1000; dan n dikatakan


”kecil”kalau n < 1000: Untuk n yang kecil Algoritme B lebih baik dari A:
Waktu pemrosesan (Running Time) adalah waktu yang diperlukan untuk
mengeksekusi suatu algoritme atau program. Sebagai ilustrasi, tabel berikut
ini memberikan perkiraan waktu pemrosesan algoritme untuk beberapa order
kompleksitas dan untuk nilai n : 2; 16; dan 64:. Diasumsi kecepatan eksekusi
komputer adalah satu operasi diselesaikan dalam waktu 10 6 detik (10 6 = 1
mikro detik), sehingga satuan isian tabelnya adalah mikro detik.
4.1 Kompleksitas Komputasi 106

Problem Order
Berukuran n log2 n n n log2 n n2 2n n!
2 1 2 2 4 4 2
16 4 16 64 256 6; 5 104 2; 1 1013
64 6 64 384 4096 1; 84 1019 > 1089

Soal 4.1.2 Buatlah analisis pada beberapa algoritme berikut:

1. Panggil Algoritme 2, dan de…nisikan fungsi f (n) untuk algoritma itu


yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:

2. Panggil Algoritme 5, dan de…nisikan fungsi f (n) untuk algoritma itu


yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:

3. Panggil Algoritme 6, dan de…nisikan fungsi f (n) untuk algoritma itu


yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:

4. Panggil Algoritme 10, dan de…nisikan fungsi f (n) untuk algoritma


itu yang menyatakan jumlah operasinya. Kemudian tentukan oder dari
f:

5. Panggil Algoritme 7 dan Algoritma 8, dan de…nisikan fungsi f (n)


untuk masing algoritma itu yang menyatakan jumlah operasinya. Ke-
mudian buatlah analisis e…siensinya:

6. Pada masing-masing segmen program pseudocode berikut, f (n) meny-


atakan banyaknya kali statemen sum := sum + 1 dieksekusi. Tentukan
f (n) dan ordernya.

begin
sum := 0
for i := 1 to n do
(a)
for j := 1 to n do
sum := sum + 1
end
begin
sum := 0
for i := 1 to n do
(b)
for j := 1 to n n do
sum := sum + 1
end
4.2 Bahasa: Mesin Status Berhingga 107

begin
sum := 0
for i := 1 to n do
(c)
for j := i to n do
sum := sum + 1
end
begin
sum := 0
i := n
while i > 0 do
(d) begin
sum := sum + 1
i := b 2i c
end
end

4.2 Bahasa: Mesin Status Berhingga


Dengan menggunakan konsep himpunan dan fungsi, pada bab ini akan diba-
has suatu model abstrak yang disebut dengan mesin status berhingga (…-
nite state machine) atau disebut juga sirkuit sekuensial (sequential circuit).
Sirkuit yang dimaksud adalah satu dari dua tipe dasar kontrol sirkuit yang
terdapat di dalam komputer dijitel. Sesuai dengan namanya, mesin sta-
tus berhingga mempunyai sejumlah berhingga status internal dimana mesin
mampu mengingat informasi tertentu ketika berada di dalam status khusus.

4.2.1 Bahasa: Teori Himpunan String


Barisan simbol, atau karakter, merupakan peranan kunci di dalam pemros-
esan informasi oleh komputer. Sebagai gambaran, program komputer dapat
direpresentasikan sebagai barisan karakter yang berhingga. Suatu cara al-
jabar diperlukan untuk menangani barisan berhingga tersebut atau menan-
gani string.
Pada bagian ini kita gunakan untuk menotasikan himpunan berhingga
tak-kosong dari simbol-simbol, himpunan ini disebut alfabet. Sebagai misal,
= f0; 1g atau = fa; b; c; dg: Agar tidak rancu dengan pengertian string
nantinya, perlu disepakati bahwa keanggotaan tidak dibolehkan jajaran
lebih dari satu simbol. Misalnya, pende…nisian = f0; 1; 2; 11; 13g atau
= fa; b; c; ab; bbcg tidak diperkenankan.
4.2 Bahasa: Mesin Status Berhingga 108

Suatu string dapat dikonstruksi dari anggota-anggota melalui suatu


cara yang sistematik dengan ide rekursif sebagaimana dinyatakan dalam
de…nisi berikut ini.

De…nisi 4.2 Jika adalah suatu alfabet dan n 2 Z+ ; dide…nisikan kuasa


dari secara rekursif sebagai berikut:

1
1. = ; dan
n+1 n
2. = fxy=x 2 ;y 2 g; xy menotasikan jajaran x dan y:

Contoh 4.10 Misalkan = f0; 1g; maka


2
= f00; 01; 10; 11g;
3
= f000; 001; 010; 011; 100; 101; 110; 111g; dan
4
= f0000; 0001; 0010; 0011; 0100; 0101; 0110; 0111;
1000; 1001; 1010; 1011; 1100; 1101; 1110; 1111g:

Misalkan = fa; b; cg; maka


2
= faa; ab; ac; ba; bb; bc; ca; cb; ccg; dan
3
= faaa; aab; ::; acc; baa; bab; ::; bcc; caa; cab; ::; cccg:

Suatu anggota dari n disebut string n-simbol atau string dengan pan-
jang n: Secara umum, jika j j = m; maka j n j = mn :

De…nisi 4.3 Untuk alfabet ; dide…nisikan 0 = f g; dimana meno-


tasikan string kosong, yaitu string yang tidak memuat simbol apapun yang
diambil dari :

Dari de…nisi di atas perlu dicatat bahwa:

1. 2
= :

2. Karena 2
= ; maka f g :

3. Karena jf gj = 1 6= 0 = j?j; maka f g =


6 ?:

De…nisi 4.4 Jika adalah suatu alfabet, maka

+
S
1
n
S n
1. = = ; dan
n=1 n2Z+
4.2 Bahasa: Mesin Status Berhingga 109

S
1
n
2. = :
n=0

Dari de…nisi di atas, jelas bahwa


+ 0
= [ :

Sebagai tambahan dari istilah string, anggota-anggota dari + atau


disebut juga dengan kata (word) atau kadangkala disebut dengan kalimat
(sentence). Perlu juga dicatat bahwa walaupun himpunan + dan tak-
hingga, anggota-anggotanya diacu sebagai string simbol yang berhingga.

Contoh 4.11 Untuk = f0; 1g; himpunan memuat semua string dari
simbol \0" dan \1" termasuk string kosong. Untuk n kecil, kita masih
mampu menuliskan semua anggota dari n :
Misalkan
= f ; 0; 1; :::; 9; +; ; ; =; (; )g;
dimana menotasikan spasi (blank). Untuk pende…nisian ini, cukup
sulit menggambarkan semua anggota ; dan untuk n > 2 terlalu banyak
menuliskan semua anggota dari n : Suatu contoh anggota dari adalah
ekspresi aritmatik
(6 + 3)=(5 (34 21));
atau suatu string tanpa makna

+)(4 + )) 1=3(:

+
De…nisi 4.5 Jika w1 ; w2 2 ; maka bisa ditulis

w1 = x1 x2 :::xm dan w2 = y1 y2 :::yn ; untuk m; n 2 Z+ ;

dan x1 ; x2; :::; xm ; y1 ; y2; :::; yn 2 : String w1 dan w2 dikatakan sama, notasi
w1 = w2 jika

m = n; dan xi = yi untuk setiap 1 i m:

De…nisi 4.6 Misalkan w = x1 x2 :::xn 2 + ; dimana xi 2 untuk setiap


1 i n: Panjang dari w, notasi jjwjj ; dide…nisikan sebagai nilai dari
n: Untuk kasus string kosong ; maka jj jj = 0:
4.2 Bahasa: Mesin Status Berhingga 110

+
De…nisi 4.7 Jika x; y 2 dengan

x = x1 x2 :::xm dan y = y1 y2 :::yn ; untuk m; n 2 Z+ ; dan

x1 ; x2; :::; xm ; y1 ; y2; :::; yn 2 :


Rangkaian (concatenation) dari x dan y, dinotasikan xy, dide…nisikan se-
bagai string
xy = x1 x2 :::xm y1 y2 :::yn :
Rangkaian dari x dan adalah

x = x1 x2 :::xm = x1 x2 :::xm = x:

Rangkaian dari dan adalah

= :

Rangkaian merupakan operasi biner yang tertutup pada (juga + ),


bersifat asosiatif tetapi tidak komutatif (kecuali jika j j = 1), dan karena
x = x = x untuk setiap x 2 ; maka merupakan unsur identitas dari
terhadap operasi rangkaian tersebut. Keterkaitan operasi rangkaian dan
panjang string diantaranya dapat dilihat dalam sifat berikut ini.

jjxyjj = jjxjj + jjyjj ; untuk setiap x; y 2 ;


kxk = kx k; untuk setiap x 2 ; dan
kzk = jjz jj = jj zjj = 1; untuk setiap z 2 :

De…nisi 4.8 Untuk setiap x 2 ; dide…nisikan kuasa (power) dari x se-


cara rekursif sebagai

x0 = ; x1 = x; x2 = xx; x3 = x2 x; :::; xn+1 = xn x; untuk n 2 N.

Contoh 4.12 Jika = f0; 1g dan x = 01; maka

x0 = ; x1 = 01; x2 = 0101; x3 = 010101;


kx2 k = 4 = 2kxk; x3 = 6 = 3kxk; dan secara umum
kxn k = nkxk; untuk n > 0:

De…nisi 4.9 Jika x; y 2 dan w = xy; maka string x disebut pre…ks


(pre…x) dari w; dan jika y 6= ; maka x disebut pre…ks sejati (proper pre-
…x) dari w: Dalam hal ini, y disebut sa…ks (su¢ x) dari w; dan jika x 6= ;
maka y disebut sa…ks sejati (proper pre…x) dari w:
4.2 Bahasa: Mesin Status Berhingga 111

De…nisi 4.10 Jika x; y; z 2 dan w = xyz; maka y disebut dengan sub-


string dari w: Apabila sedikitnya satu dari x dan z bukan ; maka y disebut
substring sejati dari w:

De…nisi 4.11 Diberikan alfabet ; sembarang subhimpunan dari disebut


dengan bahasa (language) atas : Dalam de…nisi ini termasuk himpunan
kosong ? dan disebut bahasa kosong (empty language).

De…nisi 4.12 Untuk alfabet dan bahasa A; B ; rangkaian dari A


dan B; dinotasikan AB; dide…nisikan sebagai

AB = fab=a 2 A; b 2 Bg:

Teorema 4.1 Untuk alfabet dan bahasa A; B; C ; maka:

1. Af g = f gA = A

2. (AB)C = A(BC)

3. A(B [ C) = AB [ AC

4. (B [ C)A = BA [ CA

5. A(B \ C) AB \ AC

6. (B \ C)A BA \ CA

De…nisi 4.13 Diberikan bahasa A ; kita dapat mengkonstruksi bahasa-


bahasa yang lain dengan langkah-langkah sebagai berikut:

1. A0 = f g; A1 = A; dan untuk setiap n 2 Z+ ;

An+1 = fab=a 2 A; b 2 An g:
S
2. A+ = An ; disebut ketertutupan positif (positive closure) dari A:
n2Z+

3. A = A+ [ f g; disebut ketertutupan Kleene (Kleene closure) dari


A:
4.2 Bahasa: Mesin Status Berhingga 112

4.2.2 Mesin Status Berhingga


Sebelum mende…nisikan mesin status berhingga, diberikan ilustrasi berikut.
Vending machine menjual dua minuman kaleng: Cola (C) dan Fanta (F)
dengan harga sama 20c/: Mesin tersebut menerima koin: Nikel (senilai 5c/),
Dime (10c/), dan Kuarter (25c/), dan mampu memberikan pengembalian.
Jika seseorang ingin membeli Fanta dengan menggunakan 2 Nikel dan 1
Dime, cara kerja mesin tersebut digambarkan dalam tabel berikut ini.

t0 t1 t2 t3 t4
Status (1) s0 (4) s1 (5c/) (7) s2 (10c/) (10) s3 (20c/) (10) s0
Input (2) 5c/ (5) 5c/ (8) 10c/ (11) W
Output (3) K(Kosong) (6) K (9) K (12) F

Jika seseorang ingin membeli Cola dengan menggunakan 1 Kuarter, cara


kerja mesin tersebut digambarkan dalam tabel berikut ini.

t0 t1 t2
Status (1) s0 (4) s1 (20c/) (7) s0
Input (2) 25c/ (5) B
Output (3) 5c/ (kembalian) (6) C

Ilustrasi pada vending machine di atas merupakan gambaran yang umum-


nya terjadi pada cara kerja komputer dijitel atau sistem komunikasi telefon.
Hal ini dapat diabstraksikan sebagai berikut:

1. Pada setiap waktu, mesin berada dalam keadaan salah satu dari sejum-
lah berhingga status. Status-status ini disebut dengan status internal,
dinyatakan: s0; s1; s2; ...,sk :

2. Mesin siap menerima input sejumlah berhingga simbol. Himpunan


simbol-simbol input yang mungkin disebut alfabet input, dinotasikan
I: Dalam ilustrasi di atas,

I = f5c/; 10c/; 25c/; W; Bg:

3. Output dan status berikutnya ditentukan oleh kombinasi input dan sta-
tus internal. Himpunan semua simbol output yang mungkin disebut
alfabet output, dinotasikan O:

O = f5c/; 10c/; 15c/; 20c/; F; C; K (kosong)g:


4.3 Relasi Rekurensi 113

De…nisi 4.14 Mesin Status Berhingga adalah rangkai-5, notasi M =


(S; I; O; ; $); dimana S adalah himpunan internal status untuk M ; I adalah
alfabet input untuk M ; O adalah alfabet output untuk M ; : S I ! S adalah
fungsi status berhingga; dan $ : S I ! O adalah fungsi output.

Karena dalam mesin status berhingga, S; I; dan O adalah himpunan-


himpunan berhingga, maka (s; x) dan $(s; x) untuk setiap s 2 S dan untuk
semua x 2 I dapat direpresentasikan dengan tabel yang disebut Tabel Status,
atau dapat direpresentasikan dengan Diagram Status.

Contoh 4.13 Dide…nisikan mesin status berhingga M = (S; I; O; ; $); di-


mana S = fs0; s1 ; s3 g; I = O = f0; 1g; dan ; $ diberikan dalam tabel status
berikut.
$
0 1 0 1
s0 s0 s1 0 0
s1 s2 s1 0 0
s2 s0 s1 0 1
Jika M diberi input string 1010; maka outputnya string 0010: Hasil ini
dinyatakan dalam tabel berikut.
Status s0 s1 s2 s1 s2
Input 1 0 1 0 0
Output 0 0 1 0

4.3 Relasi Rekurensi


Telah diperkenalkan dalam bahasan sebelumnya tentang de…nisi rekursif,
yang pada dasarnya merumuskan suku ke-n dari suatu barisan tidak secara
eksplisit melainkan nilainya bergantung pada suku-suku sebelumnya. Den-
gan ide hampir serupa, dalam bab ini kita akan membahas fungsi a (n) ; yang
seperti biasanya lebih enak dituliskan dengan an (untuk n 2 Z+ ); dimana ni-
lai an bergantung nilai suku-suku sebelunya sebelumnya: an 1 ; an 2 ; ..., a1 ;
a0 : Relasi yang demikian disebut relasi rekurensi.

4.3.1 Relasi Rekurensi Linear Order Pertama


Untuk memahami relasi rekurensi linear order pertama, sebagai gambaran
ada baiknya kita ingat kembali de…nisi progresi geometrik (deret geometri).
Progresi geometrik adalah barisan tak hingga, contohnya: 5, 15, 45, 135; ...,
4.3 Relasi Rekurensi 114

dimana pembagian setiap suku (kecuali suku pertama) dengan tepat satu
suku sebelumnya adalah konstan, disebut rasio bersama. Pada contoh kita
rasio bersamanya adalah 3; karena 3 = 15 5
= 45
15
= 135
45
= :::: Jika a0 ; a1 ; a2 ;
... adalah progresi geometrik dengan rasio bersama adalah r; maka an+1 an
=r
untuk n = 0; 1; 2; 3; :::Jika r = 3; kita dapatkan an+1 = 3an ; dengan n 0:
Relasi rekurensi an+1 = 3an ; n 0 tidak mende…nisikan progresi geometrik
yang tunggal, karena barisan 3; 9; 27; 81, ... juga memenuhi relasi yang
bersangkutan. Jadi untuk mende…nisikan suatu progresi geometrik dari su-
atu relasi rekurensi diperlukan nilai satu suku dari relasi itu.
Hubungan suku an+1 dengan suku sebelumnya dalam relasi rekurensi
menentukan jenis relasi rekurensi yang bersangkutan. Jika nilai an+1 hanya
bergantung pada nilai an (tepat satu suku sebelumnya), maka relasi yang
demikian dikatakan mempunyai order pertama. Selanjutnya, jika tipe hubun-
gannya juga linear dengan koe…sien konstan, maka disebut relasi rekurensi
homogen linear order pertama dengan koe…sien kontan.
Nilai a0 atau a1 yang diketahui pada suatu relasi rekurensi disebut nilai
syarat batas. Ekspresi a0 = A, dimana A konstan, juga disebut sebagai syarat
awal. Syarat batas menentukan ketunggalan solusi.

an+1 = 3an ; n 0; a0 = 5: (4.1)

Lima suku pertama menentukan pola berikut ini:

a0 = 5;
a1 = 3a0 = 3 (5) ;
a2 = 3a1 = 3 (3 (5)) = 32 (5) ;
a3 = 3a2 = 3 32 (5) = 33 (5) ;
a4 = 3a3 = 3 33 (5) = 34 (5) :

Hasil ini membawa kita pada rumusan bahwa untuk setiap n 0; an = 5(3n )
yang disebut solusi umum dari Relasi (4.1).
Kesimpulan: Solusi umum dari suatu relasi rekurensi

an+1 = dan ; n 0; d konstan, dan a0 = A

adalah tunggal dan dirumuskan dengan

an = Adn ; n 0:
4.3 Relasi Rekurensi 115

Contoh 4.14 Selesaikan relasi rekurensi an = 7an 1 ; dimana n 1 dan


a2 = 98: Ini hanyalah suatu bentuk alternatif dari relasi an+1 = 7an untuk
n 0 dan a2 = 98: Oleh karena itu solusi umumnya mempunyai bentuk
an = a0 (7n ) : Karena a2 = 98 = a0 (72 ) ; akibatnya a0 = 2; dan an = 2 (7n )
untuk n 0 adalah solusi tunggal.

Relasi rekurensi an+1 dan = 0 adalah linear karena setiap sukunya


berpangkat satu. Juga di dalam relasi linear tidak ada produk seperti an an 1 ;
yang bisa muncul di dalam relasi rekurensi tak-linear seperti an+1 3an an 1 =
0: Akan tetapi, adakalanya suatu relasi rekurensi tak-lineaar bisa ditransfor-
masikan ke dalam bentuk linear dengan menggunakan substitusi aljabar.

Contoh 4.15 Carilah a12 jika a2n+1 = 5a2n ; dimana an > 0 untuk n 0; dan
a0 = 2: Walaupun relasi rekurensi ini tak-linear, jika dimisalkan bn = a2n ;
maka diperoleh relasi yang baru bn+1 = 5bn untuk n 0; dan p nb0 = 4; adalah
n
linear dengan solusi bn = 4 (5 ) : Dengan demikian an = 2( 5) untuk n 0;
p 12
dan a12 = 2 5 = 31250:

Bentuk umum relasi rekurensi linear order pertama dengan koe…sien kon-
stan adalah:
an+1 + can = f (n) ; n 0;
dimana c adalah konstan dan f adalah fungsi yang mengambil nilai intejer
tak-negatif. Jika f (n) = 0 untuk setiap n 2 N; relasi ini disebut homogen.
Salah satu metode mengurutkan data yang cukup populer, walaupun
tidak yang paling e…sien, adalah suatu teknik yang disebut Bubble Sort.
disini input adalah intejer positif n dan larik bilangan nyata x1 ; x2 ; :::; xn
yang akan diurutkan dalam urutan menaik. Perhatikan algoritme Bubble
Sort yang dinyatakan dalam prosedur berikut:
PROSEDUR 15
procedure BubbleSort(x1 ; x2 ; :::; xn : real)
begin
for i := 1 to n 1 do
for j := n downto i + 1 do
if xj < xj 1 do
begin
temp := xj 1
xj 1 := xj
xj := temp
end
end
4.3 Relasi Rekurensi 116

Untuk menghitung fungsi komplesitas waktu f (n) ketika algoritme di atas


digunakan pada suatu input larik berukuran n 1; kita harus menghitung
jumlah total perbandingan dalam mengurutkan n bilangan yang bersangku-
tan. Jika an menyatakan banyaknya perbandingan, maka kita dapatkan relasi
rekurensi berikut:

an = an 1 + (n 1); n 2; a1 = 0:

Relasi ini adalah linear order pertama dan tak-homogen. Karena tidak ada
teknik umum untuk menyelesaikannya, kita harus mencari polanya:

a1 = 0
a2 = a1 + (2 1) = 1
a3 = a2 + (3 1) = 1 + 2
a4 = a3 + (4 1) = 1 + 2 + 3
a5 = a4 + (5 1) = 1 + 2 + 3 + 4:

Kita dapatkan rumus umum yang kebenarannya dapat dibuktikan dengan


prinsip induksi matematik, yaitu:

n2 n
an = 1 + 2 + 3 + ::: + (n 1) = :
2

Kesimpulannya, Bubble Sort menentukan fungsi komplesitas waktu f :


+
Z ! R dengan
n2 n
f (n) = an = :
2
Akibatnya, ukuran running time algoritme di atas adalah f 2 O (n2 ) :

4.3.2 Relasi Rekurensi Linear Homogen Order Kedua


dengan Koe…sien Konstan
Misalkan k 2 Z+ dan Cn (6= 0) ; Cn 1 ; :::; Cn k (6= 0) adalah bilangan-bilangan
nyata. Jika an ; untuk n 0; adalah fungsi diskret, maka

Cn an + Cn 1 an 1 + ::: + Cn k an k = f (n) ; n k;

adalah relasi rekurensi linear berorder k dengan koe…sien konstan. Jika


f (n) = 0 untuk setiap n 0; relasi ini disebut homogen; ingkarannya adalah
tak-homogen.
4.3 Relasi Rekurensi 117

Pada bagian ini kita akan membahas relasi homogen berorder dua:

Cn an + Cn 1 an 1 + Cn 2 an 2 = 0; n 2: (4.2)

Pada dasarnya kita akan mencari solusi dalam bentuk an = crn ; dimana
c 6= 0 dan r 6= 0:
Substitusikan an = crn ke Persamaan (4.2), kita dapatkan

Cn crn + Cn 1 crn 1
+ Cn 2 crn 2
= 0: (4.3)

Karena c; r 6= 0; Persamaan (4.3) menjadi

Cn r2 + Cn 1 r + Cn 2 =0

merupakan persamaan kuadrat yang disebut persamaan karakteristik. Mis-


alkan r1 dan r2 adalah akar dari persamaan itu, maka ada tiga kemungkinan:

A. r1 dan r2 adalah dua real berbeda.


B. r1 dan r2 adalah dua kompleks saling konjugate.
C. r1 dan r2 adalah dua real yang sama.

KASUS-A (Dua Akar Real Berbeda)

Contoh 4.16 Selesaikan relasi rekurensi

an + an 1 6an 2 = 0; n 2; dan a0 = 1; a1 = 8: (4.4)

Jawab. Misalkan an = crn ; dimana c 6= 0 dan r 6= 0; adalah solusi dari


Relasi (4.4), maka diperoleh persamaan karakteristik

0 = r2 + r 6 = (r 2) (r + 3) ) r = 2; 3

adalah dua akar real berbeda, sehingga an = 2n dan an = ( 3)n merupakan


dua solusi [sebagaimana juga b (2n ) dan d ( 3)n untuk sembarang konstan
b; d]. Kedua solusi ini adalah bebas linear kerena yang satu bukan merupakan
kelipatan yang lain. Jadi,

an = c1 (2n ) + c2 ( 3)n

merupakan solusi umum. Kemudian, karena a0 = 1 dan a1 = 8; dengan


substitusi, kita peroleh c1 = 1 dan c2 = 2: Akhirnya, kita dapatkan jawaban

an = 2n 2 ( 3)n :
4.3 Relasi Rekurensi 118

a3 = 2100 2 ( 3)100
z
KASUS-B (Dua Akar Kompleks Saling Konjuget)
Sebelum masuk ke pembahasan inti, kita ingat kembali Teorema DeMoivre:

(cos + i sin )n = cos n + i sin n ; n 0:

Jika
z = x + iy 2 C; z 6= 0;
dapat kita tuliskan
p y
z = r (cos + i sin ) ; r= x2 + y 2 ; dan = tan untuk x 6= 0:
x
Jika x = 0; maka untuk y > 0;

z = yi = yi sin = y cos + i sin ;


2 2 2
dan untuk y < 0;
3 3 3
z = yi = jyj i sin = jyj cos + i sin :
2 2 2
Dalam semua kasus,

z n = rn (cos n + i sin n ) n 0:
p 10
Contoh 4.17 Tentukan 1 + 3i :
p p
Jawab. Misalkan z = 1 + 3i; maka x = 1; y = 3, r = 2; dan = 3:
Jadi
p 10 10 10
1+ 3i = 210 cos + i sin
3 3
4 4
= 210 cos + i sin
3 3
p ! !
1 3
= 210 i
2 2
p
= 29 1 + 3i :

z
4.3 Relasi Rekurensi 119

Contoh 4.18 Selesaikan relasi rekurensi an = 2 (an 1 an 2 ) ; dimana n


2 dan a0 = 1; a1 = 2:

Jawab. Misalkan an = crn ; dimana c 6= 0 dan r 6= 0; adalah solusinya,


maka persamaan karakteristiknya

r2 2r + 2 = 0 ) r = 1 i

adalah dua akar kompleks saling konjuget. Akibatnya, solusi umumnya


adalah
an = c1 (1 + i)n + c2 (1 i)n ;
dimana c1 dan c2 menyatakan sembarang konstan kompleks. Dengan DeMoivre:
p n n p n n
an = c1 ( 2)n cos + i sin + c2 ( 2)n cos + i sin
4 4 4 4
p n n n p n n n
= c1 ( 2) cos + i sin + c2 ( 2) cos i sin
4 4 4 4
p n n n
= ( 2) k1 cos + k2 sin ;
4 4
dimana k1 = c1 + c2 dan k2 = (c1 c2 ) i:
p
1 = a0 = ( 2)0 (k1 cos 0 + k2 sin 0) = k1
p
2 = a1 = ( 2)1 k1 cos + k2 sin = 1 + k2 ;
4 4
sehingga k1 = 1 dan k2 = 1: Jadi, jawabannya
p n n
an = ( 2)n cos + sin ; n 0:
4 4
p 200 200
( 2)200 cos + sin
4 4
: 1267 650 600 228 229 401 496 703 205 376 z
KASUS-C (Dua Akar Real Sama)

Contoh 4.19 Selesaikan relasi rekurensi an+2 = 4an+1 4an ; dimana n 0


dan a0 = 1; a1 = 3:

Jawab. Misalkan an = crn ; dimana c 6= 0 dan r 6= 0; adalah solusinya,


maka persamaan karakteristiknya

0 = r2 4r + 4 = (r 2)2 ) r = 2
4.3 Relasi Rekurensi 120

adalah dua akar real sama. Berarti solusinya an = 2n . Oleh karena itu, kita
harus mencari satu solusi yang lagi bebas linear, ambil saja an = f (n) 2n ,
dimana f (n) tidak konstan..Untuk mencari f (n), digunakan substitusi

f (n + 2) 2n+2 = 4f (n + 1) 2n+1 4f (n) 2n ,


f (n + 2) = 2f (n + 1) f (n) : (4.5)

Diperoleh bahwa f (n) = n memenuhi Persamaan (4.5). Jadi an = n2n


adalah solusi kedua yang bebas linear dengan an = 2n : Akibatnya, kita dap-
atkan solusi umum
an = c1 (2)n + c2 n (2)n :
Untuk a0 = 1; a1 = 3; didapatkan solusi khusus
1
an = (2)n + n (2)n = (2)n + n (2)n 1
; n 0:
2
z
Bentuk Umum: Jika

Cn an + Cn 1 an 1 + ::: + Cn k an k = 0; dengan

Cn (6= 0) ; Cn 1 ; :::; Cn k (6= 0) adalah kontanta real,


dan r adalah akar karakteristik dengan multiplisitas m; dimana 2 m k;
maka bagian dari solusi umum yang melibatkan akar r mempunyai bentuk

A0 rn + A1 nrn + A1 n2 rn + ::: + Am 1 nm 1 rn

= A0 + A1 n + A1 n2 + ::: + Am 1 nm 1
rn
dimana A0 ; A1 ; A1 ; :::; Am 1 adalah sembarang konstan.

4.3.3 Relasi Rekurensi Tak-homogen


Kita perhatikan relasi rekurensi

an an 1 = f (n); n 1;

f (n) tidak semuanya nol untuk nilai n; maka solusinya


X
n
an = a0 + f (i) : (4.6)
i=1

Kita dapat
Pn menyelesaikan Persamaan (4.6) dalam n; jika kita dapat meru-
muskan i=1 f (i) :
4.3 Relasi Rekurensi 121

Contoh 4.20 Selesaikan relasi rekurensi

an an 1 = 3n2 ; n 1; dan a0 = 7:

Jawab. Disini f (n) = 3n2 ; sehingga solusi umumnya

X
n
an = a0 + f (i)
i=1
X
n
= 7+ 3i2
i=1
1
= 7+ (n) (n + 1) (2n + 1)
2
z
Chapter 5

Pengantar Teori Graf

5.1 Konsep Dasar Graf


De…nisi 5.1 Misalkan V adalah himpunan takkosong dan berhingga, dan
misalkan pula E V V . Pasangan (V; E) disebut graph berarah (di-
rected graph – digraph) pada V , dimana V disebut himpunan verteks atau
node, dan E disebut himpunan (directed) edge atau arc. Selanjutnya un-
tuk menyatakan graph seperti ini ditulis G = (V; E). Jika E himpunan edge
takberarah, G = (V; E) disebut graph takberarah.

Contoh 5.1 Dide…nisikan suatu graf berarah G = (V; E) dengan

V = fa; b; c; d; eg dan E = f(a; a); (a; b); (a; d); (b; c)g:

Graf ini direpresenratasikan pada Gambar 5.1.

122
5.1 Konsep Dasar Graf 123

a b

d c

Gambar 5.1

Untuk sembarang edge, misalkan e = (x; y), maka e disebut insiden (inci-
dent) dengan verteks x dan y; x disebut adjacent ke y; dan y disebut adjacent
dari x: Suatu verteks yang adjacent ke dirinya sendiri disebut loop. Suatu
verteks yang tidak adjacent dengan verteks apapun termasuk dirinya sendiri
disebut verteks terisolasi. Pada Gambar 5.1, edge (a; a) adalah loop dan
verteks e adalah verteks yang terisolasi.

Contoh 5.2 Dide…nisikan suatu graf takberarah G = (V; E) dengan

V = fa; b; c; dg dan E = ffa; bg; fa; dg; fb; cgg

Graf ini direpresenratasikan pada Gambar 5.2.

a b

d c

Gambar 5.2
5.1 Konsep Dasar Graf 124

Perhatikan bahwa pada pede…nisian graf takberarah edge-nya diberikan


dalam bentuk himpunan, misalnya saja fa; bg: Sesuai dengan pengertian him-
punan, ini berarti urutannya tidak diperhatikan, sehingga fa; bg = fb; ag:
Sedangkan pada pede…nisian graf berarah, edge-nya menggunakan pasangan
terurut, sehingga (a; b) 6= (b; a): Di dalam diktat ini, jika diberikan suatu graf
G tanpa keterangan apapun (berarah atau takberarah), maka yang dimaksud
adalah graf takberarah dan tanpa loop.

De…nisi 5.2 Misalkan x dan y (tidak perlu berbeda) adalah verteks di dalam
suatu graph takberarah G = (V; E). Suatu walk x y di dalam G adalah
barisan berhingga (bebas loop)

x = x0 ; e1 ; x2 ; e2 ; : : : ; en 1 ; xn 1 ; en ; xn = y

dari verteks dan edge (selang-seling) yang diawali dan diakhiri oleh verteks.
Panjang dari suatu walk, dinotasikan dengan n, adalah banyaknya edge
yang terdapat di dalam walk itu. Jika n = 0; berati walk tidak memuat edge,
maka walk disebut trivial.
Jika x = y; walk disebut tertutup. Jika x 6= y; walk disebut terbuka.

Catatan bahwa bahwa barisan pada de…nisi walk di atas, verteks dan
edge boleh diulang.

De…nisi 5.3 Pandang sembarang walk x y dalam suatu graph takberarah


G = (V; E).

Jika tidak ada edge yang diulang di dalam barisan x y; maka walk
disebut trail x y: Trail yang tertutup (verteks awal dan akhir sama)
disebut sirkuit (circuit). Catatan bahwa di dalam trail, verteks boleh
berulang.

Jika setiap verteks hanya muncul sekali (tidak boleh berulang) di dalam
barisan x y; maka walk disebut path x y: Path yang tertutup (verteks
awal dan akhir sama) disebut cycle.

Pengertian pada de…nisi di atas juga berlaku untuk graph berarah. Hanya
saja peristilahannya menjadi: trail berarah, sirkuit berarah, path berarah, dan
cycle berarah.
5.1 Konsep Dasar Graf 125

a b

d c

Gambar 5.3

Contoh 5.3 Dari Gambar 5.3, buatlah suatu contoh:

1. walk a c dengan panjang 5:

2. trail a d dengan panjang 5:

3. sirkuit a a dengan panjang 6:

4. path a c dengan panjang 4:

5. cycle a a dengan panjang 5:

Jawab. Berdasarkan de…nisinya, berikut ini diberikan masing-masing


satu contoh untuk:

1. walk a c dengan panjang 5 :

fa; bg; fb; dg; fd; ag; fa; bg; fb; cg:

2. trail a d dengan panjang 5 :

fa; bg; fb; eg; fe; cg; fc; bg; fb; dg:

3. sirkuit a a dengan panjang 6 :

fa; bg; fb; eg; fe; cg; fc; bg; fb; dg; fd; ag:
5.1 Konsep Dasar Graf 126

4. path a c dengan panjang 4 :

fa; bg; fb; dg; fd; eg; fe; cg:

5. cycle a a dengan panjang 5 :

fa; bg; fb; dg; fd; eg; fe; cg; fc; ag:

Teorema 5.1 Misalkan G = (V; E) adalah graph takberarah dengan a; b 2 V


dan a 6= b: Jika ada trail di dalam G dari a ke b, maka ada path di dalam G
dari a ke b.

Bukti. Karena ada trail a b di dalam G; maka dapat dipilih satu yang
terpendek, sebut saja

fa; x1 g; fx1 ; x2 g; :::; fxn ; bg: (5.1)

Jika trail ini tidak mempunyai path, maka ia pasti mempunyai bentuk

fa; x1 g; fx1 ; x2 g; :::; fxk 1 ; xk g; fxk ; xk+1 g; fxk+1 ; xk+2 g; :::;


fxm 1 ; xm g; fxm ; xm+1 g; fxm+1 ; xm+2 g; :::; fxn ; bg;

dimana k < m dan xk = xm ; bisa terjadi k = 0 dan a(= x0 ) = xm ; atau,


m = n + 1 dan xk = b(= xn+1 ): Ini adalah suatu kontradiksi, karena barisan

fa; x1 g; fx1 ; x2 g; :::; fxk 1 ; xk g; fxm ; xm+1 g; :::; fxn ; bg

merupakan trail yang lebih pendek dari trail (5.1). z

De…nisi 5.4 Graph takberarah G disebut terhubung (connected) jika untuk


setiap dua verteks yang berbeda terdapat suatu path yang menghubungkan
keduanya. Jika tidak demikian G disebut takterhubung (disconnected).
5.1 Konsep Dasar Graf 127

a b

e d c
f
Gambar 5.4

Contoh 5.4 Gambar 5.2 dan Gambar 5.3 merupakan contoh graf terhubung.
Sedangkan Gambar 5.4 merupakan contoh graf takterhubung.

Gambar 5.4 merepresentasikan graf takterhubung G = (V; E); dimana V


dapat dipartisikan dalam dua subhimpunan V1 = fa; b; c; dg dan V2 = fe; f g
sedemikian sehingga tidak ada edge fx; yg 2 E dengan x 2 V1 dan y 2
V2 . Dalam hal ini Graf G terpartisikan menjadi 2 graf yaitu G1 = (V1 ; E1 )
dan G2 = (V2 ; E2 ), dimana E1 = ffa; bg; fa; dg; fb; cgg dan E2 = ffe; f gg:
Anggota partisi dari suatu graf takterhubung disebut dengan komponen.
Secara umum, suatu graf dikatakan takterhubung jika ia terpartisikan
menjadi lebih dari satu komponen, sedangkan suatu graf dikatakan terhubung
jika ia terdiri dari hanya satu komponen. Banyaknya komponen dari suatu
graf G dinotasikan dengan K(G): Misalnya, untuk graf G pada Gambar 5.4,
K(G) = 2:

De…nisi 5.5 Misalkan V himpunan takkosong dan berhingga. Pasangan


(V; E) menentukan multigraf G dengan himpunan verteks V dan himpunan
edge E, jika untuk suatu x; y 2 V , ada dua atau lebih edge dalam E berben-
tuk:

(x; y) untuk multigraph berarah, atau

fx; yg untuk multigrapah takberarah.


5.1 Konsep Dasar Graf 128

a b

d c

Gambar 5.5

Gambar 5.5 merupakan contoh representasi dari suatu multigraf berarah.

b e f

a g

c d
Gambar 5.6

Soal 5.1.1 Untuk suatu graf G = (V; E) yang direpresentasikan pada Gam-
bar 5.6, tentukan:

1. contoh suatu walk b d di dalam G yang bukan suatu trail.

2. contoh suatu trail b d di dalam G yang bukan suatu path.

3. contoh suatu path b d di dalam G.

4. contoh suatu walk tertutup b b di dalam G yang bukan suatu sirkuit.

5. contoh suatu sirkuit b b di dalam G yang bukan suatu cycle.


5.1 Konsep Dasar Graf 129

6. contoh suatu cycle b d di dalam G.

7. banyaknya semua path b f:

a k l

d g m

e f h i
Gambar 5.7

Soal 5.1.2 Misalkan a dan b adalah dua verteks yang berbeda di dalam su-
atu graf takberarah dan terhubung. Jarak dari a ke b dide…nisikan sebagai
panjang path terpendek dari a ke b (jika a = b; jaraknya dide…nisikan sebagai
0). Untuk suatu graf G yang direpresentasikan pada Gambar 5.7, tentukan
jarak dari verteks d ke verteks yang lain di dalam G:

Soal 5.1.3 Untuk n 2; misalkan G = (V; E) adalah graf tak berarah tanpa
loop dimana V adalah himpunan semua bitstring dengan panjang n; dan

E = ffu; vg u; v 2 V dan u; v berbeda di tepat 2 posisig:

Ilustrasi, misalkan n = 4; u = 1011; v = 0010; dan w = 1010; maka fu; vg 2


E; fu; wg 2 = E; dan fv; wg 2
= E: Tentukan K(G):

Soal 5.1.4 Tujuh kota a; b; c; d; e; f; dan g dihubungkan oleh suatu sistem


jalan bebas hambatan sebagai berikut:

I-22 menghubungkan dari a ke c melalui b:

I-33 menghubungkan dari c ke d melalui b dan dilanjutkan ke f:


5.1 Konsep Dasar Graf 130

I-44 menghubungkan dari d ke a melalui e:

I-55 menghubungkan dari f ke b melalui g:

I-66 menghubungkan dari g ke d:

Terkait dengan sistem tersebut, jawablah 6 pertanyaan berikut ini.

1. Dengan merepresentasikan kota sebagai verteks, segmen jalan bebas


hambatan sebagai edge berarah, gambarkan graf berarah yang merep-
resentasikan sistem di atas.

2. Daftarkan semua path dari g ke a:

3. Tentukan jumlah terkecil segmen jalan yang diharuskan tertutup agar


perjalanan dari b ke d terhalang.

4. Apakah mungkin berangkat dari c dan kembali lagi ke c; dan mengun-


jungi semua kota yang lain masing-masing hanya sekali.

5. Jawablah Pentanyaan 4: jika tidak diharuskan kembali lagi ke c:

6. Apakah mungkin berangkat dari suatu kota melalui semua jalan masing-
masing hanya sekali. (Pada pertanyaan ini dibolehkan mengunjungi
suatu kota lebih dari satu kali, dan tidak diharuskan kota terakhir sama
dengan kota saat berangkat.)

Soal 5.1.5 Misalkan G = (V; E) adalah graf takberarah dan tanpa loop, dan
misalkan pula fa; bg adalah suatu edge di dalam G: Buktikan bahwa fa; bg
adalah anggota dari suatu cycle di dalam G jika dan hanya jika penghapusan
fa; bg (verteks a dan b tidak ikut terhapus) tidak menghasilkan graf takter-
hubung.

Soal 5.1.6 Berikan suatu contoh graf G yang apabila dihapus sembarang
edge-nya menghasilkan graf takterhubung.

Soal 5.1.7 Jawablah 2 pertanyaan berikut ini.

1. Jika G = (V; E) adalah graf takberarah dan tanpa loop, dengan jV j = v


dan jEj = e; buktikan bahwa

2e v2 v:
5.1 Konsep Dasar Graf 131

2. Nyatakan rumusan seperti Pertanyaan 1: untuk kasus graf berarah.

Soal 5.1.8 Misalkan G = (V; E) adalah graf takberarah. De…nisikan suatu


relasi R pada V dengan aRb jika dan hanya jika ada suatu path a b di
dalam G. Buktikan bahwa R adalah relasi ekuivalensi. Terangkan bertuk
partisi dari V yang disebabkan oleh R:

5.1.1 Subgraf, Komplemen, dan Isomor…sma


De…nisi 5.6 Misalkan G = (V; E) sembarang graf berarah maupun tidak.
G1 = (V1 ; E1 ) disebut subgraf dari G jika ? 6= V1 V dan E1 E, dimana
setiap edge dalam E1 insiden dengan verteks di dalam V1 .

Dari de…nisi ini jelas bahwa G adalah subgraf dari dirinya sendiri, atau
G disebut subgraf trivial dari G:

b e f

c d
Gambar 5.8

Contoh 5.5 Misalkan Gambar 5.6 merepresentasikan graf G = (V; E), maka

V = fa; b; c; d; e; f; gg dan
E = ffa; bg; fa; cg; fb; cg; fb; eg; fc; dg; fd; eg; fe; f g; fe; gg; ff; ggg:

Berdasarkan de…nisinya, graf G1 = (V1 ; E1 ) yang direpresentasikan pada


Gambar 5.8 merupakan subgraf dari G: Dalam hal ini

V1 = fa; b; c; d; e; f g V dan
E1 = ffa; cg; fb; eg; fc; dg; fd; eg; fe; f g E:
5.1 Konsep Dasar Graf 132

Perhatikan bahwa subgraf taktrivial dari graf G = (V; E) diperoleh den-


gan cara menghapus beberapa verteks atau edge dari G: Yang dimaksud meng-
hapus edge, misalnya fx; yg; adalah menghilangkan fx; yg dari keanggotaan
E; sedangkan verteks x dan y tidak terhapus dari keanggotaan V: Sedangkan
yang dimaksud dengan menghapus verteks, misalkan a; adalah menghapus
a dari keanggotaan V dan menghapus semua edge yang inseden dengan a
dari keanggotaan E: Pada Contoh 5.5, subgraf G1 diperoleh dari menghapus
verteks g (otomatis fe; gg dan ff; gg terhapus), edge fa; bg dan fb; cg:

De…nisi 5.7 Misalkan G = (V; E) graph berarah maupun tidak. Misalkan


pula G1 = (V1 ; E1 ) subgraph dari G. Jika V1 = V , maka G1 disebut subgraph
spanning dari G.

Dari de…nisi ini, perhatikan bahwa subgraf spanning G1 diperoleh dari


hanya menghapus beberapa edge (tanpa verteks) di dalam G: Graf pada Gam-
bar 5.9 merupakan subgraf spanning dari graf pada Gambar 5.7.

a k l

d g m

e f h i
Gambar 5.9

De…nisi 5.8 Misalkan G = (V; E) adalah graf berarah atau tidak. Jika ? 6=
U V , subgraf dari G yang dibangkitkan oleh U; dinotasikan hU i; adalah
subgraf dengan himpunan verteks U dimana jika x; y 2 U dan (x; y) (atau
fx; yg) 2 E, maka (x; y) (atau fx; yg) merupakan edge dari hU i:
Subgraf G0 dari graf G = (V; E) disebut subgraf induced jika ada ? 6=
U V sehingga G0 = hU i:
5.1 Konsep Dasar Graf 133

Dari de…nisi ini, perhatikan bahwa jika diberikan U V dan U 6= ?;


subgraf induced hU i dari G merupakan graf yang diperoleh dari menghapus
semua verteks didalam V yang bukan anggota U: Dengan demikian, subgraf
induced dari G diperoleh dari hanya mengapus verteks dari G:

Contoh 5.6 Diberikan graf G = (V; E) yang direpresentasikan pada Gambar


5.6. Jika U = fa; b; d; f; gg; tentukan subgraf induced G0 = hU i dari G:

Jawab. Nyatakan G0 = (U; E 0 ); dan hapuslah verteks c dan e dari G;


maka
E 0 = ffa; bg; ff; ggg:
G0 direpresentasikan pada Gambar 5.10 z

b f

a g

d
Gambar 5.10

De…nisi 5.9 Misalkan V himpunan n verteks. Graph lengkap pada V ,


ditulis Kn , adalah graph takberarah bebas loop dimana untuk semua a; b 2 V ,
a 6= b, ada suatu edge fa; bg.

n
Dari de…nisi ini, perhatikan bahwa jumlah edge dari Kn adalah 2
: Gam-
bar 5.11 mencontohkan representasi dari K1 ; K2 ; K3 ; dan K4 :
5.1 Konsep Dasar Graf 134

K1 K2 K3 K4

Gambar 5.11

De…nisi 5.10 Misalkan G adalah graf takberarah bebas loop dengan n verteks.
Komplemen dari G, dinotasikan G, adalah subgraph dari Kn yang memuat
semua verteks dari G dan semua edge dari Kn yang tidak termuat dalam G.
Jika G = Kn , maka G hanya mempunyai n verteks tetapi tidak mempunyai
edge sama sekali. Graph seperti ini disebut graf null.

Contoh 5.7 Misalkan G = (V; E) dengan V = fa; b; c; dg dan

E = ffa; bg; fa; cg; fc; dgg:

Tentukan G:

Jawab. Nyatakan G = (V; E): Karena himpunan semua edge dari K4


adalah
ffa; bg; fa; cg; fa; dg; fb; cg; fb; dg; fc; dgg;
maka
E = ffa; dg; fb; cg; fb; dgg:
Gambarkan representasi dari G dan G: z

De…nisi 5.11 Misalkan G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) adalah dua graf


takberarah. Suatu fungsi f : V1 ! V2 disebut suatu isomor…sme graf jika:

1. f bijektif.

2. untuk semua a; b 2 V1 ; fa; bg 2 E1 jhj ff (a); f (b)g 2 E2 .

Jika fungsi semacam ini ada, G1 dan G2 disebut isomor…k.


5.1 Konsep Dasar Graf 135

G1 G2
a b
t

c d v u

Gambar 5.12

Contoh 5.8 Tunjukkan bahwa graf G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) yang


direpresentasikan pada Gambar 5.12 adalah isomo…k.

Jawab. Karena jV1 j = jV2 j ; maka syarat pertama dipenuhi, yaitu ada
fungsi bijektif dari V1 ke V2 : Dari 4! fungsi bijektif yang bisa (mungkin)
dide…nisikan dari V1 ke V2 , dipilih fungsi bijektif yang memenuhi syarat
kedua. Dengan melihat struktur graf G1 dan G2 ; dipilih fungsi bijektif
h : V1 ! V2 yang de…nisinya

h(a) = w; h(b) = u; h(c) = v; dan h(d) = t:

Perhatikan bahwa syarat kedua dipenuhi oleh h; yaitu

fa; bg 2 V1 $ fh(a); h(b)g = fw; ug 2 V2 ;


fa; cg 2 V1 $ fh(a); h(c)g = fw; vg 2 V2 ;
fc; dg 2 V1 $ fh(c); h(d)g = fv; tg 2 V2 ; dan
fb; dg 2 V1 $ fh(b); h(d)g = fu; tg 2 V2 :

Jadi, h adalah isomor…sme dari G1 ke G2 ; sehingga G1 dan G2 isomor…k. z


Syarat pertama pada De…nisi 5.11 menunjukkan bahwa jika jV1 j 6= jV2 j ;
maka langsung dapat kita simpulkan bahwa G1 dan G2 tidak isomor…k
(karena tidak akan ada fungsi bijektif dari V1 ke V2 ). Demikian pula un-
tuk syarat yang kedua, apabila jE1 j 6= jE2 j ; maka dapat dipastikan bahwa
G1 dan G2 tidak isomor…k (karena tidak akan mungkin ada padanan 1 1
antar edge dari G1 dan G2 ). Walaupun demikian, seandainya telah dipenuhi
bahwa jV1 j = jV2 j dan jE1 j = jE2 j ; kita masih belum bisa menentukan bahwa
G1 dan G2 isomor…k. Dalam hal ini kita hanya bisa mende…nisikan fungsi
5.1 Konsep Dasar Graf 136

bijektif yang belum tentu memenuhi syarat yang kedua. Perhatikan contoh
berikut ini.

G1 G2

a 1

e b 5 2

d c 4 3

Gambar 5.13

Contoh 5.9 Jelaskan bahwa graf G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) yang


direpresentasikan pada Gambar 5.13 adalah tidak isomo…k.

Jawab. Pada contoh ini dipenuhi bahwa jV1 j = jV2 j dan jE1 j = jE2 j ;
sehingga jelas ada fungsi bijektif dari V1 ke V2 : Kemudian, adakah fungsi
bijektif yang memenuhi syarat kedua pada de…nisi? Jika dilihat dari strutur
G1 ; graf ini memuat subgraf K4 : Seandainya ada isomor…sme dari G1 ke G2 ;
maka isomor…sme ini akan memetakan K4 dari dalam G1 ke K4 di dalam
G2 : Akan tetapi, faktanya struktur G2 tidak mempunyai subgraf K4 : Kes-
impulannya, tidak ada isomor…sme dari G1 ke G2 ; berarti G1 dan G2 tidak
isomor…k. z
5.1 Konsep Dasar Graf 137

(G1) (G2)

b c u

a d v w

e f
x y z

Gambar 5.14

Soal 5.1.9 Misalkan graf G1 dan G2 direpresentasikan pada Gambar 5.14.


Periksalah apakah G1 dan G2 isomor…k.

(G ) (G 1 ) (G2)
a a
b b b

c c
d d d
f f f

g i g i g i
h j h j h j

Gambar 5.15

Soal 5.1.10 Misalkan graf G; G1 ; dan G2 direpresentasikan pada Gambar


5.15.
5.1 Konsep Dasar Graf 138

1. Terangkan (berdasarkan pengertian penghapusan) mengapa G1 meru-


pakan subgraf induced dari G:

2. Terangkan (berdasarkan pengertian penghapusan) mengapa G2 meru-


pakan subgraf induced dari G:

3. Tentukan banyaknya subgraf terhubung dari G yang mempunyai 4 verteks


dan satu cycle.

4. Gambarkan subgraf dari G yang dibangkitkan oleh himpunan verteks


U = fb; c; d; f; i; jg:

5. Misalkan edge e = fc; f g: Jika G e dimaknai menghapus edge e di


dalam G; gambarkan subgraf G e:

6. Berikan suatu contoh subgraf dari G yang bukan subgraf induced.

7. Tentukan banyaknya subgraf spanning dari G:

8. Tentukan banyaknya subgraf spanning dari G yang terhubung.

9. Tentukan banyaknya subgraf spanning dari G yang mempunyai verteks


a sebagai verteks terisolasi.

Soal 5.1.11 Misalkan G = (V; E) adalah suatu graf takberarah.

1. Tentukan banyaknya subgraf spanning yang juga merupakan subgraf in-


duced dari G:

2. Jika jV j 2 dan setiap subgraf induced dari G terhubung, jelaskan


bagaimana struktur dari G:

Soal 5.1.12 Tentukan semua graf takberarah tanpa loop yang mempunyai 4
verteks dan saling tidak isomor…k. Kemudian, ada berapa banyak diantara
jawaban tersebut yang terhubung.

Soal 5.1.13 Tentukan banyaknya path yang panjangnya 4 di dalam K7 : Se-


lanjutnya, jika m; n 2 Z+ dengan m < n; tentukan banyaknya path yang
panjangnya m di dalam Kn :

Soal 5.1.14 Misalkan G adalah graf takberarah tanpa loop yang mempunyai
v verteks dan e edge. Tentukan jumlah semua edge di dalam G:
5.1 Konsep Dasar Graf 139

Soal 5.1.15 Misalkan G1 dan G2 adalah graf takberarah tanpa loop. Buk-
tikan bahwa G1 dan G2 isomor…k jika dan hanya jika G1 dan G2 isomor…k.

G1 G2

a b 1

5 2
c
d

e 4 3

Gambar 5.16

Soal 5.1.16 Perluaslah De…nisi 5.11 untuk graf berarah. Kemudian, perik-
salah apakah graf G1 dan G2 yang direpresentasikan pada Gambar 5.15 adalah
isomor…k.

5.1.2 Derajat Verteks


De…nisi 5.12 Misalkan G graf takberarah atau multigraph. Untuk setiap
verteks v dari G, derajat v, dinotasikan deg(v), adalah banyaknya edge dalam
G yang insiden dengan v. Suatu loop dipandang sebagai dua edge insiden
untuk v.

Sebagai contoh untuk graf pada Gambar 5.9,


deg(a) = deg(d) = deg(e) = deg(l) = deg(m) = deg(i) = 1;
deg(g) = deg(h) = 2; deg(k) = deg(f ) = 3; dan deg(j) = 0:

Teorema 5.2 Jika G = (V; E) adalah graph takberarah atau multigraph,


maka X
deg(v) = 2 jEj :
v2V
5.1 Konsep Dasar Graf 140

Bukti. Perhatikan bahwa setiap edge fa; bg di dalam G memberikan


hitungan 1 pada deg(a) dan deg(b): P
Akibatnya, untuk setiap edge di dalam
G
P menyumbangkan hitungan 2 pada v2V deg(v): Dengan demikian, 2 jEj =
v2V deg(v): z

Akibat 5.1 Untuk sembarang graph atau multigraph, jumlah semua verteks
berderajat ganjil adalah genap.

Bukti. Jelas bahwa jumlah semua verteks berderajat genap adalah


genap. Sedangkan menurut Teorema 5.2, jumlah derajat adalah semua verteks
adalah genap. Akibatnya, jumlah semua verteks berderajat ganjil haruslah
genap. z

De…nisi 5.13 Suatu graf takberarah (atau multigraf) disebut reguler jika
setiap verteksnya berderajat sama. Jika deg(v) = k untuk setiap verteks v;
maka grafnya disebut reguler-k: Graf lengkap Kn merupakan graf reguler-
(n 1):

Misalkan graf G = (V; E) adalah reguler-k; berdasarkan Teorema 5.2,


maka
X
deg(v) = 2 jEj , k jV j = 2 jEj ,
v2V
2 jEj
jV j = : (5.2)
k
Contoh 5.10 Misalkan graf G = (V; E) adalah reguler-k. Jelaskan hubun-
gan antara jumlah verteks dan edge yang mungkin, yang terkait dengan pen-
de…nisian dan struktur G, untuk nilai 1 k 3:

Jawab. Kita gunakan Persamaan (5.2) untuk menjawab pertanyaan ini.


Untuk k = 1; berarti jV j = 2 jEj. Graf reguler-1 mempunyai jumlah
verteks genap, terpartisikan menjadi jvj2
komponen (untuk jvj > 2; graf ini
takterhubung), dan masing-masing komponen berupa graf reguler-1 dengan
2 verteks.
Untuk k = 2; berarti jV j = jEj. Graf reguler-2 mempunyai jumlah verteks
dan edge yang sama. Untuk jvj = 1; graf reguler-2 mempunyai 1 loop. Untuk
jvj = 2; graf reguler-2 merupakan multigraf dengan 2 edge paralel. Untuk
jvj > 2, graf reguler-2 merupakan cycle dengan panjang jvj :
Untuk k = 3; berarti jV j = 2jEj
3
. Agar graf reguler-3 terde…nisikan, nilai
jV j dan jEj harus intejer positif. Dengan demikian, jEj haruslah kelipatan
5.1 Konsep Dasar Graf 141

dari 3 dan jvj harus genap. Untuk jvj = 2; graf reguler-3 merupakan multigraf
(dengan 3 edge paralel, atau 2 loop dan 1 edge). Untuk jvj = 4; graf reguler-3
bisa berupa K4 , atau merupakan multigraf (merupakan cycle dengan panjang
4 dan masing-masing verteks mempunyai 1 loop). Terangkan lebih jauh
untuk jvj > 6 (cukup banyak kemunkinan). z

Soal 5.1.17 Tentukan jV j untuk graf atau multigraf berikut.

1. G mempunyai 9 edge dan semua verteks berderajat 3:

2. G adalah reguler dengan 15 edge.

3. G mempunyai 10 edge dengan 2 verteks berderajat 4 dan verteks lainnya


berderajat 3:

Soal 5.1.18 Jika G = (V; E) adalah graf terhubung dengan jEj = 17 dan
deg(v) 3 untuk setiap v 2 V; tentukan nilai maksimum dari jV j :

Soal 5.1.19 Misalkan G = (V; E) adalah garf takberarah dan terhubung.

1. Tentukan nilai terbesar dari jV j jika jEj = 19 dan deg(v) 4 untuk


setiap v 2 V:

2. Gambarkan suatu graf untuk mencontohkan masing-masing kasus dari


Pertanyaan 1:

Soal 5.1.20 Misalkan G = (V; E) adalah garf takberarah dan tanpa loop.

1. Jika jV j = 6 dan deg(v) = 2 untuk setiap v 2 V; ada berapa banyak


graf G yang saling tidak isomo…k?

2. Jika jV j = 7 dan deg(v) = 2 untuk setiap v 2 V; ada berapa banyak


graf G yang saling tidak isomo…k?

3. Jika jV j = 6 dan G merupakan graf reguler-3; ada berapa banyak graf


G yang saling tidak isomo…k?

4. Jika jV j = 7 dan G merupakan graf reguler-4; ada berapa banyak graf


G yang saling tidak isomo…k?

5. Dari jawaban Pertanyaan 3: dan 4:; buatlah generalisasinya.


5.2 Mengenal Beberapa Graf Khusus 142

5.2 Mengenal Beberapa Graf Khusus


Pada bagian ini akan diperkenalkan pengertian dan beberapa sifatnya ten-
tang: graf Euler, Graf graf planar, dan graf Hamilton. Sifat-sifat diberikan
dalam bentuk teorema tanpa disertai pembuktian.

5.2.1 Graf Euler


De…nisi 5.14 Misalkan G = (V; E) adalah graph atau multigrpah takberarah
tanpa verteks terisolasi. G dikatakan mempunyai sirkuit Euler jika ada
sirkuit dalam G yang melalui setiap edge tepat sekali. Jika ada trail terbuka
dari a ke b di dalam G dan trail ini melalui setiap edge dalam G tepat sekali,
maka trail ini disebut trail Euler. Graf yang mempunyai sirkuit atau trail
Euler disebut graf Euler.

Teorema dan akibat berikut ini digunakan untuk mendeteksi apakah su-
atu graf adalah Euler.

Teorema 5.3 Misalkan G = (V; E) graph atau multigraph takberarah tanpa


verteks terisolasi. G mempunyai sirkuit Euler jhj G terhubung dan setiap
verteks di dalam G berderajat genap.

Dengan teorema ini, konstruksi suatu sirkuit Euler bisa di mulai dari
sembarang verteks.

Akibat 5.2 Jika G = (V; E) graph atau multigraph takberarah tanpa verteks
terisolasi, maka dapat dikonstruksi trail Euler dalam G jhj G terhubung dan
mempunyai tepat dua verteks berderajat ganjil.

Berdasarkan akibat ini, kontruksi suatu trail Euler harus dimulai dari
salah satu verteks berderajat ganjil, dan pasti berakhir di verteks berderajat
ganjil yang satunya lagi.

Contoh 5.11 Jelaskan bahwa graf yang direpresentasikan pada Gambar 5.14
merupakan graf Euler.

Jawab. Perhatikan Gambar 5.14. Karena hanya ada dua verteks yang
berderajat ganjil (verteks b dan f ), maka G1 pasti memuat trail Euler, seba-
gai contoh:

fb; ag; fa; eg; fe; bg; fb; cg; fc; eg; fe; f g; ff; cg; fc; dg; fd; f g:
5.2 Mengenal Beberapa Graf Khusus 143

Karena semua verteks berderajat genap, maka G2 memuat sirkuit Euler,


sebagai misal:

fv; wg; fw; yg; fy; vg; fv; xg; fx; yg; fy; zg; fz; wg; fw; ug; fu; vg:

De…nisi 5.15 Misalkan G = (V; E) adalah graph atau multigraph berarah


dan v 2 V .

1. Derajat masuk (in degree) dari v adalah banyaknya edge dalam G


yang insiden ke v, dan dinotasikan dengan id(v).

2. Derajat keluar (out degree) dari v adalah banyaknya edge dalam G


yang insident dari v, dan dinotasikan dengan od(v):

Teorema 5.4 Misalkan G = (V; E) adalah graph atau multigraph berarah


tanpa verteks terisolasi. Graph G mempunyai sirkuit Euler jhj G terhubung
dan id(v) = od(v) untuk semua v 2 V .

Soal 5.2.1 Buatlah suatu contoh graf atau multigraf berarah dengan jumlah
verteks 10 dan mempunyai sirkuit Euler.

5.2.2 Graf Planar


De…nisi 5.16 Suatu grapah atau multigraph disebut planar jika G dapat
digambarkan pada bidang datar sedemikian sehingga setiap interseksi dari
edge hanya terjadi pada verteks dari G.
5.2 Mengenal Beberapa Graf Khusus 144

(K4) (K5)

a b a

b c

d e
c d

Gambar 5.17

Contoh 5.12 Dengan mudah dapat kita gambarkan bahwa K1 ; K2 ; dan K3


adalah graf planar. Jelaskan bahwa K4 planar, sedangkan K5 tidak planar.

Jawab. Gambar 5.17 cukup menunjukkan bahwa K4 adalah planar. Us-


aha untuk menggambarkan bahwa K5 adalah planar hanya sampai pada 9
edge pertama, sedangkan edge yang ke-10 tidaklah mungkin digambarkan
tanpa memotong edge salah satu dari 9 edge yang pertama. z

De…nisi 5.17 Suatu graph G = (V; E) disebut bipartisi (bipartite) jika V =


V1 \ V2 dengan V1 [ V2 = ?, dan setiap edge dari G berbentuk fa; bg dengan
a 2 V1 dan b 2 V2 . Jika setiap verteks dalam V1 berkawan dengan semua
verteks dalam V2 , disebut graf bipartisi lengkap. Dalam hal ini, jika jV1 j =
m dan jV2 j = n, grafnya dinotasikan dengan Km;n .

Contoh 5.13 Contoh utk bipartisi

De…nisi 5.18 Misalkan G = (V; E) adalah graph takberarah tanpa loop, den-
gan E 6= ?. Subdivisi elementer dari G adalah suatu graf yang diperoleh
dari penghapusan edge e = fu; wg dalam G, dan kemudian edge fu; vg dan
fv; wg ditambahkan pada G e, dimana v 2 = V.

Graf tak berarah tanpa loop G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) disebut


homeomor…k (homeomor…c) jika keduanya isomor…s, atau jika keduanya da-
pat diperoleh dari graph suatu takberarah tanpa loop yang sama, sebut saja
H; melalui serangkaian subdivisi elementer.
5.3 Tree 145

Contoh 5.14 Contoh homeomor…k.

Teorema 5.5 (Teorema Kuratowski) Suatu graf adalah takplanar jika


dan hanya jika ia memuat suatu subgraf yang homeomor…k dengan K5 atau
K3;3 :

Bukti teorema ini didemonstrasikan pada contoh berikut ini.

Contoh 5.15 Contoh kuratowski.

5.2.3 Graf Hamilton


De…nisi 5.19 Jika G = (V; E) graph atau multigraph dengan jV j 3, G
disebut mempunyai cycle Hamilton jika ada cycle dalam G yang memuat
semua verteks dalam V . Path Hamilton adalah path dalam G yang memuat
semua verteks.

Contoh 5.16 Contoh untuk def di atas.

Teorema 5.6 Misalkan G = (V; E) adalah graph tanpa loop dengan jV j =


n 2. Jika deg(x) + deg(y) n 1 untuk semua x; y 2 V dengan x 6= y,
maka G mempunyai path Hamilton.

Akibat 5.3 Misalkan G = (V; E) graph tanpa loop dengan jV j = n 2.


n 1
Jika deg(v) 2
untuk semua v 2 V , maka G mempunyai path Hamilton.

Teorema 5.7 Misalkan G = (V; E) graph tanpa loop dengan jV j = n


3. Jika deg(x) + deg(y) n untuk semua x; y yang tak adjacent, maka G
mempunyai cycle Hamilton.

Akibat 5.4 Misalkan G = (V; E) graph tanpa loop dengan jV j = n 3.


n
Jika deg(y) 2 untuk semua v 2 V , maka G mempunyai cycle Hamilton.

5.3 Tree
Contoh 5.17 Contoh Tree.

Teorema 5.8 Jika T = (V; E) adalah tree yang memuat sedikitnya dua
verteks, maka:
5.3 Tree 146

1. untuk setiap dua verteks, terdapat path yang menghubungkan keduanya.

2. Apabila sembarang edge dalam T dibuang, maka akan diperoleh dua


komponen yang masing-masing merupakan tree.

3. jEj = jV j 1.
Bibliography

[1] N. L. Biggs, “Discrete (i-Mathematics,”Revised Edition, Oxford Univer-


sity Press, 1989, ISBN: 0-19-853426-4.

[2] R. P. Grimaldi, “Discrete and Combinatorial Mathematics,”4th Edition,


North-Holland Mathematical Library, Vol. 16. Addison Wesley Longman
Inc., 1999, ISBN: 0-201-30424-4.

[3] A. J. Menezes, P. C. van Oorschot, and S. Vanstone, “Handbook of Ap-


plied Cryptography,”CRC Press, Inc., 1997.

147