AKS素数判定法
( X + a ) n ≢ X n + a ( mod X r − 1 , n ) {\displaystyle (X+a)^{n}\ \not \equiv \ X^{n}+a{\pmod {X^{r}-1,n}}}
しかし、これは「大雑把な評価」である。評価を楽にした分、その精度も落ちている。このままでは、合成数なのに誤って素数であると判定してしまう恐れがある。そこで、パラメータ a {\displaystyle a} を動かして、たくさんの a {\displaystyle a} に対して上の合同式を評価することで埋め合わせにする。
この発想が、AKSアルゴリズムの肝である。つまり、十分にたくさんの a {\displaystyle a} について上の合同式を確かめれば、 X r − 1 {\displaystyle X^{r}-1} を法としたままでも素数性を厳密に判定することができる(これは自明ではないが、証明できる)。そして、 a {\displaystyle a} を動かす範囲や適切な r {\displaystyle r} の値は n {\displaystyle n} に対してそれほど大きくならないので、この方法は最初の合同式を真面目に評価するより速く、多項式時間で動作する。