(** (Mod a b n) means (a = b (mod n)) *)

Definition Mod (a b : Z) (n : nat) :=
  exists q : Z, a = (b + Z_of_nat n * q)%Z.

Lemma mod_sqr_compat : forall (a b : Z) (n : nat), Mod a b n -> Mod (a * a) (b * b) n.