Fixpoint whnf_beta (t : term) : Prop :=
    match t with
    | App u v => whnf_beta u /\ (forall T t : term, u <> Abs T t)
    | _ => True
    end.

Lemma whnf_head_normal : forall t : term, whnf_beta t -> forall e : env, head_normal beta e t.