判定一个整数是否为素数即为素性测试(Primality test)。
素性测试的算法分为确定型启发式算法和随机算法。
随机算法:
费尔马素性测试法(Fermat primality test)
Miller-Rabin素性测试法(Miller–Rabin primality test)
Solovay–Strassen素性测试法(Solovay–Strassen primality test)
确定型启发式算法:
AKS素性测试法(AKS primality test)
Baillie–PSW素性测试法(Baillie–PSW primality test)
试除法(Trial division)卢卡斯素性测试法(Lucas primality test)
卢卡斯-莱默素性测试法(Lucas–Lehmer primality test)(专门用于测试梅森数的素性)