proposition: Lemma Zsth : Setoid_Theory Z (@eq Z).
proof: Proof. Proof (Eqsth Z). Lemma Zeqe : ring_eq_ext Z.add Z.mul Z.opp (@eq Z). Proof (Eq_ext Z.add Z.mul Z.opp). Lemma Zth : ring_theory Z0 (Zpos xH) Z.add Z.mul Z.sub Z.opp (@eq Z). Proof. constructor. - exact Z.add_0_l. - exact Z.add_comm. - exact Z.add_assoc. - exact Z.mul_1_l. - exact Z.mul_comm. - exact Z.mul_assoc. - exact Z.mul_add_distr_r. - trivial. - exact Z.sub_diag. Qed.
imports: Zbool BinInt BinNat Setoid Ring_theory Ring_polynom