unfold and_recZ in |- *; intros; apply and_set_set_set_i.
(* neg n *)
elim (le_n_O_eq n H0). apply (H (neg 0)); intros.
rewrite (tech_lt_abs_OZ m). apply (Zrec1 P H). exact H1.
(* pos n *)
elim (le_n_O_eq n H0). apply (H (pos 0)); intros.
rewrite (tech_lt_abs_OZ m). apply (Zrec1 P H). exact H1.
Qed.

(* Specifications: *)
(**********)
Lemma Zrec3 :
forall (P : Z -> Set) (p : nat),
(forall n : Z, (forall m : Z, lt_absZ m n -> P m) -> P n) ->
and_recZ p P -> and_recZ (S p) P.