Module Type ZMulOrderProp (Import Z : ZAxiomsMiniSig').
Include ZAddOrderProp Z.
Notation mul_pos := lt_0_mul (only parsing).
Notation mul_neg := lt_mul_0 (only parsing).
Notation mul_nonneg := le_0_mul (only parsing).
Notation mul_nonpos := le_mul_0 (only parsing).
Notation le_0_square := square_nonneg (only parsing).

Theorem square_le_mono_nonpos : forall n m, n <= 0 -> m <= n -> n * n <= m * m.