Module Type NZMulOrderProp (Import NZ : NZOrdAxiomsSig').
Include NZAddOrderProp NZ.
(* There are still many variants of the theorem above. One can assume 0 < n or 0 < p or n <= m or p <= q. *)
(** Some alternative names: *)
Definition mul_eq_0 := eq_mul_0.
Definition mul_eq_0_l := eq_mul_0_l.
Definition mul_eq_0_r := eq_mul_0_r.
(* The converse theorems require nonnegativity (or nonpositivity) of the other variable *)
(** A few results about squares *)

Lemma square_nonneg : forall a, 0 <= a * a.