Notation Zgcd_is_pos := Z.gcd_nonneg (only parsing).

(* Specifications: *)
Theorem Zgcd_spec : forall x y : Z, {z : Z | Zis_gcd x y z /\ 0 <= z}.
Theorem Zdivide_Zgcd: forall p q r : Z,
(p | q) -> (p | r) -> (p | Z.gcd q r).
Theorem Zis_gcd_gcd: forall a b c : Z,
0 <= c ->  Zis_gcd a b c -> Z.gcd a b = c.