Section integral_domain.
Context {R:Type}`{Rid:Integral_domain R}.
red;intro. apply integral_domain_one_zero.
assert (0 == - (0:R)). cring.
rewrite H0. rewrite <- H. cring.
Qed.
Definition pow (r : R) (n : nat) := Ring_theory.pow_N 1 mul r (N.of_nat n).

Lemma pow_not_zero: forall p n, pow p n == 0 -> p == 0.