l: try solve [inversion H2].
  all: done.
Qed.


Definition irrelevant G D (a : tm) :=
  (forall x A, binds x (Tm A) G -> x `notin` fv_tm a) /\ Good G D.

Lemma irrelevant_Good : forall G D a, irrelevant G D a -> Good G D.
intros. inversion H.
auto.
Qed.
(*
Ltac impossible_defeq A B :=
  matc

(* Specifications: *)
pose h0:= H; clearbody h0; apply consistent_defeq in h0; eauto;
- subst. assert False. eapply no_aAbs. eauto 2. done.
Lemma DefEq_Star: forall A G D, Good G D -> value_type A ->
impossible_defeq. - eapply invert_a_UAbs in H; eauto. destruct H as (A1 & B1 & H & _); eauto.
Lemma notin_sub : forall x a b, x `notin` a -> b [<=] a -> x `notin` b. intros. fsetdec.