simple induction n; simpl in |- *; auto with *.
intros m; try assumption.
apply Trans with (nat_to_group m); auto with *.
intros n0 H' m; try assumption.
apply
Trans
with (sgroup_law G (nat_to_group n0) (sgroup_law G r (nat_to_group m)));
auto with *.
apply
Trans
with (sgroup_law G (nat_to_group n0) (sgroup_law G (nat_to_group m) r));
auto with *.
apply
Trans
with (sgroup_law G (sgroup_law G (nat_to_group n0) (nat_to_group m)) r);
auto with *.
apply
Trans
with (sgroup_law G (sgroup_law G (nat_to_group m) (nat_to_group n0)) r);
auto with *.
Qed.
Hint Resolve nat_to_group_com2: algebra.

Lemma nat_to_group_minus :
forall n m : nat,
n > m ->
Equal (nat_to_group (n - m))
(sgroup_law G (nat_to_group n) (group_inverse G (nat_to_group m))).