Section SeparablePoly.
Variable R : idomainType.
Implicit Types p q d u v : {poly R}.
Definition separable_poly p := coprimep p p^`().
Local Notation separable := separable_poly.
Local Notation lcn_neq0 := (Pdiv.Idomain.lc_expn_scalp_neq0 _).

Lemma separable_mul p q :
separable (p * q) = [&& separable p, separable q & coprimep p q].