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 Aturan Jumlah dan Kali . . . .
1.2 Permutasi . . . . . . . . . . . .
1.3 Kombinasi . . . . . . . . . . . .
1.4 Kombinasi dengan pengulangan

.
.
.
.

.
.
.
.

.
.
.
.

2 Sifat Dasar Intejer


2.1 Prinsip Induksi Matematik . . . . . .
2.2 Denisi Rekursif . . . . . . . . . . . .
2.3 Algoritma Pembagian . . . . . . . . .
2.3.1 Representasi Basis . . . . . .
2.3.2 Representasi Bilangan Negatif
2.4 Algoritme Euclid . . . . . . . . . . .
2.5 Aritmatik Intejer Modulo n . . . . .

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

3 Relasi dan Fungsi


3.1 Produk Cartesian dan Relasi . . . . . . . . . . . . .
3.2 Fungsi . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua
3.4 Komposisi Fungsi dan Fungsi Invers . . . . . . . . .
3.5 Relasi Ekuivalensi . . . . . . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

1
1
4
7
17

.
.
.
.
.
.
.

25
25
32
39
42
46
49
57

.
.
.
.
.

61
61
64
71
81
89

4 Tiga Topik Pilihan


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

CONTENTS

ii

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


4.2 Bahasa: Mesin Status Berhingga . . . . . . . .
4.2.1 Bahasa: Teori Himpunan String . . . . .
4.2.2 Mesin Status Berhingga . . . . . . . . .
4.3 Relasi Rekurensi . . . . . . . . . . . . . . . . .
4.3.1 Relasi Rekurensi Linear Order Pertama .
4.3.2 Relasi Rekurensi Linear Homogen Order
gan Koesien Konstan . . . . . . . . . .
4.3.3 Relasi Rekurensi Tak-homogen . . . . .
5 Pengantar Teori Graf
5.1 Konsep Dasar Graf . . . . . . . . . . . . . . .
5.1.1 Subgraf, Komplemen, dan Isomorsma
5.1.2 Derajat Verteks . . . . . . . . . . . . .
5.2 Mengenal Beberapa Graf Khusus . . . . . . .
5.2.1 Graf Euler . . . . . . . . . . . . . . . .
5.2.2 Graf Planar . . . . . . . . . . . . . . .
5.2.3 Graf Hamilton . . . . . . . . . . . . . .
5.3 Tree . . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.

. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
Kedua den. . . . . . .
. . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.

104
107
107
112
113
113

. 116
. 120
122
. 122
. 131
. 139
. 142
. 142
. 143
. 145
. 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 aplikasi 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

Denisi 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 Aturan Jumlah dan Kali

Contoh 1.2 Aturan jumlah dapat diperluas untuk lebih dari dua tugas. Misalnya, 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 dianjurkan untuk meminjam satu buku bahasa pemrograman dari sang instruktur,
maka ada 5 + 4 + 3 + 5 = 17 buku yang bisa dia pinjam.
Denisi 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, denisi berikut dengan mudah dapat dipahami.
Denisi 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 denisi di atas bisa diganti dengan: banyaknya cara menempatkan 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 memuat sejumlah besar sirkuit, masing-masing mampu menyimpan suatu bit (0
atau 1). Sirkuit simpanan ini disusun berdasarkan satuan-satuan yang disebut dengan sel. Untuk mengidentikasi sel di dalam memori utama, masingmasing 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 mengidentikasi
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

Soal 1.1.1 Seorang turis asing akan melakukan perjalanan dari Jakarta ke
Bandung menggunakan mobil. Pemandu Wisata menjelaskan bahwa ada 2 alternatif yang bisa dipilih, yaitu lewat Purwakarta atau Cianjur. Jika memilih
jalur Cianjur, ada 2 alternatif yang bisa dipilih, yaitu lewat Jonggol atau Bogor. Jika memilih jalur Bogor, ada 3 alternatif yang bisa dipilih, yaitu lewat
Parung, Cibinong, atau Tol, kemudian dari Bogor dilanjutkan dengan 2 alternatif, 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 sekitarnya 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

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
pos-1

(n 1)
pos-2

(n 2)
pos-3

:::

(n r + 1)
pos-r

n!
(n r)!

Jelas bahwa P (n; n) = n! dan P (n; 1) = n: Berikut ini adalah pendenisian


permutasi dengan ungkapan yang lain.
Denisi 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 dibolehkan.
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 hurufhuruf yang ada di dalam kata KOMPUTER. Tentukan banyaknya kata (susunan 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 dibolehkan.
Jawab. Banyaknya kata yang bisa dibentuk:
1. jika yang diambil semua huruf adalah P (8; 8) = 8!:

1.2 Permutasi

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

8!
:
(8 5)!

3. jika kata terdiri atas 12 huruf dengan syarat pengulangan huruf dibolehkan adalah 812 :
z
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
n1 !

n!
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
K=

n1 !

n!
n2 ! :::

nr !

:
z

Contoh 1.7 Tentukan banyaknya kata yang mungkin dibentuk dengan mengambil semua huruf di dalam kata MATEMATIKA.
Jawab. Berdasarkan Teorema 1.1, banyaknya kata yang mungkin dibentuk 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

Contoh 1.9 Jika 6 orang didudukkan mengelilingi meja melingkar, maka


banyaknya susunan melingkar yang mungkin adalah
5

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!
= (n 1)!:
K=
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 pemilihan 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

1 = (5!)(4!):
z

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. Kemudian, 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

Soal 1.2.4 Dalam bahasa pemrograman Celebes, identier dituliskan dengan 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 identier.
Jika ada 36 keyword di dalam Celebes, ada berapa identier bisa dituliskan?
Soal 1.2.5 Ada berapa susunan dari huruf-huruf di dalam kata SOCIOLOGICAL? 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 menggunakan angka 3; 4; 4; 5; 5; 6; dan 7 sehingga n 5000000:
Soal 1.2.7 Tunjukkan bahwa untuk setiap intejer n; r
maka
n+1
P (n; r):
P (n + 1; r) =
n+1 r

0; jika 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

Denisi 1.5 Kombinasi berukuran r dari n obyek dapat diartikan sebagai


seleksi (pengambilan) berukuran r dari kumpulan beranggota n obyek dengan urutan tidak diperhatikan dan pengulangan (pengembalian) tidak
dibolehkan.
Kombinasi berukuran r dari n obyek bisa juga diungkapkan sebagai menempatkan r obyek yang identik (sama) ke dalam n posisi yang

1.3 Kombinasi

berbeda. Banyaknya kombinasi berukuran r dari n obyek, dinotasikan dengan C(n; r) atau nr dan dibaca n memilih r, adalah
C(n; r) =

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

Rumus ini dijelaskan dengan argumen berikut. Setiap satu kombinasi berukuran 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
0

= 1,

n
1

Selanjutnya, didenisikan bahwa

= n, dan
n
r

n
n

= 1:

= 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.
1. Banyaknya cara mengerjakan 8 soal dari 12 soal adalah

12
8

12!
:
4!8!

2. Banyaknya cara mengerjakan 3 soal dari 5 soal pertama adalah


dan banyaknya cara mengerjakan 5 soal dari 7 soal terakhir adalah
Secara keseluruhan proses mengikuti aturan kali, sehingga ada 53
cara mengerjakan soal.

5
;
3
7
:
5
7
5

1.3 Kombinasi

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


diambil dari 7 nomor soal terakhir mempunyai tiga alternatif pengerjaan:
(a) 3 soal dari 5 nomor soal pertama dan 5 soal dari 7 nomor soal
7
terakhir, berarti ada 53
cara pengerjaan.
5
(b) 4 soal dari 5 nomor soal pertama dan 4 soal dari 7 nomor soal
7
terakhir, berarti ada 54
cara pengerjaan.
4
(c) 5 soal dari 5 nomor soal pertama dan 3 soal dari 7 nomor soal
7
terakhir, berarti ada 55
cara pengerjaan.
3
Selanjutnya, secara keseluruhan mengikuti aturan jumlah, berarti ada
5
3

7
5
+
5
4

7
5
+
4
5

7
3

cara pengerjaan soal.


z
Contoh 1.12 Banyaknya susunan huruf di dalam kata ANTABRANTA adalah
10!
4!2!2!1!1!
: 37 800 Jika disyaratkan tidak ada dua huruf A yang berdampingan, buktikan
bahwa banyaknya susunan huruf menjadi
7
4

6!
2!2!1!1!

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 didenisikan sebagai susunan 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 ; dimana 3 adalah banyaknya simbol. Misalkan x = x1 x2 :::xn adalah salah satu
dari string tersebut, bobot dari x, dengan notasi wt(x); didenisikan sebagai
wt(x) := x1 + x2 + ::: + xn :
Ambil contoh: wt(22) = 4; wt(10) = 1; dan wt(102) = 3: Dengan pedenisian
ini, maka banyaknya semua string yang panjangnya 10 adalah
310 :
Buktikan bahwa banyaknya string yang panjangnya 10 dan berbobot genap
adalah
210 +

10 8
10 6
10 4
10 2
2 +
2 +
2 +
2 +1
2
4
6
8

5
X
10 10
=
2
2i
i=0

2i

Bukti. Dari denisi jelas bahwa suatu string yang panjangnya 10 dan
berbobot genap jika dan hanya jika banyaknya simbol 1 dalam string tersebut 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
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
: Selanjutnya, setiap satu
j
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 10
210 j . Akhirnya, untuk semua nilai j yang mungkin diterj
apkan aturan jumlah, sehingga diperoleh
210 +

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

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

(1.1)

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 koesien 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.

n
P

i=0

2.

n
P

i=0

n
i

1;

= 2n :

( 1)i

n
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;
z

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

n
X
n
k
k=0

= 2n :

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 dibolehkan dan urutan tidak diperhatikan. Dengan demikian, banyaknya subhimpunan berkardinal k; dengan 0 k n; adalah nk : Selanjutnya, berdasarkan Akibat 1.1 No. 1, maka
n
X
n
jP(A)j =
k
k=0

= 2n :
z

Contoh 1.15 Tentukan koesien dari x5 y 2 di dalam ekspansi (2x

3y)7 :

Jawab. Berdasarkan Teorema Binomial,


(2x

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


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

7
X
i=0

7
(2)i ( 3)7 i ]xi y 7
i

Dengan demikian koesien 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


n+1
r

1;

n
n
+
r
r 1

Bukti. Walaupun teorema ini bisa dibuktikan secara aljabar, yaitu dengan menggunakan denisi nr = r!(nn! r)! ; namun disini pembuktian akan dilakukan secara kombinatorik. Misalkan
A = fx; a1 ; a2 ; :::; an g;
banyaknya subhimpunan berkardinal r dari A adalah n+1
: Setiap subhimr
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; koesien
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
nt
n3
n
Bukti. Banyaknya suku x1n1 xn2
2 x3 :::xt dalam ekspansi (x1 +x2 +:::+xt )
adalah banyaknya cara memilih secara berurutan n1 faktor, n2 faktor,:::, dan
nt faktor dari n faktor (x1 + x2 + ::: + xt ); yaitu

n
n1

n1
n2

n1
n3

n2

:::

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

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

1.3 Kombinasi

14

Contoh 1.16 Tentukan koesien 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 koesien 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!)
z

adalah koesien dari a2 b3 c2 d5 :

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:
Soal 1.3.2 Jika n adalah intejer positif dan n > 1; buktikan bahwa
n 1
merupakan bentuk kuadratik.
2

n
2

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 didistribusikan 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 koesien dari x9 y 3 di dalam ekspansi:
1. (x + y)12 :
2. (x + 2y)12 :
3y)12 :

3. (2x

Soal 1.3.10 Tentukan koesien dari:


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

di dalam (x

z)4 :

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 koesien 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:


1.

n
P

i=0

2.

n
P

i=0

1
:
i!(n 1)!
( 1)i
:
i!(n 1)!

Soal 1.3.13 Tunjukkan bahwa untuk sembarang intejer positif m dan n berlaku
m+n
m+n
n
= (m + 1)
:
m
m+1
Soal 1.3.14 Misalkan n adalah intejer positif, evaluasi (sederhanakan) jumlahan
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
2. 2n = (2 + x)n

n
1
n
1

x1 (1 + x)n
x1 (2 + x)n

n
2
n
2

x2 (1 + x)n
x2 (2 + x)n

Soal 1.3.16 Tentukan x jika


50
X
50 i
8 = x100 :
i
i=0

2
2

+ ( 1)n

n
n

xn :

+ ( 1)n

n
n

xn :

1.4 Kombinasi dengan pengulangan

1.4

17

Kombinasi dengan pengulangan

Denisi 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) dibolehkan.
Teorema 1.5 Banyaknya kombinasi dengan pengulangan berukuran r
dari n obyek adalah
(n + r 1)!
=
r!(n 1)!

n+r
r

n+r 1
n 1

(1.2)

Untuk memperoleh dari mana bilangan dalam teorema tersebut diperoleh, berikut ini diberikan contoh sebagai ilustrasi untuk menuju ke suatu
generalisasi.
Contoh 1.17 Untuk memenuhi syarat kelulusan, 7 orang mahasiwa Departemen Matematika IPB yang terancam DO (drop out) diwajibkan mengambil 1 mata kuliah pilihan yang dipilih dari 4 mata kuliah pilihan yang ditawarkan: Kriptologi, Teori Pengkodean, Matematika Finansial, dan Optimisasi
Kombinatorial. Ada berapa cara pemilihan 4 mata kuliah oleh ketujuh mahasiswa yang bersangkutan?
Jawab. Misalkan K, T, M, dan O menyatakan Kriptologi, Teori Pengkodean, Matematika Finansial, dan Optimisasi Kombinatorial. Sebagai gambaran, suatu contoh cara pemilihan yang mungkin adalah K dipilih oleh 2
mahasiswa, T oleh 2 mahasiswa, M oleh 2 mahasiswa, dan O oleh 1 mahasiswa, 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 kesimpulan bahwa masalah menentukan jumlah semua cara pemilihan yang mungkin

1.4 Kombinasi dengan pengulangan

18

dapat dibawa ke masalah mencari banyaknya permutasi berukuran 10 dengan 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 pengulangan 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 diperoleh jawaban
17
17!
=
:
13
4!13!
z
Contoh 1.19 Tentukan banyaknya semua penyelesaian intejer dari persamaan
x1 + x2 + x3 + x4 + x5 + x6 = 20;
dimana xi

0 untuk setiap 1

6:

Jawab. Dengan argumen yang sama dengan jawaban Contoh 1.17 diperoleh jawaban
25!
25
=
:
5!20!
20
z
Catatan 1.1 Dari ketiga contoh terakhir di atas, kita sampai pada kesimpulan bahwa ketiga pernyataan berikut adalah ekuivalen:
1. Banyaknya pemilihan berukuran r dari koleksi beranggota n obyek dengan urutan tidak diperhatikan dan pengulang dibolehkan.
2. Banyaknya solusi intejer dari persamaan
x1 + x2 + ::: + xn = r;
dimana xi

0 untuk setiap 1

n:

1.4 Kombinasi dengan pengulangan

19

3. Banyaknya cara pendistribusian apabila r obyek yang identik didistribusikan 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
1

6
3

9
:
6
z

Contoh 1.21 Tentukan banyaknya solusi intejer dari persamaan


x1 + x2 + x3 + x4 + x5 + x6 < 200;
dimana xi

0 dengan 1

(1.3)

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
199
X
6+k
k
k=0

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. Mencari 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
untuk setiap 1 i 7): Dengan demikian solusinya adalah
199 + 7
199

205
205
=
199
6
205 204 203 202 201
=
1 2 3 4 5 6
= 68:937:810:984:000:

200

z
Contoh 1.22 Setiap intejer positif m dapat dinyatakan sebagai jumlahan
intejer-intejer positif lainnya yang tidak lebih dari m dengan urutan diperhatikan. Jumlahan yang demikian disebut komposisi dari m: Misalnya, semua 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
intejer dari persamaan terakhir ini adalah

m
X
k + (m
m
k=1

k)
k

m
X
k + (m
k
k=1

m
X
m
=
k
k=1

m: Banyaknya solusi

m
X1

i=0
m 1

= 2

1
1

1
i

k)
1

1.4 Kombinasi dengan pengulangan

21

z
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 kesimpulan bahwa banyaknya kali perintah print dieksekusi setara dengan pemilihan berukuran 3 dari kumpulan obyek f1; 2; :::; 20g dengan pengurutan tidak
diperhatikan dan pengulangan dibolehkan, yaitu
20 + 3
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 dieksekusi?
Jawab. Nilai COU N T ER tersebut setara dengan banyaknya pemilihan
nilai-nilai i dan j yang mungkin, yaitu
n+2
2

n(n + 1)
:
2

Nilai yang sama juga diperoleh apabila kita pakai diagram pohon.

1.4 Kombinasi dengan pengulangan

22

Ringkasan
Ringkasan bahasan dalam bab ini adalah membandingkan pengertian pemilihan berukuran r dari kumpulan beranggota n obyek, yang diberikan dalam
tabel berikut.

Ulangan (YA)
Ulangan (TIDAK)

Urutan (YA)

Urutan (TIDAK)

nr
P (n; r) =

(n+r 1)!
r!(n 1)!
n!
(n r)!

C(n; r) =

n!
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

4;

2. xi > 0; 1

4;

3. x1 ; x2
4. xi
5. xi

5;

8; 1
2; 1

x3 ; x4
i

7;

4;
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 ekuivalen.

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
2. xi

0; 1
2; 1

5:
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 dieksekusi?
Soal 1.4.7 Perhatikan segmen program berikut, dimana i; j; k; IN CREAM 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;

xi ;

2. x1 + x2 + x3 + x4 = 4;

1
xi ;

3:
1

4:

Chapter 2
Sifat Dasar Intejer
Di dalam bab ini, pembicaraan banyak terkait dengan sifat-sifat dasar intejer (bilangan bulat). Materinya ditekankan pada bahasan tentang: induksi
matematik, denisi rekursif, dan algoritme pembagian.

2.1

Prinsip Induksi Matematik

Topik bahasan intejer tidak terlepas dari notasi himpunan bilangan. Beberapa notasi himpunan bilangan yang umum dipakai diantaranya: Z menotasikan himpunan semua bilangan bulat yang anggotanya disebut intejer, Z+
menotasikan himpunan semua intejer positif, N menotasikan himpunan semua 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 prinsip 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:
1. 1 + 2 + 3 + ::: + n =

n
P

i=

i=1

2.

n
P

i2 =

(n)(n+1)(2n+1)
:
6

i3 =

(n2 )(n+1)2
:
4

i=1

3.

n
P

i=1

4. 1 + 4 + 7 + ::: + (3n

2) =

(n)(n+1)
:
2

n
P

(3i

2) =

i=1

5.
6.

1
1:2
n
P

i=1

1
2:3

2i+1
i2 (i+1)2

1
3:4

+ ::: +

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

1
n(n+1)

n
P

i=1

1
i(i+1)

(n)(3n 1)
:
2

n
:
n+1

2.1 Prinsip Induksi Matematik

27

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


yang lainnya disisakan sebagai latihan.
n
P
i = (n)(n+1)
Bukti. Misalkan S (n):
:
2
i=1

(1) Langkah Basis ! S (1):

1
P

i=1

i=

(1)(1+1)
2

,1=

(2) Langkah Induktif ! Diasumsikan S (k):

2
2

k
P

adalah benar.

i =

i=1

(k)(k+1)
2

benar

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


harus dibuktikan bahwa
k+1
X

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

i=

i=1

Berdasarkan asumsi diketahui

k
P

i=

i=1
k
X

i + (k + 1) =

i=1

k+1
X

i=1
k+1
X

(k)(k+1)
;
2

maka

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

i =

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

i =

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

i=1

z
Contoh 2.2 Buktikan bahwa 8n 2 Z+ berlaku:
1. Jika n

3; maka 2n

2. 12 + 22 + ::: + (n
3. Jika n

2n + 1:

1)2 <

n3
:
3

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
Berdasarkan asumsi diketahui 2k
2k :2
2k+1
2k+1
2k+1
Karena k

3; maka 2k
2k+1

2(k + 1) + 1:
2k + 1; maka

(2k + 1):2 ,
(2k + 1) + (2k + 1) ,
(2k + 2) + 2k ,
2(k + 1) + 2k:
1: Jadi
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 menggunakan 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 esien 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+ ;
S (n) :

n
X

(2i

1) = n2 :

i=1

Selanjutnya, buktikan kebenaran konjektur itu dengan prinsip induksi matematik.


Bukti. Dari tabel di atas, telah diketahui
benar untuk S(1); S (2) ; S(3);
Pk
dan S(4): Misalkan diketahui S(k) : i=1 (2i 1) = k 2 benar untuk suatu
intejer k > 4; maka S(k + 1) :
k+1
X

(2i

1) =

i=1

k
X

(2i

1) + [2(k + 1)

i=1
2

= k + [2(k + 1)
= k 2 + 2k + 1
= (k + 1)2 :

1]

1]

z
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
2
1 1
= 1+ +
2 3
..
.

H2 = 1 +
H3

dan secara umum Hn = 1 + 12 + 31 + ::: + n1 untuk setiap n 2 Z+ : Dengan prinsip induksi matematik, buktikan bahwa jumlah n bilangan harmonik pertama

2.1 Prinsip Induksi Matematik

30

dapat dirumuskan dengan


n
X

8n 2 Z ;

Hi = (n + 1)Hn

n:

i=1

Bukti. Untuk n = 1;
1
X

1,

Hi = (1 + 1)H1

i=1

H1 = 2:H1 1 ,
1 = 2:1 1 ,
1 = 1; benar.

P
Misalkan ki=1 Hi = (k + 1)Hk
asumsi ini, maka
k+1
X

Hi =

i=1

k
X

k benar untuk suatu intejer k > 1: Dari

Hi + Hk+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):
z

Teorema 2.2 (Bentuk Alternatif - Prinsip Induksi Berhingga) Misalkan S(n) menotasikan suatu pernyataan matematik terbuka yang melibatkan 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
(b) untuk sembarang pilihan k 2 Z+ ; k

1); S(n1 ) benar, dan


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;
Buktikan bahwa 8n 2 N; an

3:

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 untuk 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 :
z
Soal 2.1.1 Perhatikan empat persamaan berikut:
1
2+3+4
5+6+7+8+9
10 + 11 + 12 + 13 + 14 + 15 + 16

=
=
=
=

1
1+8
8 + 27
27 + 64

(1)
(2)
(3)
(4)

Buatlah konjektur rumus umum dari keempat persamaan di atas, dan buktikan kebenaran konjektur yang anda buat.
Soal 2.1.2

2.2 Denisi Rekursif

32

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


s3 =

1 1 1
1
1
1
1
+ + +
+
+
+
=
1 2 3 1:2 1:3 2:3 1:2:3

6=A X3

1
;
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


n
X
j=1

2.2

jHj =

(n + 1)n
2

Hn+1

(n + 1)n
4

Denisi Rekursif

Untuk memahami denisi 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 eksplisit, 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 disebut juga dengan denisi rekursif yang terdiri dari basis rekursi dan proses
rekursi. Basis rekursi yaitu pendenisian awal (pemberian nilai awal), pada

2.2 Denisi Rekursif

33

contoh tersebut: a0 = 1; a1 = 2; dan a2 = 3: Proses rekursi memberikan nilai suku berikutnya secara rekursif didasarkan pada nilai basis rekursi, pada
contoh tersebut ak = ak 1 + ak 2 + ak 3 :
Denisi rekursif merupakan suatu jawaban ketika untuk menentukan rumus 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 menentukan nilai kebenaran
p1 ^ p2 ^ p3 ^ ::: ^ pn ;
dimana n 2; diperlukan konsep rekursif atas dasar hukum asosiatif konjungsi.
Basis Rekursi: p1 ^ p2 :
Proses Rekursi: Untuk n 2;
p1 ^ p2 ^ p3 ^ ::: ^ pn

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

Denisi 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 asosiatif 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 induksi, untuk n = 3; kebenaran jelas diterima mengikuti hukum asosiatif

2.2 Denisi Rekursif

34

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


ini berarti berlaku

r < k;

(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 denisi 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 :
z

Contoh 2.8 Contoh 2.4 memenuhi pola pendenisian 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 pendenisian rekursif:
Basis Rekursi: 0! = 1:
Proses Rekursi: Untuk n 0; (n + 1)! = (n + 1) (n!):
Contoh 2.10 Pendenisian rekursif bilangan Fibonacci.
Basis Rekursi: F0 = 0; :F1 = 1
Proses Rekursi: Untuk n 2 Z+ dan n 2;
Fn = Fn

+ Fn

Suatu pendenisian secara rekursif yang melibatkan dua intejer sekaligus


diberikan pada dua contoh berikut ini.

2.2 Denisi Rekursif

35

Contoh 2.11 Pada Bab 1 telah diperkenalkan koesien binomial nr untuk


n; r 2 N dengan 0 r n: Berikut ini diberikan pedenisian secara rekursif,
n+1
r

n
n
+
;
r
r 1

untuk 0

n;

dengan basis rekursi:


0
0
n
r
n
r

= 1;
= 0;

untuk r > n; dan

= 0;

untuk r < 0:

Berdasarkan denisi rekursif ini, penentuan nilai nr ; dimana 0


0 k n dapat dinyatakan dalam tabel segitiga Pascal:
n k
0
1
2
3
4

4 dan

1
1
1
1

1
2

1
3

1
4

Contoh 2.12 Untuk m 2 Z+ dan k 2 N; bilangan Euler am;k didenisikan


secara rekursif dengan
am;k = (m

k) am

1;k 1

+ (k + 1) am

1;k ;

untuk 0

m;

dengan basis rekursi:


a0;0 = 1;
am;k = 0;
am;k = 0;

untuk k m; dan
untuk k < 0:

Berdasarkan denisi rekursif ini, penentuan nilai am;k ; dimana 1


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 Denisi Rekursif

36

Dari tabel ini didapat suatu pola bahwa jumlah baris P


ke-m adalah m!:
1
+
Secara umum, buktikan bahwa untuk suatu m 2 Z ; berlaku m
k=0 am;k = m!:
Bukti. Berdasarkan denisi rekursif diperoleh

m
X

m
X

am+1;k =

k=0

k)am;k

+ (k + 1)am;k ] =

[(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;
m
X

[(m + 1

k=0

= 0 dan am;m = 0; maka

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 ]
m
X1
am;k
= (m + 1)
k=0

Dari fakta ini, dan berdasarkan induksi matematik, jika diasumsikan


m
X1

am;k = m!

k=0

benar untuk m 2 Z+ ; maka


m
X

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

k=0

Soal 2.2.1 Barisan intejer a1 ; a2 ; a3 ; ::: didenisikan 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 ; ::: didenisikan secara eksplisit dengan rumus


bn = n(n + 2) untuk n 2 Z+ ; dapat juga secara rekursif

2.2 Denisi Rekursif

37

a) b1 = 3; dan
b) bn+1 = bn + 2n + 3; untuk n

1:

Buatlah denisi 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 denisi 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 denisi rekursif untuk adisi (jumlahan) dari n bilangan 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 Denisi 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
dan x1 ; x2 ; :::; xn 2 R; maka
jx1 + x2 + ::: + xn j

2;

jx1 j + jx2 j + ::: + jxn j :

Soal 2.2.5 Didenisikan barisan intejer a0 ; a1 ; a2 ; :::; an secara rekursif dengan


a) a0 = 1; a1 = 1; a2 = 1; dan
b) untuk n

3; an = an

Buktikan bahwa an+2

+ an 3 :

untuk setiap n

0:

Soal 2.2.6 Misalkan Fn adalah bilangan Fibonacci ke-n:


1. untuk n

0; buktikan bahwa

n
P

Fi = Fn+2

1:

i=0

2. untuk n

1; buktikan bahwa

n
P

i=1

Fi 1
2i

=1

Fn+2
:
2n

Soal 2.2.7
1. Untuk i 2 Z+ ; periksalah bahwa
i2 =

i
i+1
+
:
2
2

2. Untuk n 2 Z+ ; buktikan bahwa


n+1
n+2
+
3
3

n (n + 1) (2n + 1)
:
6

2.3 Algoritma Pembagian

39

3. Untuk i 2 Z+ ; periksalah bahwa


i3 =

i
i+1
i+2
+4
+
:
3
3
3

4. Untuk n 2 Z+ ; buktikan bahwa


n+1
n+2
n+3
+4
+
4
4
4

2.3

n2 (n + 1)2
:
4

Algoritma Pembagian

Walaupun Z tidak tertutup terhadap pembagian, namun ada beberapa intejer yang dapat dibagi oleh intejer yang lain.
Denisi 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
7. Untuk 1

b:

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

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) :

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;

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 beberapa ilustrasi.
1. Misalkan a = 67 dan b = 7; maka
q=b

67
c = 9 dan r = 67
7

7:9 = 4:

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


q=b
3. Misalkan a =

48
c = 8 dan r = 48
6

6:8 = 0:

72 dan b = 11; maka

q=b

72
c=
11

7 dan r = ( 72)

(11)( 7) = 5:

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 pembagian 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 mengubah 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 dimaksud 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 desimal, 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 denisi
berikut ini.
Denisi 2.2 Jika b 2 adalah suatu intejer, maka sembarang intejer positf
a dapat diekspresikan secara tunggal sebagai
a = an bn + an 1 bn

+ ::: + 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 denisi 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
denisi 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 Denisi 2.2, berikut ini diberikan prosedur untuk mengubah representasi 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 pembagian melandasi sistem perubahan representasi basis.
1. Persamaan (2.1) dapat dituliskan sebagai
a = (an bn

+ an 1 b n

+ ::: + 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

+ an 1 b n

+ ::: + a2 b + a1

(2.2)

2.3 Algoritma Pembagian

45

2. Persamaan (2.2) dapat dituliskan sebagai


q1 = (an bn

+ an 1 b n

+ ::: + 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

+ an 1 b n

+ ::: + a3 b + a2

(2.3)

3. Persamaan (2.3) dapat dituliskan sebagai


q2 = (an bn

+ an 1 b n

+ ::: + 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

+ an 1 b n

+ ::: + 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
a
= 938
8
8
q1
1. 8 = 117
8
q2
14
=
8
8
q3
1
=
8
8

Hasil Bagi
q1 = 117
q2 = 14
q3 = 1
q4 = 0

Sisa
a0 = 2
a1 = 5 . Jadi 938 = (1652)8 :
a2 = 6
a3 = 1

Bagi 2
a
= 938
2
2
q1
469
=
2
2
q2
234
=
2
2
q3
= 117
2
2
2. q24 = 58
2
q5
29
=
2
2
q6
= 14
2
2
q7
7
=
2
2
q8
= 32
2
q9
= 12
2

Hasil Bagi
q1 = 469
q2 = 234
q3 = 117
q4 = 58
q5 = 29
q6 = 14
q7 = 7
q8 = 3
q9 = 1
q10 = 0

Sisa
a0 = 0
a1 = 1
a2 = 0
a3 = 1
a4 = 0 . Jadi 938 = (1110101010)2 :
a5 = 1
a6 = 0
a7 = 1
a8 = 1
a9 = 1

2.3 Algoritma Pembagian

Bagi 16
a
= 938
16
16
q1
3. 16
= 117
16
q2
14
=
8
8
q3
= 18
8

Hasil Bagi
q1 = 117
q2 = 14
q3 = 1
q4 = 0

46

Sisa
a0 = 2
a1 = 5 . Jadi 938 = (1652)8 :
a2 = 6
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 representasi komplemen.
Representasi Besaran-bertanda
Tanda dari suatu intejer (baik positif maupun negatif) dan besarannya (nilai
mutlak) direprsentasikan sebagai representasi besaran-bertanda. Intejer positif 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 representasi. 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 BesaranBertanda


Besaran0111
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 memeriksa dijit tanda. Intejer tak-negatif dalam selang [0; bn 1] direpresentasikan 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 Komplemennya 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 basis16:
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 menggunakan pola 8-bit.
a) 4-bit

b) 8-bit

c) 16-bit

Soal 2.3.9 Didenisikan himpunan X

d) 32-bit

e) 2n -bit, n 2 Z+

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 merupakan 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.
Denisi 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 terdenisikan.
5. c = gcd (a; b) ) gcd

a b
;
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 =


untuk k 2 Z;
3(2 + 5k) + 5( 1

1 adalah solusinya. Kemudian

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 algoritme 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
Langkah ke-(k+2) rk
maka rk = gcd (a; b) :

2
1

= qk r k 1 + r k
= qk+1 rk :

0 < rk < rk

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
Langkah
Langkah
Langkah

ke-1
ke-2
ke-3
ke-4

250 = 2(111) + 28
111 = 3 (28) + 27
28 = 1(27) + 1
27 = 27(1) + 0

0 < 28 < 111


0 < 27 < 28
0 < 1 < 27

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
(4) 250 + ( 9) (111) :

2 (111))

Secara umum, untuk k 2 Z;


1 = (4

111k) 250 + ( 9 + 250k) 111:

z
Terkait dengan implementasi, algoritme Euclid dapat dirinci dalam Prosedur 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
begin
r := a mod b
d := b
while r > 0 do
begin
c := d
d := r
r := c mod d
end
return(d)
end

b)

Denisi 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
2. 8a; n 2 Z+ ; berlaku

lcm(1; n) = lcm(n; 1) = n:
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,
lcm(168; 456) =

(168)(456)
= 3192:
24

z
Algoritme Euclid dapat diperluas sehingga tidak hanya mengasilkan pembagi 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

1
2
2
5
1
2

1406
646
114
76
38
0

1
2
5
27
32
91

a
b
4864 3458
1 3458 1406
3
1406 646
7 646 114
38
114
76
45 76
38
28
38
0

x2
1
0
1
3
5
27
32

x1
0
1
2
5
27
32
91

y2
0
1
1
3
7
38
45

y1
1
1
3
7
38
45
128

z
Catatan bahwa jawaban dengan tabel pada contoh di atas dapat disederhanakan sebagai berikut, demi perhitungan menggunakan pensil dan kertas.
i qi+1
0
1
1
2
2
3
2
4
5
5
1
6
2
7

ri
4864
3458
1406
646
114
76
38
0

xi
1
0
1
2
5
27
32

yi
0
1
1
3
7
38
45

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
c; untuk i 1;
ri
= xi 2 qi 1 :xi 1 ; untuk i
= yi 2 qi 1 :yi 1 ; untuk i

qi = b
xi
yi

2; dan
2:

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


dan y = ys 1 :
Denisi 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 denisi 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 denisikan 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
p j a1 a2 :::an ; maka p j ai untuk suatu 1 i n:

n: Jika p prima dan

Teorema 2.10 (Teorema Dasar Aritmatika) Setiap intejer n


faktorisasikan secara tunggal sebagai produk kuasa prima:

2 dapat di-

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, tentukan 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 sehingga persamaan Diophantine 84x+990y = c tidak mempunyai solusi. Tentukan 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.


Denisi 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
karena 11 17 = ( 4)(7):

9 = 3:5; dan

11

17(mod 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. Reeksif.: a

a(mod n):

3. Simetrik: jika a

b(mod n); maka b

4. Transitif: jika a

b(mod n) dan b

a(mod n):
c(mod n); maka a

c(mod n):

2.5 Aritmatik Intejer Modulo n

5. Jika a
dan ab

a1 (mod n) dan b
a1 b1 (mod n):

58

b1 (mod n); maka a + b

a1 + b1 (mod n)

Denisi 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:
Denisi 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 semua 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:
327
: (263

mod 500

162) mod 500 = 106

Denisi 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


a

(n)

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
2. 2468

90123

13579

1(mod 10):
3(mod 25):

2.5 Aritmatik Intejer Modulo n

60

Soal 2.5.2 Misalkan diberikan intejer x dan m


maka ada intejer r yang memenuhi
x

r(mod m);

2: Apabila x dibagi m,

r<m

dan sering kali disebut residu tak-negatif terkecil dari x (mod m): Tentukan 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

x3 + ::: + ( 1)n xn (mod 11);

x1 + x2

dan gunakan hasil ini untuk memeriksa apakah 1213141516171819 habis dibagi
11:
Soal 2.5.4 Tentukan invers dari
a) 2 di dalam Z11 ;
c) 7 di dalam Z16 ;

b) 7 di dalam Z15 ;
d) 5 di dalam Z13 :

Soal 2.5.5 Gunakan Prosedur 7 untuk menentukan invers dari


a) 37 di dalam Z120 ;
c) 400 di dalam Z1923 ;

b) 123 di dalam Z550 ;


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 digunakan 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 pendekatan teori himpunan yang kebanyakan melibatkan konsep kombinatorial.

3.1

Produk Cartesian dan Relasi

Denisi 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:
Denisi 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 ;
didenisikan sebagai
A1

A2

:::

An := f(a1 ; a2 ; :::; an )=ai 2 Ai ; 1


61

ng:

3.1 Produk Cartesian dan Relasi

62

Sembarang anggota (a1 ; a2 ; :::; an ) 2 A1 A2 ::: An disebut rangkain terurut (ordered n-tuple). Kesamaan dua anggota A1 A2 ::: An
didenisikan sebagai
(a1 ; a2 ; :::; an ) = (b1 ; b2 ; :::; bn ) , ai = bi ; 1

n:

A A dinotasikan dengan A2 ; dan secara umum produk lipat-n dari A dinotasikan dengan An ; juga
jAn j = jAjn :
Contoh 3.1 Misalkan A = fa; bg dan B = f1; 2; 3g; tentukan A
A2 ; B 2 ; dan A3 :

B; B

A;

Jawab. Berdasarkan denisinya, maka


A
B

B
A
A2
B2

=
=
=
=

f(a; 1); (a; 2); (a; 3); (b; 1); (b; 2); (b; 3)g;
f(1; a); (1; b); (2; a); (2; b); (3; a); (3; b)g;
f(a; a); (a; b); (b; a); (b; b)g
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 Euclidean.
Denisi 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 subhimpunan dari A B adalah 26 : Ini berarti banyaknya semua relasi yang
bisa didenisikan 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 didenisikan sebagai: xRy (dibaca: x berrelasi dengan y) jika dan hanya jika x y:
Tentukan relasi R:
Jawab. Berdasarkan denisi 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:
z

Gambarkan R dalam sistem koordinat bidang!

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


B didenikan: xRy jhj y = 3x 1: Tentukan relasi R:
Jawab. Berdasarkan denisi relasi R; maka
R = f(x; y) 2 B 2 y = 3x
= f(1; 2); (2; 5); (3; 8)g

1g
z

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; tentukan 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 pasangan terurut.
8. tentukan banyaknya relasi biner pada A yang memuat sedikitnya 7
anggota.

3.2

Fungsi

Denisi 3.3 Fungsi (pemetaan) f dari himpunan A ke himpunan B; dinotasikan 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 denisi 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 denisi
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
Denisi 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 didenisikan sebagai
f (x) = bxc
dimana bxc adalah intejer terbesar yang
(a) b3; 8c = 3; b3c = 3; b 3; 8c =

x: Sebagai ilustrasi:

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 didenisikan 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 didenisikan 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 pendenisian 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;
Mendenisikan fungsi f : A ! B, berarti mendenisikan 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 mendenisikan fungsi dari A ke B:

3.2 Fungsi

66

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


fungsi dari A ke B:
Jawab. Semuanya ada 23 = 8 fungsi dari A ke B; yaitu:
f1
f2
f3
f4
f5
f6
f7
f8

=
=
=
=
=
=
=
=

f(1; a); (2; a); (3; a)g;


f(1; a); (2; a); (3; b)g;
f(1; a); (2; b); (3; a)g;
f(1; a); (2; b); (3; b)g;
f(1; b); (2; a); (3; a)g;
f(1; b); (2; a); (3; b)g;
f(1; b); (2; b); (3; a)g; dan
f(1; b); (2; b); (3; b)g:
z

Denisi 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 denisi di atas jelas bahwa untuk fungsi f : A ! B yang injektif,
maka jelas jAj
jBj : Dengan menggunakan konsep logika denisi 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. Selanjutnya, 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 denisinya 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 pendenisian fungsi injektif.
Konklusi 3 Diberikan himpunan berhingga tak-kosong A dan B; dan misalkan 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;
Mendenisikan fungsi injektif f : A ! B, berarti mendenisikan 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!
cara mendenisikan fungsi injektif dari A ke B:
(n m)!
Contoh 3.9 Misalkan A = f1; 2g dan B = fa; b; cg: Denisikan semua
fungsi injektif dari A ke B:
Jawab. Semuanya ada P (3; 2) =
yaitu:

3!
1!

= 6 fungsi injektif dari A ke B;

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:
z
Denisi 3.6 Misalkan f : A ! B dan A1

A; didenisikan

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


didenisikan 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 denisinya, 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 ):
z

Denisi 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:
Denisi 3.8 Misalkan A1
dengan rumus

A dan f : A1 ! B: Jika fungsi g : A ! B


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 didenisikan


f = f(1; 10); (2; 13); (3; 16); (4; 19); (5; 22)g:
Misalkan pula didenisikan 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; tentukan 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
4.

1 untuk semua a 2 R r Z:

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 didenisikan
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+ , didenisikan 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 Jenis Kedua

Denisi 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 didenisikan dengan
f (x) = 3x + 1; 8x 2 Z;
dan fungsi g : R ! R yang didenisikan 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 didenisikan dengan
g(x) = 3x + 1; 8x 2 Q;
dan fungsi h : R ! R yang didenisikan 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
g(x) = g(

1
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 denisi 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 pendenisian 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 mendenisikan 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

cara mendenisikan 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 mendenisikan semua
fungsi dari A ke B; sedangkan hanya dua yang tidak surjektif, maka ada
8 2 = 6 cara mendenisikan 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 mendenisikan fungsi surjektif dari A ke B: Kemudian, nyatakan secara umum untuk A sembarang himpunan dengan jAj = m 3; sedangkan
ditetapkan B = f1; 2; 3g; maka ada
3 m
3
3

3 m
3 m
2 +
1
2
1

cara mendenisikan 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 denisikan


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
2
2

3 4
1
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
34

3 4
2
2

3 4
1 =
1

3 4
3
3

3 4
3 4
2 +
1 = 36
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 dengan jAj = m dan jBj = n; maka ada sebanyak
n m
n
n
+( 1)n
=

n 1
X

n
2

( 1)k

k=0

n
X
k=0

( 1)k

(n

1)m +

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

k
n

(n

k)m

(n

k)m

n
n

n m
1
1

cara mendenisikan fungsi surjektif dari A ke B:

(n

2)m

:::

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 mendenisikan fungsi surjektif dari A ke B?
Jawab. Dengan menerapkan Konklusi 4, banyaknya fungsi surjektif dari
A ke B adalah
4
X
k=0

( 1)k

4
4

(4

k)7 =

4 7
4
4

4 7
4 7
3 +
2
3
2

4 7
1
1

= 8400:
z

Contoh 3.18 Departemen Pertahanan mempunyai 7 proyek yang berkaitan


dengan keamanan tingkat tinggi. Telah ditunjuk 4 perusahaan untuk menangani 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
pendenisian 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 pendenisian 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
= 0; 5127:
z
lantai adalah 16384
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, berarti 6 dokumen tersisa harus dikerjakan oleh 3 staf, sehingga jawabannya adalah
3
X
3
( 1)k
(3 k)6 = 540 cara.
3 k
k=0
3. apabila Kepala TU masih dibolehkan mengerjakan dokumen yang lain,
berarti 6 dokumen tersisa harus dikerjakan oleh 4 staf, sehingga jawabannya adalah
4
X
k=0

( 1)k

4
4

(4

k)6 = 1560 cara.

z
Contoh berikut ini akan mengarah generalisasi bilangan Stirling jenis kedua.
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 dapat 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
3) fcg1 fa; bg2 fdg3
5) fdg1 fa; bg2 fcg3

2) fa; bg1 fdg2 fcg3


4) fcg1 fdg2 fa; bg3
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 diperhatikan), maka keenam (3!) contoh tersebut dianggap identik (tidak dibedakan).

3.3 Fungsi Surjektif dan Bilangan Stirling Jenis Kedua

77

= 6 cara mendistribusikan 4 obyek yang berbeda


Dengan demikian, ada 36
3!
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=0
n k
n

k)m :

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 secara 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

1:

Bukti. Dari Konklusi 5, jelas bahwa S(m; 1) = 1 dan S(m; m) = 1: Misalkan 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 pendistribusian 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 tersisa, 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 penempatan 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
1
7
6
1
4
5
1
15
25
10
1
1
31
90
65
15
1
6
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:
Contoh 3.22 Untuk m

n;

n
P

S(m; i) adalah banyaknya cara yang mungkin

i=1

untuk mendistribusikan m obyek yang berbeda ke dalam n wadah yang identik dengan ada wadah yang kosong diperbolehkan. Perhatikan dari baris ke-4
dalam tabel bilangan Stirling di atas, bahwa ada 1 + 6 + 7 = 14 cara mendistribusikan 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
d) f (x) = x2

b) f (x) = 2x 3
e) f (x) = x2 + x

c) f (x) = x + 5
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
n
X

( 1)k

k=0

n
n

(n

k)m = 0

untuk n = 5 dan m = 2; 3; 4:
2. Periksalah bahwa 57 =

5
P

i=1

m
i

(i!)S(7; i):

3. Berilah argumen kombinatorial untuk membuktikan bahwa


n
X
m
m =
(i!)S(n; i);
i
i=1
n

8m; n 2 Z+ :

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 sehingga 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 membedakannya, 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 membedakannya, 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 menghitung 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


S(m; 2) = (m

1)!

2; buktikan bahwa

m
X1
i=1

3.4

1
:
i

Komposisi Fungsi dan Fungsi Invers

Denisi 3.10 Suatu fungsi f : A ! B disebut bijektif (korespondensi satusatu), 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 denisi di atas jelas bahwa jika f : A ! B adalah bijektif, maka
jAj = jBj: Terkait dengan konsep pencacahan, sisi kombinatorik dari denisi
fungsi bijektif diberikan dalam konklusi berikut.
Konklusi 6 Untuk sembarang himpunan berhingga tak-kosong A dan B dengan jAj = n dan jBj = n; maka ada sebanyak
n! = n(n

1)(n

2):::1

cara mendenisikan fungsi bijektif dari A ke B:


Denisi 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
didenisikan 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:
p=

1 2 3 4 5
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

Denisi 3.12 Fungsi bijektif 1A : A ! A yang didenisikan dengan 1A (a) =


a; 8a 2 A; disebut fungsi (permutasi) identitas pada A:
Denisi 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 didenisikan dengan
x;
jika x 2 Z
bxc + 1; jika x 2 R r Z
g(x) = dxe; 8x 2 R:

f (x) =

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:
Denisi 3.14 Misalkan f : A ! B dan g : B ! C; fungsi komposit dari
f dan g; dinotasikan g f : A ! C; didenisikan 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 )(3) = g(f (3)) = g(b) = y

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


(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) :
z
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)
z
Denisi 3.15 Jika f : A ! A; didenisikan 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 didenisikan dengan
f = f(1; 2); (2; 3); (3; 4); (4; 3)g;
maka
f2 = f
f3 = f

f = f(1; 2); (2; 2); (3; 2); (4; 1)g


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

Denisi 3.16 Jika R adalah relasi dari himpunan A ke B; maka konvers


dari R; dinotasikan Rc ; didenisikan
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 :

Denisi 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
2

5);

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; dinotasikan g = f 1 ; selanjutnya
f

= f c dan (f

= 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.


Bukti. ()) Misalkan f invertibel, maka ada tepat satu f
1

f = 1A dan f

sehingga

= 1B :

Akan dibuktikan f bijektif, yaitu:


1. f injektif. Untuk sembarang x; y 2 A,
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
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 didenisikan 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
Jadi, g = f

g) (y) = y , 1B (y) = y

sehingga f invertibel.

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
(g f )

=f

g 1:

Bukti. Asumsikan f dan g invertibel, maka ada funsi f


g : C ! B sehingga
1

f
g

1
1

f = 1A dan f f
g = 1B dan g g

1
1

= 1B :
= 1C

: B ! A dan

3.4 Komposisi Fungsi dan Fungsi Invers

86

Berdasarkan Teorema 3.4, g f juga invertibel dengan invers (g f )


(g f )

dan

(g f ) = 1A

Di lain pihak,
1

(f

g 1 ) (g f ) = f
= f
1

Jadi, (g f )

=f

1
1

g 1 g
f = 1A

f= f

1B

f
z

g 1:

Contoh 3.31 Untuk m; b 2 R; m 6= 0; fungsi f : R ! R didenisikan dengan f = f(x; y) y = mx + bg merupakan fungsi invertibel, karena jelas f
bijektif. Untuk mendapatkan f 1 ; perhatikan bahwa
f

Jadi, 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

: R ! R didenisikan dengan f

Denisi 3.18 Jika f : A ! B dan B1


f

(x) =

1
(x
m

bg:

B; maka

(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. f

(B1 \ B2 ) = f

(B1 ) \ f

(B2 ) ;

2. f

(B1 [ B2 ) = f

(B1 ) [ f

(B2 ) ; dan

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 didenisikan fungsi g; f : A ! R dengan

f (x) = 2x

4 dan

g (x) =

2x2 8
:
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 didenisikan dengan f (x) = x


g(x) = 3x; dan
0; jika x genap
h(x) =
1; jika x ganjil.

1;

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 didenisikan 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 didenisikan dengan
8
x 0
< x + 7;
2x + 5; 0 < x 3 :
f (x) =
:
x 1;
3 x
Tentukan:

3.5 Relasi Ekuivalensi

1. f

( 10); f

89

(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 didenisikan 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 mendenisikan fungsi f : A ! B sehingga f 1 (f6; 7; 8g) = f1; 2g?
2. Jika jAj = jCj = 5; ada berapa cara mendenisikan fungsi f : A ! C
sehingga f invertibel.
Soal 3.4.10 Buktikan semua teorema di didalam subbab ini!

3.5

Relasi Ekuivalensi

Denisi 3.19 Suatu relasi (biner) R pada himpunan A disebut reeksif


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 reeksif, sedangkan
R2 = f(x; y) 2 A

A x

yg

adalah reeksif.
Jawab. Perhatikan bahwa, karena (3; 3) 2
= R1 sedangkan 3 2 A; maka R1
tidak reeksif. Karena untuk setiap x 2 A berlaku x x; maka (x; x) 2 R2
untuk setiap x 2 A; akibatnya setiap x 2 A reeksif.
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 reeksif pada A adalah
2
2(n n) :
Bukti. Misalkan A = fa1 ; a2 ; :::; an g; relasi R pada himpunan A reeksif
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


2
sebanyak 2(n n) cara untuk untuk mengkonstruksi R:
z
Denisi 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 reeksif
pada A:
2. R2 = f(1; 1); (2; 2); (3; 3); (3; 2)g adalah reeksif tetapi tidak simetrik
pada A:
3. R3 = f(1; 1); (2; 2); (3; 3)g adalah reeksif sekaligus simetrik pada A:
4. R4 = f(1; 1); (2; 2); (3; 3); (2; 3); (3; 2)g adalah reeksif sekaligus simetrik
pada A:
5. R5 = f(1; 1); (2; 3); (3; 3)g adalah bukan reeksif maupun simetrik pada
A:
Konklusi 8 Jika jAj = n; maka banyaknya relasi simetrik pada A adalah
2(

n2 +n
)
2

dan banyaknya relasi yang reeksif dan sekaligus simetrik adalah


2(

n2 n
)
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
A2 = f(ai ; aj ) 1

i ng dan
i; j n; i 6= jg:

Dalam hal ini, A1 \ A2 = ?; jA1 j = n; dan


jA2 j = jA

Aj

jA1 j = n2

Perhatikan pula bahwa keanggotaan A2 dapat dibuat berpasang-pasangan,


yaitu (ai ; aj ) berpasangan dengan (aj ; ai ); sehingga di dalam A2 ada sebanyak
n2 n
pasang.
2
Untuk mengkonstruksi suatu relasi simetrik berarti mendenisikan himpunan 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
2n

n2 n
2

=2

n2 +n
2

Untuk mengkonstruksi suatu relasi simetrik dan sekaligus reeksif berarti


mendenisikan himpunan yang anggotanya semua anggota dari A1 dan beberapa pasang dari A2 (boleh tidak ada). Dengan demikian banyaknya cara
mengkonstruksi relasi simetrik dan sekaligus reeksif adalah
1

n2 n
2

=2

n2 n
2

:
z

Denisi 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

Denisi 3.22 Suatu relasi R pada himpunan A disebut antisimetrik apabila 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 didenisikan dengan (A; B) 2
R , A B merupakan relasi antisimetrik. Selain itu, perhatikan bahwa R
juga merupakan relasi reeksif 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 didenisikan
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 didenisikan relasi
R1 = f(1; 1); (2; 2)g; maka R1 adalah simetrik dan juga antisimetrik. Jika
didenisikan 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
(2n )(3

n2 n
2

cara untuk mendenisikan relasi antisimetrik pada A:


Denisi 3.23 Relasi R pada himpunan A disebut ekuivalensi jika R adalah
sekaligus reeksif, 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.
Denisi 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

1.

k
S

93

Xi = X; dan

i=1

2. untuk setiap i 6= j; Xi \ Xj = ?:
Masing-masing subhimpunan Xi disebut part dari partisi P: Berdasarkan
denisi 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 himpunan 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 partisi 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 didenisikan: 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 pertanyaan yang muncul adalah berapa lama algoritme tersebut mampu menyelesaikan suatu problem. Kemudian, apabila satu problem dapat diselesaikan
oleh lebih dari satu algoritme, maka algoritma mana yang terbaik. Untuk 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 bahasan 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

4.1.1

95

Dominasi Fungsi

Denisi 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 ;

k; 8n 2 Z+ :

dimana n

Dari denisi di atas terlihat bahwa pembatasan nilai fungsi f oleh kelipatan 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 gatau
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 Denisi 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
untuk semua n
Dilain pihak

1: Kesimpulannya, f 2 O (g) dengan m = 9 dan k = 1:

jg (n)j = n2 = n2
untuk semua n

5n2 + 3n2 + n2 = 9n2 = 9 jg (n)j ;

5n2 + 3n + 1 = 5n2 + 3n + 1 = jf (n)j ;

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
dan g (n) = n3 : Maka

4n + 2

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
untuk semua n
Jadi

3n3 + (7n

4) n + 2 = 3n3 + (7n

4) n + 2 = jf (n)j

1: Kesimpulannya, g 2 O (f ) dengan m = 1 dan k = 1:


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 kubik saling mendominasi satu sama lain. Jadi, untuk sembarang fungsi kubik 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
f (n) =

n (n + 1) (2n + 1)
n (n + 1)
; 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 algoritme.

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 didesikan 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 fungsifungsi f : Z+ ! R berikut. (Beberapa diantaranya kemudian buktikan!)
1. f (n) = n3

5n2 + 25n

2. f (n) = 3 + sin

1
n

165: Buktikan!

: 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
10. f (n) = 3n + (n

20:

2)! + 7n

11. f (n) = 5n + 100n5 + 10n


12. f (n) = 3n10

12:
10:

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 untuk 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 denisikan fungsi komplesitas waktu f (n) sebagai
fungsi yang mengukur banyaknya operasi dalam suatu algoritme yang mempunyai variabel input n: Yang dimaksud dengan banyaknya operasi adalah
banyaknya operasi dasar (jumlah, kurang, kali, dan bagi), ditambahkan dengan assignment, dan perbandingan (ekspresi logika). Setelah kita mendenisikan f (n) untuk suatu algoritme, kemudian dengan Tabel O-Besar kita
tentukan order dari f atau bentuk Oh-besar dari f sebagai ukuran esiensi
algoritme yang bersangkutan.
Contoh 4.6 Misalkan diketahui Prosedur 8. Denisikan 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 variabelvariabel: 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 dieksekusinya blok statemen while.
(b) untuk i = n + 1 yang menghasilkan keputusan berhentinya eksekusi blok statemen while.
Dengan demikian kita dapat mendenisikan 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. Denisikan fungsi f (n) untuk masing-masing prosedur itu yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:
Jawab. Kita catat bahwa Prosedur 9 dan Prosedur 10 adalah samasama 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 denisi
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 denisi 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
n
X
i=1

i=

n (n + 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 . Denisikan 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 kompleksitas waktu lebih baik. Untuk itu perhatikan analisis perhitungan berikut.
Berdasarkan denisi
an := aa:::a
| {z }
n kali
dan dengan sifat asosiatif perkalian diperoleh bahwa, untuk n genap:
an

dan untuk n ganjil:


an

:=

:=

(aa)(aa)::: (aa) =
|
{z
}
n
kali
2

(aa)(aa)::: (aa) a
|
{z
}
n
b 2 c kali

(a2 ) 2

bn
c
2

(a2 )

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 bilangan 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

n
9

15
16
17 31
32
33 63
..
.
2i
(2i + 1) (2i+1
..
.

104

Banyaknya ulangan Banyaknya perbandingan


4
5
5 = log2 16 + 1
6 = log2 16 + 2
5
6
6 = log2 32 + 1
7 = log2 32 + 2
6
7
..
..
.
.
i + 1 = log2 2i + 1
i + 2 = log2 2i + 2
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 problem 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) : Apabila 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. Inilah yang disebut dengan kasus terburuk (worst case). Dalam problem ini
komplesitas komputasi untuk kasus terburuknya berorder linear O (n) : Disamping kasus terbaik dan terburuk adalah kasus rata-rata (average case).
Penentuan ordernya diperlukan pengertian teori peluang yang pembahasannya 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: Jelas pernyataan ini mengacu untuk nilai n yang besar. Namun yang menjadi
pernyataan berikutnya adalah sejauh mana n dianggap besardan n dianggap 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
kecilkalau 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

Problem
Berukuran n
2
16
64

log2 n
1
4
6

n n log2 n
2
2
16
64
64
384

106

Order
n2
2n
4
4
256
6; 5 104
4096 1; 84 1019

n!
2
2; 1 1013
> 1089

Soal 4.1.2 Buatlah analisis pada beberapa algoritme berikut:


1. Panggil Algoritme 2, dan denisikan fungsi f (n) untuk algoritma itu
yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:
2. Panggil Algoritme 5, dan denisikan fungsi f (n) untuk algoritma itu
yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:
3. Panggil Algoritme 6, dan denisikan fungsi f (n) untuk algoritma itu
yang menyatakan jumlah operasinya. Kemudian tentukan oder dari f:
4. Panggil Algoritme 10, dan denisikan fungsi f (n) untuk algoritma
itu yang menyatakan jumlah operasinya. Kemudian tentukan oder dari
f:
5. Panggil Algoritme 7 dan Algoritma 8, dan denisikan fungsi f (n)
untuk masing algoritma itu yang menyatakan jumlah operasinya. Kemudian buatlah analisis esiensinya:
6. Pada masing-masing segmen program pseudocode berikut, f (n) menyatakan 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
begin
(d)
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 dibahas 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 status 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 pemrosesan informasi oleh komputer. Sebagai gambaran, program komputer dapat
direpresentasikan sebagai barisan karakter yang berhingga. Suatu cara aljabar diperlukan untuk menangani barisan berhingga tersebut atau menangani 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, pendenisian
= 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
denisi berikut ini.
Denisi 4.2 Jika
adalah suatu alfabet dan n 2 Z+ ; didenisikan kuasa
dari secara rekursif sebagai berikut:
1.

2.

n+1

; dan

= fxy=x 2

Contoh 4.10 Misalkan


2

g; xy menotasikan jajaran x dan y:

= f0; 1g; maka

= f00; 01; 10; 11g;


= f000; 001; 010; 011; 100; 101; 110; 111g; dan
= f0000; 0001; 0010; 0011; 0100; 0101; 0110; 0111;
1000; 1001; 1010; 1011; 1100; 1101; 1110; 1111g:

3
4

Misalkan

;y 2

= fa; b; cg; maka


2
3

= faa; ab; ac; ba; bb; bc; ca; cb; ccg; dan
= faaa; aab; ::; acc; baa; bab; ::; bcc; caa; cab; ::; cccg:

Suatu anggota dari n disebut string n-simbol atau string dengan panjang n: Secara umum, jika j j = m; maka j n j = mn :
Denisi 4.3 Untuk alfabet ; didenisikan 0 = f g; dimana
menotasikan string kosong, yaitu string yang tidak memuat simbol apapun yang
diambil dari :
Dari denisi 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 ?:
Denisi 4.4 Jika
1.

1
S

n=1

adalah suatu alfabet, maka


=

n2Z+

; dan

4.2 Bahasa: Mesin Status Berhingga

2.

1
S

109

n=0

Dari denisi di atas, jelas bahwa


=

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
takhingga, 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 pendenisian
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 + ))
Denisi 4.5 Jika w1 ; w2 2

1=3(:

; maka bisa ditulis

w1 = x1 x2 :::xm dan w2 = y1 y2 :::yn ;


dan x1 ; x2; :::; xm ; y1 ; y2; :::; yn 2
w1 = w2 jika

untuk m; n 2 Z+ ;

: String w1 dan w2 dikatakan sama, notasi

m = n; dan xi = yi untuk setiap 1

m:

Denisi 4.6 Misalkan w = x1 x2 :::xn 2 + ; dimana xi 2


untuk setiap
1 i n: Panjang dari w, notasi jjwjj ; didenisikan sebagai nilai dari
n: Untuk kasus string kosong ; maka jj jj = 0:

4.2 Bahasa: Mesin Status Berhingga

Denisi 4.7 Jika x; y 2

110

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, didenisikan sebagai 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 :
Denisi 4.8 Untuk setiap x 2
cara rekursif sebagai

; didenisikan kuasa (power) dari x se-

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:
Denisi 4.9 Jika x; y 2
dan w = xy; maka string x disebut preks
(prex) dari w; dan jika y 6= ; maka x disebut preks sejati (proper prex) dari w: Dalam hal ini, y disebut saks (su x) dari w; dan jika x 6= ;
maka y disebut saks sejati (proper prex) dari w:

4.2 Bahasa: Mesin Status Berhingga

111

Denisi 4.10 Jika x; y; z 2


dan w = xyz; maka y disebut dengan substring dari w: Apabila sedikitnya satu dari x dan z bukan ; maka y disebut
substring sejati dari w:
Denisi 4.11 Diberikan alfabet ; sembarang subhimpunan dari
disebut
dengan bahasa (language) atas : Dalam denisi ini termasuk himpunan
kosong ? dan disebut bahasa kosong (empty language).
Denisi 4.12 Untuk alfabet
dan bahasa A; B
dan B; dinotasikan AB; didenisikan sebagai

; rangkaian dari A

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

Denisi 4.13 Diberikan bahasa A


; kita dapat mengkonstruksi bahasabahasa 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:
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

4.2.2

112

Mesin Status Berhingga

Sebelum mendenisikan 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 umumnya 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 sejumlah 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 status 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

Denisi 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 himpunanhimpunan 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 Didenisikan mesin status berhingga M = (S; I; O; ; $); dimana 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
dinyatakan dalam
Status s0
Input
1
Output 0

4.3

input string 1010; maka outputnya string 0010: Hasil ini


tabel berikut.
s1 s2 s1 s2
0 1 0 0
0 1 0

Relasi Rekurensi

Telah diperkenalkan dalam bahasan sebelumnya tentang denisi rekursif,


yang pada dasarnya merumuskan suku ke-n dari suatu barisan tidak secara
eksplisit melainkan nilainya bergantung pada suku-suku sebelumnya. Dengan 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 nilai 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 denisi 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
= 45
= 135
= :::: Jika a0 ; a1 ; a2 ;
5
15
45
=r
... adalah progresi geometrik dengan rasio bersama adalah r; maka an+1
an
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 mendenisikan progresi geometrik
yang tunggal, karena barisan 3; 9; 27; 81, ... juga memenuhi relasi yang
bersangkutan. Jadi untuk mendenisikan suatu progresi geometrik dari suatu 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 hubungannya juga linear dengan koesien konstan, maka disebut relasi rekurensi
homogen linear order pertama dengan koesien 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 ;

0;

(4.1)

a0 = 5:

Lima suku pertama menentukan pola berikut ini:


a0
a1
a2
a3
a4

=
=
=
=
=

5;
3a0
3a1
3a2
3a3

= 3 (5) ;
= 3 (3 (5)) = 32 (5) ;
= 3 32 (5) = 33 (5) ;
= 3 33 (5) = 34 (5) :

Hasil ini membawa kita pada rumusan bahwa untuk setiap n


yang disebut solusi umum dari Relasi (4.1).
Kesimpulan: Solusi umum dari suatu relasi rekurensi
an+1 = dan ;

0;

d konstan, dan

adalah tunggal dan dirumuskan dengan


an = Adn ;

0:

a0 = A

0; an = 5(3n )

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 ditransformasikan 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 koesien konstan 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 esien, 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 bersangkutan. Jika an menyatakan banyaknya perbandingan, maka kita dapatkan relasi
rekurensi berikut:
an = an

+ (n

1);

2;

a1 = 0:

Relasi ini adalah linear order pertama dan tak-homogen. Karena tidak ada
teknik umum untuk menyelesaikannya, kita harus mencari polanya:
a1
a2
a3
a4
a5

=
=
=
=
=

0
a1 + (2
a2 + (3
a3 + (4
a4 + (5

1) = 1
1) = 1 + 2
1) = 1 + 2 + 3
1) = 1 + 2 + 3 + 4:

Kita dapatkan rumus umum yang kebenarannya dapat dibuktikan dengan


prinsip induksi matematik, yaitu:
an = 1 + 2 + 3 + ::: + (n

1) =

n2

n
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 Koesien 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

+ ::: + Cn k an

= f (n) ;

k;

adalah relasi rekurensi linear berorder k dengan koesien 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

+ Cn 2 an

= 0;

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

+ Cn 2 crn

(4.3)

= 0:

Karena c; r 6= 0; Persamaan (4.3) menjadi


Cn r2 + Cn 1 r + Cn

=0

merupakan persamaan kuadrat yang disebut persamaan karakteristik. Misalkan 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

6an

= 0;

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

2 ( 3)100

a3 = 2100

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 ;

0:

Jika
z = x + iy 2 C;

z 6= 0;

dapat kita tuliskan


z = r (cos + i sin ) ;

r=

Jika x = 0; maka untuk y > 0;

z = yi = yi sin

x2 + y 2 ; dan

= y cos

y
= tan untuk x 6= 0:
x

+ i sin

dan untuk y < 0;


z = yi = jyj i sin

3
3
3
= jyj cos
+ i sin
2
2
2

Dalam semua kasus,


z n = rn (cos n + i sin n )
Contoh 4.17 Tentukan 1 +
Jawab. Misalkan z = 1 +
Jadi
1+

10

3i

3i

10

0:

3i; maka x = 1; y =

3, r = 2; dan

= 3:

10
10
+ i sin
3
3
4
4
= 210 cos
+ i sin
3
3
p ! !
1
3
= 210
i
2
2
p
=
29 1 + 3i :

= 210 cos

4.3 Relasi Rekurensi

119

Contoh 4.18 Selesaikan relasi rekurensi an = 2 (an


2 dan a0 = 1; a1 = 2:

an 2 ) ; dimana n

Jawab. Misalkan an = crn ; dimana c 6= 0 dan r 6= 0; adalah solusinya,


maka persamaan karakteristiknya
r2

2r + 2 = 0 ) r = 1

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
p
n
n
n
n
+ i sin
+ i sin
+ c2 ( 2)n cos
an = c1 ( 2)n cos
4
4
4
4
p n
p n
n
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
4
4

0:

p
200
200
( 2)200 cos
+ sin
4
4
z

: 1267 650 600 228 229 401 496 703 205 376
KASUS-C (Dua Akar Real Sama)
Contoh 4.19 Selesaikan relasi rekurensi an+2 = 4an+1
dan a0 = 1; a1 = 3:

4an ; dimana n

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 dapatkan solusi umum
an = c1 (2)n + c2 n (2)n :
Untuk a0 = 1; a1 = 3; didapatkan solusi khusus
1
2

an = (2)n +

n (2)n = (2)n + n (2)n

0:
z

Bentuk Umum: Jika


Cn an + Cn 1 an

+ ::: + Cn k an

Cn (6= 0) ; Cn 1 ; :::; Cn

= 0; dengan

(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
dimana A0 ; A1 ; A1 ; :::; Am

4.3.3

rn

adalah sembarang konstan.

Relasi Rekurensi Tak-homogen

Kita perhatikan relasi rekurensi


an

an

= f (n);

1;

f (n) tidak semuanya nol untuk nilai n; maka solusinya


an = a0 +

n
X

f (i) :

(4.6)

i=1

Kita dapat
Pn menyelesaikan Persamaan (4.6) dalam n; jika kita dapat merumuskan i=1 f (i) :

4.3 Relasi Rekurensi

121

Contoh 4.20 Selesaikan relasi rekurensi


an

an

= 3n2 ;

1; dan a0 = 7:

Jawab. Disini f (n) = 3n2 ; sehingga solusi umumnya


an = a0 +

n
X

f (i)

i=1

= 7+

n
X

3i2

i=1

= 7+

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

Chapter 5
Pengantar Teori Graf
5.1

Konsep Dasar Graf

Denisi 5.1 Misalkan V adalah himpunan takkosong dan berhingga, dan


misalkan pula E
V
V . Pasangan (V; E) disebut graph berarah (directed graph digraph) pada V , dimana V disebut himpunan verteks atau
node, dan E disebut himpunan (directed) edge atau arc. Selanjutnya untuk menyatakan graph seperti ini ditulis G = (V; E). Jika E himpunan edge
takberarah, G = (V; E) disebut graph takberarah.
Contoh 5.1 Didenisikan 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

Gambar 5.1

Untuk sembarang edge, misalkan e = (x; y), maka e disebut insiden (incident) 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 Didenisikan 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.

Gambar 5.2

5.1 Konsep Dasar Graf

124

Perhatikan bahwa pada pedenisian graf takberarah edge-nya diberikan


dalam bentuk himpunan, misalnya saja fa; bg: Sesuai dengan pengertian himpunan, ini berarti urutannya tidak diperhatikan, sehingga fa; bg = fb; ag:
Sedangkan pada pedenisian 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.
Denisi 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 denisi walk di atas, verteks dan
edge boleh diulang.
Denisi 5.3 Pandang sembarang walk x
G = (V; E).

y dalam suatu graph takberarah

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 denisi 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

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 denisinya, 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

4. path a

126

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:
z

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
terpendek, sebut saja

b di dalam G; maka dapat dipilih satu yang

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).

Denisi 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

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:
Denisi 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 berbentuk:
(x; y) untuk multigraph berarah, atau
fx; yg untuk multigrapah takberarah.

5.1 Konsep Dasar Graf

128

e
a

c
Gambar 5.5

Gambar 5.5 merupakan contoh representasi dari suatu multigraf berarah.

d
Gambar 5.6

Soal 5.1.1 Untuk suatu graf G = (V; E) yang direpresentasikan pada Gambar 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


5. contoh suatu sirkuit b

b di dalam G yang bukan suatu sirkuit.

b di dalam G yang bukan suatu cycle.

5.1 Konsep Dasar Graf

6. contoh suatu cycle b

129

d di dalam G.

7. banyaknya semua path b

f:

m
j

Gambar 5.7

Soal 5.1.2 Misalkan a dan b adalah dua verteks yang berbeda di dalam suatu graf takberarah dan terhubung. Jarak dari a ke b didenisikan sebagai
panjang path terpendek dari a ke b (jika a = b; jaraknya didenisikan 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 merepresentasikan 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 mengunjungi 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 masingmasing 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 takterhubung.
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. Denisikan 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 Isomorsma

Denisi 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 denisi ini jelas bahwa G adalah subgraf dari dirinya sendiri, atau
G disebut subgraf trivial dari G:

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 denisinya, 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 dengan cara menghapus beberapa verteks atau edge dari G: Yang dimaksud menghapus 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:
Denisi 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 denisi ini, perhatikan bahwa subgraf spanning G1 diperoleh dari
hanya menghapus beberapa edge (tanpa verteks) di dalam G: Graf pada Gambar 5.9 merupakan subgraf spanning dari graf pada Gambar 5.7.

m
j

h
Gambar 5.9

Denisi 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 denisi 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:
z

G0 direpresentasikan pada Gambar 5.10

d
Gambar 5.10

Denisi 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.
Dari denisi ini, perhatikan bahwa jumlah edge dari Kn adalah
bar 5.11 mencontohkan representasi dari K1 ; K2 ; K3 ; dan K4 :

n
2

: Gam-

5.1 Konsep Dasar Graf

K1

K2

134

K3

K4

Gambar 5.11

Denisi 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:

Denisi 5.11 Misalkan G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) adalah dua graf


takberarah. Suatu fungsi f : V1 ! V2 disebut suatu isomorsme 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 isomork.

5.1 Konsep Dasar Graf

135

G1

G2

t
w

Gambar 5.12

Contoh 5.8 Tunjukkan bahwa graf G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) yang


direpresentasikan pada Gambar 5.12 adalah isomok.
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)
didenisikan 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 denisinya
h(a) = w; h(b) = u; h(c) = v; dan h(d) = t:
Perhatikan bahwa syarat kedua dipenuhi oleh h; yaitu
fa; bg
fa; cg
fc; dg
fb; dg

2
2
2
2

V1
V1
V1
V1

$ fh(a); h(b)g = fw; ug 2 V2 ;


$ fh(a); h(c)g = fw; vg 2 V2 ;
$ fh(c); h(d)g = fv; tg 2 V2 ; dan
$ fh(b); h(d)g = fu; tg 2 V2 :

Jadi, h adalah isomorsme dari G1 ke G2 ; sehingga G1 dan G2 isomork. z


Syarat pertama pada Denisi 5.11 menunjukkan bahwa jika jV1 j 6= jV2 j ;
maka langsung dapat kita simpulkan bahwa G1 dan G2 tidak isomork
(karena tidak akan ada fungsi bijektif dari V1 ke V2 ). Demikian pula untuk syarat yang kedua, apabila jE1 j 6= jE2 j ; maka dapat dipastikan bahwa
G1 dan G2 tidak isomork (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 isomork. Dalam hal ini kita hanya bisa mendenisikan fungsi

5.1 Konsep Dasar Graf

136

bijektif yang belum tentu memenuhi syarat yang kedua. Perhatikan contoh
berikut ini.

G1

G2

Gambar 5.13

Contoh 5.9 Jelaskan bahwa graf G1 = (V1 ; E1 ) dan G2 = (V2 ; E2 ) yang


direpresentasikan pada Gambar 5.13 adalah tidak isomok.
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 denisi? Jika dilihat dari strutur
G1 ; graf ini memuat subgraf K4 : Seandainya ada isomorsme dari G1 ke G2 ;
maka isomorsme ini akan memetakan K4 dari dalam G1 ke K4 di dalam
G2 : Akan tetapi, faktanya struktur G2 tidak mempunyai subgraf K4 : Kesimpulannya, tidak ada isomorsme dari G1 ke G2 ; berarti G1 dan G2 tidak
isomork.
z

5.1 Konsep Dasar Graf

137

(G1)

(G2)

f
x

Gambar 5.14

Soal 5.1.9 Misalkan graf G1 dan G2 direpresentasikan pada Gambar 5.14.


Periksalah apakah G1 dan G2 isomork.

(G )

(G 1 )

(G2)

b
c

c
d

f
g

f
i

g
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 merupakan subgraf induced dari G:


2. Terangkan (berdasarkan pengertian penghapusan) mengapa G2 merupakan 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 induced 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 isomork. Kemudian, ada berapa banyak diantara
jawaban tersebut yang terhubung.
Soal 5.1.13 Tentukan banyaknya path yang panjangnya 4 di dalam K7 : Selanjutnya, 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. Buktikan bahwa G1 dan G2 isomork jika dan hanya jika G1 dan G2 isomork.

G1

G2

1
5

Gambar 5.16
Soal 5.1.16 Perluaslah Denisi 5.11 untuk graf berarah. Kemudian, periksalah apakah graf G1 dan G2 yang direpresentasikan pada Gambar 5.15 adalah
isomork.

5.1.2

Derajat Verteks

Denisi 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
menyumbangkan
hitungan
2
pada
v2V deg(v): Dengan demikian, 2 jEj =
P
z
v2V deg(v):
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
Denisi 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

jV j =

2 jEj
:
k

(5.2)

Contoh 5.10 Misalkan graf G = (V; E) adalah reguler-k. Jelaskan hubungan antara jumlah verteks dan edge yang mungkin, yang terkait dengan pendenisian 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
komponen (untuk jvj > 2; graf ini
verteks genap, terpartisikan menjadi jvj
2
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


. Agar graf reguler-3 terdenisikan, nilai
3
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)
setiap v 2 V:

4 untuk

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 isomok?
2. Jika jV j = 7 dan deg(v) = 2 untuk setiap v 2 V; ada berapa banyak
graf G yang saling tidak isomok?
3. Jika jV j = 6 dan G merupakan graf reguler-3; ada berapa banyak graf
G yang saling tidak isomok?
4. Jika jV j = 7 dan G merupakan graf reguler-4; ada berapa banyak graf
G yang saling tidak isomok?
5. Dari jawaban Pertanyaan 3: dan 4:; buatlah generalisasinya.

5.2 Mengenal Beberapa Graf Khusus

5.2

142

Mengenal Beberapa Graf Khusus

Pada bagian ini akan diperkenalkan pengertian dan beberapa sifatnya tentang: graf Euler, Graf graf planar, dan graf Hamilton. Sifat-sifat diberikan
dalam bentuk teorema tanpa disertai pembuktian.

5.2.1

Graf Euler

Denisi 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 suatu 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, sebagai 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:
z
Denisi 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

Denisi 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)
a

(K5)
b

a
b

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. Usaha 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
Denisi 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
Denisi 5.18 Misalkan G = (V; E) adalah graph takberarah tanpa loop, dengan 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
homeomork (homeomorc) jika keduanya isomors, atau jika keduanya dapat diperoleh dari graph suatu takberarah tanpa loop yang sama, sebut saja
H; melalui serangkaian subdivisi elementer.

5.3 Tree

145

Contoh 5.14 Contoh homeomork.


Teorema 5.5 (Teorema Kuratowski) Suatu graf adalah takplanar jika
dan hanya jika ia memuat suatu subgraf yang homeomork dengan K5 atau
K3;3 :
Bukti teorema ini didemonstrasikan pada contoh berikut ini.
Contoh 5.15 Contoh kuratowski.

5.2.3

Graf Hamilton

Denisi 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
untuk semua v 2 V , maka G mempunyai path Hamilton.
Jika deg(v)
2
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 University 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 Applied Cryptography,CRC Press, Inc., 1997.

147

Anda mungkin juga menyukai