29 + 25
2
– 3 899 = 219 29 + 26
2
– 3 899 = 328 29 + 27
2
– 3 899 = 439 29 + 28
2
– 3 899 = 552 29 + 29
2
– 3 899 = 667 29 + 30
2
– 3 899 = 784 = 28
2
Sehingga 3 899 = 59 – 2859 +28 = 331 87. Jadi, n = 31 873 = 31 29.
Batten, 2013
2.8. Invers Modulo Extended Euclidean
Jika a dan m relatif prima dan m 1, maka kita dapat menemukan invers dari a modulo m adalah bilangan bulat a sedemikian sehingga
aa
-1
≡ 1 mod m Bukti: Dua buah bilangan bulat a dan m dikatakan relatif prima jika Gcda, m = 1,
dan jika a dan m relatif prima, maka terdapat bilangan bulat p dan q sedemikian sehingga
pa + qm = 1 yang mengimplikasikan bahwa
pa + qm ≡ 1 mod m
Karena qm ≡ 0 mod m, maka
pa ≡ 1 mod m.
Kekongruenan yang terakhir ini berarti bahwa p adalah invers dari a modulo m.
Pembuktian di atas juga menceritakan bahwa untuk mencari invers dari a modulo m, kita harus membuat kombinasi lanjar dari a dan m sama dengan 1. Koefisien a dari
kombinasi lanjar tersebut merupakan invers dari a modulo m.
Contoh : Tentukan invers dari 4 mod 9 dan 17 mod 7.
1. Karena Gcd4, 9 = 1, maka invers dari 4 mod 9 ada. Dari algoritma Euclidean
diperoleh bahwa 9 = 2 . 4 + 1
Susun persamaan di atas menjadi –2 . 4 + 1 . 9 = 1
Universitas Sumatera Utara
Dari persamaan terakhir ini kita peroleh –2 adalah invers dari 4 modulo 9.
Periksalah bahwa –2 . 4 ≡ 1 mod 9
9 habis membagi –2 . 4 – 1 = –9
2. Karena Gcd17, 7 = 1, maka invers dari 17 mod 7 ada. Dari algoritma
Euclidean diperoleh rangkaian pembagian berikut: 17 = 2 . 7 + 3 i
7 = 2 . 3 + 1 ii 3 = 3 . 1 + 0 iii
yang berarti: Gcd17, 7 = 1 Susun ii menjadi:
1 = 7 – 2 . 3 iv
Susun i menjadi 3 = 17
– 2 . 7 v Sulihkan v ke dalam iv:
1 = 7 – 2 . 17 – 2 . 7 = 1 . 7 – 2 . 17 + 4 . 7 = 5 . 7 – 2 . 17
atau –2 . 17 + 5 . 7 = 1
Dari persamaan terakhir ini kita peroleh –2 adalah invers dari 17 modulo 7.
–2 . 17 ≡ 1 mod 7 7 habis membagi
–2 . 17 – 1 = –35 Munir, 2006
2.9. Uji Bilangan Prima Algoritma Lehmann
Sebagaimana diketahui bahwa bilangan prima tidak mengikuti pola yang jelas dan untuk mengetahui bahwa suatu bilangan prima atau tidak bukanlah tugas yang mudah.
Bilangan n disebut prima, jika tidak boleh ada pembagi n berada antara 2 dan √n. Jika
nilai bilangan n kecil maka pengujian sangat mudah dihitung, tetapi kesulitannya meningkat jika nilai n semakin besar. Salah satu metode yang cukup cepat untuk
menguji keprimaan suatu bilangan n adalah algoritma Lehmann. Algoritma
Lehmann:
Universitas Sumatera Utara
1. Bangkitkan bilangan acak a, 1 ≤ a ≤ p p adalah bilangan yang diuji
keprimaannya 2.
Hitung a
p – 12
mod p 3.
Jika a
p – 12
≡ 1 atau – 1 mod p, maka p tidak prima 4.
Jika a
p – 12
≡ 1 atau – 1 mod p, maka peluang p bukan prima adalah 50. 5.
Ulangi pengujian di atas sebanyak t kali dengan nilai a yang berbeda. Jika hasil perhitungan langkah 2 sama dengan 1 atau
– 1, tetapi tidak selalu sama dengan 1, maka peluang p adalah bilangan prima mempunyai kesalahan tidak lebih dari
12
t
.
Contoh 1 : Ujilah keprimaan bilangan p = 7 dengan algoritma Lehmann
Hitung a
7 – 12
mod 7 dengan mencoba nilai-nilai a 1 ≤ a ≤ 7
a = 1 1
7 – 12
mod 7 ≡ 1mod 7
a = 2 2
7 – 12
mod 7 ≡ 1mod 7
a = 3 3
7 – 12
mod 7 ≡ 1mod 7
a = 4 4
7 – 12
mod 7 ≡ 1mod 7
a = 5 5
7 – 12
mod 7 ≡ 1mod 7
a = 6 6
7 – 12
mod 7 ≡ 1mod 7
a = 7 7
7 – 12
mod 7 ≡ 1mod 7
Jadi, 7 adalah Bilangan Prima karena memenuhi syarat a
p – 12
≡ 1 atau – 1 mod p sebanyak tiga kali yaitu sama dengan ½ dari banyaknya penghitungan 1 ≤ a ≤ 7
sebanyak 72 = 3,5 = 3 dengan tingkat kesalahan sebesar 12
7
= 0,78125 atau tingkat kebenarannya mencapai 99, 21875.
Contoh 2 : Ujilah keprimaan bilangan p = 9 dengan algoritma Lehmann
Hitung a
9 – 12
mod 9 dengan mencoba nilai-nilai a a = 1
1
9 – 12
mod 9 ≡ 1mod 9
a = 2 2
9 – 12
mod 9 ≡ 1mod 9
a = 3 3
9 – 12
mod 9 ≡ 1mod 9
a = 4 4
9 – 12
mod 9 ≡ 1mod 9
a = 5 5
9 – 12
mod 9 ≡ 1mod 9
a = 6 6
9 – 12
mod 9 ≡ 1mod 9
a = 7 7
9 – 12
mod 9 ≡ 1mod 9
Universitas Sumatera Utara
a = 8 8
9 – 12
mod 9 ≡ 1mod 9
a = 9 9
9 – 12
mod 9 ≡ 1mod 9
Jadi, 9 adalah Bukan Bilangan Prima karena banyaknya penghitungan a
1 ≤ a ≤ 9 yang memenuhi syarat
atau hanya sebanyak dua kali yaitu tidak mencapai ½ dari banyaknya penghitungan a
sebanyak 92 = 4,5 = 4.Lehmann, 1982 Munir, 2006
Berikut ini adalah perbandingan uji keprimaan metode Lehmann dengan beberapa metode keprimaan lainnya:
1.
Metode Trial-Division: mudah diterapkan dan akurat tidak ada bilangan yang
akan terlewati hanya bergantung pada definisi keprimaannya tetapi akan melambat karena mencoba setiap angka hingga
√n dan memeriksanya satu per satu.
2.
Tes keprimaan Fermat: sangat mudah dan cepat, tetapi tidak terlalu akurat
Adanya bilangan Carmichael yaitu angka komposit akan dilaporkan sebagai bilangan prima.
3.
Tes Solovay-Strassen dan tes Miller-Rabin: cepat dan akurat , tapi tidak mudah
untuk menerapkan karena mengharuskan memahami Simbol Legendre dan Jacobi konsep-konsep matematika rahasia dan membutuhkan algoritma
faktorisasi yang efisien. Kemungkinan error tes Solovay-Strassen adalah 12
t
, sedangkan kemungkinan error tes Miller-Rabin adalah terbatas di atas oleh
14
t
. Menezes, et al. 2001
Universitas Sumatera Utara
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem