0.2. Diktat Matematika Diskrit
0.2. Diktat Matematika Diskrit
UNTUK
ILMU KOMPUTER DAN SAINS
(Discreate Mathematical For Computer & Sains)
Lecture Module Version
Dosen Pengampu:
Maxrizal, S.Pd.Si., M.Sc.
1
DAFTAR ISI
Daftar Isi.............................................................................................................................2
Pertemuan 1. Pengantar Matematika Diskrit......................................................................3
Pertemuan 2. Logika..........................................................................................................5
Pertemuan 3. Himpunan..................................................................................................13
Pertemuan 4. Fungsi........................................................................................................24
Pertemuan 5. Induksi Matematika....................................................................................36
Pertemuan 6. Teori Bilangan............................................................................................41
Pertemuan 9. Aplikasi Teori Bilangan..............................................................................52
Pertemuan 10. Kombinatorika (Permutasi)......................................................................63
Pertemuan 11. Kombinatorika (Kombinasi)......................................................................70
Pertemuan 12. Pengantar Teori Graf...............................................................................75
Pertemuan 13. Graf Khusus.............................................................................................87
Pertemuan 14. Graf Planar dan Graf Bidang...................................................................95
2
Pertemuan 1
Pengantar Matematika Diskrit
A. Matematika Diskrit
Matematika diskrit adalah cabang matematika yang mengkaji objek-objek diskrit. Suatu benda
dikatakan diskrit jika:
1. Terdiri dari sejumlah berhingga elemen yang berbeda, atau
2. Elemen-elemennya tidak bersambungan (unconnected).
Contoh:
Himpunan bilangan bulat (integer)
Pada prinsipnya, komputer digital bekerja secara diskrit. Informasi yang disimpan dan
dimanipulasi oleh komputer adalah dalam bentuk diskrit sehingga matematika diskrit merupakan
ilmu dasar dalam pendidikan informatika atau ilmu komputer.
Matematika diskrit memberikan landasan matematis untuk kuliah-kuliah lain di informatika seperti
algoritma, struktur data, basis data, otomata dan teori bahasa formal, jaringan komputer,
keamanan komputer, sistem operasi, teknik kompilasi, dsb. Karena sangat penting dan
krusial, matematika diskrit sering dikatakan matematika-nya orang informatika.
3
8. Kompleksitas Algoritma (algorithm complexity)
4
Pertemuan ke 2
Logika
A. Proposisi
Logika merupakan dasar dari semua penalaran (reasoning). Penalaran didasarkan pada
hubungan antara pernyataan (statements). Pernyataan atau kalimat deklaratif yang bernilai benar
(true) atau salah (false), tetapi tidak keduanya disebut proposisi.
Contoh:
1. “12 10 “merupakan proposisi bernilai salah.
2. “Sekarang tahun 2015 dan 9 1 “merupakan proposisi bernilai salah.
3. “Jangan memakai HP saat kelas sedang berlangsung” bukan merupakan proposisi.
4. “ y 2 5 “ bukan merupakan proposisi.
5
Perhatikan bahwa p dan q disebut proposisi atomic. Sedangkan kombinasi p dengan q
menghasilkan proposisi majemuk (compound proposition).
C. Tabel Kebenaran
Contoh:
Tentukan tabel kebenaran dari ekspresi logika p q p !
Jawab:
p q p pq p q
p
B B S B B
B S S S S
S B B B B
S S B B B
Suatu proposisi majemuk disebut tautologi jika semua kasusnya bernilai benar (B).
Sedangkan proposisi majemuk disebut kontradiksi untuk semua kasus bernilai salah (S). Jika
tidak berlaku keduanya makan proposisi itu disebut kontingensi (campuran B dan S).
Contoh:
(Silakan cek tabel kebenaran)
1. p p q merupakan tautologi.
2. p q p q merupakan kontingensi.
6
E. Ekuivalensi logis
Kedua ekspresi logika disebut ekuivalensi logis jika memiliki nilai kebenaran yang sama pada tiap
baris tabel kebenaran.Selanjutnya, ekuivalensi logis disimbolkan dengan “ ”.
Contoh:
1. p q q p ,
2. p q q p .
F. Hukum-Hukum Logika
p q r p q r
3 Hukum Asosiatif
p q r p q r
p q r p q p r
4 Hukum Distributif
p q r p q p r
pp p
5 Hukum Idempoten
ppp
pS p
pBB
6 Hukum Identitas
pSS
pB p
7 HukumNegasi p p B
7
p p S
p q p q
8 Hukum DeMorgan
p q p q
9 Hukum Kontrapositif p q q p
10 Hukum Implikasi p q p q
11 HukumBiimplikasi p q p q q p
p p q p
12 Hukum Absorsi
p p q p
Contoh:
Buktikan sifat ekuivalensi logis dengan menggunakan hukum logika pada ekspresi
p q p q p .
Jawab:
p q p q p q (Hukum Distributif)
q
(Hukum Negasi)
pB
G. Sifat Implikasi
Contoh:
Tentukan konvers, invers, dan kontraposisi dari “Jika Amir mempunyai mobil maka ia orang kaya”
Jawab:
8
Konvers : Jika Amir orang kaya maka ia mempunyai mobil.
Invers : Jika Amir tidak mempunyai mobil maka ia bukan orang kaya.
Kontraposisi : Jika Amir bukan orang kaya maka ia tidak mempunyai mobil.
Selanjutnya perbandingan nilai kebenaran keempat sifat di atas akan ditunjukkan pada tabel
kebenaran berikut ini.
p q p q pq qp p q q p
B B S S B B B B
B S S B S B B S
S B B S B S S B
S S B B B B B B
9
e. Simplikatif
p pq
q atau
q
f. Konjungsi p
p
q
pq
Contoh:
Diberikan beberapa premis berikut ini:
P1 : p q
. P2 : q r
. P2 : r
C : p .
Apakah penarikan kesimpulan dari premis-premis di atas valid?
Jawab:
Langkah ke- Ekspresi Alasan
1 pq Premis 1
2 qr Premis 2
3 r Premis 3
4 pr Langkah 1,2; Silogisme hipotetikal
5 p Langkah 3,4; Modus tollens
Perhatikan bahwa pada langkah 5 telah menunjukkan kesimpulan yang diketahui. Dengan
demikian, argumen yang diselidiki valid.
Contoh:
Diberikan beberapa premis berikut ini:
P1 : Anda pintar membuat program atau merakit hardware komputer.
10
P2 : Anda tidak pintar membuat program atau mengelola anti virus.
P2 : p r
.C:qr.
Berikut langkah pembuktian:
Langkah ke- Ekspresi Alasan
1 pq Premis 1
2 p r Premis 2
3 q p Langkah 1; Hukum Komutatif
4 q p Langkah 3; Hukum Implikasi
5 pr Langkah 2; Hukum Implikasi
6 q r Langkah 4,5; Silogisme Hipotetikal
7 qr Langkah 6; Hukum Implikasi
I. Latihan Mandiri
11
2. Buatlah tabel kebenaran dari ekspresi logika p q q p .
3. Diberikan ekspresi logika p q p . Tentukan apakah termasuk tautologi,
q
12
Pertemuan 3
Himpunan
A. Pengertian Himpuan
Contoh:
a. Kumpulan mahasiswa jurusan Teknik Informatika STIMIK Atma Luhur.
b. Kumpulan mahasiswa jurusan Manajemen Informatika yang berumur di atas 19 tahun.
Dalam matematika, tidak semua pengelompokkan benda atau manusia disebut dengan
himpunan.
Contoh:
a. Kumpulan mahasiswa jurusan TI yang ganteng.
b. Kumpulan masakan Bangka yang enak.
Perhatikan bahwa kedua contoh diatas melibatkan sisi kualitas sehingga menimbulkan sifat
ambiguitas. Kita tidak bisa mendefinisikan dengan jelas, kriteria-kriteria ganteng ataupun kriteria
suatu makanan dikatakan enak. Pada intinya, setiap kelompok yang tidak dapat didefinisikan
dengan jelas bukanlah suatu himpunan.
B. Notasi Himpunan
Himpunan biasanya dinyatakan dengan huruf kapital seperti A, B,C, dan diikuti oleh tanda
kurung kurawal . Anggota atau elemen dari himpunan berupa huruf, biasanya dinyatakan
dalam huruf kecil.
Contoh:
a. A 1, 2,3
13
b. B x x 3, x
c. C a,b, c, d
Selanjutnya cara penyajian pada contoh a) dan c) disebut bentuk pendaftaran (tabular-form) dan
cara penyajian pada contoh c) disebut bentuk perincian (set-builder form).
Contoh:
1. Misalkan A 1,3,5,
2. B Andi,Canas,Toni
C. Jenis-Jenis Himpunan
a. Himpunan kosong (null sets)
Himpunan kosong adalah himpunan yang tidak memiliki anggota. Notasi untuk himpunan kosong
adalah atau .
Contoh:
1.
A x x adalahmanusiaberkakiempat
14
2. B x x 2
4 dan x ganjil
Jelas bahwa A , karena tidak ada manusia normal yang berkaki empat. Sedangkan B
, karena tidak ada angka ganjil yang memenuhi persamaan itu. Nilai x yang mungkin hanyalah
2 atau 2 .
Himpunan yang memuat semua anggota yang sedang dibicarakan disebut himpunan semesta.
Contoh:
1. Misalkan A atau himpunan bilangan ganjil dan B 2, 4, atau
1,3,5,
6,
himpunan bilangan genap. Paling tidak kita bisa memilih himpunan bilangan asli
sebagai himpunan semesta yaitu S .
2. Misalkan diberikan beberapa himpunan berikut ini.
Himpunan A dikatakan himpunan bagian dari himpunan B jika setiap anggota A merupakan
anggota B , yang dinotasikan dengan A B .
Jika paling sedikit ada satu anggota dari A bukan merupakan anggota B maka A bukan
himpunan bagian dari B , dinotasikan A B .
Contoh:
1. merupakan himpunan bagian dari setiap himpunan.
2. Misalkan
A 2,3 dan B 1, 2, 3, 4 maka jelas A B .
15
Perhatikan bahwa A B dibaca A subset B atau bisa juga dinyatakan sebagai B super set
dari A .
Jika himpunan A memiliki n anggota maka banyak himpunan bagian dari A adalah 2n .
Misalkan
A a,b, c maka himpunan bagiannya adalah , 1 , 2, 3 , 1, 2, 1, 3 ,
Contoh :
1.
A 1,1, 2
2.
B x x bilangan genap,a,b,c,
Selanjutnya
C bukan merupakan contoh keluarga himpunan karena ada satu
0,1,a,b
anggota yang bukan merupakan himpunan yaitu 0 .
Himpunan kuasa 2 A
adalah keluarga himpunan dari semua himpunan bagian dari himpunan
A.
Contoh:
1. Diberikan A 1, 2, maka banyak himpunan bagian dari A adalah 22 4 yaitu
,1,2,1, 2 .
17
Jadi 2B ,a .
Contoh:
1. Himpunan
2. Himpunan dengan n anggota.
Himpunan tak terhingga adalah himpunan yang berkorespondensi satu-satu dengan bilangan
asli, yaitu himpunan yang banyak anggotanya tak terhingga.
Contoh:
1. Himpunan bilangan asli.
2. Himpunan bilangan bulat.
Himpunan terhitung adalah himpunan terhingga (finite) atau tak terhingga (infinite).
Contoh:
1. A a,b, c
18
h. Himpunan saling lepas (disjoint sets)
Himpunan A dan B dikatakan saling lepas jika himpunan A dan B tidak memiliki elemen
yang sama.
Contoh:
Misalkan himpunan A 1, dan B a, maka himpunan A dan B dikatakan saling
lepas. 2,3 b
D. Kesamaan Himpunan
Himpunan A dikatakan sama dengan himpunan B jika setiap elemen dari A merupakan
elemen dari B dan sebaliknya.
Contoh:
1. A 1, 2,3 dan B 3, 2,1 maka A B .
2. C 1, 2, 2, 2,1 dan D 2,1, 2 maka C D .
3.
E 5, 6 , F x x2 11x 30 maka E F .
Perhatikan bahwa jika ada elemen yang sama cukup dihitung sekali dan pada himpunan urutan
elemen tidak dipermasalahkan.
Berdasarkan sifat himpunan bagian, himpunan A dikatakan sama dengan himpunan B jika
berlaku A B dan B A .
E. Representasi Himpunan
Ada dua cara untuk menyajikan himpunan yaitu menggunakan diagram Venn dan diagram garis.
Diagram Venn biasanya lebih umum digunakan karena dapat menyajikan elemen himpunan
dengan jelas.
19
a. Diagram Venn
Pada diagram Venn, daerah persegi untuk menggambarkan himpunan semesta dan daerah
lingkaran untuk menggambarkan himpunan di dalamnya.
Contoh:
1. Misalkan S a,b, c, d, A a, b dan B c, d .
e ,
2.
Diberikan diagram Venn sebagai berikut.
Pada contoh 1, himpunan A dan B tidak dapat diperbandingkan (not comparable) sedangkan
pada contoh 2, himpunan A dan B dapat diperbandingkan (comparable).
b. Diagram garis
Cara kedua untuk menyatakan hubungan antar himpunan dengan menggunakan diagram garis.
Pada diagram garis A B dinyatakan sebagai
20
Contoh:
1. Misalkan A 1, 2,3 B 3 dan C 1, 2 .
,
Jelas bahwa B A E
, B A F , C A E , C A F , B C dan
EF.
Jika kita memiliki dua himpunan atau lebih, kita bisa mengoperasikan himpunan-himpunan
tersebut.
Beberapa operasi yang dikenakan pada himpunan:
a. Irisan
A B x x A dan x B
b. Gabungan
A B x x A atau x B
21
c. Penjumlahan
A B x x A, x B , x A B
d. Selisih
A B x x A dan x B
e. Komplemen
Ac x x A dan x S
Contoh:
1. Diketahui S 1, 2, A 2, 3 dan B 2, 4, 6,8,10 maka diperoleh
,10
,
a. A B 2
b. A B 2,3, 4, 6,8,10
c. A B 3, 4, 6,8,10
d. A B 3
e. B A 4, 6,8,10
g. Bc 1,3,5, 7,9
d. Sifat Identitas
A , A S A , A A dan A S S .
e. Sifat Idempoten
A A A dan A A A .
f. Sifat De Morgan
c c
A B Ac Bc dan A B Ac Bc .
H. Latihan Soal
A x x bilangan kelipatan 3, x
a. M 0,3, 6,9
b. N x x bilangan kelipatan 6, x
c. O 99,103,106
23
2. Diberikan S x x 7, x bil.
cacah A x x 7, x bil.prima
.
B x 2 x 4, x
Tentukanlah:
a. AB
b. AB
c. AB
d. AB
e. Ac Bc
c
f. A B
c
g. A B
h. Diagram Venn
i. Diagram Garis
24
e. Laut Sungai
f. Sungai Danau
g. Laut Danau Sungai
25
Pertemuan 4
Fungsi
A. Pengertian Fungsi
Diberikan dua buah himpunan tak kosong yaitu himpunan A dan B . Elemen pada himpunan A
dapat dihubungkan dengan elemen pada himpunan B , hubungan atau aturan ini dinamakan
relasi.
Relasi yang mengaitkan setiap elemen A dengan tepat satu elemen B disebut dengan fungsi.
Fungsi dari himpunan A ke B ditulis f : A B , dimana A disebut sebagai daerah asal
atau domain D f dan B disebut sebagai daerah kawan atau kodomain. Selanjutnya a A
fungsi
26
A yang tidak mempunyai kawan
Untuk lebih mudahnya memahami definisi fungsi pahami 2 aturan berikut ini:
1) Setiap elemen himpunan A harus habis terkait dengan elemen himpunan B .
2) Tidak boleh membentuk cabang seperti ini.
Contoh:
Diberikan himpunan A x, y, dan himpunan B 1, . didefinisikan suatu fungsi
z, 2,
f :A
B sebagai berikut: x 1, y 2, z 1 f x 1, f y 2, f z 1 .
atau
Dari contoh diatas dapat dikatakan bahwa image dari x adalah 1 atau x adalah pre-image dari
1 dan Rf
1, 2 .
28
abs:=x;
end;
Contoh:
Diberikan relasi
f = {(1, u), (2, v), (3, w)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah f merupakan fungsi?
Jawab:
Relasi f adalah fungsi dari A ke B. Karena f(1) = u, f(2) = v, dan f(3) = w. Daerah asal dari
f adalah A dan daerah hasil adalah B. Range atau daerah hasil dari f adalah {u, v, w}, yang
dalam hal ini sama dengan himpunan B.
Contoh:
Diberikan relasi
f = {(1, u), (2, u), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah f merupakan fungsi?
Jawab:
Relasi f adalah fungsi dari A ke B, meskipun u merupakan bayangan dari dua elemen A. Daerah
asal fungsi adalah A, daerah hasilnya adalah B, dan range fungsi adalah {u, v}.
Contoh:
Diberikan relasi
f = {(1, u), (2, v), (3, w)}
dari A = {1, 2, 3, 4} ke B = {u, v, w}. Apakah f merupakan fungsi?
Jawab:
Relasi f bukan fungsi, karena tidak semua elemen A dipetakan ke B.
Contoh:
Diberikan relasi
f = {(1, u), (1, v), (2, v), (3, w)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah f merupakan fungsi?
Jawab:
Relasi f bukan fungsi, karena 1 dipetakan ke dua buah elemen B, yaitu u dan v.
29
C. Jenis-Jenis Fungsi
A B
abc 1
d 2
3
4
5
Contoh:
Diberikan relasi
f = {(1, w), (2, u), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w, x}. Apakah merupakan fungsi injektif?
Jawab:
Relasi f adalah fungsi satu-ke-satu.
Contoh:
Diberikan relasi
f = {(1, u), (2, u), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah merupakan fungsi injektif?
Jawab:
Relasi f bukan fungsi satu-ke-satu, karena f(1) = f(2) = u.
Contoh:
Misalkan f : Z Z. Tentukan apakah f(x) = x2 + 1 merupakan fungsi satu-ke-satu?
Jawab:
30
f(x) = x2 + 1 bukan fungsi satu-ke-satu, karena untuk dua x yang bernilai mutlak sama tetapi
tandanya berbeda nilai fungsinya sama, misalnya f(2) = f(-2) = 5 padahal –2 2.
2. Fungsi Surjektif
Fungsi f dikatakan dipetakan pada (onto) atau surjektif (surjective) jika setiap elemen himpunan
B merupakan bayangan dari satu atau lebih elemen himpunan A.
Dengan kata lain seluruh elemen B merupakan jelajah atau range dari f. Fungsi f disebut fungsi
pada himpunan B.
A B
abc 1
d 2
3
Contoh:
Diberikan relasi
f = {(1, u), (2, u), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w} . Apakah merupakan fungsi pada?
Jawab:
Relasi f bukan fungsi pada karena w tidak termasuk jelajah atau range dari f.
Contoh:
Diberikan relasi
f = {(1, w), (2, u), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah merupakan fungsi pada?
Relasi f merupakan fungsi pada karena semua anggota B merupakan jelajah dari f.
Contoh:
Misalkan f : Z Z. Tentukan apakah f(x) = x2 + 1 merupakan fungsi pada?
Jawab:
f(x) = x2 + 1 bukan fungsi pada, karena tidak semua nilai bilangan bulat merupakan jelajah dari f.
31
3. Fungsi Bijektif
Fungsi f dikatakan berkoresponden satu-ke-satu atau bijeksi (bijection) jika ia fungsi satu-ke-
satu dan juga fungsi pada.
Contoh:
Diberikan relasi
f = {(1, u), (2, w), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah merupakan fungsi bijektif?
Jawab:
Relasi f adalah fungsi yang berkoresponden satu-ke-satu, karena f adalah fungsi satu-ke-satu
maupun fungsi pada.
abc 1
abc 1
dc 2
dc 2
3 3
4 4
D. Invers Fungsi
32
Jika f adalah fungsi berkoresponden satu-ke-satu dari A ke B, maka kita dapat menemukan
balikan (invers) dari f.
Balikan fungsi dilambangkan dengan f –1. Misalkan a adalah anggota himpunan A dan b
adalah anggota himpunan B, maka f -1(b) = a jika f(a) = b.
Fungsi yang berkoresponden satu-ke-satu sering dinamakan juga fungsi yang invertible (dapat
dibalikkan), karena kita dapat mendefinisikan fungsi balikannya. Sebuah fungsi dikatakan not
invertible (tidak dapat dibalikkan) jika ia bukan fungsi yang berkoresponden satu-ke-satu, karena
fungsi balikannya tidak ada.
Contoh:
Diberikan relasi
f = {(1, u), (2, w), (3, v)}
dari A = {1, 2, 3} ke B = {u, v, w}. Apakah fungsi ini invertible?
Jawab:
Relasi f adalah fungsi yang berkoresponden satu-ke-satu. Balikan fungsi f adalah
f -1 = {(u, 1), (w, 2), (v, 3)}
Jadi, f adalah fungsi invertible.
Contoh:
Tentukan balikan fungsi f(x) = x – 1.
Jawab:
Fungsi f(x) = x – 1 adalah fungsi yang berkoresponden satu-ke-satu, jadi balikan fungsi
tersebut ada. Misalkan f(x) = y, sehingga y = x – 1, maka x = y + 1. Jadi, balikan fungsi balikannya
adalah f-1(y) = y +1.
Misalkan g adalah fungsi dari himpunan A ke himpunan B, dan f adalah fungsi dari himpunan
B ke himpunan C. Komposisi f dan g, dinotasikan dengan f g, adalah fungsi dari A ke C yang
didefinisikan oleh
(f g)(a) = f(g(a))
33
Contoh:
Diberikan fungsi
g = {(1, u), (2, u), (3, v)}
yang memetakan A = {1, 2, 3} ke B = {u, v, w}, dan fungsi
f = {(u, y), (v, x), (w, z)}
yang memetakan B = {u, v, w} ke C = {x, y, z}. Tentukan fungsi komposisi dari A ke C.
Jawab:
Fungsi komposisi dari A ke C adalah
f g = {(1, y), (2, y), (3, x) }
Contoh:
Diberikan fungsi f(x) = x – 1 dan g(x) = x2 + 1. Tentukan f g dan g f .
Jawab:
a. (f g)(x) = f(g(x)) = f(x2 + 1) = x2 + 1 – 1 = x2.
b. (g f)(x) = g(f(x)) = g(x – 1) = (x –1)2 + 1 = x2 - 2x + 2.
Contoh:
Beberapa contoh nilai fungsi floor dan ceiling:
3.5 = 3 3.5 = 4
34
0.5 = 0 0.5 = 1
4.8 = 4 4.8 = 5
– 0.5 = – 1 – 0.5 = 0
–3.5 = – 4 –3.5 = – 3
Contoh:
Di dalam komputer, data dikodekan dalam untaian byte, satu byte terdiri atas 8 bit. Jika panjang
data 125 bit, maka jumlah byte yang diperlukan untuk merepresentasikan data adalah 125/8 =
16 byte. Perhatikanlah bahwa 16 8 = 128 bit, sehingga untuk byte yang terakhir perlu
ditambahkan 3 bit ekstra agar satu byte tetap 8 bit (bit ekstra yang ditambahkan untuk
menggenapi 8 bit disebut padding bits).
2. Fungsi modulo
Misalkan a adalah sembarang bilangan bulat dan m adalah bilangan bulat positif.
a mod m memberikan sisa pembagian bilangan bulat bila a dibagi dengan m
a mod m = r sedemikian sehingga a = mq + r, dengan 0 r < m.
Contoh:
Beberapa contoh fungsi modulo
25 mod 7 = 4
15 mod 5 = 0
3612 mod 45 = 12
0 mod 5 = 5
–25 mod 7 = 3 (sebab –25 = 7 (–4) + 3 )
3. Fungsi Faktorial
1 ,n0
n! 1 2 .(n 1) n , n 0
4. Fungsi Eksponensial
35
1 ,n0
a n a a a , n 0 an 1n
a
n
1
5. Fungsi Logaritmik an
an
6. Fungsi Rekursif
Fungsi f dikatakan fungsi rekursif jika definisi fungsinya mengacu pada dirinya sendiri.
Contoh:
n! = 1 2 … (n – 1) n = (n – 1)! n.
1 ,n0
n! 1 2
.(n 1) ,n0
n
Fungsi rekursif disusun oleh dua bagian:
a. Basis
Bagian yang berisi nilai awal yang tidak mengacu pada dirinya sendiri. Bagian ini juga
sekaligus menghentikan definisi rekursif.
b. Rekurens
Bagian ini mendefinisikan argumen fungsi dalam terminologi dirinya sendiri. Setiap kali
fungsi mengacu pada dirinya sendiri, argumen dari fungsi harus lebih dekat ke nilai awal
(basis).
36
Contoh:
Hitunglah nilai 5!.
Jawab:
5! dihitung dengan langkah berikut:
(1) 5! = 5 4! (rekurens)
(2) 4! = 4 3!
(3) 3! = 3 2!
(4) 2! = 2 1!
(5) 1! = 1 0!
(6) 0! = 1
(6’) 0! = 1
(5’) 1! = 1 0! = 1 1 = 1
(4’) 2! = 2 1! = 2 1 = 2
(3’) 3! = 3 2! = 3 2 = 6
(2’) 4! = 4 3! = 4 6 = 24
(1’) 5! = 5 4! = 5 24 = 120
Jadi, 5! = 120.
Contoh:
Di bawah ini adalah contoh-contoh fungsi rekursif lainnya:
0 ,x0
1. F (x)
2F (x 1) x , x
2
0
1 ,n0
2. Fungsi Chebysev, T (n, x) x ,n1
2xT (n 1, x) T (n 2, x) , n 1
0 ,n0
3. Fungsi fibonacci, f (n) 1 ,n1
f (n 1) f (n 2) , n 1
37
G. Latihan
1. Diberikan relasi
f = {(1, u), (2, u), (3, v), (3,w)}
dari A = {1, 2, 3, 4} ke B = {u, v, w, x} . Apakah merupakan fungsi?
2. Diberikan relasi
f = {(1, u), (2, u), (3, u), (4, u)}
dari A = {1, 2, 3, 4} ke B = {u, v, w, x} . Apakah merupakan fungsi bijektif?
3. Diberikan
f x 2x 1 , g x x2 dan h x 4 . Tentukan:
a.
f g x
b.
gf x
c.
f h x
d.
g h x
e.
f g 2
4. Tentukan nilai dari:
a. 3.1 = ...
b. 5.6 = ...
c. 1.26 = ...
d. - 4.8 = ...
e. – 100.1 = ...
5. Hitunglah nilai fungsi Fibonacci untuk n 5 dan n 6
0 ,n0
f (n)
1 ,n1
f (n 1) f (n 2) , n 1
38
Pertemuan 5
Induksi Matematika
Metode pembuktian untuk pernyataan perihal bilangan bulat adalah induksi matematik.
Contoh :
n n 1
Diketahui p(n): “Jumlah bilangan bulat positif dari 1 sampai n adalah ”. Buktikan p(n)
2
benar!
Contoh:
1. Setiap bilangan bulat positif n (n 2) dapat dinyatakan sebagai perkalian dari (satu atau
lebih) bilangan prima.
2. Untuk semua n 1, n3 + 2n adalah kelipatan 3.
3. Untuk membayar biaya pos sebesar n sen dolar (n 8) selalu dapat digunakan hanya
perangko 3 sen dan 5 sen dolar.
4. Di dalam sebuah pesta, setiap tamu berjabat tangan dengan tamu lainnya hanya sekali.
Jika ada n orang tamu maka jumlah jabat tangan yang terjadi adalah n(n +1)/2.
5. Banyaknya himpunan bagian yang dapat dibentuk dari sebuah himpunan yang
beranggotakan n elemen adalah 2n
Induksi matematik merupakan teknik pembuktian yang baku di dalam matematika. Melalui induksi
matematik kita dapat mengurangi langkah-langkah pembuktian bahwa semua bilangan bulat
termasuk ke dalam suatu himpunan kebenaran dengan hanya sejumlah langkah terbatas.
39
Prinsip dasar induksi matematika yaitu:
a. Misalkan p(n) adalah pernyataan yang memuat bilangan bulat positif.
b. Kita ingin membuktikan bahwa p(n) benar untuk semua bilangan bulat positif n.
c. Untuk membuktikan pernyataan ini, kita hanya perlu menunjukkan bahwa:
1. p(1) benar, dan
2. jika p(n) benar, maka p(n + 1) juga benar, untuk setiap n 1,
Perhatikan bahwa langkah 1 dinamakan basis induksi, sedangkan langkah 2 dinamakan langkah
induksi. Langkah induksi berisi asumsi (andaian) yang menyatakan bahwa p(n) benar. Asumsi
tersebut dinamakan hipotesis induksi. Bila kita sudah menunjukkan kedua langkah tersebut benar
maka kita sudah membuktikan bahwa p(n) benar untuk semua bilangan bulat positif n.
Contoh:
Gunakan induksi matematik untuk membuktikan bahwa jumlah n buah bilangan ganjil positif
pertama adalah n2.
Jawab:
a. Basis induksi:
Untuk n = 1, jumlah satu buah bilangan ganjil positif pertama adalah 12 = 1. Ini benar
karena jumlah satu buah bilangan ganjil positif pertama adalah 1.
b. Langkah induksi:
Andaikan p(n) benar, yaitu pernyataan
1 + 3 + 5 + … + (2n – 1) = n2
adalah benar (hipotesis induksi)
[catatlah bahwa bilangan ganjil positif ke-n adalah (2n – 1)].
Kita harus memperlihatkan bahwa p(n +1) juga benar, yaitu
1 + 3 + 5 + … + (2n – 1) + (2n + 1) = (n + 1)2
juga benar. Hal ini dapat kita tunjukkan sebagai berikut:
1 + 3 + 5 + … + (2n – 1) + (2n + 1) = [1 + 3 + 5 + … + (2n – 1)] + (2n + 1)
= n2 + (2n + 1)
= n2 + 2n + 1
= (n + 1)2
40
Karena langkah basis dan langkah induksi keduanya telah diperlihatkan benar, maka
jumlah n buah bilangan ganjil positif pertama adalah n2 .
Contoh:
Contoh:
41
Untuk semua bilangan bulat tidak-negatif n, buktikan dengan induksi matematik bahwa 20 + 21 +
22 + … + 2n = 2n+1 - 1
Jawab:
a. Basis induksi.
Untuk n = 0 (bilangan bulat tidak negatif pertama), kita peroleh: 20 = 20+1 – 1.
Ini jelas benar, sebab 20 = 1 = 20+1 – 1
= 21 – 1
=2–1
=1
b. Langkah induksi.
Andaikan bahwa p(n) benar, yaitu
20 + 21 + 22 + … + 2n = 2n+1 - 1
adalah benar (hipotesis induksi). Kita harus menunjukkan bahwa p(n +1) juga benar,
yaitu
20 + 21 + 22 + … + 2n + 2n+1 = 2(n+1) + 1 - 1
juga benar. Ini kita tunjukkan sebagai berikut:
20 + 21 + 22 + … + 2n + 2n+1 = (20 + 21 + 22 + … + 2n) + 2n+1
= (2n+1 – 1) + 2n+1 (hipotesis induksi)
= (2n+1 + 2n+1) – 1
= (2 . 2n+1) – 1
= 2n+2 - 1
= 2(n+1) + 1 – 1
Karena langkah 1 dan 2 keduanya telah diperlihatkan benar, maka untuk semua bilangan
bulat tidak-negatif n, terbukti bahwa 20 + 21 + 22 + … + 2n = 2n+1 – 1
Contoh:
Buktikan pernyataan “Untuk membayar biaya pos sebesar n sen (n 8) selalu dapat digunakan
hanya perangko 3 sen dan perangko 5 sen” benar.
Jawab:
a. Basis induksi.
Untuk membayar biaya pos 8 sen dapat digunakan 1 buah perangko 3 sen dan 1 buah
perangka 5 sen saja. Ini jelas benar.
42
b. Langkah induksi.
Andaikan p(n) benar, yaitu untuk membayar biaya pos sebesar n (n 8) sen dapat
digunakan perangko 3 sen dan 5 sen (hipotesis induksi). Kita harus menunjukkan bahwa
p(n +1) juga benar, yaitu untuk membayar biaya pos sebesar n + 1 sen juga dapat
menggunakan perangko 3 sen dan perangko 5 sen. Ada dua kemungkinan yang perlu
diperiksa:
a. Kemungkinan pertama, misalkan kita membayar biaya pos senilai n sen dengan
sedikitnya satu perangko 5 sen. Dengan mengganti satu buah perangko 5 sen
dengan dua buah perangko 3 sen, akan diperoleh susunan perangko senilai n + 1
sen.
b. Kemungkinan kedua, jika tidak ada perangko 5 sen yang digunakan, biaya pos
senilai n sen menggunakan perangko 3 sen semuanya. Karena n 8, setidaknya
harus digunakan tiga buah perangko 3 sen. Dengan mengganti tiga buah perangko 3
sen dengan 2 buah perangko 5 sen, akan dihasilkan nilai perangko n + 1 sen.
C. Latihan
n n 12n 1
p n :12 22 n2 6
2. Buktikan proposisi berikut:
n 3n 1
p n :1 4 7 3n 2
2
3. Buktikan proposisi berikut:
p n : 1 1 1
1 n
13 35 5 7 2n 12n 1 2n 1
4. Buktikan dengan induksi matematik bahwa n5 – n habis dibagi 5 untuk n bilangan bulat
positif.
43
Pertemuan 6
Teori Bilangan
A. Bilangan Bulat
Contoh:
4 | 12 karena 124 = 3 (bilangan bulat) atau 12 = 4 3. Tetapi 4 | 13 karena 134 = 3.25 (bukan
bilangan bulat).
B. Teorema Euclidan
Misalkan m dan n bilangan bulat, n > 0. Jika m dibagi dengan n maka terdapat bilangan bulat
unik q (quotient) dan r (remainder), sedemikian sehingga berlaku
m = nq + r
dengan 0 r < n.
Contoh:
a. 1987:97 = 20, sisa 47. Jadi dapat dinyatakan 1987 = 97 20 + 47
b. –22/3 = –8, sisa 2. Jadi dapat dinyatakan –22 = 3(–8) + 2
Perhatikan bahwa –22 = 3(–7) – 1 salah, karena r = –1 (syarat 0 r < n) .
(Teorema 1)
44
Misalkan a dan b bilangan bulat tidak nol. Faktor persekutuan terbesar (FPB – greatest common
divisor atau gcd) dari a dan b adalah bilangan bulat terbesar d sedemikian hingga d | a dan d | b.
Dalam hal ini kita nyatakan bahwa PBB(a, b) = d.
Contoh:
Faktor pembagi 45: 1, 3, 5, 9, 15, 45;
Faktor pembagi 36: 1, 2, 3, 4, 9, 12, 18, 36;
Faktor pembagi bersama 45 dan 36: 1, 3, 9
Jadi, FPB(45, 36) = 9.
(Teorema 2)
Misalkan m dan n bilangan bulat, dengan syarat n > 0 sedemikian sehingga
m = nq + r ,0r<n
maka FPB(m, n) = FPB(n, r)
Contoh:
Diberikan m = 60, n = 18,
60 = 18 3 + 12
maka PBB(60, 18) = PBB(18, 12) = 6
D. Algoritma Euclidean
Algoritma Euclidean digunakan untuk mencari FPB dari dua buah bilangan bulat. Penemu
algoritma Euclides, seorang matematikawan Yunani yang menuliskan algoritmanya tersebut
dalam buku, Element.
Misalkan m dan n adalah bilangan bulat tak negatif dengan m n. Misalkan r0 = m dan r1 = n.
Lakukan secara berturut-turut pembagian untuk memperoleh
r0 = r1 q 1 + r2 0 r2 r1,
r1 = r2 q 2 + r3 0 r3 r2,
⁝
45
rn–1 = rnqn + 0
Menurut Teorema 2,
PBB(m, n) = PBB(r0, r1) = PBB(r1, r2) = … = PBB(rn– 2, rn– 1) = PBB(rn– 1, rn) = PBB(rn, 0) = rn
Jadi, PBB dari m dan n adalah sisa terakhir yang tidak nol dari runtunan pembagian tersebut.
Diberikan dua buah bilangan bulat tak-negatif m dan n (m n). Algoritma Euclidean berikut
mencari pembagi bersama terbesar dari m dan n.
Contoh:
Diberikan m = 80, n = 12 dan dipenuhi syarat m n.
80 6.12 8
12 1.8 4
8 2.4 0
Sisa pembagian terakhir sebelum 0 adalah 4, maka PBB(80, 12) = 4.
E. Kombinasi Linear
FPB (a,b) dapat dinyatakan sebagai kombinasi linear (linear combination) a dan b dengan
dengan koefisien-koefisennya.
Contoh:
FPB(80, 12) = 4 , dapat dinyatakan sebagai 4 = (-1) 80 + 7 12.
(Teorema 3)
Misalkan a dan b bilangan bulat positif, maka terdapat bilangan bulat m dan n sedemikian
sehingga PBB(a, b) = ma + nb.
46
Contoh:
Nyatakan FPB(21, 45) sebagai kombinasi lanjar dari 21 dan 45.
Jawab:
45 = 2 (21) + 3
21 = 7 (3) + 0
Sisa pembagian terakhir sebelum 0 adalah 3, maka FPB(45, 21) = 3. Substitusi dengan
persamaan–persamaan di atas menghasilkan:
3 = 45 – 2 (21)
yang merupakan kombinasi linear dari 45 dan 21.
Contoh:
Nyatakan FPB(312, 70) sebagai kombinasi lanjar 312 dan 70.
Jawab:
Terapkan algoritma Euclidean untuk memperoleh PBB(312, 70):
312 = 4 70 + 32 (1)
70 = 2 32 + 6 (2)
32 = 5 6 + 2 (3)
6=32+0 (4)
Sisa pembagian terakhir sebelum 0 adalah 2, maka PBB(312, 70) = 2
Susun pembagian nomor (3) dan (2) masing-masing menjadi
2 = 32 – 5 6 (5)
6 = 70 – 2 32 (6)
Suubsitusikan (6) ke dalam (5) menjadi
2 = 32 – 5(70 – 232) = 132 – 570 + 1032 = 11 32 – 5 70 (7)
Susun pembagian nomor (1) menjadi
32 = 312 – 4 70 (8)
Subsitusikan (8) ke dalam (7) menjadi
2 = 11 32 – 5 70 = 11 (312 – 4 70) – 5 70 = 11 . 312 – 49 70
Jadi, PBB(312, 70) = 2 = 11 312 – 49 70
F. Relatif Prima
47
Dua buah bilangan bulat a dan b dikatakan relatif prima jika PBB(a, b) = 1.
Contoh:
20 dan 3 relatif prima sebab PBB(20, 3) = 1.
Jika a dan b relatif prima, maka terdapat bilangan bulat m dan n sedemikian sehingga
ma + nb = 1
Contoh:
Bilangan 20 dan 3 adalah relatif prima karena PBB(20, 3) =1, atau dapat ditulis
2 . 20 + (–13) . 3 = 1 (m = 2, n = –13)
Tetapi 20 dan 5 tidak relatif prima karena PBB(20, 5) = 5 1 sehingga 20 dan 5 tidak dapat
dinyatakan dalam m . 20 + n . 5 = 1.
G. Aritmatika Modulo
Misalkan a dan m bilangan bulat (m > 0). Operasi a mod m (dibaca “a modulo m”) memberikan
sisa jika a dibagi dengan m.
Notasi a mod m = r sedemikian sehingga
a = mq + r, dengan 0 r < m.
m disebut modulus atau modulo, dan hasil aritmetika modulo m terletak di dalam himpunan {0,
1, 2, …, m – 1}.
Contoh:
Beberapa hasil operasi dengan operator modulo:
a. 23 mod 5 = 3 (23 = 5 4 + 3)
b. 27 mod 3 = 0 (27 = 3 9 + 0)
H. Kongruen
48
Contoh:
a. 17 2 (mod 3) karena 3 habis membagi 17 – 2 = 15.
b. –7 15 (mod 11) karena 11 habis membagi –7 – 15 = –22
c. –7 / 15 (mod 3) karena 3 tidak habis membagi –7 – 15 = –22.
Contoh:
a. 17 2 (mod 3) 17 = 2 + 5 3
b. –7 15 (mod 11) –7 = 15 + (–2)11
Contoh:
a. 23 mod 5 = 3 23 3 (mod 5)
b. 27 mod 3 = 0 27 0 (mod 3)
(Teorema 4)
Misalkan m adalah bilangan bulat positif.
a. Jika a b (mod m) dan c adalah sembarang bilangan bulat maka
(i) (a + c) (b + c) (mod m)
(ii)ac bc (mod m)
(iii)ap bp (mod m) , p bilangan bulat tak-negatif
b. Jika a b (mod m) dan c d (mod m), maka
(i) (a + c) (b + d) (mod m)
(ii)ac bd (mod m)
Contoh:
Misalkan 17 2 (mod 3) dan 10 4 (mod 3), maka menurut Teorema 4,
49
17 + 5 = 2 + 5 (mod 3) 22 = 7 (mod 3)
17 . 5 = 5 2 (mod 3) 85 = 10 (mod 3)
17 + 10 = 2 + 4 (mod 3) 27 = 6 (mod 3)
17 . 10 = 2 4 (mod 3) 170 = 8 (mod 3)
Teorema 4 tidak memasukkan operasi pembagian pada aritmetika modulo karena jika kedua
ruas dibagi dengan bilangan bulat, maka kekongruenan tidak selalu dipenuhi.
Contoh:
a. 10 4 (mod 3) dapat dibagi dengan 2 , karena 10/2 = 5 dan 4/2 = 2, dan 5 2 (mod 3)
b. 14 8 (mod 6) tidak dapat dibagi dengan 2, karena 14/2 = 7 dan 8/2 = 4, tetapi
7 / 4 (mod 6).
I. Kekongruenan Linear
Contoh:
Tentukan solusi dari 4x 3 (mod 9) .
Jawab:
50
…
k = –1 x = (3 – 1 9)/4 = –6/4 (bukan solusi)
k = –2 x = (3 – 2 9)/4 = –15/4 (bukan
solusi) k = –3 x = (3 – 3 9)/4 = –6
…
k = –6 x = (3 – 6 9)/4 = –15
…
Nilai-nilai x yang memenuhi: 3, 12, … dan –6, –15, …
Pada abad pertama, seorang matematikawan China yang bernama Sun Tse mengajukan
pertanyaan sebagai berikut:
“Tentukan sebuah bilangan bulat yang bila dibagi dengan 5 menyisakan 3, bila dibagi 7
menyisakan 5, dan bila dibagi 11 menyisakan 7.”
Contoh:
Tentukan solusi dari pertanyaan Sun Tse di atas.
Jawab:
x 3 (mod 5) x = 3 + 5k1 (i)
Subsitusikan (i) ke dalam kongruen kedua menjadi:
51
3 + 5k1 5 (mod 7) k1 6 (mod 7), atau k1 = 6 + 7k2 (ii)
Subsitusikan (ii) ke dalam (i):
x = 3 + 5k1 = 3 + 5(6 + 7k2) = 33 + 35k2 (iii)
Subsitusikan (iii) ke dalam kongruen ketiga menjadi:
33 + 35k2 7 (mod 11) k2 9 (mod 11) atau k2 = 9 + 11k3.
Subsitusikan k2 ini ke dalam (iii) menghasilkan:
x = 33 + 35(9 + 11k3) = 348 + 385k3 atau x 348 (mod 385).
Ini adalah solusinya.
348 adalah bilangan bulat positif terkecil yang merupakan solusi sistem kekongruenan di atas.
Perhatikan bahwa 348 mod 5 = 3, 348 mod 7 = 5, dan 348 mod 11 = 7. Catatlah bahwa 385 = 5
7 11.
Solusi unik ini mudah dibuktikan sebagai berikut. Solusi tersebut dalam modulo:
m = m1 m2 m3 = 5 7 11 = 5 77 = 11 35.
Karena
77 . 3 1 (mod 5),
55 6 1 (mod 7),
35 6 1 (mod 11),
maka solusi unik dari sistem kongruen tersebut adalah
x 3 77 3 + 5 55 6 + 7 35 6 (mod 385)
3813 (mod 385)
348 (mod 385)
K. Bilangan Prima
Bilangan bulat positif p (p > 1) disebut bilangan prima jika pembaginya hanya 1 dan p. Karena
bilangan prima harus lebih besar dari 1, maka barisan bilangan prima dimulai dari 2, yaitu 2, 3, 5,
7, 11, 13, ….Seluruh bilangan prima adalah bilangan ganjil, kecuali 2 yang merupakan
bilangan genap. Bilangan selain prima disebut bilangan komposit (composite). Misalnya 20
adalah bilangan komposit karena 20 dapat dibagi oleh 2, 4, 5, dan 10, selain 1 dan 20 sendiri.
52
Setiap bilangan bulat positif yang lebih besar atau sama dengan 2 dapat dinyatakan sebagai
perkalian satu atau lebih bilangan prima.
Contoh:
a. 9 = 3 3
b. 100 = 2 2 5 5
c. 13 = 13 (atau 1 13)
Contoh:
Tes apakah (i) 171 dan (ii) 199 merupakan bilangan prima atau komposit.
Jawab:
a. 171 = 13.077. Bilangan prima yang 171 adalah 2, 3, 5, 7, 11, 13.
Karena 171 habis dibagi 3, maka 171 adalah bilangan komposit.
b. 199 = 14.107. Bilangan prima yang 199 adalah 2, 3, 5, 7, 11, 13.
Karena 199 tidak habis dibagi 2, 3, 5, 7, 11, dan 13, maka 199 adalah bilangan prima.
Contoh:
Tes apakah 17 dan 21 bilangan prima atau bukan dengan Teorema Fermat
Jawab:
53
Ambil a = 2 karena PBB(17, 2) = 1 dan PBB(21, 2) = 1.
a. 217–1 = 65536 1 (mod 17), karena 17 habis membagi 65536 – 1 = 65535. Jadi,
17 prima.
b. 221–1 =1048576 \ 1 (mod 21), karena 21 tidak habis membagi 1048576 – 1 = 1048575.
Jadi, 21 bukan prima.
Kelemahan Teorema Fermat: terdapat bilangan komposit n sedemikian sehingga 2n–1 1 (mod
n). Bilangan bulat seperti itu disebut bilangan prima semu (pseudoprimes).
Contoh:
341 adalah komposit (karena 341 = 11 31) sekaligus bilangan prima semu, karena menurut
teorema Fermat,
2340 1 (mod 341)
Untunglah bilangan prima semu relatif jarang terdapat.
Untuk bilangan bulat yang lebih kecil dari 1010 terdapat 455.052.512 bilangan prima, tapi hanya
14.884 buah yang merupakan bilangan prima semu terhadap basis 2.
L. Latihan
54
Pertemuan 9
Aplikasi Teori Bilangan
B. ISBN
Kode ISBN terdiri dari 10 karakter, biasanya dikelompokkan dengan spasi atau garis, misalnya 0–
3015–4561–9.
ISBN terdiri atas empat bagian kode:
a. kode yang mengidentifikasikan bahasa,
b. kode penerbit,
c. kode unik untuk buku tersebut,
d. karakter uji (angka atau huruf X (=10)).
ix
i1
1 i 0 mod11
Contoh:
Diberikan ISBN 0–3015–4561–8
55
0 : kode kelompok negara berbahasa Inggris,
3015 : kode penerbit
4561 : kode unik buku yang diterbitkan
8 : karakter uji.
Karakter uji ini didapatkan sebagai berikut:
1 0 + 2 3 + 3 0 + 4 1 + 5 5 + 6 4 +7 5 + 8 6 + 9 1 = 151
Jadi, karakter ujinya adalah 151 mod 11 = 8.
Perhatikan bahwa untuk kode ISBN ini,
10 9
ixi ixi + 10x10 = 151 + 10 8 = 231.
i1 i1
C. Fungsi Hash
Contoh:
Diambil m = 11 mempunyai sel-sel memori yang diberi indeks 0 sampai 10. Akan disimpan data
record yang masing-masing mempunyai kunci 15, 558, 32, 132, 102, dan 5.
h(15) = 15 mod 11 = 4
h(558) = 558 mod 11 = 8
h(32) = 32 mod 11 = 10
h(132) = 132 mod 11 = 0
h(102) = 102 mod 11 = 3
h(5) = 5 mod 11 = 5
132 102 15 5 558 32
0 1 2 3 4 5 6 7 8 9 10
56
Beberapa istilah pada fungsi hash yaitu;
a. Kolisi (collision) terjadi jika fungsi hash menghasilkan nilai h yang sama untuk k yang
berbeda.
b. Jika terjadi kolisi, cek elemen berikutnya yang kosong.
c. Fungsi hash juga digunakan untuk me-locate elemen yang dicari.
D. Kriptografi
Kriptografi (cryptography) berasal dari Bahasa Yunani yang artinya “secret writing”. Ilmu
kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan.
Contoh:
Plainteks: culik anak itu jam 11 siang
Cipherteks: t^$gfUi89rewoFpfdWqL:p[uTcxZ
enkripsi dekripsi
57
e. Algoritma kriptografi (cipher) :
- aturan untuk enkripsi dan dekripsi
- fungsi matematika yang digunakan untuk enkripsi dan dekripsi.
f. Kunci:
Parameter yang digunakan untuk transformasi enciphering dan dechipering. Kunci
bersifat rahasia, sedangkan algoritma kriptografi tidak rahasia.
E. Aplikasi Kriptografi
58
Ztâxzp/épêp/qtüyp{p}<yp{p}/sx/•p}âpx;
épêp/|t}t|äzp}/qp}êpz/étzp{x/zt•xâx
}vêp}v/|tüp}vzpz/|t}äyä/{päâ=/\tütz
ppsp{pw/p}pz<p}pz/zt•xâx}v/êp}
v/qpüä|t}tâpé/spüx/sp{p|/•péxü=/]
p{äüx|ttüzp/|t}vpâpzp}/qpwåp/{päâ
/psp{pwât|•pâ/ztwxsä•p}/|tützp=
59
Plainteks (lena.bmp):
Cipherteks (lena2.bmp):
Plainteks (siswa.dbf):
NIM Nama Tinggi Berat
000001 Elin Jamilah 160 50
000002 Fariz RM 157 49
000003 Taufik Hidayat 176 65
60
000004 Siti Nurhaliza 172 67
000005 Oma Irama 171 60
000006 Aziz Burhan 181 54
000007 Santi Nursanti 167 59
000008 Cut Yanti 169 61
000009 Ina Sabarina 171 62
Cipherteks (siswa2.dbf):
NIM Nama Tinggi Berat
000001 tüp}vzpz/|t}äyä/{äâ |äzp} épêp
000002 |t}tâpé/spüx/sp péxü= ztwxsä•
000003 ât|•pâ/ztwxsä•p}/| }/|tü spüx/
000004 épêp/|t}t|äzp}/qpêpz qp}êpz wxsä
000005 étzp{x/zt•xâx}vêp} päâ/psp étzp{
000006 spüx/sp{p|/•péxü=/] xâx}v ttüzp/|
000007 Ztâxzp/épêp/qtüypp}< äzp} }äyä/{
000008 qpwåp/{päâ/psp{pw Ztwxs xâx}v
000009 }t|äzp}/qp}êpz/ép{ qp}êp äzp}/qp
D. Notasi Matematis
Misalkan C = chiperteks
P = plainteks
Fungsi enkripsi E memetakan P ke C,
E(P) = C
Fungsi dekripsi D memetakan C ke P,
D(C) = P
Dengan menggunakan kunci K, maka fungsi enkripsi dan dekripsi menjadi
EK(P) = C
DK(C) = P
61
dan kedua fungsi ini memenuhi DK(EK(P)) = P.
K K
enkripsi dekripsi
Jika kunci enkripsi sama dengan kunci dekripsi, maka sistem kriptografinya disebut sistem
simetri atau sistem konvensional. Algoritma kriptografinya disebut algoritma simetri atau
algoritma konvensional . Contoh algoritma simetri yaitu DES (Data Encyption Standard) dan
Rijndael.
Jika kunci enkripsi tidak sama dengan kunci dekripsi, maka sistem kriptografinya disebut sistem
nirsimetri (asymmetric system). Nama lainnya sistem kriptografi kunci-publik, karena kunci
enkripsi bersifat publik (public key) sedangkan kunci dekripsi bersifat rahasia (private key).
Pengirim pesan menggunakan kunci publik si penerima pesan untuk mengenkripsi pesan.
Penerima pesan mendekripsi pesan dengan kunci privatnya sendiri. Contoh algoritma kriptografi
kunci publik adalah RSA.
Kunci publik Kunci privat
62
E. Caesar Chiper
ci : D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Contoh:
Plainteks: AWASI ASTERIX DAN TEMANNYA OBELIX
Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA
Ditemukan oleh tiga peneliti dari MIT (Massachussets Institute of Technology), yaitu Ron Rivest,
Adi Shamir, dan Len Adleman, pada tahun 1976. Termasuk algoritma kriptografi nirsimetri.
63
Setiap pengguna mempunya sepasang kunci:
1. Kunci publik: untuk enkripsi
2. Kunci privat: untuk dekripsi
Kunci publik tidak rahasia (diketahui semua orang), kunci privat rahasia (hanya diketahui pemilik
kunci saja).
Enkripsi
1. Nyatakan pesan menjadi blok-blok plainteks: p1, p2, p3, … (harus dipenuhi persyaratan
bahwa nilai pi harus terletak dalam himpunan nilai 0, 1, 2, …, n – 1 untuk menjamin
hasil perhitungan tidak berada di luar himpunan)
2. Hitung blok cipherteks ci untuk blok plainteks pi dengan persamaan
ci = pie mod n
yang dalam hal ini, e adalah kunci publik.
Dekripsi
Proses dekripsi dilakukan dengan menggunakan persamaan
pi = cid mod n,
yang dalam hal ini, d adalah kunci privat.
Contoh:
Misalkan a = 47 dan b = 71 (keduanya prima), maka dapat dihitung
n = a b = 3337
m = (a – 1)(b – 1) = 3220.
64
Pilih kunci publik e = 79 (yang relatif prima dengan 3220 karena pembagi bersama terbesarnya
adalah 1).
Nilai e dan n dapat dipublikasikan ke umum.
Selanjutnya akan dihitung kunci dekripsi d dengan kekongruenan:
e d 1 (mod m)
Dengan mencoba nilai-nilai k = 1, 2, 3, …, diperoleh nilai d yang bulat adalah 1019. Ini adalah
kunci dekripsi.
Misalkan plainteks P = HARI INI atau dalam desimal ASCII: 7265827332737873
Pecah P menjadi blok yang lebih kecil (misal 3 digit):
p1 = 726 p4 = 273
p2 = 582 p5 = 787
p3 = 733 p6 = 003
Enkripsi setiap blok:
c1 = 72679 mod 3337 = 215
c2 = 58279 mod 3337 = 776
dst untuk sisa blok lainnya
Keluaran: chiperteks C = 215 776 1743 933 1731 158.
Dekripsi (menggunakan kunci privat d = 1019)
p1 = 2151019 mod 3337 = 726
p2 =7761019 mod 3337 = 582
dst untuk sisi blok lainnya
Keluaran: plainteks P = 7265827332737873 yang dalam ASCII karakternya adalah HARI INI.
a. Kekuatan algoritma RSA terletak pada tingkat kesulitan dalam memfaktorkan bilangan
non prima menjadi faktor primanya, yang dalam hal ini n = a b.
b. Sekali n berhasil difaktorkan menjadi a dan b, maka m = (a – 1)(b – 1) dapat dihitung.
Selanjutnya, karena kunci enkripsi e diumumkan (tidak rahasia), maka kunci dekripsi d
dapat dihitung dari persamaan e d 1 (mod m). Ini berarti proses dekripsi dapat
dilakukan oleh orang yang tidak berhak.
65
c. Penemu algoritma RSA menyarankan nilai a dan b panjangnya lebih dari 100 digit.
Dengan demikian hasil kali n = a b akan berukuran lebih dari 200 digit.
d. Menurut Rivest dan kawan-kawan, uasaha untuk mencari faktor bilangan 200 digit
membutuhkan waktu komputasi selama 4 milyar tahun! (dengan asumsi bahwa algoritma
pemfaktoran yang digunakan adalah algoritma yang tercepat saat ini dan komputer yang
dipakai mempunyai kecepatan 1 milidetik).
H. Latihan
ci : D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Tentukan chipertext untuk “KERJAKAN TUGASMU DENGAN BAIK”
Pertemuan 10
Kombinatorika (Permutasi)
A. Definisi Kombinatorika
66
Kombinatorika adalah cabang matematika untuk menghitung jumlah penyusunan objek-objek
tanpa harus mengenumerasi semua kemungkinan susunannya.
Contoh:
Ketua angkatan IF 2002 hanya 1 orang (pria atau wanita, tidak bias gender). Jumlah pria IF 2002
= 65 orang dan jumlah wanita = 15 orang. Berapa banyak cara memilih ketua angkatan?
Jawab:
65 + 15 = 80 cara.
Contoh:
Dua orang perwakilan IF2002 mendatangai Bapak Dosen untuk protes nilai ujian. Wakil yang
dipilih 1 orang pria dan 1 orang wanita. Berapa banyak cara memilih 2 orang wakil tesrebut?
Jawab:
65 15 = 975 cara.
67
p1 p2 … pn hasil
2. Kaidah penjumlahan (rule of sum)
p1 + p2 + … + pn hasil
Contoh:
Bit biner hanya 0 dan 1. Berapa banyak string biner yang dapat dibentuk jika:
(a)panjang string 5 bit
(b)panjang string 8 bit (= 1 byte)
Jawab:
(a) 2 2 2 2 2 = 25 = 32 buah
(b) 28 = 256 buah
Contoh:
Berapa banyak bilangan ganjil antara 1000 dan 9999 (termasuk 1000 dan 9999 itu sendiri) yang
(a)semua angkanya berbeda
(b)boleh ada angka yang berulang.
Jawab:
a. posisi satuan : 5 kemungkinan angka (1, 3, 5, 7, 9)
posisi ribuan : 8 kemungkinan angka
posisi ratusan : 8 kemungkinan angka
posisi puluhan : 7 kemungkinan angka
Banyak bilangan ganjil seluruhnya = (5)(8)(8)(7) = 2240 buah.
b. posisi satuan: 5 kemungkinan angka (yaitu 1, 3, 5, 7 dan 9);
posisi ribuan: 9 kemungkinan angka (1 sampai 9)
posisi ratusan: 10 kemungkinan angka (0 sampai 9)
posisi puluhan: 10 kemungkinan angka (0 sampai 9)
Banyak bilangan ganjil seluruhnya = (5)(9)(10)(10) = 4500
Contoh:
Sandi-lewat (password) sistem komputer panjangnya 6 sampai 8 karakter. Tiap karakter boleh
berupa huruf atau angka; huruf besar dan huruf kecil tidak dibedakan. Berapa banyak sandi-lewat
yang dapat dibuat?
68
Penyelesaian:
Jumlah karakter password = 26 (A-Z) + 10 (0-9) = 36 karakter.
Jumlah kemungkinan sandi-lewat dengan panjang 6 karakter:
(36)(36)(36)(36)(36)(36) = 366 = 2.176.782.336
D. Permutasi
Bola:
m b p
Kotak:
1 2 3
Berapa jumlah urutan berbeda yang mungkin dibuat dari penempatan bola ke dalam kotak-kotak
tersebut?
69
P M BPM
P M B PMB
B M PBM
Jumlah kemungkinan urutan berbeda dari penempatan bola ke dalam kotak adalah (3)(2)(1) = 3!
= 6.
Secara umum, permutasi adalah jumlah urutan berbeda dari pengaturan objek-objek. Permutasi
merupakan bentuk khusus aplikasi kaidah perkalian.
Contoh:
Berapa banyak “kata” yang terbentuk dari kata “HAPUS”?
Jawab:
Cara 1: (5)(4)(3)(2)(1) = 120 buah kata
Cara 2: P(5, 5) = 5! = 120 buah kata
Contoh:
Berapa banyak cara mengurutkan nama 25 orang mahasiswa?
Jawab:
P(25, 25) = 25!
E. Permutasi r dari n elemen
70
Ada enam buah bola yang berbeda warnanya dan 3 buah kotak. Masing-masing kotak hanya
boleh diisi 1 buah bola. Berapa jumlah urutan berbeda yang mungkin dibuat dari penempatan
bola ke dalam kotak-kotak tersebut?
Bola:
m b p h k j
Kotak:
1 2 3
Jawab:
Kotak 1 dapat diisi oleh salah satu dari 6 bola (ada 6 pilihan);
Kotak 2 dapat diisi oleh salah satu dari 5 bola (ada 5 pilihan);
Kotak 3 dapat diisi oleh salah satu dari 4 bola (ada 4 pilihan).
Jumlah urutan berbeda dari penempatan bola = (6)(5)(4) = 120
Konsep:
Ada n buah bola yang berbeda warnanya dan r buah kotak (r n), maka
a. kotak ke-1 dapat diisi oleh salah satu dari n bola (ada n pilihan) ;
b. kotak ke-2 dapat diisi oleh salah satu dari (n – 1) bola (ada n – 1 pilihan);
c. kotak ke-3 dapat diisi oleh salah satu dari (n – 2) bola (ada n – 2) pilihan;
…
d. kotak ke-r dapat diisi oleh salah satu dari (n – (r – 1) bola (ada n – r + 1 pilihan)
Jumlah urutan berbeda dari penempatan bola adalah: n(n – 1)(n – 2)…(n – (r – 1)).
Secara umum, permutasi r dari n elemen adalah jumlah kemungkinan urutan r buah elemen yang
dipilih dari n buah elemen, dengan r n, yang dalam hal ini, pada setiap kemungkinan urutan
tidak ada elemen yang sama.
n! (n
P(n, r) n(n 1)(n 2)...(n (r 1))
r)!
Contoh:
Berapakah jumlah kemungkinan membentuk 3 angka dari 5 angka berikut: 1, 2, 3, 4 , 5, jika:
71
(a)tidak boleh ada pengulangan angka, dan
(b)boleh ada pengulangan angka.
Jawab:
a. Dengan kaidah perkalian: (5)(4)(3) = 120 buah
Dengan rumus permutasi P(5, 3) = 5!/(5 – 3)! = 120
b. Tidak dapat diselesaikan dengan rumus permutasi.
Dengan kiadah perkalian: (5)(5)(5) = 53 = 125.
Contoh:
Kode buku di sebuah perpustakaan panjangnya 7 karakter, terdiri dari 4 huruf berbeda dan diikuti
dengan 3 angka yang berbeda pula?
Jawab:
P(26, 4) P(10,3) = 258.336.000
F. Latihan
72
Pertemuan 11
Kombinatorika (Kombinasi)
73
A. Pengertian Kombinasi
Bentuk khusus dari permutasi adalah kombinasi. Jika pada permutasi urutan kemunculan
diperhitungkan, maka pada kombinasi, urutan kemunculan diabaikan.
Contoh:
Misalkan ada 2 buah bola yang warnanya sama 3 buah kotak. Setiap kotak hanya boleh berisi
paling banyak 1 bola.
Jawab:
3!
Jumlah cara memasukkan bola ke dalam kotak P(3, 2) P(3, 2) 1! (3)(2)
2 2! 2! 2 3 .
Contoh:
Bila sekarang jumlah bola 3 dan jumlah kotak 10, maka jumlah cara memasukkan bola ke dalam
kotak adalah
P(10, 3) 10!
7! (10)(9)(8)
3! 3! 3!
karena ada 3! cara memasukkan bola yang warnanya sama.
Secara umum, jumlah cara memasukkan r buah bola yang berwarna sama ke dalam n buah
kotak adalah
n(n 1)(n 2)...(n (r 1)) n! n
C n, r .
r!(n r)! atau r
r!
Misalkan: ada n buah bola yang tidak seluruhnya berbeda warna (jadi, ada beberapa bola yang
warnanya sama - indistinguishable).
n1 bola diantaranya berwarna 1,
n2 bola diantaranya berwarna 2,
⁝
74
nk bola diantaranya berwarna k,
dan n1 + n2 + … + nk = n.
Berapa jumlah cara pengaturan n buah bola ke dalam kotak-kotak tersebut (tiap kotak maks. 1
buah bola)?
Jika n buah bola itu kita anggap berbeda semuanya, maka jumlah cara pengaturan n buah bola
ke dalam n buah kotak adalah:
P(n, n) = n!.
Dari pengaturan n buah bola itu,
ada n1! cara memasukkan bola berwarna 1
ada n2! cara memasukkan bola berwarna 2
⁝
n!
n !n !n !...n
1 2 3 k
Konsep:
n!
P(n; n , n ,..., n ) C(n; n , n ,..., n )
1 2 k 1 2 k n !n !...n !
1 2 k
Contoh:
Berapa banyak “kata” yang dapat dibentuk dengan menggunakan huruf-huruf dari kata
MISSISSIPPI?
75
Jawab:
S = {M, I, S, S, I, S, S, I, P , P , I}
huruf M = 1 buah (n1)
huruf I = 4 buah (n2)
huruf S = 4 buah (n3)
huruf P = 2 buah (n4)
n = 1 + 4 + 4 + 2 = 11 buah = | S |
11!
(1!)(4!)(4!) 34650 buah.
(2!)
11!
= (1!)(4!)(4!)(2!)
= 34650 buah
Contoh:
Berapa banyak cara membagikan delapan buah mangga kepada 3 orang anak, bila Billy
mendapat empat buah mangga, dan Andi serta Toni masing-masing memperoleh 2 buah
mangga.
Jawab:
n = 8, n1 = 4, n2 = 2, n3 = 2, dan n1 + n2 + n3 = 4 + 2 + 2 = 8
8!
Jumlah cara membagi seluruh mangga =
(4!)(2!)(2!) 420 cara
Misalkan terdapat r buah bola yang semua warnanya sama dan n buah kotak.
76
(i) Masing-masing kotak hanya boleh diisi paling banyak satu buah bola.
Jumlah cara memasukkan bola: C(n, r).
(ii) Masing-masing kotak boleh lebih dari satu buah bola (tidak ada pembatasan jumlah bola)
Jumlah cara memasukkan bola: C(n + r – 1, r).
dengan C(n + r – 1, r) = C(n + r –1, n – 1).
Contoh:
Pada persamaan x1 + x2 + x3 + x4 = 12, xi adalah bilangan bulat 0. Berapa jumlah
kemungkinan solusinya?
Jawab:
Analogi: 12 buah bola akan dimasukkan ke dalam 4 buah kotak (dalam hal ini, n = 4 dan
r = 12).
Bagilah keduabelas bola itu ke dalam tiap kotak. Misalnya,
Kotak 1 diisi 3 buah bola (x1 = 3)
Kotak 2 diisi 5 buah bola (x2 = 5)
Kotak 3 diisi 2 buah bola (x3 = 2)
Kotak 4 diisi 2 buah bola (x4 = 2)
x1 + x2 + x3 + x4 = 3 + 5 + 2 + 2 = 12
Ada C(4 + 12 – 1, 12) = C(15, 12) = 455 buah solusi.
Contoh:
20 buah apel dan 15 buah jeruk dibagikan kepada 5 orang anak, tiap anak boleh mendapat lebih
dari 1 buah apel atau jeruk, atau tidak sama sekali. Berapa jumlah cara pembagian yang
dapat dilakukan?
Jawab:
n = 5, r1 = 20 (apel) dan r2 = 15 (jeruk)
Membagi 20 apel kepada 5 anak: C(5 + 20 – 1, 20) cara,
Membagi 15 jeruk kepada 5 anak: C(5 + 15 – 1, 15) cara.
Jumlah cara pembagian kedua buah itu adalah
C(5 + 20 – 1, 20) C(5 + 15 – 1, 15) = C(24, 20) C(19, 15)
D. Latihan
77
1. Kursi-kursi di sebuah bioskop disusun dalam baris-baris, satu baris berisi 10 buah kursi.
Berapa banyak cara mendudukkan 6 orang penonton pada satu baris kursi:
(a)jika bioskop dalam keadaan terang
(b)jika bioskop dalam keadaan gelap
2. Ada 5 orang mahasiswa jurusan Matematika dan 7 orang mahasiswa jurusan
Informatika. Berapa banyak cara membentuk panitia yang terdiri dari 4 orang jika:
(a)tidak ada batasan jurusan
(b)semua anggota panitia harus dari jurusan Matematika
(c)semua anggota panitia harus dari jurusan Informatika
(d)semua anggota panitia harus dari jurusan yang sama
(e)2 orang mahasiswa per jurusan harus mewakili.
3. Berapa banyak cara membentuk sebuah panitia yang beranggotakan 5 orang yang
dipilih dari 7 orang pria dan 5 orang wanita, jika di dalam panitia tersebut paling sedikit
beranggotakan 2 orang wanita?
4. Ada 10 soal di dalam ujian akhir Matematika Diskrit. Berapa banyak cara pemberian nilai
(bilangan bulat) pada setiap soal jika jumlah nilai keseluruhan soal adalah 100 dan setiap
soal mempunyai nilai paling sedikit 5. (Khusus untuk soal ini, nyatakan jawaban akhir
anda dalam C(a, b) saja, tidak perlu dihitung nilainya)
5. Di perpustakaan Teknik Informatika terdapat 3 jenis buku: buku Algoritma dan
Pemrograman, buku Matematika Diskrit, dan buku Basisdata. Perpustakaan memiliki
paling sedikit 10 buah buku untuk masing-masing jenis. Berapa banyak cara memilih 10
buah buku?
6. Dari sejumlah besar koin 25-an, 50-an, 100-an, dan 500-an, berapa banyak cara lima
koin dapat diambil?
Pertemuan 12
Pengantar Teori Graf
78
A. Sejarah Teori Graf
Graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek
tersebut. Gambar di bawah ini sebuah graf yang menyatakan peta jaringan jalan raya yang
menghubungkan sejumlah kota di Provinsi Jawa Tengah.
Rembang
Kudus
Brebes Demak
Tegal Pemalang Kendal
Semarang
Pekalongan
Slawi Bl ora
Temanggung Purwodadi
Salatiga
Wonosobo
Purbalingga
Purwokerto
Sragen
Banjarnegara Boyolali Solo
Kroya Sukoharjo
CilacapKebumenMagelang
Klaten
Purworejo
Wonogiri
A D
B. Definisi Graf
79
V = himpunan tidak-kosong dari simpul-simpul (vertices) = { v1 , v2 , ... , vn }
E = himpunan sisi (edges) yang menghubungkan sepasang simpul = {e1 , e2 , ... , en }
1 1 1
e1 e4 e1 e4
e3 e2 e3
e2
2 3 2 3 2 e8
e6 e63
e5 e5
e7
e7
4 4 4
G1 G2 G3
Gambar 2. (a) graf sederhana, (b) graf ganda, dan (c) graf semu
Contoh:
Pada Gambar 2, G1 adalah graf dengan
V = { 1, 2, 3, 4 } E = { (1, 2), (1, 3), (2, 3), (2, 4), (3, 4) }
G2 adalah graf dengan
V = { 1, 2, 3, 4 }
E = { (1, 2), (2, 3), (1, 3), (1, 3), (2, 4), (3, 4), (3, 4) }
= { e1, e2, e3, e4, e5, e6, e7}
G3 adalah graf dengan
V = { 1, 2, 3, 4 }
E = { (1, 2), (2, 3), (1, 3), (1, 3), (2, 4), (3, 4), (3, 4), (3, 3) }
= { e1, e2, e3, e4, e5, e6, e7, e8}
1 1 1
e1 e4 e1 e4
e3 e2 e3
e2
2 3 2 3 2 e8
e6 e63
e5 e5
e7
e7
4 4 4
G1 G2 G3
Gambar 2. (a) graf sederhana, (b) graf ganda, dan (c) graf semu
a. Pada G2, sisi e3 = (1, 3) dan sisi e4 = (1, 3) dinamakan sisi-ganda (multiple edges atau
paralel edges) karena kedua sisi ini menghubungi dua buah simpul yang sama, yaitu
simpul 1 dan simpul 3.
80
b. Pada G3, sisi e8 = (3, 3) dinamakan gelang atau kalang (loop) karena ia berawal dan
berakhir pada simpul yang sama.
C. Jenis-Jenis Graf
Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graf, maka graf digolongkan
menjadi dua jenis:
1. Graf sederhana (simple graph).
Graf yang tidak mengandung gelang maupun sisi-ganda dinamakan graf sederhana. G1
pada Gambar 2 adalah contoh graf sederhana
2. Graf tak-sederhana (unsimple-graph).
Graf yang mengandung sisi ganda atau gelang dinamakan graf tak-sederhana (unsimple
graph). G2 dan G3 pada Gambar 2 adalah contoh graf tak-sederhana
Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas 2 jenis:
1. Graf tak-berarah (undirected graph)
Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah. Tiga buah
graf pada Gambar 2 adalah graf tak-berarah.
2. Graf berarah (directed graph atau digraph)
Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah. Dua buah
graf pada Gambar 3 adalah graf berarah.
1 1
2 3 2 3
4 4
(a) G4 (b) G5
Gambar 3 (a) graf berarah, (b) graf-ganda berarah
1. Rangkaian listrik.
81
B B
A C A C
F F
E D E D
(a) (b)
2. Isomer senyawa kimia karbon
H C H
T1
T3
T0
T2
deadlock!
4. Pengujian program
read(x);
while x <> 9999 do
82
begin
if x < 0 then
writeln(‘Masukan tidak boleh negatif’)
else
x:=x+10;
read(x);
end;
writeln(x);
1 2
6 7
3
Keterangan: 1 : read(x) 5 : x := x + 10
2 : x <> 9999 6 : read(x)
3: x < 0 7 : writeln(x)
4 : writeln(‘Masukan tidak boleh negatif’);
10
P P P 10
5
5
5 5
10
a b c d
10
83
d : 15 sen atau lebih dimasukkan
E. Terminologi Graf
1. Ketetanggaan (Adjacent)
Dua buah simpul dikatakan bertetangga bila keduanya terhubung langsung.
Tinjau graf G1 : simpul 1 bertetangga dengan simpul 2 dan 3, simpul 1 tidak bertetangga
dengan simpul 4.
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
2. Bersisian (Incidency)
Untuk sembarang sisi e = (vj, vk) dikatakan e bersisian dengan simpul vj , atau e
bersisian dengan simpul vk.
Tinjau graf G1: sisi (2, 3) bersisian dengan simpul 2 dan simpul 3,
sisi (2, 4) bersisian dengan simpul 2 dan simpul 4,
tetapi sisi (1, 2) tidak bersisian dengan simpul 4.
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
3. Simpul Terpencil (Isolated Vertex)
Simpul terpencil ialah simpul yang tidak mempunyai sisi yang bersisian dengannya.
Tinjau graf G3: simpul 5 adalah simpul terpencil.
84
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
4. Graf Kosong (null graph atau empty graph)
Graf yang himpunan sisinya merupakan himpunan kosong (Nn). Graf N5 :
4 2
5
5. Derajat (Degree)
Derajat suatu simpul adalah jumlah sisi yang bersisian dengan simpul tersebut. Notasi:
d(v)
Tinjau graf G1: d(1) = d(4) = 2
d(2) = d(3) = 3
Tinjau graf G3: d(5) = 0 simpul terpencil
d(4) = 1 simpul anting-anting (pendant vertex)
Tinjau graf G2: d(1) = 3 bersisian dengan sisi ganda
d(2) = 4 bersisian dengan sisi gelang (loop)
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
Pada graf berarah,
85
din(v) = derajat-masuk (in-degree)
= jumlah busur yang masuk ke simpul v
dout(v) = derajat-keluar (out-degree)
= jumlah busur yang keluar dari simpul v
d(v) = din(v) + dout(v)
1 1
2 3 2 3
4 4
G4 G5
Tinjau graf G4:
din(1) = 2; dout(1) = 1
din(2) = 2; dout(2) = 3
din(3) = 2; dout(3) = 1
din(4) = 1; dout(3) = 2
Teorema: Untuk sembarang graf G, banyaknya simpul berderajat ganjil selau genap.
Contoh:
Diketahui graf dengan lima buah simpul. Dapatkah kita menggambar graf tersebut jika derajat
masing-masing simpul adalah:
a) 2, 3, 1, 1, 2
b) 2, 3, 3, 4, 4
Jawab:
a. Tidak dapat, karena jumlah derajat semua simpulnya ganjil (2 + 3 + 1 + 1 + 2 = 9).
b. Dapat, karena jumlah derajat semua simpulnya genap (2 + 3 + 3 + 4 + 4 = 16).
86
6.Lintasan (Path)
Lintasan yang panjangnya n dari simpul awal v0 ke simpul tujuan vn di dalam graf G ialah barisan
berselang-seling simpul-simpul dan sisi-sisi yang berbentuk v0, e1, v1, e2, v2,... , vn –1, en, vn
sedemikian sehingga e1 = (v0, v1), e2 = (v1, v2), ... , en = (vn-1, vn) adalah sisi-sisi dari graf G.
Tinjau graf G1: lintasan 1, 2, 4, 3 adalah lintasan dengan barisan sisi (1,2), (2,4), (4,3).
Panjang lintasan adalah jumlah sisi dalam lintasan tersebut. Lintasan 1, 2, 4, 3 pada G1 memiliki
panjang 3.
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
87
1 1 1
e2
2 e3 5
3 e1
3e5 3
e4 2 4
4 2
G1 G2 G3
8.Terhubung (Connected)
Dua buah simpul v1 dan simpul v2 disebut terhubung jika terdapat lintasan dari v1 ke v2. Graf G
disebut graf terhubung (connected graph) jika untuk setiap pasang simpul vi dan vj dalam
himpunan V terdapat lintasan dari vi ke vj.
Jika tidak, maka G disebut graf tak-terhubung (disconnected graph).
2
5
14
6
3 8 7
a. Graf berarah G dikatakan terhubung jika graf tidak berarahnya terhubung (graf tidak
berarah dari G diperoleh dengan menghilangkan arahnya).
b. Dua simpul, u dan v, pada graf berarah G disebut terhubung kuat (strongly connected)
jika terdapat lintasan berarah dari u ke v dan juga lintasan berarah dari v ke u.
c. Jika u dan v tidak terhubung kuat tetapi terhubung pada graf tidak berarahnya, maka u
dan v dikatakan terhubung lemah (weakly coonected).
d. Graf berarah G disebut graf terhubung kuat (strongly connected graph) apabila
untuk setiap pasang simpul sembarang u dan v di G, terhubung kuat. Kalau tidak, G
disebut graf terhubung lemah.
88
1
2 3
3 4
graf berarah terhubung lemah graf berarah terhubung kuat
9. Cut-Set
Cut-set dari graf terhubung G adalah himpunan sisi yang bila dibuang dari G menyebabkan G
tidak terhubung. Jadi, cut-set selalu menghasilkan dua buah komponen.
Pada graf di bawah, {(1,2), (1,5), (3,5), (3,4)} adalah cut-set. Terdapat banyak cut-set pada
sebuah graf terhubung.
Himpunan {(1,2), (2,5)} juga adalah cut-set, {(1,3), (1,5), (1,2)} adalah cut-set, {(2,6)} juga cut-set,
tetapi {(1,2), (2,5), (4,5)} bukan cut-set sebab himpunan bagiannya, {(1,2), (2,5)} adalah cut-set.
1 2 1 2
5 6 5 6
3 4 3 4
(a) (b)
89
a
10 12
8
e b
15 11 9
d 14 c
E. Latihan
90
Pertemuan 13
Graf Khusus
Graf lengkap ialah graf sederhana yang setiap simpulnya mempunyai sisi ke semua simpul
lainnya. Graf lengkap dengan n buah simpul dilambangkan dengan Kn.
Jumlah sisi pada graf lengkap yang terdiri dari n buah simpul adalah n(n – 1)/2.
K1 K2 K3 K4 K5 K6
B. Graf Lingkaran
Graf lingkaran adalah graf sederhana yang setiap simpulnya berderajat dua. Graf lingkaran
dengan n simpul dilambangkan dengan Cn.
Graf yang setiap simpulnya mempunyai derajat yang sama disebut graf teratur. Apabila derajat
setiap simpul adalah r, maka graf tersebut disebut sebagai graf teratur derajat r. Jumlah sisi pada
graf teratur adalah nr/2.
91
Contoh:
Berapa jumlah maksimum dan jumlah minimum simpul pada graf sederhana yang mempunyai 16
buah sisi dan tiap simpul berderajat sama dan tiap simpul berderajat ≥ 4 ?
Jawab:
Tiap simpul berderajat sama-----> graf teratur.
Jumlah sisi pada graf teratur berderajat r adalah e = nr/2. Jadi, n = 2e/r = (2)(16)/r = 32/r.
Untuk r = 4, jumlah simpul yang dapat dibuat adalah maksimum, yaitu n = 32/4 = 8.
Untuk r yang lain (r > 4 dan r merupakan pembagi bilangan bulat dari 32):
r = 8 -> n = 32/8 = 4 -> tidak mungkin membuat graf sederhana.
r = 16 -> n = 32/16 = 2 -> tidak mungkin membuat graf sederhana.
Jadi, jumlah simpul yang dapat dibuat adalah 8 buah (maksimum dan minimum).
Graf G yang himpunan simpulnya dapat dipisah menjadi dua himpunan bagian V1 dan V2,
sedemikian sehingga setiap sisi pada G menghubungkan sebuah simpul di V1 ke sebuah simpul
di V2 disebut graf bipartit dan dinyatakan sebagai G(V1, V2).
V1 V2
Graf G di bawah ini adalah graf bipartit, karena simpul-simpunya dapat dibagi menjadi V1 = {a, b,
d} dan V2 = {c, e, f, g}
a b
g c
f
e d
G
92
H1 H2 H3
W G E
E. Representasi Graf
Contoh:
1 1 1
2 5
3 2 3
3
2 4 4
4
1 2 3 4
1 2 3 4 5 1 2 3 4
1 0 1 1 0 1 0 1 1 0 0
1 0 1 0 0
2 1 0 1
1 2 1 0 1 0
0 2 1
3 1 1 0 1 3 1 1 0 1 0 0 1 1
3 1 0 0 0
4 0 1 1 4 0 0 1 0 0
0 4 0 1 1 0
5 0 0 0 0
0
93
(b)
Untuk graf berarah,
din (vj) = jumlah nilai pada kolom j = an
i1
ij
10 12
8
e b
15 9
11
d 14 c
a b c d e
a
12 10
b
9 11
12 8
9 14
c
11 14 15
d
e 8 15
10
e1
1 2
e2
e4e3
3
e5
4
e1 e2 e3 e4 e5
94
1 1 1 0
1 0
2 1 1 1
3 0 0 1 0 0
1 1
4 0 0 0
0 1
1 1 1
2 5
3 2 3
3
2 4 4
4
Jawab:
95
2
1 2 3
1
3
5 4
5 4
Dua buah graf yang sama (hanya penggambaran secara geometri berbeda) isomorfik!
Dua buah graf yang sama tetapi secara geometri berbeda disebut graf yang saling isomorfik.
Dua buah graf, G1 dan G2 dikatakan isomorfik jika terdapat korespondensi satu-satu antara
simpul-simpul keduanya dan antara sisi-sisi keduaya sedemikian sehingga hubungan kebersisian
tetap terjaga.
Dengan kata lain, misalkan sisi e bersisian dengan simpul u dan v di G1, maka sisi e’ yang
berkoresponden di G2 harus bersisian dengan simpul u’ dan v’ yang di G2.
Dua buah graf yang isomorfik adalah graf yang sama, kecuali penamaan simpul dan sisinya saja
yang berbeda. Ini benar karena sebuah graf dapat digambarkan dalam banyak cara.
3
d c v w
1 2 a b x y
(a) G1 (b) G2 (c) G3
Gambar. G1 isomorfik dengan G2, tetapi G1 tidak isomorfik dengan G3
a v w
e
c
b
d x y
(b) G2
(a) G1
Gambar Graf (a) dan graf (b) isomorfik [DEO74]
96
a b c d e x y w v z
a 0 1 1 1 0 x 0 1 1 1 0
b 1 0
1 0 0 y 1 0 1 0 0
AG1 = c 1 1 0 1 0 AG2 = w 1 1 0 1 0
d 1 0 1 0 1 v 1 0 1 0 1
e 0 0 0 1 0 z 0 0 0 1 0
(a)
(b)
Gambar (a) Dua buah graf isomorfik, (b) tiga buah graf isomorfik
97
G. Latihan
a p
e t
d h f b s w u q
g v
c r
a b p q
ef
t
u
d c s r
3. Gambarkan 2 buah graf yang isomorfik dengan graf teratur berderajat 3 yang
mempunyai 8 buah simpul.
98
Pertemuan 14
Graf Planar dan Graf Bidang
Graf yang dapat digambarkan pada bidang datar dengan sisi-sisi tidak saling memotong
(bersilangan) disebut graf planar,
jika tidak, maka ia disebut graf tak-planar.
K4 adalah graf planar:
Graf planar yang digambarkan dengan sisi-sisi yang tidak saling berpotongan disebut graf
bidang (plane graph).
99
B. Aplikasi Graf Planar
H1 H2 H3 H1 H2 H3
W G E G
W E
(a) (b)
(a) Graf persoalan utilitas (K3,3), (b) graf persoalan utilitas bukan graf planar.
Contoh:
Gambarkan graf (kiri) di bawah ini sehingga tidak ada sisi-sisi yang berpotongan (menjadi graf
bidang). (Solusi: graf kanan)
Sisi-sisi pada graf bidang membagi bidang datar menjadi beberapa wilayah (region) atau muka
(face).
Graf bidang pada gambar di bawah ini terdiri atas 6 wilayah (termasuk wilayah terluar):
100
R2 R3 R4
R6
R5
R1
Hubungan antara jumlah simpul (n), jumlah sisi (e), dan jumlah wilayah (f) pada graf bidang:
n–e+f=2 (Rumus Euler)
R2 R3 R4
R6
R5
R1
C. Ketaksamaan Euler
Pada graf planar sederhana terhubung dengan f buah wilayah, n buah simpul, dan e buah sisi (e
> 2) selalu berlaku:
e 3n – 6
Ketidaksamaan yang terakhir dinamakan ketidaksamaan Euler, yang dapat digunakan untuk
menunjukkan keplanaran suatu graf sederhana .
Kalau graf planar, maka ia memenuhi ketidaksamaan Euler, sebaliknya jika tidak planar maka
ketidaksamaan tersebut tidak dipenuhi.
Contoh:
Pada K4, n = 4, e = 6, memenuhi ketidaksamaan Euler, sebab
6 3(4) – 6.
Jadi, K4 adalah graf planar.
Pada graf K5, n = 5 dan e = 10, tidak memenuhi ketidaksamaan Euler sebab
10 3(5) – 6.
Jadi, K5 tidak planar
101
K4 K5 K3,3
Buat asumsi baru: setiap daerah pada graf planar dibatasi oleh paling sedikit empat buah sisi.
Dari penurunan rumus diperoleh
e 2n - 4
Contoh
Graf K3,3 pada Gambar di bawah memenuhi ketidaksamaan e 2n – 4, karena
e = 9, n = 6
9 (2)(6) – 4 = 8 (salah)
yang berarti K3,3 bukan graf planar.
H1 H2 H3 H1 H2 H3
W G E W G E
E. Teorema Kuratowski
102
(a) (b) (c)
Gambar
(a)
Graf Kuratowski pertama (K5)
(b)
Graf Kuratowski kedua (K3, 3)
(c)
Graf yang isomorfik dengan graf Kuratowski kedua
Teorema Kuratowski.
Graf G bersifat planar jika dan hanya jika ia tidak mengandung upagraf yang isomorfik dengan
salah satu graf Kuratowski atau homeomorfik (homeomorphic) dengan salah satu dari keduanya.
v y
x
G1 G2 G3
Gambar Tiga buah graf yang homemorfik satu sama lain.
103
Contoh:
Kita gunakan Teorema Kuratowski untuk memeriksa keplanaran graf. Graf G di bawah ini bukan
graf planar karena ia mengandung upagraf (G1) yang sama dengan K3,3.
a b a b
c c
f e d f e d
G1
G
Graf G tidak planar karena ia mengandung upagraf yang sama dengan K3,3.
Lintasan Euler ialah lintasan yang melalui masing-masing sisi di dalam graf tepat satu kali.
Sirkuit Euler ialah sirkuit yang melewati masing-masing sisi tepat satu kali..
Graf yang mempunyai sirkuit Euler disebut graf Euler (Eulerian graph). Graf yang mempunyai
lintasan Euler dinamakan juga graf semi-Euler (semi-Eulerian graph).
Contoh:
2 1 1 2 2 3
(a)
(b) (c)
3 5
4 1 4
3 4 5 6 6 7
(d)d (e) 1 2
b (f) a b
e c 4 5 c d e
104
Sirkuit Euler pada graf (c) : 1, 2, 3, 4, 7, 3, 5, 7, 6, 5, 2, 6, 1
Sirkuit Euler pada graf (d) : a, c, f, e, c, b, d, e, a, d, f, b, a
Graf (e) dan (f) tidak mempunyai lintasan maupun sirkuit Euler
(a) dan (b) graf semi-Euler
(c) dan (d) graf Euler
(e)dan (f) bukan graf semi-Euler atau graf Euler
TEOREMA.
Graf tidak berarah memiliki lintasan Euler jika (graf semi-Euler) dan hanya jika terhubung dan
memiliki dua buah simpul berderajat ganjil atau tidak ada simpul berderajat ganjil sama sekali.
TEOREMA.
Graf tidak berarah G adalah graf Euler (memiliki sirkuit Euler) jika dan hanya jika setiap simpul
berderajat genap.
TEOREMA.
a. Graf berarah G memiliki sirkuit Euler jika dan hanya jika G terhubung dan setiap simpul
memiliki derajat-masuk dan derajat-keluar sama.
b. G memiliki lintasan Euler jika dan hanya jika G terhubung dan setiap simpul memiliki
derajat-masuk dan derajat-keluar sama kecuali dua simpul, yang pertama memiliki
derajat-keluar satu lebih besar derajat-masuk, dan yang kedua memiliki derajat-masuk
a
b d c d c
g
f
c
a b a b
e d
(a) (b) (c)
satu lebih besar dari derajat-keluar.
105
(b) Graf berarah semi-Euler (d, a, b, d, c, b)
(c) Graf berarah bukan Euler maupun semi-Euler
Lintasan Hamilton ialah lintasan yang melalui tiap simpul di dalam graf tepat satu kali.
Sirkuit Hamilton ialah sirkuit yang melalui tiap simpul di dalam graf tepat satu kali, kecuali
simpul asal (sekaligus simpul akhir) yang dilalui dua kali.
Graf yang memiliki sirkuit Hamilton dinamakan graf Hamilton, sedangkan graf yang hanya
memiliki lintasan Hamilton disebut graf semi-Hamilton.
1 2 1
2 1 2
4 3 4
3 4 3
(a) (b) (c)
(a) (b)
(a)Dodecahedron Hamilton,
(b)graf yang mengandung sirkuit Hamilton
106
TEOREMA.
Syarat cukup supaya graf sederhana G dengan n ( 3) buah simpul adalah graf Hamilton ialah
bila derajat tiap simpul paling sedikit n/2 (yaitu, d(v) n/2 untuk setiap simpul v di G). (coba
nyatakan dalam “jika p maka q”)
TEOREMA.
Setiap graf lengkap adalah graf Hamilton.
TEOREMA.
Di dalam graf lengkap G dengan n buah simpul (n 3), terdapat (n – 1)!/2 buah sirkuit Hamilton.
TEOREMA.
Di dalam graf lengkap G dengan n buah simpul (n 3 dan n ganjil), terdapat (n – 1)/2 buah sirkuit
Hamilton yang saling lepas (tidak ada sisi yang beririsan). Jika n genap dan n 4, maka di
dalam G terdapat (n – 2)/2 buah sirkuit Hamilton yang saling lepas.
Contoh:
Sembilan anggota sebuah klub bertemu tiap hari untuk makan siang pada sebuah meja bundar.
Mereka memutuskan duduk sedemikian sehingga setiap anggota mempunyai tetangga duduk
berbeda pada setiap makan siang. Berapa hari pengaturan tersebut dapat dilaksanakan?
Jawab:
Jumlah pengaturan tempat duduk yang berbeda adalah (9 – 1)/2 = 4.
9
8
1
3
5
107
Beberapa graf dapat mengandung sirkuit Euler dan sirkuit Hamilton sekaligus, mengandung
sirkuit Euler tetapi tidak mengandung sirkuit Hamilton, dan sebagainya.
5 5
1 2 1 2
4 3 4 3
6
(a) (b)
(a)Graf Hamilton sekaligus graf Euler
(b)Graf Hamilton sekaligus graf semi-Euler
H. Latihan
108
4. Gambar di bawah ini adalah denah lantai dasar sebuah gedung. Apakah
dimungkinkan berjalan melalui setiap pintu di lantai itu hanya satu kali saja jika kita
boleh mulai memasuki pintu yang mana saja?
109