Ltac eauto_lc :=
  eauto using lc_tm_of_lc_set_tm,
  lc_co_of_lc_set_co,
  lc_constraint_of_lc_set_constraint.

(* Specifications: *)
Lemma decide_Value_mutual : forall a, lc_set_tm a -> ({ Value a } + { not (Value a) }) * ({ CoercedValue a } + { not (CoercedValue a) }).
Lemma Value_dec : forall a, lc_tm a -> ({ Value a } + { not (Value a) }).
Lemma DataTy_Star_dec : forall A, lc_set_tm A -> { DataTy A a_Star } + { not (DataTy A a_Star) }.