(** This file provides results about the Round-Toward-Zero Euclidean
  division [Z.quotrem], whose projections are [Z.quot] (noted ÷)
  and [Z.rem].

  This division and [Z.div] agree only on positive numbers.
  Otherwise, [Z.div] performs Round-Toward-Bottom (a.k.a Floor).

  This [Z.quot] is compatible with the division of usual
  programming languages such as Ocaml. In addition, it has nicer
  properties with respect to opposite and other usual operations.

  The definition of this division is now in file [BinIntDef],
  while most of the results about here are now in the main module
  [BinInt.Z], thanks to the generic "Numbers" layer. Remain here:

  - some compatibility notation for old names.

  - some extra results with less preconditions (in particular
      exploiting the arbitrary value of division by 0).
*)

Notation Ndiv_Zquot := N2Z.inj_quot (only parsing).Notation Nmod_Zrem := N2Z.inj_rem (only parsing).Notation Z_quot_rem_eq := Z.quot_rem' (only parsing).Notation Zrem_lt := Z.rem_bound_abs (only parsing).Notation Z_quot_mult := Z.quot_mul (only parsing).

(* Specifications: *)
Lemma Zquot_0_r a : a ÷ 0 = 0.
Lemma Zrem_0_r a : Z.rem a 0 = a.
Lemma Zrem_0_l a : Z.rem 0 a = 0.
Lemma Zquot_0_l a : 0÷a = 0.