(* Composition operation on Inverses_setoid *)
Section inverses_comp_def.
Variable x y : Inverses_setoid.
Definition Inv_comp_elt_l := Inv_elt_l x +_M Inv_elt_l y.
Definition Inv_comp_elt_r := Inv_elt_r y +_M Inv_elt_r x.

(* Specifications: *)
Lemma Inv_comp_invs1 : Inverses_rel Inv_comp_elt_l Inv_comp_elt_r.
Lemma Inv_comp_invs2 : Inverses_rel Inv_comp_elt_r Inv_comp_elt_l.
Canonical Structure Inverses_comp : Inverses_setoid :=
Build_Inverses Inv_comp_invs1 Inv_comp_invs2.