intuition.
eapply (leRat_ratAdd_same_r d).
case_eq (bleRat r1 d); intuition.
rewrite ratSubtract_0; trivial.
eapply ratAdd_leRat_compat; intuition.
eapply rat0_le_all.
apply bleRat_total in H0.
rewrite ratAdd_comm.
rewrite ratSubtract_ratAdd_inverse_2; trivial.
eapply ratDistance_le_sum; trivial.
Qed.

Lemma ratSubtract_ratAdd_assoc_le : forall r1 r2 r3,
ratSubtract (r1 + r2) r3 <= r1 + (ratSubtract r2 r3).