(******************************************************************)
(** *                     Definition of  Rpower                   *)
(******************************************************************)
Definition Rpower (x y:R) := exp (y * ln x).
(******************************************************************)
(** *                     Properties of  Rpower                   *)
(******************************************************************)
(** Note: [Rpower] is prolongated to [1] on negative real numbers and it thus does not extend integer power. The next two lemmas, which hold for integer power, accidentally hold on negative real numbers as a side effect of the default value taken on negative real numbers. Contrastingly, the lemmas that do not hold for the integer power of a negative number are stated for [Rpower] on the positive numbers only (even if they accidentally hold due to the default value of [Rpower] on the negative side, as it is the case for [Rpower_O]). *)

Theorem Dpower :
forall y z:R,
0 < y ->
D_in (fun x:R => Rpower x z) (fun x:R => z * Rpower x (z - 1)) (
fun x:R => 0 < x) y.