Section Lemmas.
Variable R : RING.
Variable Mod : MODULE R.
intros a b x y H' H'0; try assumption.
apply Trans with (module_mult a y); unfold module_mult in |- *.
apply Ap_comp; auto with algebra.
apply Ap_comp; auto with algebra.
Qed.
exact (operation_assoc (module_op Mod)).
Qed.
exact (module_op_lin_left_prf Mod).
Qed.
exact (module_op_lin_right_prf Mod).
Qed.
exact (operation_unit (module_op Mod)).
Qed.
Hint Resolve MODULE_comp MODULE_dist_r MODULE_dist_l MODULE_assoc
MODULE_unit_l: algebra.
intros x; try assumption.
apply GROUP_reg_left with (module_mult (monoid_unit R) x); auto with algebra.
apply
Trans with (module_mult (sgroup_law R (monoid_unit R) (monoid_unit R)) x);
auto with algebra.
apply Trans with (module_mult (monoid_unit R) x); auto with algebra.
Qed.

Lemma MODULE_absorbant_r :
forall a : R, Equal (module_mult a (monoid_unit Mod)) (monoid_unit Mod).