End EVAL.
Definition hold (k: kind) : rtyp k ->  Prop :=
if k as k0 return (rtyp k0 -> Prop) then fun x  => x else is_true.
Definition eiff (k: kind) : rtyp k -> rtyp k -> Prop :=
if k as k' return rtyp k' -> rtyp k' -> Prop then iff else @eq bool.

Lemma hold_eiff (k: kind) (x y : rtyp k) :
(hold k x <-> hold k y) <-> eiff k x y.