(* Iterated derivative. *)
Definition derivn n p := iter n deriv p.
Local Notation "a ^` ( n )" := (derivn n a) : ring_scope.

(* Specifications: *)
Lemma derivn0 p : p^`(0) = p.
Lemma polyOver_derivn S (ringS : semiringPred S) (kS : keyed_pred ringS) :
{in polyOver kS, forall p n, p^`(n) \is a polyOver kS}.