(* OZ *)
reflexivity.
(* pos n *)
simple induction n.
(* pos O *)
reflexivity.
(* pos (S y0) *)
intros y0 H; do 2 rewrite (tech_mult_posZ y0).
rewrite
(opp_add Z IdZ addZ OZ oppZ Z_group addZ_commutativity
(multZ (pos y0) y) y I I).
elim H; reflexivity.
(* neg n *)
intros; elim n.
(* neg O *)
reflexivity.
(* neg (S y0) *)
intros y0 H; do 2 rewrite (tech_mult_negZ y0).
rewrite
(opp_add Z IdZ addZ OZ oppZ Z_group addZ_commutativity
(multZ (neg y0) y) (oppZ y) I I).
elim H; reflexivity.
Qed.

(* Specifications: *)
(****************)
Lemma mult_oppZ_l : forall x y : Z, multZ (oppZ x) y = oppZ (multZ x y).
simple destruct y.