Notation Zpower_1_r := Z.pow_1_r (only parsing).Notation Zpower_1_l := Z.pow_1_l (only parsing).Notation Zpower_0_l := Z.pow_0_l' (only parsing).Notation Zpower_0_r := Z.pow_0_r (only parsing).Notation Zpower_2 := Z.pow_2_r (only parsing).Notation Zpower_gt_0 := Z.pow_pos_nonneg (only parsing).Notation Zpower_ge_0 := Z.pow_nonneg (only parsing).Notation Zpower_Zabs := Z.abs_pow (only parsing).Notation Zpower_Zsucc := Z.pow_succ_r (only parsing).Notation Zpower_mult := Z.pow_mul_r (only parsing).Notation Zpower_le_monotone2 := Z.pow_le_mono_r (only parsing).

(* Specifications: *)
Theorem Zpower_le_monotone a b c : 0 < a -> 0 <= b <= c -> a^b <= a^c.
Theorem Zpower_lt_monotone a b c : 1 < a -> 0 <= b < c -> a^b < a^c.
Theorem Zpower_gt_1 x y : 1 < x -> 0 < y -> 1 < x^y.
Theorem Zmult_power p q r : 0 <= r -> (p*q)^r = p^r * q^r.
Theorem Zpower_le_monotone3 a b c : 0 <= c -> 0 <= a <= b -> a^c <= b^c.
Lemma Zpower_le_monotone_inv a b c : 1 < a -> 0 < b -> a^b <= a^c -> b <= c.