apply (YAfull (fun n : nat => n)).
unfold increasing in |- *; trivial with arith.
intros y H.
change (A (FYA y (YA (FYA y)))) in |- *.
apply YAfull; auto with arith.
Qed.
Variable B : nat -> Prop.
Variable YB : (nat -> nat) -> nat.

(* Specifications: *)
Lemma YB_enumerate_YA : full B YB -> B (enumerate YA (YB (enumerate YA))).
intro YBfull.