proposition: Lemma powRD x r s : (r + s == 0) ==> (x != 0) -> x `^ (r + s) = x `^ r * x `^ s.
proof: Proof. rewrite /powR; case: (eqVneq x 0) => //= [_|x_neq0 _]; last by rewrite mulrDl expRD. have [->|] := eqVneq r 0; first by rewrite mul1r add0r. by rewrite implybF mul0r => _ /negPf ->. Qed.
imports: mathcomp(all_ssreflect ssralg ssrint ssrnum matrix) mathcomp(interval rat) mathcomp(boolp classical_sets functions) mathcomp(mathcomp_extra) reals ereal signed topology normedtype landau sequences derive realfun itv convex