Definition ZCG_solve (f : ZCGForm) :=
  CG_solve Z 0%Z Zplus Zopp Zle_bool 1%Z (ZCGtranslate f).

(* Specifications: *)
Theorem ZCG_solve_correct : forall f : ZCGForm, ZCG_solve f = true -> {rho : ad -> Z | ZCGeval rho f /\ rho N0 = 0%Z}.
Theorem ZCG_solve_complete : forall (f : ZCGForm) (rho : ad -> Z), ZCGeval rho f -> rho N0 = 0%Z -> ZCG_solve f = true.