fact: Fixpoint pow_mod_pred (a:N) (l:dec_prime) (n:positive) {struct l} : N := match l with | nil => a | (q,p)::l => if (p ?= 1) then pow_mod_pred a l n else let a' := iter_pos _ (fun x => Npow_mod x q n) a (Pos.pred p) in pow_mod_pred a' l n end.
imports: List ZArith Zorder ZCAux LucasLehmer Pocklington ZCmisc Pmod