Require Export FcEtt.tactics.
Require Export FcEtt.imports.
Require Export FcEtt.ett_inf.
Require Export FcEtt.ett_ott.
Require Export FcEtt.ett_ind.
Require Export FcEtt.ext_wf.
Require Export FcEtt.ett_par.
Require Export FcEtt.ett_inf_cs.
(* Needed for annotation lemma at end. *)
Set Implicit Arguments.
Set Bullet Behavior "Strict Subproofs".
Module fc_consist (wf : fc_wf_sig) (weak : fc_weak_sig) (subst : fc_subst_sig)
(e_invert : ext_invert_sig)(e_subst : ext_subst_sig).
Export subst.
Module invert := fc_invert wf weak subst.
Export invert.
Module consist := ext_consist e_invert wf.
Export consist.
Module erase' := erase wf weak subst e_invert.
Export erase'.
Module head := fc_head_reduction  e_invert weak wf subst.
Export head.
Module pres := fc_preservation wf weak subst e_subst.
(* Why does this cause so many messages? *)

Lemma erased_tm_erase_type : forall G0 a B, AnnTyping G0 a B -> erased_tm (erase B).
Hint Resolve erased_tm_erase : erased.