fact: Definition aks_criteria (R : ringType) n k := [/\ 0 < n, 0 < k, (forall p, p \in [char R] -> [/\ 1 < order_modn k p, (p %| n)%N & k < p]), up_log 2 n ^ 2 <= order_modn k n & poly_intro_range R k n (sqrtn (totient k) * up_log 2 n) ].
imports: mathcomp(all_ssreflect all_fingroup all_field) mathcomp(ssralg finalg poly polydiv zmodp vector qpoly) more_thm rootn lcm_lbound