elim (eq_OZ_dec x); intros. left; exact a.
right; split. exact b. exists IZ. split. exact I. symmetry  in |- *; exact (mult_IZ x).
Qed.

(* Specifications: *)
(**********************************)
Theorem chinese_remaindering_theorem :
forall a b x y : Z,
gcdZ a b = IZ -> {z : Z | congruentZ z x a /\ congruentZ z y b}.