(** The sign of [a mod b] is the one of [b] (when it isn't null) *)

(** In this convention, [div] performs Rounding-Toward-Bottom.  Since we cannot speak of rational values here, we express this fact by multiplying back by [b], and this leads to separates statements according to the sign of [b].  First, [a/b] is below the exact fraction ... *)
Lemma mul_div_le : forall a b, 0<b -> b*(a/b) <= a.