Proof with auto.
intros H.
induction H.
exists x0.
split...
left...
destruct IHInP.
destruct H0.
exists x1.
split...
right...
Qed.
Arguments InP_In_inv [X x ll].

(* Specifications: *)
Lemma NoDup_concat A (l: list (list A)): NoDupL l -> NoDup (concat l).
Proof with auto.