Proof using.
induction n; intros; simpl; destruct xs; auto with struct_util.
invc_NoDup.
eauto 6 using in_firstn with struct_util.
Qed.

Lemma NoDup_mid_not_in :
forall (a : A) (l l' : list A),
NoDup (l ++ a :: l') ->
~ In a (l ++ l').