Module Import Private_NZDiv := Nop <+ NZDivProp A A B.
(** Another formulation of the main equation *)
(** We have a general bound for absolute values *)
(** Uniqueness theorems *)
Fact opp_mod_bound_or : forall a b, b~=0 ->
0 <= -(a mod b) < -b \/ -b < -(a mod b) <= 0.
(** With the current conventions, the other sign rules are rather complex. *)
(** The sign of [a mod b] is the one of [b] (when it isn't null) *)
(** A division by itself returns 1 *)
(** A division of a small number by a bigger one yields zero. *)

Lemma mod_mul : forall a b, b~=0 -> (a*b) mod b == 0.