Lemma natrD m n : (m + n)%:R = m%:R + n%:R :> R.
Proof. exact: mulrnDr. Qed.

(* Specifications: *)
Lemma natrB m n : n <= m -> (m - n)%:R = m%:R -
Proof. by elim: m => [|m IHm]; rewrite ?mul
Proof. by rewrite -addn1 e
Lemma commr_refl x : comm
Proof. by rewrite /comm mulr0 mul0r. Qed.
Proof. by rewrite /comm mulr1
Proof. by move=> com_xy; rewrite /comm mulrN com_xy mulNr. Q
Proof.
Qed.
Proof. by move=> reg_x; rewrite -{1}(mulr0 x) (inj_eq reg_x). Q
Proof.
Qed.
Proof. by move=> reg_x y z; rewrite !mulNr => /oppr