Dengan asumsi bahwa koefisien adalah bilangan bulat atau rasional dan Anda ingin akar bilangan bulat, pendekatan paling sederhana adalah dengan menggunakan bilangan bulat atau teorema akar rasional. Lihat http://en.wikipedia.org/wiki/Rational_root_theorem
Seperti dicatat oleh DW, ini mungkin bermasalah jika koefisien konstan sulit untuk faktor (lihat juga /math/123018/polynomial- dan-integer-root )f
Bagaimanapun, dokumentasi Sage dengan jelas menjelaskan bagaimana mereka melakukan pencarian root: "Metode selanjutnya, yang digunakan jika K adalah domain integral, adalah mencoba memfaktorkan polinomial. Jika ini berhasil, maka untuk setiap gelar-satu faktor a * x + b, kita tambahkan -b / a sebagai root (selama hasil bagi ini sebenarnya di ring yang diinginkan). "
Lihat http://www.sagemath.org/doc/reference/polynomial_rings/sage/rings/polynomial/polynomial_element.html .
Jadi pertanyaan Anda menjadi Bagaimana mereka faktor faktor polinomial dengan koefisien integer? Rupanya, Sage memanggil NTL untuk melakukan itu (lihat http://www.shoup.net/ntl/doc/ZZXFactoring.txt untuk detail NTL).
Jika Anda menginginkan metode efisien asimptotik, Anda bisa merujuk ke metode Lenstra, Lenstra, dan Lovasz ( https://openaccess.leidenuniv.nl/handle/1887/3810 ).