proposition: Lemma fill_eq_cont : forall (t : term) c d, fill c t = fill d t <-> c = d.
proof: Proof. split. 2:{ intro. subst. refl. } revert d. revert c. induction c. simpl. intro. sym. apply (wf_term H). destruct d; simpl. intro. change (fill (Cont f e t0 c t1) t = t) in H. symmetry in H. ded (wf_term H). hyp. intro. Funeqtac. arity. arity. assert (e0=e). apply eq_unique. subst. rewrite Vcast_eq, Vapp_eq in H0. destruct H0. inversion H2. rewrite (IHc _ H4). refl. Qed.
imports: CoLoR(ATrs VecUtil LogicUtil ListUtil NatUtil VecMax EqUtil RelUtil SN ListMax)