Rpow

# Library Rpow

`Require Export Omega.
Require Export Digit.
Theorem pow_O : forall e : R, (e ^ 0)%R = 1%R.
Theorem pow_1 : forall e : R, (e ^ 1)%R = e.
Theorem pow_NR0 : forall (e : R) (n : nat), e <> 0%R -> (e ^ n)%R <> 0%R.
Theorem pow_add :
forall (e : R) (n m : nat), (e ^ (n + m))%R = (e ^ n * e ^ m)%R.
Hint Resolve pow_O pow_1 pow_NR0 pow_add: real.
Theorem pow_RN_plus :
forall (e : R) (n m : nat),
e <> 0%R -> (e ^ n)%R = (e ^ (n + m) * / e ^ m)%R.
Theorem pow_lt : forall (e : R) (n : nat), (0 < e)%R -> (0 < e ^ n)%R.
Hint Resolve pow_lt: real.
Theorem Rlt_pow_R1 :
forall (e : R) (n : nat), (1 < e)%R -> 0 < n -> (1 < e ^ n)%R.
Hint Resolve Rlt_pow_R1: real.
Theorem Rlt_pow :
forall (e : R) (n m : nat), (1 < e)%R -> n < m -> (e ^ n < e ^ m)%R.
Hint Resolve Rlt_pow: real.
Theorem pow_R1 :
forall (r : R) (n : nat), (r ^ n)%R = 1%R -> Rabs r = 1%R \/ n = 0.
Theorem Zpower_NR0 :
forall (e : Z) (n : nat), (0 <= e)%Z -> (0 <= Zpower_nat e n)%Z.
Theorem Zpower_NR1 :
forall (e : Z) (n : nat), (1 <= e)%Z -> (1 <= Zpower_nat e n)%Z.
Hint Resolve Zpower_NR0 Zpower_NR1: zarith.
Theorem powerRZ_O : forall e : R, powerRZ e 0 = 1%R.
Theorem powerRZ_1 : forall e : R, powerRZ e (Zsucc 0) = e.
Theorem powerRZ_NOR : forall (e : R) (z : Z), e <> 0%R -> powerRZ e z <> 0%R.
Hint Resolve powerRZ_O powerRZ_1 powerRZ_NOR: real.
Theorem powerRZ_add :
forall (e : R) (n m : Z),
e <> 0%R -> powerRZ e (n + m) = (powerRZ e n * powerRZ e m)%R.
Hint Resolve powerRZ_O powerRZ_1 powerRZ_NOR powerRZ_add: real.
Theorem powerRZ_Zopp :
forall (e : R) (z : Z), e <> 0%R -> powerRZ e (- z) = (/ powerRZ e z)%R.
Theorem powerRZ_Zs :
forall (e : R) (n : Z),
e <> 0%R -> powerRZ e (Zsucc n) = (e * powerRZ e n)%R.
Theorem Zpower_nat_Z_powerRZ :
forall (n : Z) (m : nat),
IZR (Zpower_nat n m) = powerRZ (IZR n) (Z_of_nat m).
Theorem powerRZ_lt : forall (e : R) (z : Z), (0 < e)%R -> (0 < powerRZ e z)%R.
Hint Resolve powerRZ_lt: real.
Theorem powerRZ_le :
forall (e : R) (z : Z), (0 < e)%R -> (0 <= powerRZ e z)%R.
Hint Resolve powerRZ_le: real.
Theorem Rlt_powerRZ :
forall (e : R) (n m : Z),
(1 < e)%R -> (n < m)%Z -> (powerRZ e n < powerRZ e m)%R.
Hint Resolve Rlt_powerRZ: real.
Theorem Rpow_R1 :
forall (r : R) (z : Z),
r <> 0%R -> powerRZ r z = 1%R -> Rabs r = 1%R \/ z = 0%Z.
Theorem Rpow_eq_inv :
forall (r : R) (p q : Z),
r <> 0%R -> Rabs r <> 1%R -> powerRZ r p = powerRZ r q -> p = q.
Theorem Zpower_nat_powerRZ_absolu :
forall n m : Z,
(0 <= m)%Z -> IZR (Zpower_nat n (Zabs_nat m)) = powerRZ (IZR n) m.
Theorem powerRZ_R1 : forall n : Z, powerRZ 1 n = 1%R.
Theorem Rle_powerRZ :
forall (e : R) (n m : Z),
(1 <= e)%R -> (n <= m)%Z -> (powerRZ e n <= powerRZ e m)%R.
Theorem Zlt_powerRZ :
forall (e : R) (n m : Z),
(1 <= e)%R -> (powerRZ e n < powerRZ e m)%R -> (n < m)%Z.
Theorem Zle_powerRZ :
forall (e : R) (n m : Z),
(1 < e)%R -> (powerRZ e n <= powerRZ e m)%R -> (n <= m)%Z.
Theorem Rinv_powerRZ :
forall (e : R) (n : Z), e <> 0%R -> (/ powerRZ e n)%R = powerRZ e (- n).
`