Lewati ke konten utama

Subbab 2.8 Diskusi

Sambil minum kopi, Xing mengatakan bahwa ia telah bereksperimen dengan perangkat lunak SageMath yang dibahas dalam Bab 1. Ia memahami bahwa SageMath memperlakukan bilangan bulat besar sebagai string. Dengan antusias, Xing bercerita bahwa ia meminta SageMath mencari jumlah \(a+b\) dari dua bilangan bulat besar \(a\) dan \(b\text{,}\) yang masing-masing memiliki lebih dari \(800\) digit. Perangkat lunak itu menemukan jawabannya hampir secepat ia dapat menekan tombol Enter pada netbook-nya. “Itu tidak terlalu mengesankan,” sela Alice. “Manusia, bahkan Bob sekalipun, dapat melakukannya dalam beberapa menit dengan pensil dan kertas.”
“Terima kasih atas komentar baik Anda,” jawab Bob. Anggota kelompok yang lain pun menyadari bahwa Alice bersikap cukup keras terhadap Bob tanpa alasan yang jelas.
Dave membela Bob dengan berkata, “Hanya sedikit orang yang mau mencoba mencari hasil kali \(a\) dan \(b\) secara manual, dan bahkan Anda pun tidak akan mau, Alice.” Xing kembali menyela, “Itulah intinya. Bahkan netbook berukuran kecil dapat menemukan hasil kalinya dengan sangat, sangat cepat. Malah, saya mencobanya dengan dua bilangan bulat yang masing-masing memiliki lebih dari seribu digit. Netbook itu menemukan hasil kalinya dalam waktu sekitar satu detik.” Zori, yang selalu skeptis, bertanya, “Maksud Anda, Anda mengetikkan dua bilangan sebesar itu dengan teliti?” Xing segera menjawab, “Tentu saja tidak. Saya hanya menyalin dan menempelkan data dari satu sumber ke sumber lain.” Yolanda berkata, “Trik yang sangat cerdas. Cara itu benar-benar mengurangi kemungkinan terjadinya kesalahan.”
Dave bertanya, “Bagaimana dengan faktorisasi? Dapatkah netbook Anda, dengan perangkat lunak canggihnya untuk string, memfaktorkan bilangan bulat besar?” Xing mengatakan bahwa ia akan mencoba beberapa contoh soal dan melaporkan hasilnya. Carlos berkata, “Memfaktorkan bilangan bulat dengan beberapa ratus digit mungkin sangat sulit, bukan hanya bagi netbook, melainkan juga bagi superkomputer. Misalnya, andaikan bilangan bulat yang diberikan merupakan bilangan prima atau hasil kali dua bilangan prima besar. Menentukan mana di antara kedua pernyataan itu yang benar bisa jadi sangat sulit.”
Tanpa patah semangat, Dave melanjutkan, “Bagaimana dengan perpangkatan? Dapatkah perangkat lunak Anda menghitung \(a^b\) jika \(a\) dan \(b\) merupakan bilangan bulat besar?” Xing berkata, “Seharusnya itu bukan masalah. Bagaimanapun juga, \(a^b\) hanya berarti mengalikan \(a\) dengan dirinya sendiri sebanyak \(b\) kali, dan jika perkalian dapat dilakukan dengan cepat, itu hanyalah sebuah perulangan.” Yolanda mengatakan bahwa, berdasarkan penjelasan Xing, sebenarnya Xing sedang membicarakan program dengan perulangan bersarang sehingga program semacam itu mungkin memerlukan waktu lama untuk berhenti. Carlos tetap diam, tetapi ia berpikir mungkin ada cara untuk mempercepat perhitungan semacam itu.
Pada saat itu, Alice kembali masuk ke dalam percakapan: “Hei, teman-teman. Sementara Anda semua berbicara, saya mencari topik tentang bilangan bulat besar di web dan menemukan soal ini. ‘Apakah \(838200020310007224300\) merupakan bilangan Catalan?’ Bagaimana Anda akan menjawabnya? Apakah Anda harus menggunakan perangkat lunak khusus?”
Zori tidak senang. Dengan muram, ia membayangkan kelak mencari pekerjaan yang mewajibkannya menguasai aritmetika bilangan bulat besar sebagai keterampilan kerja. Arrgghh.