Algoritma Euclid
Pada setiap bilangan bulat dan dimana yang memenuhi dan , dimana bilangan bulat adalah hasil bagi (quotient) dan bilangan bulat adalah sisa bagi (remainder), berlaku
GCD adalah singkatan dari Greatest Common Divisor. Dalam bahasa Indonesia, GCD dikenal sebagai FPB: Faktor Persekutuan Terbesar.
Teorema di atas bisa dipakai secara beruntun untuk mencari GCD secara cepat. Pemakaian secara beruntun ini dikenal sebagai Algoritma Euclid. Algoritma Euclid akan terus berlangsung selama dan baru akan berhenti ketika yaitu ketika habis dibagi oleh yang artinya
Dalam pencarian GCD, hanya faktor positif yang diperhitungkan. Hal ini disebabkan karena faktor negatif selalu lebih kecil dari faktor positif. Sebagai contoh, . Secara teknis, memang betul bahwa adalah faktor dari dan . Tetapi karena maka tidak akan pernah menjadi GCD dari dan .
Lebih jauh lagi. Jika salah satu atau kedua bilangan yang diberikan adalah bilangan negatif, maka tanda negatif bisa diabaikan dan pencarian GCD hanya menggunakan bilangan positif atau nilai mutlak saja. Sebagai contoh, . Hal ini diperbolehkan karena dan keduanya adalah faktor persekutuan dari dan . Dari kedua faktor ini persekutuan ini, tentu saja lebih besar dari .
Secara formal,
Kemudian, dalam notasi penulisan GCD, usahakan agar bilangan bulat yang lebih besar ditulis terlebih dahulu. Walaupun tidak ada aturan yang mengharuskan hal ini, tetapi penulisan ini lebih "hemat langkah" dalam Algoritma Euclid. Contoh 1 diberikan khusus untuk menjelaskan kenapa notasi penulisan ini hemat langkah.
Di dalam teori bilangan, ada satu GCD yang sangat khusus, yaitu GCD yang nilainya 1.
Jika maka dikatakan dan adalah bilangan yang relatif prima (relatively prime) atau koprima (coprime).
Relatif prima maksudnya adalah kedua bilangan bulat dan tidak mempunyai faktor persekutuan. Satu-satunya faktor persekutuan dari dan adalah 1. Contoh bilangan yang relatif prima adalah 50 dan 39.
Selanjutnya, sebelum mempelajari Algoritma Euclid, pembaca sangat disarankan untuk memahami Pembagian Euclid terlebih dahulu.
Agar lebih jelas, perhatikan contoh-contoh di bawah.
Contoh 1
Carilah GCD dari 4 dan 6 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 4 habis dibagi oleh 2 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari 4 dan 6 adalah 2.
Dalam contoh ini, pencarian berubah menjadi pencarian . Walaupun tidak salah, tetapi operasi ini tidak hemat langkah. Agar lebih hemat langkah, usahakan untuk menulis bilangan yang lebih besar terlebih dahulu. Dalam contoh ini, lebih baik untuk langsung memulai pencarian dari .
Untuk contoh-contoh selanjutnya, semua akan menulis bilangan yang lebih besar terlebih dahulu.
Contoh 2
Carilah GCD dari 252 dan 105 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 42 habis dibagi oleh 21 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari 252 dan 105 adalah 21.
Contoh 3
Carilah GCD dari 110 dan 490 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 10 membagi habis 50 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari 110 dan 490 adalah 10.
Contoh 4
Carilah GCD dari -35 dan 120 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 15 habis dibagi oleh 5 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari -35 dan 120 adalah 5.
Contoh 5
Carilah GCD dari 50 dan -39 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 5 habis dibagi oleh 1 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari 50 dan -39 adalah 1. Berarti 50 dan -39 adalah dua bilangan yang relatif prima.
Contoh 6
Carilah GCD dari -14 dan -27 dengan menggunakan Algoritma Euclid.
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma dilanjutkan dan
Sisa bagi (remainder)
Karena maka algoritma berhenti dan karena 13 habis dibagi oleh 1 maka
Dari rentetan algoritma ini diperoleh:
Dengan demikian, GCD dari -14 dan 27 adalah 1. Berarti -14 dan 27 adalah dua bilangan yang koprima.
Bukti
Rentetan Algoritma Euclid hanya mungkin dilakukan karena teorema di bawah ini:
Pada setiap bilangan bulat dan dimana yang memenuhi dan , dimana bilangan bulat adalah hasil bagi (quotient) dan bilangan bulat adalah sisa bagi (remainder), berlaku
Berikut disajikan pembuktian teorema di atas.
Misalkan D adalah himpunan semua faktor-faktor persekutuan dari dan .
Tentu saja faktor persekutuan terbesar (GCD) dari dan ada di dalam D.
Misalkan pula E adalah himpunan semua faktor-faktor persekutuan dari dan .
Tentu saja faktor persekutuan terbesar (GCD) dari dan ada di dalam E.
Kalau bisa dibuktikan bahwa semua anggota himpunan D ada di dalam E dan semua anggota himpunan E ada di dalam D, berarti D = E.
Kalau D = E, berarti anggota himpunan terbesar D sama dengan anggota himpunan terbesar E.
Kalau anggota himpunan terbesar D sama dengan anggota himpunan terbesar E, berarti faktor persekutuan terbesar dan sama dengan faktor persekutuan terbesar dan .
Berarti, untuk membuktikan cukup dengan membuktikan bahwa semua anggota himpunan D ada di dalam E dan semua anggota himpunan E ada di dalam D.
Bagian 1: semua anggota himpunan D ada di dalam E
Ambil salah satu anggota himpunan D. Katakanlah
Karena adalah faktor dari dan , maka dan
Terlihat jelas bahwa adalah salah satu faktor dari .
Karena adalah faktor dari dan , maka adalah salah satu faktor persekutuan dari dan .
Artinya pasti ada di dalam himpunan E.
Dengan cara yang sama, semua anggota himpunan D pasti juga anggota himpunan E.
Bagian 2: semua anggota himpunan E ada di dalam D
Ambil salah satu anggota himpunan E. Katakanlah
Karena adalah faktor dari dan , maka dan
Terlihat jelas bahwa adalah salah satu faktor dari .
Karena adalah faktor dari dan , maka adalah salah satu faktor persekutuan dari dan .
Artinya pasti ada di dalam himpunan D.
Dengan cara yang sama, semua anggota himpunan E pasti juga anggota himpunan D.
Kesimpulan
Dengan demikian, karena sudah ditunjukkan bahwa semua himpunan D pasti juga anggota himpunan E dan sebaliknya semua anggota himpunan E pasti juga anggota himpunan D, maka dapat disimpulkan D = E. Selanjutnya, karena D = E, maka anggota himpunan terbesar D pasti sama dengan anggota himpunan terbesar E. Karena anggota himpunan terbesar D sama dengan anggota himpunan terbesar E, maka faktor persekutuan terbesar dari dan sama dengan faktor persekutuan terbesar dari dan