(* The standard CBV fixpoint combinator *)
Definition Wf := (Lam (App (Var 1) (Lam (App (App (Var 1) (Var 1)) (Var 0))))).Definition Y := Lam (App Wf Wf).Definition Wf_ty A B := fun X => ty_lam X (ty_lam A B).

Lemma Wf_typ : forall A B, Typ (ty_lam (ty_lam A B) (ty_lam A B) :: nil) Wf (Rec (Wf_ty A B)).