proposition: Lemma pow_mul_l : forall a b c, (a*b)^c == a^c * b^c.
proof: Proof. intros a b c. destruct (lt_ge_cases c 0) as [Hc|Hc]. - rewrite !(pow_neg_r _ _ Hc). now nzsimpl. - apply le_ind with (4:=Hc). + solve_proper. + now nzsimpl. + clear c Hc. intros c Hc IH. nzsimpl; trivial. rewrite IH; trivial. apply mul_shuffle1. Qed.
imports: NZAxioms NZMulOrder