Module Type NZDivProp
(Import A : NZOrdAxiomsSig')
(Import B : NZDiv' A)
(Import C : NZMulOrderProp A).
(** Uniqueness theorems *)
(** A division by itself returns 1 *)
(** A division of a small number by a bigger one yields zero. *)
(** Same situation, in term of modulo: *)
(** * Basic values of divisions and modulo. *)
(** * Order results about mod and div *)
(** A modulo cannot grow beyond its starting point. *)
(* Division of positive numbers is positive. *)
(** As soon as the divisor is strictly greater than 1, the division is strictly decreasing. *)
(** [le] is compatible with a positive division. *)
(** The following two properties could be used as specification of div *)
(** The previous inequality is exact iff the modulo is zero. *)
(** Some additional inequalities about div. *)
(** A division respects opposite monotonicity for the divisor *)
(** * Relations between usual operations and mod and div *)
(** Cancellations. *)
(** Operations modulo. *)
(** A last inequality: *)
(** mod is related to divisibility *)

Lemma mod_divides : forall a b, 0<=a -> 0<b ->
(a mod b == 0 <-> exists c, a == b*c).